Survival Mode
Survival is Crimsonland’s signature endless mode. Fight infinite waves of creatures while gaining experience and selecting perks to build your character. The game ends when you die.
Mode ID
Game Mode: 1 (GameMode.SURVIVAL)
From src/crimson/game_modes.py:11
Core Loop
- Kill creatures to gain experience
- Level up to select a perk from 5 random choices
- Collect weapon and power-up bonuses
- Survive as long as possible
- Die when health reaches zero
Difficulty Scaling
Survival mode features continuous difficulty escalation:
Spawn Rate
Creature spawn rate increases over time. The spawn timer starts at a moderate interval and accelerates as you progress, eventually spawning creatures every few frames.
Enemy Composition
Early waves feature basic creature types (Zombies, Lizards, Spiders). As time progresses:
- Tougher variants appear with higher HP and damage
- Faster creatures with aggressive AI patterns
- Ranged attackers and special ability creatures
- Boss-type enemies with massive HP pools
Density
The maximum simultaneous creature count increases, creating increasingly dense crowds that require area-damage weapons and positioning skill.
Perk System
Survival mode is the primary showcase for Crimsonland’s perk system.
Level-Up Mechanics
XP Thresholds: Each level requires progressively more XP. The first level-up happens quickly, but later levels take significantly longer.
Perk Selection: On level-up, you choose from 5 random perks. The selection pool includes:
- All perks not marked quest-only or two-player-only
- Perks you already have (if they’re stackable)
- Prerequisite-locked perks appear only after requirements are met
Perk Expert/Master: These perks increase the selection pool:
- Perk Expert: +2 choices (7 total)
- Perk Master (requires Perk Expert): Doubles to 14 choices
Perk Availability
From src/crimson/perks/ids.py:10-16:
class PerkFlags(IntFlag):
QUEST_MODE_ALLOWED = 0x1
TWO_PLAYER_ALLOWED = 0x2
STACKABLE = 0x4
Perks without QUEST_MODE_ALLOWED flag are available in Survival. Some perks are survival-exclusive:
- Breathing Room (two-player only)
- Death Clock, Grim Deal, Final Revenge, Highlander (disabled in quest/two-player)
Weapon Acquisition
Bonus Drops
Weapon bonuses drop randomly from killed creatures. Drop rate is influenced by:
Pistol Bias: While holding the Pistol, the game increases overall bonus drop rate and forces 75% of bonuses to be weapon pickups.
Bonus Magnet Perk: Increases overall bonus spawn frequency.
My Favourite Weapon Perk: Disables random weapon bonuses entirely (+2 clip size to current weapon as compensation).
Starting Loadout
All survival games start with:
- Pistol (Weapon ID 1)
- 100 HP
- No perks
- Level 1 (0 XP)
Scoring
Score Calculation
Kill Score: Each creature kill awards points based on creature type and difficulty. Tougher enemies give more points.
XP Score: Experience points contribute to final score.
Survival Time: Longer survival times increase score multiplier.
Bonus Pickups: Point bonuses add directly to score (500 XP per Points bonus pickup).
High Scores
Survival mode tracks high scores per difficulty level. The scoring system rewards:
- Long survival time
- High kill counts
- Efficient XP gain
Strategy Considerations
Early Game (Levels 1-5)
Priority Perks:
- Fastshot: Increases DPS immediately
- Bloody Mess/Quick Learner: Accelerates leveling
- Radioactive: Passive area damage
Weapon Goals: Escape the Pistol ASAP. Assault Rifle, Shotgun, or Submachine Gun are solid early picks.
Mid Game (Levels 6-15)
Priority Perks:
- Fastloader: Reduces vulnerability during reloads
- Ammo Maniac: Extends effective DPS windows
- Bonus Magnet: Increases resource flow
- Unstoppable: Prevents movement speed reduction from damage
Weapon Goals: Seek plasma weapons (Plasma Rifle, Plasma Minigun) or penetrating weapons (Gauss Gun).
Late Game (Levels 16+)
Priority Perks:
- Regeneration/Greater Regeneration: Sustain through chip damage
- Dodger/Ninja: Avoid damage entirely
- Thick Skinned: Reduce incoming damage (despite HP cost)
Weapon Goals: High DPS weapons with area effects (Plasma Shotgun, Ion Cannon, Rocket Minigun).
Build Archetypes
Tank Build:
- Thick Skinned
- Regeneration → Greater Regeneration
- Dodger → Ninja
- Doctor
- Unstoppable
DPS Build:
- Fastshot
- Fastloader
- Ammo Maniac
- Barrel Greaser
- Uranium Filled Bullets
XP Rush Build:
- Bloody Mess
- Lean Mean Exp Machine (stack multiple times)
- Perk Expert → Perk Master
- Instant Winner (repeatable)
Passive Damage Build:
- Radioactive
- Plaguebearer
- Veins of Poison → Toxic Avenger
- Hot Tempered
Death and Game Over
The game ends immediately when player HP reaches zero. No continues or second chances.
Game Over Stats Display:
- Final score
- Survival time
- Kills
- Perks acquired
- High score comparison
Tips and Tricks
Kiting is Essential: Continuous movement prevents being surrounded. Use the screen edges to funnel enemies.
Reload Management: Reload during safe moments, not mid-combat. Fastloader perk is one of the best value picks.
Bonus Timing: Some bonuses (Energizer, Nuke, Freeze) are best saved for emergencies, but they expire if not picked up.
Spread Control: Short, controlled bursts maintain accuracy better than holding fire continuously.
Avoid death-risk perks (Grim Deal, Death Clock, Highlander, Fatal Lottery) unless you’re confident or testing builds.
Source Code References
src/crimson/modes/survival_mode.py - Survival mode implementation
src/crimson/game_modes.py:11 - Mode ID definition
src/crimson/perks/availability.py - Perk filtering logic