Team up with friends in this intense multiplayer survival game. Gather resources, craft weapons, build defenses, and fight waves of zombies that grow stronger each night.
Latest Updates
v0.29.0LATEST
2025-11-29
✨ Features
●Added Battle Royale game mode - new competitive mode with shrinking toxic zones, crate spawns, and last-player-standing victory condition
●Implemented AI system for zombie players - comprehensive AI with state machines, pathfinding, targeting, threat assessment, and combat decision-making
●Added auto-pickup functionality - resources, coins, trees, and stackable items automatically collect when walked over for smoother gameplay
●Added Toxic Biome Zone entity - new environmental hazard that applies poison effects to players within its area
●Enhanced version mismatch handling - clients now receive graceful version mismatch events instead of immediate disconnection
●Added game mode system - extensible strategy pattern supporting multiple game modes (Waves and Battle Royale)
●Improved zombie player interactions - zombie players can no longer interact with items, vehicles, crafting, or toxic zones
🔧 Refactoring
●Removed admin command manager - eliminated CommandManager from both client and server for improved security and code simplicity
●Refactored player entity validation - enhanced type safety with proper PlayerClient instance checks throughout game client and HUD
●Refactored interactive entity rendering - improved performance by skipping rendering when auto-pickup is enabled or display name is empty
●Enhanced event handling architecture - refactored socket managers and event handlers to support new game modes and improved error handling
●Improved entity management - better handling of zombie player restrictions and game mode-specific behaviors
●Added comprehensive client-server initialization documentation - detailed guide explaining serialization behavior and game state management
⚡ Performance
●Optimized interactive entity rendering - reduced unnecessary rendering calls when entities have auto-pickup enabled
●Added player color customization - players can now select from a range of colors to personalize their appearance
●Added upgraded structure entities - WallLevel2, WallLevel3, SentryGunLevel2, SentryGunLevel3, SpikesLevel2, and SpikesLevel3 for enhanced gameplay strategies
●Improved wave pacing - reduced wave duration from 60 seconds to 30 seconds for faster-paced gameplay
🔧 Refactoring
●Refactored placement logic - introduced entityBlocksPlacement function to improve clarity and maintainability of structure placement
●Enhanced placement system - decal entities (blood, acid) no longer block structure placement, allowing visual effects without interfering with gameplay
●Updated poison extension parameters - increased toxic gas cloud max damage from 1 to 3 for improved gameplay dynamics
⚡ Performance
●Optimized network serialization - implemented efficient serialization methods for ItemState, reducing data size during network transmission
●Introduced encoding systems - added item type, group, interactable text, and wave state encoding to map strings to numeric IDs for improved network efficiency
v0.27.0
2025-11-23
✨ Features
●Added thunderstorm event management - thunderstorms trigger after wave completions with configurable duration and lightning intervals
●Added lightning bolt effects - visual lightning strikes that damage players caught in the strike area
●Added rain particle effects - visual rain particles during thunderstorms for enhanced environmental immersion
●Enhanced environmental event system - refactored to support multiple environmental strategies including toxic gas and thunderstorm events
🔧 Refactoring
●Refactored environmental event manager - moved to strategy pattern with separate strategies for each event type for better extensibility
●Enhanced game state management - added support for global illumination and darkness hue changes during thunderstorms
v0.26.0
2025-11-23
✨ Features
●Added toxic gas cloud entity and environmental event management - toxic gas clouds spawn after wave completions, expanding over time and creating hazardous areas
●Added energy drink item - consumable item that provides temporary infinite run effect, allowing players to sprint without depleting stamina
●Implemented automatic player respawn mechanics - players automatically respawn after death when cooldown expires, with countdown display on death screen
●Added survivor and crate spawning mechanics - survivors and crates now spawn in random biomes at wave start, improving item distribution and gameplay dynamics
🔧 Refactoring
●Enhanced survivor indicators and UI responsiveness - survivor indicators now only show unrescued survivors on map and minimap, improving visual clarity
●Improved item drop balance - adjusted item drop chances for zombies and overall spawn rates using global multipliers for better game balance
v0.25.0
2025-11-23
✨ Features
●Enhanced merchant panel functionality - improved UI layout with title area, close button, and better spacing for better user interaction
●Added balance configuration system - centralized pricing configuration for consistent item pricing across merchants
●Implemented individual player cooldowns for car repairs - each player now has their own repair cooldown timer
🔧 Refactoring
●Refactored input handling - restricted key inputs when merchant panel is open, allowing only Escape and E to close the panel
●Enhanced entity management - added safety checks to prevent duplicate entity IDs and ensure proper ID recycling
●Improved merchant buy panel - always displays all inventory items without tab filtering for better visibility
●Updated prediction manager - skips collision checks for walls and sentry guns to improve performance
●Adjusted Splitter Boss balance - reduced splits remaining from 4 to 3 for better game balance
●Improved one-time trigger extension - enhanced check interval for more responsive interactions
●Updated item stack sizes and inventory handling - improved gameplay experience with better stack management
v0.24.0
2025-11-22
✨ Features
●Added Splitter Boss zombie - new boss type that splits into smaller versions when reaching health thresholds, spawning on wave 9
●Implemented boss split mechanics - Splitter Boss splits up to 2 times with configurable speed, health, and damage multipliers per split
●Added boss split event system - client and server-side event handling for boss splitting behavior with visual feedback
🔧 Refactoring
●Enhanced boss entity system - added split configuration support for dynamic boss behavior
●Updated wave configuration - integrated Splitter Boss into wave spawn system as wave 9 boss
v0.23.0
2025-11-22
✨ Features
●Added Acid Flyer zombie - new flying zombie type with cross-dive movement pattern that drops acid on players
●Implemented Acid and Poison effects - players can be poisoned when walking over acid pools left by Acid Flyers
●Added Grave Tyrant boss zombie - replaced BossZombie with new Grave Tyrant boss type
●Added Charging Tyrant boss zombie - new boss type with ground slam attack and charging movement strategy
●Implemented player display name functionality - players can now change their display names with validation and local storage support
🐛 Bug Fixes
●Fixed game instructions toggle - instructions menu no longer toggles when typing username on initial screen
🔧 Refactoring
●Enhanced zombie movement strategies - added cross-dive movement pattern for Acid Flyer and charging movement for Charging Tyrant
●Improved attack strategies - added ground slam attack for Charging Tyrant with area damage effect
●Updated wave configuration - integrated new zombie types into wave spawn system
v0.22.0
2025-11-22
✨ Features
●Added car destruction mechanics - car can now be destroyed, spawning zombies around the campsite and creating explosion effects
●Enhanced zombie spawning system - implemented robust spawn logic that ensures zombies spawn at valid positions with proper distribution
🐛 Bug Fixes
●Fixed chat widget player name retrieval - now correctly checks if entity is PlayerClient instance before retrieving name
🔧 Refactoring
●Refactored MapManager - introduced constants for ground and collidable tile IDs to improve readability and maintainability
●Improved spawn logic and tile handling - enhanced biome proximity checks and merchant spawn logic for better configurability
●Updated resource bag initialization - players now start with zero coins instead of twenty for improved game balance
●Enhanced throwing knife projectile - now stops at boundaries while allowing it to pass through walls
v0.21.0
2025-11-22
✨ Features
●Added merchant item selling functionality - players can now sell items to merchants for coins
●Enhanced item pickup logic - improved feedback when inventory is full with visual messages and color-coded interaction text
●Added interaction text background - improved visibility of interaction prompts with background styling
●Enhanced SpawnPanel - categorized spawnable entities into weapons, items, zombies, and ammo for better organization
●Improved inventory capacity checking - accurate detection of full inventory based on non-null item count
●Enhanced campfire rendering - uses entity type for dynamic asset loading instead of hardcoded keys
⚡ Performance
●Optimized campfire sound updates - caches campsite fire reference to avoid repeated entity searches
v0.11.7
2025-11-14
🔧 Refactoring
●Refactored movement strategies - centralized targeting logic into shared movement-utils module for consistency across all zombie AI types
●Added getCarLocation() method to MapManager - provides centralized access to car position for AI targeting
⚡ Performance
●Optimized AI targeting - zombies now prioritize closest friendly entities (players/survivors) over car, reducing unnecessary long-distance pathfinding
●Added tiered entity update system - entities far from players now update less frequently to reduce CPU usage (configurable via UPDATE_TIERS config)
●Optimized trigger extensions - OneTimeTrigger and TriggerCooldownAttacker now check for entities every 0.5 seconds instead of every tick
●Added random cooldown offsets to trigger checks - prevents multiple triggers from checking simultaneously and spreads queries over time
●Added UpdateScheduler class - manages entity update frequency based on distance tiers (0-500px, 500-1000px, 1000+px ranges)
●Integrated UpdateScheduler into EntityManager - entities automatically register/unregister and update based on proximity to players
●Improved zombie AI efficiency - all movement strategies now use TargetChecker class to cache target positions and reduce redundant calculations
●Added UPDATE_TIERS configuration - allows enabling/disabling tiered updates and customizing update intervals per tier
v0.11.6
2025-11-14
✨ Features
●Added granular performance tracking instrumentation throughout zombie AI update loops for detailed profiling
●Added ENABLE_PERFORMANCE_MONITORING config flag - performance monitoring disabled by default for production safety
🐛 Bug Fixes
●Fixed player activeItem handling - added proper null/undefined checks to prevent rendering crashes
🔧 Refactoring
●Removed fire extinguisher item from the game (cleaned up both client and server implementations)
●Removed debug console.log statements from asset manager for cleaner production logs
⚡ Performance
●Optimized zombie AI performance - offset attack cooldowns randomly to prevent simultaneous attacks and spread expensive queries over time
●Optimized idle zombie behavior - reduced player check frequency from every tick to every 0.5 seconds for significant CPU savings
●Optimized survivor targeting - converted to filterSet-based entity queries and squared distance calculations for faster nearest zombie detection
●Improved attack strategy efficiency - idle zombies now skip attack queries when no players are nearby (avoids expensive operations when zombies are far away)
v0.11.5
2025-11-13
🐛 Bug Fixes
●Fixed input crash bug - added null/undefined checks for previousInput in facing and aim angle comparisons
●Fixed client rendering crash - added extension existence check before accessing ClientCollidable in BulletClient
●Fixed player initialization - ensured input is always defined with fallback to default values
●Fixed OneTimeTrigger distance calculation - changed from getPosition() to getCenterPosition() for accurate trigger detection