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


  • 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.


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.


  • /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.


  • 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!!!!)


^That's a link up there

Updating from MultiInv 2.x to 3.x

  1. Delete your old config.yml file in the plugins/MultiInv directory
  2. Start the server with the new plugin
  3. Rename the Worlds folder to Groups under the plugins/MultiInv directory.
  4. Rename shares.yml to groups.yml
  5. Cut the creativeGroups section out of groups.yml and paste it at the end of config.yml
  6. Edit the config.yml to your prefrences
  7. do: /multiinv reload
  8. If you are moving to the mysql database do: /multiinv import
  9. You're done, enjoy!

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!

MC Stats for MultiInv
Stats provided by Plugin Metrics

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of evilLamer evilLamer Mar 24, 2016 at 13:52 UTC - 0 likes
  • Avatar of evilLamer evilLamer Mar 24, 2016 at 12:19 UTC - 0 likes

    The plugin is good but it has some bugs..

    1. Sometimes Heads in inventory lose their skin and it is replaced with a strange skin.
    1. I found an item duplication glitch.. Contact me, i don't want publish it for security reasons.

    This is the texture of the strange bugged head. head bug

    Last edited Mar 25, 2016 by evilLamer
  • Avatar of LaserCucumber LaserCucumber Mar 13, 2016 at 05:22 UTC - 0 likes

    I recently upgraded to 1.9 then downgraded back to 1.8.8 then 1.8.7. Is there anything in doing that that could cause 3.3.5 to throw a bunch of exceptions? I also downgraded TuxTwoLib back to v1.8.4-b6.

    Here are the exceptions I get :

    Last edited Mar 13, 2016 by LaserCucumber
  • Avatar of Androkai Androkai Mar 06, 2016 at 14:40 UTC - 0 likes

    @Tux2: Go

    thx :) - Minecraft in familiärer Atmosphäre genießen

  • Avatar of Tux2 Tux2 Mar 06, 2016 at 08:32 UTC - 1 like

    @Androkai: Go

    Skulls with custom skins? Yes, it is possible, I'll add it to the ever expanding to do list. Bitcoins?1Lr7prAnqYpZe2UizvPKV2Cg4KSuj2weXb
    If you didn't take the time to read how my plugins work, don't expect me to take the time to diagnose your stupidity.
    If updates to my plugins depended on donations, they would never update. Donate!

  • Avatar of Androkai Androkai Mar 05, 2016 at 13:02 UTC - 0 likes

    Is it possible to implement that MultiInv is able to save a skull created with a command like this one?:

    /give @p minecraft:skull 1 3 {display:{Name:"§2Alienore"},SkullOwner:{Id:"8e9697d5-a5c9-4f9c-9b6e-041c914a328e",Properties:{textures:[{Value:"eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNThjMjA2ZTI5OTI0Yjk5MTZkNGQyNGRmYmJjMzhmMjhiNDRkNmQzY2ZhMjNhZGVjOWVkM2E4ZmNlMWI3YjIifX19"}]}}}

    and a little different version of the same command:

    /give @p minecraft:skull 1 3 {display:{Name:"§2Alienore"},SkullOwner:{Name:"0",Id:"8e9697d5-a5c9-4f9c-9b6e-041c914a328e",Properties:{textures:[{Value:"eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNThjMjA2ZTI5OTI0Yjk5MTZkNGQyNGRmYmJjMzhmMjhiNDRkNmQzY2ZhMjNhZGVjOWVkM2E4ZmNlMWI3YjIifX19"}]}}}
  • Avatar of timr2000 timr2000 Mar 04, 2016 at 21:28 UTC - 0 likes

    is there a way to have a chat perworld? for spigot 1.8 or 1.9.. im searching for this plugin for a really long time

  • Avatar of Tux2 Tux2 Mar 04, 2016 at 06:37 UTC - 0 likes

    @Blamo27: Go

    Fill out the report correctly and I'll be able to help you.

    @wrecktify80: Go

    The spawn world dictates where player data is saved. Since MultiInv doesn't load inventory on server start unless you tell it to, it will allow the regular bukkit inventory load to go through. You may need to set your default world in the to EternalZone, and use another plugin to set the spawn world to BattleZone.

  • Avatar of wrecktify80 wrecktify80 Mar 04, 2016 at 03:10 UTC - 0 likes

    I'm wondering if you could help with my situation. My 1.8 world was named BattleZone. I want to keep that world and have rename it to EternalZone. I generated a new 1.9 seed as my BattleZone map. I copied the player and stats from the map folder, and added EternalZone to the linked worlds group. Now every time a player joins it acts like they are a new player instead of linking to their per-existing inventory. I'm not sure if it is MultiInv or maybe one of my other plugins or just minecraft map save in general. I know it is a stretch but maybe you know what I am overlooking?

    My plugins: WorldEdit, Questioner, Essentials, Lift, TuxTwoLib, IP-Check, MessageAnnouncer, WorldGuard, ProtocolLib, AutoSaveWorld, Ore_alerter, DeathMessages, PermissionsEx, NoMobFarming, Vault, EssentialsSpawn, boosCooldowns, InfernalMobs, MultiInv, MobHunting, PlotMe, Jobs, VanishNoPacket, ccSpawner, CraftBook, EnjinMinecraftPlugin, PlotMe-DefaultGenerator, Multiverse-Core, Shopkeepers, Multiverse-Portals, Towny, CommandSign, SignShop, Holograms, TownyChat, TownyNameUpdater

    Last edited Mar 04, 2016 by wrecktify80
  • Avatar of Blamo27 Blamo27 Mar 03, 2016 at 18:16 UTC - 0 likes

    I'm not going to spend my time to explain all bugs, so read this :


Date created
Aug 26, 2011
Last update
Mar 02, 2016
Development stage
  • enUS
GNU General Public License version 3 (GPLv3)
Curse link
Reverse relationships
Recent files