Greetings!
In response to the recent request / plea for new TASers and TASes of new games, I've decided to come out of the woodwork with my "proof of concept" TAS for Bonk's Adventure using Mednafen 0.8.A. It's neither complete nor optimized, but it does demonstrate that it can be done. I've only done stages 1-1 through 2-2 so far.
You can download the Mednafen movie file
here. Save this to Mednafen's "mcm" directory. It'll be movie file number 6 (Shift-F6 in the emulator); to change this, just modify the file extension to be ".x.mcm" where x is the movie number that you want. You'll need the ROM "Bonk's_Adventure_(U).pce" in order to play the movie. I've tested the movie file on a Windows machine and on a Linux machine and it works great on both of them.
Of course, if you can't be bothered with all that, you can watch it on
YouTube . It's a low quality encode, but it's good enough for now.
Mednafen does not currently support re-recording, but it does have 10 second rewind functionality. Rewinding can be done during the recording of a movie, and it can also be done in frame advance mode. So, it allows for frame perfection of specific segments of a movie...but it's impossible to backtrack past 10 seconds without starting over from scratch. This makes it a little challenging to test new routes and strategies while recording a run. More on this later...
So, on to the game:
Bonk is normally a pretty slow walker. I had to come up with a way to speed him up a little bit. If you headbutt a flower, you are (typically) repelled quickly in the opposite direction for a short period of time. It's difficult to control in real time, but in a TAS you can jump as you're being repelled and maintain the faster velocity. While you're floating in the air (at the cost of some very annoying sound...sorry), you can headbutt enemies to gain height while still maintaining your speed. It only takes a few frames to set up, so it's usually much faster than grabbing a meat power-up. (For those of you who aren't familiar with the game, the meat power-up has an unavoidable animation several seconds long each time you get it. You'll see it in area 1-2 of my video.)
Collision detection in this game is poor. At times, Bonk can headbutt a flower a couple pixels over from him and not hit it. (VERY FRUSTRATING!) At other times, he can headbutt an object several pixels beyond his reach and somehow hit it. In addition, as you'll see from my video in the second half of area 1-3 and area 2-1 (see what happens at 3:46), Bonk can pass through objects unharmed and unhindered if approached at the right angles and velocities.
Damage boosting is occasionally useful. I use it in this test run to gain height without losing speed.
As I said before, the run isn't optimized right now. I know of some improvements already, but I'd like to get some feedback from you guys before proceeding too much further. Let me know if you think that it's worth continuing.
Regarding the lack of re-recording support in Mednafen: I've tried running Mednafen in a virtual machine using VMWare Workstation and using a VMWare ESX server. This allows me to take snapshots, which can give me some makeshift re-recording capability. Unfortunately, even with VMWare tools installed in the VM, video frames get dropped. It's pretty much unusable. I'm going to try it on a Windows VM running under VMware Fusion on a new MacBook to see if that'll do the trick.
OK, that's all for now. I hope that you like the "proof of concept." I'm a TAS newbie, so be gentle. :-)
- Jerfo