Adding custom spawnpoints to Project Zomboid is possible by creating your own lua files. This is a complex process and will take some time to do. With this guide you'll be able to add random spawnpoints or specify different locations for players to spawn. You can also select specific spawnpoints based on the player's occupation.
1. Open the File Manager

2. Navigate to /server-data/Server/pzserver_spawnpoints.lua
4. Right click the file and click Edit
5. Spawn points are created per profession.
function SpawnPoints()
return {
unemployed = {
{ posX = 12067, posY = 6801, posZ = 0 }
}
}
end
6. To get coordinates outside of the game you can go to the Project Zomboid Map Project and find a location you want your players to spawn at

7. Click on Map Coordinates to copy them. Replace the X, Y, Z with the coordinates from the map, and the Z will be the floor to spawn on with 0 being the ground.
8. If you wish to add multiple spawnpoints for one profession, you can add more like so:
function SpawnPoints()
return {
unemployed = {
{ posX = 12067, posY = 6801, posZ = 0 },
{ posX = 10770, posY = 10271, posZ = 0 }
}
}
end
9. If you want to add multiple spawnpoints for multiple professions, you can add more like so:
function SpawnPoints()
return {
unemployed = {
{ posX = 12067, posY = 6801, posZ = 0 },
{ posX = 10770, posY = 10271, posZ = 0 }
},
blacksmith = {
{ posX = 12067, posY = 6801, posZ = 0 },
{ posX = 10770, posY = 10271, posZ = 0 }
}
}
end