Resource centre for ZX Spectrum games
using Manic Miner and Jet Set Willy game engines
Archive of the
Manic Miner & Jet Set Willy Yahoo! Group
messages
|
|
||
|
|
Message: 7190
Author: ian.rushforth
Date: 27/03/2018
Subject: Editing Manic Miner in JSWED
I have encountered problems when adding or deleting vertical guardians to a Manic Miner game in JSWED.
When adding a vertical guardian to a cavern that previously had none (Kong Beast), or just one (Ore Refinery), the #FF terminator byte seemingly isn't shunted down to occupy the next place in the list. Instead, a #00 byte starts off the next guardian definition. That would be fine for horizontal guardians (the 'Draw the horizontal guardians' routine ignores any 'blank' guardian entries, for which the first byte holds #00), but the 'Draw the vertical guardians' routine attempts to drawn an (invisible, static) guardian when it encounters a 'blank' guardian entry, which can cause an Infinite Death Scenario upon entry to the cavern. [I would guess that the guardian is drawn in black INK on black PAPER (attribute #00) at coordinates (0,0), so I suppose it might not lead to an instant fatal collision if the top-left corner of the cavern comprises a 2x2 square of Air cells?]
When deleting a vertical guardian from a cavern, the guardian I am trying to delete seems to be stubbornly remaining in the guardian list for the cavern - it appears to be removed from the list in the Guardian Editor, but then when I move out of the cavern and back in again, the entry returns to the guardian list.
In any case, the solution to both problems is to use the hex editor to manually insert an #FF terminator byte, immediately after the last valid entry in the vertical guardian list for the cavern, i.e. at Offset #2DD, Offset #2E4, Offset #2EB, Offset #2F2 or Offset #2F9.
