Posted April 21, 20178 yr I'm trying to add a boolean to the world save file that indicates whether or not the player has done an action, in this case when they kill the ender dragon. I found the WorldInfo class and the ...AdditionalProperty methods, but I'm not quite sure how the system for custom data works. It seems that when you call get method it returns an entry from the overall map, but when you call the set method it replaces the entire map. How would I save my data without clearing other mods' preexisting data? This is what I have right now: WorldInfo info = w.getWorldInfo(); NBTTagCompound modNBT = (NBTTagCompound) info.getAdditionalProperty(SlippWorld.NAME); if(modNBT == null) { Map<String, NBTBase> map = new HashMap<String, NBTBase>(); map.put(SlippWorld.NAME, new NBTTagCompound()); info.setAdditionalProperties(map); } modNBT = (NBTTagCompound) info.getAdditionalProperty(SlippWorld.NAME); Yet when I run it and try to access the modNBT variable it triggers an NPE. Edited April 21, 20178 yr by TLHPoE Fixed formatting of code excerpt Kain
April 21, 20178 yr Use World Saved Data or World Capabilities to store data per-dimension or per-save. Please don't PM me to ask for help. Asking your question in a public thread preserves it for people who are having the same problem in the future.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.