v0.3.0-prebeta
completedDeployed on Dec 6, 2025, 15:12:47
Deployment Details
Version
v0.3.0-prebeta
Status
completedPlatforms
macOSWindows
Deployed At
Dec 6, 2025, 15:12:47
Channels
mac-prebetawindows-prebeta
Build Information
macOS Build
Windows Build
FeatureDec 6, 2025
Release 0.3.0-prebeta
New Features
- build: auto-detect version from git tag for build path
- ui: add UI metadata for DifficultyChoice, WeaponAbilityChoice and LoadingScreen
- ui: add UIButtonSoundHandler for button audio feedback
- ui: add MainMenu button assets
- ui: migrate AbilityHUD to UI Toolkit (UXML/USS)
- ui: add shared settings infrastructure for extensible controls
- ui: add SOUND button to MainMenu OPTIONS panel
- ui: add dynamic bullet spacing based on magazine size
- ui: add WeaponHUD controller with selection and cooldown
- ui: add WeaponHUD UXML/USS for weapon slots display
- ui: add AmmoHUD controller for UI Toolkit
- ui: add Ammo HUD UXML and USS files
- ui: migrate WeaponAbilityChoiceUI to UI Toolkit UXML
- ui: migrate DifficultyChoiceUI to UI Toolkit UXML
- ui: add HealthHUD controller for UI Toolkit
- ui: add Health HUD UXML and USS files
- pause-menu: convert title label to image button
- ui: add GameOverUI UXML/USS resources and title image
- pause-menu: add retry confirmation dialog and sound control
- ui: add pause menu prefab
- ui: add pause menu UI resources (UXML/USS)
- ui: add level unlock UI with locked state display
- level: determine LevelId from scene name for unlock system
- save: add level completion persistence with DontDestroyOnLoad
- ui: use prefab for loading screen hat with Unity Animator
- ui: add diagnostic logging to loading screen flow
- ui: add inline difficulty selection to level card
- ui: make MainMenu UI Toolkit responsive for multiple resolutions
- ui: redesign Options panel with arcade style
- ui: make MainCutscene responsive for multiple resolutions
- ui: redesign Shop with MainMenu arcade style
- ui: use BackButton image for level selector back button
- ui: implement level carousel navigation logic
- ui: add level carousel structure and styles
- cutscene: add skip functionality with any key press
- ui: replace main menu text elements with images
- ui: update main menu with title image and fade-in styles
- audio: add main menu ambient audio assets
- cutscene: add intro cutscene with Timeline and automatic scene transition
- combat: increase NavMesh acceleration for improved deceleration
- combat: adjust NavMesh stopping distance for smoother arrival and reduce update frequency in DynamicSortingOrder
- level: refactor UpperWaypoint handling to use manual placement in Background prefabs
- build: update build scripts and remove alpha designation from build names
- weapon: update MachineGun properties and enhance fire rate calculation
- weapon: add MachineGun type with base damage and fire rate properties
- shop: enhance auto-save system to capture and transfer session currency during load
- save: implement save and load handlers with JSON support and auto-save functionality
- stats: add LevelStatsUI prefab and associated UI elements for displaying level completion statistics
- level: add ranking and reward system with UI integration
- currency: implement Currency HUD with real-time display and styling
- player: integrate player attributes into weapon and bullet damage calculations
- shop: implement shop system with currency rewards and UI integration
- obstacles: add VehicleObstacle prefab and update obstacle configurations
- level: add totalEnemies configuration and adjust enemy spawning logic
- obstacles: introduce new obstacle types and enhance prefab configurations
- obstacles: add standalone cover points and enhance obstacle spawning logic
- obstacles: balance player and enemy obstacle generation based on counts
- level: ensure UpperWaypoint generation for all phases and refine boss spawning logic
- waypoints: add UpperWaypoint prefab and implement two-step navigation for phase transitions
- obstacles: add ContainerObstacle prefab and enhance theme-specific sprite loading
- limits: add new Limits prefab with defined left and right boundaries
- navmesh: implement not-walkable zones for background limits
- integrate obstacle activation with phase completion timing
- implement elegant obstacle activation timing system
- implement and enhance enemy ammunition reward drop system
- actualizar prefabs de backgrounds con nuevas dimensiones
- actualizar sprites de backgrounds para resoluciones más anchas
- update background scale and adjust LevelGenerator phase settings
- update LevelGenerator configuration and adjust UI element positions
- implement responsive UI scaling system for multiple resolutions
- adjust PlayerUI layout and positioning
- update UI prefab sizes for improved visibility
- enhance PlayerUI sizing and spacing configuration
- implement background music volume management for difficulty selection UI
- implement ObstacleDifficultyManager for dynamic obstacle management based on difficulty selection
- implement column restriction for obstacle spawning
- add 'Only With Cover Points' option to DifficultyConfig
- add heart sprite display when abilities reach max level
- implement smart reward system with upgrade vs heal logic
- add ability upgrade management and event system
- implement visual star system for ability levels
- add level-based parameter scaling to all combat abilities
- implement 3-level ability upgrade system with core interfaces
- add NoAmmo audio file for empty weapon feedback
- add no-ammo sound when shooting without ammunition
- add comprehensive enemy movement debugging logs
- implement grenade removal system when ammo reaches zero
- fix player blinking when multiple abilities end simultaneously
- integrate background music volume control with level completion
- add audio management to level completion and game over UIs
- simplify and fix background music volume management system
- implement blur effect for level completion UI
- add grenade throw audio file
- add grenade throw sound functionality
- enhance audio integration in game systems
- update and add new audio files
- implement background music system
- add death sound for combatants
- add sound effects for weapon and ability rewards in hard phase selection
- integrate health bar system with existing enemy framework
- implement differentiated audio system for combatant vs obstacle hits
- add heart pickup sounds when obtaining hearts
- add obstacle destruction sound system
- implement enemy health bar system with 3-bar thirds design
- implement red screen damage effect system and related improvements
- aumentar el tamaño de los textos del selector de dificultad de fase
- pause timer during 2-second phase transition delay
- balance weapon ammunition limits for better gameplay
- implement complete randomization of reward system
- implement cooldown visual preservation during phase transitions
- integrate HeartTemporal system with phase management
- implement HeartTemporal system in PlayerHealth
- implement PhaseHealthTracker for temporal heart system
- add HeartType.Temporal enum and reward system
- add Shield Heart choice configuration system
- implement Shield Heart reward functionality
- implement Shield Heart system in PlayerHealth
- implement parametrizable Easy difficulty reward system
- add parametrizable heart reward system for future extensibility
- implement comprehensive GamePauseManager system
- implement FireRate boost ability system
- enhance obstacle system with 12 HP and dynamic visual damage
- implement enemy reward drops system
- implement visual damage system for obstacles
- implement breakable obstacles system with health
- add weapon fire rate visual feedback UI
- complete weapon fire rate system implementation
- add resurrection ability sprite assets
- add UI support and progression for passive abilities
- integrate passive abilities with death and shield systems
- implement passive abilities system with resurrection
- create dedicated instances for DifficultyChoiceUI and WeaponAbilityChoiceUI
- complete GenericTwoChoiceUI system implementation
- create GenericTwoChoiceUI system for reusable binary choices
- implement comprehensive abilities system with Shield Boost
- implement weapon selection UI with dynamic slots for unlocked weapons
- add grenade throwing mechanics and weapon manager
- add Shooting-Grenade animations and controller setup
- add Cover-Grenade animation and controller setup
- implement difficulty-based reward system with extra health
- add blur effect to DifficultyChoiceUI for enhanced visual feedback
- improve DifficultyChoiceUI responsiveness and visibility
- preserve background visibility when deactivating unselected phases
- add additional backgrounds for initial phase visual continuity
- activate phase management on difficulty selection
- add phase management to enemy spawning system
- integrate phase management with level generation
- add phase management system for branching phases
- update level logic for branching phase navigation
- integrate branching phase system with level generator
- implement branching phase generation system
- add branching phase navigation and difficulty choice UI
- implement difficulty choice UI for branching phase navigation
- implement branching phase generation system
- update CombatantHealth for difficulty system compatibility
- update phase and wave generators for difficulty support
- integrate difficulty system with level generation
- add difficulty system core components
- add loading screen progress tracking to LevelGenerator
Bug Fixes
- ui: use AutoSaveMonoBehaviour singleton for reset functionality
- build: resolve Debug ambiguity with using alias
- audio: prevent grenade explosion sound from being cut off
- audio: fix sound not playing on weapon/ability selection
- pause-menu: restructure OPTIONS with SOUND submenu
- audio: pause gameplay sounds when game is paused
- ui: use CanvasGroup alpha for GameOverUI visibility check in pause handler
- shop: separate AutoSaveMonoBehaviour from ShopUI GameObject
- level: capture levelId before CompleteLevel mutation
- ui: prevent loading screen resize during scene transitions
- timeline: remove RectTransform curves from MainMenuImage-2 animation
- ui: prevent Start() from hiding DifficultyChoiceUI when already showing
- audio: add grace period to prevent menu music during scene transitions
- navmesh: disable NavMeshObstacle toggling to prevent async carving issues
- cutscene: improve scene transition with additive loading
- ui: improve loading screen timing and visibility control
- enhance obstacle management and state reset for scene reloads
- correct difficulty selection flow from MainMenu to LevelGenerator
- adjust background prefab sizes and positions for consistency
- bullet now continues path when hitting covered combatants
- improve obstacle difficulty management system
- update background prefabs configuration and metadata
- allow grenade ammo accumulation when weapon already unlocked
- change timer display to show single decimal place
- ajustar posicionamiento dinámico de barras de vida de enemigos
- update enemy bonus pool handling and increase total enemy obstacles
- prevent Obstacle component duplication in level generation
- prevent SortingOrder component duplication in obstacles
- restore random skill selection, remove hardcoded shield testing
- update deprecated field references in generator files
- update scene references and prefab configurations
- resolve double event firing and UI duplication bugs
- prevent bonus enemies from dropping rewards
- improve background music manager singleton pattern
- resolve NavMeshAgent destination not updating for pooled enemies
- block player input during UI selection screens
- prevent player taking damage while covered
- remove timer animation when EnemyBonus disappears naturally
- remove death sound when EnemyBonus disappears
- update Unity scene configuration for blur effect
- improve grenade explosion sound and fix premature explosion
- resolve compilation errors
- resolve compilation errors and warnings
- correct player action blocking during UI display
- implement 2-second delay after phase completion to prevent bullet issues during transitions
- change ShieldBoostAbility color to unique green
- restore ability sprites in reward selection UI
- correct obstacle sprite transitions for dynamic health configurations
- resolve phase progression and timing issues
- implement dynamic blur management for difficulty selection
- prevent duplicate reward application in Easy difficulty
- apply right-to-left positioning to health UI hearts
- apply right-to-left positioning to weapon UI slots
- resolve abilities UI overflow with right-to-left positioning
- allow EnemyBonus movement to cover points without obstacles
- implement dual-container AmmoUI system with fallback
- reduce obstacle minimum distance to allow more cover points
- make enemy cover point generation independent of player count
- player cover point movement - assign sequential orders and add diagnostics
- resolve enemy bonus movement blocking on destroyed obstacles
- enemy cover logic for destroyed obstacles
- correct bullet-obstacle collision and damage order
- update sprite metadata after Unity cache regeneration
- remove debug Gizmo sphere and fix grenade timing bug
- correct .gitignore to track essential Unity files
- enhance resurrection invulnerability system and debug logging
- ensure consistent background for initial phase trio
- track played phases for accurate enemy counting in branching system
- remove unused exception variable in FileLogger
- implement linear vertical phase layout and dynamic NavMesh bounds
- adjust NavMesh bounds dynamically based on generated phases
- store background width in GenerateLevelImmediate method
- add detailed logging for NavMesh generation debugging
- force correct Canvas configuration in LoadingScreenUI
- resolve compilation errors in loading screen system
- update CameraPoint to return world position instead of local position
- update coverPointNavMeshSurface and adjust cover point positions in LevelGenerator
- update navMeshGeometry setting in LevelGeneratorConfig
Improvements
- config: update MainMenu scene and LevelGenerator config
- ui: refresh GameOver title and MainMenu timeline assets
- ui: reorganize PauseMenu prefab into directory structure
- ui: integrate AbilityHUD with PlayerAbilityUIHandler
- ui: migrate PauseMenuUI to use SoundSettingsController
- ui: migrate MainMenuUI to use SoundSettingsController
- weapons: migrate PlayerWeaponHandler to use WeaponHUD
- ammo: migrate PlayerAmmo to use AmmoHUD
- shop: use SceneFinder cache for MainMenuUI
- ui: use SceneFinder cache for HealthDamageScreenEffect
- level: use singleton Instance instead of FindObjectOfType
- audio: use singleton Instance instead of FindObjectOfType
- pause: consolidate 3 FindObjectsOfType calls into one
- health: migrate PlayerHealth to use HealthHUD
- ui: remove verbose debug logs from PauseInputHandler
- player: cache Camera.main to avoid FindGameObjectWithTag per shot
- timer-ui: migrate from TextMeshPro to UI Toolkit UXML
- obstacles: remove unused variable allocation in ApplyInitialObstacleState
- runtime: eliminate new GameObject allocations in gameplay
- coroutines: replace polling loops with event-driven architecture
- scenes: update GameOverUI references in level scenes
- ui: update GameOverUI to use UIDocument
- ui: migrate GameOverUI prefab to UI Toolkit
- misc: wrap Debug.Log calls in cutscene and attribute-upgrade
- weapon: wrap Debug.Log calls in conditional compilation
- ui: wrap Debug.Log calls in conditional compilation
- stats: wrap Debug.Log calls in conditional compilation
- shop: wrap Debug.Log calls in conditional compilation
- shared: wrap Debug.Log calls in conditional compilation
- scene: wrap Debug.Log calls in conditional compilation
- rewards: wrap Debug.Log calls in conditional compilation
- player: wrap Debug.Log calls in conditional compilation
- level: wrap Debug.Log calls in conditional compilation
- game: wrap Debug.Log calls in conditional compilation
- enemy: wrap Debug.Log calls in conditional compilation
- currency: wrap Debug.Log calls in conditional compilation
- combatant: wrap Debug.Log calls in conditional compilation
- projectiles: wrap Debug.Log calls in conditional compilation
- audio: wrap Debug.Log calls in conditional compilation
- ability: wrap Debug.Log calls in conditional compilation
- ui: swap level order in carousel
- scene: implement Dictionary caching for cover points to eliminate LINQ overhead
- player: increase waypoint arrival threshold for smoother phase transitions
- scene: cache component references in Obstacle to eliminate redundant GetComponent calls
- level: enhance logging for phase transitions and choice handling
- add UI Toolkit support for Main Menu and Level Selector
- implement theme-specific music loading in BackgroundMusicManager
- updated street level backgrounds size
- add metadata files for level themes and background sprites
- simplify Game initialization and encapsulate level setup
- add meta files and interfaces for level and audio management
- update event bus implementation and adjust event handling in game components
- rename files and update namespaces for improved organization
- change blurEffect visibility to private in UI components
- reorganize namespaces and file structure for UI components
- rename DifficultyRewardManager to DifficultyRewardHandler and update references
- rename PlayerAbilityManager to AbilityHandler and update related references
- update file structure and namespaces for navmesh components
- rename SceneElements to SceneFinder and update references throughout the project
- clean up whitespace and improve logging format in Grenade class
- rename Grenade and GrenadePool files for consistency
- update namespaces for bullet and enemy events for clarity
- rename WeaponFactory to WeaponCreator and update namespaces for clarity
- reorganize audio namespace and update event handling to use GameEventBus
- removed unnecesary files
- reorganize namespaces and update event handling for enemy rewards
- rename files and organize asset metadata for clarity
- reorganize namespaces and update difficulty management to use GameSession
- update configuration references to use LevelDifficultyConfig
- removed unnused files
- scene and weapon configuration adjustments
- improve logging and configuration management
- enhance level generation system and UI improvements
- remove deprecated cover point fields from DifficultyConfig
- replace fixed spawn point fields with dynamic calculation
- remove redundant maxPhases field from LevelGeneratorConfig
- migrate generators to use DifficultyConfig
- remove obsolete fields from LevelGeneratorConfig
- optimize logging and update frequencies for better performance
- update enemy combatant implementations
- update Obstacle domain for audio system integration
- improve GenericTwoChoiceUI configuration and event system
- update level generation configuration
- move FileLogger to system temp directory with automatic cleanup
- migrate DifficultyChoiceUI to use GenericTwoChoiceUI system
- migrate WeaponAbilityChoiceUI to use GenericTwoChoiceUI
- changed cover grenade psd file to white color stickman
- update loading screen references to use DDD architecture
- improve NavMesh area handling and streamline validation logic in LevelGenerator
- streamline NavMesh logging and improve state handling in Combatant and Enemy classes
- changed directories