- commit
- 5e2180e564717f0a8c5eb9c3c97e0f18fa79321a
- parent
- d53da086f30d966d54f82084cb69983f5b9dd6a4
- author
- Dami <dami.etoile@gmail.com>
@@ -44,10 +44,10 @@ transform phase and before contacts, it evaluates every object that is FRAIL at
4444 that checkpoint:4545 4646 1. The object was a FRAIL object in the starting settled cell.47-2. A distinct occupant that was not FRAIL at the start moved away from that48- cell during this turn. A pushed word, pushed thing, player, or automaton49- qualifies.50-3. No object occupies the frail cell at the crumble checkpoint.47+2. A distinct occupant moved away from that cell during this turn. A pushed48+ word, pushed thing, player, or automaton qualifies, even if that distinct49+ mover is also FRAIL.50+3. No other entity occupies the frail cell at the crumble checkpoint.5151 5252 If all three conditions hold, the frail entity crumbles. A mover entering the5353 cell in the same accepted turn is a handover and prevents crumbling. This@@ -13,10 +13,10 @@ mechanic during Undo, reset, shared play, or search.
1313 - Interpret `DRIFT IS FRAIL` (and equivalent noun/property rules) at the1414 settled end of a turn, after player/automata movement and transforms but1515 before SINK, DEFEAT, and WIN contacts.16-- Crumble a frail occupant's cell only when a distinct non-FRAIL occupant that17- stood there at turn start has departed and the cell is empty at the crumble16+- Crumble a frail entity only when a distinct occupant that shared its cell17+ at turn start has departed and no other occupant remains at the crumble1818 checkpoint. A handover, where another mover enters the cell in that turn,19- keeps the frail object in place.19+ keeps the frail entity in place. A distinct mover may itself be FRAIL.2020 - Count every mover, including pushed words and automata, while a moving FRAIL2121 entity itself never causes its own cell to crumble.2222 - Preserve authored `leaves` metadata by stable entity ID. On crumble, the@@ -23,9 +23,9 @@ mean removal on crumble.
2323 For an accepted turn, the host SHALL evaluate FRAIL once after player and2424 automata movement and all movement-triggered transforms, before SINK, DEFEAT,2525 and WIN contacts. A frail object SHALL crumble only when a distinct occupant26-that was not FRAIL at turn start departed its starting cell and no object27-occupies that cell at the checkpoint. A handover SHALL prevent crumbling. A28-moving FRAIL object SHALL NOT crumble itself.26+departed its starting cell and no other entity occupies that cell at the27+checkpoint. A handover SHALL prevent crumbling. A moving FRAIL object SHALL28+NOT crumble itself; a different FRAIL mover MAY cause departure.2929 3030 #### Scenario: Standing on a plank is safe3131 - **WHEN** YOU stands on a DRIFT cell under `DRIFT IS FRAIL` and pushes a word@@ -39,10 +39,16 @@ moving FRAIL object SHALL NOT crumble itself.
3939 crumble checkpoint4040 4141 #### Scenario: A distinct departure crumbles the cell42-- **WHEN** a non-FRAIL word, thing, or player leaves a FRAIL cell and the cell43- is empty after all movement and transforms42+- **WHEN** a distinct word, thing, or player leaves a FRAIL cell and no other43+ entity remains there after all movement and transforms4444 - **THEN** the FRAIL object crumbles exactly once before contacts4545 46+#### Scenario: A different FRAIL mover can trigger crumble47+- **WHEN** one FRAIL entity leaves a cell containing a second, stationary48+ FRAIL entity and no other entity remains there49+- **THEN** only the stationary FRAIL entity crumbles; the mover remains at its50+ destination51+4652 #### Scenario: Moving FRAIL is not self-crumbling4753 - **WHEN** a FRAIL object is pushed or moved by YOU or an automaton4854 - **THEN** it remains at its destination and its old cell does not emit a@@ -11,7 +11,7 @@
1111 1212 - [ ] 2.1 Capture pre-turn occupancy and resolve player and automata movement,1313 rule reparsing, and transforms before FRAIL evaluation.14-- [ ] 2.2 Evaluate distinct non-FRAIL departures once at the end-of-movement14+- [ ] 2.2 Evaluate distinct occupant departures once at the end-of-movement1515 checkpoint, preserve handovers, and ensure a moving FRAIL entity cannot1616 crumble itself.1717 - [ ] 2.3 Apply `leaves` as an ID-preserving noun transform or remove the