Posts for jlun2

Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Air Burst for GB uses a password system to get to stages 6, 11, 16, 21, 26. Due to the end stage score countdown, it can be faster to soft reset the game, and use the password to get to the next stage. Is that fine? eg. 1. Beat stage 10 2. Soft reset as soon as stage ends 3. Enter password to stage 11 This for instance saves 131 and 1,215 frames for the transition from stage 5 -> 6 and stage 10 -> 11. The 5th/10th/15th/20th/25th stage is still beaten normally, and nothing was skipped except the score countdown. The password used is also given if you had went through it normally.
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Finally finished watching. 3 times in the run, the player abruptly stops moving. Once in the contest area, another in desert, then on Liz island. Was it for luck manipulation? You mentioned that you walked instead of running through grass to advance the timer slower. Does that save time compared to just getting an encounter normally? I noticed it happened in Liz Island, and only in specific parts of the island. Why is that so? Sometimes, I notice you don't use the first Denjuu to attack, and instead seemingly do nothing, before attacking later. For instance, the Octorifle fight. Can you please explain what the strategy was? How did you plan for which Denjuu to recruit? I was initially confused on why you seemingly recruited the same Denjuu 3 times in the mountain, until much later they were used in the area next to it. That was actually quite clever. Despite the areas being very long in comparison to the sequel, the run was actually quite nice due to the music.
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
https://pastebin.com/DXiDT9ZT
Game Boy/ Game Boy Color Console Verification Pipeline with new halt bug accuracy Needed - A Game Boy Player and Game Boy Interface (GBI). An SD Media Launcher, modchip, or some other method is needed to load GBI and the input movie. These methods are -only- used to load the GBI homebrew software and interact with the Game Boy Player, they do not in any way modify the behavior of the official Game Boy Player hardware. Use BizHawk 2.3.1 Write your TAS using the Gambatte core and use this LUA script to dump the inputs to a file that GBI can use. There are some indications that it is faster and more accurate than the GBHawk core at the moment. https://pastebin.com/NbTRNePD Alternatively, write your TAS using the GBHawk core and use this LUA script. https://pastebin.com/GD0ZTJYe rename your timestamp output to yourmoviename.txt and optionally gzip it put the movie file on an SD card with GBI or GBI-HF, both inside a folder named GBI (for example E:\GBI\gbihf.dol and E:\GBI\yourmoviename.txt.gz) create a CLI file in the same directory name gbi.cli or gbihf.cli respectively to pass your input movie to GBI, the cli should contain an argument --movie=yourmoviename.txt.gz along with any other arguments that you use to tune GBI. Run GBI or GBI-HF from the SD card. I do this using Swiss, which I rename to autoexec.dol and place on the root of the FAT16 formatted SDHC SD card. From swiss it's easy to choose which version of GBI to load to load other homebrew. Watch as GBI plays back your console-accurate TAS! Credit to Extrems, AlyoshaTAS, and Gifvex for their help with getting console verification to where it is.
This was mentioned on those pokemon GB TASes. I also posted a link to it on the console verify thread.
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Would it help if I ran that console verify script on both versions of the run and post results here?
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
This looks fantastic, but looking at the example code, it becomes progressively harder to understand. Is there a way to semiautomaticly convert from the 1st approach to the last file, so I can add more features to the script in a easier to understand format, then optimize it later? Alternatively deoptimize it to change a function, then reoptimize it again ?
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Using BizHawk 2.3.1, the Air Burst gameboy TAS desyncs due to BIOS start (among difference in lag). Fixing it gives the following times: Gamebatte core:
Stage	Start	End	Time
1	1079	1271	192
2	2095	2347	252
3	3253	3513	260
4	4375	4551	176
5	5627	5983	356
6	6942	7314	372
7	8262	9026	764
8	10108	10424	316
9	11290	11702	412
10	12584	12888	304
11	13841	14369	528
12	15326	15974	648
13	16978	17722	744
14	18721	19469	748
15	20325	20853	528
GBHawk core:
Stage	Start	End	Time
1	1026	1218	192
2	2025	2277	252
3	3166	3426	260
4	4271	4447	176
5	5506	5862	356
6	6807	7179	372
7	8110	8874	764
8	9941	10261	320
9	11110	11522	412
10	12387	12691	304
11	13627	14155	528
12	15095	15743	648
13	16730	17474	744
14	18457	19205	748
15	20044	20572	528
In GBHawk, only stage 8 was slower due to additional lag. Every stage transition saves 14-17 frames compared to Gamebatte for some reason. This amounts to a total of 281 frames "saved" simply by switching cores. With that said, would this be allowed? 1. Submit improvement of the current Air Burst TAS using gaembatte, wait for it to be published. 2. Submit the resynced version (also using the same BizHawk version 2.3.1) in GBHawk 3. Get it published as a 281 frame improvement doing nothing. Both versions uses BIOS startup. There's a rule saying "If a published movie uses an inaccurate emulator and you have the choice of a more accurate one, use the latter." In this case, both cores score 89.4% on accuracy tests. Do I just play it safe, and submit it using Gamebatte (since it has pokemon console verified runs), and hope noone tries to do the steps above? Edit: Even if loading times did not count, and there's no RNG, GBHawk mysteriously lags differently in stage 8, losing 4 frames during the fight with all input the same otherwise. Then steps 2 and 1 simply gets swapped, and for step 3, claim it's a 4 frame "improvement" using Gamebatte, disregarding difference in loading.
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
So...how's SDA nowadays? Is there anyone attempting to change the site layout, or implement some requests such as "show past X # of runs, even if it's only hosted on archive.org? Or is it impossible due to incoherent site code? (Not saying coding is easy; I'd imagine it look something like fixing this)
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Does SRC actually save any videos in their site, or is it always offsite? Would be really unfortunate if a runner either deactivated their account on youtube/twitch, or deleted the video. It probably doesn't affect popular communities given that chances are, it has tons of runs, but for less known games it's frustrating. eg. "There's a known improvement from this one deleted video, but have no idea what it was."
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Thanks for the explanation!
moozooh wrote:
Level 15 is an even better illustration of Baxter underusing of the paddle in favor of sending the balls to the ceiling gap. IMO this comparison video should be linked in the description to demonstrate the differences in optimized human and nonhuman approaches.
I would love a console verified version to be showcased on AGDQ or some other event in the TAS block; it would definitely at least surprise people regarding the optimal solution, even if it wasn't an ACE.
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
For the submission text, the "(link)" appears to not exist:
This is one of only two levels where time had to be sacrificed to manipulate the score. It can be completed 7 frames faster (link) but the resulting score is unfavorable for later levels.
Like level 16, some time was lost to manipulate a better score. The best-known time is 5 frames faster (link).
Also is it correct to say the reason why some stages had a delayed start (10 for instance) was due to NPCs, or is it some other reason? Great improvement btw. Are you planning to brute force like this for any other games?
Yeah, at the beginning I thought the same, that I could just calculate angles or something and simulate it that way. But there's a lot of annoying stuff in the game to prevent that. For starters, there aren't any subpixels in the game, everything is done with whole pixels and lookup tables to "fake" the angled movement of the ball, so the math immediately breaks down. Then there's rules baked into the game about how the ball snaps to a brick position when it hits it, enemy behavior, bumping the ball with the paddle, timing changes when you collect the powerup on different frames, and so on. In the end simulating it all was the only way to make it happen.
Can you please elaborate on this? Would be very interested in how the game does the angles.
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Most levels dont have anything special other than a FPG
"FPG"? What does this stand for?
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Late, but did you freeze any values in RAM? If you did, it gets added to the cheats list for the game.
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
By having Scrippa have at least 42 attack and 58 denma on recruit, I can use friend + normal hit and defeat Anpipit (Desert) without using special. This allows me to save 1 drink. It also allows me to KO Demerus without having a friend, and the 2nd Denjuu of rival 2 fight without having to critical. You can also save 1 drink if your friend/ally can deal at least 13 damage to Karinota in the Mistashi fight. By using Bashou lower Gyuun 3's defence, I can save 1 additional drink, at the expense of 1 turn (Bashou cannot KO anything at all, so at Bashou's 2nd turn, I need to do nothing and wait for Scrippa's turn. Additionally even with speed bracelet you cannot outrun Bashou). I need to further check if that is worth the 1 drink. This means potentially only 9 drinks are needed now rather than 11, assuming I never figure out why the Hermits in Power version take longer to arrive than in Speed. Edit: Super late, but found the game state. It's 0x34A8 IWRAM. The values: 1- Beginning company logos 3 - Menu 4 - New game name select 5 - Battle 6 - Select a file 10 - Overworld 11 - Map 13 - Select item to fuse 14 - Crash 16 - That pic with the sapling? 17 - Credits 20 - Trade 21 - Beginning intro
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Would this glitch still work if the 26th music appeared in game outside the music test on certain frames?
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
From attempting to sync the published run to 2.3.1, the following locations desync: 1. Harry's room 2. Ron's house on arrival 3, 4. Right before the gnome toss, during dialogue. These desyncs are caused by a difference in lag. By the time the gnome toss is reached, at least 2-4 frames have been wasted due to additional lag, and the run then desyncs due to same RNG, but timer is different by 2. Edit: After the gnome toss, RNG is off by 2. It further diverges by the bank, but at least the "time spent" timer is rather close: http://tasvideos.org/userfiles/info/53578226177494078
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
I just realized their doing a 100% run. From the link:
Defeat Ganon Timing ends when you deliver the final blow to Ganon You must collect: All Hearts All Items All Songs All Equipment Upgrades Hurricane Spin Double Magic Meter
That doesn't sound like much compared to most of the game's content, but apparently it's already 6+ hours in a real time run. How much time could be saved if TAS? Also, I'm not suggesting anyone to actually do it because 6+ hours TAS is absolutely hell to make already, but does anyone know what would be the time if the sea maps were completed? Just curious btw.
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Mothrayas wrote:
Would it be possible to set the starting clock up such that you collect the first items in stage 5 at a time of around 2:59, then proceed to stage 6 on 3:00 and get its item then? Based on how I read this scenario, it sounds like that would be possible.
Don't think so; right now, it's set up to obtain the first 2 items on stage 5 to collect the 0:XX and 1:XX items in the first playthrough. Another hour would have passed on the 2nd playthrough and allow the 2:XX item to be obtainable. Unfortunately, this means 1 hour-ish wait for the 3:XX item between stages 5 and 6. If the clock was changed to instead allow collecting the 2:XX item and 3:XX item, the earlier 2 items (0:XX, 1:XX) would be unobtainable until 24 hours later.
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
feos wrote:
Please elaborate. You can set the time when starting a movie, I guess that doesn't help? Also if you just have to wait for 2 hours no matter what, how is that even a speedrun? What game? What goal?
There's a collectable item in Nanashi no Game Me. They unlock platforming stages, which if you complete all of them, unlocks something special (extra stage + graphic iirc). The game has 7 stages. In terms of real clock, 3 of the items ONLY appear if the DS clock was at 0:XX, 1:XX and 2:XX during stage 5. A fourth item needs the clock to be at 3:XX to appear on stage 6. XX is any arbitrary minute. The game itself takes about 1 hour to complete, just like the first version. To unlock stage 7 (which gives a special ending), you need to complete the game twice. Even if it was possible to obtain the 0:00 and 1:00 item in the first playthrough, due to how the 3rd item appears at 2:XX, yet the 4th item appears at 3:XX on the stage right after it, we have the following choices: 1) Save the game, then change the DS clock to 1 hour later, then start again and proceed to stage 6. This is not possible to do right now in Desume (clock change doesn't register) 2) Save the game, then complete most of the unlocked platformers first. Then do literally nothing/mess around for the remaining amount of time until 3:XX is reached, then immediately start stage 6. In a real time run, 1) would be the choice to do. Since that's not available, would 2) be valid? Edit: Play "suboptimally" would be to spread the wait time for 1 hour between stage 5 and 6, since there's nothing else I can really do using the current emulator to advance the clock. (even if I finish the current platformers, they take like 1 min max to beat, so that's still 45 minutes of waiting).
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Given that for NDS runs currently even with BIOS support you cannot change the clock during a run, would anyone mind if a time based run was done by awkwardly "suboptimal" gameplay and/or standing for 2 hours just to wait for an event that depends on time to occur? Edit: Game in question is Nanashi no Game 2 where the chests for 100% ending is RTC based, but without the ability to change in game clock you might have to wait for 2 hours.
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
How did it go so far? Also what emulator would it be using? It appears the current run doesn't sync for BizHawk 2.3.1, but it may be possible to resync it. I do wonder if that memory corruption glitch from trying to skip a cutscene would still work on the latest version.
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
1. I usually use Youtube. 2. If I'm interested in the game for whatever reason, I may also watch it on emulator. 3. If for some reason the Youtube link is copyrighted, and the ROM just seems to have also disappeared from the web, I'll download the video. Edit: mk4 file shows up as blank video with audio only in the default media player for Windows 10. The mp4 works however.
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Now that the first fight with Scrippa is the longest, I've been thinking on how to improve the fight. An approach that may work would be using those domes to evolve Rex (or some other Denjuu) to boost their stats, then use it to recruit Scrippa. By obtaining a "chainsaw" and evolve Rex to its forest form, it has an attack stat of 33 at level 4. Using it's electric arrow move then allows it to deal 13 damage on Scrippa with critical. Along with using the ally/friend, this allows 19 damage per turn, allowing the fight to end in 3 turns, at the cost of having to defeat some random NPC for a chainsaw. Edit: Chainsaw, Canteen, Jerrycan seems to allow 18+ damage/turn. Also the "friend assist" seems to always deal 6 damage at level 4 Rex regardless of attack stat. Edit2: Siguri forest at level 5 deals 16 damage with crit using move 2. Along with the 6 damage from friend that is 22 damage per turn. While this requires recruiting Siguri, it also means the 3rd turn does not need friend to appear, unlike with Rex forest. However, obtaining a chainsaw for Rex can be done in 1 turn at the start fights, so that might be worth investigating. Currently takes ~4,000 frames to fight Siguri (takes 2 turns), recruit, manip chainsaw, and fuse. It's about ~1724 frames faster not recruiting Siguri up to Scrippa encounter. Ie. It takes 2440 frames to get a chainsaw and fuse. Edit3: In Power version, the 2nd Hermit does not appear at the first turn, even if Scrippa's speed is 25. In Speed, it does for some reason. Edit4: You lose 1710 frames using Siguri compared to the current run at the point you beat scrippa and recruit. Edit5: After resyncing the TAS up to the Skrippa fight: From the current TF2 TAS, with zero delay, every move Skrippa uses misses, and all damage done is crit, the first fight ends at 32521, compared to 33899 for the strategy of using only Rex with delays. Using chainsaw Rex with the same conditions ended the fight at 34012. This means no matter what, unless somehow there's a way to 2TKO, the current strategy is optimal. To clarify: Starting the fight (When screen blacks out and lag): * Current route: 28356 * Chainsaw Rex w/o item: 30802 Ending the fight: * Ideal current route strat: 32521 * Current route strat with delays due to bad luck: 33899 * Ideal chainsaw Rex w/o item strat: 34012 To find how long it takes to grab the item, and resync everything else, I use the frame for when Tokaribe Field movement begins: * Without item: 25252 * With item: 25801 So it took 549 frames to grab the item, which would allow a 2TKO Skrippa. The current route takes ideally 32521-28356 = 4165 frames (01:09.42) to beat and recruit Skrippa. The current route with luck manip takes 33899-28356 = 5543 frames(01:32.38) to beat and recruit Skrippa. This means 1378 frames (00:22.97) were used to manip luck. The ideal chainsaw Rex without attack boost item takes 34012-30802 = 3210 frames (00:53.50) to beat and recruit Skrippa. However, it uses 30802-28356 = 2446 frames (00:40.77) to set up, and so ends up being slower. Given that it takes 549 frames to grab and equip the item, we can add that time to the time to the start fight time. This gives a value of 30802+549 = 31351 frames. Given the ideal Skrippa time for the current route is at 32521, this means the fight can only last within 32521-31351 = 1170 frames (00:19.50) before you end up losing time. Using cheats to get a 2TKO fight starting from 30802 gave an end frame of 33250. This means the fight took 33250-30802 = 2448 frames (00:40.80). Adding 549 frames to take account into grabbing and equipping item gives 2448 +549 = 2997 frames (00:49.95). This would give a time of 33799 frames, or 100 frames faster than current run due to luck manip. Since this is the time it would take given 0 frame delay, chances are it'll take longer, thus the current route, even with its 5543 frame fight will end up faster.
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
That's nice! Is that for just the first battle, or does that apply to that battle + rest of the game? Ie. RNG never changes after pressing start at new/load game?
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
Haven't checked the code yet, but does this work for 3D games? I would love to have a way to map 3D areas in games where there's no maps.
Experienced Forum User, Published Author, Skilled player (1709)
Joined: 9/17/2009
Posts: 4952
Location: ̶C̶a̶n̶a̶d̶a̶ "Kanatah"
brunovalads wrote:
This is really interesting! Is there any NES TAS that uses subframe inputs? SUBNESHawk would be a different core to be chosen in the core dropdown list? TAStudio would have subframes like "1234, 1234.1, 1234.2, 1234.3 ... 1234.999, 1235"? Could the same be done in the bsnes core, like Lsnes does?
I know of literally one in [2868] FDS The Legend of Zelda "2nd quest, game end glitch" by TASeditor, Masterjun & sockfolder in 03:06.46:
The small problem with this way of writing code is that it is really slow. You write the code by shifting bits, and you have to repress the buttons. In FCEUX this means you effectively write with a speed of 1 bit per 2 frames, which is 3.75 bytes per second (REALLY SLOW)... (well it's not really 3.75 bytes per second because of clever ways of writing code, which I explain later) I say in FCEUX because this emulator only lets you input once per frame, even when it is polled multiple times. This also had the effect that sometimes some buttons were lost (because of unfortunate timing) and I had to wait a frame.
Edit: Not sure would that Kirby's Adventure glitched TAS would benefit as well.