User Files for Bobo the King

All User Files Profile for Bobo the King Upload

#38797635962675961 - Possible item table locations in Mario Kart 64

MK possible items 2.wch

Uploaded 5/5/2017 5:52 AM by Bobo the King (7 files)

For Mario Kart 64 (N64)

10461 views, 975 downloads

One of these addresses might be where item information is stored in Mario Kart 64.
I did the following:
  • Started a race.
  • Set RAM Search to automatically search for addresses with zero changes. This dropped my framerate to about 1 FPS...
  • Drove up to an item box.
  • Turned off automatic RAM searching.
  • Picked up an item (banana bunch), waited for it to register in my inventory and stop blinking.
  • (Saved the state and my RAM file.)
  • Used my bananas. I made sure no karters were behind me.
  • Searched for addresses that had changed more than once.
  • Reset the change count.
  • Turned around, ran into a banana.
  • Searched again for addresses that had changed more than once.
This left the 59 addresses uploaded here.

Download (1.25 KB) Info

#24721696049470264 - BizHawk-compatible SMB walljump movie


Uploaded 8/10/2015 7:56 AM by Bobo the King (7 files)

For Super Mario Bros. (NES)

In 00:00.01 (1 frames), 0 rerecords

69527 views, 870 downloads

This is a savestate nearly identical to my previous savestate, the primary difference being that it is native to BizHawk. As before, this is a demonstration file to be used with my brute-force script.

Download (6.12 KB) Info

#21041971048022691 - Mario Tennis TAS testrun WIP


Uploaded 2/25/2015 2:42 PM by Bobo the King (7 files)

For Game Boy Color

In 46:32.98 (166818 frames), 0 rerecords

11452 views, 694 downloads

This is a WIP of Mario Tennis I spent a few weeks on following the Dream Team Contest. I'm reasonably confident in the long-term route optimization but the individual matches are horribly unoptimized. To preserve my sanity, I basically just tried different inputs until it resulted in an ace. I generally avoided using luck manipulation to ensure that I could get an ace on the next point.
It would save a little walking time to use the training center much later (on the way to the varsity team), but without power-leveling first, it is hard/impossible to ensure aces against your first opponent. Besides, I figure that upgrading power results in the ball bouncing twice and ending the point sooner, which saves time on all of the first four opponents.
Because not all of the lessons are unlocked initially, I avoided the training court until becoming champion of the senior class (not accomplished in this movie). This may have been a mistake. I am currently stuck on an opponent who I cannot consistently beat with one, two, or three shots. I don't know if she could be defeated with a few upgrades to my spin, but level ups are harder to come by at this stage and they tend to come at the cost of other categories.
My upgrade strategy has been pretty simplistic, but I feel I'm on the right track. My first priority is power because it results in faster points and can take out the first couple of opponents with service aces and return aces. My second priority is control because it is needed to maintain aces against later opponents. My third priority is spin because it might come in handy, though I'm not sure. And my fourth and final priority is speed because as a TAS, the player is omniscient and I haven't yet found a purpose for it. I upgrade any attribute as long as it does not come at the cost of a higher priority one.
My greatest insight into this game has been disassembling its experience point calculator. The formula is actually very simple, although there are still some open questions:
  1. Start with the opponent's "base score". I do not know where/how this is obtained.
  2. Add the total number of games played (NOT games won!) multiplied by some multiplier. I do not know where/how the multiplier is obtained. It is not determined solely by your opponent, since a test showed that completing the training center first increased the value of the multiplier. I suspect it is dependent on the number of stars you have in your completion screen.
  3. Add the total number of service aces multiplied by some multiplier. I do not know where/how... etc., etc.
  4. Add the total number of return aces, smash aces, lob shots, and drop shots, each multiplied by some multiplier. This is done individually, but in my experience, their multiplier is always the same, so the game could have just added them all together, then multiplied.
  5. Repeat steps 3 and 4 for your partner's service aces, return aces, smash aces, lob shots, and drop shots if he is present.
  6. Multiply by 1.5 each if you have the iron racket and/or shoes equipped. (I actually haven't tested this and don't know for certain if that's strictly true.)
From what I remember, the base score starts at 70 (typically incrementing by 10) for the first opponent and the multipliers all start at 2. By the fourth-ranked senior class opponent, the base score is 120, the games played multiplier is 5, the service aces multiplier is 4, and all other multipliers are 3.
I recall that your partner's multiplier's are typically higher than your own. Glancing over my tracelog, however, I don't see evidence for that, so it's an open question. If it is true, however, then it may be a good strategy to upgrade your partner's stats and try to manipulate them into performing return ace drop/lob shots.
For singles, the optimal strategy is clear: perform a service ace whenever possible when you're serving and, when returning, perform a return ace lob/drop shot. I do my best to adhere to this strategy throughout the WIP.
I intended this to be a 100% run, so there is still a lot of ground to cover. One possible improvement to the route would be spending a few experience points on your partner to upgrade his power and control and then playing the junior doubles matches after the junior singles matches (it's faster to reset back to the dorm anyway, so you might as well team up then). Alternatively, you could leave your partner at level 1 and swallow the loss of his service and return ace experience points, which may not make up for the gained experience you "steal" from him. It would be worthwhile to research whether investing in your partner is worth it.
I was hoping to keep this project to myself until it was finished, but since I've hit a bit of a roadblock and I recognize when I'm losing interest in a project, I'm opening this WIP up to criticism and commentary.

Download (18.34 KB) Info

#11466204865872104 - Brute-force walljump save.

SMB walljump brute-force.fm2

Uploaded 12/21/2013 8:46 AM by Bobo the King (7 files)

For Super Mario Bros. (NES)

In 00:00.01 (1 frames), 0 rerecords

72527 views, 1302 downloads

To be used with my demonstration brute-force script. Load this state then run the sample script and Mario will execute a walljump (eventually).

Download (95.11 KB) Info

#10250678766083200 - Super Mario Bros. 1 input optimized

SMB1 optimized.fm2

Uploaded 10/27/2013 2:58 PM by Bobo the King (7 files)

For Super Mario Bros. (NES)

In 04:56.99 (17849 frames), 0 rerecords

72788 views, 1317 downloads

Super Mario Bros. 1 with all extra input removed. HappyLee's original movie has 7407 inputs, mine has


He ends his movie (but not his input) at the axe. No frames were saved following the last jump. Our inputs (not our movies) are exactly the same length.

Download (410.78 KB) Info

#10240438833533844 - SMB3 optimized through level 2 (then desyncs)

SMB3 optimized 2.fm2

Uploaded 10/27/2013 3:54 AM by Bobo the King (7 files)

For Super Mario Bros. 3 (NES)

In 10:25.62 (37599 frames), 0 rerecords

32141 views, 1273 downloads

I ran my optimization script on LordTom, Mitjitsu, and Tompa's Super Mario Bros. 3 run. It removed about 1/3 of all inputs. However, it desyncs after two levels because enemies are on some spurious timer that isn't affected by frames but rather by the user's input.
I swear it's not a problem with the script! I just need to analyze the game's RAM more thoroughly!

Download (865.02 KB) Info

#10203515734605392 - Dr. Mario input minimization movie

InputMin test.fm2

Uploaded 10/25/2013 11:59 AM by Bobo the King (7 files)

For Dr. Mario (NES)

In 00:52.53 (3157 frames), 0 rerecords

9301 views, 1106 downloads

To be used with my input minimization script. You can minimize the input of any other (FCEUX) movie file you want to.

Download (72.84 KB) Info