Nucleus Frequently Asked Questions

This page lists some of the more frequently asked questions about the Nucleus Project, specifically the Essentials like plugin that we publish for Sponge servers.

Table of Contents

About the Nucleus Project

What is Nucleus?

Nucleus is, quite simply, the Ultimate Essentials Plugin for Sponge! Nucleus was born to bring a modern, modular and feature-rich Essentials style plugin that makes Sponge a viable choice for all server owners to cover the basics, whether they be vanilla servers or modded servers. It lets you get on with making your server unique with a solid base you can trust!

If you want more information on Sponge, see their website and documentation.

What does the Nucleus Project publish?

  • Nucleus: the main plugin. Most functionality is located in this plugin.
  • Nucleus Gluon: an optional plugin for Nucleus 0.24.0 and above, and PlaceholderAPI 3.6 and above, that allows for chat placeholders from both plugins to be used in… well, both plugins!
  • Nucleus Heisenberg: think Essentials GeoIP

So, can I get help in realtime? You said Discord…

You sure can get that help! Come visit us on Discord - click here and you’ll be with us in no time! But please, take the time to read the rest of this FAQ too.

Nucleus: General Setup

I’ve come from Essentials/EssentialsX on Bukkit, can I migrate my data?

No, not at this time.

Can I use a database to store data?

Not yet, but it is being worked on - v2 will contain the backbone for this.

Are there any known plugin or mod incompatibilities with Nucleus?

Unfortunately so. See our compatibility page for more details - we will update this list as we find more.

Can Nucleus manage my permissions?

No. You will need a separate permissions plugin if you wish to use permissions to manage your server.

There are a lot of permissions there, can I just give a permission wildcard?

Yeah, 1000 permission nodes can be daunting, and there is nothing stopping you, but we honestly recommend you do not. If you do so, the following things will happen:

  • You will not be able to go AFK (permission: nucleus.afk.exempt.toggle)
  • Logging in/out of your server will never generate a connection message (permission: nucleus.connectionmessages.disable)
  • From 1.2 - logging in to the server will cause you to vanish (permission: nucleus.vanish.onlogin)
  • From 1.3 - you’ll give yourself the keep inventory permission (permission: nucleus.inventory.keepondeath)

Other plugins may also not function as intended, a good example is GriefPrevention. So, please, don’t use the wildcard.

For more information on why this is bad, read this article on why you shouldn’t use it, including background information on what Bukkit did

Instead, Nucleus offers a way to setup our suggested permission sets, that should get you off the ground. You can read more about it at this documentation page, but the gist of it is that you should setup your user, mod and admin groups, then run the following command on each:

/nucleus setupperms [USER|MOD|ADMIN] <groupname>

You can then tweak your permissions as you see fit. The permissions that get loaded with the NONE set are highly specialised, we do not recommend you actually grant these unless you are SURE you know what you are doing.

What do your defaults give?

  • USER gives permissions to:
    • Use /afk, allowing themselves to be marked as AFK
    • Use /me, to be able to write “action chat” (such as dualspiral wrote these docs)
    • The ability to see the server time (using /time)
    • Create and warp to homes
    • View the MOTD
    • Ignore players in chat
    • Mail players
    • Use /helpop to message staff
    • Message players
    • Use /suicide
    • Use /realname to find out what a player’s IGN is from a nickname
    • Use /list
    • Use /rules
    • Use the server shop (/itembuy and /itemsell)
    • Warp to /spawn and /firstspawn
    • Use /tpa, accept and deny requests, and use /tptoggle to blanket deny requests.
    • Use /warp to teleport to any available warp point (but if enabled, only to those they are given explicit permissions for).
    • Use /getpos to get their own position
  • MOD gives permission to:
    • Administer bans (including tempbans)
    • Administer mutes
    • Send players to jail and then be able to unjail them again
    • Kick players, and kick all players when required
    • Join a full server
    • Are exempted from being ignored in chat and messages
    • Use Social Spy (to spy on messages)
    • Add notes and warnings to players
    • Use staff chat
    • Use /tpahere to request someone to teleport to them.
    • Use the teleport commands that do not require toggling
  • ADMIN gives permission to:
    • Bypass a lot of restrictions
    • Use a lot of administrative commands

As the ADMIN set spans about 900 permission nodes, please forgive me for not listing it all here!

I’m using FTB and having issues with chat - names are being duplicated

If you are using FTB, FTB Utilities also tries to format the chat, with the result that player names appear twice. If you wish to use Nucleus’ chat formatting, you should turn off FTB Utilities handling. The ranks config file is in the local directory, set the following options to false:

  • B:override_chat=false
  • B:override_commands=false

Then reload the FTB Utilities plugin or restart your server.

Can you disable some of Nucleus’ functionality?

Yes! Nucleus has a system which wraps up the functions into units called “modules”. So, if you have a better banning plugin, turn off the ban module! Something else does chat? Turn off the chat module!

The modularisation of Nucleus allows for exciting plugin combinations

To turn off a module, in /config/nucleus/main.conf, scroll to the modules section and set the module to DISABLED. Then restart your server.

I need help with the /help command!

Nucleus does not touch the /help command. /help is a Sponge command - please see the Sponge Docs for more information (and permissions).

I don’t want your command taking over this Minecraft command! Can you stop that?

It’s important to note that no minecraft command is actually turned off. To access a vanilla Minecraft command hidden by Nucleus, you can use /minecraft:<command>, such as /minecraft:kill.

If you would rather have Minecraft use the command, but keep Nucleus’ available, use Sponge’s command alias feature. In Sponge’s global.conf file, find the sponge.command.aliases section, and add <command>=minecraft to the list.

So, to set /kill to redirect to Minecraft, your aliases section should look like this:

aliases {
    kill=minecraft
}

Nucleus’ kill is then available through /nucleus:kill

If you want to turn off Nucleus’ command completely without turning off the whole module, you can turn it off in commands.conf.

I’m using a BungeeCord/Waterfall/Lillypad proxy, and this still doesn’t work!

A BungeeCord plugin is probably taking over the command. The only thing you can do in this case is disable the command on your proxy, which might involve disabling the whole plugin.

In these scenarios, you can still use /nucleus:[command], /n[command] (replacing [command] with the name of the command), or if it has an alias, the alias.

Customisation

I’d like some of my commands to have warmups, cooldowns or costs.

Most of Nucleus’ commands support warmups, cooldowns or costs. All the settings are in the /config/nucleus/commands.conf file, see our page on this for more information.

Note that you can either do this on a global basis by changing the commands.conf file, or on a per player/group basis using permission options.

Can we change/remove the join/leave messages?

Yes, you can. This is described in the Connection Messages module documentation.

How do I set standard chat prefixes/suffixes?

This is entirely dependent on your Permissions plugin. While Nucleus has a lot more to offer in terms of chat formatting, and we recommend that you look at the chat module documentation pages, by default, Nucleus will display prefixes, display names and suffixes in the chat message. Therefore, you just need the to set the prefix options in your prefix options, select commands for sample permission plugins are provided here.

For a user:

Loading...

For a group:

Loading...

How can I set the number of homes a player can have?

This is implemented as the permission option/meta home-count, rather than a specific permission for performance reasons. Consult your permission plugin on how to set this option, but for reference, commands for popular permission managers are shown below:

For users:

Loading...

For groups:

Loading...

You can read more about the home module here.

Troubleshooting problems in game

Why is /back telling me there is nowhere to warp to?

/back was designed to be more flexible than previous plugins, but that also means that configuring it can take a few more steps. If it isn’t working, make sure you check the following:

  • The players have the required permissions: nucleus.back.targets.death, nucleus.back.targets.portal, nucleus.back.targets.teleport
  • The options in main.conf at back.* are set as you expect them to be.

Players don’t respawn next to their bed when they die!

By default, Nucleus overrides this behaviour if you have custom spawn rules set. If you want bed spawns to override other respawn logic, set spawn.affect-bed-spawn to false and reload the config.

See here for more info.

Why are players not spawning at the set spawn when they first log in?

Minecraft has a special spawn logic for new players:

  • The location they log in will always be on the surface, and always a grass block
  • The location will be around spawn, to provide a random-ish start point.

You can fix this by running /gamerule spawnRadius 0 (shoutout to Karaga for discovering this!)

My chat messages seem messed up, I set Nucleus’ formatting options but it’s not following them!

Have you got any chat management plugins installed? These plugins tend to override what Nucleus is doing, and while Nucleus tries to be as compatible as possible, some plugins do interfere, from duplicating sections to completely blowing away all of Nucleus’ formatting.

Before reporting this to the Nucleus issue tracker (see below), please remove ANY chat management plugin and test without. SimpleChat and UltimateChat, to name some of the more popular plugins, do alter the chat and can cause surprise to the server owners! While we can try to give you help in these scenarios, please bear in mind that anyone in the Nucleus Discord channel are there for Nucleus. That said, developers of some of these other plugins are also in our Discord channel and can help you directly too.

My server is really slow when using /rtp or some other teleport to a place no player has gone before!

Chunk generation is slow. A general recommendation by most of the community is to do what is known as “pre-generation” of your world. Pre-generation creates chunks in your world before they are needed, so when someone does reach that chunk, it just has to be loaded, rather than generated first. This, in general, offers a moderate performance gain, however, do be careful to not pregenerate a large world!

Nucleus offers a way to do this in the world module. If you’re running a 1.10.2 server, we recommend installing the Nucleus Mixins plugin before attempting this, as this can provide moderate speedup of pre-generation.

The command /world border gen [-a] [--save <time>] [world] allows you to pre generate up to your world border. We recommend setting your world border to be about a 4000 block diameter around your spawn point (using the command /world border set 4000 when stood at the centre), and then running /world border gen. This will generate your world, using 80% of the tick time and save every 20 seconds.

If you want to try to run the pre-generation faster, you can change the same interval to be much higher, and run in “aggressive” mode. Adding -a to the command indicates aggresive mode, where 90% of tick time is dedicated to the generation routines, and memory checks are turned off. To increase the save interval, add --save <time> to your command, many server owners choose save intervals of two minutes.

Some configurations are:

  • /world border gen -a --save 1m - aggressive mode, 1 minute save intervals.
  • /world border gen -a --save 5m - aggressive mode, 5 minute save intervals.
  • /world border gen --save 2m - normal mode, 2 minute save intervals, usually used for live servers (which we do not recommend).

We recommend you do this on a server with no players on!

HELP! I have an error when I run a command! (AKA, making a good bug report!)

If you get an error that states “An error occurred while running this command”, or Nucleus does something weird when you perform an action, please do the following (make sure you have console and filesystem access):

  • Before you do all this, you can join the Nucleus Discord channel and ask if anyone else has seen the problem.
  • Make sure you are running the latest version of Nucleus. If you are not, try again with the latest.
  • Turn on Debug Mode: in main.conf, set core.debug-mode to true and run /nucleus reload.
  • Load up the Nucleus issue tracker, and search the issues to make sure the issue hasn’t been reported already.
    • If it has, you can still add extra information if you think you have new things to say, but please do not add comments that simply say “me too”.
  • Run the command that caused the error again, it should show a “stack trace” in the console.
  • Copy this error down somewhere, like Notepad, to make sure you don’t lose it before providing it to us.
    • You can now turn off debug mode if you wish.
  • Run /nucleus info on your server, and get the file it generates.
  • Pastebin/Github Gist both files, and create a new issue on GitHub explaining what you did to cause the error.

That’s it! The developers may ask for more information, they will direct you on how to get this info if it’s needed.

Developers

Can I integrate with Nucleus?

Absolutely, we’d love to have you on board. We have JavaDocs for our API, but if the API you want doesn’t exist, or you want help with the integration, the developers are frequently on Discord.

Do you have a Maven/Gradle repo?

We certainly do! This information is posted on all feature release notes where the API will have changed.

The repo is available at https://repo.drnaylor.co.uk/artifactory/minecraft/, you want the nucleus-api artifact, which contains the API interfaces we will keep stable.

You can also use JitPack as your repo too, be sure to select the nucleus-api artifact.