Vectorman is considered to be one of the last great games for the Genesis platform. The hero is a robot with rocket-boosters in his shoes and a photon gun strapped to his hand, set to stop another, somewhat crazy, robot from destroying Earth. Oh, and the crazy robot has a nuclear warhead bolted to him.
This game was a ton of fun to make because it’s so versatile and there are a lot of little nuances that keep it surprising. My motivation for this run was Zer0’s previously rejected run, and I’d like to thank him for making the template that I worked off of. I improved his run by almost about 53 seconds, and did so without taking damage. This was also my first experience with using the Gens RAM viewer, and the extremely quick bosses were due mainly to this. A day by day breakdown would be a little bit long, so here’s some highlights:
Day 1: A straightforward first level to show off Vectorman’s jumping and rapid fire shooin’.
Day 3: The most boring level of the game, so it’s good to get it out of the way early. Vectorman moves fastest in the air, second fastest underwater, but the delay in between the two kills almost all momentum. Unfortunately it can’t be avoided.
Day 4: The bosses name is Aurora Borealis (ie the Northern Lights), and Aurora is taken out nice and fast thanks to the slickness of the ice and Vectormans ability to shoot once every three frames up and diagonally. Borealis was one of a couple bosses that I couldn’t get a RAM value for, no matter how hard I tried, so he may be improvable a little bit.
Day 6: This boss is a PITA, just because of all the projectiles he throws and his long invulnerability time. However I think it looks very pretty with all the fire raining down around our hero.
Day 7: I could not manipulate the right hand to land enough to the left for me to hit it the first time it comes down, so this is the only level that is longer than Zer0s (by a whole 15 frames)
Day 9: This slinky-like boss has 160 HP. Watch the wonders of the rocket-boosters in action.
Day 11: If only disco had lasted as long as this level did.
Day 14: The corner cutting in this level is optimized. I take a couple downward shots because this causes Vectorman’s descent to slow, while not changing his horizontal velocity, thus allowing him to barely clip some corners.
Day 16: WARHEAD… he lasts a little longer than it took me to type his name just now.
This game has been known to suffer some desynching issues, so make sure you use the right ROM and correct version of Gens just to make sure. I had several problems with desynchs, especially with the Day 6 boss, so I hope things work for everyone. Here’s the important info.Gens9Z_20070209 was used, and I didn’t change any settings except remapping the keys. No warps or passwords were used. Played on the hardest level. My Goals:
Primary: Take no damage.
Secondary: Complete the game in the fastest time possible.
Tertiary: High score.
Enjoy! :)
EDIT: Due to discussion, back to the drawing board.
The major desync factor that's exclusive to Vectorman is the sound rate. I was able to watch this run properly with 44100 hz sample rate.
At 22050 there is a desync in day 3.
At 11025 there is a desync in day 2.
Are you aware that the game gives an additional "pacifist" bonus at the end of levels if no shots were fired? Using jetboots to destroy enemies doesn't prevent this bonus.
How fleeting are all human passions compared with the massive continuity of ducks.
Joined: 11/18/2006
Posts: 2426
Location: Back where I belong
Nope, wasn't aware of that, but it wouldn't change my run at all. All the shots I took were for specific reasons, and I used the jet boosts extensively to destroy enemies. Plus, that's why high score is only 3rd on my list of things to worry about.
Here's a question: have you used memory watch for monitoring Vectorman's speed? His means of acceleration are very interesting and will yield totally different results in different situations.
Like, for example,
Vectorman's top running speed is 1024 units, and it increments in steps of 32 units per frame.
Jumps increment in 80 units per frame until 480, reach 512 on the next frame and continue incrementing further by 8 units per frame.
Jumping from a speed higher than 952 will reset it to 952 upon the moment of jump.
Landing after a jump while holding the same direction lowers your speed to 896, but a successful bunnyhop can avoid that (so it doesn't fall below 952).
By remaining airborne as long as possible, Vectorman can reach a speed of 1656 units even if he falls on a platform of the same height (it continues rising if he doesn't).
Etc.
All in all, this is a very fine run (and Vectorman is one of my favorite games for Genesis), but I'm having an impression that it can be improved by a few more seconds.
Joined: 11/18/2006
Posts: 2426
Location: Back where I belong
Hmmm... very interesting. At the start of the run I tried to figure out which RAM addresses contained his velocity, but I could never fully understand it. I always seemed to get 4 or 5 addresses that seemed like they would work, but then they would start to shift into negative numbers even when I was still moving in the same direction. That would make sense for acceleration addresses, but velocity is what I was concerned with at the moment. Since I'm new at RAM searching I got a little frustrated and decided to just move on without totally tearing the game apart. I'm sure that it can be further optimized by using some of these techniques, but this is one of the finest Genesis games that have yet to receive a run, so I wanted to get a respectable one submitted.
EDIT: I also started considering making a damage taking run sometime in the future, to avoid some of the small delays caused by enemies in very narrow halls, so if I do I will certainly spend more time analyzing his speed and physics, but right now I have to take a break from TASing because of school, work, fiancee, and life in general so I hope this is an adequate first crack at this beautiful game.
I see.
I will vote yes, since I liked the run, and it was of publishable quality, anyway, but someone will have to improve this run some day. (I seem to remember adelikat having some plans on that matter a couple of weeks ago.)
Also, the address for speed is 00FFE36C (2 bytes, signed). And the damage taking run will surely be good, I think it could help to save a lot of time.
Emulator Coder, Site Developer, Site Owner, Expert player
(3573)
Joined: 11/3/2004
Posts: 4754
Location: Tennessee
Nice run :) I really enjoying watching vectorman movies. I would have preferred if you took damage in places that it could save time though.
Still, easy yes vote for me and congrats on the large improvement over the previous submissions.
Thanks to Upthorn. I was having desync issues. Then I set the audio sample rate to 44.1k and it worked just fine.
Sorry, I voted no because it still looks too slow (below-average quality compared to other runs being published). You lose over 15 seconds on Day 1 alone, and it doesn't pick up very much in the next few levels. And the SEGA screen should have been more entertaining, but you didn't do anything at all there.
For the record, the reason there were 0 votes after the questions for my post were answered is because I'm still planning on voting no, but wanted to watch through more carefully one more time to get together a full list of complaints.
Edit: It occurs to me that even just the data moozooh gained from testing shows that you didn't find the optimal movement in all situations (like the very start, for instance).
And then the fact that nitsuja managed to find 15 seconds in day 1 alone. I mean, he is nitsuja, but 15 seconds is still a rather large amount.
Okay, let's combine these two statements:
Mmbossman says: Shooting downwards slows descent but does not modify horizontal speed.
Moozooh says: Horizontal speed is uncapped while in air, (or at least is capped much higher than while on land).
Were both of these statements true, it would be possible to do nearly every level much faster.
However, shooting downward while in air does slow vectorman down if his speed is above 512... (but this method might still be useful in day 3 for making a couple long jumps)
How fleeting are all human passions compared with the massive continuity of ducks.
Joined: 11/18/2006
Posts: 2426
Location: Back where I belong
upthorn wrote:
N. Harmonik wrote:
nitsuja wrote:
And the SEGA screen should have been more entertaining, but you didn't do anything at all there.
If Vectorman moved at all at that point, wouldn't the title screen be delayed?
Not as long as the player keeps pressing start to test for the first possible "skip" frame
Nitsuja is right, I could have gotten off a jump/ double jump in that time (although a simple jump adding to entertainment is questionable). However, with no votes from two of the most respected members, and so many questions about the speed of this run, does it even have a shot or should I just cancel it and start over?
Emulator Coder, Site Developer, Site Owner, Expert player
(3573)
Joined: 11/3/2004
Posts: 4754
Location: Tennessee
The no votes from respected memebers isn't exactly the issue. It is the great improvability of this run. 15sec for just one level is an awful lot and suggests that all the other levels could be greatly improved as well. So no, I don't think this one "has a shot".
I guess I should post what I found to give something to compare with. Vectorman (W) [!].gmv
Also, I know the Day 2 boss can be killed before the perspective starts shifting.
Joined: 11/18/2006
Posts: 2426
Location: Back where I belong
nitsuja wrote:
I guess I should post what I found to give something to compare with. Vectorman (W) [!].gmv
Also, I know the Day 2 boss can be killed before the perspective starts shifting.
Thanks for the WIP, and I took the lazy way out on day 2 and put it onto auto fire, this time I'll actually find out exactly how many frames in between each shot there are. I have a feeling that although this will be a little more time intensive, it should be a lot less trial and error now that I have velocity measurements and my own benchmark to work with. I hope my next try will be satisfactory.