Apr 14, 2022
Project Zomboid - nasKo


Hello! The last couple of weeks has had an unusually high number of absentees, by coincidental combinations of gaming conference attendees, long-planned family visits, and even an unforeseen emergency hospital stay (that turned out fine, don’t worry) meaning we’ve been running on a somewhat diminished team of late, but that should be sorted out by next week and we’ll be running at full steam again! – so unfortunately, there aren’t any sexy vids or pics to show off. However, still we have some super interesting stuff to talk about! However, it’ll likely take the form of ‘lotsa text’ so prepare yourself for that!
 
41.69
First, 41.69 (nice) build is still in progress, we’re testing a bunch of changes at the moment and are eager to get it out there, but are still weighing up the cost of disrupting the MP servers with the benefit of the goodies within, and making the call on when we’ll push to unstable and start the release process. We’ll let you know when we know more.

Here’s the changelist of 41.69 thus far!
 
https://pastebin.com/ZhRhKVZi


NPC Narratives
For the blog, we figured a good way to give people something real tasty to sink their teeth into regardless of the lack of fancy vids or pics, would be to show off the text results of our future Narrative NPC system that we discussed a few weeks back planned for Build 43.
 
As we detailed in our first NPC ‘meta’ system explanation, we have a powerful narrative event system that can be used to add context-driven ‘storylets’ together into a somewhat convincing narrative for NPCs when they are away from the streamed-in world. These would define the goals of the NPCs, as well as evolve their situation so that when the player runs into them they have a convincing backstory, or events can transpire to affect those groups when they are not around for the player to witness. They will also drive events with npcs while the player IS present, leading to interesting generated story events for the player to interact with.
 
These events set flags on characters, move their virtual presence along road networks and between houses of which all the rooms on the entire map are accessible even when the tiles themselves have not been streamed in. We can add extra data and tags that change the NPCs states and allow them to experience simplified narrative events that will branch and trigger randomly, and each of these events can have numerous outcomes of which we can attach a line of dialogue recounting the event later, so the characters will be able to sit around a campfire and let the rest know their story, or group members can recount the events of an eventful trip the player wasn’t part of, or what transpired at the safehouse while the player was away.
 
Context-sensitive text scripting is used to modify these lines of dialogue to fit the situation. For example, a tag for a character’s name in the dialogue can be substituted with ‘my mother-in-law, X’ or ‘my nephew, Y’ tracking the relationship between the two characters, or even between the character being spoken about and a third character (‘X’s brother, Y’). Other things such as a town location can be substituted where necessary, and there can be variant lines that are picked based on the characters, their flags, or other environmental conditions. Or just raw RNG, to mix things up a bit.
 
Pat_Bren has been busy coming up with a whole metric ton of varied events and mini-narratives, and Lemmy has been integrating these into the event system. There’s a lot more to add yet, but it's starting to yield some cool results.
 
Here’s a few narrative outputs. Full disclosure: some massaging of the results has taken place here, it’s somewhat curated as the system is still capable of some very odd results and the pool is not yet large enough to avoid ‘arrow to the knee’ situations, if we just threw in the first 10 results it’d probably not be so impressive at this stage, so we’ve picked ones with the least overlap — though you’ll likely notice a few repeated statements (in most cases this also demonstrates the variants or alternate paths we have there to mix it up) – our goal is, ultimately, with progressive builds, to widen the library of narrative events and lines to the point where each story feels completely unique (easier to do without voiced dialogue, but we apologise profusely to our translators). 
 
Please be aware these are still work in progress, and we still need to do some work to make these flow as naturally as possible as if recounted later to another character — rather than as a straight log of events that can seem a bit terse and unnatural, so none of the text is remotely final and we still need to figure out a good balance of information that would feel natural to share to a third party potentially weeks later…

(It’s very important to note that, at present, these narratives are limited mainly to the meta, and while we talk about how they will impact characters the player witnesses, there is still a lot of work to do in that department. This is all very super work-in-progress, and while a metric ton of work has been done across the NPC codebase, it's still a big job to piece it all together to work as one.)

I knew the electricity would be cut off.
We stocked up and ate the fresh food first, then we lived on cans.
We already had a generator and we used it for a while, until it caught fire…
The flames spread quickly.
Juan got the extinguisher, but it wasn’t enough.
The smoke got to Keith, but we were able to drag him out of there.
The whole house was on fire, and we lost everything.
I thought the Murphys might help us out, but they wouldn’t let us inside, they said it was too dangerous…
We were so desperate, we moved into a nearby house.
We pushed a bookcase in front of the back door.
Broke apart a table and used the pieces to secure the windows…
Then we just held out there as long as we could…


There were four of us. We were holding up in West Point. It was crazy!
My brother-in-law, Jason, just abandoned us, left us to fend for ourselves. We never saw him again.
We tried to find a store that was safe. We had to go out and look for anything we could get our hands on…
But those things were everywhere. We couldn’t get anything… There were too many of those things!
We had nothing, food had run out.
Then a couple of days later, someone started banging on one of the windows. We had no idea who it was!
It was Jim, a neighbor of ours, wanting to come inside.
But what if he was sick? We couldn’t risk it.
I hope he made it…

Those things broke through the barricades and poured inside.
I did the best I could, but there were just too many!
We panicked and ran…lost Lang and Dillon, I don’t know if they got away, or…
I think they got away. They’ve got to have, right?

Just before the shit hit the fan, my sister Annie got sick.
We tried to take her to the hospital… but the highway was blocked with traffic.
By that time we realised it was too late, the car was blocked in, there was no way out.
We had to abandon the car and make our way on foot.
Annie was real bad, her fever was getting worse. Bryan, her husband, had to carry her.
There was nothing I could do for her… I did what I could, but it just wasn’t enough.
We didn’t know. We had no idea what would happen!
When she turned, she bit Bryan on the back of the neck.
We left them both out there, God help us. We left them both walking around out there!

I tried to get home to my family. When I got home they’d already bugged out, they left a note saying they’d gone up to Riverside to my inlaws.
Why didn’t they wait?
I know I’ve got to get over there, before…

There was little I could do for him.. I did the best I could, but we didn’t have enough supplies.
He knew what was going to happen.
He asked me for pills and locked himself in the bathroom
We buried him out back… that is, after we…

Just before the shit hit the fan, Joe got sick.
We tried to take him to the hospital, but the streets were clogged with traffic, so we came back.
Joe said he didn’t want to become like those things…
He asked me for a rope and barricaded himself in, but he still came back…
The barricades weren’t strong enough.
He escaped and bit Sergei.
I had to put him down too.
I’ll never be able to forgive myself.
It’s like a nightmare…

Alanna, my wife, had a fever that morning, but she hadn’t been bitten.
In less than an hour she kept getting worse until she turned and tried to bite me.
I had to… oh God… Her body’s still there…
I tried to get to my brother Jack’s house.
Those things started chasing me but I stole a car and got away…
I had to keep on the move to get away from the infected.
Then I hit someone with my car. There was no time to brake…
The man wasn’t badly injured, thank God.
He introduced himself as Kevin Jones, a plumber from Rosewood.
He was alone, I think he’d lost someone.
When we finally reached Jack’s house, he and his wife Carol were okay, thank God.
They couldn’t believe we weren’t infected.
That was the worst day of my life. At least, up till then…


Let’s pick one of them and break down how it works:
Just before the shit hit the fan, my sister Annie got sick.

We tried to take her to the hospital… but the highway was blocked with traffic.

By that time we realised it was too late, the car was blocked in, there was no way out. We had to abandon the car and make our way on foot.

Annie was real bad, her fever was getting worse. Bryan, her husband, had to carry her.

There was nothing I could do for her… I did what I could, but it just wasn’t enough.

We didn’t know. We had no idea what would happen!

When she turned, she bit Bryan on the back of the neck.

We left them both out there, God help us. We left them both walking around out there!
As is probably clear, this is all too self-consistent to be completely random. This isn’t just a bunch of random disconnected events triggering one after another, but rather a mini-narrative that is comprised of several related events, each of which has various ways they can pan out and also conditions that can lead to them triggering in the first place, leading to a whole host of other outcomes that will affect the group in different ways.
 
To show this, you’ll see another branching version of this same narrative in the list of outputs above, starting with ‘Just before the shit hit the fan, Joe got sick’. Though it sharing the specific phrase ‘shit hit the fan’ text was a coincidence, it could have equally started with ‘Just before things got really bad’ or ‘Before all of this’.
 
Narratives have natural endpoints that can end that narrative, or instead, they potentially lead naturally into another if relevant. In other cases they can set flags on characters or groups that will lead to other events, or even other narratives, having a chance of triggering on them in the future. This is the way the narratives can ultimately serve as larger building blocks to make longer character stories that flow into each other convincingly.
 

So back to this demo narrative above:
 

“Just before the shit hit the fan, my sister Annie got sick.”
 

As detailed before, we generate the starting NPC groups from various families, with some other elements to mix things up. In the first event of this narrative, we pick an appropriate member of the household to ‘get sick’. This will set the first constant within this narrative that will be referenced and used throughout.
 

Then the second event in the narrative is thus…
 

“We tried to take her to the hospital… but the highway was blocked with traffic.”
 

This event will trigger the characters of the group (however it was generated) including the unfortunate Annie, to set a goal to travel to the Louisville hospital. Wherever they are in the world, a path will be generated along roads to that location. Even though the characters, nor a vehicle, are streamed into the world, and they exist virtually in the ‘meta’, we can randomly assign them an appropriate car and start them moving at approximately car speed along the roads en route to Louisville.
 

If the player were to cross paths with this virtual ‘radar blip’ of these characters, it would spawn in the car with them inside, moving in the correct direction at the appropriate speed, and the more direct vehicle controlling AI would take over with the same destination in mind.

This event can play out in various ways, hitting the military blockade, crashing the car, getting stuck amongst a group of zombies.
 

Getting stuck in traffic has various outcomes, including for example a car-jacking attempt, or the person being carried turning in the car. Some of these may lead to more generic events or narratives or may continue the main mini-narrative to a further conclusion.

Assuming all this carries on within the virtual meta world, they will make their way until they hit one of the traffic jam zones on the highway, which in this case causes it to trigger the next event in the narrative.
 

“By that time we realised it was too late, the car was blocked in, there was no way out. We had to abandon the car and make our way on foot.”
 

Alternatively, it could be they managed to drive back home or get through the jam and onto the next problem. But, in this case, the narrative branches to this outcome. We flag they have lost their car, and are now on foot. 
 

We set their goal to still be heading toward Louisville hospital, however, now they are flagged as on foot and the group’s ‘radar blip’ moves at a much slower rate along the road. If a player intersected with their journey, we’d spawn the characters all on foot, and the AI would take over from there with the same pathing goal.
 

Now they are on foot, this opens the door for other events linked to this narrative to fire that wouldn’t be possible within a vehicle. One such event that can randomly trigger is a worsening of the health condition of whomever was chosen to be the sick one, which is what happens next.
 

“Annie was real bad, her fever was getting worse. Bryan, her husband, had to carry her.”
 

True, at this time we don’t have any way to ‘make this real’ should the player happen upon this group, since we don’t have support for characters carrying others at the moment. We hope to add this, and should we do this, then when we spawn the characters in the flesh we would set them up as appropriate to the event – but regardless, at the moment these narratives in particular take place way too early for players to actually intersect with, so we can take a few liberties in these particular narratives anyway.
 

Notice Bryan is referred to as ‘her husband’, which is automatically generated using Annie as the context character, and the code examining the closest relationship between these two characters. We could instead have an alternate line of dialogue using the speaking character (Annie’s sibling) as the context and it would instead read ‘my brother-in-law, Bryan’, finding the shortest link between the speaking character and Bryan was through Annie. We plan for this to be expanded in the future to automatically modify based on all manner of things, such as character opinion, and/or character’s traits (My idiot brother-in-law, Bryan, for example) though this may not be present in the first iterations of the system.
 
So now, we have flagged that the ‘ill person’ is being carried, and is being carried by Bryan. This opens up the potential for new events to be triggered, and indeed that is what happens. Poor Bryan.
 
Again, some choices, what they do with the zombie Annie and Bryan, there could be a third victim in attempting to put them down. These branches are, relatively, painless to write, and can be expanded on far into the future. It means we can have many small narrative threads, ones that last days, or ones that last months, that thread-in appropriate events to steer the story in believable directions, with written or designed outcomes that make sense and feel like a real story, in a manageable and expandable way.
 
The ‘quests’ that we have with our story generation will likely fit in line with this above narrative system. Is a character split from their loved ones, on their way to another town to find them? Maybe you can help? We’re hoping for a more organic structure of interaction and transaction with NPCs that emerges from this narrative system and leads to some really cool and believable stories being told with our NPCs.
 


Header Image pilfered from a previous blog out of laziness, sorry! You can find all our previous blogs here.
Block of italized text has nothing more to say today, bye bye!

Mar 31, 2022
Project Zomboid - nasKo


How do, all. Let’s visit a few different PZ departments to see what’s cooking.

41 PATCHING
We are currently partway through the journey to the 41.69 patch. Planned patches to Build 41 are intended to be, generally, not feature-led and instead focus on balance, QOL, fixes and polish. The current contents of 41.69 includes:

  • New items and 3D models
  • New foraging discoveries.
  • Many improvements for controller and Steamdeck play
  • Many improvements to the MP experience in areas such as: the sometimes weird vehicle physics, the PvP safety system, the PvP cooldown timer, safehouse bugs, sleeping and radio/VHS sync.


There’s a lot more incoming next week, but we intend to keep this patch relatively short and sharp if we can – though of course will also need to be sure of MP stability before any release (even to unstable) as there’s still quite a lot of large adjustments to the MP code going into the pot.

FISHING AND LOCKPICKING
Although it’s not clear where it will land in terms of a build release yet, this week Aiteron’s new fishing system had its first internal test. This was largely a bug-chasing exercise, especially in terms of MP, but the testers had fun.

There’s still a lot of work to be done, and we will need better and more appropriate anims to really sell how it works, but the current mission statement is to get it all working – so we can then add some polish.

We also need to bring the mechanics closer to realism, through exploring what is caught (and how) in Kentucky – and what different types of lines, hooks, lures, bait and catch options we should include to increase/decrease your chances of catching a particular sort of fish. Likewise, clearly stuff like your location, the weather, the time of day and your fishing skill will all come into play.

We won’t go into detail, as it’s still distant, but something else that’s in the design phase while Aiteron implements fishing is bringing elements of his lockpicking mod over into the main game – in a new and improved package to boot.

Locks will vary in type and challenge, and the tools required may differ. Through this, stashes with useful loot will be added to the map – hidden behind locked doors. This will also enable locked doors within houses, chests, locked gun cabinets etc.


MAP WORK
The map team’s ongoing mission to improve the Knox Event map continues. Amidst other tasks focussing on the Many Years Later challenge map, converting and building new farms to fit in with our animal plans, and plotting for future expansion… here’s a few extra fun things that will be appearing in an exclusion zone near you.

  • New tiles to improve the appearance of existing locations.



  • Some older, and very distinguished, buildings for the richfolk of the area.




MUSIC
On top of the gameplay improvements mentioned last time, the guys at Formosa UK (formerly Noiseworks) are working on a first draft of a rework of the action music.

Instead of switching between tracks mid-fight, the plan is to cross-fade between different intensity levels of the same track. The base intensity will be the regular track that you are used to, but then there will also be a high action version that has been beefed up a bit.

When the action subsides, or the number of zombies you’re fighting declines, the music will enter a low state and eventually fade out.

FARM ANIMALS
Work on the introduction of farmed animals continues for their planned introduction in Build 42.

All the following information and videos are SUPER WORK IN PROGRESS and will improve a bunch as we move forward. Please don’t worry/complain/laugh/faint/query/weep about ‘em. (Usual caveats apply basically!

Some bullet points on the current integration!
  • All animals are defined in lua definition tables, which will allow for maximum modding possibilities: it’s via these definitions that you can essentially adjust animal behaviour.
  • When in their pen farm animals will wander around, ‘emote’ by flapping wings or rootling for food on the ground, sit, rest, lie down etc.
  • Relevant animals can graze grass, which then regrows after an appropriate amount of time –  which can be defined in a new sandbox option.
  • Animals will eat from a trough, which is something you’ll either construct or loot from a farm.

https://www.youtube.com/watch?v=b2bIElZuo8k

  • Animals all have different growth stages – for example calves become cows/bulls, and grow in size. Their growth will be guided by various parameters – like their hunger, thirst, general health and the size of their enclosure.
  • Baby animals will stick by their mother’s side, and even take milk directly from the udder.
  • The bigger the animal size, the more meat it will produce when it is butchered.
  • There will be various breeds in-game – so you could have a “meat breed” (Angus) or a “milk” breed (Holstein) – and maybe even something in between like a Simmental.
  • Growth rates will be realistic, so a cow will take two full years to be at its full size, but this will be modifiable via sandbox options.
  • Cows will generate milk for a certain period after delivering a calf. The more you continue to milk the cow, the more milk you’ll get each day. Leaving a cow with a full udder, however, will cause issues and a decrease in lactation.
  • Sheep grow wool that you can retrieve with a shear, and also have a milking system if you enjoy sheep milk.

https://www.youtube.com/watch?v=QcyazPXKhUY

  • Hens can lay eggs. If a henhouse is present they’ll lay eggs in it, otherwise they’ll do it on the ground. They can be fertilized by a rooster, so if left for a time can hatch out chicks.
  • You will need to shut the door to the henhouse every night, and open it back up every morning, or will you risk visits from Mister Fox – and see the resulting bloodstains to boot.

https://www.youtube.com/watch?v=1ryDAW0luHQ

ANIMAL BREEDING
What’s currently being added to the above systems are some ways to encourage the breeding of animals – to improve your herd, and that of your friends and neighbours, as the apocalypse draws on.

It sounds complicated, but it’s actually quite easy for us to generate animals with a ‘full’ (for our purposes) genome – again all defined in lua definition tables for easy modding.

Each animal type will have a set of abstracted genes that each contain two ‘alleles’ inherited from parents, from “milk quantity”, to “life expectancy”, “strength”, “appearance” genes and a lot more in-between.

We’ve gone for a somewhat realistic, yet still gamified, genetics system to make it feel somewhat accurate. We want to have some of the interesting consequences of genetics, and also to have them present clear enough results for players to engage with in cross breeding projects.

When breeding animals, characters with appropriate skills will be able to inspect the animal and get an idea of its various health-related attributes (aka genes) – while others such as egg laying, fertility or milk production will be observed in the animal during its lifespan. Higher skills will also, most likely, make this more apparent/obvious to experienced breeders.

The gameplay loop of animal breeding will involve trying to pick the correct pairings/groupings of your animals to pass along the best genes into their offspring.

Over successive generations you will be able to improve your stock with better milk production, egg production etc – or help you to focus on producing animals with more meat for slaughter.

Finding new animals to breed to diversify and improve your stock’s gene pool will be a prime reason for farmer players to interact with other groups, or go hunting around the farms on the map. Likewise, this will zero in on the concept of a ‘prize bull’ that you might grow an emotional bond with, and really, really not want to get ill – or perhaps even get stolen in MP.

The science will be that each animal will carry two sets of alleles in their genome, one contributed randomly from each parent. You have dominant and recessive alleles, and this will mean that you definitely have to be careful about in-breeding, as base generated animals may have recessive gene timebombs in the forms of genetic illnesses of varying types, waiting to ruin your prize bull and your entire stock if you’ve inbred your animals too much.

We’re sure there’ll be mods that will allow players to observe the genes more directly, but in the base game we’re expecting a tad more ‘art than science’ approach and using informed guesses and examination and observation to improve your stock.

There’s plenty more to this system, but we’ll leave it there for now. All animals will use this genetic system, and we’re sure at some point we’ll look into expanding it into the plant system too, however that’s not a priority right now and almost certainly in the worlds beyond Build 42.

This week’s cool arcade base from Damien. A changelist of all our pre-release patches since the 41 beta began can be found here. The Block of Italicised Text would like to direct your attention to the PZ Wiki should you feel like editing or amending something, and the PZ Mailing List that can send you update notifications once builds get released. We also live on Twitter right hereOur Discord is open for chat and hijinks too.
Mar 14, 2022
Project Zomboid - nasKo
41.68 compiled changelist

(Also including 41.67 from the unstable branch)



MP

  • Cheat control
  • Each anti-cheat can now be disabled via server option
  • Several anti-cheats can now be configured via server option
  • Anti-cheats are disabled by default for co-op hosted servers

  • Max/Min/Default values hint is added to ServerOptionChange UI window for double and integer server options
  • Old SafetySystem tooltip text is changed in accordance with new icon
  • GhostMod and NoClip are removed when admin gets player access level

  • Adjusted anti-cheat thresholds
  • Player is not kicked on coop host server

  • Adjust MP gain XP limit by sandbox XPMultiplier value
  • Fixed typo in UI\_ValidationFailed\_Type9
  • System property "rconlo" is added to make RCON server listen on loopback interface only
  • New IsoObjectID class replaces ZombieIDMap.

  • Limit the "mods" string reported by Steam servers to 128 characters. A new keyvalue "modCount" reports the actual number of mods used by the server. The server browser and favorites list will display "... and N more" after the list of mods, when there are more mods than are displayed.  This is to fix some servers reporting ??? as their version number, which prevents people from joining.
  • The server will exit if there are syntax errors in the servername\_SandboxVars.lua file.
  • The server's servername\_SandboxVars.lua is saved after loading it to update it to the latest version with comments.

  • Added missing buttons to disable toggle in admin panel UI
  • Added closing admin panel UI if player has no access level or revoked privileges
  • Added closing safezone tool UI if player has no access level or revoked privileges

  • Clarified safehouse tooltip - show all reasons why a safehouse cannot be claimed

  • Added server option "SafehouseAllowNonResidential" to allow claiming all buildings
  • Added confirmation before releasing a safe house
  • Fixed the owner sometimes showing in safehouse member list
  • Added check when releasing safehouse if player is the current owner or an admin
  • Fixed DisableSafehouseWhenPlayerConnected teleporting players outside when a player is removed while there are members online
  • Fixed DisableSafehouseWhenPlayerConnected never replacing the safehouse after a player disconnects
  • Added updating of the safehouse online member count periodically
  • Added allow changing safehouse owner to players which are a member
  • Added extended server quit logging
  • Print 'command entered via server console (System.in): "xxx"' in GameServer.launchCommandHandler().
  • Added isConsistent() call to GameServer.receiveSyncClothing().

  • Fixed both options on yes/no confirmation when quitting a safehouse removed the player
  • Fixed zombie that can be deleted by admin or zombie owner
  • Fixed server hanging on quit command because of active RCON connection
  • Fixed CD and VHS tapes possibly being different for each client.
  • Fixed GlobalModData.save() not being called on the server.
  • Fixed ZomboidRadio.Save() not being called when other things are saved on the server.  It was called every 10 game-world minutes, however.
  • Fixed Lua error in ISPlayerStatsManageInvUI after calling the /additem command in multiplayer.
  • Fixed issues with the Stitch packet.
  • Fixed repeated exceptions in GameClient.sendAddedRemovedItems() when a container object is null for some reason.
  • Fixed adding items to or removing items from containers not being synced in multiplayer if the player teleports before the changes are reported to the server.  This was one cause of the issue fixed above.

NEW

  • Added "Enable left joystick radial menu" accessibility option.
  • Updated community translations.
  • Added 3D models (not all in-game yet)

ENGINE

  • Updated Windows and Linux FMOD to 2.02.05.
  • Added error checking and logging when initializing FMOD.  The sound system is disabled when errors occur.

MODDING

  • Made the maximum allowed tiledef file number 16382. File numbers 0-99 are reserved for the game, as was already the case. The old unenforced maximum was 1000, which some mods ignored. Sprite IDs must fit in a signed 32-bit integer (2,147,483,647). Each tiledef file is reserved 512 tilesheets of 512 tiles each. However: please note that values higher than 8190 result in NEGATIVE sprite IDs. Numbers higher than 16382 definitely aren't allowed due to using 32-bit integers to hold sprite IDs.
 
FORAGING

  • Added Search Focus system for foraging
  • focus is set in the investigate area window
  • only one focus may be active at a time
  • increases chance to find certain categories of item when searching
  • player must be skilled enough to identify the item category to focus on it
  • focus effectiveness is determined by player skill and category
  • hidden item categories will not be rerolled (rare find protection)
  • square must be valid to roll the item type (cannot be used to find plants on roads)

  • Fixed duplicate clothing effect displayed in ZoneDisplay tooltip
  • Fixed missing per player render flag in ISBaseIcon
  • Tidied spriteAffinities definitions
  • General tidying and alignment of tables
  • Removed stone/firewood identify category skill requirement
  • Added translations for search focus functions
  • Added controller support for search focus
  • Fixed medicinal herbs requirement - check for recipe instead of trait "Herbalist"
  • Fixed tooltips flickering in Zone Display
  • Added tooltip to make long tips easier to read without scrolling
  • Added zone display tip for using search focus
  • Updated focus check to occur before item preview is placed
  • Added blocking search focus for sprite affinity items

BALANCE

  • Fixed Axeman not applying bonus for swing speed
  • Added correct adjustment of exercise fatigue.
  • Updated community translations.

FIXES
 
  • Fixed car dashboard delay when taking damage
  • Fixed doors missing their glass, and the triangle-shaped floors\_exterior\_natural\_01 dirt tile.
  • Fixed disassembling player-built floors resulting in two floor tiles after reloading, an auto-generated wood floor plus a dirt tile.
  • Fixed the result of FMOD::Studio::System::getCoreSystem() not being checked properly for errors.
  • Fixed Lua error clicking the close button in the titlebar of the Horde Manager debug ui.
  • Fixed a BufferOverflowException when the number of reanimated player zombies is high.  (It was taking about 600 player zombies (assuming 1.6KB per descriptor and 1e6KB packet buffer)  to be loaded for this exception to happen)
  • Fixed dragging VHS tapes from world containers to the Device Options ui not being synced in multiplayer.
  • Fixed repairing a hole in a long Leather Jacket with level 8 Tailoring not restoring condition.
  • Fixed phantom item-transfer actions playing after crafting sometimes.
  • Fixed IndexOutOfBoundsException in WorldItemModelDrawer.renderMain().
  • Fixed starting the MusicCombined event doing network stuff.
  • Fixed the MusicCombined event being stopped and then restarted the first time Lua is reloaded.
  • Fixed split-screen players, except the last, being unable to drive vehicles in multiplayer.
  • Fixed unnecessary pause when starting in debug
Project Zomboid - EnigmaGrey
41.68 RELEASED TO UNSTABLE BETA

NEW

- Added allow changing safehouse owner to players which are a member
- Added extended server quit logging
- Print 'command entered via server console (System.in): "xxx"' in GameServer.launchCommandHandler().
- Added isConsistent() call to GameServer.receiveSyncClothing().

FORAGING

- Updated focus check to occur before item preview is placed
- Added blocking search focus for sprite affinity items

FIXES

- Fixed the result of FMOD Studio System getCoreSystem() not being checked properly for errors.
- Fixed Lua error clicking the close button in the titlebar of the Horde Manager debug ui.
- Fixed a BufferOverflowException when the number of reanimated player zombies is high. (It was taking about 600 player zombies (assuming 1.6KB per descriptor and 1e6KB packet buffer)
to be loaded for this exception to happen)
- Fixed dragging VHS tapes from world containers to the Device Options ui not being synced in multiplayer.
- Fixed repairing a hole in a long Leather Jacket with level 8 Tailoring not restoring condition.
- Fixed phantom item-transfer actions playing after crafting sometimes.
- Fixed IndexOutOfBoundsException in WorldItemModelDrawer.renderMain().
- Fixed starting the MusicCombined event doing network stuff.
- Fixed the MusicCombined event being stopped and then restarted the first time Lua is reloaded.

HOTFIX Thursday, March 10th

Now preparing for a release - so please let us know if anything weird is cropping up out there in server-land.

NEW

- Added "Enable left joystick radial menu" accessibility option.
- Updated community translations.
- Added 3D models (not all in-game yet)

MODDING

- Forbid mod tiledef file numbers outside the range 100 to 8190. File numbers 0-99 are reserved for the game, as was already the case. The old unenforced maximum was 1000, which some mods ignored. Sprite IDs must fit in a signed 32-bit integer (2,147,483,647). Each tiledef file is reserved 512 tilesheets of 512 tiles each.

FIXES

- Fixed split-screen players, except the last, being unable to drive vehicles in multiplayer.
- Fixed unnecessary pause when starting in debug
Project Zomboid - EnigmaGrey
Find it on Steam Betas unstable branch. Saves should be fine but you'd be advised to back them up to be sure.


41.67 changelist


MP

Cheat control
  • Each anti-cheat can now be disabled via server option
  • Several anti-cheats can now be configured via server option
  • Anti-cheats are disabled by default for co-op hosted servers

  • Max/Min/Default values hint is added to ServerOptionChange UI window for double and integer server options
  • Old SafetySystem tooltip text is changed in accordance with new icon
  • GhostMod and NoClip are removed when admin gets player access level
  • Adjusted anti-cheat thresholds
  • Player is not kicked on coop host server

  • Adjust MP gain XP limit by sandbox XPMultiplier value
  • Fixed typo in UI_ValidationFailed_Type9
  • System property "rconlo" is added to make RCON server listen on loopback interface only
  • New IsoObjectID class replaces ZombieIDMap.

Limit the "mods" string reported by Steam servers to 128 characters. A new keyvalue "modCount" reports the actual number of mods used by the server.
  • The server browser and favorites list will display "... and N more" after the list of mods, when there are more mods than are displayed.
  • This is to fix some servers reporting ??? as their version number, which prevents people from joining.

  • The server will exit if there are syntax errors in the servername_SandboxVars.lua file.
  • The server's servername_SandboxVars.lua is saved after loading it to update it to the latest version with comments.

  • Added missing buttons to disable toggle in admin panel UI
  • Added closing admin panel UI if player has no access level or revoked privileges
  • Added closing safezone tool UI if player has no access level or revoked privileges

  • Clarified safehouse tooltip show all reasons why a safehouse cannot be claimed
  • Added server option "SafehouseAllowNonResidential" to allow claiming all buildings
  • Added confirmation before releasing a safe house
  • Fixed the owner sometimes showing in safehouse member list
  • Added check when releasing safehouse if player is the current owner or an admin
  • Fixed DisableSafehouseWhenPlayerConnected teleporting players outside when a player is removed while there are members online
  • Fixed DisableSafehouseWhenPlayerConnected never replacing the safehouse after a player disconnects
  • Added updating of the safehouse online member count periodically

  • Fixed both options on yes/no confirmation when quitting a safehouse removed the player
  • Fixed zombie that can be deleted by admin or zombie owner
  • Fixed server hanging on quit command because of active RCON connection
  • Fixed CD and VHS tapes possibly being different for each client.
  • Fixed GlobalModData.save() not being called on the server.
  • Fixed ZomboidRadio.Save() not being called when other things are saved on the server. It was called every 10 game-world minutes, however.
  • Fixed Lua error in ISPlayerStatsManageInvUI after calling the /additem command in multiplayer.
  • Fixed issues with the Stitch packet.
  • Fixed repeated exceptions in GameClient.sendAddedRemovedItems() when a container object is null for some reason.
  • Fixed adding items to or removing items from containers not being synced in multiplayer if the player teleports before the changes are reported to the server. This was one cause of the issue fixed above.

SOUND

  • Updated Windows and Linux FMOD to 2.02.05.
  • Added error checking and logging when initializing FMOD. The sound system is disabled when errors occur.

FORAGING

Added Search Focus system for foraging
  • focus is set in the investigate area window
  • only one focus may be active at a time
  • increases chance to find certain categories of item when searching
  • player must be skilled enough to identify the item category to focus on it
  • focus effectiveness is determined by player skill and category
  • hidden item categories will not be rerolled (rare find protection)
  • square must be valid to roll the item type (cannot be used to find plants on roads)

  • Fixed duplicate clothing effect displayed in ZoneDisplay tooltip
  • Fixed missing per player render flag in ISBaseIcon
  • Tidied spriteAffinities definitions
  • General tidying and alignment of tables
  • Removed stone/firewood identify category skill requirement
  • Added translations for search focus functions
  • Added controller support for search focus
  • Fixed medicinal herbs requirement check for recipe instead of trait "Herbalist"
  • Fixed tooltips flickering in Zone Display
  • Added tooltip to make long tips easier to read without scrolling
  • Added zone display tip for using search focus

BALANCE

  • Fixed Axeman not applying bonus for swing speed
  • Added correct adjustment of exercise fatigue.
  • Updated community translations.

FIXES

  • Fixed car dashboard delay when taking damage
  • Fixed doors missing their glass, and the triangle-shaped floors_exterior_natural_01 dirt tile.
  • Fixed disassembling player-built floors resulting in two floor tiles after reloading, an auto-generated wood floor plus a dirt tile.
Feb 25, 2022
Project Zomboid - lemmy101
Server operators will find .zip files with their server backups, should they need to revert. 5 cycling incremental backups each server run, and a special backup per version change. It can also be configured to backup periodically while the server is running, but you may expect a few seconds of lag if you do this.

This update pushes 41.66 to the stable branch.

Full 41.66 Changelog on our forums:
https://theindiestone.com/forums/index.php?/topic/49523-4166-released/

Or Pastebin:
https://pastebin.com/pKp2puZ9


Changes since 41.66 Unstable:


  • Fixed double-door opening and closing not being synced properly in multiplayer.
  • Fixed desync when a player heals via "godmode" at the same time as a character dies.
  • Fixed SafetyToggle timer speed and SafetyCooldown logic.

  • Increased speed of mouse-wheel scrolling in the Survival Guide.
  • Added several new items, mostly flavour. Plushies (friends for Spiffo), Boardgames, Poker Chips. etc. Some of them do not have 3D models attached to them yet.
  • Updated max values for HoursForWorldItemRemoval and HoursForCorpseRemoval sandbox settings.

  • Fixed boxing gloves 'hole' on the back of the hand issue.
  • Fixed Poncho showing no legs by capping the bottom.
  • Fixed Bullet Vest clipping with some other clothing items.
  • First pass on fixing underlying mesh on female, clipping Leather Jackets.

  • Fixed ClothingItemExtra script property not working for items that aren't in the Base module.*
  • Fixed double "Place Item" options for: Radio, Battery Charger, PortaDisc.
  • Fixed not being able to interact with a Radio that was placed as a 3D item.
  • Fixed "Investigate Area" tooltips being displayed at the mouse pointer position when using a controller.
  • Fixed player character holding a Newspaper model in hand when reading the in-game map.
  • Fixed possible exception due to a vehicle not having an Engine part but the engine is running.
  • Fixed cases where a player would be able to start the game before "Click to Start" appeared, causing errors.
  • Fixed a case where players were able to grab items through closed/barricaded windows.
  • Fixed a bug with the mediadata converter that caused all tapes to have incorrect colored text colours.
  • Fixed the LootRespawn and SeenHoursPreventLootRespawn sandbox options not being displayed in the single-player sandbox settings UI.
  • Fixed the SeenHoursPreventLootRespawn sandbox option not being displayed in the single-player and multiplayer sandbox settings UIs.
  • Fixed missing food types in Evolved Recipe items.
  • Fixed Search Mode / Foraging being usable in the Tutorial scenario.
  • Fixed "Foraging has changed" warning from right-click context menu still being there.

Feb 3, 2022
Project Zomboid - nasKo
Hey all, here’s a general update from TIS Towers on various things. We do hope this finds y’all well.

First off a quick heads-up on the forthcoming 41.66 patch. It’s now content locked, and is now receiving required fixes reported by our internal testers. We will look to put it out into a new unstable beta branch as soon as we can.

The full current changelist can be found here for those interested.

Next up, a few details on our Build 42 work.

As previously mentioned the core MP team will be sticking with Build 41 patches to improve life out on the servers for the immediate future, but work on the next big build has nevertheless now begun/continued in earnest.

Already announced for Build 42 was a major expansion of late game crafting and a major focus on game balance – details on which can be found here.

There are a few other irons in the fire for this build too though. As ever, no ETAs on any of this.

We are very much still in the early versions of this build, and indeed much of the late game crafting update is currently in the ‘pen and paper’ planning stage. More on this in future blogs.

Engine Tech Improvements
We have recently taken some time to get rid of a bunch of our longest standing issues with the game’s engine.

Whilst this is definitely not a b41-style level of disruption, we’re digging deep inside our renderer and looking for ways to get rid of the quite severe problems that have been baked into our engine for a long time in terms of both capabilities and performance.

Performance
Of course, the biggest issue our engine struggles with daily is the extreme CPU and GPU heavy requirements of having a map composed of so many unique tiles, shaders and other stuff without the ability to use a z-buffer to let us render in an optimized way like most 3D games.

Ironically the fact that its ‘a simpler looking 2D game’ is what works against using a lot of the power of the GPU to render the map fast. This results in large FPS drops, particularly when zooming out due to the mind meltingly inefficient draw method that the ISO perspective forces on us.

We’ve had a few rather bold ideas on how to solve this, using the caching of chunks that have already been rendered, which we hope will vastly increase the FPS in B42.

It’s early days, but looks promising. This tech requires heavier use of the GPU memory, however, so it may be that this optimization will only be able to benefit cards with a few gigs of free VRAM. We’ll have to see which generations of GPUs will be best able to leverage it when its dev time is a little further down the line.

Speaking of not being able to use a z-buffer to render things in an optimized way: in actual fact, we’ve also been working towards being able to use a z-buffer to render things in an optimized way.



This essentially frees us from having to slot the draws of zombies, vehicles or players in between the appropriate tile draws in ‘back to front’ order.

We’ll be able to simply draw all the characters and vehicles on-screen at the end, their pixels then discarded if they are deeper into the scene than an existing building object’s pixel.

This should massively optimize the rendering speed of zombies, and allow us to sort them by materials. It will free us to use cached chunks indefinitely, until the lighting or cutaways demand a change, rather than rendering all the tiles individually.

We have had some surprising FPS results in 4k on max zoom, however we also expect this will likely fall a lot in practice – once the work is complete and everything is drawing. Please excuse any visual glitches at the moment!



Due to all this, in B42 it currently feels safe to assume that zooming out will have significantly lower performance penalty – and that higher resolutions will become more feasible for at least mid-range GPUs, and possibly lower end GPUs too.
 
Variable Chunk Heights
In the game, since our very earliest builds, we’ve been limited to 8 storey buildings. This was primarily because the height was global, and increasing this would incur a penalty to performance across the entire map even if that extra space was not used.

The other issue was simply performance when drawing those extra floors. If we’re struggling to render the amount of tiles we already have, adding extra tall buildings would be a big mistake.


Thirdly, there’s something to be said about less being more in terms of gameplay. However, this hard limit of 8 has long been a thorn in our mappers’ sides, as well as for our mod community.

Seeing as it looks like we’ll be able to solve the performance issues discussed above, we’ve now added a variable chunk height system which will allow each chunk of the map to define its own max height.

This means that in Build 42 it’s looking like a particular area could have floors up to 32 in height, should the mapper desire it.

Four way stairs
Currently, due to certain tech limitations, we only have stairs that rise in north or west directions.

This is annoying, and we’d like to get rid of this limitation for numerous reasons. We’ve done some mock-ups of how stairs would look in the other two directions, and think we’ve found a way to make it work.

They look a little odd, however functionally being able to have stairs in any of the four directions would give mappers and ourselves much more freedom in building design.

Map Coordinates
Another limitation that has been very longstanding is the fact that negative map coords (expanding out the map in the negative X and Y directions) is not possible in PZ – due primarily to some TIS naivety early on in development.

For the maths-minded out there: casting a player’s x, y, z location to an int to work out what tile they are standing on will return the wrong value if any of those coordinates are a negative value.

There were thousands of places where this occurred in the codebase, and they all needed changing from a static cast to a math.floor, so that they will work in negative dimensions.

Making negative map coordinates possible means that we, or modders, will feasibly be able to build northwards and westwards, and opens up a huge extra area of potential map area to expand to.

It likewise also puts other cool stuff (back) on the game dev table that we’ll discuss at a later date.

Light Propagation
We have also been updating our lighting system.

In the current B41 we have an ambient light level that’s inherent to every tile within the map – though slightly reduced indoors. Light sources are only capable of lighting the room that they are in.

Locking yourself in a cupboard with the door shut currently results in the same light level as you’d get in the living room with open curtains.

For B42 we are rejigging how lighting is calculated, to make a much more interesting and realistic light propagation system.

Now being in a room with no windows, even in broad daylight, will leave you in the darkness. The evening sunset glow will encroach through the window and bathe your room in a red tint, creeping back toward the window and dimming as the sun goes down.

Interiors of buildings will lighten and darken with the daylight based on how much exposure to the bounced light they will feasibly receive. Opening a door to a lit room will bathe the outside corridor in light, and so on.

This is all still development in progress, and it maybe requires tweaking of light intensities, colours and fall-off ranges.

Please also excuse any glitches you see, this is all still very much in the oven!

 

OTHER BIZNESS
  • The map team continue their awesomeness, with lots of map polish currently going into the current Knox Event map – including electricity pylons and cool new locations like this.
  • The Noiseworks gang continue with their improvements of the PZ soundscape, with their current mission being to provide background sounds that provide different ambiance for times when the electricity and water are on, for when they are off, and an audible change to signal the exact moment when the turn-off happens in-game.
  • Currently awaiting integration are also 14 new music CDs, 14 movie VHS tapes, 20 new TV show tapes and 44 home recorded tapes too. You will be delighted to hear that these include several new sequels in the much-lauded Dog Goblin horror franchise. Our thanks to Brat Pen for these.
  • The curator of the online PZ map project, Blindcoder, wants to let you know that he’s on the case with updates – and apologises for delays caused by Covid and irl fun/games. His blog here. Our thanks to him for all his amazing work also.

This week’s flamingo funfrom Cute Cappuccino. A changelist of all our pre-release patches since the 41 beta began can be found here. The Block of Italicised Text would like to direct your attention to the PZ Wiki should you feel like editing or amending something, and the PZ Mailing List that can send you update notifications once builds get released. We also live on Twitter right here!
Our Discord is open for chat and hijinks too! And you can always find our bi-weekly blogs over here.

Jan 6, 2022
Project Zomboid - nasKo


Howdy survivors! Another crazy week for us, we’re still in a bit of a daze!

Just a few more days until the entire team are back together after the various international holiday periods have all come to an end, and we’re looking exceedingly forward to fixing up a few of the big issues that have come out in the wash since the MP launch. You can read more about them in last week’s blog here.

So the big question, now 41 is out there, and after the remaining MP issues have been fixed up, is what comes next?

Two Team Release Schedule

Going forward, now the behemoth that is Build 41 is increasingly looking to be in our rear-view mirror, we are going to structure the internal game’s development into two distinct teams (With General Arcade continuing in the meantime on improving MP, optimizing the server, increasing the player count and other MP related tech)

First, a little bit of a teaser!



(This is a fairly old internal video, created as a working proof-of-concept of various aspects of our NPC tech. It’s also not necessarily canonically accurate anymore. It was built to echo our earliest tech demo, but this might not be the start point we take with narrative in future, even if the characters would still be familiar.)

It’ll have been no surprise to anyone who read the interview in which Lemmy dropped some major Thursdoid spoilers that one of those teams is going to be focusing exclusively on NPC development from this point on. We’ll also be able to talk about it (not necessarily every Thursdoid, but certainly no longer in a vacuum), rather than work away in secret due to our ‘only discuss what’s coming next’ rule we instigated after a few instances of talking far too early about stuff.

Long ago we stated (informally on a forum post) our planned features for future builds, starting with hunting for build 42, and then numerous NPC builds for build 43 and onward.

However, many changed circumstances and much ponderings later, we’ve decided that this is not the best approach to take. First of all, its very clear that human NPCs have long been the most requested feature that is still outstanding, and the source of most of the frustration and bad feeling from those who consider the game to still be incomplete.

Not only this, but in slightly more selfish reasons, a big reason for not being comfortable with hunting and pets being first, is they are still NPCs and would necessarily leverage all the technology we’ve being working on for years at this point.

We have such amazing and peskily talented modders out there, we know fine well that as soon as we released this tech within their grasps, we would end up seeing extremely powerful NPC mods appearing, using our NPC tech heavily, before we had the pleasure of seeing this hard work paid off with our own NPCs.

It may be the initial build still contains hunting and wild animals, they ARE NPCs after all. It may be they drop into a subsequent build or later on in the unstable beta cycle, its not clear yet for reasons we’ll discuss in a bit. But the next BIG thing will be NPCs and we’ll have a dedicated team working toward this goal going forward.

However, NPCs will still, technically, be build 43. This is because we’ll be running a second dev team exclusively on a quicker, less risky yet still super cool content patch before the NPC work is complete, and then ongoing alternately between the other NPC patches to keep the content train going.

Behold this fancy graphic we cooked up! Now that we’ve blown up a bit we need some fancy graphical charts in our Thursdoids!



Hopefully the chart shows that, in very real terms, NPCs will be coming out as quickly as they can, uninterrupted, and the other builds are there to help bridge the gap. No build will ever take as long as Build 41 did, it was a practical rewrite of large portions of the game, but non-the-less NPCs will take time to emerge, and we don’t want to leave the community without new content in those waits.

Build 42

There is still a lot of polish and fix work to do on 41, primarily for the MP team but also with a side-salad of bug-fixing issues in both online and solo.

Beyond this, however, is a much ‘smaller’ but still extremely cool update that’ll drop before NPCs, that will release during the push toward an NPC release.

I say ‘smaller’ only because no major functionality or new fundamental systems, and it will be more a balancing and content patch while NPC team’s work is underway. However it will still be pretty beefy in terms of what it brings to the game.

It will serve several important purposes:

1) To balance a lot of the existing mechanics, particularly in relation to traits, professions, skills and other areas of the game that have been neglected or suffered some degradation during the years of development since they were introduced. Balancing traits and professions, medical system, and other stuff where it comes down to essentially tweaking numbers to make more builds viable or close up ‘free points’ exploits in character creation. Loot balancing and anything else that’s an easy balance but will help improve the game also fits in here.

2) To begin the expansion of the ‘tech tree’ of the game significantly to provide a more rich end-game experience. While until NPCs exist, some of this may be slightly less impactful on single player (though we’re sure will still add a lot of potential), it will significantly improve the MP experience by servers being less pressured to wipe or have loot respawning, providing players and communities ability to create more items that at present can only be obtained through looting.

While we may not hit this spot in our first build, our ultimate goal is to provide significantly extra crafting potential to allow players to effectively create a post-apocalypse nu medieval community, to provide plausable alternatives to any of the lootable items in the game that would logically be plausable with the correct skills and resources so players don’t feel pressured to restart the early game repeatedly to get long term fun out of the game. Want to be the person who makes clothes and sells them to a neighbouring settlement? Build brick walls and create something that resembles an actual house? Maybe even build a windmill? Who knows.

These are all examples of things we could do here, and may not all appear in Build 42, but hopefully our intended direction is clear. Ultimately to build up to the point that Alexandria / Hilltop / Kingdom style communities can form years after the apocalypse, giving more incentive to keep playing and building on existing worlds instead of intentionally replaying the early game because there is no real late game.

All this would be a time sink and require a group effort and wouldn’t be compulsory for those who prefer to just die repeatedly in the early apocalypse days, but the hope is to allow for a much greater level of community building, and facilitate trade and potentially years of stories and rich history from within a single world, be it NPC populated or an MP server, spanning numerous player lives (so it can still be the story of how you died).

These professions and expanded tech trees would be heavily gated and require specialization, often in case of the more complex crafting paths requiring pre-apocalypse skills that while it’s possible, are extremely difficult to attain to high levels after the apocalypse without a character specced toward them. We long ago ‘nerfed’ a metalworking system that was added to the game due to the implausibility of some random survivor crafting spoons and katanas in the apocalypse, however we’ll be expanding this again to include better items available through sufficient mastery and enough plausibility with the character build.

We’ll increase the amount of recipes that’ll be unlockable within the world through books, magazines or VHSs, and try and accurately model more advanced and multi-tier crafting professions to allow survivor communities to thrive and provide much more diverse activities for players who like to stay in the safehouses.

Finally, and vitally, we’ll be introducing the concept of ‘crafting surfaces’ to further restrict where some crafting recipes can be used. Some more complex recipes will require specific tables or equipment, some will just require a table or surface of any kind, while others can be carried out in your hands with no surface at all.

This will add an extra level to the crafting, as making a place suitable for crafting the more complex multi-stage recipes, and potentially upgrading your crafting station and equipment, would become a more fulfilling experience than standing in the field and being able to make a stir fry.

We have many and varied other things we want to inject into the game also – we’re currently working on seated / reclining characters for example, and also want to expand on in-game events and tie them to the map. We also need to do some work to improve guns, and PvP, at some point. It’s not clear when smaller features will start appearing, however, so will report on them in blogs as the year progresses.

Build 43

Worked on concurrently to the balancing and crafting update, as well as discussed and shown within our blogs going forward, will be the first version of NPCs. We’re still deciding what should, could and would be present in the first NPC build. It could include autonomous NPCs that the player can group with, it could primarily include the reintroduction of the story mode, it could have NPC animals, or that could come later.

We really need to look at what we have, and what’s feasible to deliver in a reasonable amount of time, as well as what we could release as a first build and not have people who’ve waited years for them to appear be disappointed. There’s a lot of plates to spin, decisions to make that require more brain power than we’ve had to spare during B41’s development, so we’re going to take some more time to discuss what would make the most satisfying and manageable first build, and take a stock check of what we have.

We’ve got a LOT of NPC code, lots of cool systems, from Rimworld style priority and jobs system, personality systems, procedural story event systems, combat systems, autonomous survival behaviours, advanced group behaviour systems, vehicle driving systems, and a whole bunch more. While nothing could be described as 100% complete, the vast majority of the hard work has been done, is functional and is extremely cool.

But B41 has taken a huge amount of our time and resources, and also taken some elements of the PZ workings in a different direction to things our NPCs were using, and so they need some time to be reintroduced to the most current build and made MP compatible. And when we do that, we’ll be moving stuff over in stages to release, rather than try and get everything functional and release ready at once.

A good analogy is we’ve got two rooms, one full to the ceiling of extremely cool and complex circuit boards and wires that we’ve spent years making, one room is empty.

Trying to tidy and assemble everything in the first room will be a nightmare. So we’ll start moving bits into a new room, setting them up, plugging them in together, and making something cool out of them to release. After release we’ll continue bringing in more pieces and attaching them, and so on for perhaps 2 or 3 builds until the first room is empty and our vision of NPCs is complete. It doesn’t mean that’s all we have, far from it, just sorting that entire packed room out would take too long and we want to finally start pushing NPC content out as soon as possible.

We also have some big plans for a gun mechanics rework at some point, to provide a more solid gunplay experience that will make guns not only more interesting to use, require more a player skill element, but also make PVP encounters a lot more interesting for those who enjoy that kind of thing, as our PVP component is still one of the more lacking elements of our multiplayer experience. But for now we are not committing to where this will thread into the release schedule.

The process of moving stuff over will take some time, and so we may be quiet for a couple of Thursdoids until we start getting stuff moving in the current build. As soon as we are though, we’ll be talking about the ongoing NPC development, alongside the concurrent crafting and balance patch, until they drop. Exciting times!

It shouldn’t go unsaid, however, that if a big new feature is not ready then it’s not in our DNA to push it out of the door uncooked. We’re confident that this will be a great year for PZ, and feel we can keep the content pipe flowing, but also won’t be abandoning our accustomed position as the tortoise in the ‘tortoise vs. hare’ race which appears to now be paying dividends for both game and community.

Much love,

TIS x
Dec 20, 2021
Project Zomboid - nasKo
It felt like the day would never come, but we’re really happy and proud to announce that Build 41 has been released to stable!

If you’ve been out of the loop on the beta, a good place to start would be our new trailer to celebrate the release and show those new to Zomboid what’s in store for them:



This build marks a huge step for us, the graphics, gameplay, audio and netcode being significantly remastered and radically improved, Build 41 feels more a sequel than a patch update. As well as a huge map update, new mechanics and systems, its by far our biggest update yet.

Under normal circumstances, we may have done a little more polish and fixing before releasing to stable, but the truth is next to no one are playing Build 40 now, apart from those that didn’t know of the beta branch. It’s presence if anything has been damaging to Project Zomboid’s first impressions and we were only waiting for multiplayer to drop in a somewhat stable fashion to allow us to move on, as we feel strongly that Build 41 even with the remaining bugs and issues that need weeding out, casts a far superior first impression for new players.

Build 40 will forever live on in a branch, access the beta branch “legacy40 – Classic Zomboid” at any point to continue playing, or if your specs aren’t capable of running build 41 comfortably.

So what’s new in this build?

  • Massive animation and character overhaul, more immersive animations and smoother gameplay and combat, highly customizable character that shows clothing and equipment in the world. Visibly ripped and damaged clothing. Visible Backpacks and Bags.
  • In-game map system to allow the player to chart their exploration and find their way around the huge map.
  • New animations and new movement systems. Sneaking, sprinting, jogging, racking, reloading, climbing, fence-jumping, collapsing and much much more.
  • New multiplayer built from the ground up for smooth, immersive and low latency player and zombie movement.
  • New combat, new weapons, new difficulty balance.
  • New tutorial teaching you the very basics of the new movement and combat.
  • New character creation – many, many different new clothing options both on spawn and discoverable in the world as loot or on zombies.
  • New city to explore, the gargantuan Louisville, as well as many improvements across the entire map, including new buildings, decoration, and curved roads for easier driving.
  • New zombie behaviour: feasting on recent corpses, lolling against walls, falling over fences etc.
  • Blood and dirt system that progressively bloodies bodies and clothing of survivors and zombies
  • New injury system – movement and combat visibly hampered when injured. Lacerations now possible, an injury state that lies between bites and scratches.
  • Improved gunplay: green/red target outline while aiming, increased gun loot spawn.
  • Randomized environmental storytelling elements. Death Scenes, zombies discovered in the situations in which people died. Prayer meetings, sports-viewing parties, survivor zeds wearing backpacks etc, vehicle crashes and blockades.
  • Situational zombie type/clothing and inventories – cop zeds in police station, firemen zeds in burnt buildings, Chef zeds in restaurant kitchens, bride and groom zeds at a wedding ceremony in church etc.
  • Clothing protection: different clothing provides different levels of protection from zombie attacks.
  • New Sims-style cutaway vision system.
  • Vehicle handling improvements, resizing and appearance tweaks.
  • Updated, remastered and expanded Kentucky-themed soundtrack.
  • Complete soundscape overhaul – All new sounds, building a more immersive and compelling sonic landscape.
  • Items now have placeable 3D models in the world, for all your decorative needs.
  • New Gameplay Styles
    Apocalypse: Stealth focus. Short lifespan. Combat best avoided and picked selectively.
    Survivor: Powerful combat. Longer Lifespan. A challenging playstyle based on PZ’s previous Survival mode of Build 40.
    Builder: Construction, Exploration, and Farming focus. A more relaxed experience.
  • New Challenges
    Kingsmouth – A separate challenge map, Kingsmouth puts you on a paradise island vacation resort.
    Studio – Try to survive as the Knox Infection hits the dream factory. Some of these zombies are not like the others.
  • Entirely new foraging system.
  • New inventory slots – belts and holsters now give quick equip slots. Weapons can be attached to the character’s back.
  • New thermal / body temperature system.
  • New Tailoring system for clothing repairs.
  • New Fitness / Exercise system.
  • New emote system – Hold Q to bring up the Radial Menu for Emotes.
  • New water visuals – including visible flow direction.
  • New puddle system during heavy rain.
  • New fog visuals.
  • New levelling system.
  • New VHS, and CDs system.
  • Broken glass and related injuries.
  • 3D Store Mannequins – can be dressed however you like
  • Working washing machines and driers
  • Server-side saving: MP save system now in a server-side database. Offline SP-side, also means no more lost cars via irl power outages.
  • New radial menu for reloading firearms.
  • New game cursor
  • New loot balance and loot balance system: houses and stores now have loot in the containers you would expect from real life – and not in a jumble.
  • Isometric aiming cursor that shows where you’re aiming in iso space to aid in combat.
  • A gigantic list of fixes and QoL improvements.

Thank you
A huge thanks everyone for the wonderful experience we’ve had since releasing multiplayer, seeing such a wave of positivity has been wild and made this long journey for this build more than worth it! Seeing the player numbers dwarf our previous record has been crazy:



We’re over the moon over the success the multiplayer has seen and we vow to continue and expand on that.

We’re so proud of everyone on our team, we know we wouldn’t be here today if we didn’t have such dedicated devs working on all these features, often under intense external pressure, and the support team for helping us keep the sometimes chaotic wheels spinning. Every one of them is wonderful and deserving of all our thanks.

Finally, a huge specific thank you to General Arcade, in particular Yuri and Andrei who have put such amazing work into bringing a quality to Zomboid’s multiplayer we simply would never have (and indeed, hadn’t) achieved without them. They’ve put huge amounts of work into this, and we’re thankful to them for helping Zomboid multiplayer come to the vision we had for it.

That’s all for this update. See you all after the new year where we’ll talk about what comes next!
Project Zomboid - nasKo
Build 41 and MP info

Hello survivor! Here’s a few notes of introduction for players new to the Knox
Event.

Build 41 is our playable beta of a complete overhaul of Project Zomboid: new animations, new combat, new soundscape designed by some of the folks who won awards for Alien: Isolation, new map function, vast new city added to the map. New everything, really.

We have been working on it for two years, and very recently have reintroduced multiplayer which has proved extremely popular – and may even be the reason that you are here reading this!

It looks a little like this:

https://www.youtube.com/watch?v=atI-tEpmS4g

And here’s some advice from Nurse about how to access and what’s included:

https://www.youtube.com/watch?v=qCqRYjAepBk


With Build 41.61, we've increased the supported player count to 32, already.

This build is NOT currently the initial download Steam users are presented with – we intend to give Build 41 its full release and move it into the mainline early next, year once we have fixed and polished remaining issues with the new MP.

So how do you access the latest build?

Simply go to your Steam betas, and select the one called "b41multiplayer".

Please be aware that this is a test build, and is still being actively patched, fixed and worked upon.



While many (many!) people are having a great time with Build 41 MP, there are still issues we need to fix – and support issues that we need to address.

Public servers are currently not recommended. Whitelisted and co-op servers are strongly advised for the best experience.

The new update is very complex, and we are a very small team. So please be understanding while we update, fix and polish ready for the full launch next year.

We would like to thank our amazing community for the help they have been giving to new players, and all the enthusiasm they have shown during this exciting time for Project Zomboid.

We hope you all have fun! Have some Happy Holidays and a Happy New Year!
...