The Spawn module controls the player spawn logic on your server.
To set a spawn point on your server, that is, the point where all players will start when entering a world for the first
time or respawning after death, use the command /setspawn
as a player at the point where you want players to spawn.
Nucleus will set the position at your feet and Minecraft will use that point as a future spawn point. Nucleus will also
store your player’s rotation and attempt to set the rotation of any player who spawns.
Spawn points are per world, and can be warped to using the /spawn [world]
command - if the world is omitted, you will
warp to the spawn point of the current world.
Nucleus provides the concept of a “first spawn” point. This allows server owners to have a specific, separate, spawn
point for new players. This can be set using the /setfirstspawn
command, and warped to using /firstspawn
.
It is strongly advised that if you use the first spawn mechanic that you also set the gamemode spawnRadius
to
0
, that is, run the command /gamerule spawnRadius 0
.
By default, Nucleus follows Minecraft/Sponge defaults where possible when it comes to spawning, specifically, that respawn after death will happen on the same world, and logging out of a server and subsequently logging in again will keep you in the same place as you were in before.
Nucleus does provide options to change that, however. If you wish for players to return to the spawn point of the world
they logged out on when logging in, set spawn-on-login
to true
. This can then be overriden for selected worlds using
the spawn-on-login-exempt-worlds
list.
For those who want /spawn
to refer to a single spawn point on a specific world, rather than one per world, Nucleus
offers the concept of a global-spawn
. By specifying a world in global-spawn.target-spawn-world
, any of the actions
in global-spawn
set to true
will warp people to the spawn point specified as the target world, rather than the
current world.
By default, Nucleus overrides respawning such that sleeping in a bed does not change a player’s respawn location. If
you wish to let players sleep in beds to set their own spawn position, set spawn.affect-bed-spawn
to false
in
main.conf
and reload the config. Nucleus will then ignore any event that respawns the player next to their bed.
/spawn
per world permissionsThe config options per-world-permissions
is ordinarily set to false, but if true, this allows fine grain control over
the worlds that a specific player can spawn to using the /spawn
command.
The following are incompatibilities that may occur with this module, along with how to resolve the problem. For the full mod/plugin incompatibility list, see the compatibility page.
Reason: By default, ProjectWorlds will override Nucleus' first spawn mechanics.
Resolution: Update to a ProjectWorlds build after 2nd September 2019, and set "options.first_join.enable" to "false".
Reason: ProjectWorlds has world access permissions that can block cross world teleports.
Resolution: Grant users the ProjectWorlds world access permission, which is "pjw.worlds.<worldname>".
Reason: Topography has the ability to take control of cross-world teleports in non-standard configurations. SkyFactory 4 has some worlds with this option enabled by default, which blocks the Nucleus teleport commands
Resolution: Check topography configuration files for any "captureTeleports" options and remove them.
Aliases:
firstspawn
Root command aliases:
/nfirstspawn
Usage: /firstspawn
Default Role: USER
Basic Command Permission: nucleus.firstspawn.base
Permissions
nucleus.firstspawn.exempt.cost
- Default Role: ADMIN nucleus.firstspawn.exempt.cooldown
- Default Role: ADMIN nucleus.firstspawn.exempt.warmup
- Default Role: ADMIN nucleus.firstspawn.base
- Default Role: USER
Aliases:
setfirstspawn
Root command aliases:
/nsetfirstspawn
Usage: /setfirstspawn
Available subcommands: del
Default Role: ADMIN
Basic Command Permission: nucleus.firstspawn.set.base
Permissions
nucleus.firstspawn.set.base
- Default Role: ADMIN
Aliases:
setfirstspawn del
setfirstspawn rm
Usage: /setfirstspawn del
Default Role: ADMIN
Basic Command Permission: nucleus.firstspawn.remove.base
Permissions
nucleus.firstspawn.remove.base
- Default Role: ADMIN
Aliases:
setspawn
Root command aliases:
/nsetspawn
Usage: /setspawn
Default Role: ADMIN
Basic Command Permission: nucleus.setspawn.base
Permissions
nucleus.setspawn.base
- Default Role: ADMIN
This command is an equivalent to the following command(s) in Essentials:
/setspawn
If the global spawn world is set in the configuration, then calling /spawn without a world argument will send the calling player to the global spawn point, otherwise, the player will warp to the current world spawn point.
Aliases:
spawn
Root command aliases:
/nspawn
Usage: /spawn [-f|--force] [<world>]
Available subcommands: other
Default Role: USER
Basic Command Permission: nucleus.spawn.base
Permissions
nucleus.spawn.exempt.cost
- Default Role: ADMIN nucleus.spawn.worlds
- Default Role: ADMIN nucleus.spawn.otherworlds
- Default Role: ADMIN nucleus.spawn.force
- Default Role: ADMIN nucleus.spawn.base
- Default Role: USER nucleus.spawn.exempt.cooldown
- Default Role: ADMIN nucleus.spawn.exempt.warmup
- Default Role: ADMIN
This command is an equivalent to the following command(s) in Essentials:
/spawn
This works in a similar way to the /spawn command, though the command may be used against offline players if the calling entity has permission. If the player is offline, the system will warp them prior to joining the world on next login.
Aliases:
spawn other
Usage: /spawn other <subject> [<world>]
Default Role: ADMIN
Basic Command Permission: nucleus.spawn.other.base
Permissions
nucleus.spawn.other.offline
- Default Role: ADMIN nucleus.spawn.other.base
- Default Role: ADMIN Permission | Suggested Role | Description |
---|---|---|
nucleus.firstspawn.base | USER | Allows the user to run the command /firstspawn |
nucleus.firstspawn.exempt.cooldown | ADMIN | Allows the user to bypass the cooldown for /firstspawn |
nucleus.firstspawn.exempt.cost | ADMIN | Allows the user to bypass the cost for /firstspawn |
nucleus.firstspawn.exempt.warmup | ADMIN | Allows the user to bypass the warmup for /firstspawn |
nucleus.firstspawn.remove.base | ADMIN | Allows the user to run the command /setfirstspawn del |
nucleus.firstspawn.set.base | ADMIN | Allows the user to run the command /setfirstspawn |
nucleus.setspawn.base | ADMIN | Allows the user to run the command /setspawn |
nucleus.spawn.base | USER | Allows the user to run the command /spawn |
nucleus.spawn.exempt.cooldown | ADMIN | Allows the user to bypass the cooldown for /spawn |
nucleus.spawn.exempt.cost | ADMIN | Allows the user to bypass the cost for /spawn |
nucleus.spawn.exempt.login | ADMIN | If granted, and the configuration is set to send players to spawn on login, this permission will prevent the player from going to spawn on login. |
nucleus.spawn.exempt.warmup | ADMIN | Allows the user to bypass the warmup for /spawn |
nucleus.spawn.force | ADMIN | Allows the user to attempt to force teleportation to spawn. |
nucleus.spawn.other.base | ADMIN | Allows the user to run the command /spawn other |
nucleus.spawn.other.offline | ADMIN | Allows the user to send a player to spawn on their next login. |
nucleus.spawn.otherworlds | ADMIN | Allows the user to go to another world's spawnpoint. |
nucleus.spawn.worlds | ADMIN | If set in the main config, this permission will give players access to spawn in all worlds. Adding the name of the lowercase name world as a child of this permission will grant permission for that world only (that is, ending with "worlds.world" for the world "world"). |
# If true, if a respawn would be back to a bed, Nucleus will override that, if false, Nucleus will ignore bed spawns. affect-bed-spawn=true # If true, then Nucleus will attempt to force players joining for the first time to spawn at the *direct point* that first spawn has been set. # Only set this if you want Nucleus to override all other plugins on first spawn. force-first-spawn=false # This section controls whether respawning and /spawn work on a per world or global server basis global-spawn { # If "spawn-on-login" is on and this is true, sends the player to the world specified in "target-spawn-world" when they log in. on-login=false # If true, respawning (like from death) sends the player to the world specified in "target-spawn-world", if false, sends them to the world spawn. on-respawn=false # If true, running /spawn sends the player to the world specified in "target-spawn-world", if false, sends them to the world spawn. on-spawn-command=false # The name of the world to use as the server spawn. If this is invalid, the default world is used instead. target-spawn-world=world } # If true, Nucleus will intercept respawn logic to ensure a player is warped back to the spawn point when respawning. This may conflict with some mods that do their own processing, if so, set this to false. handle-on-respawn=true # If true, players require the permission "nucleus.spawn.worlds.<worldname>" to spawn in a specific world, where worldname is the name of the world in lowercase. per-world-permissions=false # If true, players will be sent to the default world spawn on login, unless they are sent to the first login spawn, or they have the "nucleus.spawn.exempt.login" permission. spawn-on-login=false # If "spawn-on-login" is true, if a player logs in and is on any of the worlds listed here, they will NOT be redirected to the spawn point. # # This supports both world names and world UUIDs. spawn-on-login-exempt-worlds=[] # If true, using /spawn will attempt to find a safe place. If false, the teleportation will always directly send the player to the location with no safety checks. use-safe-spawn=true