Jump to content


Member Since 23 Aug 2015
Offline Last Active Jun 19 2018 11:19 PM

Topics I've Started

Comprehensive rewrite of Willy's movement code

10 March 2018 - 12:59 AM

This 'mini-game' builds on earlier coding efforts by myself and Norman Sword (thanks for your unwitting contribution, Norman!)

Attached is a zip folder containing two game files. The layout of the playable area of each file is identical (including the guardian settings and item placements). There are four playable rooms, all located in the upper region of Willy's mansion. The game contains a grand total of 16 items (#10 in hex!). Maria and the toilet are present - once you've collected all the items, make your way to the bottom of the ramp in The Attic to set off the end sequence.

The 'Before' file is based on the original JSW game engine (with only a minor hack to allow the toilet dash to take place within the four rooms). i.e. the mechanics of Willy's movement are unchanged.

In the 'After' file, I have implemented significant changes to Willy's movement, in order to prevent him from being able to pass through Earth/wall blocks in any circumstances.

[The only exceptions to that rule are (a) if he enters a room at a position that happens to coincide with a wall, or (b) if he is swinging on a rope that passes through a wall - although I would add that neither of those scenarios pertains in the attached files].

All 16 items can be collected using different methods in the 'Before' and 'After' files, because of the differences in the mechanics of Willy's movement between the patched and unpatched variants.

For some items, using two different manoeuvres between the two files is essential. For other items, one method might allow it to be collected in both files, with the alternative method only possible in one of the files. So your mission, "should you choose to accept it", is to use different solutions for each of the 16 items, across both of the game files. Oh, and without 'kamikazeing' any items (sacrificing a life in the collection thereof).


Wraparound Guardians

01 March 2018 - 04:39 PM

I have managed to amend the code which moves vertical guardians, and also the guardian-drawing and sprite-drawing routines, in such a way that a guardian may safely wrap around past the top/bottom of the screen without crashing into its own 'trail of havoc' (i.e. errant pixels left on the primary screen buffer.

Please see the attached. The starting room is 'On Top of the House'. There are now two flag guardians in that room, which have identical definition bytes to each other except that, for one of the flags, the upper and lower bounds have been transposed (causing it to wander up off the top of the screen and back again).

I thought it was appropriate to use the flag guardians to illustrate this behaviour, as I managed to achieve this technical novelty by careful use of the F Register flags (the Zero, Carry and Parity Flags were all instrumental).

I'll type up the source code when I find the time. But note that the same routine handles both guardians.

Final Barrier Glitch

20 February 2018 - 12:45 AM

I've just noticed a bug/glitch/inconsistency in the way that the 'Swordfish' routine is executed at the end of the Final Barrier.


When Willy enters the portal (unless you're playing in Cheat Mode, of course), his sprite appears above the portal which displays the Swordfish icon.  There is also a command which overwrites the attributes of the two cells underneath the portal, in order to disguise Willy's feet (so that he doesn't appear to be in two places at once!)


However, once the points start to be ratcheted up as the remaining air supply is counted down, Willy's feet are still visible (in blue INK on black PAPER), because the pixel display for those two cells isn't wiped, only the white INK attribute.




Incidentally, the green PAPER attribute of the cells occupied by Willy's lower half when he is drawn above the Swordfish would possibly look a bit better if cyan PAPER was used (as is the case for the upper half of his sprite at that point).

Idea for a new cell type in Manic Miner

06 February 2018 - 10:40 PM

When Willy jumps up and hits his head on an Earth block, he is immediately ejected back down, but it doesn't seem to do him any harm.  I guess he has quite a hard head - especially with his hard hat on.


This got me thinking about an idea for a new MM cell type - when Willy bounces off a 'Soft Earth' cell from below, a variation on the Crumbly cell routine could be executed, removing pixel-rows from the bottom up, but without the upper pixel-rows moving down into their place - then once all eight pixel-rows have been 'mined away', the cell is replaced with an Air cell.


Fits in with the mining theme?

Undocumented Quirky Features of JSW2

03 January 2018 - 09:01 PM

I am not aware of any previous discussion of this quirky feature of Jet Set Willy 2 - it isn't mentioned in Andrew Broad's fairly comprehensive list of quirky features.


If you open up the attached 'JSW2 New Quirky Feature' test file, and try to collect the new Bathroom tap, you'll find that Willy gets stuck, with no hope of escape!


But in the other attached file, 'JSW2 New Quirky Feature not in original JSW', which has the exact same layout changes implemented to The Bathroom, Willy can collect the new item behind the newly-inserted walls, and get back out again.


Curious!  The subtly different behaviour could form the basis of a frustrating trap in a modified game based on the JSW2 game engine!  (Not with an item at the bottom of the hole, though, as that would render the game uncompletable without loss of a life.)


N.B. It might be prudent to have an occasional arrow come along at head-height, to put Willy out of his misery if he gets stuck!