Automated script for MMBN3 hospital vending mini game

Automated script for MMBN3 hospital vending mini game

What Is This, And How Does It Work?


Automated script for MMBN3 hospital vending mini game image 1

I have created a script that can be used in two ways:

Complete a 3-round win with the gambling Navi in the Hospital Vending Machine (64k Zeny, repeatable).

Complete a 4-round win with the gambling Navi in the Hospital Vending Machine (256k Zeny and he will never let you near his money again, but you get a GutsStrgt chip).

The script itself is just a text file with an "ahk" suffix, which is run by AutoHotKey. AutoHotKey is a program that can be used to input keystrokes for you with specific timing. You can edit it with Notepad to see what it does, if you'd like, or you can see it in the bottom section of this guide. I've left comments inside to help anyone who wants to understand or modify it.

The script assumes that you are using the default keyboard controls, although it really only uses the Escape key (to open the system menu), w (for up), a (for left), and j (for talk/accept). If you are not using the default keyboard controls, you can either set them back to default for the use of this script, or replace the key presses in the script with your configuration.

In the end, the script just types the following (for the 4-round run), but with the specific timing necessary for winning:

wwjaj

jjjjjjjjjjjjjjjjjjjjjjjjwjjjjjjjjjjjjjwjjjjjjjjjjjjjjjjjjjjjjj

I'd like to credit Kilios' video on manipulating the RNG based on the music. His video is linked in the section below.

With this script, you too can bankrupt the gambling Navi with ease!

Disclaimer

Instructions are below, but I need to put in this disclaimer:

The script does not succeed every time. There seems to be some difference in the timing depending on loading and processing times. I usually get a success between 1-3 tries with the script. If you find that you are not getting any successes at all, you may need to adjust the timings within the script for your computer. The points in the script where the timings would be changed are commented like this:

; Select Yes at ~8 seconds

; Select Yes at ~19 seconds for second gamble

; Select Yes at ~36 seconds for third gamble

; Select Yes at ~54.5 seconds for fourth gamble

After each of those comments, the next "sleep" line indicates how long it is going to wait before selecting the "Yes". I personally tuned the script to match Kilios' video found here: https://www.youtube.com/watch?v=lBQKJH8Ok8o&ab_channel=Kilios

Listen to the music in the video, and compare it to when "Yes" is being pressed when you run my script. If the selection is off, adjust those "sleep" statements to move when the "Yes" is pressed to match the music in the video more closely.

Cool, How Do I Use It?

Install AutoHotKey (https://www.autohotkey.com/).

Download my script file ( https://mega.nz/file/Qm5nFBgZ#nFvvTrlfp_qvk8am8fRfsfMjGEosNU4PeszIXIQ0jNA ) or create your own ahk file and paste the contents from the next section into it.

Begin running the script. It will appear in the system icons part of your taskbar with a green icon to indicate that it is ready.

Start MMBNLC1 and load into MMBN3. Get to the Hospital's vending machine in the lobby, jack in, and run to the right to find the gambling Navi.

Position MegaMan so that he just needs to press interact to talk to the gambling Navi, then save your game.

Press F9 to start the 3-round sequence, or F10 to start the 4-round sequence.

If Mega Man fails the game at any point, press F11 and wait a few seconds to be certain that the script has aborted. Press F9/F10 again to restart the script. If it doesn't restart right away, press F11 and wait again, then restart the script again. This can happen if you abort during a long "sleep" statement and the last run hasn't fully quit.

The Script In Its Entirety

#SingleInstance force ; Originally developed by BetaSprite for personal use, and distributed on Steam ; Instructions for use: ; Install AutoHotKey and begin running the script. It will appear in the system icons part of your taskbar with a green icon ; to indicate that it is ready. ; Start MMBNLC and load into MMBN3. Get to the Hospital's vending machine, and run to the right to find the gambling Navi. ; Position MegaMan so that he just needs to press A/interact to talk to the gambling Navi, then save your game. ; Press F9 to start the 3-round sequence, or F10 to start the 4-round sequence. If Mega Man fails the game at any point, press F11 and wait a few seconds to be certain ; that the script has aborted. Press F9/F10 again to restart the script. F9:: if !flag_moneytime { Global flag_moneytime := 1 Global flag_onlythree := 1 goto, PressMoneyButtons } F10:: if !flag_moneytime { Global flag_moneytime := 1 Global flag_onlythree := "" goto, PressMoneyButtons } F11:: flag_moneytime := "" return PressMoneyButtons: ; Open menu if !flag_moneytime { return } sleep, 500 send {escape down} sleep, 50 send {escape up} sleep, 800 ; To Quit if !flag_moneytime { return } send {w down} sleep, 50 send {w up} sleep, 200 ; To Title Screen if !flag_moneytime { return } send {w down} sleep, 50 send {w up} sleep, 200 ; Hit To Title Screen if !flag_moneytime { return } send {j down} sleep, 50 send {j up} sleep, 1000 ; Move left to Yes if !flag_moneytime { return } send {a down} sleep, 50 send {a up} sleep, 300 ; Select Yes if !flag_moneytime { return } send {j down} sleep, 50 send {j up} sleep, 2200 ; After screen fade in, hit start if !flag_moneytime { return } send {return down} sleep, 50 send {return up} ; 1 second later for RNG, Continue if !flag_moneytime { return } sleep, 700 send {j down} sleep, 50 send {j up} sleep, 900 ; Fade in at 2 seconds, then talk if !flag_moneytime { return } send {j down} sleep, 50 send {j up} sleep, 50 ; Get through first speech window if !flag_moneytime { return } send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 ; Skip into and select OK if !flag_moneytime { return } send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 50 send {j up} sleep, 200 ; Get through second speech window if !flag_moneytime { return } send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 3900 ; Select Yes at ~8 seconds if !flag_moneytime { return } send {j down} sleep, 50 send {j up} ; Wait for movement at ~11 seconds, then mash through acceptance if !flag_moneytime { return } sleep, 3500 ; ~11 seconds ; Select space if !flag_moneytime { return } send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} ; ~12.9 seconds ; Wait for reward at 16.5 seconds if !flag_moneytime { return } sleep, 3600 ; ~16.5 if !flag_moneytime { return } ; Mash to next Yes prompt send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 ; ~16.9 ; Select Yes at ~19 seconds for second gamble if !flag_moneytime { return } sleep, 1900 ; ~19 seconds if !flag_moneytime { return } send {j down} sleep, 100 send {j up} sleep, 100 ; Wait for movement at ~22.5 seconds if !flag_moneytime { return } sleep, 3500 ; ~22.5 seconds ; Select space if !flag_moneytime { return } ; Move up send {w down} sleep, 100 send {w up} sleep, 100 ; Mash through selection if !flag_moneytime { return } send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} ; ~24.6 seconds ; Wait for reward at 28.2 seconds if !flag_moneytime { return } sleep, 3600 ; ~28.2 if !flag_moneytime { return } ; Mash to next Yes prompt send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 ; ~28.6 ; Select Yes at ~36 seconds for third gamble if !flag_moneytime { return } sleep, 7400 ; ~36 seconds if !flag_moneytime { return } send {j down} sleep, 100 send {j up} sleep, 100 if !flag_moneytime { return } ; Wait for movement at ~39.5 seconds if !flag_moneytime { return } sleep, 3500 ; ~39.5 seconds ; Select space if !flag_moneytime { return } ; Move up send {w down} sleep, 100 send {w up} sleep, 100 ; Mash through selection if !flag_moneytime { return } send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} ; ~41.6 seconds if flag_onlythree { flag_moneytime := "" return } ; Wait for reward at ~45.2 seconds if !flag_moneytime { return } sleep, 3600 ; ~45.2 if !flag_moneytime { return } ; Mash to next Yes prompt send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 ; ~45.6 ; Select Yes at ~54.5 seconds for fourth gamble if !flag_moneytime { return } sleep, 8900 ; ~54.5 seconds if !flag_moneytime { return } send {j down} sleep, 100 send {j up} sleep, 100 if !flag_moneytime { return } ; Wait for movement at ~57 seconds if !flag_moneytime { return } sleep, 3500 ; ~57 seconds ; Select space if !flag_moneytime { return } ; Mash through selection if !flag_moneytime { return } send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} sleep, 100 send {j down} sleep, 100 send {j up} flag_moneytime := "" return

Source: https://steamcommunity.com/sharedfiles/filedetails/?id=2971490367					

More Mega Man Battle Network Legacy Collection Vol. 1 guilds