Spigot vs Sponge in terms of block update speed

Is sponge any faster than Spigot for mass block updates? I’m considering switching my movecraft-spaceship server over to sponge (would make a new movecraft plugin :P)

1 Like

We definitely have made some developments on improving the performance of block updates, and you can always take advantage of our API to perform block changes without performing neighbor updates/block physics (which often times required cancelling a boatload of events, and handling the performance of that).

@blood can speak more of the performance changes he’s been making that will be made public soon.

3 Likes

Currently, I use chunk.a() with NMS. Is the sponge stuff faster?

Yeah, I don’t know what a() does in NMS anymore. With Sponge’s implementation toolchain, we don’t deal with obfuscated names in development, so unless you show me what method it is doing in comparison with a set up workspace of SpongeForge or SpongeVanilla, I can’t tell you what that method does and whether we added any optimizations to that method specifically.

What I can say is that we have several configurable optimizations here, and other optimizations that are in their own separate categories.

@gabizou it directly accesses the chunk, I believe. It doesn’t send packets or anything, or execute normal physics behaviour.

That doesn’t really narrow it down either. Again, set up a SpongeForge/Vanilla workspace and look at Chunk, it’s going to look very different from the obfuscated NMS that bukkit/spigot/etc. have to use.