5.6 KiB
Skybound Survivor-Like Balance Curve Pass
Date: 2026-04-24
Project: Skybound Protocol
Author: Codex
Status: Raw gameplay balance pass from user playtest feedback
1. Playtest Feedback
The game shell looked close to Survivor.io / Vampire Survivors, but the actual gameplay did not feel like that genre.
Reported issues:
- gameplay did not deliver enough horde-survival pressure
- stage balance felt uneven
- TAC Level Up pacing felt unbalanced
- growth did not form a satisfying user-facing curve
2. Diagnosis
The previous balance leaned closer to a shmup / tactical shooter.
Main causes found in code:
- simultaneous enemy cap was too low for a horde-survival feel
- procedural spawn did not fully use the timeline
spawnIntervalMult - early EXP requirement was too high
- EXP growth multiplier was too steep
- stage difficulty scaled enemy/bullet stats too aggressively
- stage scripted events were compressed too early in the timeline
- TAC Level Up card offers were weighted but not structured, so the user could receive awkward choices
- starter skill offers could omit key horde-survival archetypes
3. Target Curve
New target:
- first meaningful upgrade should arrive quickly
- player should see more enemies on screen
- enemies should be individually weaker
- danger should come from density and positioning, not bullet stat spikes
- level-up choices should consistently support build formation
- stage progression should rise smoothly rather than jump sharply
4. Applied Balance Changes
EXP and Level-Up
Changes:
- initial required EXP lowered from
100to45 - normal enemy EXP increased from
5to7 - elite EXP increased from
25to32 - level-up EXP multiplier changed from steep
1.60 / 1.72 / 1.85to smoother1.24 / 1.30 / 1.36 / 1.42
Expected result:
- early TAC Level Ups arrive faster
- the player can form a build before the first spike
- later progression still slows down without becoming a wall
TAC Level Up Card Structure
The card generator now tries to offer:
- one owned skill upgrade
- one synergy / spike-counter / EVO-supporting option
- one flexible option
Expected result:
- fewer dead-choice screens
- higher chance of completing coherent builds
- less frustration from random-only card pools
Starter Selection
Starter cards now come from three archetype buckets:
- primary damage
- area / crowd control
- utility / defense
Expected result:
- every run begins with a usable horde-survival foundation
- the first choice feels strategic without becoming punishing
Enemy Density and Spawning
Changes:
- hard enemy cap increased from
30to90 - timeline phase caps increased by stage and phase
- procedural spawn interval now uses
spawnIntervalMult - procedural spawns can arrive in small batches
- formation spawns now occur more often
- individual enemy HP and speed were reduced to support higher density
- elite chance is now a gradual probability instead of flipping too hard by difficulty
Expected result:
- more screen-filling horde pressure
- less empty movement time
- more satisfying weapon-clearing moments
Stage Curve
Changes:
- stage duration curve changed from
120 + stage * 30sto150 + stage * 18s - stage difficulty scaling reduced from steep
+0.4 per stageto smoother+0.18 per stage - phase difficulty multipliers were lowered
- phase enemy caps were increased
- scripted wave events are distributed across the stage instead of firing too early
Expected result:
- stages feel less spiky and more readable
- difficulty rises through density and phase rhythm
- player has time to grow before major pressure events
Enemy Bullet and Damage Pressure
Changes:
- enemy bullet speed curves were reduced
- damage curves were reduced
- bullet caps were reduced
- global enemy bullet speed multiplier reduced
- enemy projectile damage multipliers reduced
Expected result:
- gameplay moves away from bullet-hell punishment
- movement pressure still exists, but horde positioning becomes the main focus
Weapon Rhythm
Several weapon cooldowns were shortened so early picks feel active sooner.
Nova Burst was also adjusted to trigger sooner and scale more clearly as an AoE crowd-control tool.
5. Changed Runtime Paths
Important changed paths:
/Volumes/Data/project/Antigravity/Skybound/src/features/game/config/balance.ts/Volumes/Data/project/Antigravity/Skybound/src/features/game/config/CombatTimeline.ts/Volumes/Data/project/Antigravity/Skybound/src/features/game/config/weaponBehaviors.ts/Volumes/Data/project/Antigravity/Skybound/src/features/game/systems/SpawnerSystem.ts/Volumes/Data/project/Antigravity/Skybound/src/features/game/systems/ProgressionSystem.ts/Volumes/Data/project/Antigravity/Skybound/src/features/game/systems/CombatSystem.ts/Volumes/Data/project/Antigravity/Skybound/src/features/game/systems/ModularWeaponSystem.ts/Volumes/Data/project/Antigravity/Skybound/src/features/game/systems/types.ts/Volumes/Data/project/Antigravity/Skybound/src/features/game/hooks/useGameEngine.ts/Volumes/Data/project/Antigravity/Skybound/src/features/game/store/useGameStore.ts
6. Verification
Production build completed successfully with:
npm run build
The existing /sprites/player.png static path warning remains non-blocking.
7. Next Playtest Questions
Recommended next playtest checks:
- Does the first level-up happen within a satisfying time window?
- Does the screen feel populated without becoming unreadable?
- Do weapons feel like they clear hordes?
- Do stage spikes feel earned rather than sudden?
- Does TAC Level Up usually offer at least one desirable choice?