This is a Paper plugin!
Simple plugin to randomize any player spawn point. Suitable for Hardcore / Anarchy server, or you just want people to be scattered in you server world.
(Check below for more download mirror)
[New Feature]
- Added 2 more permissions nodes ("unexpectedspawn.use.reload" and "unexpectedspawn.use.randomtp")
- Added permission to default command in plugin.yml so normal players won't access tab-complete commands if they don't have the required permission
- Added 2 more commands "/uns help <subcommand>" and "/uns randomtp <args>"
[Bug Fix/Update]
- Firstly, changed from the original package name to the new one since Shivelight domain was down. ("id.shivelight.paper.unexpectedspawn" is now "com.github.deathgod7.unexpectedspawn")
- Secondly, rewrote the codes to be clean and nice... (Moved a bunch of stuff from events class to utils class)
- Thirdly, bumped the version from 0.3.1 => 1.0.0 (The first major version release as it's stable enough) and we will be following the SemVer version style
- Migrated the Reload.java class to new MainCommand.java and added CommandHandler.java to make it easy to add more commands in the future if needed
- Migrated the Spawn.java class to new EventHandler.java as a part of making it "nice"
- Random respawn in Nether works correctly for both the respawn/join event and the rtp command now.
- And some humor in debug logs as well as minor license info changes
[Note] Only "version:x.y.z" is added in config. So no need to re-generate config file. (you can manually add it by copy-pasting from below)
If you still have issues, please send it in Issues tab rather than sending it in plugin page review.
Command | Alias | Description | Permission |
---|---|---|---|
/unexpectedspawn | /uns | Shows version | unexpectedspawn.use |
/unexpectedspawn reload | /uns reload | Reload configuration | unexpectedspawn.use.reload |
/unexpectedspawn randomtp | /uns rtp | Performs the random teleport | unexpectedspawn.use.randomtp |
-
unexpectedspawn.use
(Allows user to do /uns to view plugin info) Default : OP -
unexpectedspawn.use.reload
(Allows user to do /uns reload) Default : OP -
unexpectedspawn.use.randomtp
(Allows user to do /uns randomtp|rtp <args>) Default : OP -
unexpectedspawn.notify
(Notifies user about their death location) Default : OP -
unexpectedspawn.bypass
(Bypasses the random respawn or random join checks. Uses vanilla method) Default : OP
config.yml
# UnexpectedSpawn
# Authors : DeathGOD7, Shivelight
version: '1.0.0'
global:
# Random respawn area for global settings.
x-max: 399
x-min: -399
z-max: 399
z-min: -399
# Fail radius expansion if normal x and z area failed to obtain suitable block or location
fail-radius: 500
# Sets the global respawn world unless set in custom config worlds.
respawn-world: 'world'
# Do you want to have random respawn than normal world respawn? By default it is enabled in all worlds. If you want to
# disable it in specific world, then add that world name in below 'blacklisted-worlds'.
random-respawn:
# Do you want to have random respawn after user dies? If set to false then user will respawn in world spawnpoint.
# or bed/respawn anchor spawnpoint.
on-death: true
# Checks if bed respawn is taken priority. If set to false then it will force user to random respawn
# even if they have bed respawn point when they die.
bed-respawn-enabled: true
# Do you want to have random spawn when user joins for first time to prevent grief in spawn chunks? If set to false
# then user will spawn in default world spawnpoint.
on-first-join: false
# Enable this if you want to have random respawn each time user joins the server. It's best for Anarchy type server.
always-on-join: false
# Invert the blacklist to whitelist
invert-block-blacklist: false
# Specify any block where you don't want user to be teleported. You don't them to drown in lava/water or land on
# someone else campfire, no?
spawn-block-blacklist:
- LAVA
- WATER
- CACTUS
- FIRE
- MAGMA_BLOCK
- SWEET_BERRY_BUSH
- CAMPFIRE
# If no worlds are specified, it will use global/default variables. Default Config (worlds: [])
# If you have added any world below, it will override the global settings.
# If it got missing parameters that is in global settings like "spawn-block-blacklist"
# but not in worlds world parameters then it will use global parameters.
# All the features are same as global ones.
# Please change "survival" to the name of your world and remove [] if you want to add worlds.
worlds: []
# survival:
# x-max: 500
# x-min: -500
# z-max: 500
# z-min: -500
# fail-radius: 1000
# respawn-world: ''
# random-respawn:
# on-death: true
# bed-respawn-enabled: true
# on-first-join: false
# always-on-join: false
# If you have any worlds here , then it will be excluded from having random spawn
# Even if you have set custom settings in above settings and you add that world to
# blacklist, it will be excluded. Default :[]
blacklisted-worlds: []
# - bedwars
# - creative
debug : false
- DeathGOD7
- Shivelight
- Roshanxy