Submission #9246: Pankaj's NES Code Name: Viper in 10:45.45

Nintendo Entertainment System
baseline
(Submitted: Code Name - Viper (U).nes USA)
BizHawk 2.9.1
38791
60.0988138974405
85635
PowerOn
The hash in the movie file does not match the cataloged version but it syncs on it.  I was unable to locate a version hash (headered or headerless) that matches what's in the movie file.
			
Submitted by Pankaj on 8/24/2024 11:57 AM
Submission Comments
Code Name: Viper TAS Improvement
I'm happy to announce an 81-frame improvement in Code Name: Viper! This TAS project began in early 2023, and I discovered new tricks to enhance gameplay.
Breakdown of Improvements:
  • 57 frames saved through gameplay optimizations
  • 15 frames gained from faster cutscene skipping
  • 9 frames gained from emulation differences between FCEUX and BizHawk (FCEUX is not accurate at emulating Code Name: Viper so that shouldn't be a concern)
New Techniques:
  • Despawning enemies
  • Manipulating loading frames between levels to control luck
The grenade door location (stored at RAM address 0x00A2) is frame-dependent, meaning it varies based on the exact frame you exit a level. Previously, this required sacrificing frames at the end of a level. However, the new loading frames technique eliminates this need.
This technique involves manipulating loading frames between levels to significantly impact:
  • Enemy behavior
  • Grenade door location
  • Cutscene duration
Additionally, RAM addresses 0x350, 0x380, and 0x3B0 store enemy type bytes from the ROM, enabling:
  • Enemy spawn and despawn manipulation
  • Tracking of off-screen enemies causing lag.
Detailed Level Improvements:
Level 1: Saved 10 frames through careful optimization.
Level 2: Gained 15 frames from improved enemy behavior and reduced lag.
Level 3: Found a 3-frame improvement through better grenade door placement.
Level 4: Lost 3 frames due to unfavorable enemy behavior and lag.
Level 5: Saved 3 frames to maintain a 28-frame improvement.
Level 6: Saved 15 frames by despawning enemies and reducing lag, but missed optimal grenade door placement by 1 frame so I had to sacrifice 5 frames resulting in a 10-frame improvement here.
Level 7: Gained 3 frames, but lost 2 due to bad luck.
Level 8: Applied all new tricks to save 18 frames.

nymx: Claiming for judging.
nymx: It's very impressive that you took that much time to try and optimize your own work even further. It reminds me of a game or two that I've redone myself, that yielded a small chunk of frames. From my experiences, it is more rewarding to dig for those "hard to find" frames than to find places that enough effort wasn't given on an original attempt. I congratulate you on your work, as this appears to be a complicated game to optimize.
Btw, I'm just now noticing the "Sync" contributors to the submissions. I want to thank adelikat for offering a confirmation on the syncing of this movie. Accepting over [5166] NES Code Name: Viper by Pankaj in 10:46.80.
fsvgm777: Processing.
Last Edited by fsvgm777 14 days ago
Page History Latest diff List referrers