Basic Player to Player in-game email support

On the surface, I like the idea of using NBTs as a cleaner way (file storage wise) to do things, but what if someone sends tons and tons of messages to a user? Is it possible to make the NBT file large enough that the server suffers while loading the player data? Or is it possible to use such a feature to break the NBT format?

If both of those are negligible, then I wouldn’t mind. If you have a specific reason otherwise @garbagemule, it’d be nice if you elaborated on that rather than apparently flaming someone for their suggestions.

I’m sorry you misinterpreted my comment as “flaming someone”. I couldn’t care less about the “someone” posting a suggestion (we’re all nobodies here anyway), it’s the suggestion itself that is upsetting. However, if messing around with NBT is actually considered the “safer” or “cleaner” way to do persistent data storage, I have no interest in continuing a discussion down that road. I have no obligation to teach (sometimes I like to do so, other times I don’t), and this time I choose to throw my hands in the air and walk away. Why? Because the presented tone is as stubborn as my own, and a man convinced against his will is of the same opinion still. Proponents of bad practices will at some point burn themselves, and hopefully learn from their mistakes. Until then, they’re rubber, and I am glue (or should be), so take my sarcasm with a grain of salt.

I can’t speak for how stubborn @thomas15v is, but I’d like to know why modifying NBTs is a bad thing. Not that I intend to retort, because I’ve no idea if it is a good or bad thing. I’d simply like to know some potentially helpful information (maybe for others as well). Maybe even a source to your opinion would be nice.

The fact that you only want to state your opinion in such a blatant manner without backing it up makes you come across as inflammatory, and makes it seem like you don’t actually have evidence to support your claim, which could in fact (if true) be quite beneficial to this discussion.

People think modifying NBT is bad because bukkit never allowed it. Also when not used carefully it can break stuff (especially when used in forge). So far I know sponge will allow changing NBT, but off course a bit more limited. So you never can break the map with it.

So to describe it fast:
advantages:

  • No need to open a second stream to save data (+Speed)
  • Your player object contains the data you need (+less code lines)
    disadvantages:
  • Other plugins can edit your data easily
  • Usage of wrong key name can break the map (pluginname:key would solve this).

I can imagine it could be unsafe. It’d make sense that Sponge’s API only allow plugins to have access to NBT objects with the plugins name as a key. Maybe even embedded in a Sponge object, to keep from spamming the root object with entries.

I can see that setting some plugins to a disadvantage if for some reason they need access to other NBTs to perform certain functions, but I guess that’s what the API is for, and wouldn’t be such a bad thing if Sponge had a sane mutators for the other NBTs.

I’m not sure where I’m needed, as thomas15v does a great job of making nonsense claims and then contradicting himself. His arguments are akin to “stabbing yourself in the gut is 100% safe as long as you use a sterilized blade and don’t hit any vital organs”. It’s also 100% safe to send a perfectly constructed SQL update without any errors directly into your production DBMS. The problem is that humans are stupid and make mistakes. But like I said in my previous post, some people need to make those mistakes and get burnt by them before they learn.

The worst kind of programmer is the one who thinks he is incapable of error and justifies bad practices with “I know what I’m doing”.

*throws his hands in the air and walks away yet again*

1 Like

You sound like the self-righteous one here, @garbagemule, if there’s some definite issue with NBT alterations that you for some reason know that no one else here knows about, you’d think it’d help to fill us in. Instead you play the “I’m better than you and you can figure it out yourself” crap. If you don’t have anything constructive to say, perhaps the Sponge community isn’t somewhere you belong.

As far as I’m concerned, the worst kind of IT professional is the self-righteous sort that give others alike a bad name.

3 Likes

It would be nice if you could formulate your tantrum as a question, rather than a statement. That way I’d stand a chance at answering it. I figured my analogies were enough to explain the issues I’ve hinted at, but if they’re not, feel free to actually ask instead of lashing out :3

Agreed. No need for this kind of behavior.

2 Likes

This has been explained here.