Submission #6342: TiKevin83's GB Pokémon: Blue Version "SoftLock%" in 01:24.85

(Link to video)
Game Boy
(Submitted: Pokémon: Blue Version)
SoftLock%
BizHawk 2.3.1
5068
59.7275005696058
7424
Unknown
Pokemon Blue (UE) [S][!].gb
Submitted by TiKevin83 on 4/1/2019 1:27:38 AM
Submission Comments
This is an explanation of the strategy behind a console-verified Pokemon Blue SoftLock% TAS in 1:24.8.
Credit to SudoTrainer for the idea and Andersama for the new console encode pipeline which will be explained.

Setup

We now use the pipeline described here to verify console accuracy of gameboy TASes. https://pastebin.com/DXiDT9ZT
This pipeline has been used to verify TASes by both me and Extrems, and it has been demonstrated publicly in the practice rooms at SGDQ 2018 and AGDQ 2019. Using GBHawk on BizHawk 2.3.1 may make it more likely for TASes of non-Pokemon games to sync on real hardware.
I used a gbc_bios.bin for the GBC firmware and set CGB in GBA to True for GBP verification purposes.
The YouTube encode linked above actually helps mark a major innovation in console video capture of GB/GBC/GBA games. This is the first submission after Andersama and I wrote an OBS filter to use GBI-HF over HDMI with a workaround for the GameCube's digital signal and recover an exact 1:1 pixel image. This quality was previously achievable only using an analog capture pipeline. An explanation of the filter can be found here: https://pastebin.com/WJfFYdgH

The TAS itself

The category was popularized by Shenanagans as seen here:
Pokemon Gen 1 games are notorious for being full of bugs. Save corruption can win the game in just over a minute by TAS timing. By restricting save corruption, Shenanagans created a unique category that still crashes the game extremely quickly. Through moving the girl to a specific grass tile and keeping her there during Oak's dialogue, we can force the character to bonk on her the first step of the automated movement and break the script, keeping the joypad locked in a disabled state with the game unresponsive to any inputs.
In TAS, we can additionally watch the NPC timer at Address 0x0228 (C228 outside of BizHawk) and reroll it via varied movement and A presses. The NPC timer is supposed to roll between 0 and 255, but we keep it consistently on the low end through our RNG manipulation, and in one case generate 3 consecutive 0 rolls with the direction also moving favorably. This is similar to the manipulation done for "THE Manip" in the Yellow NSC TAS.
In RTA the NPC can be forced to move in limited directions as they will never go offscreen voluntarily, but in TAS this forcing is unnecessary.
I hope you enjoy uniqueness of the submission goal and the new level of console capture quality viewable in the YouTube encode, especially when set to 1080p60. My YT channel contains console reencodes of my other Pokemon TASes at the new quality level as well.

Masterjun: Rejecting for neglecting the girl walking right into the tall grass. She clearly states she has yet to raise her Pokemon so they can protect her.
Last Edited by adelikat on 10/31/2023 3:33 PM
Page History Latest diff List referrers