Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,25 @@ The native shim's ABI is tracked separately by `b2Version()` (currently `4`).

### Added

- **Platformer: LEVEL 6 "CAVERN DEPTHS" - the DIRT biome (asset-expansion
Phase B, slice 1).** A sixth level built on the previously-unused
`terrain_dirt_*` tile set (block tops, `block_center` mass under the mound,
carved `block_top_left/right` cliff corners on the goal steps AND the spike-pit
lips, `ramp_long_a/b` dirt ramps, a one-way `cloud_left/middle/right` dirt
platform): a WALL-JUMP SHAFT of floating dirt columns (slot coin, the L3
ice-shaft recipe in dirt), a spike GAP to leap (checkpoint past it), a
DIRT-RAMP mound, a high one-way-cloud bonus route, two slimes + a snail, a
bonus GEM above the shaft, and carved dirt steps to the flag. The win moves to
L6 (`gLevel >= 6`); L5's flag now ADVANCES. **OXT round 1 polish (atmosphere):**
a built **dark cave backdrop** (`pfBuildCaveBackdrop` - two card graphics, not
the flat/blank `background_solid_dirt` frame), flickering **wall torches**
(`torch_on_a/b`, new `pfMakeTorch`), hanging **chains + stalactites**
(`terrain_dirt_vertical_bottom`), and ground decor (a rock, cave mushrooms, a
bush) - placed clear of every beat. Example-side only (no Kit change, no
harness bump); `tools/audit-platformer.py` auto-discovers and clears L6 (9
coins, 3 walkers, 0 findings). Statically verified; needs an OXT pass (see
header verify item 20). Phase B's headline mechanics - the block slime and the
conveyor belt - land in slices 2-3.
- **Platformer: FISH in the swim pool.** The L1 hilltop pond now has two fish
(blue + yellow, native `foes` art that was unused) swimming at different depths
and periods — bodiless proximity hazards (recoverable knockback) you time your
Expand All @@ -29,6 +48,19 @@ The native shim's ABI is tracked separately by `b2Version()` (currently `4`).

### Fixed

- **Platformer: spike pits now align FLUSH with the pit edges (all levels).**
Found over two OXT rounds:
- *Horizontal (the real misalignment).* `pfTile` treats its `(x,y)` as the
tile's TOP-LEFT (it centres at `x+32`, exactly like all the ground tiling),
but the spike row was tiled over the range `pL+32 .. pR-32`, shifting every
spike 32px RIGHT - a bare 32px gap at the left pit edge and the last spike
OVERHANGING onto the ground on the right. The row now tiles `pL .. pR-64`
(top-lefts), landing flush from `pL` to `pR` in every pit.
- *Vertical.* The spike pixels are the bottom 34px of the 64px cell, so the old
y576 sank the tips to y606 (30px below the edge); the tile now sits at y546 so
the tips meet the ground line.
Affects every spike pit (L1/L3/L5/L6); the hurt sensor and pit geometry are
unchanged. The no-art fallback strip matches.
- **Platformer (OXT round 6): five polish fixes for a solid state.**
- *Parallax seam.* Adjacent 640px backdrop panels met exactly edge-to-edge, so
sub-pixel rounding leaked a 1px white hairline. Panels are now widened 4px and
Expand Down
26 changes: 19 additions & 7 deletions docs/asset-expansion-plan.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ untouched** and every biome is missing its real terrain shapes:
- **Water/lava dressing:** `water`, `water_top(_low)`, `lava`, `lava_top_low`.
- **Flags:** `flag_green_a/b` (a third flag colour).

### HUD strip (`tiles`, 33 frames — entirely unused)
### HUD strip (`tiles`, 30 frames — entirely unused)
`hud_character_0`…`9`/`multiply`/`percent`, `hud_coin`, `hud_heart(_half/_empty)`,
`hud_key_blue/green/red/yellow`, `hud_player_*` and `hud_player_helmet_*` portraits.
An art-driven HUD that **replaces the LiveCode text fields outright** — the
Expand Down Expand Up @@ -141,18 +141,30 @@ needs an OXT eye.
- *OXT to confirm:* parallax tiling seam/feel; swim+fish balance.

### Phase B — Underground biome → **Level 6 "CAVERN DEPTHS"** (M)
- **Assets:** `terrain_dirt_*` (whole biome), `background_solid_dirt` +
`background_color_hills` far layer, `torch_off/on_a/on_b`, `conveyor`,
`slime_block_*` (block slime).
- **Slice 1 — DONE (statically verified; needs OXT):** the **dirt biome + Level 6
skeleton** that completes start-to-finish. `terrain_dirt_*` (block tops,
`block_center`, carved `block_top_left/right` corners, `ramp_long_a/b`, one-way
`cloud_*`) over the `background_solid_dirt` backdrop; a wall-jump shaft of
floating dirt columns, a spike gap, a dirt-ramp mound, a one-way-cloud bonus
route, reused slimes + a snail, a bonus gem, dirt goal steps. Win moved to
`gLevel >= 6`. Example-side; `audit-platformer.py` auto-discovers + clears L6.
- **Slices 2–3 — TODO:** the block slime (slice 2), then the conveyor + torches
(slice 3).
- **Assets:** `terrain_dirt_*` (whole biome, slice 1), `background_solid_dirt`
(slice 1), `torch_off/on_a/on_b` (slice 3), `conveyor` (slice 3),
`slime_block_*` (block slime, slice 2).
- **New enemy:** **block slime** — a hopping cube (slime family, new `slimeblock`
kind; `_jump` frame on the hop, `_rest` between).
- **New mechanic:** **conveyor belts** — a floor strip that pushes the grounded
hero (a kinematic surface velocity, or a polled zone that adds vx). Animated
`conveyor` tile.
hero (a polled zone that adds vx). **Correction:** the `conveyor` tile is a
**single frame** (no `_a/_b` pair), so the belt does **not** animate by frame-
flip — drive it as a polled vx zone with a static tile (or fake-scroll the tile
loc if motion is wanted). Only `torch_on_a/b` is a real 2-frame animation.
- **Ambiance:** wall **torches** (2-frame `torch_on_a/b` flicker) light the cavern;
the dirt biome's corner/edge/vertical tiles make real tunnels & cliffs.
- **Level:** a descending cave run — conveyor sections, block-slime hops, a dark
vertical shaft (wall-jump), dirt ramps. Backdrop is the new dirt scene.
vertical shaft (wall-jump, **slice 1**), dirt ramps (**slice 1**). Backdrop is
the dirt scene (**slice 1**).
- *Kit:* conveyor may want a tiny Kit helper (a "surface velocity" zone) — evaluate
a polled example-side version first.

Expand Down
Loading
Loading