Last time round we checked in with some of the main pillars of Build 42 – those things being the crafting and crafting systems update, the tech upgrade, animals/migration and MP.
As such, for today’s blog we’ll be dipping into some of the stuff that wider members of the team have been working on for more general improvement elsewhere in the game.
FARMING
First off, let’s darken Blair’s door – and watch him lean over a fence with a piece of straw in his mouth while he outlines what he’ll imminently be merging into our internal branch for our testers to play around with.
Currently I’m working on smoothing out the interface and interactions for the revamped farming. One important part of the interface, and player feedback, are the new plant sprites Mash has produced to represent plant states.
Previously, our far more limited number of plants had sprites for their individual growth stages, as well as some generic sprites to represent trampled plants.
Now, for every single growth stage and for every plant, we have 600 additional sprites to represent what’s now grown to 15 crops and 8 herbs. These cover states of:
Unhealthy – due to disease, lack of water, or general low health.
In the process of dying – due to these aforementioned reasons.
Completely dead.
Dead-but-also-trampled/crushed. These are for plants that have been crushed by zombie hordes, vehicles etc, and also for dead plants that are degrading over time.
With the farming rework we are adding growing seasons (which can also be disabled in the sandbox settings).
With these most plants will have a planting season, with optimal months that produce additional yields. Plants that are planted out of season will be destined to wither away and die. This means, that aside from some winter crops, winter farming will be no more.
Growing seasons are learnable knowledge. A farmer character starts knowing all of them; a character with the gardener trait will know most of them; and they can also be learned from reading seed packets and special farming handbooks.
CHEEKY RABBITS
Last time we properly met the Knox Event’s deer population and their migration habits, and now it’s time to introduce some smaller varmints – who are tied to the same system, but will move around according to a different ruleset.
WIP vid. Kitten behaviour will probably get more realistic / change. (‘Kitten’ is the correct word for baby rabbit – we don’t know that either.
Now ably assisted by our newest friend Dirk the map team carry on a-pace with the huge map expansion that (most likely) will land alongside 42, or be a part of its beta updates.
After a brief spot of begging we managed to bag a little taster of one of its more epic locations… as ever big thanks to Amz for the vid.
AND FINALLY
Elsewhere Fenris has been chewing on a key accessibility issue that we’ve been wanting to get fixed up since forever – namely the ability to remap mouse buttons (including extra buttons on fancy mouses) to different actions, by making mouse buttons and keys work exactly the same within the bind menu.
Ooh, and also look! Area-specific vehicle spawns in action…
This week’s misty hunt from Felkhan. A changelist of all our pre-release and post-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. Experienced games industry gameplay coder and want to join Team Awesome? Jobs page here.
This week we’ll be checking in with three of the main four pillars of Build 42 – work on the fourth, the server-side player inventories and general MP improvement, has been fairly ‘business as usual’ the past month or so and there’s not much to talk about that’d be juicy for enough for public consumption.
Steady your loins, then, as first of all we jump into…
ANIMALS AND MIGRATION
RJ has been taking a holiday (American translation: vacation) from his work on domestic animals and husbandry, and has taken to the woodland and forests of the Knox Event.
Wild animals will be important to B42 for both reasons of ambiance and necessity – it will make your experience feel no end more engaging to see deer skittering through the treeline, but also will make hunting a viable survival technique – and one required for some of our advanced crafting recipes when society is long-gone.
What RJ has been working on, in particular, this week is the movement of animals over the map – their migration if you will. So if you could all also have a looksee at the following video too, then we can run into it in some more depth afterwards.
Also clearly: USUAL WIP CAVEATS APPLY. Things can and will change through development and testing.
So what are we seeing here?
Well basically throughout the day our deer will follow paths that our designers (and modders) can map out in our WorldEd tool – and in the vid you can see a virtual animal following a path.
Right now, one virtual animal is a group of animals that’s been defined in a lua file. Our current group, for example, consists of one buck, several doe and some fawns. Though clearly once they are fully implemented the variation will be greater, and also dependent on stuff like the time of year.
Once players get close to this coded ‘virtual animal’ these deer will then spawn into the world as real animals – and once you retreat away they’ll revert to their virtual status so the game can take over their movement and activities once more. If the group has become separated meanwhile, they’ll team back up again when their paths next cross.
In their virtual form the animals will move over the map, doing potential set activities at set different places. They are timetabled to have several ‘sleeping’ and ‘eating’ periods – currently sleeping for a period of half an hour at some point between 12pm and 4pm, eating at some point between 5am and 7am, and eating again for an hour at some point before 4pm and 6pm.
(Clearly, all this is easily changed at the dev-end – and can also be adjusted for whatever different animals we choose to add in future)
To aid players who want to be hunters, deer will leave evidence and tracks of where they’ve been and what they’re doing. So there’ll be footprints (with a direction suggested), poop, and broken twigs and undergrowth – while flattened plants will indicate a sleeping spot, and grazed areas an eating spot.
The way in which we represent these visibly in-game is currently being worked out, but for now (and perhaps later on too) we will be providing for it in a dual use for eris’ super foraging mode that was introduced in B41.
A goal for the player, then, might be to follow tracks and work out the deer’s possible sleep or eating spot, mark them on their map, and then wait near those spots at the correct hours and hope that animals will stop by.
We’re also working out on ways for a Tracking skill to be integrated into this, though seeing as the design is still under discussion we’ll probably talk about that at a later date. Something else that we’re aware should be factored in is human smell and wind direction potentially spooking animals, as it would in real life, but we plan to add that layer in a bit further down the line.
RJ would also like to give out a call of Special Thanks to Inrictus for the time he’s spent teaching him how to be a proper huntsman!
Finally, here’s another quick video of a survivor setting up camp with our new tents and whatnot (no deer this time) to give a little flavour of what the surrounding gameplay will feel like too.
ENGINE UPGRADE
Operation Optimization is going very well, easily obtaining several hundred FPS on our dev hardware when zoomed out.
However at the moment we still need to look into optimizations for how our current fog and puddles work – both of these are intensive graphical operations that need updating frame by frame. Thus, at the moment, they invalidate our cached chunks and diminish some of the gains from the optimizations.
As such at a later date – either before a first public release, or very possibly in a follow up build to it – we in particular plan to revisit these systems to optimize them for our new rendering system. Particularly the fog system, in fact, since having a depth map will now provide opportunities to make our visual effects look much better since we will have a solid representation of surfaces and depth to allow us to much improve how it interacts with objects in the scene.
CRAFTING UPDATE
Now the crafting systems are all in place, we’re starting to fill out the tech tree of recipes and wanted to show what’s currently being implemented.
As a reminder to those who perhaps aren’t as interested in the long term crafting and survival systems we are implementing, these will be completely optional as to whether you want to engage with it.
If you’re more interested in evading zombie hordes in the centre of towns and cities then you’ll still be able to do that.
However, to address our game’s weaker late game, provide many roleplay opportunities, and provide depth of gameplay outside interactions with zombies – we’re going all out on making the crafting possibilities as exhaustive as possible. Likewise, we are building new and more powerful crafting systems that modders will really be able to get their teeth into.
Remember, our benchmark is that a group of players should be able to build a functioning village even if spawning on a wilderness map with no signs of civilization. We want to make sure every aspect of crafting is covered to give multiplayer communities the opportunity to build and thrive, and provide modders with the tools required to make cool as hell expansive tech mods as seen on Minecraft, allowing Zomboid to become a more diverse survival, crafting and automation game modding platform in future.
An example of this would be working with clay. Clay can be dug up near rivers, and will be used to make bricks, tiles, roofing, pottery, and a whole host of other items and tiles to place in the world.
Those living on a barren map wanting to build a secure home will be overjoyed to be able to use bricks and tiles to make a proper dwelling that’s sturdy enough to stop zombies from breaking in. Likewise even on a smaller-scale basis, this craft will prove vital when survivors don’t have access to modern cutlery or liquid storage.
So here’s a quick video (very WIP still, we have a lot of balance, UI and polish to apply yet) that will show off some of the crafting systems when working with clay.
In future Thursdoids we’ll try to demo different diverse parts of the tech tree and their related professions as they implemented, as well as UI and quality of life improvements as we make them
SOME WELCOMES
The Indie Stone would like to extend an excited hello to two new fine folks this week – Egor who will be joining the MP team as they move ahead with their upgrades, and community fan favourite DaddyDirkieDirk.
Dirk has joined our art team to pump out ever more delectable tiles to give our map more life, and its deepest parts some more intriguing objects to perceive in the darkness – and if you are interested in his fantastic work as a modder then we ran a Mod Spotlight on him only last week.
Thanks all!
A changelist of all our pre-release and post-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. Experienced games industry gameplay coder and want to join Team Awesome? Jobs page here.
Lots of work on the technical side of the four main pillars of 42 these past two weeks – all of which relatively dry, so let’s run through that briefly before checking out some of the other items rolling in.
Right now the foundational code to our in-depth crafting systems revamp are being brought into a position where the MP team can better get their hooks into it, while in our optimization/lighting/height channel we’ve been continuing to polish out cutaway issues, errors thrown and the way our isoregions system handles its newfound 32 potential storeys.
For our MP upgrade, meanwhile, work continues on getting the machinations of player inventories (building, recipes etc) over onto the server – while also improving the implementation of our (pretty much fully cooked at this point) new fishing minigames and systems. Domestic animals, meanwhile, are in bug fix mode – with additional attention being given to their pathfinding and around animal escapes.
While all this is ongoing other team members are beavering away raising the quality of the game in smaller-scale ways, so let’s look at a few of those fun nuggets now.
CURRENT AFFAIRZ
One way to give our towns and city more personality is to provide more written literature for you to loot and peruse – whether it’s a fully readable lore item, or simply an interestingly named (if non-readable) book found in a house you loot that might deepen your understanding of the life of the zombie you just bludgeoned downstairs.
Build 42 will feature a range of newspapers, each with a final three or four issues to pick up and read in a separate ‘written content UI’. They will contain news articles about the initial build-up to the Knox Event articles, everyday life articles, and even a few breadcrumbs as to what’s really been going in.
This will also include smaller scale publications: like ‘town news’ pamphlets for the smaller settlements that don’t quite warrant a full-scale newspaper.
Beyond this we’ve also had a lovely man called Stuart taking all our teeny-tiny map logos and up-rezzing them into more suitable forms for both in-game and irl usage. Their first use within the game are ‘local business’ fliers that are also readable via the same ‘printed media’ UI.
Clearly there’s not much zed content that can be made from these, but their gameplay role is to mark up interesting locations (and sources of potentially helpful loot) on the in-game map – a function that we feel will be especially handy for new players.
We feel that finding a flier that’s a membership advertisement for, say, the West Maple Country Club and revealing it on the player’s map will give an interesting reason for new players to leave town and explore – and likewise a job advert for McCoy logging and a corresponding map reveal might flag a decent place to potentially find an axe.
There’s SO MUCH stuff on the PZ map, and we wanted a way to direct people to some of the locations we’re most proud of. Especially those lost in the vastness of Louisville.
PERSONAL READING
We also really want you to feel interested in the deceased people whose homes you are raiding, and perhaps even saddened by their demise. From this we’ve also added a LOT more texture to the names of some of the books, comics and magazines they’ve been reading – and indeed the photographs they’ve been tenderly keeping in an upstairs drawer.
The hope is that when the spawn tags on these 1500 different interestingly titled books/mags (non-readable) combine with the way we guide our RNG looted spawns work then neat little stories will form in your head about the sorts of folks that lived here up until recently – and perhaps who you just left dead on the kitchen floor.
Perhaps they were reading a book called “Long Term Illness Management” by Laura Paloma, which shines a light on the medication in the bathroom.
Perhaps their love of military history ties in with the guns, or maybe it’s satisfying to know the zombie in the garden used to read trashy thrillers.
Likewise finding photographs that aren’t simply called “photograph” in a cupboard won’t do much to you, but instead seeing “Photograph of a Smiling Family” or “Photograph of a Wedding Car Arriving at a Church” will hopefully do you some emotional damage. We’ve got about five hundred of these, and they’re already bringing some amazing (doomed) colour to the average loot run.
We’ve also got six new TV channels, a new radio station, and 75 new VHSs ready to mix into the game (all written by Pat_Bren, who’s also the architect of all the above alongside coder Blair Algol) so really feel that B42 will broaden the narrative possibilities of the game significantly – while also neatly tying into the gameplay in many instances.
Some other changes that are tied into the above:
The books, magazines and comic books that now have individual titles, will also be persistent. Instead of disappearing after being read, there will be a cooldown period that dictates how much time must pass before the character’s moodles can benefit from re-reading said item.
In conjunction with this revision of literature items, we’ve gone over the mechanics of the Illiterate traits. Illiterate characters are unable to read literature items, but in some cases, such as Comic Books, Catalogues, Photos, and “certain magazines”, they will be able to enjoy looking at the item instead of reading it. In build 42 Illiterate characters will also be unable to read or write player generated notes using sheets of paper or notebooks, write notes on maps (although they can still put symbols on them), read the text on the annotated map items, or understand the nutritional information on packaged food.
We’ve done a common sense implementation of needing light to read. If there is insufficient light in a character’s square, and they don’t have an active light source, they will be unable to read (or “look at” for illiterate characters) printed matter, unable to read nutritional information on packaged food, and unable to open maps.
MEN WITH VEN
Part of the above has been in ensuring that the right newspapers and pamphlets spawn in their appropriate towns, and as such we’ve mixed in a new municipal region system that tells the game’s systems exactly what area of the map each location in the game is located within.
We’re also using this for some new vehicles owned by local businesses, that only ever spawn in their hometown and associated region.
It’s generally not a known gameplay function, but for many builds now we’ve had ‘profession’ vehicles on the map that are owned by carpenters, metalworkers and electricians – all of whom *do* leave tools in their vehicle overnight.
We’ve never flagged this up, however, which has been a missed opportunity – as for players searching for particular items these are very much mobile treasure boxes. Therefore Martin has created a variety of new vehicles for different businesses to better communicate what sort of special loot might be found inside.
We have vehicles for different utilities, nationwide businesses and local businesses – many will only spawn in one town, and some are unique in that only one instance of that vehicle will spawn in the world.
We know that PZ players love collecting vehicles, especially in multiplayer servers, so this should spice up the hunt for the vehicle collectors. This regional system, and unique vehicle system, is set up to be easily used by mods also.
GASP. WHEEZE. PANT.
Regular readers will know that we recently had our very own recording sessions in a studio with microphones, actors and everything.
We had various missions to accomplish with this – a primary one being to obtain recordings of a male survivor and a female survivor huffing, puffing, getting hurt, climbing over things, sneezing, coughing and even shouting “hey!”.
The first fruits of these can be heard below and (while subtle when added to the mix and heard in isolation from the way the game sounds currently) we believe that they’ll add a lot to your overall experience once they land in 42.
(PLEASE NOTE: This is a work in progress. Volume and balance levels are initial ones and will change, likewise some recordings sound better than others and we haven’t cherry-picked the ones that work best yet. We think that the exertion noises during heavy combat could certainly do with a boost.)
A changelist of all our pre-release and post-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. Experienced games industry gameplay coder and want to join Team Awesome? Jobs page here. Project Zomboid strongly discourages the unlawful dissemination of classified military intelligence.
Hey all! So we’re still not at the point of being able to show anything substantial from the crafting overhaul, however we thought we’d talk about a few topics that are relevant to our current work and give people a bit of insight into where we’re going, our ultimate goals and the design challenges we’re facing. This will be very much a stream of consciousness post, taken from a chat within the crafting team, so forgive if it lacks direction but we hope it’ll be interesting!
Inspiration
One of our biggest inspirations in terms of what we’d like to accomplish with Zomboid ultimately in terms of crafting freedom and possibility, is to provide similar creative and community experiences found playing the extensive tech progression modpacks for Minecraft. Several of the core crafting dev team have periodically dived into Minecraft modpacks for a good chunk of Zomboid’s development, and spend many hours grinding away decorating our bases, building wonderfully cool machines, laying down pipes, wires and conveyor belts and whatnot to double our ore output or finally get that new power system to power our base. The possibilities we could bring to zomboid have tickled at our brains for many years in this area, and we’re excited to be finally exploring them.
Obviously though, Zomboid is a post apocalypse survival game and it would be rather silly to say the least if some zombie apocalypse survivor was building a nuclear reactor or casting rituals to open portals, so this shouldn’t be taken as a literal 1 to 1 inspiration. What we’ve taken away from our experiences is more the overall spirit of building, of expanding, of obtaining materials, of navigating a very tall tech tree formed from the availability of resources, that will finally allow you to explore a new tree and open up new areas of gameplay to the player, rather than the literal experiences of making ore crushing machines, nuclear reactors or ender teleporters. As much as we feel Zomboid is an extremely deep game, it’s never hit the bar we’ve wanted in terms of this area of gameplay.
Mixed in with that is the heavy focus on roleplaying, especially with multiplayer or later with NPCs, our ultimate vision is somewhat parallel but different to the experiences in Minecraft, with more of a focus on realism and plausibility, as well as leveraging skills, professions and learning to make the experience more cooperative and interesting in a roleplay environment (though solo players need not worry, as NPCs will fill this gap too, and before them we’ll make sure to adequately provide sandbox options, and likely the builder main menu mode, to not lock this stuff out of the single player experience).
Extensivity vs Believability
As we stated a while back, our aim with the crafting overhaul is to provide a framework for us to expand the crafting possibilities within the game massively, to allow for a long post-apocalyptic settlement to create everything they need without relying on looting, to elevate the need for players to ever need to reset their worlds unless they want to, while crucially gating all these extra possibilities in a way that makes sense — so you don’t get the odd situation where your burger flipper has wacky esoteric crafting recipes involving bee’s wax or crushed limestone popping up in their crafting panel that seem odd or ridiculous within the context of a zombie survival story.
The best example of this would be for example using metalworking to make a spoon. If you’re a metal worker then you should be able to make a spoon. This is a thing that makes sense in terms of what someone with metalworking skills could produce should they wish to. But a spoon is a weird thing to see pop up as a crafting possibility in an urban environment filled with spoons.
We’re currently planning on how recipes and crafting possibilities will be presented to the player, how to lock them intelligently behind professions and traits, and more crucially nest them away sensibly within a better interface, while providing enough opportunities to learn them to the player so they don’t end up doing generator manual style hunts around the map for many hours. This is not yet set in stone but ideas are forming on a new interface for crafting and building that would provide this stuff to the player in a much more natural way, where we can provide a huge amount of options without drowning the player in recipes that seem completely useless or weird within their current situation.
Grind vs interesting multi-stage crafting
Another challenge we’re still nailing down is finding the best balance between extensive and interesting crafting of items, involving multiple stages, potentially multiple methods, multiple skills, maybe multiple characters, but not crossing that line where crafting becomes tedious or frustrating, or you get that sinking feeling looking at the steps you have to complete that disincentivises you from undergoing it. It’s a hard balance to hit, and in our first ‘more zomboid / realistic’ pass of the tech tree, we’ve probably gone a little far over the tedium line in our desire to honour zomboid’s realism.
We’re currently in the process of consolidating some of these steps, still retaining multi-profession or multi-skill or multi-step processes to keep crafting interesting, while removing a few steps that may make for frustrating or repetitive gameplay. It’s for this reason we’ve been a little sheepish about providing a look at our current crafting trees at this time, as we want to make sure we strike this balance first lest we worry people that crafting is going to be an unforgiving grind.
Learning/Skill Grind
Another area we’re looking into heavily is the process of learning new skills. While we want to retain the process of a player ‘doing’ stuff to level up in that skill, with the vastly expanded skill list that 42 will be introducing, we want to come up with other ways a player can level up that don’t involve building 1000 things after reading a skill book. For one – a skill book may not exist if you’re generations after the apocalypse, or if you’re playing on a blank wilderness map instead (something we’d really like to be a possibility, and our test case to make sure our crafting overhaul is comprehensive will be making sure the player literally cannot rely on looted items).
We’re still coming up with ideas of how to approach this, but certainly the idea of learning recipes for items or buildable tiles as well as gaining skill xp from observing other players craft them is something we’re exploring heavily. Again, NPCs will fill this gap for single player, and in the meantime we’ll ensure that builder mode and sandbox provide the tools necessary for solo players to get access to this content without other characters to learn from.
Another aspect of this is that with much more expanded profession and trait possibilities, we hope to provide much meatier skill bonuses from professions, allowing players to come into the game a lot more capable than before at these specific areas of the game, given that there will be many more they are not capable at.
In addition, we’re exploring the possibility of linking recipes and professions that share common skills or concepts together, allowing characters a head start at performing crafting when they have picked up relevant experience in similar areas elsewhere.
Modding
So here’s where we can have our cake and have eaten it. Making a nuclear reactor seems a very silly thing to have in zomboid, but where the modding scene is concerned, hopefully people can go wild here. If a wilderness map becomes a viable way to play, the game no longer reliant on looted items nor a zombie threat to make it interesting (particularly in a multiplayer setting), then modders aren’t really constrained by the zombie survival theme of the game any more, and could extend our tech tree way beyond what we provide to allow for a much more abstract ‘tech em up’ survival sim providing factorio and minecraft style experiences along with multiplayer or NPC driven roleplay. We’ve kept all the power of crafting within the familiar scripts and lua that people are used to, expanded with item properties and traits based on crafting skills, multi-tile constructions for crafting stations or machines, fluid, item or power transmission for doing logistical networks, and can only imagine the possibilities will balloon dramatically as soon as our incredible modders get their hands on it.
This is where we imagine zomboid could become an even more exciting modding platform, and in no way a small aspect of why we want this framework to exist in the game as we’d be extremely excited to see what modders will bring to the table (as we always are).
So what will you be crafting?
Lots of stuff. While it may not be relevant for a player running around in Muldraugh in the 1990s, and while a burger flipper may not have this knowledge, there’ll be professions that emerge in the years following the apocalypse to cover crafting the majority of non electrical items in the game currently (though with perhaps a more homemade aesthetic), tanning leather, making glue or soap, spinning wool, or making cloth to make clothing, dyes to dye that clothing, bowyers to make bows for the hunters, growing hemp to make ropes, glass-makers, stone masonry to finally make those zombie proof walls (again, we need to think further on the design here to not make this too OP), thatched roofs. Basically everything to make a thriving post-apocalypse town, provide much more opportunities for creative and aesthetic building mechanics, building paths, fences, walls, and the production of goods to keep that town ticking over and potentially trade with others.
In case anyone is not familiar with our plans regarding post-apocalypse professions, this is the concept that in the years after society collapses, we would slowly retire pre-apocalypse professions that have ceased to be relevant in the new world, and bring in new ones that represent professions one would like to have in a more savage and technically regressed post-apocalypse. Single player and multiplayer alike will allow for a player to start much further into the Knox timeline than ‘six months later’ and provide a vastly different experience, though those who want the current zomboid experience will not be impacted beyond a larger selection of crafting opportunities. Obviously we’d be looking to give the world a much more eroded aesthetic if you were playing 100 years after the Knox event, for those hoping for a more Last of Us style degradation of the world over longer time spans, but it’s unlikely we’ll address this before 42’s release as we have a lot on our plate already.
Hopefully this gives an insight into why this has taken so long to get the systems in place, and the design challenge of making all this work within the game.
It’s not clear whether we’ll have literally everything we’ve designed in come first unstable release of build 42, its very possible we’ll get the base stuff in there, and then fill it out over numerous releases during a long unstable b42 release cycle, as there will be a lot of tile and item artwork required, but we want to get the core systems in place and enough crafting potential to elevate the late game dramatically before we get it out there. We need to make sure the foundations are in place first however, as we’re walking into unfamiliar territory and are as always ever mindful not to disrupt the things that make zomboid what it is.
It’s not clear whether we’ll have literally everything we’ve designed in come first unstable release of build 42, its very possible we’ll get the base stuff in there, and then fill it out over numerous releases during a long unstable b42 release cycle, as there will be a lot of tile and item artwork required, but we want to get the core systems in place and enough crafting potential to elevate the late game dramatically before we get it out there. We need to make sure the foundations are in place first however, as we’re walking into unfamiliar territory and are as always ever mindful not to disrupt the things that make zomboid what it is.
A changelist of all our pre-release and post-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. Experienced games industry gameplay coder and want to join Team Awesome? Jobs page here. Title image taken from Abby on Steam
The general pattern for 42 dev is that we’ve got four main pillars of Build 42 – all of which are the ‘big stuff’ and the fundamental large-scale tech improvements.
These are: moving much of the MP system server-side to give servers more control and less hackability, introducing our deeper and more expansive crafting systems, bringing animal life to the Knox Event – and engine improvements to optimize, give far greater height/depth levels to our map, and to provide more realistic light and darkness for your survival adventures.
These are the things we need for release, while other things in development by our dev partners (or staff assigned to more general improvement) are seen as ‘nice-to-haves’ – and some may even fall into patches of 42 when things start to shake out a bit. Going through the ‘pillar’ features though:
The lengthy first stage of the MP work (transferring player inventories to the server) is now over, and transplanted very neatly over into the internal test build – so now our MP coders are delving deep into stage two. This will see all operations of player inventories (building, recipes, foraging etc) also move into server control, overview and deference.
In terms of the deeper and more expansive crafting – as we mentioned last week the code systems this is all based on has now been merged into the internal test build and as such much of the last week or two has been centred around fixing the longstanding recipes and functions that the new stuff has broken. We’re pretty much back at a standard of ‘operational’ on this, or will be after a commit being made tomorrow, and this too has been a process that was a little smoother than expected. That all said, obviously that has been the focus post-merge, so while progress has been made since its integration, the majority of work has been bug fixing and not much to report otherwise. The team are starting to discuss the next step post merge, and looking forward to it immensely!
Animal and animal husbandry meanwhile (or at least the cows, pigs and sheep – chickens are still a little haphazard) are approaching a stage where they’re fun to play around with for extended periods in SP. Following on from the merge of the music system detailed below into the internal test build, they also now moo, oink and baa which has given them a lot of extra life also!
Finally, in terms of the tech upgrade we’re mainly at the bug fixing and further optimization phase with the chunked rendering and variable height systems, but it’ll likely be the sort of thing that’ll spit out bugs and countless ‘betcha didn’t think of this scenario?’ gotchas for some time to come, so its not clear when it’ll be merged into main. As said last week, it should be mostly smooth when the time comes though.
OTHER STUFF
Next up, some of the other items being conjured up for 42 either with our development partners, or the smaller cool stuff that our own devs have been working on in the background.
On top of the below we’re almost wrapped on stuff like fishing, work on the farming revamp continues and is having new crop assets built for it, and clearly the map expansion continues apace and will likely be a part of a/the 42 release also.
AWESOME ADAPTIVE MUSIC SYSTEM
First up for discussion is 42’s new adaptive music system – a long term plan that’s now coming to a fairly awesome fruition.
As long term players will know, our OST came from the musical brain, delicate ear and dainty fingers of Zach Beever – one of the most important people we came across in the earliest days of Project Zomboid and whose work many of you have heard over thousands of hours of play.
What Formosa (formerly Noiseworks) have been up to more recently is taking the original arrangements and stems that Zach has provided to create variations of our beloved soundtrack that have variations of different intensities. The composers who have ably taken on this task are Armin Haas and Matthias Wolf – both of whom appear to have nailed it.
Players have experienced the first stage of this system in build 41, with action music which is specifically when players are in combat with the undead.
For 42, this music has then been worked into a new adaptive exploration soundtrack. Based on in-game events, a music intensity parameter is adjusted and the soundtrack adjusts accordingly as well. The aim is to have the exploration music reflect the more exciting times as well as calm moments in the game in a better and more organised way.
The best way to explain this is in the following prototype video. As ever this is WIP! We’ve also cropped it slightly oddly to hide some of the debug magic that lays bare some of the magic, so please forgive the character not being centred on the screen!
Sound up plz! (obv!)
We’re only working of a very basic set of events at the moment – coming across new houses, opening doors, vaulting fences and the like.
We will be adding lots of different game events that will have big and small impacts on the intensity parameter – the discover of ‘special’ buildings, finding useful loot, noticing a survivor zed etc etc.
The system will undergo lots of further fine-tuning, and will be adjusted further from the version seen above that went into testing only yesterday.
Also happening this week in Sound World has been the recording sessions we’ve had arranged to create ‘body noise’ puffs, pants and pains that we want to play on top of your character’s on-screen manoeuvres.
We’ve also used this opportunity to record many and various experimental dialogue lines that could potentially be played (very, very muffled) over our TV and radio shows in a Simlish kinda way – and likewise automated announcements that may well still be playing in locations such as malls and key Louisville locations even after public zombification has occurred. We’ll have more on this in the next blog, most likely.
UNDER THE STARS
A few notes on outdoor sleeping. First off in 42, sleeping bags and tents (when packed) can be attached to appropriate backpacks. It looks quite nice and fun, especially when attached to a survivor zed.
Next up, we’ve made some general improvements to outdoor sleeping. As such tents are now both containers and beds. They are not good beds, mind – and using a sleeping bag by itself certainly isn’t either.
You can put a mattress or an un-packed sleeping bag into a tent to make it a better bed.
You can also use a pillow to modestly increase the quality of a tent bed, including reducing the chance and severity of neck pain. This applies to all other bed as well, including car seats.
You’re protected from the rain when sleeping in a tent, and the tents look a lot nicer than they used to as well.
GOING UNDERGROUND
Given as 42 will increase our height limit (and more particularly our depth limit) our artists and mappers are currently working on new visuals that will better suit locations beneath the ground of the Knox exclusion zone.
Here’s a fun example of the sorts of decoration that we hope will give added flavour to your new life underground, and hopefully bring along some Resi vibes with it.
A changelist of all our pre-release and post-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. Experienced games industry gameplay coder and want to join Team Awesome? Jobs page here. Title image is from D4CR33P3R on Steam. That’s all for this week.
A brief and more hastily thrown together Thursdoid this week I’m afraid, as we’re currently at a messy but exciting turning point in b42’s development which will be setting us up for the remainder of development, and rather than try to scrape together content for this week’s blog while we’re in the guts of it, we would rather save what we have for a much more exciting Thursdoid down the line when things are also a little less hectic.
However, we’ll explain the situation this week to give people a better idea of what’s happening.
Firstly, months of multiplayer reworking has made its way into the main development build, which is our efforts toward moving a lot more of the codebase to being server authoritative, particularly with a completely server side inventory system, to aid in making future PZ builds a lot more hack proof.
Secondly, the core systems of the massive crafting rework are also being merged into trunk, ready for the wider team to start building on it for the much anticipated deep crafting trees and new post-apocalypse professions for our overhauled crafting systems.
The crafting overhaul is quite huge, changing how recipes and items work on a fundamental level, and will require some work to port over existing items, along with any that have been added elsewhere during the course of the new system’s development, and as such touches on many areas of the codebase and is a difficult one to integrate.
As such, things on the main branch are in a bit of temporary disarray as these big systems get integrated into the main line, it’s going to be a busy week as the team bugfixes and gets the development build ship shape to start pushing forward with all the integrated code toward getting it to a point we can start looking to push it out for public testing.
This new systems allows for:
Multi tile ‘machines’ and crafting stations
Support for networks of items, power, liquids or gases (ultimately a building’s power, heating and plumbing will use these systems for example)
For items both crafted and looted that have varied statistics and unique properties that alter how they function beyond the simplistic ‘condition’ of existing versions of the game, and providing much more deep variety to gameplay to crafted and looted items.
The recipe system has become much more in-depth and customizable allowing for much more interesting crafting processes and possibilities.
Unfortunately this also means some work in getting all this cool functionality pushed from its branch into the mainline, but this has to be done and once it is the situation going forward will be a lot more exciting.
Once this is done, and we have a large portion of the code team contributing to building out the vast crafting trees that have been designed, we should start to have some exceptionally cool stuff to show off in future Thursdoids as we start to feature the crafting overhaul (something quite a lot of people are most excited about) a lot more on the run up to build 42.
We’re aware that on the whole this aspect of b42 has been shown off in Thursdoids the least, mainly because the work done (outside the cool fluid systems and the crafting station vid shown a while back) has been mainly code for foundational systems to allow the crafting overhaul to reach the heights we are aiming for, which in itself facilitates extremely cool stuff but is rather hard to blog about in itself.
We’re excited that its reached the point where we can build on those foundations and hopefully begin to show off what we have planned. While build 42 is still a way off, we’ve reached the point we were excited to reach, where we can start actually filling out the tasty and much more bloggable content that will make up the crafting overhaul.
Without re-treading over old words, you can read an in-depth description of our crafting plans here.
Along with the new crafting systems, animal husbandry and hunting, the extensive map expansion, and the multiplayer rework–the only other branch left to combine into the build 42 main vein is the tech upgrades that we’ve detailed over the past few months. Including basement support, big optimizations to tile rendering, new lighting propagation, and…erm…. this…
The tech upgrades will likely be the last to be integrated, however will be the easiest once the times comes since the systems it changes, for the most part, do not overlap so much with ongoing development on other branches.
There has been some other cool stuff in the pipe, as hinted at in the screenshot at the top of the blog, but we’ll discuss them in more detail next time!
That’s all for this time–apologies if its rather thrown together this time but we’re really trying to push towards getting this stuff integrated so we can start showing off the cool crafting stuff we have in store for build 42 in future.
Over to Aiteron for the latest on his fishing additions.
“This week I’ve mainly been working on a unique random seed that procedurally determines where groups of fish will be located in PZ’s waterways, the radius of the different zones, and the base number of fish that could be found within them.”
“You’ll see this through splashes of water, which will depend on the groups of fish. So, the more fish in the fish group area, the more splashes on the water’s surface of the water. As such finding the best place for you to fish will be a big part of the system’s revamp. Each groups will react to the noise by the noise that goes on in the world too. So, if there’s a loud noise then the fishing circles will stop being active for a certain amount of time.”
“If you craft some chum, meanwhile, you’ll also be able to attract a group of fish – for a limited amount of time. In the following video you’ll be able to see groups of fish (red circles) and a chum area (green circle)”
“The team at Formosa have also been working with me to create new SFX for the fishing revamp, and I am very pleased with the results so far! We are also working on different sounds for different ‘reeling in’ speeds.
MAP EXPANSION
We are at a key point in the map expansion in that the work of our various mappers has been merged together, and our test team are roaming its wilds to provide playability and design feedback. They are patrolling its highways and by-ways, and feeding back on anything that seems amiss on a broader scale.
We’re not at the point at which we can do full-on testing (there’s still a lot to do, to be polished, and have signs erected and whatnot) but we are at the point where we can go on a fun road trip.
SOUND STUFF
Formosa are up to quite a lot at the moment. A big part of their work is in improvements to the music escalation system, which we’ll go into detail about next time, but suffice to say that action music won’t carry on for as long as it does post-zed-escape in B42.
We are also in the final stages of organising a recording session in which we’ll be having some real life actors (in Hollywood! In America!) to puff, pant and make ‘I am hurt’ noises that’ll make our survivors feel that little bit more real.
New SFX have also, meanwhile, been delivered for pigs, piglets, chickens, breaking furniture, the emergency broadcast, cork pops and much else besides.
A lot of chickens have also been attacked with hammers.
(We will improve visuals on this sort of attack too, so you’re not whacking air)
SURVIVAL FUN
The Blair Algol furnace has also been burning bright recently, alongside his farming revamp work that we’ve discussed in former blogs. So here’s a general show of the new camping items that’ll be found in places like the game’s different camp supply shops come B42.
Seen here are matchboxes, insect repellent, tackle boxes, New duffel bags, compasses, magnesium strikers and a fire-starting block.
New Literature Titles and Names, so it’s not all generic non-titled books. (These will still act as consumables rather than items for now, however)
New Food, drink, snack names and a new eating animation.
New police duffle bag
An example of how to use the compass
Campsite scene showing an array of new survival gear items for the casual camper and general survivalist
New tent function, which no longer requires RMB and now places and gets picked up like a normal decor/furniture object
New tent storage feature associated with the above change
LOVELY LITTLE ANIMALS
LOVELY LITTLE DEAD ANIMAL
:’(
FINALLY
Just to underline, we’re still not at a point at which a 42 unstable release is (at all) imminent. There’s still loads to do with our primary advancements to engine, online multiplayer, crafting and whatnot.
We see people thinking it’s about to land in comments sometimes, so if you see that too then please direct them here. Thanks everyone.
A changelist of all our pre-release and post-release patches since the 41 beta begancan be found here. The Block of Italicised Text would like to direct yourattention to thePZ Wikishould you feel like editing or amending something, and thePZ Mailing Listthat can send you update notifications once builds get released. We also live on Twitterright here! Our Discord is open for chat and hijinks too. Experienced games industry gameplay coder and want to join Team Awesome? Jobs page here. Today’s fish is trout a la creme. Enjoy your meal.
Hey all, let’s chime in with some of the feverish work being done in the musty basements and damp holes in the ground of the Knox Event. First off, some scribbles from the engine room.
B42 ENGINE
To catch up and recap, the main highlights of engine improvements for build 42 are as follows:
A flexible per chunk 32 height that can be different in each chunk, allowing parts of the map to be at 32 level height, where others in theory go from -31 to ground floor.
New lighting propagation system that has light bounce off walls and leak through windows, doors and other spaces more realistically – allowing for more natural ambient light effects and getting rid of those room based lighting issues.
The ability to have negative coordinates on x and y, thus opening up map expansion directions in the three previously missing directions.
New chunk based rendering using a depth map to vastly optimise drawing of the game.
It’s this last item that we’re going to discuss today.
How 2D games have historically worked is like a deck of cards being dealt: each image is placed on top of the other to construct the scene.
This is terribly inefficient, especially in terms of an isometric game like us with a crap-ton of tiles, tile overlays and so on. The rigid order that the sprites are dealt (so closer ones obscure further away ones, leaving the closest one on top) means that your GPU is unable to optimize how it’s all drawn.
Not only this, but every time you deal a card on top of another card (a zombie in front of a wall for example) then that wall is forever ruined by the zombie’s pixels: the only option is to draw the entire thing again, tile by tile, for the next frame.
Can I shock you? In the past, people have complained about PZ’s fps.
A common thing we hear is: ‘“Well, my PC runs Skyrim/Witcher 3 just fine” but sadly this generally overlooks the fact that GPUs are built and optimized for 3d rendering. A game with this much detail that doesn’t utilize 3D rendering has actually got a tougher time ahead of it than Skyrim or Witcher in terms of making your GPU happy.
We also, on top of this, have extremely expensive scene construction CPU time too. End result: a really a bag of nightmares.
Now, in a 3D game you have a depth buffer. This is an offscreen rendering of the scene that tells it all how far from 0->1 each pixel is:
This is really handy, since the deck of cards goes out of the window. You’re no longer having to draw everything from the furthermost thing to the closest, and they don’t have to be ordered strictly as they get closer to the camera either.
With a depth buffer you can choose whatever order you want: draw all brick walls first, then all characters hairs, then all grass, then all… you get the idea.
Outside transparency, which causes issues, you can draw anything in whatever order is most convenient and most optimized for the GPU. Not only this, but you don’t have to put together the 3D scene polygon by polygon every frame: you have a cached mesh probably already on your GPU memory sat waiting for the next frame, and even if the character turns or moves that mesh is still valid to use.
Zomboid? Not so much. We have to draw every individual godforsaken goddamned tile: every bit of lighting, every bit of grass, completely from scratch, every frame, every time. And when you zoom out? Wuh-woh shaggy. You’re now asking for trouble.
So for B42 we decided to implement a depth buffer!
This was a bold proposition since we have no 3D (outside the characters and items, of course). Our ‘3D’ is otherwise a faked perspective drawn by the artists drawing the tile: it’s an illusion.
However, with some perseverance, we managed to generate a serviceable depth map of our usual faked isometric tiles:
Note here that when you look carefully at the floors and walls in this, they are not completely smooth. Each tile is still just ‘a certain distance away’ and it all behaves just as it does now: a deck of cards being dealt every frame, where one thing is either below or on top of another. However we no longer have to draw them back to front.
We’ve all seen this faked isometric drawn into the tiles cause weird visual glitches too many times to count, where the illusion of the 2d tiled world just breaks in ugly ways.
So we went a step further and calculated the fake 3dness for floors and walls, thereby making the depth map peachy smooth:
So where does that leave us?
We’re dealing the self-same deck of cards we always have been (these are still faked 2d isometric tiles and always will be) however we can now say ‘the left hand bit of this card is actually further back than the right hand side of this card’ and objects placed on them will represent this as if they had actual 3d depth.
For walls and floors, at least, from this fixed perspective we suddenly service them with the GPU as if they are 3D objects: which means that not only do we get rid of the issues with the fixed tile ordering, but we can say ‘this specific part of this tile is further back or further forward than the rest of it’. So we can choose to put that part of the tile in front of / behind the character differently to other parts of the same tile.
This will make a big difference to immersion on its own, but then we went a step further. With the new depth map, we opened up access to that amazing optimization trick we mentioned before.
On the dev branch for this work, we can now just draw a chunk like this tile by tile on one single occasion.
All those hundreds of draw calls as the cards get slammed down from the deck now only need to happen once as we ‘construct’ the chunk and it becomes its very own ‘tile’.
Within this we bake the depth information into the depth buffer. So, despite this just being a single picture, we already have all the information hidden behind it that’s required to correctly place any player, zombie or placed inventory item anywhere on this chunk (even inside the building, or partially obscured by any part of it) – and this can be done AFTER drawing it too.
The only times we will ever need to update this chunk and redraw those tiles is if the lighting from time of day changes, or if a naughty zombie dies on it or a player picks up an item, drops one, opens a door or otherwise.
(And oh yes, zombie bodies and dropped inventory items will be cached on the chunk too! With depth! So in terms of performance this current resource-hog will be near enough completely free)
So now for every frame the chunk above, the charming apartment balconies, becomes the equivalent of a single current tile. One single draw that’s not that much slower than drawing that one single tile in the current build, in which we have to have 8x8x4 tiles getting drawn.
The work needed to draw each tile on that chunk only needs to occur every so often when it’s updated in a way that invalidates the depth or changes the tiles visually, or when it first becomes visible. And if anything invalidates that chunk that it requires drawing in full, it’s only that chunk that needs redrawing.
On top of this we have that depth buffer still for every tile drawn, and beyond that the walls and floor tiles have additional faked smooth depth applied to them.
That’s where the magic happens: weirdly the above long-haired hippy character was drawn AFTER the fence tiles were. Due to the magic of the new system we happened to have the extra depth information and were able to throw away pixels of them being drawn seeing as there was something ‘closer’.
As a cumulative effect of all the above: this is how we accomplished 4k res, max zoom, 500 fps in this video we posted a long while back when we were prototyping all this.
(Though please note we expect, in practice, it won’t be this high: the lack of zombies and various other factors make it not completely representative of the full game – but it’s still a good indicator of how vast this optimization will be.)
Next Steps
So the big issue here is that walls and floors are the easy part.
It’s very simple to calculate how ‘deep’ a particular pixel of a wall should be, use a shader to put that depth in, and get smooth continuous depth that the player won’t clip through like it’s a 2D billboard facing the screen.
EP, however, has recently been experimenting with some stuff that’s pretty cool.
We must make a big disclaimer there that this is very much, as stated, experimenting, and we can’t say for certain what is shown here will be in b42 as shown.
He made us promise we made that clear before we speak of it at all, but it’ll give you an idea of what we’re trying to do and the cool ideas he’s been playing with on his travels.
None of the 3d shapes will end up in the game world while playing, but the resultant extra depth texture (seen in the bottom left) can be used with the depth map system to make the characters interact with it as if those 3d shapes were there.
As you can see, here the character intersects with the (remember, completely 2D) tile as if it were a 3d object itself, with full gradual depth.
As you can see, here the character intersects with the (remember, completely 2D) tile as if it were a 3d object itself, with full gradual depth.
And yes, this is the main thing that’s been holding us back from sitting in chairs, lying in beds etc. Modders have done great things providing this in the capacity that’s feasible in the current engine, but are still limited from sitting properly in chairs that obscure the character or face in different directions. We want a proper solution that’ll work 100% when it comes to the main game.
Finally, another caveat.
There’s no way in hell we’d ever be able to do this for every tile in the game, especially the more complicated ones or ones that were drawn (by hand) by the artists that may not actually follow strict laws of isometric in actuality.
While this tech can be used for some nice stuff in future its primary and only feasible short to medium term use is as described above.
Before we start seeing the inevitable “omg PZ will be able to rotate camera RTX mode when??” this is still a complete MASSIVE gulf from anything resembling true 3D.
Trust us: we’ve already ummed and ahhed and experimented with all this tech for a long while now to firmly to know where our limits are and put our boot down on those kinda thoughts.
But this does mean that we should be able to deal with all the main simpler structural tiles that make up the main geometry of the maps, and will provide a much more solid feeling world despite it looking very much the same as it always has – however, with the new lighting propagation system it shall look that bit better of course!
We now return to your scheduled programming.
FARMING
Next, over to the redoubtable Blair Algol for the latest on agricultural matters.
“The current state of the farming rework is that the current dev phase of new plants, vegetables, herbs, houseplants and associated changes to farming mechanics, are nearly finished. I’m now on fine tuning and polish.”
“The sticky matter in the fine tuning and polish, however, is that my mission has not only been in a more realistic and better balanced farming experience – but also to provide a more folksy, relaxing and productive-feeling gameplay loop that fully utilizes the new animation capabilities of modern Zomboid. So this is actually the part where I need to roll up my sleeves and do the heavy lifting.”
“I had been waiting for Aiteron’s splendid fishing rework to get into a state where it was possible to build off it, so that both the interface, and interactions would be as consistent as possible; as well as with the RJ’s animal rework, and Eris’ foraging interface. We’re really trying to make the systems and experiences in PZ more consistent as a whole.”
“But the goal is that farming should serve as a fun, peaceful minigame, albeit with challenges as we are making a survival game, but that can be an oasis of calm in the chaos and death of the PZ apocalypse. One fun little feature that I’m adding in that regard is using Ladybugs (EUROPEAN TRANSLATION: ‘Mister Ladybirds’) as pest control.”
“I should point out that, in testing, even with the longer growing seasons, and new pests/maintenance, the majority of plants would still survive until harvest without any major issues. Yields, however, might vary.”
To summarize the changes to farming, we have already implemented the following:
Crops now take a realistic amount of time to grow before they can be harvested; this can be adjusted to suit the player or server in the sandbox options.
Crops also feature realistic growing seasons, where there’s optimal months to plant your crops, as well as ones where they are doomed to failure; this can be disabled in the sandbox options.
Attempting to grow anything other than houseplants indoors will also be doomed to failure; this also can be disabled in the sandbox options, and, when the new lighting systems are implemented, then a realistic greenhouse system could be explored, but don’t take that as a guarantee.
Slugs and snails are new garden pests, that can be dealt with using commercial slug and snail killer, or by learning how to make a slug trap out of an empty beer or pop can and some beer. Rosemary plants, and chickens, also serve as means to control slug infestations.
Plants will also benefit from regular weedings.
We have herbs, which have shorter growing seasons, and can be repeatedly harvested, and you can also propagate new herb patches with fresh herbs.
You can use potatoes, onions and garlic as seeds to plant new patches of vegetables.
I have added contextual actions using the combat stance in combination with the action key. When you have a hoe equipped, and are in the stance, you can use the action key to dig a furrow. Likewise, if you have seeds in your hand, are in the stance, and are facing a furrow you can use the action key to plant seeds. Likewise for watering plots. I plan on expanding this contextual action to include stuff like chopping down trees when an axe is equipped; removing barricade planks when a crowbar is equipped; etc. as well, for consistency.
There’s other cool, fun stuff that’s either being worked on, or being planned, but we don’t want to spoil everything.
FISHING
A visual update from the Aiteron keep net!
NEW ITEM STUFF
Back to the Blair hothouse!
“One of the other things I’ve been doing for Build 42 is adding a slew of new items – both functional and decorative – along with addressing inconsistencies and missing functionality with existing items.”
“One of the issues we’re attempting to address is ‘Bottleneck Items’. These are items such as Generator Magazines, Sledgehammers, Lighters/Matches etc. that, when a player has difficulty finding them, can make them feel like they’re soft-locked out of parts of the game. While we don’t want to remove the challenge of finding these items, we want to ensure that there are adequate opportunities for a player to find these items, even if they may involve some dangerous excursions.”
“In addition to ensuring that these items spawn in varied appropriate circumstances as loot, including in vehicles, we are ensuring that special circumstances such as the randomized stories and annotated map stash houses can spawn these items, and appropriate items will also be able to be foraged. As an aside, the loot tables themselves are in the process of being scrupulously revised and glowed-up, and should provide more fun and depth for the looting aspects of the game.”
“We made a couple of tools to collect data and feedback regarding this. I had already made LootLog, a tool similar to Aiteron’s LootZed, except that this one, when activated, logs all loot that spawns to the console.txt with details including the exact location where the loot spawns.”
“Fenris then took this concept to the next level, and now we are working with a tool that tracks and logs exactly how many items of each type spawn for each savegame; a permanent record showing exactly how many items spawn. Not only does this allow us to collect concrete data regarding item spawning, if you are worried that Sledgehammers, Generator Magazines, or Rubber Hoses aren’t spawning, you can check this record and see if they are.”
“In regards to Generator Magazines, with a high enough Electrical skill in Build 42, your character will be able connect and repair Generators without needing that magazine. We are also adding additional varieties of lighter and matches, as well as Lighter Fluid for refilling the classic lighters, and you will be able to use a vehicle lighter, open flame, or an appropriate stove to light cigarettes. There are also alternate means for players with the Smoker trait to feed their addiction to nicotine.”
“You can currently use many bottles other than the Gas Cans to hold fuel, which was one way we addressed that particular bottleneck (and yes, we are making sure that hoses for siphoning fuel are common), and we are also adding a new, larger, fuel container, alongside some other military-themed items.”
“We know that many players, especially roleplayers, like having themed items, and o some more themed bags, like the military duffelbag in build 41, are on the way. The new entrenching tool serves as a weapon and a shovel, and is folded when placed on the ground or attached to a belt. Several of the new knives such as the Switchblade and Butterfly Knife also have that feature.”
“The new canteen item can be attached to the belt, and will also showcase another new item feature that modders can make good use of: items with varying icons and models from their standard base ones. This allows us to add cosmetic variants without having to actually add new items, similar to how clothing works. I believe there are 4-6 variants of this style of canteen. All of this military loot spawns in appropriate circumstances, so if you want this new gear be prepared to have to go out and get it.”
“Another alternative Bottleneck Item is a P38 Can-Opener that you can keep on your Key Ring. Additionally, your character will be able to use a knife to open cans of food, although that will damage the knife and has the risk of injuring your hand. We also have fancy, expensive imported beer that requires a bottle opener, and the better wines, aside from Champagne of course, will need a corkscrew, or one of the better pocket knives to open.”
“There are many other new items and features: you can use a Pickaxe to remove annoying stumps and boulders; we added various vanity/prestige items and collectibles; players worried about having enough Garbage Bags for water collectors (another Bottleneck Item) will be happy to be able to find a box of them; and we made garbage loot a lot more fun and gross.”
MODDING
Next a quick update for modders.
Something else we’re endeavouring to do for Build 42 is to use Tags for item interactions whenever possible. This should make it easy for modders to add new items that work smoothly with a lot of the fun new stuff, and older stuff as well.
As mentioned above, for both mods and our own usage, we now have it so that modified item icons and models are “persistent”; when changed they stay that way when after quitting and reloading and we have made sure to have straightforward function names for ease of use.
We added some new events for mods to use, including: – OnZombieCreate and – LoadChunk
OnZombieCreate will allow modders to directly access zombies when they first spawn. Currently for many mods, using the LoadGridSquare event is the only feasible way to accomplish some goals. However, this often has an annoying impact on performance. What LoadChunk does is allow mods to access the chunks of the world map, which are a 10 x 10 grid of map squares, after they stream in. Afterwards, if the mod needs to access a square in that chunk, it can use code such as chunk:getGridSquare(x,y,z) to access said square. Practically speaking this means that the mod can use ~1% of the previous event calls to accomplish the same goals, for many of the purposes in which LoadGridSquare is utilized.
We have also moved around the order of operations when sandbox options are loaded and the loot tables are parsed, to make it easier for mods that use sandbox options to set loot spawn values.
ANIMALS
Finally, a quick video built from clips from the ongoing animals testing.
Tara for now, chucks.
This week’s hellscape from Stonmo. A changelist of all our pre-release and post-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. Experienced gameplay coder and want to join Team Awesome? Jobs page here. Apologies for the lack of blog last week, the blog writer had a fever and for much of Thursday was hallucinating that he was stuck in a Mexican hotel and GOG kept on phoning the switchboard to demand that we change the Knox Event lore.
How do all. Here’s a check-in from a few different Build 42 departments, that also occurs in the lead-up to the first in-person meet-up for the wider PZ team since 2018. We’re all aflutter about it (and trying to remember everyone’s real world names instead of online handles) and hope to have lots of good B42 chat in amongst the introduction of an international team to traditional Geordie culture.
Let’s pop into a few different areas, then – with the caveat that for a fuller B42 overview our last dev blog is probably a better destination.
FIRE
Work continues on the fire rewrite branch with the intention being to bring it up to a state in which it can safely enter our internal test build.
It recently came to mind that a lot of the ‘fire dev’ chat in blogs took place in the distant past, before we had to reshuffle and our current MP team became what it is today – thereby forcing flames into the sidelines for an elongated spell.
As such the guys have made a vid for us today that spells out some of the foundations of what is being done here, in terms of how fire spread, size and duration is governed – and indeed the sort of stats that lie beneath the hood that we can balance with, and that the community can mod with.
That’s the first half of the video: done with our old fire effects (which are too transparent and also on fast forward) so please take this aspect as instructional/iterative rather than a fait accompli.
The second part of the video then moves on to show our experimentation with fire visuals, working alongside our VFX artist friend Brian, as we work out different ways to make in-game flame effects better match our particularly coloured iso-world.
MP TEAM
As regular readers will know, alongside tidying up smaller multiplayer irritations as they go, our MP team are currently transferring player inventory actions over away from the client and onto the server. They have another three or four weeks set aside for the first stage of this: at which point we will the player’s inventory loaded from the database on the server, and the server always having an up-to-date player inventory – hopefully all working in sync with the progress bars, item move times and expected results you get currently.
At this point the second major part of the code work will be getting underway: having all the item manipulation occurring on the server side, and ensuring that the server no longer trusts clients (those sneaky clients!) so that stuff like item adding cheats are rendered defunct.
After this, clearly, there’ll be a heap of testing and such – but we thought the more technically-minded amongst us would appreciate a catch-up on where the guys are with it.
FISHING
This past week Aiteron has been working with the testers who’ve been reporting back on bugs and gameplay in the latest version of our revamped fishing – and has been largely working on an improved/experimental control system for a more chilled out and less button-holdy-tappy experience.
He has also been working with our aforementioned VFX specialist friend Brian, who has been supplying us with various splashes, bubbles and signs of water movement that will indicate the presence of fish, and also be a suggestion of the size of what lurks beneath. On top of bug fixes, changed recipes and improved items for the system he’s also been firming up on exactly what sorts of fish we’ll be adding to the game, and whether they’d be found in rivers or lakes (and definitely not swimming pools).
There’s gonna be lot of bass: largemouth, smallmouth, white, spotted and striped. And let’s not even get started on the crappies…
CRAFTING
After an awful lot of code-side tinkering, a super WIP version of our crafting improvement has surfaced into something that’s viewable in a vid. Please note this is the visible tip of the iceberg, and clearly what’s on show isn’t final: you do not saw logs in a furnace, and this isn’t how you make a hammer.
Various objects can now be entirely created using the game’s scripting language that’s been made similar to the way items and vehicles etc. are defined.
This covers various currently planned objects that can function as a craft station: stuff like blacksmith furnace, tailoring bench, fletchery, brewing stands, kilns etc. And, unlike the way it is now, these can also be objects consisting of multiple tiles/sprites with various rotations etc.
At a craft station the player is able to use their normal recipes (which may provide a bonus for doing the recipe at a craftstation) but it’s here that they can use their blueprints – and which ones are available will be defined by the associated object script.
Blueprints (working title) are similar to recipes in that they can take inputs, and produce outputs. However they are distinct from your usual recipes in the following ways:
They have different duration modes – in real world seconds, game minutes or can run passively in the background for long periods.
They may not require the player to be present. For example, a melting process may run on the craftstation while you run off to do other things.
As well as items, they can take the input (and produce) Fluids and different in-game ‘energies’ – Electric, Heat, Kinetic or Steam.
When active a Blueprint in progress can store its inputs/outputs, and may have storage capacity for them. For example, a blueprint that needs water as an input may well have an internal storage buffer for water. We’ll probably show this in a development vid next time.
Blueprints are processed much like recipes where the inputs by default are consumed to create the outputs. However the default behaviour can be complemented or overridden by custom lua code for certain blueprint events like OnStart, OnUpdate, OnFinish, OnCancel. This is similar to normal recipe events such as OnCreate.
Using this custom lua code interesting things can be done – like for example a blueprint for a Meat Drying Rack which has several input slots for meat. The blueprint can be set to run passively, so it wont require a player to manually start it up.
The OnUpdate event then triggers a lua function which checks if the Meat Drying Rack is situated in a exterior space, and if so we can then go into our usual PZ super-nerdery level of depth by calculating the amount to dry a meat item based on temperature and the cloud intensity / sunlight at that time. So when a meat item is dropped in one of the UI slots it starts passively drying the meat.
Another feature of blueprints is that their UI can be scripted. The video shows a few simple (bizarre) test examples of different UI layouts. However they can potentially be scripted to have any desired appearance – using any of the game’s existing UI elements, or indeed modded ones.
As mentioned heavily above: the video is very early WIP, especially where the UI is concerned, and there are still some parts not yet functional. In a future update we can show a more functional UI, and run through some more interesting case examples.
LES ANIMAUX
Finally, over to RJ in the animal zone.
“I’ve been diving more and more into a farm animal’s designation zones – which are paddocks you outline for your animals to occupy (as long as they don’t get loose) and where the game will allow you to do all your various primary animal-rearing tasks. For most of this week I’ve been refactoring and simplifying my animal behaviour and meta code, but there’s a few interesting things to mention.”
“Cows and sheep can now recognize a roof area and stay under it during heavy rain, I’ve been trying to get sheep to move in more of a flock most of the time, and baby animals will follow their mother more correctly. You can also now drop food directly on ground for them to eat, or in the feeding trough container – where it won’t spoil quite so quickly.”
Also, among many other things (haircare, first aid, dropping bags, new emergency broadcast system noises) the Sound Team have also started making animal noises.
Behold, the cows now have hoofsteps.
This week’s tarmac follow party from Darth. A changelist of all our pre-release and post-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.
Experienced gameplay coder and want to join Team Awesome? Jobs page here.
Hey all, hope you’re all doing well and that thus far 2023 has been kind. Let’s get straight into it.
NEW FACES
First of all we’d like to welcome officially three new people to the full Project Zomboid team.
Fenris_Wolf should need no introduction to the old hands of the Project Zomboid community. He took over and maintained the ORGM mod with great aplomb from the original creator ORMtnMan – and will be a name familiar to many.
Right now he’s reacclimatizing himself with the PZ codebase, charged with clearing out some of the niggly things that have been on our ‘to do’ list so he gets his fingers dirty in many and various different areas of the game. Clearly his expertise with guns and the firearms code will likely come into play at some point in his time with us, but for now it’s all about bedding down and getting comfy in Spiffo’s hovering mothership.
Also joining us officially, meanwhile, are Amz and Pat_Bren.
Amz is another familiar name from the community, and was a great help to us in the days of 41 MP testing. She’s now officially a full-time tester working with Sasha and Yana, and will also be making cool videos for our blogs and improving our (already extraordinarily professional) social media engagements.
Pat_Bren, meanwhile, has been writing up a storm for Build 42 on a part time basis – writing new radio and TV channels and content, new lore for what’s going on around the world and much more besides – and will now be working other cool future content in an official and ongoing capacity.
42 STUFF
Right now, we’re probably due an ‘overview’ of Build 42, so everyone is on the same page about its contents rather than skipping about between them each blog.
42 boils down to four large chunks of deep-rooted work that we want to all come together: the crafting/animals update, the map expansion, the optimization/lighting/basements engine upgrade, and the weighty job the MP team have taken on to move all inventory interactions over from clients to server.
These are all at different stages – for example animals are further ahead than a lot of the elements of crafting in terms of being ready to actively test and play with. Right now with the crafting, the work taking place is on the back-end codeside of crafting stations and component UIs.
Meanwhile with the engine upgrade at this point we’re essentially fixing up various different rendering issues that were broken with our quite fundamental changes to the system up to a point at which it’s ready to be merged into the test build.
The map team meanwhile continue to pump out new towns, interesting locations and fun places to travel to and hold out in.
Around these big ticket items we also have other coders, writers, artists and 3D modellers working to improve aspects of the current game.
So there’s the in-depth fire overhaul, Aiteron’s revamped fishing, better farming, more imaginative and fun items to find and use, better events to come across, improved recipes, new animations and activities, improved music system and deeper soundscape – and general piles and piles of polish and improvement throughout.
So with all that firmly held in mind, let’s have a quick dart around some of the different departments of PZ to catch up on a few bits and bobs.
Our smashing friend Steve N, who we’re borrowing from EverCurious Entertainment, has been digging into our animation system and working out some longstanding issues that we’ve been desperate to fix. We’re currently jumping into a test build to check nothing else has been broken by his changes, but the result will be a lot more silky smooth turns and 180s in your survival forays.
The big debate currently in our work with livestock is how to make it clear to players that you’ll need to designate areas that you want them to occupy and produce within, alongside building them fences they won’t escape through. We’ve got various ideas for this and will be running our experiments past the testers.
Increasingly we’re realising just how much more ‘life’ these non-human and non-zombie creatures bring to the game. To which end we are also experimenting with some non-interactive beasts that will run before you get near, and give the game a smidge more desolate color…
As mentioned before, alongside refinements and improvements to the music system, right now via Formosa/Noiseworks we’re in the process of getting real life human actors (in Los Angeles! In America!) to record some basic bodily noises to give extra life (and pain) to our Knox Event survivors. Imagine how cool it will be in MP when one of your buddies reaches you, having escaped zombies and run in terror, and you can hear their panicked heavy breathing.
That’s the sort of thing we want to capture, alongside noises of hurt and exertion as you tumble around the landscape. While we’re there we are also going to get a variety of other ‘spoken’ TV and radio noises that we can then obfuscate to improve the entertainment system slightly.
Aiteron is back with us and has picked up on his work on fishing. This is its current iteration, which will shortly be mixed into the internal test build. This probably needs some more tweaking with the ‘strain’ animations – and the indications that a big fish is being caught – but is really getting there now. It’ll be mixed into the internal test build soon, which is also the point at which Formosa can start working on the new sound effects and such.
About a bazillion new items – some useful (hose now required for gas siphoning, kids) and some more aimed at making the world feel fuller and more ‘real’ are also currently going into the internal test build. Here are a few examples.
This week’s wintry scene from BruceWayne (not the real one). A changelist of all our pre-release and post-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. Experienced gameplay coder and want to join Team Awesome? Jobs page here. Thanks to everyone who voted for Spiffo in the Labo(u)r of Love awards. He seemed quite chuffed about it.