Experimental Build - Alpha 1.20.2 (Client & Server Optimizations) + 1.21 Preview
Heyo everyone. Jayty here.
We’ve decided to try and up our experimental branch game. We’re eager to get builds to you in a rawer and in development state. We’re going to kick that off by releasing the first stages of v1.21.x right now!
I’ll start by explaining what today's experimental build release (v.120.2) includes followed by a preview of we want to achieve with 1.21.
How to get into experimental branch:
[h3]Experimental Patch Notes - Alpha v1.20.2 (Today's Experimental Build)[/h3]
Server
Client
Server
We’ve started tackling this version from boring to fun (in implementation terms). By that, I mean we’ve started with optimisations. I decided to dig straight into the server as they were using 3.5-4gb’s while idle!
File size on disk wasn’t too bad at around 1.2gb but I felt that could also be improved. CPU as a whole isn’t too much of a concern right now but a few slight improvements have been made.
I started by looking at the file stripping for the server. This is simply the easiest thing to tackle. There’s literally no need for textures, sounds, fonts, etc. on the server. Therefore I did another pass over our stripping system and managed to strip away a bunch more stuff.
Previously we had updated the unity engine from 2019 to 2021. That helped the client out of the box with a few performance bits. However, due to a limitation within the 2021 version, we weren’t able to build the server in 2021. I’ve spent some time getting this working for 1.21 and can happily say it’s working well. The biggest improvement here is that we’re able to take advantage of the dedicated server build target that Unity offers. This strips more engine code and such. Making for a more optimised server.
I’ve decided to ditch asset bundles for the server as there’s really no need for them (due to the stripped nature of the build). This simplifies things and allows us to use the LZ4HC compression method meaning faster and smaller builds.
Server Stats
v1.20 (Current Release)
v1.20.2 (Today's Experimental Build)
Client
Andre has been digging into client performance as a whole. He’s made a bunch of small optimisations. However the leading focus again has been RAM usage.
A big pass over most of the textures in the game has been done. Size reductions and optimisations have been done on mass to save up to 1-2gb of run time RAM (dependent on location). Our hope is to tip the scales overall and make it easier for players to run both the client and server without bottlenecks.
We started developing STN years before Unity had built in nested prefabs or prefab variants. Very early on we developed a tool to aid level design. The downside of the system is that each ‘design item' had a script and transform parent. These should have mostly been stripped however a bunch were left over as remnants in the active game scenes. Andre has created a tool that strips these away. This removes thousands of empty/unneeded items. Reducing scene size and hopefully frame dips as you move around the world.
[h2]What's In Store for 1.21.x[/h2]
[h3]Performance[/h3]
Server and client have both needed some love for a while. Our primary concern is RAM usage on both the client and server. With a self hosted server, the combined RAM usage of the game and server were creeping to uncomfortable levels.
[h3]Server Configuration[/h3]
We’ve always billed the game as a ‘sandbox' but really, it’s not been all that sandboxie. This has always been down to our need to get the core dev out of the way. We’re in a groove now and with the relays implemented in 1.20. We feel it’s time to start opening things up to the community more and more.
We’re going to introduce a bunch of new config options. Enough that a massive selection of game play scenarios will be possible. Here’s our rough list for version 1.21. We hope to see you on the experimental branch helping out with testing.
[h3]Here's our list of new options (So far):[/h3]
Custom Spawn Location
[h3]Server Config Options needed[/h3]
[h3]New Config Option Ideas:[/h3]
Zombies
Hordes
Lore
Time & Weather
Multiplayer
Player
Other
Loot
[h3]Scenarios [/h3]
This is going to be the meat of 1.21. We’re going to implement a wrapper for all the config options that will allow us and you to create awesome gameplay scenarios.
Scenarios Concept
[h3] Scenario Ideas for 1.21[/h3]
Realism
The world has fallen to ruin. It’s 3 months post infections and there’s still a lot of loot around. Zombies are becoming slower but there’s still a fair amount of fresh ones. Managing stats and preparing for the inevitable scenario of running out of world loot is key to survival. Hordes randomly stumble on your position.
Fresh Infection
The infection has just happened. Loot is plentiful but so are the dead. Zombies are fresh, fast and hungry for brains.
Post Infection (1 year)
There’s not much loot around to scavenge now. Zombies have slowed down but are still around in high numbers. It’s essential to make sure you don’t get caught out by them. Their numbers are deadly.
Night of the Living Dead
A disparate group of individuals takes refuge in an abandoned house when corpses begin to leave the graveyard in search of fresh human bodies to devour. The pragmatic Ben (Duane Jones) does his best to control the situation, but when the reanimated bodies surround the house, the other survivors begin to panic. As any semblance of order within the group begins to dissipate, the zombies start to find ways inside -- and one by one, the living humans become the prey of the deceased ones. ← Use the actual synopsis of the movie!
7 Days to Try (7d2T)
Yup, we did it. You’ve got seven days to prepare for the mega horde.
Barely Alive
We’re also after your contributions and ideas so please submit them here.
Flaregun (Maybe)
It’s functionally very similar to the crossbow right… It’d be crazy not to add this?!??! We’re going to low key start the implementation of this. It might make 1.21 and if not, we’ll squeeze it in before Christmas. Maybe it could be part of the Winter event.
[h3]Links[/h3]
Discord: https://discord.gg/survivethenights
Patreon: https://patreon.com/a2zinteractive
Changelog: https://changelog.survivethenights.net
Twitter: https://twitter.com/STNgame
Facebook: https://www.facebook.com/STNgame
YouTube: https://www.youtube.com/a2zinteractive
Website: https://www.survivethenights.net
Merch: https://teespring.com/stores/a2zinteractive
We’ve decided to try and up our experimental branch game. We’re eager to get builds to you in a rawer and in development state. We’re going to kick that off by releasing the first stages of v1.21.x right now!
I’ll start by explaining what today's experimental build release (v.120.2) includes followed by a preview of we want to achieve with 1.21.
How to get into experimental branch:
- Open Steam and go to your games library.
- Right click on STN and select "Properties"
- Navigate to the "Betas" tab and select "experimental" in the drop down menu.
- Close the properties window.
- You will find a single experimental server titled EXPERIMENTAL_SERVER. Join this for some testing.
[h3]Experimental Patch Notes - Alpha v1.20.2 (Today's Experimental Build)[/h3]
Server
- Servers now built using unity 2021 to match client.
- Reduction in server size by stripping files that are not required.
- Ram usage reduction for the server. Estimated 1gb idle ram usage reduction.
- Faster server load times.
Client
- Optimisation pass over in-game textures to lower RAM usage.
- Stripping of unused game scene objects to reduce scene size and loading performance.
Server
We’ve started tackling this version from boring to fun (in implementation terms). By that, I mean we’ve started with optimisations. I decided to dig straight into the server as they were using 3.5-4gb’s while idle!
File size on disk wasn’t too bad at around 1.2gb but I felt that could also be improved. CPU as a whole isn’t too much of a concern right now but a few slight improvements have been made.
I started by looking at the file stripping for the server. This is simply the easiest thing to tackle. There’s literally no need for textures, sounds, fonts, etc. on the server. Therefore I did another pass over our stripping system and managed to strip away a bunch more stuff.
Previously we had updated the unity engine from 2019 to 2021. That helped the client out of the box with a few performance bits. However, due to a limitation within the 2021 version, we weren’t able to build the server in 2021. I’ve spent some time getting this working for 1.21 and can happily say it’s working well. The biggest improvement here is that we’re able to take advantage of the dedicated server build target that Unity offers. This strips more engine code and such. Making for a more optimised server.
I’ve decided to ditch asset bundles for the server as there’s really no need for them (due to the stripped nature of the build). This simplifies things and allows us to use the LZ4HC compression method meaning faster and smaller builds.
Server Stats
v1.20 (Current Release)
- Size on disk: 1.2gb
- Idle RAM: 3.5-4gb
- Startup Time: 25s.
v1.20.2 (Today's Experimental Build)
- Size on disk: 582mb
- idle RAM: 2-2.5gb
- Startup Time: 10s
Client
Andre has been digging into client performance as a whole. He’s made a bunch of small optimisations. However the leading focus again has been RAM usage.
A big pass over most of the textures in the game has been done. Size reductions and optimisations have been done on mass to save up to 1-2gb of run time RAM (dependent on location). Our hope is to tip the scales overall and make it easier for players to run both the client and server without bottlenecks.
We started developing STN years before Unity had built in nested prefabs or prefab variants. Very early on we developed a tool to aid level design. The downside of the system is that each ‘design item' had a script and transform parent. These should have mostly been stripped however a bunch were left over as remnants in the active game scenes. Andre has created a tool that strips these away. This removes thousands of empty/unneeded items. Reducing scene size and hopefully frame dips as you move around the world.
[h2]What's In Store for 1.21.x[/h2]
[h3]Performance[/h3]
Server and client have both needed some love for a while. Our primary concern is RAM usage on both the client and server. With a self hosted server, the combined RAM usage of the game and server were creeping to uncomfortable levels.
[h3]Server Configuration[/h3]
We’ve always billed the game as a ‘sandbox' but really, it’s not been all that sandboxie. This has always been down to our need to get the core dev out of the way. We’re in a groove now and with the relays implemented in 1.20. We feel it’s time to start opening things up to the community more and more.
We’re going to introduce a bunch of new config options. Enough that a massive selection of game play scenarios will be possible. Here’s our rough list for version 1.21. We hope to see you on the experimental branch helping out with testing.
[h3]Here's our list of new options (So far):[/h3]
Custom Spawn Location
- Config option for choosing different spawn locations (Campsites/Random/houses/Custom)
- Ability to choose whether custom locations are used.
- System for setting custom spawnpoints.
- System for using custom spawnpoint if select config option is chosen.
- Add rotation to TP presets
[h3]Server Config Options needed[/h3]
[h3]New Config Option Ideas:[/h3]
Zombies
- Zombie runner move speed (Slow-Medium-Fast). Medium keeps up with player.
- Zombie runner frequency (None-Low-Medium-High)
- Zombie intelligence (Low-Medium-High-Hardcore) Affects: Annoyance/Vision range/Noise range.
- Day zombies (Off, Indoors Only, Everywhere)
- Zombie fence climbing (Off - On)
- Allow logging off near zombies (Off - On)
Hordes
- Zombie distribution (Urban focus)
- Horde frequency (Off - Random - 1 - 2 - 3 - 4 -5 -6 - 7 - 14 - 30)
- Allow horde avoiding (Disabled-Hiding-Zombie Blood)
- Synchronize Horde Start (Off - On)
- Horde Starting Difficulty (Player Level / 1 - 20)
Lore
- New life screen message (String)
Time & Weather
- Start month (Jan-Feb-Mar - etc.)
- Start hour (0 - 23)
Multiplayer
- Self Defense System (Off - On)
- Mental Health Penalties (Off - Low - Medium - High)
- PVP Damage Reduction (None - Low - Medium - High)
Player
- Respawn: (Sleeping Bag/Near Death/Random)
- Perma-death (Off - On (Delete World))
- Items on Death (Keep - Destroy - Backpack Drop)
- Player Nutrition Difficulty (Off, Low, Medium, High)
- Starting Overall Health (-3-10) 0 = default
Other
- Allow Item Ownership (Off - On) Fortification/Trap Ownership
- Fortification Strength (Low - Medium - High)
- Food spoilage (Off - On)
- Water shutoff after time (Off - 1)
- Electricity shutoff after time (Always Off - After 1 day - After 2 days - Always On)
- Water shutoff after time (Always Off - After 1 day - After 2 days - Always On)
- House Alarms (Always Off - After 1 day - After 2 days - Always On)
- Night Darkness (No Moon - - Always Moon - Cheat mode)
- Food Grow Rate (Realistic - low - Medium - High)
Loot
- Lock Sharing (Off - On) On = Anyone can open locks without a code
- Loot Respawning (Off - On)
- Loot Respawn Frequency (Slow - Medium - Fast)
- Loot type in containers (Off - Food only/Everything) or text field [1000-1005]
- Food container spawns (Off - On)
[h3]Scenarios [/h3]
This is going to be the meat of 1.21. We’re going to implement a wrapper for all the config options that will allow us and you to create awesome gameplay scenarios.

[h3] Scenario Ideas for 1.21[/h3]
Realism
The world has fallen to ruin. It’s 3 months post infections and there’s still a lot of loot around. Zombies are becoming slower but there’s still a fair amount of fresh ones. Managing stats and preparing for the inevitable scenario of running out of world loot is key to survival. Hordes randomly stumble on your position.
- Single loot spawn (On server startup)
- Mostly Walkers
- Hard Player nutrition
- Random Hordes
Fresh Infection
The infection has just happened. Loot is plentiful but so are the dead. Zombies are fresh, fast and hungry for brains.
- Fast Zombies
- High Loot
- Higher Starting Stats
Post Infection (1 year)
There’s not much loot around to scavenge now. Zombies have slowed down but are still around in high numbers. It’s essential to make sure you don’t get caught out by them. Their numbers are deadly.
- Slow zombies (Mostly walkers)
- Low loot
- Low starting stats.
Night of the Living Dead
A disparate group of individuals takes refuge in an abandoned house when corpses begin to leave the graveyard in search of fresh human bodies to devour. The pragmatic Ben (Duane Jones) does his best to control the situation, but when the reanimated bodies surround the house, the other survivors begin to panic. As any semblance of order within the group begins to dissipate, the zombies start to find ways inside -- and one by one, the living humans become the prey of the deceased ones. ← Use the actual synopsis of the movie!
- Start at a farm house
- Partially prepared area
- 2 Hour Day
- Single Hard horde comes.
7 Days to Try (7d2T)
Yup, we did it. You’ve got seven days to prepare for the mega horde.
Barely Alive
- -3 Starting Overall Health
We’re also after your contributions and ideas so please submit them here.
Flaregun (Maybe)
It’s functionally very similar to the crossbow right… It’d be crazy not to add this?!??! We’re going to low key start the implementation of this. It might make 1.21 and if not, we’ll squeeze it in before Christmas. Maybe it could be part of the Winter event.
[h3]Links[/h3]
Discord: https://discord.gg/survivethenights
Patreon: https://patreon.com/a2zinteractive
Changelog: https://changelog.survivethenights.net
Twitter: https://twitter.com/STNgame
Facebook: https://www.facebook.com/STNgame
YouTube: https://www.youtube.com/a2zinteractive
Website: https://www.survivethenights.net
Merch: https://teespring.com/stores/a2zinteractive