Prism Official Thread - v3.0 Beta

Announcing Prism for Sponge!

Prism 3.0 is a complete rewrite of the plugin - designed specifically for Sponge, as well as incorporating changes I’ve wanted to make since the bukkit project ended.

Most importantly:

  • Way more robust block/entity tracking.
  • Smarter cause identifications.
  • MongoDB (recommended), H2, and MySQL/MariaDB support.
  • Simpler, cleaner API, cleaner code (still in progress…)

Thanks to the Sponge team (especially blood and gabizou) for their support.



Beta Info

This is a beta, and so is Sponge. While it’s probably safe to use on a production server, you must be aware that it’s not (yet) very well tested outside a small group of developers and players.

Important Features Still Pending:

  • h2/MySQL data purging
  • Item/container tracking and rollback
  • Further DB/code performance profiling

Original Post:

Until there’s some sort of dbo replacement, I too would like to make an official thread for Prism (for Sponge).

In case you’re not familiar with Prism, checkout the site: Discover Prism

Prism 2 is very stable and performant but there’s a lot of under-the-hood code rewrites I very much wanted. I had begun work stripping down the bukkit version (and we have a blazing-fast mostly-working proof of concept version with MongoDB), now the goal is to start fresh with the same goals as I build a Prism-for-Sponge version from scratch. I’ll call this Prism 3.

It’s too early for me to know how Sponge will evolve so not much can be done for now, other than some independent prism internals.

Prism is open source, and I’d love to have a new (or returning) batch of contributors.

My goals for 3.0:

  • Clean the code, fix things that were poorly structured
  • Abstract the back-end db code based on prism 2 rewrites
  • Support MySQL, MongoDB out of the box (other DBs may come later)
  • Provide a much cleaner API for other plugins to hook into (will still support custom events, rollback handlers, etc)

If you have any specific recommendations or suggestions, let me know.

I’m often in #prism and will read the backchat if not.

Feature Requests? Issues?

Please file issues on our github page.

DO NOT post these in the comments here, please.


Awesome! I use prism too, so a port to sponge is welcomed news!

Prism is love, Prism is life.

1 Like

Prism and WorldEdit snapshot restores have been lifesavers for me on my servers. I am looking forward to Prism 3.0!

1 Like

Cool i like prism a lot i hope to see it when sponge comes out :slight_smile:

Good luck on rewriting(?) Prism to Sponge. It is the best “anti-grief tool” out there!

I got to ask, will prsm support custom blocks for logging?

Prism formerly supported many mod blocks for Cauldron, so essentially, yes. I’m not sure on the details, because it depends on how Sponge handles mod blocks.

Well it also depends if the API for plugins allow the plugins to be “mod” aware.

Looking forward to seeing the new Prism. In a masochistic way, I think this Sponge switch is making a lot of us devs reevaluate our core code and finally rewrite those things we’d always wanted to but never could.



it doesn’t necessarily do so considering plugins were able to do that with access to the nms package. there were a handful of plugins that supported limited manipulation of blocks from game mods, but it was never a fully safe thing.

Will it still work on Spigot 1.8? :expressionless:

I really hope it will be updated to the new 1.8 spigot.


viveleroi told me he has no intention of releasing a version of Prism for CraftBukkit/Spigot 1.8. So I’ll be switching to CoreProtect.

1 Like

That could take a while. Have fun.

That’s a stupid idea! Now that Bukkit is dead, there will be no more “unified platform for all server owners”. You should try to support everyone.

Holy necropost, Batman!


It’s good that there are some grief protection adaptations and not only ports (not that I mind)

Code on my friends!

I’ve updated this post for Prism 3.0 Beta - it’s no longer just a placeholder post. Happy testing.


Running it now I’ll let you know if there’s any major issues. So far I have been able to restore a few blocks… however the commands seem different from previous versions ie. time etc… so I have to spend some time to figure that out.