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:
@@ -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
|
||||
|
||||
|
||||
@@ -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
79
assets/levels/mars03.lvl
Normal 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
|
||||
Reference in New Issue
Block a user