This mod allows map makers / server owners to change the respawn point & dimension of dimensions.
To use this mod you place a file called perfectspawn.json in the main minecraft / server directory or (in a singleplayer environment) in the main directory of a save. The file has to have this basic structure:
In the general section there is currently only one property you can set which is "initialSpawnDimension". This sets the dimension where a player who has never logged in before spawns initially.
This config would cause players to initially spawn in the nether when first joining the game.
The rules array can contain multiple rules which control the settings for different dimensions.
Each rule has these properties:
- appliesTo: An array containing either dimension ids / names of dimensions types / full class names of world providers. This controls what dimensions this rule is applied to. "*" can be used as a special element of appliesTo which will apply this rule to all dimensions.
- canRespawnHere: Whether players can respawn in the dimensions this rule applies to.
- canSleepHere: Whether players can sleep in the dimensions this rule applies to. (If canRespawnHere is set to false this has no effect). This also allows sleeping in dimensions where you generally can't sleep (Like the Nether / End).
- spawnPoint: The position at which players will spawn in this dimension.
- respawnDimension: The dimension players will respawn in when dying in this dimension (If canRespawnHere is set to false)
Rules that come later in the rules array override values of rules that come earlier.
Here are some examples:
This changes the initial spawn dimension & the respawn dimension of all dimensions to the nether. It also moves the spawn point of the nether to "x: 5, y: 84, z: 10" and allows players to change their spawn point in the nether by sleeping.
With this players will initially spawn in the end at "x: 23, y: 40, z: 10". Once they die they will respawn in the overworld at "x: 9, y: 100, z: 0". When they die there they will respawn in the nether at "x: 500, y: 40, z: -500". Dying in the nether will just respawn them back at "x: 500, y: 40, z: -500". It isn't possible to sleep in the nether / end / overworld.
Please post about bugs on the github issue tracker and not on the curseforge post. Also make sure your json is valid before creating a bug report.
Info for older versions ( < 1.12.2):
This mod allows map makers / server owners to set the exact spawn point of a world. You can also specify the start dimension.
To use this mod you place a file called PerfectSpawn.json in the main minecraft / server directory or (in a singleplayer environment) in the main directory of a save. The file has to have the following format:
This config file sets the spawn point to X:50,Y:70,Z:60 in the end, enables beds, spawn protection and forces an exact spawn.
If you create a file you always have to specify spawnX,spawnY,spawnZ and spawnDimension. exactSpawn, spawnProtection and forceBed are optional and default to true.
- "exactSpawn" : Specifys whether players will respawn exactly at the specified spawn point.
- "forceBed": Specifys whether PerfectSpawn should force beds to be possible in the spawnDimension
- "spawnProtection" : Allows Spawn Protection in changed spawn dimensions.
A PerfectSpawn.json in a world directory overrides the one in the main dictionary.
You can use the command "/ps reload" to reload all config files and apply them instantly.
This mod class transforms all WorldProviders it finds, if you get a crash that only happens while using PerfectSpawn come to me first!
Instead of creating the json files manually you can also use the /ps set command to change the spawn ingame.
If you wanna add Perfect Spawn to a modpack / ship it with a map feel free to do so.