Posted January 24, 201510 yr This is basically an optimization issue. The mod I'm currently working on modifies plants via event handlers and such. The general process is to intercept something like a HarvestDropsEvent, see if its coming from a location with a 'modified plant' object, and if it is, have that object act accordingly- for example, I might double the ItemStack array returned. The way I've been doing the lookup is with a Hashmap<Location, Integer>, where the Location object just stores an x,y,z, and dimID, and the Integer is the id of the 'modified plant object' that is in that spot. As I did this, it occurred to me that I could just as easily have a tile entity at that location which only stores the integer id. So basically, my question is 'Should I replace the hashmap with tile entities?' I'm inclined to think of tile entities as lag machines from my experience as a player, but frankly I don't know enough about how they're handled to really know how efficient they are or aren't. Some pros/cons of tile entities I've thought of: Pros: No autoboxing between Integer and int Would probably interact properly with things like frames and teleporters Would unload with chunks (Probably implementable with the Hashmap, but probably also a bit of a pain) Cons: Would interfere with plants that might have tile entities (not an issue with vanilla plants, but possibly with some mod crops) My biggest concern though is performance, since people will potentially have whole fields of these, or even a natura redwood's worth.
January 24, 201510 yr Author Hm... well if that's the case and the performance is about the same, its probably worth it to use the tile entity since that way I'm sort of working 'within the system'.
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.