GameMode Inventories

Downloads
I'm too lazy to upload GMI files to Bukkit anymore, as builds are automatically created when the plugin is updated and changes pushed to GitHub.
For 1.18.x, please download GMI from the TARDIS Jenkins server: http://tardisjenkins.duckdns.org:8080/job/GameModeInventories/
Features
GameMode Inventories allows you to have separate inventories for Creative and Survival game modes (it also works for Adventure!).
- Inventories are saved and switched automatically
- Configurable option to save and restore inventories on player death
- Configurable option to also switch XP amount automatically (enabled by default)
- Configurable option to also switch armor automatically (enabled by default)
- Configurable option to also switch Ender Chest inventories automatically (enabled by default)
- Configurable option to restrict inventory opening for Chests, Ender Chests, Enchantment Tables, Anvils, Furnaces and Dispensers in CREATIVE game mode
- Configurable option to disable players dropping items from their inventories in CREATIVE game mode
- Configurable option to disable players from picking up items in CREATIVE game mode
- Configurable option to remove potion effects when switching from CREATIVE to SURVIVAL
- Configurable option turn off the plugin's messages which can get excessive when
no_pickupsandno_dropsare enabled - Configurable option to track the placement of CREATIVE gamemode placed blocks, then either: disable them from being broken, or, allow them to be broken but not drop anything - and also prevent pistons from moving them and deny the block dropping if the attached block is broken - this MUST be enabled for a world to work. You can specify a list of blocks you don't want to track as well
- Configurable option to prevents drops from falling blocks e.g. anvils, gravel, sand
- Configurable option to prevent the breaking of bedrock in CREATIVE, set to false to prevent breaks below Y<5 in all worlds, and Y>122 in the Nether
- Configurable blacklist of blocks that cannot be placed in CREATIVE (use Spigot Material names)
- Configurable blacklist of commands that cannot be used in CREATIVE
- Configurable option to preserve custom attributes when switching inventories (player and armour only)
- Configurable options to set which GMI features can be bypassed
- Configurable option to restrict spectator gamemode access
- Configurable option to switch to a creative world when changing to gamemode CREATIVE
- Localisable messages - edit messages.yml
- Support for using a MySQL database
Created in response to this plugin request: http:forums.bukkit.org/threads/separate-inventories-creative-survival.112187/
Featured in Curse's Minecraft Spotlights
How it works
Add the GameModeInventories.jar file to your server's plugins directory and start up the server. A config file will be created automatically with the default values.
Then all you have to do is switch game modes and your current inventory, armor and XP will be saved and your new game mode inventory will take its place.
What it doesn't do
GameMode Inventories is not a replacement for the Creative Control plugin:
- its primary purpose is an inventory management tool
- this is NOT likely to change anytime soon
- please stop asking
GameMode Inventories is an open sourced project, if you want to make the changes yourself, you are free to do so, as long as the plugin is released under the same license and conditions as GameMode Inventories.
Timings
Please do not bother posting timings for this plugin, here's why:
- See above
- I don't use any of the plugins' 'restriction' features
- You should expect to see GMI working hard if you have
track_creative_placeenabled, this is normal, after all, GMI is watching all your players all the time, and is keeping them all in line while not bothering you. Any server owner will eventually have a problem if he pushes his hardware too much, for example by running lots of heavyweight plugins. - If you do have a problem, the solutions are to either add more RAM/cpu power, re-prioritize your plugins to drop a few you don't desperately need, reduce your max players or seriously think about why you are letting your players have Creative gamemode at all (if you can't trust them not to abuse it, then don't let them have it, or set up a creative only world).
- Finally, don't expect SQLite to be able to handle big loads - if you are running this plugin on a server with
track_creative_placeenabled, you should probably be using MySQL as the GMI database provider
Commands/Configuration
There are several config options:
save_on_death: [true|false] xp: [true|false] armor: [true|false] enderchest: [true|false] remove_potions: [true|false] restrict_creative: [true|false] no_drops: [true|false] no_falling_drops: [true|false] no_pickups: [true|false] dont_spam_chat: [true|false] track_creative_place: enabled: [true|false] break_no_drop: [true|false] no_piston_move: [true|false] attached_block: [true|false] worlds: - world dont_track: - STONE - DIRT creative_blacklist: [true|false] blacklist: - TNT - BEDROCK - LAVA_BUCKET break_bedrock: [true|false] command_blacklist: [true|false] commands: - give - i - buy - sell custom_attributes: [true|false] bypass: inventories: [true|false] items: [true|false] blacklist: [true|false] survival: [true|false] commands: [true|false] restrict_spectator: [true|false]
You can enable/disable the options with a command (all options are available via tab completion):
/gmi save_on_death /gmi xp /gmi armor /gmi enderchest /gmi remove_potions /gmi restrict_creative /gmi restrict_spectator /gmi no_drops /gmi no_pickups /gmi dont_spam_chat /gmi track_creative_place /gmi break_no_drop /gmi attached_block /gmi break_bedrock /gmi creative_blacklist /gmi command_blacklist /gmi no_falling_drops /gmi custom_attributes /gmi bypass.inventories /gmi bypass.items /gmi bypass.blacklist /gmi bypass.survival /gmi bypass.commands
Permissions
There are four:
gamemodeinventories.use
Default: true - Allow players to have separate inventories for each game mode
gamemodeinventories.death
Default: op - Allow players to save their inventories on death, and restore them on respawn
gamemodeinventories.bypass
Default: op - Allow players to bypass inventory opening restrictions in CREATIVE (when restrict_creative: true). Also allow players to bypass the no items drops / no item pickups restriction (when no_drops: true or no_pickups: true). As of version 2.5.4, you can configure which features can be bypassed:
inventories- if true players can bypass not being able to open inventories in creativeitems- if true players can bypass not being able to pick up and drop items in creativeblacklist- if true players can bypass not being able to place and use restricted block and items in creativesurvival- if true players can bypass being forced into survival gamemode when changing worldscommands- if true players can bypass not being able to place and use restricted commands- If any of the bypass options are set to false, then nobody will be able to bypass them (regardless of whether they have the permission or not)
gamemodeinventories.admin
Default: op - Allow players to change config options
Source code
Dev builds
Development builds of this project can be acquired at the provided continuous integration server.
These builds have not been approved by the BukkitDev staff. Use them at your own risk.
-
View User Profile
-
Send Message
Posted Apr 27, 2014Hello,
First off I would like to say that this plugin is great! However I'm having a slight issue with inventory management. I tested the plugin out on with a couple of player on my server and noticed that whenever a player entered creative mode and then switched back to survival mode, in console this would pop up: Could not pass event PlayerGameModeChangeEvent to GameModeInventories v2.4.5. Basically a player can keep things in their inventory when in creative and when they switch back to survival the inventory will be the same. Is there a solution to this or do i need to go into the configuration file?
Best, Donnie
-
View User Profile
-
Send Message
Posted Apr 26, 2014@ThisUsernameIsMine
The page I gave is generated from the file you linked to :)
-
View User Profile
-
Send Message
Posted Apr 26, 2014@eccentricnz
Alright ;-)
btw, found a more up-to-date list of material names to use with the creative blacklist:
https://github.com/Bukkit/Bukkit/blob/master/src/main/java/org/bukkit/Material.java
-
View User Profile
-
Send Message
Posted Apr 24, 2014@ThisUsernameIsMine
Jenkins builds are automatically triggered from a push to GitHub so should be identical in functionality to those uploaded from my computer
-
View User Profile
-
Send Message
Posted Apr 24, 2014@eccentricnz
Excellent! :-)
Are there any notable differences between the files you upload to bukkit and the ones on Jenkins? I've compared the jar hashes and they're not matching (a lot of files don't match and GameModeInventoriesConstants.class seems to be missing in the dev.bukkit.org jar).
edit: Tested the jenkins build and its working fine! +1
(still hoping to see an exempt node to bypass all of GMI's restrictions, that i could give to my higher ranks ;-) )
-
View User Profile
-
Send Message
Posted Apr 23, 2014@ThisUsernameIsMine
Uploading a new file now - if you can't wait, check the Jenkins link above
-
View User Profile
-
Send Message
Posted Apr 23, 2014@ThisUsernameIsMine
Ah, I see what you mean, will have a play now to see If that can be rectified
-
View User Profile
-
Send Message
Posted Apr 23, 2014@eccentricnz
ahh... thank you for that list :-)
I know what those options stand for but despite blocking everything by the correct names i'm/others are still able to throw/use splash potions when looking into the sky ;-)
And you're right about that last thing you said :-)
-
View User Profile
-
Send Message
Posted Apr 22, 2014@ThisUsernameIsMine
no_drops- applies to dropping items from a player's inventoryno_falling_drops- applies to 'falling' block types e.g. anvil, sand, gravelbreak_no_drop- only applies if the block that was broken was creatively placed, not for the block it was placed on to. Seriously, if you can't trust your player's to not abuse CREATIVE game mode, then don't give it to them in the first place...-
View User Profile
-
Send Message
Posted Apr 22, 2014@ThisUsernameIsMine
I added potions and experience bottles to the
creative_blacklist, and they're working fine:You're using the wrong list for the item/block names, you should be using: http://jd.bukkit.org/dev/apidocs/org/bukkit/Material.html
-
View User Profile
-
Send Message
Posted Apr 21, 2014@eccentricnz
Ahh thank you.
I'm asking this because i've noticed survival players are able to acquire torches and other items that have been placed by creative players (the torch tile simply drops when breaking the attached block).
This while no_drops, no_falling_drops and break_no_drop are all set to true.
-
View User Profile
-
Send Message
Posted Apr 20, 2014@CloudKidZ
You have too much XP, try banking some - maybe with XPKeeper or something similar
@ThisUsernameIsMine
The creative_blacklist is really for blocks not items, but I'll see if I can code a workaround
-
View User Profile
-
Send Message
Posted Apr 19, 2014Great plugin! Perfect for preventing the problem we just had of players throwing creative items on the ground while waiting for a teleport into the faction world and being able to move the items despite MV inventories.
Everything is working great now, I just have an event passing error that fills my log, but doesn't effect how game mode is working.
Any ideas?
http://pastebin.com/dV327HzD
Thanks again!
Misty - Cloudkidz
-
View User Profile
-
Send Message
Posted Apr 18, 2014Can you add a command to reload the whole config?
I want to add some items to the creative blacklist but there's only an option to enable/disable the blacklist and i'm not sure if re-enabling this will load the newly added items.
edit:
- POTION
- EXPERIENCE_BOTTLE
Added the above items to the blacklist (looked up the names on http://www.minecraftinfo.com/idnamelist.htm ) but they can still be used (creative_blacklist is true and i have no Op or any other gamemodeinventories permissions).
-
View User Profile
-
Send Message
Posted Apr 14, 2014@eccentricnz
Oh.. I thought the armor was an optional addition for creative mode players, not that it would break some functionality ;-)
-
View User Profile
-
Send Message
Posted Apr 13, 2014@Adnan2000
Tested and working fine here, going to need more information...
Check the server log for errors, make sure you are running a compatible CraftBukkit version i.e. 1.7.8 (or the latest 1.7.5 build)
See: http://dev.bukkit.org/bukkit-plugins/gamemodeinventories/?comment=249
-
View User Profile
-
Send Message
Posted Apr 13, 2014Theres a bug, once i updated it, inventories dont change?
-
View User Profile
-
Send Message
Posted Apr 13, 2014@ThisUsernameIsMine
No it should be true
-
View User Profile
-
Send Message
Posted Apr 13, 2014@eccentricnz
i already set it to false so something aint right.
-
View User Profile
-
Send Message
Posted Apr 13, 2014@ThisUsernameIsMine
Is
armor: truein the config? try toggling the setting in game with the command/gmi armor