
Unexpected Spawn
Simple plugin to randomize player spawn point. Suitable for Normal Survival as well as Hardcore/Anarchy server!
- Загрузки
- 1K
- Подписчики
- 10
- Обновлён
- 13 октября 2023 г.
- Лицензия
- GPL-3.0-only
Опубликован 25 сентября 2023 г.

Simple plugin to randomize player spawn point. Suitable for Normal Survival as well as Hardcore/Anarchy server!
Installation:
Download the jar and put it in your plugins folder.
Features:
- Spawn player randomly.
- You can limit the random coordinates.
- You can set when the player should be spawned randomly:
- Don't respawn randomly if they have a bed/anchor.
- Respawn randomly only on new player/first-join.
- Respawn randomly on join. - Global and per-world configuration.
- World blacklist.
- Spawn block blacklist.
Commands:
- /unexpectedspawn - Shows version
- Alias: /uns
- Permission: unexpectedspawn.use
- /unexpectedspawn reload - Reload configuration settings.
- Alias: /uns reload
- Permission: unexpectedspawn.use.reload
- /unexpectedspawn randomtp - Performs the random teleport
- Alias: /uns rtp
- Permission: unexpectedspawn.use.randomtp
Permissions:
unexpectedspawn.use(Allows user to do /uns to view plugin info) Default : OPunexpectedspawn.use.reload(Allows user to do /uns reload) Default : OPunexpectedspawn.use.randomtp(Allows user to do /uns randomtp|rtp <args>) Default : OPunexpectedspawn.notify(Notifies user about their death location) Default : OPunexpectedspawn.bypass(Bypasses the random respawn or random join checks. Uses vanilla method) Default : OP
Configurations:
Settings are easy, check out the config.yml in plugins/UnexpectedSpawn folder.
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
Contact:
Suggestions? Bug? Or just need help?
Use the discussion thread or GitHub Issues or join the Discord Server.
Ченджлог
1.0.0Релиз1.20, 1.20.1, 1.20.2 · 13 октября 2023 г.
Added requested features, updated project structure, and cleaned some codes
[New Config] (No need to re-generate new config file)
- Only "version:x.y.z" is added in config for future debugging. (you can manually add it by copy-pasting from config in README.md file)
[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
Full Changelog: 0.3.1 -> 1.0.0
0.3.1Релиз1.20, 1.20.1, 1.20.2 · 25 сентября 2023 г.
Added requested features and updated paper API plus fixed some minor bugs.
[New Config] (Old config needs to be deleted to generate new one)
- added failure radius with customizable feature
( currently limited the numbers of tries to 5000 minimum before it adds failure radius // not customizable yet )
[New Feature]
- added invert spawn blacklist (as requested by haha44444)
( also this may cause an error if only 5-10 blocks are there in the 400x400 area of the spawn area and it will continue to look for that block infinitely. so to fix that added a failure radius and specified a point where it will use the failure radius in search. and also added an upper limit (10,000 tries) for random spawn searchers where the player will be teleported to the spawn point of the world. )
[Bug Fix/Update]
- fixed/removed the adventure native chat formatter as it wasn't used much. Added ChatColor
(legacy method. supposed to work in all Minecraft versions) - added more debuggers to the plugin so it's easier to debug when an error comes up.
Update 0.3.1 : https://github.com/DeathGOD7/unexpectedspawn-paper/pull/15
Full Changelog : https://github.com/DeathGOD7/unexpectedspawn-paper/compare/0.3.0...0.3.1
Комментарии
Загружаем…