Per World Inventory
The way this plugin stores data is fundamentally different from MultiVerse-Inventories. Like MV-I, this plugin saves data in a .json format, but that is where the similarities end. Not only does this save your inventory, it saves your stats as well! This includes things like active potion effects, exp, level, economy balance, and more. These all can be configured on a per-item basis, should you not want all of these saved. See the Configuration section below for these. All commands can be seen ingame with the '/pwi help' command.
> Configuration
########################################## # PerWorldInventory configuration file # # # # If new values are added to the # # config, they will not automatically # # be added here. They will default to # # false if not present. # ########################################## # Version of the config. DO NOT CHANGE!!!!! config-version: 3 # If true, the plugin will change player's gamemodes when entering a world # The gamemode set is configured in the worlds.yml file manage-gamemodes: false # If true, players will have different inventories for each gamemode separate-gamemode-inventories: true # All settings for players are here: player: # Save and Load players' economy balances. Requires Vault! economy: false # Load players' ender chests ender-chest: true # Load players' inventory inventory: true # All options for player stats are here: stats: # Load if a player is able to fly can-fly: true # Load the player's display name display-name: false # Load a player's exhaustion level exhaustion: true # Load how much exp a player has exp: true # Load a player's hunger level food: true # Load if a player is flying flying: true # Load what gamemode a player is in. This is shadow-set to false if # 'manage-gamemodes' is true, to stop infinite loop gamemode: true # Load how much health a player has health: true # Load what level the player is level: true # Load all the potion effects of the player potion-effects: true # Load the saturation level of the player saturation: true # Load a player's fall distance fall-distance: true # Load the fire ticks a player has fire-ticks: true # Load the maximum amount of air a player can have max-air: true # Load the current remaining air a player has remaining-air: true # Config Version 2 below this line # # Configure the amount of time between saves, in seconds # Default is 5 minutes (300 seconds) save-interval: 300 # Config Version 3 Additions below this line # # Attempt to figure out which world a player last logged off in # and save/load the correct data if that world is different. # REQUIRES MC 1.9.2 OR NEWER load-data-on-join: false # Print out debug messages to the console for every event that happens in PWI debug-mode: false
Pretty straightforward, turning the options to false will cause that item to not be loaded on world change. The option 'manage-gamemodes' is set to false by default to not interfere with other plugins that you may have to manage GameModes.
groups: world1: worlds: - world1 - world1_nether - world1_the_end default-gamemode: SURVIVAL world_2: worlds: - world_2 default-gamemode: CREATIVE
This is where you configure your world groups. Follow the default or above example to get the format. If you have 'manage-gamemodes' set to false in your main config, the 'default-gamemode' option here does nothing, and can be safely removed. Worlds in the same group will all share the same inventory and stats.
Once you have made your desired changes, simply type /pwi reload.
A default inventory loadout is provided for each configured group, as well as for a server fallback, if for some reason a world isn't in any group. These can be set ingame by using the '/pwi setworlddefault [group]' command, where group is a configured group name, or 'default'. If no group is specified, it will set the loadout for the group that you are currently standing in. This does not require a reload.
> Permissions and Commands
Permissions:
- - perworldinventory.admin: Defaults to Ops, grants all other permissions
- - perworldinventory.convert: Allows user to convert data from other plugins
- - perworldinventory.reload: Allows user to reload configs and world groups
- - perworldinventory.setdefaults: Allows user to set the default inventory loadout for a group
- - perworldinventory.notify: Users with this permission will be notified if the config is out of date
- - perworldinventory.bypass.*: Users that have this will keep their inventory when changing worlds or gamemode
- - perworldinventory.bypass.gamemode: Users that have this will keep their inventory when changing gamemode
- - perworldinventory.bypass.world: Users that have this will keep their inventory when changing worlds
Commands:
- /pwi help: Shows the help page
- /pwi convert: Converts data from MultiVerse-Inventories; see below
- /pwi reload: Reloads the config file and worlds file
- /pwi setWorldDefault [default | <group_name>]: Sets the default inventory loadout for the specified group, or server default. If no parameter is given, it will sets the loadout for the group you are currently standing in.
> Conversion
If you are converting from MV-I, simply run the "/pwi convert multiverse" command and the plugin will take care of everything. You must have MV-I running for this. Keep in mind, converting only works with MV-I version 2.5, it will not work on 2.4. When MV-I is updated from 2.4 to 2.5, it switches from yml to json files, but does not convert the data until it is used. Be sure to keep your MV-I data around, just in case something does go wrong.
A converter from MultiInv is still in the works. There is a beginning framework as of version 1.4.0; do not use it! It is not fully operational yet, and will result in errors.
> Miscellaneous
Support If you have an issue, please go here. Include your configs and relevant logs!
> Other
The code repository can be found on both Github and BitBucket.
@kbalor
Seems to be working for me. Please double check you configurations, and make sure no errors appear in console. If you are still having issues, please open one here: https://bitbucket.org/Gnat008/perworldinventory/issues?status=new&status=open
active potions not saving. after I recon its gone.
@Paxination
I replied to your problem on the Github issue tracker. ;)
@ConserveDeRodez
How do you mean?
this work with separate world inventories ?
So glad you released a hotfix for the econ wipe.
http://pastebin.com/Xrmu11n4
Getting that error when switching worlds in different groups that my player has a different gamemode. Switching gamemodes does it too.
Running Spigot 1.8.7
PWI 1.5.4
You just use essentials 1.8 and Multiverse Inventories.
Please MySQL support! :D
@Azen0x
Either one, it doesn't depend on either, or UltimateCore.
This plugin works with "MultiWorld" plugin ? or just MultiVerse ?
@ItzEnderPlays
Yep! Just add it to the worlds list in the group.
@Willydon
Can you paste your config.yml and worlds.yml to hastebin.com, as well as any errors in the console or log for me, please?
@cstalker_dude
Can you paste the full error to hastebin.com for me please, that's not the full thing. In addition, why don't you go ahead and paste your worlds.yml for me, as well.
I am getting this
[spoiler]
08.06 16:41:27 [Server] INFO at java.lang.Thread.run(Unknown Source) [?:1.7.0_80] 08.06 16:41:27 [Server] INFO at net.minecraft.server.v1_8_R2.MinecraftServer.run(MinecraftServer.java:522) [Spigot183.jar:git-Spigot-870264a-0a645a2] 08.06 16:41:27 [Server] INFO at net.minecraft.server.v1_8_R2.DedicatedServer.init(DedicatedServer.java:257) [Spigot183.jar:git-Spigot-870264a-0a645a2] 08.06 16:41:27 [Server] INFO at net.minecraft.server.v1_8_R2.MinecraftServer.a(MinecraftServer.java:337) [Spigot183.jar:git-Spigot-870264a-0a645a2] 08.06 16:41:27 [Server] INFO at net.minecraft.server.v1_8_R2.MinecraftServer.k(MinecraftServer.java:382) [Spigot183.jar:git-Spigot-870264a-0a645a2] 08.06 16:41:27 [Server] INFO at net.minecraft.server.v1_8_R2.MinecraftServer.r(MinecraftServer.java:416) [Spigot183.jar:git-Spigot-870264a-0a645a2] 08.06 16:41:27 [Server] INFO at org.bukkit.craftbukkit.v1_8_R2.CraftServer.enablePlugins(CraftServer.java:316) [Spigot183.jar:git-Spigot-870264a-0a645a2] 08.06 16:41:27 [Server] INFO at org.bukkit.craftbukkit.v1_8_R2.CraftServer.loadPlugin(CraftServer.java:356) [Spigot183.jar:git-Spigot-870264a-0a645a2] 08.06 16:41:27 [Server] INFO at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405) [Spigot183.jar:git-Spigot-870264a-0a645a2] 08.06 16:41:27 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:335) [Spigot183.jar:git-Spigot-870264a-0a645a2] 08.06 16:41:27 [Server] INFO at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:321) [Spigot183.jar:git-Spigot-870264a-0a645a2] 08.06 16:41:27 [Server] INFO at me.gnat008.perworldinventory.PerWorldInventory.onEnable(PerWorldInventory.java:54) [?:?] 08.06 16:41:27 [Server] INFO at me.gnat008.perworldinventory.data.WorldManager.loadGroups(WorldManager.java:100) [?:?] 08.06 16:41:27 [Server] INFO java.lang.NullPointerException 08.06 16:41:27 [Server] ERROR Error occurred while enabling PerWorldInventory v1.5.0 (Is it up to date?) 08.06 16:41:27 [Server] INFO Enabling PerWorldInventory v1.5.0
[/spoiler]
Any idea? I am using Spigot 1.8.3 and PWI 1.5.0
Thanks
i Need help i did everything i could and they can still take things world to world
@Gnat008 can you have more than one world that is linked like you keep the same inventory in 2 different worlds?
@T0X1CCAT
Can you paste your config and world.yml files to pastebin.com or something for me?
EDIT*: You already did, oops. lol. Can you try the newest version (1.4.0) once it is approved?
it also dosent let me save anything for each world so i have the same potion/xp/inventory for each world
@Gnat008
Sorry for taking ages to reply, but basically it just dosent work. theres no error message or anything. im not sure what wrong
@timsavage
Thank you for your input, and that link! The current item I am working on is separate gamemode inventories. I will certainly look into the economy thing. New issue made here: https://github.com/Gnat008/PerWorldInventory/issues/1
@felixbeuving
Simply, you are not standing in a world that is loaded in the worlds.yml file. Ensure that either that world is in the file properly, or specify a group in the command, eg.:
When I do /pwi setworlddefault it says: You are not standing in a valid world! Can someone please help me?