Experienced player (543)
Joined: 11/18/2011
Posts: 245
Location: Morocco
Same. I really want to see something new in Grant category (this specific category surprisingly being a lot unique than Sypha and Alucard).
I still learn more about English. https://www.youtube.com/user/McBobX100
I wrote:
Working is the best way to achieve goals in speedruning. Hardworking is a pain.
Editor, Skilled player (1404)
Joined: 3/31/2010
Posts: 2086
If anyone is interested in making a warpless Grant improvement (on J or U), please contact me so I can share what improvements I know. Myself, I'm not gonna have much time to get into this, sadly.
Experienced player (543)
Joined: 11/18/2011
Posts: 245
Location: Morocco
I may take the task. I will be free in few days from now.
I still learn more about English. https://www.youtube.com/user/McBobX100
I wrote:
Working is the best way to achieve goals in speedruning. Hardworking is a pain.
Post subject: dumb writeup on a pointless trick
Editor, Skilled player (1404)
Joined: 3/31/2010
Posts: 2086
Alright, here is a trick that I feel should be documented for posterity. However, it unfortunately turned out incompatible with any fast approach for doing this section. The Fast Grant Orb drop Rarely, the boss orb on defeating Grant will fall one pixel further to the left, causing it to land on the raised ledge. This allows Trevor to pick it up earlier, saving a few frames. The reason it works is because some properties from the enemy that previously occupied the orb's object slot were not properly cleared. Specifically, the orb shares some properties with this Medusa Head in the previous room: More generally, every second medusa head that spawns will always occupy the same slot as the orb. The way it works is that, on the first frame spawning, the game sets the orb's X speed to 128 subpx/frame. The orb inherits the X subpixel position (0x50B) from the Medsua head, so if it above 128, it will roll over a full pixel. However, if bit 3 (0x8) of the orb's status byte (0x560) is set, the game considers it facing left, and will move it left. Now, with a sufficiently small subpixel position, it will roll over one pixel to the left, which is how it lands on the upper ledge. Before the orb, the status byte is used by the Medusa head as a hitstun timer: On taking a nonlethal hit, it will be set to 16 and count down to 0. The status byte is also used by Grant himself, who will set it to a specific value when performing certain projectile attacks. In particular, throwing an axe or a dagger to the left left will set bit 3, and him throwing one to the right will clear it. So, the steps to reproduce it are as follows: 1.Injure the Medusa Head with a nonlethal hit and kill it within 8 frames to prevent its hitstun timer from dropping below 8. This sets 0x560 to the right value. 2.Prevent further Medusa Heads from spawning and overriding 0x560 3.Make sure to leave the vertical room with $50B set to 127 or less 4.Prevent Grant from launching any projectile attacks to the right (to the left is OK) 5.Presto, fast orb drop. So, why is it not helpful? In the clip you see, Trevor can collect the orb earlier, and also much further to the left than before. This finishes the stage faster, however, the subsequent cutscene will take longer, because Trevor will start further to the left and take more frames to walk to his destination in the cutscene. This more than cancels out the frame savings from the orb drop. It might potentially be ameliorated by Trevor being as far right as possible while collecting the orb. However, I've not been able to find a strat that kills Grant fast enough and still gets Trevor in the right position to collect the orb in time. Because of this, I decided to share the explanation here, in case it might be made useful in the future. So yeah.
Editor, Skilled player (1404)
Joined: 3/31/2010
Posts: 2086
This changes everything. Works on J as well. Link to video Userfile Like Castlevania 1, it involves only scrolling the camera on specific frames to prevent new tiles from loading. In this case, because you keep moving for one frame after you let go of a direction, it is much less obvious how to scroll the camera. The game also seems to have a failsafe that will load tiles for a frame even after the camera stopped scrolling, which further complicates things. The general method I found is as follows: 1.Find out whether the game loads tiles on odd or even frames. The necessary value to look for is the framecounter (0x1A on U, 0x1B on J) 2.Walk in the direction you need to go and pause the game 3.If the game loads tiles on even frames, unpause on an odd frame, otherwise unpause on an even frame, holding in the direction you need to go 4.On the next frame, turn around 5.On the frame after that, turn back in the original direction 6.Finally, pause again, waiting until the next good frame to unpause The general input rhythm going right is therefore this: 1 - Start + R (unpause) 2 - L 3 - R 4 - Start (pause) 5 - 6 - 7 - Start + R (unpause) (repeat) For Grant, walking the inputs are the same. When climbing ceilings, you can also corrupt the map, but the inputs are slightly different. Also important to note: In this game, visual tiles and collision tiles are not actually tied together. You can manipulate them the same way though, only you can't actually see what you're doing. This is gonna make a map viewer basically essential. Collision data lives at around 0x6E0 in RAM. I've also started a map viewer script for BizHawk, which should hopefully help with figuring out some usable glitches. Edit: Link to video Made a video showing some possible applications of the glitch I've found. Due to how long it takes to perform, a lot of potentially viable skips are not worth it. Some tricks also only are viable for Trevor only, because the other characters have shortcuts that let them bypass the section anyway.
Editor, Skilled player (1404)
Joined: 3/31/2010
Posts: 2086
Link to video Probably not worth it, since pause glitching the blocks away is likely faster. Still, I had to know. Input File
Editor, Skilled player (1404)
Joined: 3/31/2010
Posts: 2086
I got a small improvement to the scroll glitch. By pausing at certain times as you walk into a column, you can delay the scrolling engine from trying to load new tiles for a little bit, minimizing the number of turnarounds you need to do. Input File If the tile you want to despawn is placed at the lowest row of the screen, this can save up to ten frames. Unfortunately, with my current knowledge of the scroll glitch, this is as good as it's gonna get, and it's still way too slow for more useful applications.