Inactive [MECH] MultiInv V2.4.1 - Per World Inventories [1060]

Discussion in 'Inactive/Unsupported Plugins' started by Pluckerpluck, Feb 17, 2011.

Thread Status:
Not open for further replies.
  1. Yep Works perfectly. But the problem is that is already an old file :)
    Think i can Announce that everyone should put everything in a chest and then delete the old file :)
     
  2. Offline

    Phinary

    I dont know a ton about how bukkit works but couldnt you have it so that when they type /world whatever it changes the inventory to have nothing in it, then when you get the the world it changes your inventory? i dont know :p
     
  3. Ok, odd thing.... couldn't read the file if trying it inside an if statement which I didn't know I couldn't do....
    http://dl.dropbox.com/u/11060086/inventories.data

    If you haven't forced everyone to update you can try the file above. If that doesn't work you'll have to tell everyone when you'll be switching (they'll keep the inventory of which ever world they log out in though because it will get re-saved).

    Doesn't work quite like that... partially because /world isn't the only way to change worlds... (I didn't even know it was a way).
    I'm always checking bukkit though so as soon as it updates with a proper method I'll fix this problem.
     
  4. Offline

    IronFerret

    one of my users on my server told me about a glitch with multi-inv that lets you carry one item at a time over from another world,

    this is the message they sent me

    "OK the glitch was.. it so happens when u transfer from one place to another.. you need to quickly go into your inventory and grab t he item u want to transfer.. >EXAMPLE< im in creative witha diamond sword... i type /home (which leads me to survival) and just before it brings me i press I and i click on my sword... when i reach survival it drops and i need to pick it up and WABAM! Transfer!"

    i can't reproduce it myself, but he can consistently(with a few failed tries in between) i think it has to do with the amount of lag time you have between switching worlds

    anyways just thought i'd tell you this, it hasn't become a huge problem on my server yet...
     
  5. Yes, current fault with bukkit is that there is no proper way to tell when someone has changed world... but what you just described is a way that I completely wasn't prepared for... it involves holding the item in the "air" as you change world... It may be almost impossible if bukkit added a CHANGE_WORLD event or fixed the tp event because your inv would be changed as soon as you hit enter with the /home (in the example)... but currently I can see how the bug is performed and I just tried it myself and it worked...

    I'll have to look into this... but that is definitely a problem... and I'm not sure if I'll be able to fix it... depends on if bukkit has a way to tell if you're holding an item...
    [MERGETIME="1300206523"][/MERGETIME]
    Update: It always worked... just hadn't changed the build number. Is the new build range acceptable?
     
  6. "On the next update I plan to make the first world on each line the "Major" world. This worlds inventory will overwrite the other worlds inventories."

    Sorry if this has been mentioned earlier in the thread, but what happens at the moment instead of this? I have 3 worlds, 1 I want to be only for itself, the other 2 I want shared with each other. I am happy for the inventory of say world 2 to be lost, but I really don't want to lose the inventories of world 1. So how do I know which it will keep and which is will overwrite?
     
  7. Offline

    Nipper

    For some odd reason sometimes when people join and i get can not remove player errors. Then the plugin errors out then every thing on server dies. here is a log from the time someone joined. If you need anymore info tell me. Bukkit Build 556. Join mc.mcdominion.net and type /version and /plugins for info.
     

    Attached Files:

  8. Erm that's not meant to be there because I've done that. First one on each line keeps the inventory and the others's on the line then take that inventory instead.

    From what I can see (and I may be wrong... feel free to correct me) but MCBans is breaking (for whatever reason). Now, in bukkit (and most code really) when a plugin causes an error it often then breaks the server/ other plugins in some way shape or form (depending on the error). So it's more likely a problem with MCBans that's causing this becuase my error only happens after the MCBans error.

    However, there's a chance something else is causing it... can you try kicking someone on the server and seeing if the error shows up again? I'll look into it see if I can fix anything because it may be something to do with a player leaving but not properly calling the "onQuit" event... or something like that. But you definitely have a problem with MCBans so check that out first.
     
  9. Offline

    Nipper

    @Pluckerpluck I will toss this info to firestar with mcbans see if he can trace it down for me.
     
  10. Offline

    Hakaslak

    Just got this and I'm not sure why:

    Code:
    2011-03-17 09:10:53 [SEVERE] Unexpected exception
    java.lang.NullPointerException
        at uk.co.tggl.Pluckerpluck.MultiInv.MultiInv$1.run(MultiInv.java:85)
        at org.bukkit.craftbukkit.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:122)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:345)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:272)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:366)
     
  11. Offline

    NathanWolf

    This sounds cool! Anyone using it with NetherGate? I'll have to try it out.
     
  12. Offline

    Nipper

    @NathanWolf I use multiverse if thats what your asking. But I have Survival map and nether map share inventory . But I have a creative map which are not linked inventory's with my survival at all.
     
  13. I'll update to catch that... but not sure what caused it...quite busy atm. If it's a major problem I'll fix asap though.
     
  14. Offline

    Hakaslak

    Crashes the server twice in 4 hours, so I would think it is major XD
     
  15. Offline

    grizzlymann

    Thank you for this plugin, exactly what I have been looking for. Had been having some issues with the creative players trashing the economy on the survivor map before this.
     
  16. Offline

    Nipper

    Yeah that hole holding a item before teleporting will let them take it to the other map. My users already noticed this issue.
     
  17. Ok, working on it... annoyingly I'm not sure which version of my code is the current version so I have to decompile it be be sure of the line number :\

    This may get fixed soon. Someone may be looking into fixing the tp event so I can make the inventory change instant so then you can't tp then open the inventory because it will change as soon at the tp starts. Hopefully that fix will happen soon at least.
     
  18. Offline

    Nipper

    Well what my users were doing was they used the portal. Basicly pick up the item and have someone push them selfs in to the portal. Then as soon as they were able to open I again they put it on there bar and then started droping items. This make the item drop so unable to detect that items were droped. and then once the inv was reloaded just walk over them to pick them up.
     
  19. Offline

    h3ndy_

    Code:
    20:30:52 [INFO] Plugin loaded.
    20:30:52 [INFO] Plugin enabled.
    20:30:52 [SCHWERWIEGEND] java.io.IOException: Das System kann den angegebenen Pf
    ad nicht finden
    20:30:52 [SCHWERWIEGEND]        at java.io.WinNTFileSystem.createFileExclusively
    (Native Method)
    20:30:52 [SCHWERWIEGEND]        at java.io.File.createNewFile(Unknown Source)
    20:30:52 [SCHWERWIEGEND]        at uk.co.tggl.Pluckerpluck.MultiInv.MultiInvRead
    er.createShares(MultiInvReader.java:23)
    20:30:52 [SCHWERWIEGEND]        at uk.co.tggl.Pluckerpluck.MultiInv.MultiInvRead
    er.parseShares(MultiInvReader.java:46)
    20:30:52 [SCHWERWIEGEND]        at uk.co.tggl.Pluckerpluck.MultiInv.MultiInv.onE
    nable(MultiInv.java:64)
    20:30:52 [SCHWERWIEGEND]        at org.bukkit.plugin.java.JavaPlugin.setEnabled(
    JavaPlugin.java:118)
    20:30:52 [SCHWERWIEGEND]        at org.bukkit.plugin.java.JavaPluginLoader.enabl
    ePlugin(JavaPluginLoader.java:451)
    20:30:52 [SCHWERWIEGEND]        at org.bukkit.plugin.SimplePluginManager.enableP
    lugin(SimplePluginManager.java:217)
    20:30:52 [SCHWERWIEGEND]        at com.earth2me.essentials.commands.Commandplugi
    n$1.run(Commandplugin.java:116)
    20:30:52 [SCHWERWIEGEND]        at java.lang.Thread.run(Unknown Source)
    20:30:52 [SCHWERWIEGEND] java.io.FileNotFoundException: plugins\MultiInv\shares.
    txt (Das System kann den angegebenen Pfad nicht finden)
    20:30:52 [SCHWERWIEGEND]        at java.io.FileInputStream.open(Native Method)
    20:30:52 [SCHWERWIEGEND]        at java.io.FileInputStream.<init>(Unknown Source
    )
    20:30:52 [SCHWERWIEGEND]        at java.io.FileReader.<init>(Unknown Source)
    20:30:52 [SCHWERWIEGEND]        at uk.co.tggl.Pluckerpluck.MultiInv.MultiInvRead
    er.createShares(MultiInvReader.java:29)
    20:30:52 [SCHWERWIEGEND]        at uk.co.tggl.Pluckerpluck.MultiInv.MultiInvRead
    er.parseShares(MultiInvReader.java:46)
    20:30:52 [SCHWERWIEGEND]        at uk.co.tggl.Pluckerpluck.MultiInv.MultiInv.onE
    nable(MultiInv.java:64)
    20:30:52 [SCHWERWIEGEND]        at org.bukkit.plugin.java.JavaPlugin.setEnabled(
    JavaPlugin.java:118)
    20:30:52 [SCHWERWIEGEND]        at org.bukkit.plugin.java.JavaPluginLoader.enabl
    ePlugin(JavaPluginLoader.java:451)
    20:30:52 [SCHWERWIEGEND]        at org.bukkit.plugin.SimplePluginManager.enableP
    lugin(SimplePluginManager.java:217)
    20:30:52 [SCHWERWIEGEND]        at com.earth2me.essentials.commands.Commandplugi
    n$1.run(Commandplugin.java:116)
    20:30:52 [SCHWERWIEGEND]        at java.lang.Thread.run(Unknown Source)
    20:30:52 [INFO] [MultiInv] Shared worlds loaded succesfully
    20:30:52 [INFO] [MultiInv] version 1.3.4 is enabled!
    20:30:52 [SCHWERWIEGEND] Exception in thread "Thread-26"
    20:30:52 [SCHWERWIEGEND] java.lang.NoClassDefFoundError: com/nijikokun/bukkit/Pe
    rmissions/Permissions
    20:30:52 [SCHWERWIEGEND]        at uk.co.tggl.Pluckerpluck.MultiInv.MultiInv.set
    upPermissions(MultiInv.java:109)
    20:30:52 [SCHWERWIEGEND]        at uk.co.tggl.Pluckerpluck.MultiInv.MultiInv.onE
    nable(MultiInv.java:83)
    20:30:52 [SCHWERWIEGEND]        at org.bukkit.plugin.java.JavaPlugin.setEnabled(
    JavaPlugin.java:118)
    20:30:52 [SCHWERWIEGEND]        at org.bukkit.plugin.java.JavaPluginLoader.enabl
    ePlugin(JavaPluginLoader.java:451)
    20:30:52 [SCHWERWIEGEND]        at org.bukkit.plugin.SimplePluginManager.enableP
    lugin(SimplePluginManager.java:217)
    20:30:52 [SCHWERWIEGEND]        at com.earth2me.essentials.commands.Commandplugi
    n$1.run(Commandplugin.java:116)
    20:30:52 [SCHWERWIEGEND]        at java.lang.Thread.run(Unknown Source)
    20:30:52 [SCHWERWIEGEND] Caused by: java.lang.ClassNotFoundException: com.nijiko
    kun.bukkit.Permissions.Permissions
    20:30:52 [SCHWERWIEGEND]        at java.net.URLClassLoader$1.run(Unknown Source)
    
    20:30:52 [SCHWERWIEGEND]        at java.security.AccessController.doPrivileged(N
    ative Method)
    20:30:52 [SCHWERWIEGEND]        at java.net.URLClassLoader.findClass(Unknown Sou
    rce)
    20:30:52 [SCHWERWIEGEND]        at org.bukkit.plugin.java.PluginClassLoader.find
    Class(PluginClassLoader.java:30)
    20:30:52 [SCHWERWIEGEND]        at java.lang.ClassLoader.loadClass(Unknown Sourc
    e)
    20:30:52 [SCHWERWIEGEND]        at java.lang.ClassLoader.loadClass(Unknown Sourc
    e)
    20:30:52 [SCHWERWIEGEND]        ... 7 more
    I get this errors.
    I loaded it with the plugin load command.
    I think this is related to not having permissions, only the phoenix remake from theYeti
     
  20. Offline

    ratty

    Just a suggestion, has it been tried to use the players folder in the other world folders instead of keeping a special file?
     
  21. Erm, there does seem to be permissions problems, but I haven't kept up to date with permissions myself and so stuff may have changed. When I next update (for the next Recommended build when it's released) I'll probably move over to support Group Manager as well as any changes to permissions. But there's also another problem. Assuming I understood it right, it can't find the file path specified... which makes no sense... because it should make the folder and file if it can't find it. But I'll look into it...

    Well, I'm not 100% sure what you've asked so I'll answer in both ways:
    1) Using the players folder but not the player data files:
    Plugin specific data should really be kept in their specific data folders so they are simpler to delete or clean.
    2) Using the players' data files
    There is no way to store multiple inventory data in those files and (once again) it would make it very complicated to delete the extra data if you wished to remove the plugin.
     
  22. Offline

    h3ndy_

    Mhh you might be right.
    I loaded it with a command so i had not to restart the server.
    The message only displayed once, but it does not work.
    I can use my inventory in both worlds, which is unfortunate, because one is Survival and the other Freebuild
     
  23. Offline

    ratty

    Sorry for not being clear, but I actually meant a 3rd option. Store the inventories in the actual .dat files in each world's player folder.

    minecraft/world/players/*.dat
    minecraft/anotherworld/players/*.dat

    So for each dimension, store it just like minecraft did if it was the main world without bukkit being involved. No other process are accessing those files while its loaded as a bukkit dimension, so why not?
    I hope I'm not being unclear again, but I don't mean to store more than one world in the main world's players/*.dat files, that would be silly, I mean store it in the invidual world folder's players folders. THen its compatible with minecraft in case you later copy that world off and make it its own server, then everyone gets to keep their inventory.
    Or if you had a 2nd server, and wanted to change it to a single server, but as a 2nd dimension, it makes doing that migration a whole lot easier since nobody loses their inventory.
    Hope that makes sense.
     
  24. Offline

    ndm250

    I'm sad. I don't want to install this until there is no way to glitch item transferring. Would ruin a pure survival world.
     
  25. Offline

    chopper

    This has worked very well for my server thanks a bunch! Do you have an eta for the delete player inventory command to work? Now it says that every player doesn't exist. I ask because it seems that one of the players on my server has a corrupted inventory in one world. If he enters that world he gets disconnected. Upon trying to return to the server his client gets stuck at loading terrain. If I delete his player.dat file he can log back in, but still cannot enter that one world without the same thing taking place. Any ideas? Thanks a bunch!
     
  26. I'll fix that with the next update, but I messed up a bit... I found that if you add a " to the end of the name it will work so to delete Chopper use

    /MultiInv delete Chopper"

    If you wait until bukkit updates, which should be soon, I think I'll have potentially stopped the glitch. I'm working on it today but I'd need the new Recommended Build.
    Well, what I can't do is store the inventories in the <playerName>.dat files because they only store one inventory and each player only has a .dat in the main world folder (and if I were to add a .dat in the other worlds it would mess up when you tried to copy it because it would only have inventory data). But what I can do (if you want) is have an option to store an inventories.dat in each world (or each world's players) folder. The only requirement is that if you wish to copy the world over you'd need to have MultiInv on the new server (at least on first run) to set the players inventories that of the inventories.dat file.

    Hope that made sense...
     
  27. Offline

    Magesblood

    Do you plan on implementing overlapping worlds? It would help a lot.
     
  28. Offline

    Revenger

    We are coming from a single map to multiworld.

    We will be creating a special small HUB entrance map to our world and other worlds.

    Everyone's inventory data is in the normal map will be a secondary map on the new system as the hub world will be the main.

    We want them to still keep there inv items.

    Also we have had player files corrupt for various reasons (slimeball death crash server) etc which we just delete that file when it gets corrupted etc.

    You keep everything in one file would it be better to have separate files per player in case this ever happens?

    What if you ever stop developing and we stop using the plugin or we want to switch out? How would we keep 250+ peoples inventory data as they all play at various times and some may take breaks for a few months.
     
  29. What do you mean?
    Assuming you haven't yet made the second world (everyone is on the first world) and you share the two worlds then they will keep the inventory items (please run a small test to make sure... some people may have conflicts... I can never be sure).

    If a players file is corrupt you will have to delete the file manually, but you can delete the stored inventories with the delete command (though atm you have to append a " to the end of the name...)

    But multiple player files can be added as an option if you want it to be... it's actually not a bad idea and I can see why you may want this ability.

    But I'm not sure about the last question. If I stop developing then the code is open source so someone else can take over... otherwise people will be stuck with the inventory of the world they logged out in... because there's currently no other way to share inventories... but there may be in the future.
     
  30. Offline

    Revenger

    We haven't made the switch or even updated to out main map to bukkit yet but we wioll be coming from just 1 map to a system we talked about.

    HUB (Small central spawn world with portals linking all worlds incase anything happens only the affected world would be offline)
    - Mainmap / Nether / Mining (one inv system)
    - Classic Creative
    - Survival

    As you can see for the current world it will end up being accessed from the new entry hub which all new guests will see and start in.

    We have Invcheck we can use to see the data so that's not a issue just giving there stuff back on req.

    Was hoping we could just import there items somehow.

    Yes please makes admining soo much easy if we can go to there name.data and just delete and is safer also

    You have a command ingame? must have missed that I guess we want piece of mind than having 1 file with 250+ peoples data somehow fail on us which will upset everyone.

    I was mainly thinking along the lines of how would we be able to see what items they have as currently we can Invcheck and also the dat file is compatible with everything.

    But last inv isn't too bad just want a way we can see the rest if that ever happened.

    Coming from Hey0 we had a few plugin devs for what we really use go MIA like vaultwarps etc

    We are just cautious about not locking ourselves into anyone's system that we won't be able to get out of and upsetting our player base etc when we do any future updates.
     
Thread Status:
Not open for further replies.

Share This Page