Real in-game output from Dans-Spawn-System 2.2.0 on a local throwaway Paper 1.21.11 test server: the commands were typed by a scripted bot client, and the chat it received is drawn as Minecraft-style chat (typed commands appear in the input bars; grey lines say what happened between commands).
Dans-Spawn-System is a Minecraft plugin that allows players to use signs to select a custom spawn point in their world. Server operators place [Spawn] signs with coordinates, and players right-click those signs to set their personal respawn location.
This plugin is supported on the Minecraft versions listed in minecraft-versions.json: currently 1.19.4, 1.21.11, 26.2 and 26.3 (Spigot and its forks). Every stable release is booted on a real server of each of these versions before it is published, and every build checks that the plugin only uses Bukkit API that exists on all of them. Other versions from 1.19.4 onwards are expected to work but are not tested. To support another version, add it to the file: both checks pick it up.
- Download the plugin from SpigotMC.
- Place the jar in the
pluginsfolder of your server. - Restart your server.
- User Guide – Getting started and common scenarios
- Commands Reference – Complete list of all commands
- Configuration Guide – Detailed configuration options
You can find the support Discord server here.
Please fill out a bug report here.
This project has a JUnit 5 unit test suite (with Mockito for Bukkit collaborators) under src/test/java/. To run it:
Linux:
mvn test
Windows:
mvn.cmd test
To run the tests and build the plugin jar in one step, use mvn clean package instead — the tests run as part of that build.
If you see BUILD SUCCESS, the project compiled and the tests passed. The suite covers logic that can be exercised without a running server, including each event listener's handling of a mocked event; for what only a live Bukkit runtime shows (events actually reaching the listeners, teleports and other world interaction, spawns surviving a restart), follow the steps in the Development section below to validate on a test server.
- Build the plugin:
mvn clean package - Copy the resulting jar from
target/into your server'splugins/folder (excludeoriginal-*.jar). - Start your test server and verify the plugin loads without errors.
| Name | Main Contributions |
|---|---|
| DanTheTechMan | Original author and lead developer |
This project is licensed under the GNU General Public License v3.0 (GPL-3.0).
You are free to use, modify, and distribute this software, provided that:
- Source code is made available under the same license when distributed.
- Changes are documented and attributed.
- No additional restrictions are applied.
See the LICENSE file for the full text of the GPL-3.0 license.
This project is in active development.
You can view the bStats page for the plugin here.
Usage reporting is on by default: each time the plugin is enabled, and each time one of its commands is run, it sends its name, its version and the command's name to the author's trace server at https://trace.danielstephenson.dev, so it is known which plugins are actually in use. Nothing about players, worlds or IP addresses is sent, and nothing typed after a command is.
Each event also carries a random server ID (the server-id line in plugins/trace/config.yml) so
servers can be counted rather than events. It identifies no person, account or IP address; delete
the line to get a new one.
To turn it off:
- for this plugin: set
usage-reporting.enabled: falseinplugins/DansSpawnSystem/config.yml - for every plugin on the server that reports to trace: set
enabled: falseinplugins/trace/config.yml(written on first start) - for the whole server process: set the environment variable
TRACE_USAGE_REPORTING=off(orDO_NOT_TRACK=1)
The plugin says on every start whether reporting is on. Details: https://danielstephenson.dev/usage-reporting
![Right-clicking a [Spawn] sign sets the player's spawn](/Dans-Plugins/Dans-Spawn-System/raw/master/docs/images/spawn-sign.png)