MP - Optional Login Queue system for MP servers added. - Players connecting to a full server will be placed in a login queue, connecting automatically once a slot freed up. The queue will advance after the client has finished loading the game. - LoginQueueConnectTimeout=60 server option determines for how long the server should wait for a connection of the client before they are timed out. - Added options for automatic server backups. - Several cheating security fixes to prevent unwanted admin access as well as unwanted actions performed by clients. - Several improvements and fixes for VOIP. Added Automatic Gain Control options. - Allow VOIP and text to travel to radios tuned into the same frequency - Don't show the "ADMIN POWER:" debug text in multiplayer. - Added admin panel tool for creating custom safehouses/safezones - Added new PvP icons - Servers now set a Steam server rule named "PVP" with a value of "1" or "0" depending on the value of the "PVP" server option. This can be used by server browsers to distinguish between pure PVE and PVP enabled servers. - Added a "SledgehammerOnlyInSafehouse" server option: - if AllowDestructionBySledgehammer is enabled, you can set SledgehammerOnlyInSafehouse to true to allow destroying stuff with sledge only in player's safehouse. - Removed Lucky/Unlucky traits in MP. - Fixed some duplication exploits. - Fixed being unable to access/change player inventory as admin. - Fixed Ping Limiter not working. - Added buildUtil.setHaveConstruction - This is a function to set the haveConstruction flag on a zone to prevent loot respawn if ConstructionPreventsLootRespawn is enabled in the server sandbox settings. - set haveConstruction on zone for building, movable, barricading events and when claiming a safehouse, so a home won't spawn loot after being claimed, even if a player hasn't built anything in them yet. - Updated /rainstart /rainstop and /thunder commands - Added /lightning /startstorm and /stopweather commands - Added providing optional reason in KickUserCommand - Added providing optional coordinates in AddVehicleCommand - Updated text for server commands - Updated ShowOptionsCommand to allow use by non admins - Disabled commands AddAllToWhiteListCommand and AddUserToWhiteListCommand - Prevent some cases where crashes at low speeds cause fatal injuries. - Removed unnecessary server options. - Fixes for some instances where black boxing could still occur when players were passengers in vehicles. - Fixed an exploit that allowed bypassing container item limits. - Fixed non-members being able to perform moveables actions inside safehouses. - Fixed admins in ghost/invisible mode still making sounds. - Updated overhead username display - with only ShowFirstAndLastName enabled, show player name - with only DisplayUserName enabled, show username - with both options enabled, show player name with username in brackets - Fixed crawlers sometimes teleporting when trying to path to a player. They will now turn to the target. - Removed defunct server option "LogLocalChat". NEW - Added back the "Toggle Music" key binding, bound to nothing by default. It appears under the new "Audio" category near the bottom of the key-binding UI. - Players can now dismantle several player-built structures (floors, etc) - Corner pillars will now be built automatically when placing walls/fences etc. - Updated Kingsmouth and Studio maps. Room definitions, bed and foundation fixes, added video cameras, military equipment, and more. - Added tooltip information on what mod an item is from. Can be turned off in main options. - Added "Inventory Container Button Size" Display option to change the size of the buttons on the right-hand side of the inventory and loot windows. - Updated Survival Guide. Merged into a single window and also made to work with a controller - Updated the application icon. - Added trait reset button to character creation screen. - Attempting to sprint when the character is too exhausted to sprint will now make the character run as fast as they can instead of walking and having to press the "Run" key separately. - Implemented the blue combination washer/dryer appliance. Use the context menu to switch between washer and dryer mode. - Context Menu is now usable in the loot panel backpack list. - Setting Cruise Control now starts at current speed when switched on - Updated ISCraftingUI and CraftTooltip to display multiple choice item counts CONTROLLER - Pressing and holding the left analogue stick displays a radial menu that allows toggling crouching, sitting on the ground, and auto-walking. A quick press of the left joystick button toggles crouch, the same as before. - Pressing the controller A button when a text entry has the focus displays the on-screen keyboard. - Left shoulder button changes focus between the text entry and keyboard. - D-pad navigates in the text entry. - Foraging / Search mode improved to work with controllers. NOISEWORKS - Added the violin melee hit/whoosh sounds - Added a volume automation for the hard of hearing trait in addition to the muffling we already had, additional -6db (needs some testing if this is okay) - Minor volume tweak to zombie voices when they're very close, they were a bit too loud - Added occlusion to vehicle engines, horn, sirens (needs some testing) - Slight adjustment to the bass of the footstomp - Play PourLiquidOnGround when emptying paint buckets and similar items. - Added EmptyPan sound for "Empty Frying Pan" and 2 other recipes. The sound is a placeholder for now. - Fixed playing DrinkingFromTap or GetWaterFromTap when drinking from a river sometimes. - Play the FallLight sound when tripping over a hedge/tree. - Added values MeleeHitSurface for per-weapon door-hitting sounds. - Added DoorSound=WoodShackDoor for new door sounds for wood-plank doors. - Added StoveTimer sound. - Added sounds played while constructing gravel-bag and sand-bag fences. - Added sounds for turning media devices on/off and muting/unmuting. - Play Dismantle sound for radios and televisions. - Added generator repair, connect and refuel sounds. - Added sounds for drinking and filling containers from water dispensers. - Added new climb sound for high finces. - Added bullet impact sounds. IN-GAME MAP - Added a button to the in-game map to remove all annotations and forget map knowledge. - Hide the mini-map when the inventory and loot windows are visible when using a controller (so the mini-map doesn't overlap). - Fixed the in-game map view not being centered on the player the first time it's displayed, when the mini-map is also used. - Display controller button prompts in the in-game map. - Play the MapOpen and MapClose sounds when viewing the in-game map. - Fixed moving map symbols with the mouse. BALANCE - Fixed M16 still having its initial experimental values. No longer a death laser. MinDamage reduced to 0.8, MaxDamage reduced to 1.4. - Greased back hair now requires hair gel. - Frog legs and whole fish are now dangerous uncooked. - Military lockers and crates now movable. They'll also contain loot. - Unified spawn items and starter kit functions in SpawnItems.lua. - Fixed drinking directly from river/puddles not making characters sick. - Drinking tainted water now more merciful if character is already sick. - Added ability to use sheet ropes to create log stacks FORAGING / SEARCH SYSTEM - Added foraging tips system to investigate area window. - Added some fixes to make the system work with controllers. - Overlay radius now used instead of item radius for placing investigate arrow markers. - Restructured trait/profession multipliers - now uses definitions. - Added profession and trait category specialisations. - Big bonuses to spot categories for professions. - Small/medium bonuses to spot categories for traits. - Added functions for modders to add trait/profession definitions. - Added ammunition category to urban loot. - Added medical category to urban loot. - Added clothing items to urban loot. - Added some more misc items/fruits/veggies. - Added pinecones (only available from September to December). - Added pinecones can be used as campfire fuel. - Show spotting arrows immediately when the player notices something. - Force-find now reveals an item nearby for the player instead of just moving it closer. - New identifying items system - items can be identified if close enough or from afar with high skill. - Zone display now reveals exact categories when reaching high enough level (identifyCategoryLevel). - Set a minimum dark overlay value so the search radius is always visible even in bright daylight. - Categories can be more or less common (or not available) during rain or snow. - Items can be more or less common (or not available) at night or during the day. - Items and categories can be more or less common (or not available) after it has rained. - Items are moved to player inventory if a backpack goes over capacity - otherwise dropped onto the floor. - Refactored, bugfixed and documented many functions. - Fixed resetting itemTotal when fillZone is called. - Fixed inverted light level values when indoors. - Added foraging weather effect reduction for equipped umbrellas. - Increased darkness/weather effect reduction cap. - Resolved an issue with calculating foraging darkness/weather effect reduction. - Fixed issue causing item markers to disappear when looking away. - Added a chance to generate extra items on affinity sprites - more firewood in forests - more stones on roads. - Tweaked and tidied bonus item generation and syncing. - Added a flag to bonus icons for future management. - Set affinity check to occur after all icons are loaded. - Activate nearby zones inside radius. - Allow multiple categories per affinity sprite. - Show item ghost before spotting if in visible radius. - Added bonus vision definitions for all professions. - Place item marker arrows when inside item spotting radius if item is visible. - Cloud darkness and fog level visibility increased on zone display. - Added some variation to the zone display fog. - Added zone display vision effectiveness tooltip. - Updated search info tip. - Skip checking icons outside loaded cell. - Changed default itemDef value canBeOnTreeSquare to true. - Added more search radius/trait/profession bonus info to Investigate Area tooltip. - Added showing the poison skull on forage pins for mushrooms/berries if player has herbalist skill. - More categories visible on Investigate Area window tooltip with high skill. - Tidied up and documented ISSearchManager/ISBaseIcon. - Tweaked forageSystem penalty calculations. - Fixed icon arrows remaining on screen when sprinting. - Added short sighted foraging debuff can be removed by wearing glasses/reading glasses. - Added testFuncs to skill definitions. - Fix rerolling zone icons while sprinting. - Fix spotting icons while fast forwarding. - Vision radius calculations refactored and tidied. - Icon performance improvements. - Fixed icons recreating with incorrect conditions. - Reduced and capped stuttering caused by cell checks. - Fixed overlay toggling in vehicles. - Improved search radius transitions when toggling mode. - Improved forage zone activation, icon moving, bonus icon generation. - Fixed wild crop seed spawns. - Fixed using the wrong broccoli type for foraging. - Fixed issues in force find tracker. - Skip sprite affinity checks on squares with trees or attached data. - Fixed missing spaces in search window tooltips. - Fixed missing item texture on pins for floor items. - Fixed moved objects spawning bonus items. - Removed performance impact for ISSearchManager, ISZoneDisplay, ISSearchWindow when UI not visible. Balance: - Increased maximum possible spotting range further for specialised characters. - Reduced base XP rewards for foraging. - Tweaked icon density in zones. - Insects, mushrooms, herbs are now much more common at night. - Medicinal herbs are much easier to see. - Increased medicinal herb yields. - Herbs and mushrooms are more common in the rain and after it has rained. - Added disabling search mode if a zombie is very close (about 1 square away). - Reduced headwear vision penalties, added penalties for more types (not hats, never hats). - Increased chance of items to be on affinity sprites (stones on stones, etc). - Allow affinity icons to be moved again if they were not noticed before. - Malus for item size adjusted to a curve to be less punishing. - Rebalanced many item sizes with overrides for spotting (fruit trees, crops, etc). - Reduced berries poison level by a lot - not likely to be fatal. - Reduced mushroom toxicity range - still very risky to eat unidentified. - Added additional food sickness penalty for consuming poison berries and mushrooms. - Added a new increased minimum vision radius for well-lit squares. - Increased variance of medicinal herb yields. - Weather penalty calculation tweaked for snow cover. - Weather penalty maximum increased. - Overlay radius tweaked to use forageSystem min/max size values. - Stones more likely to be found in cracks in the road + rates increased on roads. - Removed skill requirements for some item categories. - Tweaked sprite affinity and bonus icon chances. - Tweaked sprite affinity/bonus icon chances. - Foraged drainable items roll for a remaining amount. - Increased zone icon density. - Additional variation for zone density. - Added more sprite affinities to trash, junk icons, and insects. - Reduced chance of finding rotten wild foods. - Increased chance of fresh wild foods with high skill. - Profession and trait vision modifiers also affect the overlay maximum vision radius. - Increased vision cap for extremely skilled and specialised characters. - Decreased vision cap for non specialised characters. - Ensure vision radius bonus always applies when aiming or sneaking. - Rebalanced profession and trait darkness effect modifiers. - Check darkness cap before placing item marker arrows. - Removed override item size for some small items. - Added more sprite affinities to categories. - Dead animals much more likely to be stale or rotten. - Aiming takes priority over crouching bonus in forageSystem. - Bonus vision effects apply to maximum radius. - Chance to find logs reduced. - Rebalanced vision radius/view distance for spotting. - Increased maximum hunger bonus for food items. - Tweaked vision penalties for clothing. - Increased base spotting speed and bonus spotting speed when aiming/sneaking. - Reduced snow cover and cloud penalty. - Umbrella rain penalty reduction increased and only applies to rain. - Minor zone item count balance tweak. - Added more sprite affinities for stones. - Adjusted profession vision bonuses. Debug: - Added a new IsoMarker type for debugging icon vision radius. - Added icon vision radius + category info debug options. - Added debug option: "Show Icons Locations". Splitscreen fixes: - Fixed split screen icon syncing. - Fixed picking up forage icons with controller in split screen. - Moved forage icon pickup option to the top of right click context menu. - Increased range of back button wheel pickup option. - Back button wheel forage options now use item textures. - Added discard item option to back button wheel. - Tidied up changes for split screen icon syncing. - Fixed syncing of arrows/markers when an item is moved or removed. - Fixed removal of icons noticed by co-op player. - Added zone display split screen support. - Sync forage item poison values in splitscreen co-op. MODDING - Added ISCarMechanicsOverlay.PartList[].vehicles tables to any parts that don't have them. - VehiclePart.setInventoryItem() no longer calls setModelVisible(true|false) for all models, because this interferes with some mods that choose different models based on which item is installed for a part. Instead, a new method VehiclePart.setAllModelsVisible(true|false) was added that is called from these Lua functions: Vehicles.Init.XXX Vehicles.InstallComplete.XXX Vehicles.UninstallComplete.XXX Mods that define "init", "install.complete" and/or "uninstall.complete" Lua functions can now choose to hide or show whichever models they want. Additionally, VehiclePart.repair() now calls the part's "init" Lua function (if it is defined) when creating a missing item. This allows the "init" function to hide or show models. - The game will look for mod texture-pack files named Pack2x.floor.pack (correct) and then Pack.floor2x.pack (incorrect) if the first file doesn't exist. - Added IsoGameCharacter.XP.setPerkBoost(Perk perk, int level). This is for mods that want to change an existing player's XP multiplier for a skill. - Added IsHidden parameter for recipes and evolved recipes - If true, this hides the recipe on the crafting menu - Hidden recipes are still able to be crafted via the right click menu - Evolved recipes are hidden unless a result item exists - This allows adding additional ingredients via the crafting menu FIXES - Fixed a Lua error when trying to spawn a new character in game when the AllClothesUnlocked sandbox option or Character.CreateAllOutfits debug option is enabled. - Fixed the "Aim Outline" option default being "None" instead of "Ranged Weapons". - Fixed the volume controls not working in multiplayer. - Fixed Home VHS tapes switching from blank to not-blank after reloading sometimes. - Fixed some unique Home VHS tapes never being spawned. Now CDs and VHS tapes are randomized in ItemPickerJava. - Fixed translation files from required mods having priority over the mod that required it. If mod B requires mod A, then mod B's translation files will be loaded first so they override the same translation in mod A, if present. - Fixed sitting zombies facing random angles in multiplayer. - Fixed an IllegalArgumentException in IsoChunk.SafeRead() when reading an empty map_X_Y.bin file. - Fixed the mini-map displaying the game's map data in cells that have been overridden by mods. - Fixed some curved-road zones. - Implemented "traffjam / ParkingStall" and "rtrafficjam / ParkingStall" for polyline zones, so traffic jams work on curved roads. - Fixed exercises not starting when a two-handed weapon attached to the back is equipped in both hands. - Fixed a thread-synchronization bug with ZomboidFileSystem.getString() accessing RelativeMap. This led to walls not being cutaway due to failing to load the CircleStencil Shader. - Changed Character.Debug.PlaySoundWhenInvisible default from true to false. - Fixed a few cases where sounds from invisible players could be heard in multiplayer. - Fixed bug in world dictionary when an item similarly named to a base item but with different module would be removed. This was due to scriptmanager.getModule defaulting to 'base' when the module was not found. - Fixed scriptmanager.getModule testing for equals("Base") or startsWith("Base.") instead of startsWith("Base"). This would otherwise result in the same error happening still if one would name their module for example "BaseBuilding". - Fixed item loading when trying to create an item with the same name in a different module. When a mod adds "MyMod.Apple" this a new item that exists alongside "Base.Apple", when MyMod is removed the "MyMod.Apple" bytes in the saves should be skipped. However due to ItemFactory.CreateItem calling the same scriptmanager functions that default to "Base" when no module found, it would try and instance "Base.Apple". - Fixed bug in WorldDictionary ItemInfo where print debug would not print all lines. - Fixed GameLoadingState doing GameClient stuff in single player. - Print any exception that occurs when the "failed to create vehicles database" message is displayed. - Fixed spawned fish in shops and stories unable to be filleted. - Added OnCreate item script property. - Fixed getting extra materials when multiple players scrap an object. - Fixed being unable to construct objects or floors through an open window. - Fixed being unable to disassemble closed doors facing S and E. - Fixed "take pills" anim playing only once when the action is queued. - Disabled take pills action while running (it has no animation). - Fixed the resize behavior of the "Select Spawn Location" ui. - Allow scrolling the map description in the "Select Spawn Location" ui using a controller. - Fixed some forest and vegetation zones near curved streets. - Fixed "ReceiveRemoveCorpse: incorrect square" messages on the client due to corpse rotting. These messages weren't errors. - Fixed incorrect looping in RandomizedZoneStoryBase.cleanAreaForStory(). - Fixed multithreading issues on the server with the vehicles database. - Fixed radial menu for light sources only available for secondary item slot - Fixed double-clicking a watch runs an action but doesn't equip it. - Fixed adhesive bandages weighing too much. - Fixed mechanics books not being in SkillBook category. - Fixed missing Fishing.OnCreateFish function on server. - Set the default name of a profession preset to the name of the profession, plus a number if there is already a preset with that name. - Fixed bowl of beans recipe not scaling to source can's hunger reduction. - Fixed two-tile table stories possibly spawning on two different tables, possibly with a wall in between. - Fixed trailers being detached on the client but attached on the server. - Fixed explosive traps not damaging zombies in singleplayer. - Fixed server soft-reset throwing errors. - Fixed "bare hands" checks which used translated item names. - Fixed lightbulbs breaking even if unpowered. - Allow to plumb sinks in existing buildings if the water is still on. - Fixed zombies densities not affecting loot spawn in MP. This caused Sledgehammers and other items to be a lot rarer in MP than in SP. - Fixed not being able to climb over tall fences when a vehicle is nearby. - Fixed being able to get XP from VHS tapes again after relog. - Fixed TVs showing test screen (only happens 14 days after apocalypse and onward). - Fixed one TV screen not showing in the screen 'animation'. - Fixed the first channel not being properly loaded when radio loads its savefile. - Disabled zomboid radio debugger in mp client (throws error due to stuff not being present on client). - Fixed bug that caused the temperature panel to display all values as zero. (the call to PZMath.clamp in the panels would randomly pick the int or float overload between diff game boots). - added PZMath.clampFloat() - added Thermoregulator node debugger panel. - Fixed WAV sounds flickering between speakers when near the player's location. - Fixed some problems with clothing losing condition due to holes. - Fixed the client savefile not being deleted when the server savefile is soft-reset or recreated. - Fixed playing DrinkingFromTap or GetWaterFromTap when drinking from a river sometimes. - Fixed trap synchronization issues in multiplayer (including multiple explosion sounds). - Fixed noise-trap sound continuing after the trap is picked up. - Fixed farm-plant names not being translated in multiplayer. - Added translation for "Spent Rounds" in firearm tooltips. - Fixed Disassemble tooltips for movables showing the incorrect object name (and no icon) - Limit maximum title and text entry for journals, notebooks, paper - Fixed impossible disassembly of tall fences south and west of player - Added missing radioInteraction codes for perks - Fixed bug in RadialProgressBar with texture offsets - Fixed bug in ISSafetyUI where second part of the radial cooldown would display incorrectly. - Fixed alarms being enabled in buildings the player spawns in (in MP). - Fixed NullPointerException in DeadPlayerPacket.set(). - Forbid having more than three saved splitscreen players in multiplayer. - Fixed issues managing saved splitscreen players in multiplayer. - Fixed SafeHouseRemovalTime greater than 596 removes safehouses. - Fixed player facing direction never getting set on the server. - Fixed Survival Guide error showing the guide when isShowFirstTimeSneakTutorial() is true. - Fixed the "Learned Recipe" text above the player's head when watching a VHS not being translated. - In EvolvedRecipe.java, use NumberFormat.getInstance(Locale.US) instead of DecimalFormat (which uses the default locale) to try and fix rare crafting exceptions. - Fixed getting Fitness XP without exercising when starting exercises while aiming. - Fixed being able to dismantle carpentry window frames and door frames before removing the window or door. - Fixed Z location check in RecipeManager isNearItem - Play sound from the head of zombies that are on the ground (instead of the waist). - Fixed incorrect plant names (and "Mystery Plant") being displayed in the farming-info window. - Fixed not being able to dismantle Metal Floor. - Removed leftover Multi-core option that had no effect anymore. - Fixed double-jump animation climbing over fences when holding a two-handed weapon. This mostly occured on Linux distributions. - Fixed Pacifist trait not reducing XP gains with LongBlade weapons. - Fixed Soup bowls, Stew bowls and Pie Slices inheriting original hunger values. - Fixed not being able to scroll the outfit panel with the mouse wheel in the character-creation ui (with all outfits enabled). - Fixed setStopOnWalk/setStopOnRun recipe function typos - Fixed uncooked Omelette being safe to consume - Fixed an ISZoneDisplay error when debug teleporting in single player