1. Project Zomboid
  2. News

Project Zomboid News

41.78 UNSTABLE Released



 [h3]Hotfix 41.78.10 - November 21st:[/h3]

- Fixed being able to purify Watering Cans in a Microwave or Oven.
- Fixed being able to turn Cooked Eggs back into Uncooked Eggs.
- Fixed Pizzas having the hasMetal tag.
- Fixed error in SliceCooked test.
- Fixed distant players not appearing on the in-game map when the server option allows it.
- Fixed Male_Undies not having the "OBSOLETE = TRUE" parameter. Also removed them from the foraging pool.

 [h3]Hotfix 41.78.9 - November 17th:[/h3]

- Several tweaks to clothing masks.

- Updated the Clean Tray recipe so it works with trays of Biscuit Dough, and also so that it works with rotten and cooked ingredients, so players can always recover a tray from rotten trays of food.

- Fixed "Pour on Ground" Shortbread Cookies recipe, replaced it with a recipe to Empty Baking Trays.
- Fixed possible Lua error with setUseSteamRelay(nil) calls in the server browser.
- Fixed being unable to slice Cakes or Pies.
- Fixed being unable to put evolved recipe Rice and Pasta into Bowls.


[h3]Hotfix 41.78.8 - November 16th:[/h3]

- Propane Torch usage rebalanced for Fixing and Repair scripts to accommodate the change in capacity; all reduced to 2.

- Added "AllowRottenItem:true" parameter to the recipes to Empty Frying Pans; Griddle Pans; and Roasting Pans. This will allow players to reclaim said pans when they let Stir Fries and Omelettes get rotten.
- Recipes such as the Mildew Spray Cure, and Emptying Sacks of produce now have the field "AllowRottenItem:true" which allows rotten items to be used in that recipe.
- Fixed the Make Mildew Cure recipe not allowing both regular and Canned Milk; as players were unable to make this cure after all of the normal Milk has gone rotten.
- Fixed being unable to use Rotten Milk to make the Mildew Spray Cure.

- Commented out the "Make Pot of Soup" recipes; they're obsolete given the evolved recipe system which handles this matter better.
- Fixed being unable to use Canned Soup to make evolved recipe soup.
- Changed the display name of "Canned Soup" to "Canned Vegetable Soup".
Note: To make Pots of Soup with Opened Cans of Soup you must now add them to a pot of water, as an evolved recipe soup. This fixes the Super Soup exploit and will allow players to also add additional ingredients to the Soup. The other way of making Pots of Soup was an obsolete and in many ways incompatible method from before the evolved recipe system.

- Added missing SetMelee Delay on Pistol Whip animation.
- Fixed Hoodie and Vest masks to work properly with base mesh.
- Fixed JokeKnife, JokeArrow, BunnyEars, FurryEars, Antlers and GodStar Headbopper to work with all hairstyles.

- Fixed moodle and heart wiggle-speed, now reduced by half.
- Fixed an issue with forageSystem.lua not accounting for the new loot rarity settings.
- Fixed the veteran having some duplicate clothing selection options.
- Fixed in-game map road that was made curved in cell 35,31.
- Fixed print() statement from JoyPadSetup.lua that resulted in unnecessary messages in the console log.
- Fixed source files not being loaded in the Lua debugger on Linux.
- Fixed mod Lua files not being loaded in the Lua debugger.

[h3]Hotfix 41.78.7 - November 9th:[/h3]

- DB Viewer userlog will now have the value in the amount field increased for repeated counts of suspicious activity.
- znet is rebuilt for MacOS 10.12.6
- Fixed in-game map position of a shed in cell 35,32.
- Fixed Lacerations and Stitches not becoming infected. Cover stitches with alcohol soaked bandages to avoid them from getting infected.

[h3]Hotfix 41.78.6 - November 8th:[/h3]

- Multiplayer clients will now retry the GettingServerInfo request 3 times.
- Fixed Encoding of Radio and TV content for Chinese languages.
- Fixed lightbulb lifespan sandbox value error.

[h3]41.78.5 - November 7th[/h3]

- Adjusted Type 3 and 5 Anticheat to reduce false-positives.
- Fixed zombie Pinpoint hearing not working as intended.
- Fixed not being able to empty rotten sacks of produce.
- Fixed infinite Propane Torch glitch when disassembling items.


[h3]41.78.4 - November 4th:[/h3]

- Added a display option to enable the new outline around highlighted containers.
- Changed ISCloseVehicleDoor to play the door closing sound when the action is completed instead of its start. This is to provide better feedback for players in cases where they have unwittingly cancelled this action.

- Increased the spawnrate of Thread and added the chance of Sewing Kits to spawn in gloveboxes.

- Adjusted duration of the stationary Pistol Whip animation, it's now the same length as the shove animation.

- Added Checksum logging for MP servers, enabled by default for now.
- NetChecksum logs are extended:
Client dumps logs into checksum.txt.
Client sends logs to server.
Server dumps logs into checksum.txt.
Server dumps client's logs into checksum-.txt.

- When sorting the relative paths of scripts and Lua files to determine load order, the relative paths are first converted to lowercase. This is to fix platform differences breaking checksums in multiplayer. It also fixes the issue where the same file might be loaded more than once if mods use different capitalization for the same file or folder.

- When the Sound.WorldSound.Render debug option is enabled, world sounds are rendered according to the Hearing sandbox option.
For Hearing=Random (where each zombie may have a different radius) sounds are rendered using the Hearing=Normal radius.
This does not mean that their hearing radius is not randomized, it only means that a world sound radius cannot be rendered on a per zombie basis in debug mode.
For Hearing=Pinpoint/Normal/Poor, meta-zombie hearing radius is rendered accordingly.

- Commented out the GunLight and Bayonnet entries in the foraging definitions; they're currently non-functional and confuse players, and were commented out of the loot spawn tables.

- Exposed the MediaData.MediaLineData class.

- Fixed players being unable to fire guns from inside vehicles under some circumstances.
- Fixed firearm damage being affected by the distance to the target.
- Fixed the infinite timed-action progress bar being displayed for actions that set useProgressBar=false.
- Fixed recently introduced bug that caused sounds to attract zombies from too far away.
- Fixed WorldSoundManager.getSoundAttract() not using IsoZombie.hearing.
- Fixed masking problems with Hoodie and Poncho being worn together.
- Fixed transparency issue with trouser texture.
- Fixed the rate of moodle and the heart (health panel) icon wiggling not handling ui offscreen rendering and uncapped framerate.


[h3]Hotfix 41.78.3 - October 26th:[/h3]

- Further reduced the chance of zombies to injure the groin.
- Changed back container max capacity display to the adjusted value when Organized/Disorganized traits are used. The previous change ended up being more confusing than what it was aiming to fix.
- Added logging of player injuries caused by zombies to the console when in debug mode.
- FileDifferent, FileNotOnServer, and FileNotOnClient errors will now display the absolute paths of both files. This should make it clearer that a mod might just have been using the wrong capitalization for a folder.

- Fixed incorrect pathing for masks on some clothing items which should fix clipping issues.
- Fixed spamming the 'manual floor attack' and 'shove' keys while aiming resulting in firing empty firearms and shoving distant zombies.
- Fixed not-crawler zombies sometimes injuring the feet or legs.
- Fixed assorted errors in food items' EvolvedRecipe parameters.
- Fixed error with randomized zombie senses.
- Fixed the Disable Bleach Poisoning setting in multiplayer causing issues when adding food to Evolved Recipes.
- Fixed sawing off a Double Barrel Shotgun not changing its weight.
- Fixed not being able to host locally with a nonsteam server.
- Fixed zombie hearing radius being too large.
- Fixed being unable to rip Varsity Jackets.
- Fixed ripping all clothing unintentionally ripping clothing worn by the player.

_______________


[h3]NEW[/h3]
- Added a prompt for the updated Terms of Service as we are a big boy game now and have to fit in with the other biggerer boys.

- Added sandbox option to disable Fake Dead Reanimation. Disabled Fake deads in MP by default.
- Added more control over fake dead behaviour to the sandbox options; having zombies that were "killed" having a chance to become fake dead is an option that is off by default.
- Added sandbox option that allows Corpse Maggot spawning to be disabled or limited to corpse inventory.
- Added sandbox option that allows poisoning food to be disabled, or for poisoning food with bleach to be disabled.
- Added sandbox option to disable the Tainted Water Tooltip/Warning for hardcore play
- Added sandbox option for enabling/disabling XP multipliers affecting passive skills, which is false by default.
- Added sandbox option that prevents survivor vehicles from spawning.
- Added sandbox option "Light Bulb Lifespan". This does not affect Light Bulbs in vehicles, only in light fixture tiles.

- Added "Randomize" options to Zombie sandbox options for Memory, Sight, and Hearing.
- Added loot rarity settings "Incredibly Rare" and "None", as well as a "Super Low" option for Fuel Pump content.

- Items from table stories/randomized stories/etc will still spawn when loot rarity is set to none.

- Renamed Item "Weight" to "Encumbrance" in the UI and context menu.

- Added an Accessibility Option that makes the player character automatically walk to a click container within a short radius of 3 tiles.
- Added the ability to set custom "Good" and "Bad" highlighting colours in the Accessibility Options menu. This is applied to things like traits, tooltips, and the aiming outline.
- Added an option to bind "Walk To" to a key instead of having to go through the RMB menu.
- Added highlighting to clicked Crates so it's easier to tell which crate is selected.
- Added a Context Menu entry that enables/disables Auto-Drink.
- Tiles that are being disassembled will now be highlighted in the "bad colour", red being the default.

- Resolutions higher than 1440p will have their zoom levels adjusted to allow closer zoom-in, bringing it more in line with lower resolutions.

- Disabled some Randomized Survivor Safehouses from occurring in instances where a building has over 10 rooms, or is a spawn location. The limit is 10 for some and 20 for other Randomized Survivor Safehouses.
    This also means the Toilet Paper story is now disabled in buildings that have over 10 rooms or are spawn locations, which will likely reduce the amount of Reddit posts about it by 50%.
- Added a check to prevent any of the randomized burnt building stories from occurring if the building is a spawn location.

- Added "HasMetal" tag for items. This tag was added to food and water items in metal containers, which will now set microwaves on fire when microwaved.

- Adjusted the mechanics UI so that both the Battery Charge and Condition are included in the Battery entry in the list of parts.
- Modified the vehicle mechanics UI to prominently feature the % of a full tank of gas it has, in addition to the battery charge.

- Added a few more existing clothing options to the character creation.
- Added the ability to destroy only one wall when selecting corner walls.
- Replaced the bucket world static model textures with metal icons and textures and not plastic ones, as buckets are now metal and not plastic.
- Updated the BucketEmpty and BucketWaterFull scripts with tooltips and IsCookable to reflect that they are now metal and not plastic.
- Changed the icon of the Watering Can With Water to match the Empty Water Can and the Watering Can models.
- Added a stale tooltip for perishable food to display, when appropriate, that such food is neither fresh nor rotten.
- Added tooltip to Club Hammers and Mallets explaining that they are unsuitable for driving nails.
- Flatpack model is applied to movable items that use the Flatpack icon.
- Made more food items capable of being added to tacos and burritos.
- Bell Pepper can now be added to Stews.

- Added a check so cooked eggs cannot be used for inappropriate non-evolved recipes.
- Removed the requirement for hot water to make a bowl of oats.
- Changed the Violet FoodType to NoExplicit.

- Trash tiles (Movable items) and Plastic Bags can now be used as tinder and fuel for fires.
- Changed the Sawed-off Shotgun recipes to only use the hacksaw, and not the garden saw; a wood saw would be unable to cut through the metal barrel of a shotgun.
- Added the Meat Cleaver to the Slice Onions recipe. Removed it from the Jack-o'-lantern recipe.

- Changed the Cigarettes script to prioritize using Matches before a Lighter if both are in the same inventory.
- Added a new Doctor's bag and military duffel bag.
- Renamed "Hemophobic" trait to "Fear of Blood".
- Vehicle Spawn Chance rate can now be a float value instead of just an int.
- Added a check to prevent items that "weigh" over 50 units from being put in vehicle seats.
    This is an ongoing issue with bags/containers that are modded over capacity, which get stuck once placed in vehicle seats when the bag + contents have an Encumbrance of >50.

- Changed translation strings to make bottle names more consistent.
- Changed IGUI_HouseKey from "House Key" to "Key" to avoid issues with non-residential keys.

- Removed the numeric information tooltip provided when selecting eat all/half/quarter food item context options.
- Commented out the tool definitions in ClothingRecipesDefinitions as they currently are nonfunctional and serve no purpose aside from confusing modders.

- Commented out the WoodenLance in the safehouse weapons distro lists; that item is redundant vs SpearCrafted, and also doesn't work with spear recipes. SpearCrafted already spawns with safehouse weapons.
- Replaced AmmoStraps in the safehouse armor distro list with AmmoStraps_Bullets and AmmoStraps_Shells.
- Changed the display name translation string for the wearable AmmoStraps items to Bandolier on account of consistent confusion with the weapon attachment that is also called Ammo Straps.
- Changed the display name translation string for firearm magazines to use the firearm it is for, and not the caliber, as the prefix. Solves having two .308 Magazines, for both the MSR788 and the M14, and also that's how they're named in real life.
- Added a tooltip to firearm magazines that displays the ammunition type that it accepts.

- Added missing models for Candy Corn, Candied Fruit Slices, Hot Sauce, Fountain Cups, JuJubes, Nettles, Shrimp Dumplings, Poached Eggs, Scrambled Eggs, Packaged Corn, Pickled Ginger, Sugar Cookies, Fish Sushi, Radio Receivers,Radio Transmitters, Gummy Bears, Gummy Worms, and Tent Kits.


[h3]MULTIPLAYER[/h3]

- Added server option "KnockedDownAllowed" to enable/disable the PVP knockdown.
    This is a stopgap change to give servers an option to make PVP combat less frustrating before we can address PVP combat more directly in the future.  

- Added auto-completion for player nicknames when pressing TAB while typing in the Chatbox.
- Added RCON command "checkModsNeedUpdate" to check for mods that need to be updated.
- Allow other non-admin permission levels to delete items in inventory/containers.

- Fixed the multiplayer "whisper" command corrupting the Lua environment due to multithreading.
- Fixed being unable to claim a safehouse unless standing on the ground floor.
- Fixed not checking upper floors for other players or zombies when claiming a safehouse.
- Fixed an exception on the server when food rots into a new item in a container that isn't in the world any longer.
- Fixed new stubble getting added to remote players after each appearance change.
- Fixed text annotations not appearing on annotated maps in multiplayer.
- Fixed Endurance sync in the Admin Health Tool.
- Fixed a bug that didn't display mods in the mod list of a server in the ESC menu.
- Fixed admins being unable to remove car hoods while inside the vehicle.
- Fixed players being unable to interact with Radios they placed themselves.
- Fixed a safehouse owner always respawning in their safehouse when the option to do so is unchecked.


[h3]BALANCE[/h3]

- Modified the M16 & M14 critical values to be more consistent with other rifles.
    - M16 CriticalChance changed from 30 to 25.
            - Added CritDmgMultiplier 10
            - Added AimingPerkCritModifier 12
    - M14 CriticalChance changed from 0 to 30.
            - Added CritDmgMultiplier 10
            - AimingPerkCritModifier 15
- Disabled the cumulative slowdown until the next shot when firing the M16 in automatic mode. Firing the M16 in automatic mode will cumulatively reduce the chance of a critical with each additional shot. This is intended to represent the loss in accuracy due to recoil.
- Set some traits to be mutually exclusive to remove exploits or illogical combinations.

- Hot-Wiring a vehicle will have a low chance of causing a car alarm. The chance for this is decreased further for higher electronics skill levels.
- Zombies pushing up against a previously unentered stationary vehicle have a chance to set off an alarm.
- Removed the undesired RNG check that made vehicle alarms go off only 20% of the time.
- Fixed car hoods being unable to trigger vehicle alarms.

- Disabled being able to make melee attacks while inside a vehicle with the window rolled down.

- Randomized the fall damage that zombies take. This randomized spread will average out to the previous damage before it was randomized; this will have a minor impact (hohoho) on the damage that zombies that fall suffer, but slightly more of them will be able to be killed by this than before.
- Made it so groin injuries from not-crawler zombies are less common, and that crawlers can also inflict uncommon groin injuries.

- Increased the yield of metal parts when scrapping wrecked vehicles by 33%.
- Added a new procedural container, "CratePropane", to garages and shed.
- Increased the spawn rates for Propane Tanks in the distributions.

- Trailer capacity now reduces slightly when damaged, as there was no point in repairing them before.
- Changed Bowling Ball Bag capacity from 2 to 8.
- Increase number of Plaster uses to 10, same as Paint.
- Allow plastic bags and money to be used as tinder

- Adjusted the capacities of pistol and revolver cases from 7 down to 4.
- Adjusted Encumbrance of the sturdy stick item to 1 to be more consistent with other items.
- Adjusted Encumbrance of fire extinguishers to 2, to be consistent with other items.
- Decreased Encumbrance of Walkie-Talkies.
- Adjusted Encumbrance of the TreeBranch item to match that of a crafted spear, to 1.7 from 1;
    The Encumbrance discrepancy has been remarked upon repeatedly, and this also serves in making item Encumbrance more consistent.
- Adjusted the amount of fuel that spawns in fuel pumps at Low and Very Low.

- Updated the nutritional value for Canned Evaporated Milk. Calories 472; Carbs, Lipids, and Proteins at 23.6
- Changed the days until rotten for Bagels from 2 to 6.
- Gave the Stir Fry and roast script items a default hunger value of 10. This was previously reported as a bug when players spawned the item in instead of making it via the evolved recipe.

- Maggots are slightly more poisonous.
- Fewer maggots spawn, especially in spring and fall (maggots don't spawn during winter).
- Maggots are now a default item in the world item removal lists. Added a comment for the world item removal lists explaining that Base.Maggots should stay in the list due to corpse maggots.
- Additional safeguard to prevent errors when using mods that remove maggots altogether.


[h3]DEBUG / MODDING[/h3]
- Added a search bar to the LootZed cheat panel.
- Added vehicle distributions to LootZed.
- Improved inventory check-in Check Stats panel.

- Right-clicking on a fuel pump in debug mode will display the amount of fuel in the pump in the right-click context menu.

- Added isStartValid function check for BaseTimedAction. Allows checking if an action is valid before the action starts.
- Added saving ModData from IsoGameCharacter to IsoDeadBody and from IsoDeadBody to IsoZombie.
- Added "OnPlayerGetDamage" event.
- Added event "OnWeaponHitThumpable" (Args: character, weapon, object)
- Added a trigger for the OnFillContainer Event when vehicle part containers are filled.
- Added the tag "CarBattery" which can be used with mod item car batteries so they can be charged with the vanilla car battery charger.
- Added the event "OnThrowableExplode", which transmits the IsoTrap and IsoSquare when one detonates.
- Added a toggle option in the vehicle debug context menu that will show if a vehicle's alarm is enabled or disabled.
- Changed Fast Move cheat in debug. Players can now levitate on different height levels via the PageUP/PageDown keys, and move around via the Arrow Keys on the different height levels.
- Made ImageScale, SeatOffsetY and SeatOffsetX global and not local in ISVehicleSeatUI.
- "Missing translation", "ignoring invalid ItemPicker item type", and "VEHICLE MISSING CONT DISTRIBUTION" console messages will now only appear when using debug mode.

- Fixed characters in godmode still changing body weight.
- Fixed instances of the Cheat Menu not working after a player died.
- Fixed removing bodies via Horde manager not working in SP.
- Fixed being stuck in a vehicle after trying to uninstall/install a car part through the Mechanics Cheat, when a character was inside the vehicle.
- Fixed bug with health panel: Fully healing a body part now also removes its muscle fatigue.
- Fixed mod texture packs being loaded before Core.TileScale was set based on the double-sized-textures option. This would result in 2x texture packs being loaded instead of 1x texture packs.

- Fixed issues with the Tile picker:
    - Fixed being unable to lock Doors placed via Tile Picker.
    - Fixed Tree Tile issues.
    - Fixed electronic tiles (TV, radio, generators, etc).
    - Fixed Garage Doors.
    - Fixed Street Light tiles.
    - Fixed Search Bar issues.
    - Fixed Light Switches.
    - Fixed not showing all tiles.
    - Fixed Fireplace objects.
    - Fixed Wells and Lights.

[h3]FIXES[/h3]
- Fixed only being able to add Maple syrup to "PancakesRecipe" and not to "PancakesCraft" or "Pancakes".
- Fixed not being able to make 2 or 4 bowls of Rice or Pasta with a Saucepan anymore.
- Fixed lipstick not being appliable when player had Foundation Makeup in inventory
- Fixed Make-Up not being appliable when in a car.
- Fixes and changes to item categories.
- Fixed destroying a wall with a Lightswitch on it not destroying the Lightswitch too.
- Fixed making 2/4 bowls from a Saucepan returning a Cooking Pot.
- Fixed putting a hat on a Mohawk resetting hair growth timer.
- Fixed not being able to make a Molotov with an Empty Beer bottle.
- Fixed repeatedly building/disassembling some carpentry objects increasing the number of Planks sometimes.
- Fixed Sand/Gravel Bag wall behaviour when built at an angle.
- Fixed selected part of a garment in the "Inspect" UI being too faint.
- Fixed Shirts and other clothing items getting auto-removed from the world.
- Fixed unnecessary extra Muffin recipe. United the two existing Muffin recipes into one.
- Fixed being able to make Cake Batter using rotten ingredients below level 7.
- Fixed unused Zombie Decomposition sandbox option still being listed.
- Fixed NullPointerException in bThump animation variable when the object isn't loaded.
- Fixed being unable to click on open doors in an adjacent room.
- Fixed the starting house in "A Really CDDAy" challenge sometimes not being on fire.
- Fixed possible Lua error in MOBarricade.lua when a barricade sprite is on the east or south edge of a chunk.
- Fixed minor issues in ISZoneDisplay UI and text colours.
- Fixed Foraging icons rerolling when a search focus was selected.
- Fixed ISSearchManager check for valid zoneData when loading icons.
- Fixed not being able to rip Jeans/Leather Jackets when they're on the ground instead of the player inventory.
- Fixed disassembly of Favourited items.
- Fixed randomized crashed cars not having the correct car keys spawned for them.
- Fixed Mouse Trap related collision.
- Fixed sound issue when pressing W and S at the same time.
- Fixed sound issue when switching Seats while Cruise Control was enabled.
- Fixed Refill tool not updating the container visually.
- Fixed incorrectly named recipe for making Wooden Box Traps.
- Fixed several tile and cutaway issues.
- Fixed Lighters draining completely when used with a Molotov.
    When a Lighter is equipped it will no longer automatically become lit, instead it will do so only if activated using the flashlight keybind or radial menu, or using the inventory context menu option to activate them.
- Fixed evolved recipe error in scripts for Lemons and Lime.
- Fixed Machetes not losing condition when used to craft spears from branches/planks.
- Fixed Empty Beer Bottle using the wrong icons.
- Fixed the space before commas in evolved recipe item names.
- Fixed missing recipe for Opening Canned Fruit Beverage.
- Changed "Canned Condensed Milk" to "Canned Evaporated Milk" because people are really passionate about milk in can lore.
- Fixed melted ice cream not rotting.
- Fixed house keys spawning with a long string of numbers in their display name.
- Fixed climb sheet rope speed.
- Fixed water collision bug when placing Stairs on water.
- Fixed missing textures for Flatpack model.
- Fixed ISInventoryPaneContextMenu.doEvorecipeMenu error.
- Fixed the on-screen keyboard returning asterisks instead of the actual text when entering passwords.
- Fixed microwaves not stopping the StoveTimer sound when turned off.
- Fixed missing context menu translation string for "Item Water Capacity".
- Fixed missing movables translation strings for Oak Bars.
- Fixed missing translation string for foodtype cocoa.
- Fixed wrong tooltip for Onion Slices.
- Fixed pies and cakes being able to be sliced when uncooked.
- Fixed frozen ice cream cones causing boredom and unhappiness; added the "GoodFrozen" tag for such items that should still be enjoyable when frozen.
- Fixed characters not limping when they had their groin bitten.
- Fixed being able to fill a square over its capacity by using the Place Item interface.
- Fixed cooking rotten eggs producing fresh boiled eggs; now if food is rotten and has a "replace on cooked" value, it will not be replaced but will still be cooked, i.e. you will get a cooked rotten egg when you cook a rotten egg.                                             
- Fixed Propane Torch not being used for disassembling objects.                                          
- Fixed Walking and sprinting not burning more calories than standing still.
- Fixed NullPointerExeption when throwing a bomb from above ground level with a controller.
- Fixed not being able to pick items that were dropped to a removed seat slot.
- Fixed being stuck on a seat when trying to change seat twice in different places.
- Fixed being able to do Fitness during sleep and while sitting in a car.
- Fixed the eternal fire after destroying a lit campfire with a sledgehammer.
- Fixed Map objects disappearing when a player aims at a stealthing player.
- Fixed bug with item icons in halo text when foraging.
- Fixed a bug with locking/unlocking doors inside buildings.
- Fixed different values between standard and evolved recipes for Soup.
- Fixed an issue where the interaction between the two different separate zombie population sandbox settings was inconsistent between singleplayer and multiplayer sandbox setting interfaces.
- Fixed equipping "Bandana (face)" placing the bandana on the head.
- Fixed not being able to get a key ring. Some zombies will now have their house or vehicle key in a key ring, and key rings can also sometimes be found in store displays with watches.
- Fixed that it was impossible for a randomized name to be "Pat Bren".
- Fixed adding poisonous berries or mushrooms to an evolved recipe did not make the product poisonous.
- Fixed missing icon for Scrambled Eggs.
- Fixed currently nonfunctional bayonet and gunlight items not being commented out in the distribution files.
- Fixed missing models/textures for Fountain Cups, Recipe Pizza and Recipe Bread.
- Fixed missing "Obsolete" parameter to BakingTrayBread as it's an unused test item without a model.
- Fixed missing checks to prevent buildings with inappropriate randomized dead survivor stories from being alarmed.
- Fixed being able to use the place item option to place infinite items in a floor square.
- Fixed cut and paste error in the unused function HandWeapon.getToHitMod.
- Fixed an exploit where players, especially ones with desensitized, were able to sleep immediately after breaking LOS with zombies.
- Fixed a couple of inconsistencies between the default MP settings and the Apocalypse setting on account of the loot setting changes.
- Fixed CannedMilk not having the parameter CannedFood = TRUE.
- Fixed only pouring 50 units when selecting the option to put 100 units of water into a farming plot.
- Fixed an issue with the vehicle alarm debug tool, BaseVehicle.setAlarmed also needed to set previouslyEntered to false for the vehicle when enabling an alarm.
- Fixed car horns continuing when switching seats while honking.
- Fixed being able to hold down keys while AFKing to grind nimble; now a check is made to ensure that the character has actually moved before awarding XP.
- Fixed error with broken glass script name in distro files.
- Fixed hazmat suit missing blood locations.
- Fixed being able to put uncooked bacon into tacos and burritos.
- Fixed Pink Hair Dye not being in the distribution lists.
- Fixed not being able to put Black Beans into a salad.
- Fixed Strength XP levels causing slower Sheet Rope climbing at certain levels, especially at level 10.
- Fixed bugged interaction with building metal objects and the Propane Torch.
- Fixed not being able to disassemble car wrecks due to a missing Propane Torch, even though it was in inventory. This needs Balance feedback since the usage per Torch was also changed.
- Fixed interaction when pressing shift+e near passenger seat to move to the drivers seat.
- Fixed ISBuryCorpse action validity check.
- Fixed using a firearm to repair another firearm evaporating the ammo, magazine, and attachments of the first weapon. The items will now be placed in the player's inventory.
- Fixed being unable to read in a car when the engine was running.
- Fixed zombies spawning inside buildings when the zombie populations is set to 0.
- Fixed missing world static model for Bag_ShotgunDblSawnoffBag.
- Fixed search window tooltips still appearing on hover when the world map is open.
- Fixed player able to walk away while equipping items to scrap or destroy an object to perform the actions from afar.
- Fixed dismantling floors with the character on top by moving character to an adjacent square where possible.
- Fixed disassembly context menu issue: added highlighting of target object in world and object texture in disassembly tooltips
- Fixed reflective and shooting glasses having reversed icons.
- Fixed some events of ZomboidSoundMP.bank not playing for remote clients. This is to potentially fix sounds cutting out when several players are together.

Flame On



Evening all.

[h3]NOW[/h3]
We released 41.77 into the stable beta last week, which fixed up linux servers and also improved client to server connections by preferring a direct connection to the server.

It was mission successful in most regards, but a minority of users still had issues connecting – which we have been addressing over the past few days via hotfixes in the Unstable beta.

If you were one of the frustrated souls impacted by this, then let us know if you are still suffering on Unstable (hopefully not) on this thread on the Steam Board.

Our current plan is to get these final people back on board the connection train, then move onto releasing the final 41 patch into the freshly vacated Unstable beta next week.

We’ve now locked coder submissions to this patch (necessary fixes aside) and the final changelist looks like this.


[h3]LATER[/h3]
We’ve blogged a bunch of stuff that we’re working towards getting into 42 now, but this week we thought it also worth mentioning that work has re-begun on the fire revamp.

The fire revamp is something that got a lot of coverage in ‘doids around two years ago, so it probably predates the knowledge of a fair few readers who have come on board in more recent times during B41’s MP launch and consequent hi-jinks.

Work on revamped fire had to be put to one side in favour of bolstering the Multiplayer code team, and ever since then it has been sitting on a dusty shelf and getting a little stale.

The tldr of it when last we left it runs as follows:
  • A realistic spread of fire, with combustible materials that make sense.
  • A system that takes into account temperature, material types, weight, volume, surface area, heating energy, cooling energy etc
  • A set-up on both a solo map and an MP network that means that the game can ‘remember’ what is going on in terms of a spreading fire when players leave the area.
  • Fire spread that uses the direction and speed of the wind, with in-game rain helping with fires being put out.
  • Improved effects and visuals.


So what now? Well a nice chap called Denis is brushing off the unfinished work – and has brought it all up to date with the codebase two years later. This task is now complete, and this video shows a quick summary of where we got to.

[previewyoutube][/previewyoutube]
 
So where does this leave us? Well it doesn’t make it a confirmed 42 feature, we are already going to be packing a LOT in, but it does make its inclusion more likely.

We want to improve the visuals still (we are still not happy with whether it fits the game scene), and we want Denis to take his time getting to grips with the codebase and what can be done with the system still. Likewise we’ll be working on new anims for zeds and players who have caught fire, and the sound team will be providing all manner of sizzle noises.

So this is basically us waving a flag at you to say that we hadn’t forgotten all this cool shit, and it’s back off the shelf and receiving some active love and attention for later on down the line.


[h3]WELCOME KIRRUS![/h3]
The team would like to officially welcome Kirrus to the TIS locker-room! Kirrus has been a long-term contributor, helper and ‘cool head in troubled times’ throughout the history of Project Zomboid – but has never been officially on the team.

He’s now a full time member of the gang, and our new Sys Admin. Big Spiffo hug incoming!

This week’s office space from Sr.Cannoli. 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 dev and want to work with us, especially if you’re an Animations Engineer as Christ alive that would be handy? Details here.

41.77 Released

Compliled changelist (41.74-41.77).
These small updates were intended to address the crashes affecting Linux MP servers and improve the client-to-server connections.
 
[h3]Hotfix October 20th:[/h3]
41.77.9:

- Added checks for a null VehicleScript to IsoPlayer.getNearVehicle() and IsoZombie.getNearVehicle().


[h3]Hotfix October 17th:[/h3]
41.77.7:

- znet libraries were rebuilt.
- Minor revision number now displayed on main menu instead of just inside the console.

- Fixed being stuck on the connection screen or a black screen when trying to connect to a co-op server.
- Fixed: log messages and NPE during the processing of the RakNet already-connected packet.
- Fixed instances of clients being unable to connect to a server where logs showed that the client is already connected. The client will use 127.0.0.1 to connect if it is a co-op host.
- Fixed host connections from remote clients.
- The client will save coop server logs to the logs.zip file before and after each start.


[h3]Hotfix October 7th:[/h3]
- Rebuilt znet libraries
- Fixed /banid command

[h3]MP[/h3]

- Improved client connection.
Important for server providers: Servers now have two ports for clients to connect to.
The game port (UDP 16261 by default) is used to handle Steam queries. The additional port (UDP 16262 by default) is used to handle the direct connection. These ports can be configured through the server options.
Clients will first try to use a direct connection. If direct connection fails, clients will try to connect via Steam.
The non-Steam version works as usual.
UPnP rules were changed accordingly (UPnP is used in cases to prevent manual port-forwarding).
The client will show the warning message "WARNING: SERVER HAS PORT %1 CLOSED. PERFORMANCE MAY BE SEVERELY AFFECTED" if the client can't connect through direct connection.

- ZNet libraries rebuilt for Windows, Linux, and Mac.
- ZNet, Connection, and Kick logs are improved.

- Improved Type5, and Type21-24 Anti-Cheat behaviour to reduce false positives.
    A note that if you do not run a public server (i.e. a server exclusively for you and your family & friends without the worry of griefing and cheating), you can entirely circumvent any sort of frustration with false positives by disabling all AntiCheat protections in the servers .ini file.

- Split the large ConnectionDetails packet into several smaller packets with one of the ConnectionDetailsPacket.State enum values indicating which data is requested.
- Improved algorithm for the transmission of large files while playing.
- Loading screen now shows the download status of large files when connecting to a server.
- Extended checksum logs for debugging CRC differences.
- Increased kick delay for CRC differences.
- Additional logs were added.

- Fixed ObjectModData packets not being sent while the server was in the FastForward state.
- Fixed bug in world dictionary when an item in a different module but with a similar name as an vanilla item was removed.
- Fixed a new stubble Beard getting added to remote players after each appearance change, which resulted in receivePlayerZombieDescriptors errors.
- Fixed kicks after disabling VOIP.
- Fixed connecting to host after disconnection from a dedicated server.
- Fixed infinite connection attempt to non-steam server when it's not up.
- Fixed the client displaying "Disconnected" instead of "Wrong username or password".
- Fixed players being able to change their saved password for an already created account in some instances.
- Fixed Type21 black screen at connection stage when Type21 anti-cheat check is disabled.
- Fixed the character model always using media/textures/Body/Masks instead a clothing item's UnderlayMasks folder.
- Fixed black screen issues with certain mod constellations.
- Fixed the timed-action progress bar position not being updated during actions without a fixed duration.
- Fixed the animation speed of the timed-action progress bar at different framerates.


[h3]NEW[/h3]

- Added a looping progress bar for timed actions that have no defined end. This is mainly a stopgap "fix" for entering cars, to visualize that there is an ongoing unfinished action until we can have visually open doors, etc.
Specifically added for the scenarios where players reported being bitten through the car door after they had entered a car and interrupted the "enter car" action before it could finish (e.g. by opening the map, etc), i.e. before the door was "closed".
This bar extends to other "infinite" actions like Walk To.


[h3]MODELS[/h3]

- Added new body locations: Jacket_Bulky, JacketHat_Bulky, TorsoExtraVest, and JacketSuit.
- Assigned new body locations to existing clothing items to avoid clipping.
- Tweaked and added many clothing masks to avoid clipping through each other.
- Adjusted several clothing models and bone weighting to improve clipping.
- Removed Bowling shirt model from Bowling shirt definitions and made Bowling Shirt a texture. The model was left in the files in case mods use it.
- Improved base Body mask to help with clipping.
- Re-exported ALICE packs as some straps were missing.

Project Zomboid build 42 will allow spooky basements and sewers

One of the most surprising things about Project Zomboid is how genuinely frightening it can be, despite the outwardly friendly visuals. Developer The Indie Stone is planning on making things quite a bit scarier, however - with some upcoming changes to the survival game's underlying technology, soon we'll be faced with exploring subterranean levels like basements and sewers. And they're going to be very, very dark.


Read the rest of the story...


RELATED LINKS:

Project Zomboid Build 42 will make the map a lot bigger

Project Zomboid update 41.73 lets you store gas in bottles

Project Zomboid is getting "realistic bleach-drinking"

Upstairs Downstairs



Now then, survivors. Let’s do the thing.

[h3]NEXT[/h3]
This week we released version 41.77 into our Unstable beta. This is primarily aimed at fixing the Linux crashes that have been plaguing server hosts, and so far seems to be a mission success in that regard.

It also improves client to server connections by preferring a direct connection to the server. Servers now have two ports for clients to connect to, configurable through the server options. The game port (UDP 16261 by default) is used to handle Steam queries. The additional port (UDP 16262 by default) is used to handle the direct connection.

We’ve had a successful wider test of 41.77 with more than 30 people on a server without any crashes, and we’ve tested a modded setup afterwards as well.

Upon release there were servers running mods with 41.77 just fine, but unfortunately it seemed that some mod setup constellations caused conflicts that resulted in black screens for some servers.

We have just pushed a hotfix we believe will resolve this.

If, however, you run a 41.77 server and you are still experiencing players unable to log on (only seeing a black screen) then please send us: the list of ModIDs (specifically the “Mods=” line from their server.ini, the workshop= line, and your server logs.

Posting these in the forum release thread or in our Discord techsupport channel would probably be best.

Likewise, any reports of ongoing server instability or general misbehaviour – please let us know ASAP.


[h3]THEN[/h3]
We’re still adding tweaks and polish to our final B41 patch that we’ll put out once the current network improvements are fully tested, released and stable.

This is the current changelist, with notable additions in the past few weeks on show here if you already read up on what was incoming in our last blog.


[h3]OOH, 42[/h3]
Build 42 will be a very big update, and it will appear a sizable amount of time after Build 41 is fully wrapped. We’ve announced most of the things that we currently have brewing for it, but there’s one thing we’ve only hinted at so far – and which is very likely to feature.

As regular readers may remember, a while ago we wrote a blog called Techdoid that detailed some of the big engine improvements we have slated for 42.

Amongst them is a new rendering pipeline which allows for entire chunks to be cached with a depth buffer, which will afford us MASSIVE rendering and scene construction improvements and should rid us of all the performance issues we’ve been plagued with due to the isometric draw order over the years.

[previewyoutube][/previewyoutube]

There’s also a new light propagation system, which allows for light to naturally leak through doors and windows, providing much more atmospheric and believable lighting

[previewyoutube][/previewyoutube]

We also got rid of the 8 storey limit on chunks: specifically we allowed each chunk to have its own unique defined height up to 32 levels.

Finally, we discussed that we’d fixed the many areas of the codebase that used static casts to round the player’s position to determine what chunk or tile they were on to using Math.floors instead. This method allows for negative coordinates to work where prior the calculations would have failed if the player was stood on a tile with a negative coordinate.

This in theory will allow for us, or modders, to build north or west to the same extents as we currently build to the east and south, effectively quadrupling the maximum size the map could be extended to and open up a great deal of extra land to populate should we need to in future.

Whilst all these features are gamechangers in themselves, they were also done in service of another very specific feature we’ve had planned for a long time, which required each of them to be made feasible in any way.

The current in-game lighting system means that the indoor ambience levels are defined solely by the time of day. If it’s daytime, the ambient light levels inside a building are above zero, giving just sub-daylight levels, even if there are no sources of natural light that should fall on a tile just by virtue of it being day. That wouldn’t work very well if we were wanting to do… a certain other feature.

The previous eight level hard limit and high rendering cost of multiple levels was rather restrictive if we were to… want to do a certain something.

The lack of support for negative coordinates for character positions? Well that was IMMENSELY restrictive if we… were to want to do a certain something.

A few people may have been able to read between the lines of what all these lead toward. Many more will have just watched the video already.

[previewyoutube][/previewyoutube]

The plan we have for basements and sub-levels is an interesting one, as it will provide a lot more replayability to the game map, which is otherwise completely static at the moment.

Essentially in 42 we, or modders, can list positions on the map (along with staircase orientation) that have the space for a basement and can be allocated the potential to have one. However, no basements are placed within the map itself.

When an area is streamed in for the first time, an appropriate basement ‘building’ created in the building editor and exported as a binary file is selected randomly from the list of all possible basements and will be injected into the map as it is loaded.

We could add tags to make it pick an appropriate category of basement to fit the specific house, though right now the code has it set as completely random. Each basement has stairs leading up from its ‘top’ floor and these stairs will be aligned to the correct position when it is injected into the map.

This means that despite the map being static, any areas with basements will yield surprises in every playthrough. This will also, clearly, cause the least disruption to the existing map development, modded maps and everything else.

Whilst most of the basements will be modest basement rooms, that will have their own unique layout and lootable containers and will change on every new world and be populated with our own collection as well as any collections of mod basements that are subscribed to.

There may be a few, however, which are more extensive, the player could happen upon a super rare and extensive underground complex. We have 32 levels to work with that can be distributed in any way above or below ground per chunk as required, so there’ll be few limits particularly in what modders can do with this.

We can also hardcode some specific basement levels, so we could say provide key buildings within the map with bespoke basement levels that fit that particular building and will always be the same on every map.

Also, with the new light propagation system, you better bring a torch – because unless there are light switches, its gonna be dark even if it’s daytime!

We’re also considering the possibility of other sub-surface structures, such as sewers for locations like Louisville. We’re still researching what would be appropriate and sufficiently realistic for this, however, and it’s not certain what could/would appear in b42 beyond what’s discussed above at this stage.

 
[h3]SPIFFO: BEYOND[/h3]
If you are a Terraria player then right now you are likely enjoying the amazing Labor of Love update, and maybe you’ve even discovered a certain someone has made the jump into another game – heralding the beginning of some sort of Spiffo Cinematic Universe.

Our endless thanks to everyone at Re-Logic for letting our little dude spread his wings (or spin his tail, I guess) and treating him so well.

[previewyoutube][/previewyoutube]

This week’s stunning outdoor scene from Citro. 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 dev and want to work with us, especially if you’re an Animations Engineer as Christ alive that would be handy? Details here.