Add Mars Base generator, mars03 boss arena, and Mars campaign polish

Dedicated Mars Base generator with 6 segment types (entry, shaft, corridor,
turret hall, hive, arena), depth-scaled difficulty, and exit to boss arena
after 2 generated levels. Mars themes integrated into all 7 generic segment
generators. Full level chain: moon03 → mars01 → mars02 → mars_base (×2) →
mars03 → station.

Also: jetpack fuel pickup preserves recharge progress, depth counters reset
on game loop, NULL checks on entity spawns, charger charge timeout, bg
decoration in Mars Base generator.
This commit is contained in:
Thomas
2026-03-02 20:27:29 +00:00
parent 74cd70738d
commit 1ef84cd3b4
9 changed files with 906 additions and 30 deletions

View File

@@ -11,7 +11,7 @@ GRAVITY 370
WIND 25
BG_COLOR 30 12 8
PARALLAX_STYLE 5
MUSIC assets/sounds/algardalgar.ogg
MUSIC assets/sounds/kaffe_og_kage.ogg
ENTITY spacecraft 1 14

View File

@@ -11,7 +11,7 @@ SPAWN 3 7
GRAVITY 700
BG_COLOR 20 10 6
PARALLAX_STYLE 5
MUSIC assets/sounds/algardalgar.ogg
MUSIC assets/sounds/kaffe_og_kage.ogg
ENTITY spacecraft 1 3
@@ -42,7 +42,7 @@ ENTITY powerup_hp 24 34
ENTITY powerup_gun 12 42
# Exit at bottom right — victory (end of Mars campaign)
EXIT 36 40 2 3 generate:station
EXIT 36 40 2 3 generate:mars_base
# Tile definitions (Mars tileset)
TILEDEF 1 0 0 1

79
assets/levels/mars03.lvl Normal file
View File

@@ -0,0 +1,79 @@
# Mars Base - Core Chamber (Boss Arena)
# ======================================
# Final Mars level: small arena room deep underground.
# Heavy enemy presence — spawners, laser turrets, chargers.
# Survive the onslaught to reach the exit. Gun pickup at start.
# Exits to procedural station levels.
TILESET assets/tiles/mars_tileset.png
SIZE 30 23
SPAWN 3 18
GRAVITY 700
BG_COLOR 15 8 5
PARALLAX_STYLE 3
MUSIC assets/sounds/kaffe_og_kage.ogg
# Gun pickup right at spawn — the player needs it
ENTITY powerup_gun 5 18
# Spawners on upper ledges (both sides)
ENTITY spawner 5 6
ENTITY spawner 24 6
# Laser turrets guarding the arena
ENTITY laser_turret 1 10
ENTITY laser_turret_track 28 10
# Turrets on the ceiling
ENTITY turret 10 2
ENTITY turret 19 2
# Chargers on the ground floor
ENTITY charger 10 18
ENTITY charger 20 18
# Grunts
ENTITY grunt 14 18
ENTITY grunt 16 18
# Health pickups on side ledges — reward for platforming up
ENTITY powerup_hp 5 10
ENTITY powerup_hp 24 10
# Jetpack fuel on central platform
ENTITY powerup_fuel 14 12
EXIT 26 17 2 3 generate:station
# Tile definitions (Mars tileset)
TILEDEF 1 0 0 1
TILEDEF 2 1 0 1
TILEDEF 3 2 0 1
TILEDEF 4 0 1 2
# Collision layer (30 wide x 23 tall)
# Enclosed arena: walls on all sides, upper ledges, central platform
LAYER collision
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1
1 0 0 0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 0 0 0 0 4 4 4 4 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 4 4 4 0 0 0 0 0 0 4 4 4 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 3 1 1 3 1 1 3 1 3 1 1 1 3 1 1 3 1 3 1 1 3 1 1 3 1 1 3 1 1
1 1 3 3 1 3 3 1 3 1 3 3 3 1 3 3 1 3 1 3 3 1 3 3 1 3 3 1 3 3
3 1 3 3 1 3 3 1 3 1 3 3 3 1 3 3 1 3 1 3 3 1 3 3 1 3 3 1 3 3

Binary file not shown.