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?
http://nucleuspowered.org/docs/modules/world.html
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)
Awesome, thanks
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.
I haven’t done it for /world teleport
, but /spawn [world]
is pretty much an equivalent command (not sure why /world tp
exists too, but anyway), and that will be in the next update: permission nucleus.spawn.world.[lowercase world name]
.
World specific warps - I guess you’re just looking for a way to restrict warps to the current world. I don’t think I’ll get around to doing that for the next release, but it’s something I could look into.
If I may ask, it would be better for me to capture your ideas at Issues · NucleusPowered/Nucleus · GitHub, so if you have suggestions, could you pop them on there? They are more easily sorted by me if I can see them in a list, thanks!
Well, restrict warps to current world or create warp lists that only show in one world.
And alright, next time I have more suggestions, Ill put it there
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 http://nucleuspowered.org/docs (command and permission references should already be up to date).
Note that there are now two builds for Nucleus. Use S5.1 for 1.10.2 servers, S6 for 1.11.2 servers.
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: https://discord.gg/MC2mAuS
IMPORTANT NOTE
I’ve tightened an item ID check, so some items that you may have used in the shop module, for example, may no longer work and need to be redefined. Indeed, they may not be, but this is to ensure consistency in the future. Sorry for any inconvenience.
Developers: The API now has its own jar file
In order to combat problems with dependencies, you can now include a smaller API jar via Gradle!
Repository: ‘http://repo.drnaylor.co.uk/artifactory/list/minecraft’.
Dependency (for this version): ‘io.github.nucleuspowered:nucleus-api:0.21.0-S5.1’
In future, the API version will match the format Nucleus Version-S{Sponge API Version}-{Modifiers}
. I’ll try to remember to put the version numbers in release notes.
Home and Warp APIs
Nucleus has undergone a rebuild of the Home and Warp systems to allow for integration with other plugins. The NucleusHomeService
and NucleusWarpService
services, and the NucleusHomeEvent
and NucleusWarpEvent
events. This is in additon to what is already available, and is slowly being documented.
The Home and Warp APIs will be considered stable for Nucleus 0.x & 1.x once 0.21.x is released.
This will initially integrate with GriefPrevention, but any plugin is welcome to use these events.
List has been turbocharged
List was good. List worked. List wasn’t great. Now it is.
- Groups can have a weight, determining which one is used as a display group if a player has more than one group. This is controlled by permission options on the group:
nucleus.list.weight
- apply this to GROUPS not users. - Groups can be given an alias, and multiple groups can have the same alias. This can be defined in
main.conf
,playerinfo.list.list-grouping-by-permission.group-aliases
. - The group ordering can be defined in
main.conf
,playerinfo.list.list-grouping-by-permission.group-order
. Note that you must keep the[]
, and it’s a comma separated list, where the names are enclosed in"
characters. - There is an option to only display a group if it has an explicit alias, else collapse into the default group.
More flags for the /world create
command
To recap, the available flags are now:
- -d/–dimension : the dimension to use as a base world type. Defaults to the overworld.
- -g/–generator : the world generator to use. Defaults to the default generator.
- -m/–modifier : a world generator modifier to use. Can be specified multiple times for multiple modifiers.
- –di/–difficulty : the initial world difficulty. Defaults to normal.
- –gm/–gamemode : the default game mode for players in the world. Defaults to survival.
- -s/–seed : The seed to use to generate the world. If not specified, a random seed will be used.
- -i: Indicates that this world might exist and can be imported.
- -n/–nostructures: If specified, will not generate structures in the world.
- -l/–loadonstartup <true|false>: If false, the world will not be loaded on startup. Defaults to true.
- -k/–keepspawnloaded <true|false>: If false, the spawn will not be kept loaded. Defaults to true.
- -c/–allowcommands <true|false>: If false, commands will not be allowed on the world. Defaults to true.
- -b/–bonuschest <true|false>: If false, the bonus chests will not be generated. Defaults to true.
More text tokens
You may now use {{ipaddress}}
to get the player’s IP address, and {{uniquevisitor}}
to get an estimated visitor count, in places such as the MOTD and info files. If you think the unique visitor count seems to be off, run /nucleus debug refreshuniquevisitors
. This will update the count in the background.
Sponge Timings support
Now, if you use /sponge timings
, Nucleus will appear a lot more - but this isn’t a bad thing! Nucleus breaks down the timings for commands and any save/load operations on the main thread that might cause lag. This will help you and us in the future trying to pinpoint server lag problems, and whether it’s Nucleus causing them.
Other minor features are:
- Nicknames now can use most characters, and a regex can be used to restrict what characters and forms nicknames can use.
-
/world create
now does not requireminecraft:
prefixes. - Some commands now hide vanished players when pressing tab to complete a command.
- Added per-world permissions for
/spawn
(but this is off by default) -
/kits
now shows costs - Added the permission
nucleus.home.other.exempt.target
to allow admins to prevent homes from being disclosed. - Add
/itemsellall
(/sellall
) - Added ability to warp other players to named warps
- Add
/ping [player]
- Add
/rtp [player]
- Added clickable location on
/seen
for players, allows players with the/tppos
command to warp to them. This will be expanded upon in a future release.
There has also been a few bugfixes in this release:
- Sometimes, a server that has two users that have had the same name at different points may have prevented some Nucleus commands from functioning properly. This has been fixed.
- Some formatting has been cleaned up
- Some errors have been cleaned up
- Fixed some link options having the opposite effect to what they should have done.
- URLs can now include hyphens in their domain names.
-
&r
really should work properly now!
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). This will work fine in 1.11.x and beyond once I add support for it.
- 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
.
See http://nucleuspowered.org/thirdparty/geoip.html
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 this 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!
A new version has been released for Nucleus, it is available for download here.
Nucleus 0.21.0 is available for Sponge API 5.1 and is compatible with current builds for Sponge API 6-SNAPSHOT.
This build is for Minecraft 1.11.2/Sponge API 6. Use this version for Minecraft 1.10.2/Sponge API 5.1
Documentation can be found at http://nucleuspowered.org/docs (command and permission references should already be up to date). Developer documentation is available at http://jd.nucleuspowered.org.
Note that there are now two builds for Nucleus. Use S5.1 for 1.10.2 servers, S6 for 1.11.2 servers.
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: https://discord.gg/MC2mAuS
IMPORTANT NOTE
I’ve tightened an item ID check, so some items that you may have used in the shop module, for example, may no longer work and need to be redefined. Indeed, they may not be, but this is to ensure consistency in the future. Sorry for any inconvenience.
Developers: The API now has its own jar file
In order to combat problems with dependencies, you can now include a smaller API jar via Gradle!
Repository: ‘http://repo.drnaylor.co.uk/artifactory/list/minecraft’.
Dependency (for this version): ‘io.github.nucleuspowered:nucleus-api:0.21.0-S5.1-PR2’
In future, the API version will match the format Nucleus Version-S{Sponge API Version}-{Modifiers}
. I’ll try to remember to put the version numbers in release notes.
Home and Warp APIs
Nucleus has undergone a rebuild of the Home and Warp systems to allow for integration with other plugins. The NucleusHomeService
and NucleusWarpService
services, and the NucleusHomeEvent
and NucleusWarpEvent
events. This is in additon to what is already available, and is slowly being documented.
The Home and Warp APIs will be considered stable for Nucleus 0.x & 1.x once 0.21.x is released.
This will initially integrate with GriefPrevention, but any plugin is welcome to use these events.
List has been turbocharged
List was good. List worked. List wasn’t great. Now it is.
- Groups can have a weight, determining which one is used as a display group if a player has more than one group. This is controlled by permission options on the group:
nucleus.list.weight
- apply this to GROUPS not users. - Groups can be given an alias, and multiple groups can have the same alias. This can be defined in
main.conf
,playerinfo.list.list-grouping-by-permission.group-aliases
. - The group ordering can be defined in
main.conf
,playerinfo.list.list-grouping-by-permission.group-order
. Note that you must keep the[]
, and it’s a comma separated list, where the names are enclosed in"
characters. - There is an option to only display a group if it has an explicit alias, else collapse into the default group.
More flags for the /world create
command
To recap, the available flags are now:
- -d/–dimension : the dimension to use as a base world type. Defaults to the overworld.
- -g/–generator : the world generator to use. Defaults to the default generator.
- -m/–modifier : a world generator modifier to use. Can be specified multiple times for multiple modifiers.
- –di/–difficulty : the initial world difficulty. Defaults to normal.
- –gm/–gamemode : the default game mode for players in the world. Defaults to survival.
- -s/–seed : The seed to use to generate the world. If not specified, a random seed will be used.
- -i: Indicates that this world might exist and can be imported.
- -n/–nostructures: If specified, will not generate structures in the world.
- -l/–loadonstartup <true|false>: If false, the world will not be loaded on startup. Defaults to true.
- -k/–keepspawnloaded <true|false>: If false, the spawn will not be kept loaded. Defaults to true.
- -c/–allowcommands <true|false>: If false, commands will not be allowed on the world. Defaults to true.
- -b/–bonuschest <true|false>: If false, the bonus chests will not be generated. Defaults to true.
More text tokens
You may now use {{ipaddress}}
to get the player’s IP address, and {{uniquevisitor}}
to get an estimated visitor count, in places such as the MOTD and info files. If you think the unique visitor count seems to be off, run /nucleus debug refreshuniquevisitors
. This will update the count in the background.
Sponge Timings support
Now, if you use /sponge timings
, Nucleus will appear a lot more - but this isn’t a bad thing! Nucleus breaks down the timings for commands and any save/load operations on the main thread that might cause lag. This will help you and us in the future trying to pinpoint server lag problems, and whether it’s Nucleus causing them.
Other minor features are:
- Nicknames now can use most characters, and a regex can be used to restrict what characters and forms nicknames can use.
-
/world create
now does not requireminecraft:
prefixes. - Some commands now hide vanished players when pressing tab to complete a command.
- Added per-world permissions for
/spawn
(but this is off by default) -
/kits
now shows costs - Added the permission
nucleus.home.other.exempt.target
to allow admins to prevent homes from being disclosed. - Add
/itemsellall
(/sellall
) - Added ability to warp other players to named warps
- Add
/ping [player]
- Add
/rtp [player]
- Added clickable location on
/seen
for players, allows players with the/tppos
command to warp to them. This will be expanded upon in a future release.
There has also been a few bugfixes in this release:
- Sometimes, a server that has two users that have had the same name at different points may have prevented some Nucleus commands from functioning properly. This has been fixed.
- Some formatting has been cleaned up
- Some errors have been cleaned up
- Fixed some link options having the opposite effect to what they should have done.
- URLs can now include hyphens in their domain names.
-
&r
really should work properly now!
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). This will work fine in 1.11.x and beyond once I add support for it.
- 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
.
See http://nucleuspowered.org/thirdparty/geoip.html
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 this 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!
For ease:
- Use this version for 1.10.2: Nucleus / Nucleus
- Use this version for 1.11.2: Nucleus / Nucleus
A new version has been released for Nucleus, it is available for download here.
This is a bug fix release:
- Fixes
/sudo <player> c:
adding an extra prefix. - Fixes issues with AFK messages and
/vanish
This build is for 1.11.2
A new version has been released for Nucleus, it is available for download here.
This is a bug fix release:
- Fixes
/sudo <player> c:
adding an extra prefix. - Fixes issues with AFK messages and
/vanish
This build is for 1.10.2
For ease:
- Use this version for 1.10.2: Nucleus / Nucleus
- Use this version for 1.11.2: Nucleus / Nucleus
A new version has been released for Nucleus, it is available for download here.
Nucleus 0.22.0 is available for Sponge API 5.1 and is compatible with current builds for Sponge API 6-SNAPSHOT. Documentation can be found at http://nucleuspowered.org/docs (command and permission references should already be up to date).
Note that there are now two builds for Nucleus. Use S5.1 for 1.10.2 servers, S6 for 1.11.2 servers. This build is for API 6/1.11.x servers
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: https://discord.gg/MC2mAuS
IMPORTANT NOTE (from 0.21.0)
I’ve tightened an item ID check, so some items that you may have used in the shop module, for example, may no longer work and need to be redefined. Indeed, they may not be, but this is to ensure consistency in the future. Sorry for any inconvenience.
Developers: API updates
Repository: ‘http://repo.drnaylor.co.uk/artifactory/list/minecraft’.
Dependency (for this version): ‘io.github.nucleuspowered:nucleus-api:0.22.0-S5.1’
- Added
NucleusFirstJoinEvent
to allow other plugins to detect when Nucleus thinks a player has joined for the first time. - Added
NucleusChatChannel
andNucleusNoFormatChannel
for plugin developers to detect when Staff Chat or/me
is being used (seeNucleusChatChannel
subinterfaces) and theNucleusNoFormatChannel
to determine when Nucleus won’t touch a message.
List has been turbocharged. Again
More bug fixes here, but /list
should now use the weights properly. I’ve written tests to make sure this worked properly this time!
BETA: Added support for disabling player-player collisions
Just turn it on within the protection module. However, it’s seen limited testing, and feedback on this feature will be helpful.
Enhanced /exp
commands
You can now use levels in /exp give
and /exp take
. You can specify that you are using levels by either placing an L
before or after the number, (/exp give dualspiral L30
or /exp take dualspiral 30L
will both work
Other minor features in this release:
- Added logon message when a player changes their Minecraft IGN.
There has also been a few bugfixes in this release:
- Fixed a problem with first join being fired repeatedly.
- Fixed
/tpa
and/tpahere
sending requests to those who disabled teleport requests. (/tptoggle
)
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. If you have more information, please add it there. - Some players are finding that enhanced pre-generation isn’t giving output. This will work fine in 1.11.x and beyond once I add support for it.
- While we don’t plan to make changes to the data files, things might change. These will be stabilised by 1.0
- 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
.
See http://nucleuspowered.org/thirdparty/geoip.html
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!
A new version has been released for Nucleus, it is available for download here.
Nucleus 0.22.0 is available for Sponge API 5.1 and is compatible with current builds for Sponge API 6-SNAPSHOT. Documentation can be found at http://nucleuspowered.org/docs (command and permission references should already be up to date).
Note that there are now two builds for Nucleus. Use S5.1 for 1.10.2 servers, S6 for 1.11.2 servers. This build is for API 5.1/1.10.2 servers
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: https://discord.gg/MC2mAuS
IMPORTANT NOTE (from 0.21.0)
I’ve tightened an item ID check, so some items that you may have used in the shop module, for example, may no longer work and need to be redefined. Indeed, they may not be, but this is to ensure consistency in the future. Sorry for any inconvenience.
Developers: API updates
Repository: ‘http://repo.drnaylor.co.uk/artifactory/list/minecraft’.
Dependency (for this version): ‘io.github.nucleuspowered:nucleus-api:0.22.0-S5.1’
- Added
NucleusFirstJoinEvent
to allow other plugins to detect when Nucleus thinks a player has joined for the first time. - Added
NucleusChatChannel
andNucleusNoFormatChannel
for plugin developers to detect when Staff Chat or/me
is being used (seeNucleusChatChannel
subinterfaces) and theNucleusNoFormatChannel
to determine when Nucleus won’t touch a message.
List has been turbocharged. Again
More bug fixes here, but /list
should now use the weights properly. I’ve written tests to make sure this worked properly this time!
BETA: Added support for disabling player-player collisions
Just turn it on within the protection module. However, it’s seen limited testing, and feedback on this feature will be helpful.
Enhanced /exp
commands
You can now use levels in /exp give
and /exp take
. You can specify that you are using levels by either placing an L
before or after the number, (/exp give dualspiral L30
or /exp take dualspiral 30L
will both work
Other minor features in this release:
- Added logon message when a player changes their Minecraft IGN.
There has also been a few bugfixes in this release:
- Fixed a problem with first join being fired repeatedly.
- Fixed
/tpa
and/tpahere
sending requests to those who disabled teleport requests. (/tptoggle
)
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. If you have more information, please add it there. - Some players are finding that enhanced pre-generation isn’t giving output. This will work fine in 1.11.x and beyond once I add support for it.
- While we don’t plan to make changes to the data files, things might change. These will be stabilised by 1.0
- 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
.
See http://nucleuspowered.org/thirdparty/geoip.html
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!
A new version has been released for Nucleus, it is available for download here.
Nucleus 0.23.0 is available for Sponge API 5.1 and Sponge API 6-SNAPSHOT. Documentation can be found at http://nucleuspowered.org/docs (command and permission references should already be up to date).
Note that there are now two builds for Nucleus. This is the build for 1.11.2
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: https://discord.gg/MC2mAuS
Important Changes & Notices
Changes to the internal data handlers
The big change for 0.23 is the way the data files are read and written. Server owners do not need to care about this, but please consider taking a backup of the /nucleus
data folder before updating.
Permission changes: other
becomes others
Some commands have permissions that allow you to act upon others. There was a horrible mix of *.other
and *.others
permissions - this has been rationalised and now, the standard suffix for targetting others is *.others
. This might break some permission setups, but this allows for better consistency going forward.
New Features
Descriptions for Warps and Warp Categories
Warp categories now have descriptions and display names, which also accept colour codes. They will be displayed on the /warps
list, and can be managed using the following commands.
-
/warp category list
- lists all categories -
/warp category setdisplayname [category] [& encoded name]
- sets a display name for a category. -
/warp category setdescription [category] [& encoded description]
- sets a description for a category. -
/warp category removedisplayname [category]
- removes the display name for a category. -
/warp category removedescription [category]
- removes the description for a category.
Running the following commands for my “test” category:
/warp category setdisplayname test "&4Test &7Category"
/warp category setdescription test "&bThis is a <est description"
gives me the following.
Warps can also have their own description, but for space reasons, these descriptions will be put into the hover that appears when you hover over a warp link. They can be set using the following command (or use -r
to remove the description):
/warp setdescription [-r] [warp] [& encoded description]
So, on my warp “hello2”, I could run the command /warp setdescription hello2 "This is the warp location &awhere you will be greeted with a sunny disposition and a gentle wave of a hand!"
to get:
Console can now bypass exemption permissions
In main.conf
, a new option has been added: core.console-overrides-exemptions
. This defaults to true - the console now has permission to override a player’s specific exemption permissions (such as ban exemptions, etc.). If you would rather the console did not have these permissions (for those of you that might share the console), you can set this to false
to retain original behaviour.
Updates to staff chat
Staff chat is now consistent whether you use /sc
to toggle or /sc message
to send a one-off message. Server owners can now control whether staff chat is formatted like Nucleus chat or not by setting the option staff-chat.include-standard-chat-formatting
/tppos
to chunks!
/tppos
now has a -c
flag, which, if specified, will let you teleport to a specified chunk. Usage: /tppos -c <chunk co-ords>
.
Selecting ALL the selectors!
@a
will be pleased to know that you can now use standard Minecraft selectors in more Nucleus commands - including those that allowed you to use a nickname! However, I have removed individual permission support for each selector type - if you can target a player, you can use a selector (unless Sponge restricts it in some way, I’m not sure).
A side effect is that /lightning
and /kill
also accept the @e
selector.
Any Nucleus selectors you were using will no longer function if they look different to Minecraft’s selectors.
Presets (WorldArchetypes
) in /world create
By using the -p
flag, you can now specify a preset world type - to create a void world, you can now run /world create -p the_void <name>
, and to create a skylands world, /world create -p the_skylands <name>
. Other presets might be available.
/ban
and /seen
by UUID.
You can now ban a player, or look up their info, by using a UUID as the argument.
Sprucing up the usage/help window
Subcommands and command arguments are now separate. Subcommands can be clicked to suggest the command, or shift clicked to suggest the help command.
Any command that is simply a parent for subcommand (like /world
) will now display this usage instead of the old error message.
This separation will make its way to the docs site shortly.
Developers - API updates
Repository: ‘http://repo.drnaylor.co.uk/artifactory/list/minecraft’.
Dependency (1.10.2): ‘io.github.nucleuspowered:nucleus-api:0.23.0-S5.1’
Dependency (1.11.2): ‘io.github.nucleuspowered:nucleus-api:0.23.0-S6.0’
Javadocs: http://jd.nucleuspowered.org/
Please note that any interface ending in the word Service
is obtainable during GamePostInitializationEvent
(on orders of EARLY or later), or at any point past this.
Updated: NucleusMessageTokenService
(Text Token API)
I realised that it was somewhat unfair of me to relegate plugins to a “second class” token (like {{pl:nucleus:token}}
, so I’ve added a way to add what I call primary tokens. Now, you can register IDs with the NucleusMessageTokenService
. Register your token provider like normal, use registerPrimaryToken
to register your preferred alias! So, if you register token
for your plugin with id plugin
and identifier token
, {{token}}
becomes an alias for {{pl:plugin:token}}
.
You can also account for variables too. If you register {{token}}
, you will also recieve any token that starts with {{token|
- so {{token|data}}
will be translated to {{pl:plugin:token|data}}
, and your TokenParser
will recieve token|data
.
Updated: Warp API
Addition of Warp Category methods
New methods have been added to the NucleusWarpService
to allow developers to access the warp/warp category descriptions and display names.
Notice of Deprecation
The following previously marked Stable
methods on NucleusWarpService
have been deprecated. They will be removed in a future version of Nucleus.
Map<String, List<Warp>> getCategorisedWarps()
Map<String, List<Warp>> getCategorisedWarps(Predicate<Warp>)
Their replacements are as follows:
Map<WarpCategory, List<Warp>> getWarpsWithCategories()
Map<WarpCategory, List<Warp>> getWarpsWithCategories(Predicate<Warp>)
New: AFK API
The AFK API has two components
NucleusAFKService
This service allows plugins to probe information about a player’s AFK status, when their last activity was, and whether or not they can go AFK or be kicked.
AFK Events
There are events to monitor when a player goes AFK, returns from AFK, and when they are about to be kicked for being inactive for too long.
New: Server Shop API
The NucleusServerShopService
allows you to get the current buy and sell prices for items you specify.
Minor updates
- Added API:
NucleusNoIgnoreChannel
- any channel that implements this interface will not be processed by theignore
module - that is, these messages cannot be ignored. - Updated API:
NucleusNoFormatChannel
- there are now two functions that controls what thechat
module will do with the messages.
Minor Changes & Enhancements
- First join date is now viewable on
/seen
even if the player is offline. - Enable tab completion of player names in /bc, /sc, /me
- Add
others
permission to/tppos
- Added
namestyle
option for usernames, works in the same way aschatstyle
. - Make it more obvious when startup fails due to a config error.
- All negative weights for
/list
groups - Add ability to disable commands intended for specific implementations of Sponge.
- Allow tab completion of user names in
/me
,/bc
,/sc
.
Bugfixes
-
/me
and/sc
now let you use double quote marks in messages. - Prevent flying on world switch if the player does not have permission in the new world.
- If enabled, force first spawn location on tick after join - fixing issues where a player might not spawn in the expected place when they join for the first time.
-
/kickall
now actually supports-w
for whitelisting a server.
Known Issues
-
/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). This will work fine in 1.11.x.
- Sometimes, an incorrect custom prefix might be selected. Nucleus uses whatever the permission plugin hands back, check your inheritance with the permissions plugin.
Commit History
Downloads
Note that there are now two downloads for Sponge 5/1.10.2 servers. The mixinplugin is optional, but recommended, particularly for vanilla servers.
A new version has been released for Nucleus, it is available for download here.
Nucleus 0.23.0 is available for Sponge API 5.1 and Sponge API 6-SNAPSHOT. Documentation can be found at http://nucleuspowered.org/docs (command and permission references should already be up to date).
Note that there are now two builds for Nucleus. This is the build for 1.10.2
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: https://discord.gg/MC2mAuS
Important Changes & Notices
Changes to the internal data handlers
The big change for 0.23 is the way the data files are read and written. Server owners do not need to care about this, but please consider taking a backup of the /nucleus
data folder before updating.
Permission changes: other
becomes others
Some commands have permissions that allow you to act upon others. There was a horrible mix of *.other
and *.others
permissions - this has been rationalised and now, the standard suffix for targetting others is *.others
. This might break some permission setups, but this allows for better consistency going forward.
New Features
Descriptions for Warps and Warp Categories
Warp categories now have descriptions and display names, which also accept colour codes. They will be displayed on the /warps
list, and can be managed using the following commands.
-
/warp category list
- lists all categories -
/warp category setdisplayname [category] [& encoded name]
- sets a display name for a category. -
/warp category setdescription [category] [& encoded description]
- sets a description for a category. -
/warp category removedisplayname [category]
- removes the display name for a category. -
/warp category removedescription [category]
- removes the description for a category.
Running the following commands for my “test” category:
/warp category setdisplayname test "&4Test &7Category"
/warp category setdescription test "&bThis is a <est description"
gives me the following.
Warps can also have their own description, but for space reasons, these descriptions will be put into the hover that appears when you hover over a warp link. They can be set using the following command (or use -r
to remove the description):
/warp setdescription [-r] [warp] [& encoded description]
So, on my warp “hello2”, I could run the command /warp setdescription hello2 "This is the warp location &awhere you will be greeted with a sunny disposition and a gentle wave of a hand!"
to get:
Console can now bypass exemption permissions
In main.conf
, a new option has been added: core.console-overrides-exemptions
. This defaults to true - the console now has permission to override a player’s specific exemption permissions (such as ban exemptions, etc.). If you would rather the console did not have these permissions (for those of you that might share the console), you can set this to false
to retain original behaviour.
Updates to staff chat
Staff chat is now consistent whether you use /sc
to toggle or /sc message
to send a one-off message. Server owners can now control whether staff chat is formatted like Nucleus chat or not by setting the option staff-chat.include-standard-chat-formatting
/tppos
to chunks!
/tppos
now has a -c
flag, which, if specified, will let you teleport to a specified chunk. Usage: /tppos -c <chunk co-ords>
.
Selecting ALL the selectors!
@a
will be pleased to know that you can now use standard Minecraft selectors in more Nucleus commands - including those that allowed you to use a nickname! However, I have removed individual permission support for each selector type - if you can target a player, you can use a selector (unless Sponge restricts it in some way, I’m not sure).
A side effect is that /lightning
and /kill
also accept the @e
selector.
Any Nucleus selectors you were using will no longer function if they look different to Minecraft’s selectors.
Presets (WorldArchetypes
) in /world create
By using the -p
flag, you can now specify a preset world type - to create a void world, you can now run /world create -p the_void <name>
, and to create a skylands world, /world create -p the_skylands <name>
. Other presets might be available.
/ban
and /seen
by UUID.
You can now ban a player, or look up their info, by using a UUID as the argument.
Sprucing up the usage/help window
Subcommands and command arguments are now separate. Subcommands can be clicked to suggest the command, or shift clicked to suggest the help command.
Any command that is simply a parent for subcommand (like /world
) will now display this usage instead of the old error message.
This separation will make its way to the docs site shortly.
Developers - API updates
Repository: ‘http://repo.drnaylor.co.uk/artifactory/list/minecraft’.
Dependency (1.10.2): ‘io.github.nucleuspowered:nucleus-api:0.23.0-S5.1’
Dependency (1.11.2): ‘io.github.nucleuspowered:nucleus-api:0.23.0-S6.0’
Javadocs: http://jd.nucleuspowered.org/
Please note that any interface ending in the word Service
is obtainable during GamePostInitializationEvent
(on orders of EARLY or later), or at any point past this.
Updated: NucleusMessageTokenService
(Text Token API)
I realised that it was somewhat unfair of me to relegate plugins to a “second class” token (like {{pl:nucleus:token}}
, so I’ve added a way to add what I call primary tokens. Now, you can register IDs with the NucleusMessageTokenService
. Register your token provider like normal, use registerPrimaryToken
to register your preferred alias! So, if you register token
for your plugin with id plugin
and identifier token
, {{token}}
becomes an alias for {{pl:plugin:token}}
.
You can also account for variables too. If you register {{token}}
, you will also recieve any token that starts with {{token|
- so {{token|data}}
will be translated to {{pl:plugin:token|data}}
, and your TokenParser
will recieve token|data
.
Updated: Warp API
Addition of Warp Category methods
New methods have been added to the NucleusWarpService
to allow developers to access the warp/warp category descriptions and display names.
Notice of Deprecation
The following previously marked Stable
methods on NucleusWarpService
have been deprecated. They will be removed in a future version of Nucleus.
Map<String, List<Warp>> getCategorisedWarps()
Map<String, List<Warp>> getCategorisedWarps(Predicate<Warp>)
Their replacements are as follows:
Map<WarpCategory, List<Warp>> getWarpsWithCategories()
Map<WarpCategory, List<Warp>> getWarpsWithCategories(Predicate<Warp>)
New: AFK API
The AFK API has two components
NucleusAFKService
This service allows plugins to probe information about a player’s AFK status, when their last activity was, and whether or not they can go AFK or be kicked.
AFK Events
There are events to monitor when a player goes AFK, returns from AFK, and when they are about to be kicked for being inactive for too long.
New: Server Shop API
The NucleusServerShopService
allows you to get the current buy and sell prices for items you specify.
Minor updates
- Added API:
NucleusNoIgnoreChannel
- any channel that implements this interface will not be processed by theignore
module - that is, these messages cannot be ignored. - Updated API:
NucleusNoFormatChannel
- there are now two functions that controls what thechat
module will do with the messages.
Minor Changes & Enhancements
- First join date is now viewable on
/seen
even if the player is offline. - Enable tab completion of player names in /bc, /sc, /me
- Add
others
permission to/tppos
- Added
namestyle
option for usernames, works in the same way aschatstyle
. - Make it more obvious when startup fails due to a config error.
- All negative weights for
/list
groups - Add ability to disable commands intended for specific implementations of Sponge.
- Allow tab completion of user names in
/me
,/bc
,/sc
.
Bugfixes
-
/me
and/sc
now let you use double quote marks in messages. - Prevent flying on world switch if the player does not have permission in the new world.
- If enabled, force first spawn location on tick after join - fixing issues where a player might not spawn in the expected place when they join for the first time.
-
/kickall
now actually supports-w
for whitelisting a server.
Known Issues
-
/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). This will work fine in 1.11.x.
- Sometimes, an incorrect custom prefix might be selected. Nucleus uses whatever the permission plugin hands back, check your inheritance with the permissions plugin.
Commit History
Downloads
Note that there are now two downloads for Sponge 5/1.10.2 servers. The mixinplugin is optional, but recommended, particularly for vanilla servers.
A new version has been released for Nucleus, it is available for download here.
This is a bug fix release for Nucleus. For the new features in the 0.23.x series, please read the 0.23.0 release notes. No new features have been added, no APIs have been changed.
- Fixes an error with some message templates.