Jump to content
Jet Set Willy & Manic Miner Community

Automated generation of Manic Miner speedrun/walkthrough


crem

Recommended Posts

On 4/13/2022 at 4:17 PM, SymbolShift said:

) I was super impressed by the WRITETYPER run's from RuffledBricks and DigitalDuck. I wondered if any progress had been made on using AI to find the quickest teleport routes for this? It seems like a task well suited for AI, since there are so many possible combinations for the human brain to calculate. That said, I also understand this would be a complex beast to write, and possibly require a supercomputer to process 😁

I presume the above is referring to the use of AI and WRITETYPER in Jet Set Willy, not Manic Miner? It might be worth replicating the query in the similar topic under the JSW heading, so it's in the right place? 

Link to comment
Share on other sites

On 5/1/2022 at 4:33 AM, IRF said:

I presume the above is referring to the use of AI and WRITETYPER in Jet Set Willy, not Manic Miner? It might be worth replicating the query in the similar topic under the JSW heading, so it's in the right place? 

Yes! you are totally correct, I was referring to JSW. I had no idea there are separate topics for the automated MM and JSW, until you pointed it out. Thanks for catching that, and replicating the query!

Link to comment
Share on other sites

On 4/13/2022 at 5:17 PM, SymbolShift said:

 

2) I was super impressed by the WRITETYPER run's from RuffledBricks and DigitalDuck. I wondered if any progress had been made on using AI to find the quickest teleport routes for this? It seems like a task well suited for AI, since there are so many possible combinations for the human brain to calculate. That said, I also understand this would be a complex beast to write, and possibly require a supercomputer to process 😁

 

Although the algorithm is trying to generate the shortest time without any human limitation, the main motivation for me was to find strats that human speedrunners can use. For non-WRITETYPER Manic Miner and Jet Set Willy, it's turning out that everything is doable by humans, so fastest tool assisted speedrun is also possible to repeat for humans, in theory.

For WRITETYPER, it's another story. The shortest route requires inhuman play, like switching room 20 times within 2 seconds, that's why I didn't focus much in that variant. In fact, I tried to impose some limitations like "switch room not faster than 3 times per second", "you cannot switch direction and switch a room at the same time", but the result didn't look natural.  There were moments where the play was clearly not doable by humans, and vice versa, in some places the delay was too strict.

But if there is interest in it, I think I can generate it, I should have the code ready somewhere.

 

(And regarding the JSW non-WRITETYPER routing, it's a very long story, and it probably will take several pages of posts to write it. In short, i took many approaches to find the optimal route, and still couldn't beat humans in most of the speedrun categories. I don't give up yet though, and have more ideas).

Link to comment
Share on other sites

That's an excellent point Crem, regarding the speed of room switching. If automated, the Speccy might be able to handle 100's of teleports per second, at which point it all becomes an "impressive blur lasting mere milliseconds" to complete. Like you mentioned, you could limit the teleports-per-second, and then the challenge would be for a human to reproduce it the quickest, using the data that AI provided. However, at that point, could it still be considered a human achievement?, or just replication of something non-human? The debate could go on forever...  🤖 vs 🙂

Edited by SymbolShift
Link to comment
Share on other sites

Correction on the misinformation about automatic room switching: JSW can switch rooms at around 4 frames per second. The graphics will appear on the screen. long enough, for the room to be recognised. Additionally you will be able to follow what willy does.

This means the minimum time MUST be around 15 seconds, and that time is to just flash through 60 rooms. That time however does not allow much leeway for moving around the rooms. 
 

Edited by Norman Sword
Link to comment
Share on other sites

  • 2 weeks later...
On 4/13/2022 at 10:17 AM, SymbolShift said:

1) I noticed on Impossamole's C64 run, that a score of 1940 was achieved on the Central Cavern, rather than the 1724 Speccy record. This appears to exploit a conveyor bug in the C64 version, which allows him to travel in the opposite direction. This may have been discussed before, but I was curious why this is possible, and are there other versions that allow this?

 

Sorry to bring this "conveyor" issue up again, but I did notice something weird today. My son was testing my Central Cavern replica, and he jumped back between the plants and traveled right on my conveyor (just like the C64 version). I immediately said "that's not possible!" and was confused, since you can't do this on the ZX version. After double checking the ZX original, you CAN actually travel right on the left side of the green conveyor, if you jump from the platform. However, you cannot travel right on the right side of the conveyor (jumping right between the two plants).

This almost brings me to the conclusion that the C64 version is actually working correct, and the inconsistency of the ZX conveyor was a bug? or possibly deliberate by MS?

Easier to see what I'm talking about in this image...

cc_conveyor.png

Link to comment
Share on other sites

I'd take a guess the fall height (airbourne counter) may be in play for this as you're jumping from one block higher to land on the conveyor. I can duplicate what you say with both the BB and SP versions on the Spectrum. The Amstrad CPC version behaves the same too.

The C64 version you're correct you can move leftwards on all of it.

Link to comment
Share on other sites

Attached is a (very cut down) copy of that using the JSW engine instead. Note there's nothing beyond this room/cavern and there's precious little irrelevant (keypad routine+data/other sprites/rooms) data but Maria/Toilet were afterthoughts soi I placed them in the cavern anyway!

It is not completable as I've not changed the code for the toilet run or object counter. A small tweak was needed to allow M.W to climb down again. As expected Maria does not behave properly with arm waving as the code was not changed.

Tis only a 'engine' test, I did expect it to behave the same as MM though.

Purposely saved as a full 32768 file to permit editing with third party tools if wanted. I was going to save it as a 33280,16128

< removed >

May be bugs, only other code change is the removal of the instruction at 33518 / #82EE aka INC A to increase the inactivity timer to prevent auto pause.

EDIT... Fixed M.W I'd forgot the sprites are 'back to front' in JSW vs MM!

EDIT2... Completable version attached below. Shorter code block 7264 bytes compressed. Would go to less but did not want to shuffle the room data:

 

Central_Cavern_in_JSW.tap

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.