Nucleus - The Ultimate Essentials Plugin

This is a discussion topic for the Ore project, Nucleus. View the full project on Ore for downloads and more information.


Quick Links

Docs | FAQs | Commands | Permissions

Nucleus is quite simply it - the Essentials-like plugin your server has been crying out for!

Nucleus is everything you want from, and love about, essentials plugins and more. The original modular Essentials like plugin for Sponge is now available from right here on Ore!

If you’re coming over from Bukkit/Spigot, and looking to fill that big hole Essentials left, or you’re startng afresh, Nucleus gives you that rock solid base that does all the boring stuff that no-one wants to configure, so you can get on with making your server unique!

Please note, if you are using Nucleus version 1.6.3-S7.1 or below, then Nucleus is capable of downloading GeoIP databases from Maxmind ( This is on an OPT-IN basis by enabling the GeoIP module (which is disabled by default) and accepting the licence. No data, including IP address and locations, is transmitted by this plugin.

Nucleus 1.7.0-S7.1 and above do not have a GeoIP module and therefore do not download the GeoIP databases.

Extremely simple. Highly configurable.

Nucleus is designed to be installed and used with minimal fuss. Install it, grant permissions, get on with your server. It’s that easy!

Just because Nucleus can be simple, doesn’t mean it’s “one size fits all”! Don’t want warp functionality? Turn it off! Want to charge for a command? Done. Warmups and cooldowns? Wait for it…

Nucleus’ breakthrough modular system allows you to make Nucleus your own. No two installations of Nucleus need be the same. With Nucleus, you control everything - but only if you want to!

And if you need that little bit of help, Nucleus has extensive documentation and a community that just loves to help on Discord.

Developing a plugin? We’ve got your back!

Making a plugin that might make use of Nucleus? We’ve got you covered too! Want to use a few warps? Get them from Nucleus’s warp service. Want to set a player home? We can do that too. Want to jail someone who breaks the rules of your game? You’ll have those rule-breakers behind bars in no time!

It’s not just about integration! Do you develop a plugin that offers advanced functionality that replaces part of what Nucleus does? You can request to turn off parts of the plugin! No more command conflicts, Nucleus can adapt to a server without the server owners batting an eyelid!

You can get our API from Gradle - see the latest version’s release notes for details!

Created for you. Open for all.

We’re open ears here! Found a bug? Something not quite right? Or do you have an idea that would fit in with Nucleus? Let us know on our GitHub issues page!. Just want to thrash out an idea? Come talk to us on Discord - we have a passion for making Nucleus and the Sponge ecosystem system better!

Are you a developer who wants to help out! Send us a pull request! We’d love to have you on board!

Nucleus is open source and licenced under the MIT licence. That means you can grab the code, tinker with it, and hopefully improve it!

We can be found over on GitHub!


A new version has been released for Nucleus, it is available for download here.

The Ultimate Essentials Plugin.

A new version has been released for Nucleus, it is available for download here.

The Ultimate Essentials Plugin.

A new version has been released for Nucleus, it is available for download here.

The Ultimate Essentials Plugin.

A new version has been released for Nucleus, it is available for download here.

The Ultimate Essentials Plugin.

A new version has been released for Nucleus, it is available for download here.

The Ultimate Essentials Plugin.

A new version has been released for Nucleus, it is available for download here.

The Ultimate Essentials Plugin.

A new version has been released for Nucleus, it is available for download here.

The Ultimate Essentials Plugin.

A new version has been released for Nucleus, it is available for download here.

The Ultimate Essentials Plugin.

A new version has been released for Nucleus, it is available for download here.

Nucleus 0.20.0 is available for Sponge API 5.1 and is compatible with current builds for Sponge API 6-SNAPSHOT. Documentation can be found at (command and permission references should already be up to date).

NucleusMixins, an optional companion plugin for Nucleus, is available for Sponge API 5 (Minecraft 1.10.2) servers, and will provide a workaround for /invsee not working as intended, and enhanced world generation by hooking into Minecraft internals (known as “NMS” to some players). It is entirely optional, and may not work on heavily modded servers. If you wish to turn off either the /invsee or enhanced world generation mixins, you can do so by setting the relavent option in mixins.conf.

If you’re having trouble, visit our Discord channel:

This release is mostly a performance oriented release, but there are some features!

New World commands.

There are a few things that were not exposed by Nucleus, now they are:

  • /world setpvpenabled [t|f] - turn PVP on or off
  • /world setloadonstartup [t|f] - set whether the world loads on startup
  • /world sethardcore [t|f] - set whether the world is in hardcore mode
  • /world setkeepspawnloaded [t|f] - set whether spawn should remain loaded

You can now use /world info [world] for information about the world you are on, or the world you specify. It’s the same output as /world list, only straight to the point. It uses the same permission as /world list (

Support for per mob permissions when using /spawnmob

If enabled, the permission nucleus.spawnmob.mob.<mobid>, where mobid is the ID of the mob, as seen by Sponge. So to allow creeper spawning (ID, minecraft:creeper), use nucleus.spawnmob.mob.minecraft.creeper, for all Minecraft/Vanilla mobs, use nucleus.spawnmob.mob.minecraft.

Also, I kept typing in “/mobspawn” when testing. It didn’t work. That’s an alias now. It does work now. Problem solved!

Other minor features are:

  • Allow /ec to be chargable
  • Vastly reduce the number of permission checks in some cases through intelligent caching
  • If using Nucleus Mixins, add --save [timespan] option to specify how often a world saves during generation
  • Add ability to disable world gen all server notification messages

There has also been a few bugfixes in this release:

  • Fixed players spawning in sometimes not being rotated the right way.
  • Fix error when using -a with /world border gen and Sponge’s generation routines.
  • Fixed incorrect order of display parameters when using /setworth

There are some known issues and things that you should be aware of:

  • /invsee does not work unless you are within 8 blocks of the target player. Use NucleusMixins to workaround this - though this currently doesn’t work for some heavily modded servers (#506). If you have more information, please add it there.
  • Some players are finding that enhanced pre-generation isn’t giving output (#528). The plan is to fully add Nucleus enhancements to Sponge proper.
  • While we don’t plan to make changes to the data files, things might change. These will be stabilised by 1.0
  • There is an API, but this is subject to change.
  • Sometimes, an incorrect custom prefix might be selected. Nucleus uses whatever the permission plugin hands back, check your inheritance with the permissions plugin.

A note on GeoIP

GeoIP is disabled by default, and once enabled, will require you accept the third party library licences that are now included in the Jar. We ask that you use the feature responsibly, while we display public data, we understand the privacy concerns.

To use GeoIP, set modules.geo-ip to ENABLED and restart, then set geo-ip.accept-licences to true and run /nucleus reload. The command /geoip update and /geoip <player> will be available to you, requiring the nucleus.geoip.base permission. To display information on login to staff, grant the permission nucleus.geoip.login.


**Commit history: **

For best results please use the latest SpongeForge or SpongeVanilla builds. Fixes that have been added to SpongeForge/SpongeVanilla include those discovered during Nucleus development - using newer builds will ensure that Nucleus runs smoother on your servers! Before reporting issues, make sure you are running these latest builds!

Leave your feedback, issues, complaints and feature requests on the forum post or in GitHub issues. This release was created with the help of those who test and report issues, thanks to everyone who played a part!


Note that there are now two downloads for Sponge 5/1.10.2 servers. The mixinplugin is optional, but recommended, particularly for vanilla servers.

1 Like

@dualspiral perhaps a long-standing problem. Anyone has the same problem?


  1. I created in single player empty world
  2. Imported it to the server: /world create islands -i
  3. Teleported to it: /spawn islands
  4. Did some work and decided to remove it:
  • /world unload -t world -d islands (players no!). In chat a message: disconnection was successful.
  • /world ls reports that the world is not disabled

Therefore cannot be deleted: /world delete islands

Maybe I’m doing something wrong?

Will look into it and try to figure out what is wrong.

Hi, I’ve been this plugin since I started the server a little while ago, and recently I’ve been trying to figure out a way to warp other players to set warps. It doesnt seem so, but I was wondering if there was a warp other setup already, or if there will be in the future.

@WorseWaif I’m working on that now, should have it for the next version!

Awesome! Out of curiousity, would you know when that would be released? I dont mean to be impatient or rude, its just that my server could really use that command to tp ppl between worlds through warps and command blocks…

Just use /tppos Player WarpCo-ords ?

How does one create an empty world? Want a world that has absolutely nothing in it to build stuff on.

Also, is it possible to add /rtp other?

No RTP other atm afaik although you could try /sudo rtp

It will be available soon though, hopefully sometime in the next 24-48 hours.

Similar with the world command, I’ve added more flags to enable what you want (which will be /world create <name> -n for you)

1 Like

Awesome, thanks :slight_smile:
If the world is empty, will there a platform to stand on or will I need to be flying before hand? Either is fine with me, just wondering.

Also, how can I add separate permission nodes for /world teleport?
And, is it possible to add world specific warps, meaning it’ll show a different list for every /warps the player runs. I want warps to different biomes in each world.

1 Like