MultiInv
What is MultiInv
MultiInv is a plugin that gives players a separate inventory for every different world running on the server. You can share inventories over chosen worlds and some players can be ignored entirely. With this power it is possible to have multiple worlds running on one server, but keeping them totally segregated from one another.
MultiInv can also separate health over certain worlds allowing for total separations of a world on a server.
If MultiInv refuses to work and you can't change inventories, it's because you have the wrong version of the TuxTwoLib or forgot to deny yourself the permission multiinv.exempt!
Update for UUIDs and 1.7.9 (there will be no support for 1.7.8 or below due to game breaking bugs) are here! Download will be available as soon as Bukkit Dev approves it.
MultiInv and MobArena are currently not compatible! Make sure users can only join a mob arena from the same world group!
Starting with MultiInv 3.2.1 we now require the library TuxTwoLib to maintain compatibility across various minecraft versions
Video Tutorial
Features
- Separate world inventories
- Create groups of worlds where the inventory is shared between them
- Separates XP, food, health, potion effects, and EnderChest inventory per world/group of worlds.
- Option to ignore certain players completely (permissions based)
- Can import Multiverse-Inventories/WorldInventories saved inventories.
- Option to use mySQL instead of flat files.
Forums/Problems
The forums for this plugin (at the top of the page) are the best place to go if you have any questions that aren't just general comments (such as "I hat you" or "I love you"). There I can see which problems have been replied too and who still needs help.
Using MultiInv with BungeeCord
Since BungeeCord requires servers to be in offline mode it's sometimes hard to acquire a reliable UUID if Spigot/BungeeCord isn't configured correctly. Here are the settings you will need to change:
In the BungeeCord config.yml make sure ip_forward is set to true
On the server in the spigot.yml make sure bungeecord is set to true
By setting these two options BungeeCord will be able to pass the correct UUID to the servers. Please note that if you are sharing inventories across multiple servers that this feature is still in beta and may not always work.
Commands
- /multiinv reload - Reloads config files.
- /multiinv import - Imports flat files into a mysql database.
- /multiinv mvimport - Imports Multiverse-Inventories into MultiInv, with the database that you have selected. (You will need to have the Multiverse-Inventories plugin installed when doing the import, just make sure to remove it afterwards)
- /multiinv miimport - Imports WorldInventories into MultiInv.
- /multiinv mcimport - Import Minecraft player files into MultiInv. (Only useful when you've got existing player data and you are enabling the SaveInventoryOnQuit option)
- /multiinv mcexport - Exports MultiInv player data for the default world into the default world in Minecraft format.
Permissions
- multiinv.reload - Permission to use the reload command
- multiinv.import - Permission to use the import command
- multiinv.mvimport - Permission to use the mvimport command
- multiinv.mcimport - Permission to use the mcimport command
- multiinv.mcexport - Permission to use the mcexport command
- multiinv.exempt - Exempts player from inventory switch (If your inventory is not changing, deny yourself this permission in your permissions manager!!!!)
Configuration
^That's a link up there
Updating from MultiInv 2.x to 3.x
- Delete your old config.yml file in the plugins/MultiInv directory
- Start the server with the new plugin
- Rename the Worlds folder to Groups under the plugins/MultiInv directory.
- Rename shares.yml to groups.yml
- Cut the creativeGroups section out of groups.yml and paste it at the end of config.yml
- Edit the config.yml to your prefrences
- do: /multiinv reload
- If you are moving to the mysql database do: /multiinv import
- You're done, enjoy!
Links
When, Where, and How are the Inventories Saved?
Old forum page (Includes old version links)
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.
Jenkins Dev Builds
Source Code
Please note, that while I (Tux2) am maintaining this plugin you must file bug reports under the tickets section. If you're having a problem, try replicating it in the latest version of MultiInv as it could already be fixed! Also, if you want your problem to be addressed please make sure to include the MultiInv version, the TuxTwoLib version, your config.yml and groups.yml files contents as well, (even if it is a comment asking for help) If you do not follow these guidelines your comment may be deleted without warning!

Stats provided by Plugin Metrics
-
View User Profile
-
Send Message
Posted Feb 7, 2015Ahhh! You gotta get rid of the prefix === multiinv_ === that is in the config...okay
-
View User Profile
-
Send Message
Posted Feb 7, 2015@Tux2
I'm sorry....I downloaded the latest on here...Whew Thanks, I'll try it! Okay, I downloaded the latest build, deleted the old mysql database, edited the config to start the server with sql: false and that was fine. I stopped the server, created the database in mysql, edited the config to sql: true and restarted the server and I get this...Errors Am i not supposed to create multiinv in mysql then type use mysql or what am I doing wrong? I have several other mysql database already up and running. I'll keep trying till I get a reply.
-
View User Profile
-
Send Message
Posted Feb 6, 2015@Tux2
I'm using a Spigot 1.8 snapshot with MultiInv v3.3.2-dev.
-
View User Profile
-
Send Message
Posted Feb 6, 2015@AgentRoop
MultiInv uses UUIDs if your version of minecraft supports it in the latest versions. Please make sure you are using a version of MultiInv that supports UUIDs
-
View User Profile
-
Send Message
Posted Feb 6, 2015@MCTylerPVP
Have you tried the latest development build from jenkins as that fixes that issue.
-
View User Profile
-
Send Message
Posted Feb 6, 2015EDIT: Nevermind, the latest update will not recognize the database. It seems that its trying to add another table to the table It says multiinv.multiinv_multiinv_ table does not exist...Back to flat file :(
-
View User Profile
-
Send Message
Posted Feb 6, 2015Just discovered during import to sql if you have groups set along with regular worlds in the UUID folder it will crash upon import. To remedy this, first import all the regular worlds, IE World, world_nether, Skyworld by temporarily moving the grouped worlds folders, IE example_group, skyworld_group, then shut down server and reverse the process for the grouped worlds and this will avoid the crash and import all the inventories. I'm still testing to make sure nobody lost anything and the "grouped" worlds stay grouped.
-
View User Profile
-
Send Message
Posted Feb 5, 2015It appears that issues occur if a player changes his username (that's a new option offered by Mojang.) Please switch the database to support uuids instead of usernames.
-
View User Profile
-
Send Message
Posted Feb 4, 2015I have the correct versions, it's working.. But.. Is there any automatic save? What about restart? It's saved? Because i lost some inventories sometimes.. And no crash.. Just some restarts.. So? I'll try turn the setting "save on quit" to false.. But i'm not sure, if there's any automatic.. Or what.. Weird. And i have it on MySQL.
-
View User Profile
-
Send Message
Posted Feb 3, 2015@miki88mouse
multiinv.exempt - Exempts player from inventory switch (If your inventory is not changing, deny yourself this permission in your permissions manager!!!!)
Maybe your admins have permission to have single inventory. Maybe your Groups.yml ain't correct.
If only admin can join then others don't have permission. Might be missing permission in permissions file or might be that the signs are placed in area inside server clients protection where only ops can use/brake blocks.
You really should add permissions, groups and maybe server properties file. Server config file if you test your signs in spawn area. But you really should remove the default spawn protection from server properties if you are already using custom protect zones.
-
View User Profile
-
Send Message
Posted Feb 1, 2015Can someone please tell me what is causing this error:
http://pastie.org/9878071
Using Spigot build #291 and Multiinv #45
-
View User Profile
-
Send Message
Posted Feb 1, 2015can you add world bypass Permissions? to share inventorys from 2 worlds?
like this?
multiinv.bypass.group.NAMEmultiinv.bypass.world.NAMEfor all groupsmultiinv.bypass.group.*for all worldsmultiinv.bypass.world.*-
View User Profile
-
Send Message
Posted Jan 31, 2015@Tux2
Awesome, im going to test this! Exited for the possibility to use this plugin! Thanks for the reply @Tux2
-
View User Profile
-
Send Message
Posted Jan 29, 2015@Tux2
I am sorry to bug you, but on behalf of all the servers that have to migrate before Feb 4th to avoid the loss of inventories by the players - when do you think you could get the conversion from Multiverse-Inventories working? We can do the testing on both 1.7.10 and 1.8, if needed.
-
View User Profile
-
Send Message
Posted Jan 28, 2015I am switching to MultiInv from Multiverse-Inventories. I am having an issue with one very important feature that I can't seem to find in MultiInv. I need to have the last location of the player saved so that when they teleport back into a world they don't end up back at spawn. Is there a setting for this and if not could it please be added?
-
View User Profile
-
Send Message
Posted Jan 28, 2015@GodsDead
As long as you don't have the optional option for SaveInventoryOnQuit enabled then yes, Minecraft should save the player's inventory quite regularly. Here's how the plugin works: It only saves inventories for the worlds you aren't currently in and lets Minecraft worry about saving the current inventory. It works great and inventory rollback almost never occurs even upon a server crash.
-
View User Profile
-
Send Message
Posted Jan 27, 2015Has this plugin had the option to save at regular interval's yet? Minecraft is extremely fickle and there can be a multitude of reasons a minecraft server may crash or not stop properly, without regular saving inventories will be lost.
-
View User Profile
-
Send Message
Posted Jan 26, 2015@Tux2
Thank you for this! BTW - I am not sure what code you use for the conversion, just in case. There is an example of a UUIDFetcher that works. You would have to change one parameter though, to prevent response "429" from Mojang - change Thread.sleep(100L); to some larger delay, like 1000, https://github.com/tastybento/uablockconvert/blob/1.1/UABlockConverter/src/com/evilmidget38/UUIDFetcher.java
-
View User Profile
-
Send Message
Posted Jan 26, 2015@natallyk
I can see what's going on there. I'll see about getting a fix out for that.
@_Mahagon
@natallyk
That is quite slow. I'll see about speeding up import in the next build.
-
View User Profile
-
Send Message
Posted Jan 26, 2015@_Mahagon
I agree, this is too slow. We gave up on the test server, we have more then 100k inventories. I wonder why is it so slow? As far as I understand, Mojang takes 600 requests per 10 minutes, 100 UUIDs per request. This is 60000 UUIDs per 10 minutes, not that slow.