Jump to content
Jet Set Willy & Manic Miner Community

Comprehensive rewrite of Willy's movement code


IRF

Recommended Posts

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).

Enjoy!!

Comprehensive Willy Movement Rewrite.zip

Edited by IRF
Link to comment
Share on other sites

Solved!  :D

 

Thanks, Ian, it's a very nice set of quirky challenges for an early Saturday afternoon :). *Very* nicely designed!  :)

 

The RZX recordings are attached below, but they are of course spoilers. So I would encourage everyone interested not to download them before completing the games yourselves, it's a lot of fun!

 

Before Rewrite solved.rzx

 

After Rewrite solved.rzx

Link to comment
Share on other sites

Well done Danny! I'm heading out now, but I'll watch your recordings later.

 

If you haven't already, it's interesting and instructive to try and collect each item using the 'wrong' method for each game file, to see how the differences in the 'Willy mechanics' manifest themselves.

 

 

For example, attempt to jump onto the Attic conveyor and proceed upstream along it in the 'Before' game; or try to jump from the TOP of the left-hand stack to collect the top-left item in Emergency Generator in the 'After' variant.

 

Edited by IRF
Link to comment
Share on other sites

Thank you for the recordings Danny, I've watched them now - good stuff!

 

However, you didn't quite comply with the mission that I set - to use different collection methods for each of the 16 pairs of items. If you would care to do so, please try and find alternative solutions in the 'Before' game for:

 

- The lowest three items in 'On top of the House';

- The rightmost item in 'Emergency Generator'; and

- The item which is located above the first 'e' of 'Generator' (it lies at the left of an Earth platform which is three blocks in length).

 

Other points of interest (all relating to the 'Before' file):

 

- You managed to collect the bottom-left item in The Attic in a rather different way to the one that I had in mind (and which I hadn't thought of);

- I wonder did you attempt (unsuccessfully) to collect the uppermost item in 'Dr Jones...' by jumping onto the elephant's back? It exhibits an interesting difference in Willy's behaviour between the two files;

- The upper part of 'The Attic' in the 'Before' file is 'Forbidden Holy Ground' (whereas it is accessible in the 'After' file).

Edited by IRF
Link to comment
Share on other sites

I will consider it, but it's unlikely I'll do it, because it goes against my JSW philosophy, which is: It is important to collect an item without losing a life in any way which is possible; once it's collected, don't think about it again. A part of it is RZX-recording the way it is collected for future reference (if needed), but this is in order to be able to collect it *the same way* as before.

 

For me the challenge in MM/JSW games is to collect an item safely (without cheating), not any particular way of collecting it. I feel that once I know how to collect an item safely, thinking about other ways of collecting it would not be an optimal use of my JSW-time  :o . 

 

I would perceive considering alternative ways of collecting an item as justified only if I were trying to make an RZX recording showing a walkthrough as efficient as possible, and I would suspect that there may be a substantially quicker way of collecting an item than the one I've come up with so far. This is not the case here.

 

Other points of interest (all relating to the 'Before' file):

 

- I wonder did you attempt (unsuccessfully) to collect the uppermost item in 'Dr Jones...' by jumping onto the elephant's back?  It exhibits an interesting difference in Willy's behaviour between the two files;

 

No. I had it a passing thought about it and decided that it would be impossible :blink: .

Link to comment
Share on other sites

The primary aim of this project was to exhibit the different behaviours of the two variants of the game engine, hence my suggestion to seek out different solutions to each pair of items.

 

However, in relation to your comment about efficiency, I would suggest that the alternative solutions would indeed provide a more speedy walkthrough.

Edited by IRF
Link to comment
Share on other sites

Another way of phrasing what I was trying to say in my previous post: I think* that this project may be rather akin to Andrew Broad's 'Advanced MM/JSW Trainer' tool.  e.g. If you were in the 'Innocent-Looking Block' room, and managed to collect an item via another method (which Andrew hadn't anticipated) that didn't involve jumping through an Innocent-Looking Block, then the purpose of playing that room (namely to learn about ILB's) would remain unfulfilled.

 

(* Admittedly without having actually used Andrew's AMJT tool - not for lack of trying to install it!)

 

Anyway, at some point I'll probably provide walkthrough recordings of my own, with commentary to point out any features that you may have missed.

 

 

 

One thing that springs to mind that you may have missed - in both files, on the way back down the ramp in 'On top of the house', you jumped right over the base of the ramp.  (Possibly you are so used to doing that in JSW, in order to avoid the strange 'sinking into an adjacent Earth block' effect that occurs in the original game engine?)  But it made me wonder if it had escaped your attention that I have managed to fix that particular bug in the 'After' file?

See the first example in this link:

http://skoolkid.github.io/jetsetwilly/reference/facts.html#rampsVsWalls

(N.B. I've also fixed the second example in the link - walking up a ramp into an overhead Earth block - but in that case you did take account of the fix, at the top of the same ramp, by holding down the jump+right keys to pass under the block and through the ramp to collect the item.)

 

 

Edited by IRF
Link to comment
Share on other sites

It's an academic discussion, I guess :), but it highlights the difference between what I would call 'technical demos' and 'real games'.

 

For me, a 'real' MM/JSW game is a product which is launched - thrown at the player, so to speak - with a task which is the same for all games of the kind, i.e. collect all items before the time runs out (if there is a time limit), without losing all lives (and without cheating). That's it. It doesn't matter how you collect an item or move from room to room. Only the final result matters.

 

If someone told me: You need to collect the item in "The Nightmare Room" by passing through the uppermost row of platforms, I would reject that claim, because you can collect it without jumping on those particular platforms. I would see no reason why the way in which I am to collect an item should be imposed upon me.

 

That's in a 'real' game. In a 'technical demo', which is meant to demonstrate some particular feature, or quirk, or innovation, I guess requiring the player to do things in a certain way is justified.

 

Having said that, a perfect solution in any kind of game is that the design of the game should enforce the way things need to be done. If the author wants the player to do things in a certain way, he should enforce it by design, so the player cannot do things otherwise. If it is indeed enforced, it's the author's triumph, so to speak. If the player manages to find loopholes in the design and perform a certain task (collect an item, move from room to room) in a way 'better' than what the author intended (easier, faster, less troublesome in the sense of avoiding guardians, etc.), it's the player's triumph. In the history of MM games some Special Editions have been released to eliminate loopholes discovered by players.

 

If someone told me: You should complete the original 'JSW' without using the shortcut from "Rescue Esmerelda" to "Ballroom East", I would object. Why should I not use this shortcut if it's there? I'm not cheating, I'm performing a legitimate action I've performed a hundred times in other rooms: I'm just leaving the room. If it takes me to a place which is very convenient for me as a player, it's not my problem, it's the designer's problem. He should have not allowed me to exit there, if his intention was that I shouldn't.

 

So I guess a lot depends on the point of view and the intention. I approached the "Comprehensive Willy Movement Rewrite" files in a real-game way, i.e. it was like: here are some fine, new, quirky challenges, let's tackle them and see if I can complete these games. From this perspective, I didn't "miss" anything, I completed the task. Your expectation was, however, to approach them as 'technical demos', performing certain actions in a certain way. When I said, 'Solved!' at the beginning of my message, I meant it from the perspective of my approach. However, as you pointed out correctly, I didn't quite comply with the mission that you set. Whether I 'solved' the challenge or not and whether I 'missed' anything or not depends on the approach and the expectations.

 

Having said all this, taking into account your expectations and the 'technical demo' character of the files, I will have a look at them again in the next few days to solve the "Before" one according to your suggestions :).

Link to comment
Share on other sites

Some interesting philosophical points there, Danny!

 

Although it could be argued that, if the Up exit from Rescue Esmeralda to Ballroom East is a valid route, then so is using WRITETYPER to access any room! Perhaps that is even more valid, as Matthew obviously intentionally implemented WRITETYPER, whereas the Esmaralda/Ballroom shortcut may have been an unintentional mistake.

 

In fact, this discussion has led me to consider that shortcut further, and as a result I may have come up with a rationale for it..? Rescue Esmeralda is Room #0E in hex (that's 14 in decimal), and Ballroom East is Room #14 in hex (20 in decimal) - perhaps the Up exit from Esmeralda was supposed to be set to itself*, and Matthew got his hexadecimal and decimal systems mixed up on this occasion?

 

(*Maybe the room even had a rope in it at one point of development, so the setting was supposed to prevent Willy climbing up to the top?)

 

In relation to the Watch Tower, I believe the Up exit to the Off Licence was probably a simple case of the default value being #00, and of course the Off Licence is Room 0.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.