Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
Yes there is. The banned types of exploits are:
1. Use of Out of Bounds (the exact way as I described it near the end of an older post here that defined it since then: http://tasvideos.org/forum/viewtopic.php?p=418314&highlight=#418314 ).
2. Use of the Golden Torizo debug code.
3. Use of Memory Corruption / ACE (normally still accessible via Spazer+Plasma beam combinations even if the above restrictions are fulfilled).
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
Yes, that is possible via G-Mode aswell, as shown in here: https://www.youtube.com/watch?v=v-8S8ceEgA8&feature=youtu.be&list=PLuSvjvyMNAlnGgn5NiFB6iYW79M0aeXCP&t=206
And yes, using the backdoor to Lower Norfair (though one would almost certainly need to do a Crystal Flash right after or during the setup due to the low health Samus ends up with when the setup is done) would skip many heated rooms (the number of heated rooms up to where both paths merge again would be 3 using the backdoor, and at least 9 normally), and the large room filled with lava would be skipped most importantly, so that the total amount of energy needed or E-Tanks collected should be strictly lower.
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
For the case that the RBO branch is kept (but then in a way that asserts that a new RBO TAS can be accepted as improvement without an overlap question coming up then when it didn't come up here this time around), it feels to me as the most reasonable compromise to leave the Recommended for Newcomers tag where it is and switch the Star tag over, just alone already judging from what the Starman Guidelines page ( http://tasvideos.org/StarmanGuidelines.html ) suggests:
For the case of the RBO branch not being kept, I'd assign a Star to the new Any%, and am not sure what to possibly do with a Recommended for Newcomers tag then.
Regarding the topic of majorness of exploits and how to deal with this issue, I'll get to respond to that eventually.
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
Going to go over explanations of some of the content of the TAS (part 2):
At 19:14, the typical X-Ray-Climb motion (turning in crouch while x-raying and releasing it to make the game put Samus into standing pose, omitting any collision checks, so it does it even inside of walls), followed by a (spin)jump inside the 2 tiles gap and breaking out of spin while the top of Samus' bodybox is close to the solid pixels of the block above her, which makes the game (generally) do the following check: It takes the y position of Samus' body-center (normally around her chest, at the pixel-wise center if one counts from top and bottom of any bodybox size and the same from the sides, consisting of a square of 4 pixels due to even pixel size numbers I think), then it checks the current extention value that determines by how much Samus' current bodybox extends up- and down-wards (can be found in the Samus Pose editor which looks like this: https://cdn.discordapp.com/attachments/171753856378732544/416456613134729226/Samus_Pose_editor.png ) starting from that center (her width is always the same 10 pixels), then takes the new extension, compares it with with what's above Samus, and if there isn't just pixels of air in the range above Samus that is the difference of the sizes (new size that one wants to transition into being the larger one), then the game pushes Samus' center downwards by that difference before it extends her, which in this case puts Samus into crouch pose about 2 pixels into the ground. From there, the (invisible) collision check box above Samus isn't filled with pixels from solid tiles, so the game allows Samus to jump from crouch. And now there's a thing that would be relevant and interesting to know for how Superjumps work aswell, namely the behavior of this checkbox above Samus' head, since it isn't placed at a fixed relative distance hovering close to and above the top of Samus' bodybox, but instead moves further up, is shifted further up the faster Samus is currently moving upwards, so it can happen that it applies its check at a seemingly unrelated higher area. Anyways, crouchjumps (unless in angled crouch during which Samus is considered in a different state not on ground which allows for the temporary Blue-Suit effect) give Samus an initial 8 pixels upwards shift in position before the actual jump starts (due to the same reason as before, where the game compares bodybox sizes and positions Samus accordingly), and together with the initially largest upwards speed that the jump provides, the checkbox above Samus' head it in the 1st frames shifted up far enough to entirely be located past the 1 tile solid block ceiling, doesn't check solid tile pixels, only air tile pixels, and hence the game allows Samus to continue moving up. For Superjumps, one can still bonk the ceiling midways (when the checkbox is located somewhere higher up containing solid pixels part of whatever platform), and Superjump speeds need to be chosen carefully because of that to make it all the way to the top, but there's 2 more mechanical tools that help here. One is the turnaround animation during which the constant loss of upwards speed bit by bit still keeps being applied (to change the vertical displacement, the amount by which that checkbox above Samus is put above Samus) while only having passive collision happening but no active reset of the speed back to 0 in an instant, to hope that after the turnaround finished, the checkbox is outside of solid tile pixels so the Superjump can be continued. And the other part is what happens at the last visit of the Plasma beach room (at 26:29), where the vertical speed isn't reset either when Samus is in angled crouch pose (and luckily, that is the pose that the game forces Samus into when in the frame of landing on ground, Samus' upper bodybox contains solid tile pixels and not just air, which is observable when door-stuck setups for X-Ray-Climbs fail) in the middle of a wall (so even though the ceiling stops Samus somewhere higher up, the speed is stored), and in such crouched pose, Samus will just stay in place, but turning around will make the game apply the vertical speed so Samus jets up further through the rocks (which can be chained until no speed is left anymore, or Samus doesn't end up in such angled crouch pose anymore). A remaining, unavoidable effect of this is observable in the next room after the Plasma beach room.
On top of all this, there's 1 more aspect to Superjumps needed to understand that Plasma beach Superjump, and that is that Superjump speed can be stored into standing positions of Samus (similar to storing speed with soft unmorphs), provided that a few things fit. First of all, it has to be a horizontal or diagonal X-Mode spark (necessarily in the direction that Samus faced the last time she used X-Ray, because the game remembers this, keeps some information stored about it) before X-Ray is released (which makes the game want to immediately apply the accumulated upwards speed). The reason for this is that Samus needs some sideways movement speed in the frame in which X-Mode ends, so that this speed is applied aswell and gives Samus a sideways position shift (while still being in the initial standing pose that lasts for 1 frame before Samus rockets up in falling pose). And secondly, if this slight forwards boost puts Samus on ground, she will stay on ground with the speed stored, and can unleash it by losing contact to ground without a jump or crouching (or initiating a moonfall, since that's the only type of jump that doesn't update or force its own new initial vertical speed value upon Samus). If the previous direction of x-raying isn't the same, then this boost at the end of an X-Mode spark (which is the beginning of a Superjump) will not be applied. So it is worth mentioning that the fact that Samus faced to the right during the creation of the X-Mode Blue-Suit (when X-Ray is started) at 16:47 made the very 1st Superjump at 19:02 apply this boost so Samus switches instantly from the spark into walking animation (I think this happens before Samus would bonk the upper spike-platform during X-Mode spark), instead of possibly jetting past the ceiling, then walks to the right, crouches to unleash the speed (which also charges a spark) and I think she then is placed in crouch inside of the solid statue and Sniq jumps out afterwards. At 19:18, Samus faces left for the Superjump, no sideways boost applied, Samus bonks the ceiling that stops her in the end, and at 19:24 use of that is made by boosting onto the left platform from the spikes to be able to reposition Samus for unleashing the Superjump at a place where it can pierce through the heavens ;) . At 23:32, Samus initially faces to the right for the X-Mode Blue-Suit method, allowing the necessary boost to be applied at 23:55 (where Samus faces right aswell) to get through the grey door, which then conveniently allows at 24:39 for Samus to be boosted sideways onto the ground platform and not jet upwards and fall back down again. Then Samus faces left at 26:07 required for the Superjump storage at 26:25.
And another option to shift the checkbox above Samus' head up and down a bit is to switch between the more shrunk downaiming pose and the extended pose during a Superjump.
With precision it is also possible in some cases to use an enemy (with the short 5 knockback frames that it gives) to enter X-Mode without having some higher ground to land on, by turning the enemy itself into this ground if one has Ice-beam and freezes it appropriately right after getting hit by it, which is done in Maridia a few times.
The room at 19:42 with the 3 Ki-Hunters can quickly get so laggy that it turns out to be better to stay in morphball longer to roll past them, and the amount of acid damage taken to rush through the room is maximized so Samus ends up with 1 health shortly afterwards.
At 21:23, it barely was possible to hit and farm 1 of the crawlers with an early Wave-beam shot before enering the tunnel that allows the screen to move further.
Using a Superjump to go up the Brinstar-Norfair elevator isn't possible, because the last direction of an elevator ride that happened was downwards (and the game keeps track of this direction), so that instead, Samus would get stuck in an infinite loop of riding the elevator up and down repeatedly.
At 22:14 Samus does a noticably high jump (just like it was done in the previous any% TAS, except there, Samus didn't have Wave-beam so the bug had to fly up higher to be able to freeze it past the gate), which is done to avoid entering the rectanglar range in which the refill bug would be triggered to fly up facing left since Samus is coming from the left, in which case one would have to wait until the bug respawns so that it can then fly to the right. An alternative would be to trigger the bug and then kill it as soon as possible and have it produce a nothing drop so it can respawn on its own shortly after, but this would be slower.
With the stored shinespark from 19:29, Sniq triggers the door at 22:32 in such a way that he would land and get stuck inside the closing door shell and get knockback from the crab in the previous room which allows to land on the bottom part of the shell (it consists of 4 tiles and the outer 2 spawn first) fast enough to set up a Blue-Suit generating X-Mode spark at this place, and fortunately there's no platform further right at the height of the door in this room or one would bonk into it and would have to stop earlier.
To visualize the Superjump situation towards Plasma-beam, here is a hitbox-viewer screenshot (that was put together by SMFTP) of the inbounds rectangle for the room, together with a large part of its surrounding OoB area: https://smethack.f5.si/?plugin=attach&refer=%B5%BB%B0%EC%CD%F7%2FNBMB%20%25%20Glitch%20run&openfile=maridia_plasma_beam_route_004.png
(the screenshot is pulled from the description of this video, the link at 4. : https://www.youtube.com/watch?v=VmGSMxSgyuM&t=0s&list=PLuSvjvyMNAlnGgn5NiFB6iYW79M0aeXCP&index=112 ).
The 6 worms before the Plasma room are farmed twice because they constitute an excellent farming opportunity for all the health that is needed (and a shinespark can be charged during the 2nd farm), and in both farms, a decent set of drops could be produced with proper RNG values.
In Plasma room on the way down, the bottom right pirate is manipulated with beam shots to make him enter a blocking pose instead of preparing a shot which would be in the way when Samus climbs back up.
Oh, and I guess it might also be interesting to know how Samus' jump heights with Speedbooster generally depends on run speed, since even normal jumps aren't always that trivial to optimize (like it was the case for finding the fastest running jump to get back to the upper left door in Plasma room): https://imgur.com/a/VP5jP (chart from Galamoz with data source provided by PJBoy a long time ago on TASVideos).
At 23:50, the range in which the bugs are triggered to spawn is so large that it cannot be prevented, so they are killed and farmed as fast as possible. They will fly up until they reach the height of Samus' bodycenter, which is why Sniq morphs in the sand to make the right-most bug start flying sideways as soon as it barely moves past ground height, then freezes it sufficiently deep behind the door shell (but not too deep so that the collision checkbox in front of Samus that is shifted forwards relative to Samus due to high sideways movement speed to the right wouldn't contain the far left part of the frozen bug anymore within the checkbox's range), and X-Mode sparks towards it with a boost that aligns Samus in standing pose to the frozen bug instead of the wall, because solid/frozen enemies take priority in scenarios like this. And the door can be triggered with the (iirc) 8 pixels wide walljump checkbox afterwards.
The range of locally available RNG values at 23:59 (in this section, the RNG can only advance by different amount of steps within a fixed looping path of RNG values, as opposed to behaving much more unstable in rooms that have either acid or lava set to exist in the room, where an XBA instruction is applied to the RNG value every frame exactly once, while the RNG advancing routine can be called multiple times a frame, allowing for much greater variance of the RNG's pathway to get the RNG wanted, but on the other hand side makes room strategies prone to quickly desynch and not work anymore after slight changes were made) allowed to make the top cacattack spit out spike projectiles early on for a damage-boost (with Blue-Suit that doesn't actively protect Samus anymore during the unmorph animation, to get hit by it) that barely makes it past the platform in the next room.
At 24:28 and 24:32, inverse CWJs off of frozen mocktroids are applied, which is possible (without turning around or bonking them), because as opposed to walljump checking walls, Samus' subpixel value isn't normalized to its max (when moving to the right) or min (when moving leftwards) value when an enemy instead is walljump checked, so that this allows to keep a slightly larger distance to them so Samus doesn't bonk them before they die.
At 24:39, Samus in X-Mode interacts long enough with the sand tiles until the block interaction counter reaches its maximum (possible because time freezes for tiles while x-raying) to prevent the sand from instantly cancelling the Blue-Suit state (needed to spark back up after Draygon is killed) as soon as even just a shinespark is started inside the sand, because then the sand tiles will just behave like air tiles.
At 24:52, the screen is shifted maximally downwards to keep the Plasma-shot on screen long enough to fry the shrimp when it is close to its destined death spot.
At 25:40, the jump speed can be kept and carried past the ceiling because of the game not resetting it during morph animation while Samus grinds the ceiling (and the same mechanic is applied at 35:19).
At 25:45, Sniq ballbounces on the corner of the pillar so that unmorphing on the spike afterwards will align Samus' height to the spiked ground so that Samus can keep and continue her run speed, and the procedure is adapted such that this can be chained into the same trick applied once more at 25:48.
At 26:03, Sniq does a short running jump into (dash speed keeping) forwards damage-boost, lands in the higher up platform to the left, enters X-Mode, and is able to continue running for echoes due to having entered X-Mode with nonzero dash speed. Furthermore, Samus' position can be shifted bit by bit with armpumps to the left (while still being considered as running on ground, so Samus runs midair via X-Mode). One could move faster to the left by first entering walking animation in X-Mode and then releasing Left which makes Samus to walk to the left automatically, but doing so would get rid of the dash speed needed to charge a spark at the end of X-Mode that is needed for the leftwards X-Mode spark right after.
At 26:09, Sniq jumps out of the water to bounceball through the tunnel (using ''bouncekiller'' to slow down the rate at which the morphball sinks after the bounce to make it past the full tunnel instead of landing inside), instead of just rolling through the tunnel which would have been equally fast as has been told to me.
Iirc, the spark-timer of the spark that's charged at 26:44 and used at 26:50 (to shorten the elevator ride) would have ran out the next frame after the X-Mode spark started. And the Superjump into the elevator works the way it does, since only its lower part is filled up with solid tiles, and higher up it is air tiles in the shaft, as visible in this screenshot from the editor: https://cdn.discordapp.com/attachments/171753856378732544/416618166232416268/Maridia_elevator.png . Note that the Superjump's speed was chosen in such a way that Samus' bodybox would not for a single frame at least partially exceed the upper boundary of the inbounds rectangle of this room when the transition blocks at the top are touched and triggered.
At 27:12 yet more planets line up in favour of the TAS, since it was achievable to first fire 2 beam-shots up into the Kago hive above with the first shot fired from further left and the 2nd from higher up and further to the right in such a way that both hit the hive at the same frame (possible because the size of beam-shots that include Wave-beam oscillate slowly in time, so that the initial shot to the left shrinks, avoids the hive for a bit, and extends into it right when the 2nd shot connects). This causes 2 Kago bugs to jump out at the same frame and overlap each other perfectly, because Kago bugs all share the same RNG value that is applied to all Kago bugs that initiate a jump on the same frame (instead of each bug calling the routine to produce an individual RNG value to decide its own jump type). And the timing was adapted so the RNG value would cause a leftwards jump allowing to collect the drops barely (as visible in this temporary mp4 that Sniq made: https://puu.sh/zlOnw/441ddb7f26.mp4 ) without delay.
Regarding the phantoon pattern: The 1st pattern Phantoon gives loops through 16 options over and over, and luckily, no frame delay of entering his room had to be done to get the most favourable fast pattern with a lot of flames for drops. Any previous improvement would need to be at least 16 frames up to this point to save time (outside of lag reduction and possibly arriving at Phantoon with the RNG value being in a different range of its looping path), according to Sniq.
At 29:35 a crawler was killed and the appearance of echoes was delayed (by leaving out Dash inputs at few certain animation frames) to reduce more lag than the marginal amount of time that's lost by this adaption.
At 31:47, Sniq builds up enough fall speed with moonfall to clip through the 8 pixels tall rectangular slope tile's left part to be able to start running earlier from a bit further right when the room event allows progression.
At 32:32, the solid enemies around MB1's pedestal that look like (and overlap with then despawned) solid tiles start sinking out of the screen (but still keep existing throughout the boss fight and surely contribute a lot to the reason for why this fight can be so laggy), and MB1's lower part doesn't do any damage (and has a body type like Kraid and Crocomire (if one moves towards Crocomire further above at OoB) have it where their bodies will not allow Samus to move past them, but don't put Samus' walking/running animation to a halt either) but provides knockback frames to run up against it to charge a spark (similarly to how Cpadolf does it in the 100% TAS) and create a free shinespark that later can be used to force the spark crash animation upon Samus after rainbow beam ends instead of rainbow beam putting Samus into a forced crouch pose (called Stand-Up-Glitch).
The MB2 & MB3 fight is quite complicated, but to summarize it: There's a frame-wise countdown timer for rainbow beam initiation that at some point after MB2 reaches 0 hp starts at 240 and makes MB2 fire rainbow beam at 0 (so that once MB2's hp reaches 0, one wants the delay until the timer starts counting to be as close to 0 as possible), and preventing MB2 from firing any redbeam at all (as it happens in Saturn's RBO TAS done on Snes9x 1.43, https://www.youtube.com/watch?v=2tse9ytU3dA&feature=youtu.be&t=2606 ) would require a bit check of the RNG value (3rd bit from the left in binary representation) to be correct at specific frames 3 times in a row for another frame-wise countdown timer that starts at value 64 and checks if it shall do another loop or not (in which case it makes MB2 fire redbeam) based on said bit check. And this was not achieved, and even in Saturn's case, if he had fired the last beam-shot 1 frame later, MB2 would have fired redbeam and not given him the optimal result of 0 rainbow beam delay time. Meanwhile, the best previous result using bsnes core was by Cpadolf with 40 frames delay in the 100% TAS. Sniq settled with a delay of 22 frames or less (together with 2 more frames, 1 lag frame and 1 frame of waiting to change RNG), but also almost entirely up to 1 remaining lag frame avoided lag from that 1 redbeam which was 22 lag in Cpadolf's case. At MB3, Samus jumps into the head early on for lag reduction, and for the 10 multi-onion attacks, according to Dan who disassembled the corresponding routine, there's 1 frame of delay for every frame in which the RNG value is strictly smaller than 0x8000, between each multi-onion attack. At 34:49, the total health is adapted to make the escape climb room spark stop where Sniq wants it to stop.
In the escape, (after the usual RNG grind at this final section) some pirates are killed at chosen frames to make the RNG go different paths to end up with an RNG value that allows for a suitable steam pattern in the final 2 rooms.
Finally, the TAS is finished with a mandatory homage to Cpadolf's Missile shot at ship entry.
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
Going to go over explanations of some of the content of the TAS (part 1):
Ceres is the same as in the recent any% glitched TAS (outside of messing around in Ridley's room), and has the initial moonfall as improvement over the last any% TAS.
Aswell incorporated into the any% glitched TAS but missing in the previous any% TAS: The 3 moonfalls on the way down to Blue Brinstar. And further such moonfalls happen throughout the run.
Before Bomb Torizo, at 6:30, instead of continuing under normal circumstances faster armpump running until Samus is closer to the tunnel and to then mockball, the diagonal upwards slope is used to help for being able to start morphing a bit earlier to start the mockball, and thus be midair for less time. Now this allows to build up bit more running speed into the next room while keeping the same pace as the older method. But this slightly larger running speed is what allows the new approach of shooting Missiles at the door to gain a few frames avantage over the default approach which wouldn't be the case otherwise (and would just be equally fast).
The long diagonal room after Bombs, together with the green pirate room and Kago hive room afterwards (right before the elevator down to Brinstar) constitute an annoying (and now, due to moonfall applications being yet another option to move through the green pirate room, slightly altered) segment to optimize since it provides many different drop sources to get back to the maximum of 5 Missiles (after having used all of them up to open the door to Bomb Torizo) before taking the elevator (technically 4 Missiles would also suffice since in Brinstar afterwards, 3 crawlers are farmed for another 6 Missiles to have enough for the next 2 red door shells, but then 1 of those crawlers would have to be killed with multiple beam shots instead of with 1 Missile), and among those, the fastest combination had to be found. With the soft unmorph at 7:05 (to prevent fall speed from being reset) so slope tiles (which almost fill the entire floor of the diagonal room with the E-Tank) will not slow down Samus anymore, which means Samus moves so fast that one couldn't just shoot enemies far ahead of Samus and get the drops if one doesn't stop running for a slight moment (or has the run speed built up to the max until that point). So the relevant farmable bugs in this room each carry their own slight time costs forced upon the player if one decides to farm them. The same goes for green pirates since one could farm some of them aswell, and for the Kago hive bugs in the next room that jump out in different ways depending on RNG (and RNG is set back to a fixed value when the green pirate room is entered, due to a special enemy type, Beetoms, also existing in the room, from where it continues running normally again, so one doesn't have all too many options for going fast and making the Kago bugs jump in suitable ways (to the left, mostly) while also giving the wanted drop type (Missiles, instead of health or nothing). So the resulting change was to leave out the 1st drop for which one would have had to wait a bit in the diagonal E-Tank room (to only get 2 drops here) and substitute that 1st drop with a later drop from a bug that jumps out of the 1st Kago hive appropriately.
In the green pirates room inbetween, 2 soft unmorphs (to prevent fall speed reset upon landing, so to store fall speed) happen to then continue from this fall speed with quick moonfalls for which it each time was necessary to turn around twice (away from the edge and then for the moonfall setup towards it) since starting a moonfall (with already somewhat built up fall speed) by turning away from the ledge wouldn't allow Samus anymore to move sideways in spinning pose fast enough to make it past the edge and would hence land back on the same platform.
Saturn already pointed out the existence of this type of approach ( https://youtu.be/mXmcCJj742o?t=8 ) of farming the 3 crawlers (at 7:52 in the TAS) when the low% TAS (which doesn't have moonfall techniques incorporated into it yet) was submitted ( http://tasvideos.org/forum/viewtopic.php?p=444095&highlight=#444095 ), and the method was further optimized here.
Then at 8:32, in order to be at all able to gain enough moonfall speed, one needs to do the initial fall speed build up at the very top platform (any lower platforms wouldn't allow for it anymore) as has been calculated given the fixed rate of fall speed increase per frame and the minimal required fall speed at the end for the clip. Furthermore, the manner in which the turnaround wiggling at the top happens has been adapted to fit and not go beyond the needs (at the beginning, one doesn't need to initiate the next turnaround as soon as later on, since it still would take Samus longer until she would bonk the ground), so the number of turnarounds was minimized, and their timing adapted so the last turnaround ends with the speed wanted that allows to soft unmorph (which requires pixel perfect y position) during unmorph on the lower platform. On earlier attempts with slightly different inputs, it wasn't possible to store the moonfall speed yet another time on the floor past the floor that one clips through, because there'd need to be enough time to morph and unmorph again, and the speed value would need to line up yet another time, but with more experimentation, it was achieved (and on top of it, a Super Missile could be fired through the floor early on because Samus' movement speed adds to its initial speed, to kill and farm the crawler beneath). Meanwhile, off-screen moving enemies are killed to farm a bit and reduce lag.
At 9:42, morph unmorph is done and crawler is killed as soon as possible to reduce lag from the powerbomb. More enemies are farmed in the next room. A good rule of thumb is: If a drop costs ~5 frames to collect, it is worth getting it (outside of when E-Tanks make the health jump to max soon afterwards anyways, and near end-game where the amount of ammo+hp management to be planned ahead is significantly reduced already).
On one side, the speed of a powerbomb's hitbox size growth increases over time and if a powerbomb is layed from further away it can be layed earlier, on the other side if one lays a powerbomb 1 or more frames later than at the furthest possible distance, (then one first of all loses that 1 or more frames and) one can get closer by the amount of Samus' current speed and possibly doesn't need to wait for the last step of the pb hitbox's size increase when it breaks the 1st bomb wall tiles that one would pass with meanwhile built up movement speed (which would be what one would hope for at this point to turn out to cut more than the initially delayed frames). This means the question is by how much can Samus' movement speed keep up with (or even surpass) the powerbomb's acceleration around the barrier that constitutes Samus' 1st obstacle that she has to wait for (and in some cases it also depends on how much speed can be built up with which one passes through said 1st waiting time obstacle in the remaining time as soon as a pb was layed, and this time gets smaller the closer/later one lays the pb). So a balance was found between those 2 opposing principles at 8:50, 10:43 (and in this case, a beetom is carried into the explosion early on to not cause lag, but more importantly to lose another 10 health during waiting time for hp adaption so the R-Tank gets only barely filled for later), 11:31, 12:06, 17:06, 20:07, and 21:04.
At 10:01, the 2nd moonfall in the 3-moonfalls-chain is stalled (by turning away from the edge of a platform, which works because only passive collision occurs during those, so speed isn't actively reset during turnaround animations) for a moment to adapt Samus' height in order to make her line up with the ground to allow for the soft unmorph that enables the 3rd moonfall.
At 11:20, a forwards damage-boost is done (by pressing backwards the same frame as getting hit) which keeps Samus' dash/running speed to make her fly forwards instead of being knocked back, which in this case nicely lines up so one lands on top.
At 15:55 there's some free time to farm enemies, because the only enemy that can be used for the setup involving X-Ray and an R-Tank triggering from getting damaged through a door after the transition is that red ball (Multiviola) which moves off-screen, has a fixed movement trajectory (it bounces off of surfaces at fixed angles, and only 1 door shell that it bounces off could be opened beforehand which would make it slower), and takes a while to get to the top left door. By charging up the beam for a quick pseudo-screwattack spinjump, Samus' i-frames are cancelled to be able to get hit by the Multiviola shortly afterwards a 2nd time. When a new room is entered with X-Ray icon active so one can use X-Ray on the 1st possible frame in the room while R-Tanks trigger, and releases the Dash button (used to keep x-raying) after the reserve energy refill finished, then some part of the routines that handle the behavior of X-Ray are cut off, don't get to ''clean up the x-raying state'', which allows for Samus being put into a forced standing pose instantly and anywhere in any previous pose as soon as Reserves trigger yet another time while this game state (called Reserve-Mode, because R-Tanks on top of X-Ray are involved, and X-Mode as name for a purely X-Ray related glitch already exists, but I guess one could also call it RX-Mode, or ''greyout glitch'' which is the original name that Kejardon gave it) with darkened screen is active, but this feature or property is lost as soon as a new room is entered (which happens here). However (as for a long time unknown special case of R-Mode that I found), if one releases Dash not just at any arbitrary frame after the R-Tank refill finished, but does so within an at most (I think) 4 frames range when the refill ends, further routines are cut off, allowing for a variety of more funky stuff to be possible due to the game then keeping to handle many game elements the way it would handle them while Samus is x-raying (which is the reason for its name God-/Grey-Mode). More details describing this glitch's potential and consequences can be found in my description and comment of this video: https://www.youtube.com/watch?v=uHxK6J-fQ1M&index=4&list=PL5If8zSOO37bcgBr6XeWNtZMrxHn6fARx&t=0s .
When G-Mode (which isn't lost/cancelled after room transitions, but by using X-Ray 1 more time) initially was found, we thought one needed to get hit after the setup (which ended with Samus immobile standing in the room where one could turn around but neither shoot nor move or jump around) was done. But eventually Sniq figured that remaining knockback frames from enemy knockback involved in the setup itself allowed to get out of this immobile state, provided one would have a small enough amount (4 or less iirc) of reserve energy (otherwise the knockback frames run out during the energy refill and no knockback is initiated afterwards anymore), which allowed for this sped up method using the Multiviola.
For this purpose, the R-Tank was barely filled up with 2 hp with an initial fireflea drop at 10:49, right before Samus would start to take a lot of damage throughout the next segment, so this slight R-Tank refill happens at the last reasonable point in time possible, considering one also wants to lose health on the way right until the setup starts for which the R-Tank needs to be triggered for which the usual health needs to be emptied at that point.
Now there exists some counter for block interactions or ''the current number of blocks that are busy doing things or reacting to Samus or her attacks'' and it has a limit, a maximum that it cannot surpass. Whenever this maximum is reached (for example if there would be a whole lot of ~ 20 to 30 respawable powerbomb blocks that one wants to destroy, then not all will break, because some remaining blocks will not react anymore, will act like solid tiles until the counter decreases away from its limit again which happens when the destroyed pb block respawn after a while), and in G-Mode time is frozen for tiles so if one interacts with some block (among a certain class of blocks, it doesn't work with all types) by interacting with it multiple times, then the interactions that the game keeps track of (even though they are the same, initiated by the same block just at different frames but just don't end) keep adding up. In the TAS, this is done with a special air tile (called Scroll Continuation PLM, it exists as trigger upon Samus contact to change the behavior of map squares from not letting the camera enter certain areas to letting the camera move into them, mostly used whenever the developers wanted to make hidden passages) as can be seen in this screenshot of what the room looks like in the game's editor: https://cdn.discordapp.com/attachments/171753856378732544/416397690860208139/LNF_Exit_room.png
The ''S'' air tiles are those interactive tiles used to max out the block interaction counter, and once this is done, the bomb and crumble blocks further in the room will not anymore interact with Samus, except that their ''default'' interaction with Samus is not to behave like a solid block but to behave like an air tile (maybe because they are blocks that can be broken, i.e. can turn into air tiles), fortunately. After those are passed (since the door on the other end with its tiles would otherwise never open to allow access to the next room as long as G-Mode is kept), the state is cancelled by x-raying (turning all blocks back to normal).
Note that (as visible in that mp4 that arandomgameTASer posted), X-Ray is used at a rather strange moment, but this didn't cost any time, and was done this way to let the screen line up to a multiple of the minimal distance to the right door at which it will not permanently mess up room graphics afterwards.
In the next room at 16:22, one has to wait a bit anyways for the acid to move away (with its fixed starting height and movement not based on any global timer, but room internal), and due to the nature of the sequence break to get here, Samus will barely have any health so one couldn't just tank the damage. So the short free time is used for getting rid of 2 of the 3 off-screen moving, over time quite lag-inducing Ki-Hunters, and for their drops. The mockball into the acid is slightly rushed such that 1 hp is lost, which will turn out to be the maximum the TAS can deal with at this point without slowdowns. And as has been mentioned before, there's this special inverse continuous wall jump (ICWJ) where Samus rolls up into a ball to immediately shrink in size to go under the coloumn instead of bonking it, saving Samus from an acid dip.
At 16:45, the TAS charges a spark, and the beam aswell (for i-frame reset shortly after the boulder damage-boost) for what's called Slope-X-Mode, and then sparks during it. Let me explain this: Spikes give 10 knockback frames, enemy contact and projectiles 5 (except at projectiles, Samus is stunned for 1 frame so it is effectively only 4 there). During every knockback frame, the game tries to initiate a knockback pose and corresponding movement for Samus (so getting hit while turning around, morphing or unmorphing, which are animations that have priority over the knockback pose induction, will first finish such animation and then initiate knockback pose unless knockback frames already fully ran out beforehand), but as soon as knockback is initiated, one is enabled to turn the knockback animation into a damage-boost animation at any knockback frame. If one does so, the knockback counter keeps running down to 0, doesn't try to initiate a knockback pose anymore. When the counter reaches 0, the game in that 1 frame runs a routine that sets Samus state into a falling state (which can lead to race condition problems in the code when other Samus state changing events are triggered on the same frame). Spikes would give the player a lot of time from getting hit to landing on ground to be able to start X-Ray the same frame as this timer runs out (which causes X-Mode, a situation in which Samus is considered x-raying except that one can change Samus' pose and move around in a very restriced manner as long as Dash for x-raying is held), but with an enemy like the lower boulder that's used, one needs to change the knockback into a damage-boost on the 1st frame, and needs some high grounds right behind Samus (achieved with a diag. slope) to land fast enough in time to start x-ray when the 5th knockback frame occurs to enter X-Mode. When X-Ray is released, the game puts Samus back into falling pose. During any shinespark, Samus has Blue-Suit, has the Blue-Suit state (but is heavily restricted in what one can do, normally), and this state is cancelled as soon as the shinespark crash animation starts, but what if it's left out, doesn't ever happen, maybe by releasing X-Ray if one sparked during X-Mode which instead of spark crash animation puts Samus into falling pose? Exactly, it keeps the state.
It is noteworthy though that this being possible at all isn't straight forward to find out since under any other circumstances, the usage of X-Ray instantly kills, cancels the shinespark charge, puts its countdown timer to 0, but this didn't prevent me back then from testing it anyways if it would still do this in X-Mode's case, and by cosmic chance, for whatever reason it doesn't cancel it there. A long time afterwards, unnoticed by me and Sniq, SUPERMETROIDFTP messed around with this technique aswell and observed an outrageous behavior which we call Superjump 1st source material of it here ( https://www.youtube.com/watch?v=clSaoHFJE2g&t=0s&index=93&list=PLuSvjvyMNAlnGgn5NiFB6iYW79M0aeXCP ). Soon after, SMFTP discovered its main application (from a sequence break viewpoint), the acquisition of Plasma beam via Superjump ( https://www.youtube.com/watch?v=9JJ0eLwRWSI&t=0s&index=92&list=PLuSvjvyMNAlnGgn5NiFB6iYW79M0aeXCP ). While I'm at it, might aswell go a bit into Superjump details at this point already: Shinesparks during X-Mode behave like normal shinesparks, move just like them, but as soon as the Dash button is released to exit it, the game applies a speed value that it normally doesn't ever apply during sparks. Namely: There's a vertical speed address which increments by about 7 (together with some subpixel speed value) every frame during non-horizontal, so diagonal or vertical sparks for as long as the spark goes until spark crash animation where it is reset. The game uses this address for normal Samus pose speeds, then combine this with exiting X-Mode putting Samus into falling pose, and there you have your Superjump (which can only go straight upwards with that speed, it doesn't work towards any other direction). I've no idea though why they made shinesparks increment the vertical speed address value by 7 (pixels per frame movement) every sparking frame. Tiles have 16 by 16 pixels size, so you'd need to just spark for 3 frames to exceed that amount, that size. But since this doesn't apply for horizontal X-Mode-Sparks, the game just drops Samus at the end of these.
With the obtained Blue-Suit (and 1 health remaining after 1 hp acid damage and 2 boulder hits, and not a previous damage-boosts earlier since horizontal movement with Blue-Suit is rather slow, so one wants to create it late) a few close by enemies on the way are killed/farmed for desperately needed health (among them 2 Ki-Hunters to again reduce accumulating lag), and both morph tunnels can be taken without having to wait for any bombs or powerbombs to get rid of them.
At 17:16, the final wanted health drop appears to survive the upcoming, damaging spike-platform clips (with usual damage values being multiples of 10, bringing Samus back to the previous 1 health remaining).
At 17:42, a neat bouncing trick was applicable: Speed echoes protect Samus from enemy contact and kills them instead, but this protection isn't active during morph (1st bounce) or unmorph (2nd bounce, with adapted trajectory to get here from the 1st bounce) animation, while the dash speed is kept throughout.
About the Ridley fight: The 4 Wave-beam particles can easily create a lot of lag, especially when Ridley spits fireballs meanwhile, so this is avoided to the best of Sniq's ability, and further lag is reduced by morphing to reduce the amount of sprites used for drawing Samus. Other than that, attention was payed to the cooldown times that only apply to firing Missiles/Super Missiles afterwards, but doesn't apply to charging the beam which takes 60 frames to be charged and another 60 for the X-Factor attack (cooldown time before next projectile can be fired afterwards: 10 for Missile, 20 for Super Missile). Because of this, one wants to make the best use out of the cooldown times, done by charging the beam each time after firing a Super Missile, and by finishing Ridley off with an attack that would cause a large cooldown waiting time for any consecutive attack.
One also wants to keep Ridley to stay close to the ground, by either
(i) repeatedly triggering his pogo animation (by breaking out of spin when Samus' body-center height being high enough relative to Ridley's center, while Ridley is moving up from a pogo stomp), or
(ii) having the RNG at the end of a pogo make Ridley decide to start another, or
(iii) jumping higher up to lengthen a pogo phase, where the former methods every time it's done has a chance to make him spit fireballs, but this would still be better than having him fly up where an X-Factor couldn't be centered around him (unless one climbs up the wall, but this would delay the charging process proportionally to the climbing time until breaking out of spin) so that all particles uniformly arrive at Ridley such that the last particle is gone as soon as possible to be able to continue with other attacks since the game doesn't allow for any other projectiles being fired as long as at least 1 such X-Factor particle is remaining.
Last but not least, one wants the whole process to line up at the end such that the final blow hits Ridley during the upwards movement during pogo, because (only) close to the peak after a stomp when Ridley's vertical speed is low enough, a death-grab can be triggered this way instantly.
At 19:01, Sniq times and positions the damage-boost (off of spikes which give the longer lasting 10 knockback frames) such that Samus' feet afterwards line up with the top of the spike-platform at the right time to initiate X-Mode and superjump out of it.
19:05 is my favourite, by most viewers surely unnoticed detail application of an obscure mechanic that saved a whopping 1 frame, but it was so worth it lol. So, after the tunnel, one wants to shoot open the door at the top as soon as possible to move past it, and charged beam projectiles are larger than uncharged ones. On the other hand side, to morph with charged beam (no time or reason to charge it after the tunnel), one normally would need to either switch from walking/running to crouch (via crouching animation) and then morph (morphing animation) which is slow, or by turning around midair in unspinned pose with cannon at low angle to enter morph animation right when the turnaround animation is finished (because it counts as pressing down twice; once with down or angle down held for the turnaround, and another time at frame perfect down input afterwards), but there's no time to turn towards the opposite direction either, so what do? As long as the Shot button is held, the game prevents Samus in unspinned midair pose from morphing, because in order to do so, one would need to first switch from forwards facing to downfacing pose, and from there one would need to release and press Down yet another time, but once Down is released, holding Shot makes Samus instantly face forwards again. However, our buddy X-Ray, if one first toggles its icon on, then charges the beam up, allows to keep the charged beam by holding the Dash button instead of Shot button, and this button doesn't force Samus' pose back into forwards facing one, so a charged beam can be carried through the tunnel and fired to open the shell on the other side earlier xD
Will also go over the ruleset and why it fits and makes sense to do it exactly like that, but that post isn't finished yet.
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
Sniq and me have been talking about this aspect longer ago during Sniq's planning and making of the new any% TAS, too, and we both came to the same conclusion that it should, due to similarity (and because it is up there on the entertainment and excitement level where RBO is, to substitute it). On top of this, the RBO TAS (as non-standard branch, which puts its situation into a different one than how the situation is for the 100% branch) by now stands back a few steps in optimization compared to the newer TASes that make use of this fountain of exploits that grew over time.
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
The hack Rogue Dawn (by Grimlock) is a very polished game with amazing graphics even though it is a Metroid 1 hack, and it also introduces a walljump ability, springball aswell as a map, saving, fixed RNG, custom music, custom graphics, healing tiles, new bosses and easter egg rooms into the game.
If anyone is interested in TASing this hack (yes it is a hack, not a so-called official game, but it is very polished and should be good enough for TASVideos' standards and wishes), then a finalized version of the hack can easily be found by googling ''Metroid Rogue Dawn''. I think it could be a fun TAS project.
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
Turns from Saturn's video:
1. e2-e4 e7-e5
2. g1-f3 f7-f5
3. f1-c4 d7-d6
4. d2-d4 f5xe4
5. f3xe5 d6xe5
6. d1-h5+ e8-d7
7. h5-f5+ d7-c6
8. f5xe5 g8-f6
9. e5-b5+ c6-d6
10. c1-f4+ d6-e7
11. b5-e5+ c8-e6
12. e5xe6+
Would those specific 12 turns to checkmate black work on an accurate SNES emulator aswell in this way, or is this quick checkmate possibly only obtainable due to emulation bugs? I'm not sure what emulator Warp and what emulator Saturn used.
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
I'm not familiar with the game, but under the assumption that the AI's calculation time depends on the number of remaining pieces on the board such that one would expect shorter calculation times for it to get to a resulting turn, couldn't it possibly be a viable approach to (among the set of turns that are within its ''book'') keep doing turns that quickly reduce the number of pieces on the board with trades (to get rid of a bunch of pawns, for example), and to then break out of the AI's known set of turns after a whole lot of pieces are off the board (in the hope that the calculation times now would be significantly smaller) and to then try to win the game?
However, considering that pawns don't have such a big variety of turns that can be done with them (and hence they might not add or carry as much calculation time with them), reducing their number might not be worth the turns needed to get them off the board. So here is a slightly altered suggestion:
There's reason to assume that the extra-ordinairily long calculation time rather depends on all the turns that could happen in the near future, so one maybe even would want to use some kind of ''Low%'' (in the sense of trying to win with as few as possible remaining pieces, but to first quickly get to this small number of pieces) approach where one would early on sacrifice mainly many of those pieces (or take them away from the AI) that have the largest number of moves they can do (either the theoretical number of different moves that in a given situation might be diminished because of some moves not being possible anymore in some constellation, or the actually remaining possible moves, but I'd assume the AI might need to determine first which moves among the theoretical ones are still possible and which aren't, so theoretical moves might still account towards calculation time to some degree).
On the other hand side (as an aspect that opposes this strategy), the less turns that remain available (for the player and the AI), the harder it probably would get to still trick the AI (especially if one kept one's own turns for a long time within the set of turns that are known to the AI, because its resulting turns are expected to be good), since the AI then should have it easier to find a good turn quicker. So one might want to reduce pieces near the end in a way with some sort of trade such that the resulting constellation is unwinnable for the AI (so that one is certain that one can enforce a win, even if it will take many more turns than usual, on a board with far less remaining pieces) so that the AI can only delay its loss with turns that are in the way of the player's winning strategy, but if there aren't many pieces on the board anymore, a high number of remaining turns to win hopefully might not hurt as much anymore, provided that the AI proceeds quickly with its last turns.
Edit: Another aspect of this strategy could be to do (preferably still acceptable) turns such that the number of turns that are now possible in the new constellation doesn't grow all so much.
2nd edit: Another approach could be to take a given solution process and add a tiny (and for the sequence of turns that leads to the checkmate irrelevant) turn at some intermediate step in the hope that the calculation times for the new constellation reduces (even though everything is the same, except some pawn is 1 step further or something like that). This could maybe be done by either doing a trade at a ''secondary battlefield'' or section that is independent (if possible) of the area on the board that is used for the checkmate, or to not reduce/trade pieces, but to add some irrelevant turn with some piece that will not change the winning process.
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
Ah yeah sorry, I probably should have been more clear about it, but what I meant by ''reaching the credits such that the frame that carries the last input(s) is minimized'' was that the final time for the TAS in this case would be determined as this last frame that has inputs, whereas ''reaching the credits in as few frames as possible'' would mean that the final TAS time would be determined as the last frame before (or maybe the 1st frame part of) the credits start, which generally can be different (but could also depend on how one defines the beginning of the credits of a game).
For example, if some inputs trigger the final attack on the final boss in this case (and if there is no further inputs past this point), so that the game automatically executes the remaining actions that lead into the credits, then the ''frame of last input'' timing would result in the frame in which the inputs trigger this final attack, but the ''fastest credits'' timing would result in a final time possibly strictly after that (and provided the credits would always keep going in a fixed speed without any variance caused by lag frames or anything anymore, one could choose any fixed frame part of the credits as reference for that kind of timing).
Examples where those timings are not the same (and hence would not necessarily result in the same strategies used to optimize a TAS) would be:
#1938: Cpadolf's SNES Gradius 3 in 25:31.40
In the submission text ( http://tasvideos.org/1938S.html ), Cpadolf mentions:
#5633: nymx's SNES F-Zero "Queen League" in 11:27.87
And in here, reaching the finishing line at the very end would be done in 2 different ways. Either by trying to get there as soon as possible, or to get as fast as possible into a situation in which ''the game beats itself automatically after some (earlier but) final frame with inputs occured'', which could look like the clip from the following quote by Masterjun (from the corresponding discussion thread http://tasvideos.org/forum/viewtopic.php?t=19323 ):
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
What ais523 possibly means is that it'd be good if the set of all possible item-combinations (consisting of 16 items each) could be listed (or maybe the item-combination that was used is unique?), and maybe some argumentation on why the task could not be done with fewer items, based on the current level of understanding of the game.
Furthermore, it could help to read the Submission Instructions ( http://tasvideos.org/SubmissionInstructions.html ) for possible updates of the submission text, aswell as to go through the Movie Class Guidelines ( http://tasvideos.org/MovieClassGuidelines.html ) in order to add the proper goal tags that (shall) apply to the movie, aswell as to indicate with respect to what method of measuring time the movie was optimized (examples: minimizing the value of the final In-Game time; reaching the credits in as few frames as possible; reaching the credits such that the frame that carries the last input(s) is minimized).
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
I think I'll help making an updated TAS on lsnes for this then.
Some memory addresses of the form 7E...., i.e. starting with 7E, for enemies (1 byte, unsigned):
0426 - 042F contains Plok data 04EE - 04F7 contains 16th enemy data 05B6 - 05BF contains 36th enemy data
0430 - 0439 contains right arm data 04F8 - 0501 contains 17th enemy data 05C0 - 05C9 contains 37th enemy data
043A - 0443 contains left arm data 0502 - 050B contains 18th enemy data 05CA - 05D3 contains 38th enemy data
0444 - 044D contains right leg data 050C - 0515 contains 19th enemy data 05D4 - 05DD contains 39th enemy data
044E - 0457 contains left leg data 0516 - 051F contains 20th enemy data 05DE - 05E7 contains 40th enemy data
0458 - 0461 contains 1st enemy data 0520 - 0529 contains 21th enemy data 05E8 - 05F1 contains 41th enemy data
0462 - 046B contains 2nd enemy data 052A - 0533 contains 22th enemy data 05F2 - 05FB contains 42th enemy data
046C - 0475 contains 3rd enemy data 0534 - 053D contains 23th enemy data 05FC - 0605 contains 43th enemy data
0476 - 047F contains 4th enemy data 053E - 0547 contains 24th enemy data 0606 - 060F contains 44th enemy data
0480 - 0489 contains 5th enemy data 0548 - 0551 contains 25th enemy data 0610 - 0619 contains 45th enemy data
048A - 0493 contains 6th enemy data 0552 - 055B contains 26th enemy data 061A - 0623 contains 46th enemy data
0494 - 049D contains 7th enemy data 055C - 0565 contains 27th enemy data 0624 - 062D contains 47th enemy data
049E - 04A7 contains 8th enemy data 0566 - 056F contains 28th enemy data 062E - 0637 contains 48th enemy data
04A8 - 04B1 contains 9th enemy data 0570 - 0579 contains 29th enemy data 0638 - 0641 contains 49th enemy data
04B2 - 04BB contains 10th enemy data 057A - 0583 contains 30th enemy data 0642 - 064B contains 50th enemy data
04BC - 04C5 contains 11th enemy data 0584 - 058D contains 31th enemy data 064C - 0655 contains 51th enemy data
04C6 - 04CF contains 12th enemy data 058E - 0597 contains 32th enemy data 0656 - 065F contains 52th enemy data
04D0 - 04D9 contains 13th enemy data 0598 - 05A1 contains 33th enemy data 0660 - 0669 contains 53th enemy data
04DA - 04E3 contains 14th enemy data 05A2 - 05AB contains 34th enemy data
04E4 - 04ED contains 15th enemy data 05AC - 05B5 contains 35th enemy data
If Z is the address with which a given memory address block for some enemy starts, then Z is the x position (counting from the left rightwards) in pixels, and the address (Z+0x1) checks if the enemy is existing/active on the screen, and the address (Z+0x2) keeps track of its y position (counting from the top downwards) in pixels. And in case of a limb (arm or leg) of Plok, (Z+0x8) functions as countdown timer during the time period when a limb is thrown, and when the countdown reaches 0, the extension of the limb moving away from Plok stops.
The pixel positions are absolute and don't depend on the position of the screen, but the values loop whenever one exceeds a 256 by 256 pixels large square in any direction (and there probably is some further addresses somewhere that keep track of the copy-square in which enemies are located).
Example: For the memory address block 0598 - 05A1 for the 33th enemy (slot), 0598 is its x position, 0599 checks if the enemy is active, and 059A is its y position.
And here is some corresponding lsnes RAM Watches:
A watch that covers the x and y positions of the first 20 enemies:
https://cdn.discordapp.com/attachments/218520158963105792/368946646802890754/Plok_ordered_enemy_pos_RAM_Watch_1.lwch
A watch that covers the x and y positions of the enemy slots from 21 to 40:
https://cdn.discordapp.com/attachments/218520158963105792/368946657318141952/Plok_ordered_enemy_pos_RAM_Watch_2.lwch
A watch that covers the x and y positions of the enemy slots from 41 to 53:
https://cdn.discordapp.com/attachments/218520158963105792/368946668101566465/Plok_ordered_enemy_pos_RAM_Watch_3.lwch
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
Alright, I've been working on this for a few weeks, and have a very rough Test-TAS now that beats the published TAS by 2752 frames (ending with the last input at 60213 compared to the last input of the published TAS being 62965), which is close to 46 seconds (real-time). Since this is some kind of auto-scroller game (like Gradius), improvements mainly come from lag reduction and boss fight optimization. In this case, my Test-TAS is on lsnes, and the old published TAS on Snes9x 1.43 (which normally lags less).
For the first stage's initial section before the 1st boss, 10 lag frames are still remaining which seem to be correlated to certain events in the stage, and I couldn't get rid of any single of these lag frames when trying for each of them separately to avoid it (even if I caused a bunch of lag beforehand by clearing enemies, projectiles, sprite animations so that at the frame in question no lag would occur anymore, it didn't work in my tests starting a few seconds before a given lag frame). The boss of the 1st stage was somewhat optimized with use of the input editor. All remaining stages (including bosses) were merely optimized with slowdown and savestates (outside of RAM Watch for the hp of the 2nd and 3rd last bosses) to give me an idea on how the stages would go. I chose to do so because I assume that there wouldn't be any major disadvantage by doing so, assuming there is little to no RNG in the game, and because testing small sections with slowdown and savestates seems to be an effective way of quickly improving portions of stages, compared to going through many different maneuvers solely with frame-advance or input editor (which would be more effective when it comes to polishing a given maneuver, rather than writing all or most of them in the editor).
In general, I followed the published TAS regarding the weapon upgrades that it takes and skips, and didn't try variations there. The 3rd and 2nd last bosses are killed in a much faster manner than dave_dfwm's TAS does them, mainly by timing all Spread-Laser shots according to the rather precise rhythm in which the bosses actually can take damage (as opposed to just eating the projectiles without any effect) to make full use of the Spread-Laser (damage-wise).
In this test, I didn't focus on trying to be entertaining at all. This would come as secondary quest after the frame optimization is done, and would then be executed within the limitations given by the resulting frame-count (going by ''last frame with inputs'') which shall not be exceeded.
Here is my Test-TAS: https://cdn.discordapp.com/attachments/218520158963105792/362064757345484820/Super_R-Type_WIP_Test-TAS.lsmv
Edit: A slightly improved version with better boss fights, saving about 1 more second:
https://cdn.discordapp.com/attachments/218520158963105792/368530584613683200/Super_R-Type_WIP_Test-TAS.lsmv
And here a video of it:
Link to video
Some memory addresses of the form 7E...., i.e. starting with 7E, for enemies (1 byte, unsigned):
0199 - 01D8 contains 1st enemy data 0899 - 08D8 contains 29th enemy data 0F99 - 0FD8 contains 57th enemy data
01D9 - 0218 contains 2nd enemy data 08D9 - 0918 contains 30th enemy data 0FD9 - 1018 contains 58th enemy data
0219 - 0258 contains 3rd enemy data 0919 - 0958 contains 31th enemy data 1019 - 1058 contains 59th enemy data
0259 - 0298 contains 4th enemy data 0959 - 0998 contains 32th enemy data 1059 - 1098 contains 60th enemy data
0299 - 02D8 contains 5th enemy data 0999 - 09D8 contains 33th enemy data 1099 - 10D8 contains 61th enemy data
02D9 - 0318 contains 6th enemy data 09D9 - 0A18 contains 34th enemy data 10D9 - 1118 contains 62th enemy data
0319 - 0358 contains 7th enemy data 0A19 - 0A58 contains 35th enemy data 1119 - 1158 contains 63th enemy data
0359 - 0398 contains 8th enemy data 0A59 - 0A98 contains 36th enemy data 1159 - 1198 contains 64th enemy data
0399 - 03D8 contains 9th enemy data 0A99 - 0AD8 contains 37th enemy data 1199 - 11D8 contains 65th enemy data
03D9 - 0418 contains 10th enemy data 0AD9 - 0B18 contains 38th enemy data 11D9 - 1218 contains 66th enemy data
0419 - 0458 contains 11th enemy data 0B19 - 0B58 contains 39th enemy data 1219 - 1258 contains 67th enemy data
0459 - 0498 contains 12th enemy data 0B59 - 0B98 contains 40th enemy data 1259 - 1298 contains 68th enemy data
0499 - 04D8 contains 13th enemy data 0B99 - 0BD8 contains 41th enemy data 1299 - 12D8 contains 69th enemy data
04D9 - 0518 contains 14th enemy data 0BD9 - 0C18 contains 42th enemy data 12D9 - 1318 contains 70th enemy data
0519 - 0558 contains 15th enemy data 0C19 - 0C58 contains 43th enemy data 1319 - 1358 contains 71th enemy data
0559 - 0598 contains 16th enemy data 0C59 - 0C98 contains 44th enemy data 1359 - 1398 contains 72th enemy data
0599 - 05D8 contains 17th enemy data 0C99 - 0CD8 contains 45th enemy data 1399 - 13D8 contains 73th enemy data
05D9 - 0618 contains 18th enemy data 0CD9 - 0D18 contains 46th enemy data 13D9 - 1418 contains 74th enemy data
0619 - 0658 contains 19th enemy data 0D19 - 0D58 contains 47th enemy data 1419 - 1458 contains 75th enemy data
0659 - 0698 contains 20th enemy data 0D59 - 0D98 contains 48th enemy data 1459 - 1498 contains 76th enemy data
0699 - 06D8 contains 21th enemy data 0D99 - 0DD8 contains 49th enemy data 1499 - 14D8 contains 77th enemy data
06D9 - 0718 contains 22th enemy data 0DD9 - 0E18 contains 50th enemy data 14D9 - 1518 contains 78th enemy data
0719 - 0758 contains 23th enemy data 0E19 - 0E58 contains 51th enemy data 1519 - 1558 contains 79th enemy data
0759 - 0798 contains 24th enemy data 0E59 - 0E98 contains 52th enemy data 1559 - 1598 contains 80th enemy data
0799 - 07D8 contains 25th enemy data 0E99 - 0ED8 contains 53th enemy data 1599 - 15D8 contains 81th enemy data
07D9 - 0818 contains 26th enemy data 0ED9 - 0F18 contains 54th enemy data 15D9 - 1618 contains 82th enemy data
0819 - 0858 contains 27th enemy data 0F19 - 0F58 contains 55th enemy data
0859 - 0898 contains 28th enemy data 0F59 - 0F98 contains 56th enemy data
The game can assign different memory addresses to keep track of the parameters of a given enemy, and does so in a somewhat chaotic way that even depends on when and how one charges the ship's beam. This is why I list all the possible (at least these should be all) memory address candidates for tracking certain enemy parameters.
Given a variable ''?'' that stands for any hexadecimal value from 0 to F (but so that the address is in the range from 0199 to 1618), the following addresses keep track of the following enemy properties:
0?19/0?59/0?99/0?D9 checks if the enemy address is active (tracking some enemy) or not (in this case it is usually equal to 255).
0?1A/0?5A/0?9A/0?DA is the x position* of an enemy in pixels (counting from the left rightwards).
0?1C/0?5C/0?9C/0?DC is the y position* of an enemy in pixels (counting from the top downwards).
0?22/0?62/0?A2/0?E2 is the number of healthpoints an enemy has.
1?19/1?59/1?99/1?D9 checks if the enemy address is active (tracking some enemy) or not (in this case it is usually equal to 255).
1?1A/1?5A/1?9A/1?DA is the x position* of an enemy in pixels (counting from the left rightwards).
1?1C/1?5C/1?9C/1?DC is the y position* of an enemy in pixels (counting from the top downwards).
1?22/1?62/1?A2/1?E2 is the number of healthpoints an enemy has.
*: The pixel positions are not absolute, independent of the screen's position or movement, but instead are screen-position dependent, with the top left corner of the screen being the origin of the coordinate system.
Example: In the range 0BD9 - 0C18 for the 42th enemy, 0BD9 checks if the address is actively keeping track of some enemy, 1BDA is its x position, 1BDC is its y position, and 1BE2 is its healthpoints.
And here is some corresponding lsnes RAM Watches:
A watch that covers the addresses for the hp of the first 41 enemies:
https://cdn.discordapp.com/attachments/218520158963105792/368944854111223820/Super_R-Type_ordered_enemy_hp_RAM_Watch_1.lwch
A watch that covers the addresses for the hp of the enemy slots from 42 to 82:
https://cdn.discordapp.com/attachments/218520158963105792/368944864961757198/Super_R-Type_ordered_enemy_hp_RAM_Watch_2.lwch
A watch that covers the x and y positions of the enemy slots from 1 to 20:
https://cdn.discordapp.com/attachments/218520158963105792/368944875887919114/Super_R-Type_ordered_enemy_pos_RAM_Watch_1.lwch
A watch that covers the x and y positions of the enemy slots from 21 to 40:
https://cdn.discordapp.com/attachments/218520158963105792/368944884910129182/Super_R-Type_ordered_enemy_pos_RAM_Watch_2.lwch
A watch that covers the x and y positions of the enemy slots from 41 to 60:
https://cdn.discordapp.com/attachments/218520158963105792/368944894112301067/Super_R-Type_ordered_enemy_pos_RAM_Watch_3.lwch
A watch that covers the x and y positions of the enemy slots from 61 to 82:
https://cdn.discordapp.com/attachments/218520158963105792/368944904640135168/Super_R-Type_ordered_enemy_pos_RAM_Watch_4.lwch
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
Here is some memory addresses (in ''unsigned, 1 byte'' mode) that I identified with RAM search:
P1 generally refers to the left side (i.e. Toad's side), while P2 refers to the right side (either 2nd player or COM's side).
7E0630 tells the current RNG value.
7E0A51 tells the colour of the currently (by the fairy) latest generated bomb on P1's side.
7E0A53 tells the colour of the currently (by the fairy) latest generated bomb on P2's side.
For the currently latest generated bomb on P1's and P2's side (even during raven phase), the memory address values correspond to bomb colours in the following way:
16 = green bomb
17 = red bomb
18 = white bomb
19 = pink bomb
20 = blue bomb
21 = yellow bomb
22 = black bomb
23 = turquois bomb
7E0A52 tells the x position of the last bomb that P1's fairy generated (works during raven phase aswell), with values from 1 to 6 (for the 6 tile range).
7E0A54 tells the x position of the last bomb that P2's fairy generated (works during raven phase aswell), with values from 9 to 14 (skipping over the central coloumn's range from 7 to 8).
7E0A55 tells the colour of the currently (by the raven) latest generated monster on P1's side.
7E0A57 tells the colour of the currently (by the raven) latest generated monster on P2's side.
For the currently latest generated monster on P1's and P2's side, the memory address values correspond to monster colours in the following way:
144 = green monster
145 = red monster
146 = white monster
147 = pink monster
148 = blue monster
149 = yellow monster
150 = black monster
151 = turquois monster
7E0A56 tells the x position of P1's raven, from 1 to 6.
7E0A58 tells the x position of P2's raven, from 9 to 14.
7E0A5B tells the number of remaining colours of objects (i.e. bombs and monsters) on P1's side.
7E0A64 tells the number of remaining colours of objects (i.e. bombs and monsters) on P2's side.
7E0AAD tells the total number of so far (by the fairy) generated bombs on P1's side during a round.
7E0AAE tells the total number of so far (by the fairy) generated bombs on P2's side during a round.
The current number of bombs (of a certain colour) on P1's side is shown by:
7E0AAF (green)
7E0AB0 (red)
7E0AB1 (white)
7E0AB2 (pink)
7E0AB3 (blue)
7E0AB4 (yellow)
7E0AB5 (black)
7E0AB6 (turquois)
The current number of bombs (of a certain colour) on P2's side is shown by:
7E0AB7 (green)
7E0AB8 (red)
7E0AB9 (white)
7E0ABA (pink)
7E0ABB (blue)
7E0ABC (yellow)
7E0ABD (black)
7E0ABE (turquois)
The current number of remaining monsters (of a certain colour) on P1's side are shwon by:
7E0ABF (green)
7E0AC0 (red)
7E0AC1 (white)
7E0AC2 (pink)
7E0AC3 (blue)
7E0AC4 (yellow)
7E0AC5 (black)
7E0AC6 (turquois)
The current number of remaining monsters (of a certain colour) on P2's side are shwon by:
7E0AC7 (green)
7E0AC8 (red)
7E0AC9 (white)
7E0ACA (pink)
7E0ACB (blue)
7E0ACC (yellow)
7E0ACD (black)
7E0ACE (turquois)
The current number of gems (of a certain colour) on P1's side is shown by:
7E0ACF (green)
7E0AD0 (red)
7E0AD1 (white)
7E0AD2 (pink)
7E0AD3 (blue)
7E0AD4 (yellow)
7E0AD5 (black)
7E0AD6 (turquois)
The current number of gems (of a certain colour) on P2's side is shown by:
7E0AD7 (green)
7E0AD8 (red)
7E0AD9 (white)
7E0ADA (pink)
7E0ADB (blue)
7E0ADC (yellow)
7E0ADD (black)
7E0ADE (turquois)
7E18DF tells the x position of P1's fairy, from 1 to 6.
7E18F6 tells the x position of P2's fairy, from 9 to 14.
7E1B87 tells the number of rounds P1 won in the current best-of-5 match.
7E1B88 tells the number of rounds P2 won in the current best-of-5 match.
7E1B89 tells the number of rounds that have been completed in the current best-of-5 match.
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
Here is some more Snes9x 1.53 v.7 test movies on stage 1:
Brown robot AI tests (with manipulations where the character moves upwards or downwards during a jump during a time interval in which the robot will mimic this movement, and with jumpkick sounds that stun the robot and capsule interactions to check how early the 1st brown robot will start moving downwards in different situations):
Making a robot move higher up or down is shown in the next movies.
https://cdn.discordapp.com/attachments/218520158963105792/344952175488925706/Battletoads__Double_Dragon_-_The_Ultimate_Team_brown_robot_chasing_visual_height_of_char_upwards_USA.smvhttps://cdn.discordapp.com/attachments/218520158963105792/344952191359909889/Battletoads__Double_Dragon_-_The_Ultimate_Team_brown_robot_chasing_visual_char_height_downwards_USA.smv
Further robot manipulations:
https://cdn.discordapp.com/attachments/218520158963105792/344952202068099082/Battletoads__Double_Dragon_-_The_Ultimate_Team_char_movement_dependent_robot_movement_2_USA.smvhttps://cdn.discordapp.com/attachments/218520158963105792/344953652957544448/Battletoads__Double_Dragon_-_The_Ultimate_Team_robots_position_and_height_adaption_USA.smv
Stunning a robot by hitting another enemy.
https://cdn.discordapp.com/attachments/218520158963105792/344954886313738241/Battletoads__Double_Dragon_-_The_Ultimate_Team_kick_hit_sound_stuns_other_robot_in_prep_phase_USA.smvhttps://cdn.discordapp.com/attachments/218520158963105792/344954863177695232/Battletoads__Double_Dragon_-_The_Ultimate_Team_the_robot_hit_sound_stun_works_with_purple_enemy_aswe.smv
In this case, a robot stays stunned and takes longer until it attacks than usual.
https://cdn.discordapp.com/attachments/218520158963105792/344952226919219201/Battletoads__Double_Dragon_-_The_Ultimate_Team_brown_robot_really_drifts_and_can_delay_attack_part_2.smv
And with better timing, the hit sound can get a robot out of its slow preparation phase quickly so it can start moving down earlier.
https://cdn.discordapp.com/attachments/218520158963105792/344953676944769024/Battletoads__Double_Dragon_-_The_Ultimate_Team_hit_sound_can_release_robots_preparation_phase_after_.smv
An instance in which the 1st brown robot moves down quickly.
https://cdn.discordapp.com/attachments/218520158963105792/344954875064352778/Battletoads__Double_Dragon_-_The_Ultimate_Team_good_robot_movement_USA.smv
At the beginning of this movie, the HUD for some reason looks glitched.
https://cdn.discordapp.com/attachments/218520158963105792/344953642085908484/Battletoads__Double_Dragon_-_The_Ultimate_Team_weird_HUD_and_brown_robot_drifts_when_hearing_hit_sou.smv
This movie shows how 1 robot waits for its attack while the other robot is taken care of.
https://cdn.discordapp.com/attachments/218520158963105792/344954851207282698/Battletoads__Double_Dragon_-_The_Ultimate_Team_friendly_robot_waits_until_action_is_finished_when_he.smv
- - -
Demonstrations of a delayed knee attack with a jump.
https://cdn.discordapp.com/attachments/218520158963105792/344953688588288000/Battletoads__Double_Dragon_-_The_Ultimate_Team_knee_finisher_after_complete_halt_with_jump_attack_US.smvhttps://cdn.discordapp.com/attachments/218520158963105792/344952214563061761/Battletoads__Double_Dragon_-_The_Ultimate_Team_knee_finisher_initiated_via_jump_and_attack_late_duri.smv
With good speed and positioning/timing, an ellbow attack can miss its capsule target (and possibly hit something else), and a knee attack can be initiated against capsules in stage 1 aswell (which maybe could be useful to destroy a clown hand in stage 1 earlier, provided one cannot get hit by the hand's slapping attack mid-jump (which might be possible if one loses a life for i-frames).
https://cdn.discordapp.com/attachments/218520158963105792/344953664701595649/Battletoads__Double_Dragon_-_The_Ultimate_Team_overshooting_with_ellbow_smash_USA.smv
- - -
Some interesting thoughts from Whitegastra's TAS submission thread ( http://tasvideos.org/forum/viewtopic.php?t=8399 ):
This remains to be tested on some enemies and bosses, and would be interesting if it is possible.
Lag differences induced by the remaining fire ring sprites on screen past a lever gate near the end of stage 3 will also have to be looked into if one needs to slow down in order to avoid them (to compare 'how much more lag would be there' with 'how much one would need to slow down in order to avoid this additional lag').
This is something I'm not quite sure about and don't know how it was handled in similar situations for other games. Of course it would be an easy decision if the ''technically harder'' mode allows for a faster TAS. But currently my stance is to take whatever is faster (and in the worst case, it could at least be compared in a more straight forward way with Whitegastra's TAS in case mode A is taken/kept).
It also remains to be tested if climbing along the floor in stage 1, or using different positions on the ground (or possibly losing a life for i-frames), or using a toad with his finishing move can speed up killing clown hands; aswell as if the wooden sticks in stage 2 can speed up the stage.
https://youtu.be/p5XiAnAoYKE
In here around 8:36, there's some sprite bug where women in stage 3 after getting kicked by a toad stay in place and don't land on ground (and then despawn after a while), and their sprites loop back into the screen later on. And at around 9:32, 1 of those women is kind of resurrected during her despawning animation and can attack and get hit again, which seems quite strange. Maybe the start of the next section on the stage reset the state of some enemy so it is alive again, and that enemy slot might still been occupied by this woman since it took so long for her to despawn. At 17:05, the video shows how missiles can be used on the rat ship.
And this is the 2-player speedrun that uses some new strats since the old TAS: http://speeddemosarchive.com/BattletoadsAndDoubleDragon.html
Apparently there is also a code in the game that allows to use a level select screen (accessed by pressing Up, Down, Down, Up, X, B, Y, A in this order on the character select screen), but this isn't going to be used anyways (and using this code would change the credits message, apparently).
- - -
Some more observations and remarks:
It seems that the game doesn't use the L, R and Select button.
During a Dash attack (if one lands soon enough afterwards), one can hold Jump during the Dash attack to buffer a jump right afterwards (together with direction held if wanted).
In 1-1 with Billy/Jimmy, it seems one has at most a 3 frame window for chaining dash attacks without starting to run again.
In level 1-1, the time at which each of the purple fighters (at least the 2 right before the first brown robot) appear are individually dependent on the screen position, if it is far enough to the right, they will spawn.
While carrying an enemy on stage 1, it seems Billy/Jimmy cannot switch into the floor climbing state.
It seems that the game only checks every 2nd frame for hitting a purple fighter that starts falling from a glider in stage 1 (since 1 frame attack delay causes hitting such enemies 2 frames later instead of 1 frame later).
The brown robot's AI seems to work roughly like this:
Initially, it would rise up in preparation of chasing/targeting the player (and moves its shadow towards the bottom of the vertical range that the player's character box spans on ground), and does so by adapting its height to the player's height (if one isn't in a jump, it adapts properly to the player sprite height) by correcting its position by the player sprite's visual movement (during an early phase around when it stops rising in preparation phase, where it will go further up if the player is visually moving up during that time, or down when the player moves down).
When a robot already starts sinking and targeting a player, the kick stun sound alone cannot stun it anymore before its next action.
If during the preparation phase a kick attack hit sound occurs (on purple fighter, capsule, or the robot itself which would stun it the normal way, so that one can assume that its stun is induced by the hit sound and not necessarily when the robot itself gets hit), then it will continue its preparation phase movement and then stop moving roughly until the score sprite would take to vanish after rising (if the hit sound was caused by opening a capsule), but if this score sprite animation ending for the hit-sound stun of the robot happens before the robot reached its final preparation spot, then it doesn't need to reach this spot anymore in order to initiate an attack but can start its attack movement instantly afterwards.
Apparently the fighters with the green clothes in the 2nd stage area, as soon as they spawn, their AI is locked onto (probably) the nearest player character among the 2, and isn't triggered to attack with the fist if the other player character comes near the fighter, which can be used to let them enter the inner parts of the screen faster because the fist attack animation slows them down so it seems. There might be further generalisations of this mechanic in the game.
It seems that the range of the jumpkick hitbox reaches much more further forwards if one carries a stick (in stage 2), so maybe this might allow to hit some of the enemies earlier before they come even into the screen.
Longjump mechanic:
If Billy or Jimmy on normal ground start to dash forwards (even if just for short time, or also for a long time, even when touching an invisible wall at the sides of the screen) and then don't hold forwards anymore (and don't attack or jump or turn around (or get hit?)) so they enter a slowing down forwards animation, and then one jumps and strictly afterwards (but not too late) presses and holds Forwards (while holding Jump or releasing it at any time for lower fast and long jumps), a huge jump can be executed that way (but an early kick attack will interrupt the horizontal jump speed and slow it down a lot, and going diagonally forwards does the same, and turning around, too).
This kind of jump can be stored at times when the screen is about to allow a screen shift again while the players wait at its borderline, in order to initiate fast jumps, seemingly exactly as fast as the running animation (except it allows to get past obstacles aswell), but it seems that the screen can't be shifted faster in stage 2 that way, compared to running normally (so maybe some screen shift speed limit is already reached by running).
When the characters are at the chainsaw evasion part, and one walks downwards, one can accelerate to that direction.
It seems that in the 3rd stage, the screen at some points starts shifting once the last door finished closing (and hence, it shouldn't depend as much on when all enemies got their final hit).
If one jumps and attaches a character to a turret in the ceiling in stage 3 to hit it 3 times and then fall off of it, then the trajectory of the jump that was used to reach the turret will be continued afterwards (which means one will fall slower if one jumped late to attach to it, and will fall faster the earlier one jumped towards the turret).
Swinging the ropes to start climbing downwards can delay the start of the climb if a rope-swinging character is (too) far away from the edge of the platform and moves towards it, so it seems to require some minimal time during which both characters have to swing the rope at the edge of the platform.
The AI of the women with the whips in stage 3 seems to behave strangely and seems to not attack if a character is close enough to the boundary of the screen, next to them while they enter the screen (similarly to how the fighters in stage 2 behave).
If one jumps towards the edge of a higher platform, only if one continues holding jump (for a stronger jump), one will be placed into standing pose at the edge of the higher platform while rising (to interrupt the jump and land immediately, skipping the apex of the jump and falling afterwards). In some cases of jumping up to a higher platform from a lower one near the edge of the higher platform, holding Jump for too long can prevent an earlier jump from causing the character to get attached to the higher floor in standing pose, so it is not enough to check the 1st frame of an indefinite jump at which a character would be put on the higher ground, but different jump frames need to be checked aswell.
And the frame at which one can start dashing after landing on the higher platform, among jumps that work, depends aswell on the number of Jump frames.
It seems that in very most cases, running (or using a stored longjump and continuing from there) against an invisible wall to shift the screen as fast as possible as soon as possible gets the screen into its final position the fastest, and only in rare cases a well-timed running jumpkick close to the end of the screen shift can allow the screen shift to finish about 1 frame earlier.
If one gets knockback and lands flat on ground and stands up again, the dash state (to the previous direction that one did dash before getting hit) is kept.
There might be some asymmetry between the 2 player characters where collission between 1 of them and enemies runs at frames where it doesn't run for the other character and vice versa, so there might be frame savers caused by switching the roles of the 2 player characters.
If one jumps and then kicks (outside of the dash state) late before landing, to connect a hit with an enemy as late as possible before landing, then one can land within fewer frames after the enemy got hit, compared to hitting an enemy with a dash jumpkick, so this might be important if one needs to do some further actions with the same character right afterwards.
There is (e.g. in stage 3) certain spawn positions for when a player character respawns after dying, and those should be looked into aswell for potential frame savers.
At the long fence climbing section, sometimes, a fire ring spawns higher and executes its trajectory with this upwards shift and then stays active when it reaches back to its spawn point on screen (which can be problematic), and it seems that either moving the screen further to the right while a fire ring is spawning, or certain screen positions causes a fire ring once to spawn higher for some reason.
In stage 3, at the lever gates, the spots at which the fire rings start moving upwards are RNG dependent.
In stage 4, there is a missile fire mechanic, which requires the player to hold Shot long enough until a cross appears (and disappears as soon as one releases Shot), and targets (which can be rocks of any size and mines and enemy spaceships) attract the cross a tiny bit when they are near it (so that it gets pulled towards them), and a missile is fired as soon as one releases Shot, provided one kept the cross close enough to a target long enough (so that the "LOCK" sign appears), and if an target dies before a missile hits it, then it will go in circles a few times until it disappears and it seems that it then cannot hit any further targets anymore.
And as soon as the boss phase of stage 4 occurs, one moves the own spaceships in a different way (where the directions one presses are the directions the spaceships move to, as opposed to moving forwards with Jump held or backwards, and doing circular turns by pressing Left or Right), and one controls the missile cross the same way simultaneously (for as long as one keeps the cross on screen by holding Shot), and the cross cannot exit the screen's boundaries and just stays in place when pushed against it. The enemy spaceships can be finished off rather efficiently with missiles, it seems.
- - - - -
At this place one can find some memory addresses used in the game: http://gamehacking.org/game/42307
- - -
By the way, here's now a video of the WIP:
Link to video
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
I did some TASing work (using Lsnes) on this game and have some improvements over the published TAS up to stage 3 (since I haven't done any TASing beyond that yet). I know that the published TAS for this game is in the Vault since the NES TAS seems similar enough (and better, I guess), but that doesn't need to matter.
General notes on the Test-TAS so far (and comparison to Whitegastra's TAS):
At the beginning, one has to wait for a high note of the title screen music until one finally can affect the game and choose and confirm the chosen characters as soon as possible. Note that testing other character combinations still is remaining to be tested, but I just went with this combination because the resources that I checked lead me to believe it'd be good to start out this way. I also chose the mode in which both players cannot hit each other, of which I'm not entirely sure that it is faster, but at least it'd get rid of annoying instances in which they get into their way and hit each other instead of targeting enemies (or even just when they do jumpkicks to get past obstacles while moving synchronized), and additional collision checks might also cause more lag at few places. The first 2 enemies are taken care of similarly as in Whitegastra's TAS, but the next pair of fighters climbing along the floor are killed with simple fist attacks that let them just straight fall and not move up and down which keeps them longer on screen and hence stalls the screen longer before it continues moving at its seemingly fixed/constant speed throughout stage 1. Opening a capsule generally produces 1 lag frame when it bursts, and I assume the reason for this is the many small projectiles/capsule pieces with their own trajectories. I wasn't aware of this right at the beginning yet, so the very 1st capsule should be left untouched, but there is a strange behavior of (any but especially) the 1st brown robot for which the sound of a bursting capsule (or jumpkicking an enemy while the robot is on screen) at any point earlier on will influence the robot's behavior (because the robot normally has an attack preparation phase during which it flies upwards out of the player's fist attack range, and if the sound of a jumpkick hitting an enemy occurs meanwhile (or a capsule was opened before in the stage), the robot's AI is interrupted and it keeps its speed for a bit and drifts further, but then can afterwards immediately start chasing the player, which allows to cancel the usual preparation phase immediately as soon as the robot appears, with a well-timed jumpkick sound or capsule-opening sound, since not actually hitting a robot stalls it but the hit sound already causes this). So probably at least 1 capsule might be opened to achieve the fastest result. In the Test-TAS one can see the 1st brown robot still moving upwards for about 3 frames, but I think I had instances in which it moved straight down from the beginning. The next 2 brown robots have their particle effects (when they burst on the ground) occur at the same frame to merge the lag frames that each of those bursts would cause to 1 remaining lag frame. The 2nd fighter afterwards that Jimmy is kicking is kicked at the same frame as Billy hits the other enemy for whom he can wait and doesn't have positioning constraints to meet, so for Jimmy, the hit should have occured as soon as possible aswell already, provided those 2 enemies spawn at the same time (and thus can be hit at the same frame). Then I keep Billy climbing along the floor because getting up would stall the screen movement, and I don't need him yet to get rid of further enemies, and I let him up as soon as the screen would anyways stop. The next brown robot causes another lag frame when it bursts. And at the next pair of brown robots, I could have done the final attack on both at the same time but this would have resulted in 2 lag frames instead of 1 for which I delayed the kill of Jimmy's robot, since both need to be dead anyways in order to allow the screen movement to continue (and the height of the floor actually matters for the frame in which they burst/reach the ground). As opposed to the NES version of the game, after a bunch of tests, it seemed to be impossible to deal an initial early hit on Abobo before the player characters are stunned temporarily. Generally, it seems when enemies appear, there is frames during which it seems that no collision check is executed for hitting them with an attack (maybe only for 1 of the 2 players, or for every 2nd frame which is to be checked), which in few cases caused me to lose 1 frame compared to Whitegastra's TAS.
In the 2nd stage I use the 1st wooden enemy as target for both player character's finishing moves to get rid of the last 2 enemies at once, which often seems to be a successful strategy. Most of the time, a running jumpkick shifts the screen to its final position where it stops (in stage 2 and 3) within the same time as running does already, and is only rarely 1 or a few frames faster with proper timing. The strategy for both dynamite throwers is to first let them throw all dynamites that I'll need in total to kill them, followed by throwing the dynamites at them (which turned out to be a bit more tricky in the 2nd case, where 1 dynamite was already about to explode and had to be thrown in order to pick it up later again). It seemed to be impossible to pick up a dynamite that was about to enter the door in order to essentially duplicate dynamites such that one would hold 1 and another dynamite enters the door (which is possible in the NES version). The range in which dynamites can still be picked up (even if it is far away from a character) is extraordinairy, by the way. The time it takes for a dynamite between throwing it and it entering the door depends on its trajectory in the room, but there seem to be fixed minimal delays between dynamites to make the hits count, and I think the minimum was reached in each case. At the part before the rat, in the orange floating bikes, I could avoid a lag frame that would (usually) occur when a heart symbol for an additional life (of which I need a bunch for death warps in stage 3) appears. Keeping orientation closer to the 2-player speedrun by PJ and Mecha Richter than the older TAS payed off at this part aswell, since it allowed for the largest improvement over the TAS with 1000 saved frames, I think, simply by not killing any biker and just stalling 1 of them and letting him disappear, which skips an otherwise additional ''bonus'' phase in which capsules appear. And it seemed to be irrelevant at what time the biker finally disappears from the screen (but maybe killing him well-timed might save or even waste time), which he does on his own at some point. At the rat, a jumpkick together with a fist attack allowed to initiate a knee attack early on (and further kicks were just used to keep the rat down on ground so the knee would hit, aswell as manipulating the rat's position close to the edge of the screen), and turned out to be faster than spamming jumpkicks.
Already at the beginning of stage 3, after the first couple enemies, (aswell as at few spots later in the same stage) I could make good use of the longjump storage mechanic (explained further below for 1 of the movies, but basically allows to accelerate during a jump up to about running speed which is even kept after the character lands), aswell as sliding onto higher platforms via jumpkicks. And a longjump for Billy is also used after the first turret in order to jump over a platform and land on the ground next to Jimmy as soon as possible to initiate the rope swinging animation as soon as possible. The following few whirlwind attacks fortunately didn't cause lag to my knowledge at the birds (even though this kind of attack is somewhat heavy on the game), but cause 1 lag frame later on each time (where I tried to let the whirlwind attack animation almost run out before it hits an enemy as soon as it appears, from as high as possible against the same wall one is attached to, to reduce the amount of rope sprites which otherwise also throws in a few lag frames here and there). So far, I didn't find any way to get off the ropes in a better way than just optimizing the position rather than position and speed or acceleration, which seemed to not matter much. Note though that the current Test-TAS doesn't have the use of a RAM Watch incorporated yet (and only uses the input editor, which on its own is already pretty powerful), since I'm still looking through the addresses to map their behavior to parameter's that change in the game, for a later TAS attempt. Right after jumping off the ropes, Jimmy gets rid of the capsule (for which I managed to avoid the lag frame that the collection of the 5000 score sign normally causes) so Billy can dash forwards with a jumpkick (instead of being forced by the capsule's position to initiate an ellbow attack against it). The longjump mechanic then allows me to simply jump over the ''Tarzan-gaps'' as I call them, instead of getting past them the normal way. At around the frame 22153, after finishing off 2 turrets, dashing forwards midair after a jumpkick with Billy barely allows Billy to land on the higher platform. Also noteworthy is that in stage 2 and 3, there seem to be parts at which the screen (provided it reached a certain position already) starts moving at a fixed speed, so that character movement couldn't induce a faster forced screen-shift anymore. After the chainsaws, jumping normally onto higher platforms (and being attached to them in a standing pose if one keeps holding Jump and is close enough) ended up being faster than using a jumpkick onto the 1st higher platform, since this would trigger the stomper earlier and would require to start running again after the jumpkick finished, which doesn't allow to get past the stomper anymore, so one would get hit. At the lever gates, I could nicely abuse the fence side-kick animation that can happen simultaneously to falling from the fence and still hit the lever that way in each case. Then there is capsules on the path which effectively hinder jumpkicks from being a quick option to get onto higher platforms, and another longjump is used over a platform, followed by a slightly different approach to get rid of the women with the whips.
The game often doesn't spawn more than 2 fighter type enemies simultaneously and often hitting/getting rid of 1 of 2 such enemies instantly causes the next enemy to appear. And again longjumps over Tarzan gaps are used, followed by shifting the screen as quick as possible sufficiently far to the right with Jimmy so that Billy could respawn on the right side quickly. Billy's jumpkick afterwards shifted the screen faster to its end position, and the woman that Jimmy kicks on the ground first allows him to initiate a knee attack that then hits the other woman, so both can be finished off faster in the end. Then a jumpkick trajectory into the following abyss for a death warp is chosen in such a way to still respawn on the right side but also with a lot of falling speed to land early to start swinging ropes quickly. The turrets afterwards didn't cause any lag, but I think each whirlwind attack caused 1 lag (though some were synchronized). The final bird that is attacked either flies off-screen far to the right or to the left, depending on where the highest character is positioned, so I made sure it moves to the left so it can be finished off together with the previous bird. Billy and Jimmy are attached to the long fence further ahead using jumpkicks, and this fence will probably take a while to optimize (and is the reason why the Test-TAS stops shortly after), since the time at which obstacles spawn near the fence depends on the screen position, and one would want to minimize the time needed to dodge obstacles (or counter-attack them) without being able to move, so one would want to merge or let many obstacles overlap or be synchronized at 1 place to reduce the total amount of frames spent on dodging them (and a normal death warp would just let a player respawn at the far left of the screen and essentially waste already travelled distance). And for this task, not a constantly moving screen matters in the end but the furthest ahead player character's position matters to reach a fixed final screen position as soon as possible (since the character drives the screen position and ultimately allows for a death warp for both characters as soon as the screen has reached a certain position which it will have reached as soon as the character reached a certain position by travelling a sufficient distance). And since it suffices for 1 character to reach this position that then allows a death warp for both, the other character can be used to stop the screen movement bit by bit by how much it should be, whenever needed in order to delay new obstacles from appearing or change the distance between the further ahead character to the side of the screen for the times in which new obstacles will appear, as long as it doesn't unnecessarily keep the further ahead character from moving to the right. Regarding this fence, I couldn't make the fast fence travel method from the NES version work here.
- - - - -
Lsnes movies:
This is my current Test-TAS until about half through stage 3, and the following movies containing short improvements (or potential, not yet confirmed possible, improvements in few cases) refer with their X frame improvements (over the Test-TAS) to this Test-TAS. Generally, in the input editor, there is some (useless) inputs used as markers for orientation, and the frames at which differences occur between the Test-TAS and an improvement movie are marked in the improvement movie by 2 frame-rows of L and R inputs for both characters (instead of just 1 row of L and R, which I use generally as breakpoints for when the screen starts to move or stops moving or when certain animations start or end to see how well the TAS does). Most lag frames (outside of cutscenes and loading times) should be marked with Start inputs in the movie.
https://cdn.discordapp.com/attachments/218520158963105792/344550065261772801/Test-TAS.lsmv
Local known improvements (and improvement ideas) as Lsnes movies:
A jump kick with Jimmy at around 7857 allows to have the screen finish its movement 1 frame earlier (but might not anymore allow to move Jimmy vertically along the ground to lure the enemy coming from the right side into the screen fast enough to keep the frame save).
https://cdn.discordapp.com/attachments/218520158963105792/344593095737737247/jumpkick_for_1f_faster_screen_shift_stage_2.lsmv
This is one of my largest oversights of stage 2 for my current setup with Billy and Jimmy, since I simply started the finishing knee attacks with Billy and Jimmy at least 18 frames later than I could have done (which is around frame 7986) with better positioning and timing. I think I thought the sliding of the enemies on ground needed to finish before I could finish them off, and must have gotten to that conclusion by just doing a few tests that didn't allow me to finish them off earlier, but some more testing later on when I came back (now knowing that the finishing move can be started much earlier, basically as soon as the enemy lands on ground) made me realize this mistake. Even the published TAS does this faster (which I didn't use for comparison at that time). https://cdn.discordapp.com/attachments/218520158963105792/344580493926203392/18f_stage_2_time_save_with_earlier_knee_finisher.lsmv
A jumpkick in stage 2 - 2 at around frame 9200 in the Test-TAS allows the screen to finish its shift 5 frames earlier, but this improvement should be obsolete.
https://cdn.discordapp.com/attachments/218520158963105792/344551374450589697/obsolete_jumpkick_for_5f_faster_screen_shift_stage_2.lsmv
Doing a jumpkick at around frame 9243 with Jimmy allows to shift the screen 7 frames earlier to its next fixed position compared to the Test-TAS, and 2 frames earlier compared to the above obsolete option. The 2nd movie is the same improvement in a different way that keeps the the final fixed position of the screen as it is in the Test-TAS.
https://cdn.discordapp.com/attachments/218520158963105792/344579053459734529/7f_faster_screen_shift_stage_2_and_diff_final_background_x_pos.lsmvhttps://cdn.discordapp.com/attachments/218520158963105792/344597979820457984/the_7f_stage_2_faster_shift_with_same_background_x_pos.lsmv
Finishing off the remaining 3 enemies climbing along the floor at around 9975 with stomps instead of jumpkicks despawns them much earlier and hence allows the screen to move much earlier, which should save around 20 frames. The 2nd movie takes (only) this improvement and continues further up to the dynamite thrower, where the RNG desynchs.
https://cdn.discordapp.com/attachments/218520158963105792/344593624950112257/stage_2_downstomp_strat_huge_20f_improvement.lsmvhttps://cdn.discordapp.com/attachments/218520158963105792/344596243420545025/Test-TAS_improvement_at_stage_2_uncontinued.lsmv
A jumpkick with Billy at around 10060 allows the screen to finish its shift 1 frame earlier (but might not be implementable due to possibly hitting the left guy afterwards later than originally).
https://cdn.discordapp.com/attachments/218520158963105792/344586283634393088/another_1f_shift_save_stage_2.lsmv
At around frame 22227, instead of using a jump-kick, one can use a late airial kick shortly before Billy would land, in order to be able to run earlier to the right (and be further to the right) to do the final attack 2 frames earlier than in the Test-TAS.
https://cdn.discordapp.com/attachments/218520158963105792/344551944859418634/2f_save_stage_3_with_non-dash_jump_kick.lsmv
At around frame 22238, jumping later after turning around keeps Jimmy further to the right (probably because of now already lost momentum) and allows him to hit the woman to the right 3 frames earlier. https://cdn.discordapp.com/attachments/218520158963105792/344574496465747980/3f_stage_3_save_with_later_jumpkick_after_turn.lsmv
At around frame 25101, after the jumpkick off the platform, one can continue moving forwards midair and enter the running animation midair to shift the screen 1 frame earlier to the next position where it will stop.
https://cdn.discordapp.com/attachments/218520158963105792/344570190404648960/1f_stage_3_faster_screen_shift_with_running_jump-kick_midair_dash.lsmv
These improvements (and possibly other fixes such as a few remaining lag frames here and there remaining to be eliminated or merged to change 2 lag frames into 1 if one knows what causes the lag and can synchronize lag-inducing actions) are things that I'd want to implement into the Test-TAS before continuing further with the test, because I expect RNG and lag patterns to have a more major impact/relevance in stage 4, and so far, it seems the only ''majorly'' RNG depending scenario was in stage 2 at the 2nd dynamite throwing guy with the trajectories of the dynamites which seemed to depend on RNG. To me it seems the game would allow for various ways in which one can implement stylistic elements (entertainment) which don't seem to be fully exhausted in the published TAS, but (except maybe of the 1st stage in the Test-TAS) entertainment is something to care about and do at the end when the frame-optimization is mostly done, I guess, because otherwise it might happen that already implemented stylistic elements will have to be revised after finding new improvements.
- - - - -
Lsnes observation movies throughout the TASing process:
- - -
Stage 1:
When the 2nd fighter that gets into the screen and is kicked at around frame 2391, the screen in this test movie is kept far left to test if the fighter would despawn earlier that way after being thrown far off-screen to the right instead of landing and despawning shortly after, but this didn't work (which though turns out to be possible in a few cases of kicking fighters in stage 1 off-stage to keep the screen movement going). https://cdn.discordapp.com/attachments/218520158963105792/344645430870540288/level_1_test.lsmv
This movie shows how one can take out the 1st (and apparently only the 1st) brown robot in stage 1 with a simple, well positioned (in relation to the robot's position, not too centered and not too far away vertically along the ground) fist attack as soon as the robot sank far enough down from above.
https://cdn.discordapp.com/attachments/218520158963105792/344607040376668161/brown_robot_grab_and_jab_kill.lsmv
Here is a comparison movie for the case of finishing off a fighter in stage 1 around frame 3407 with the knee attack (which ended up being slower than waiting for the fighter to stand up, kick him and let him despawn off-screen). https://cdn.discordapp.com/attachments/218520158963105792/344641174885367810/knee_smash_finisher_test.lsmv
- - -
Stage 2:
In the 2nd stage, on the first floor, there is an occassion at which 2 enemies approach Billy and Jimmy from both sides, and they will try to adapt their vertical position on the floor to the player character that they are targeting, but I haven't quite yet figured out how they decide their target, which can be important to figure out, as I learned in stage 3. This movie shows how those 2 enemies both lock onto the same player character, ignoring the other one (until hitting the former, at least).
https://cdn.discordapp.com/attachments/218520158963105792/344605710673248256/both_fighters_locking_onto_same_char.lsmv
A movie that uses the TAS strategy that Whitegastra used for the 1st dynamite thrower, for comparison purposes. And the 2nd movie shows what happens if one throws a secondary (or later) dynamite too early into the door (which causes a repetition of the dynamite thrower's backwards movement animation and doesn't let the previous danymite hit count anymore, so it seems). https://cdn.discordapp.com/attachments/218520158963105792/344614054087884801/dynamite_thrower_old_TAS_strat.lsmvhttps://cdn.discordapp.com/attachments/218520158963105792/344614364416049153/dynamite_thrower_animation_repetition.lsmv
Here one can see an example of some kind of inverted situation at the 1st floor of stage 2 where the enemy fighters' AI ignores the closer player character.
https://cdn.discordapp.com/attachments/218520158963105792/344639302577422346/fighter_AI_char_lock_demonstration.lsmv
At the beginning of the 2nd floor in stage 2, this movie shows roughly how long one can delay a 2nd knee attack against an enemy on the floor while the other player character is finishing him off. This uses the mechanic that the knee attack can still be triggered after a dash that ends near the enemy and already stopped, (and even during a stationary jump at that spot) as long as the/some target enemy on the ground is still there.
https://cdn.discordapp.com/attachments/218520158963105792/344647460498702336/most_delayed_stored_knee_finisher_from_present_object.lsmv
At the 2nd floor in stage 2 at the 2 wooden enemies, it occured (and is shown in this movie) that a knee attack was capable of hitting 1 of the wooden enemies while it was in its stunned knockback phase shortly after getting kicked.
https://cdn.discordapp.com/attachments/218520158963105792/344656786680315928/wooden_enemy_kick_and_knee_kill_midair.lsmv
This is where I first noticed the longjump mechanic (at the 2nd floor of stage 2).
https://cdn.discordapp.com/attachments/218520158963105792/344640281246957570/horizontally_speed_up_dash_jump.lsmv
The time it takes until the 2nd stage ends (with a fade-out of the screen) depends on how soon the rat boss exits the screen (and despawns), apparently. And the following movie indicates the time difference of knocking it to the left or the right out of the screen for a given final rat starting position where the rat lies (which one wants to have as close to 1 side of the screen as possible). https://cdn.discordapp.com/attachments/218520158963105792/344642512817750026/L_and_R_markers_for_offscreen_rat_delay_difference.lsmv
- - -
Stage 3:
At the lever gate, if one does a jumpkick against the laser, then the knockback animation will occur after the jumpkick animation finished (which is usually the case when touching fire rings aswell), and the character will be thrown back during the jumpkick (which doesn't seem to happen anywhere else so far).
https://cdn.discordapp.com/attachments/218520158963105792/344637375470895124/electric_gate_jumpkick_delayed_damage.lsmv
At the chainsaw downwards climb, it doesn't help trying to let both player characters die and respawn near the end in order to obtain and keep i-frames to get past the stomper shortly afterwards (which is possible for 1 of the characters and would be faster if the other one wouldn't get hit and then stall the screen for a whole long time), because at least 1 of the player characters has to finish off the final turret in order to allow the screen to progress, and at this point the last chainsaw is gone already and both would be in their death animation, and waiting for a turret shot to let a character die would already waste too many frames, so at least 1 character cannot get the i-frames and would get hit if the other one triggers the stomper too early (except it might still allow to trigger the stomper just 1 or a few frames earlier without yet hitting the slower i-frame-less character so that the character that is further ahead still can keep his distance-wise advantage).
https://cdn.discordapp.com/attachments/218520158963105792/344652802339110913/stage_3_iframe_strat_doesnt_work_bec_turret.lsmv
This here is a comparison movie that contains the order/method in which the published TAS got rid of the women with the whips at the beginning of stage 3 - 2, which turned out to be slower than using the 3rd last woman (which is the last woman that takes 2 hits to despawn, in order to be useful for using her to trigger a double-knee-attack which usually seems to be the best way to get rid of the final 2 enemies) to get rid of her and the final one at the end.
https://cdn.discordapp.com/attachments/218520158963105792/344650061181091850/slower_stage_3_whip_ladies_strat_from_published_TAS.lsmv
This movie contains an earlier, slower strategy of getting off the long fence near the end of the Test-TAS using a deathwarp for Jimmy and Billy.
https://cdn.discordapp.com/attachments/218520158963105792/344649595856355329/old_stage_3_Test-TAS_fence_strategy.lsmv
Having another enemy lie around on the ground next to an enemy that already has been delivered the final attack allowed Billy at around the frame 25385 to initiate another final knee attack which then targeted the already finished off woman, which was a strange noteworthy occurence since it could be of relevance at some point.
https://cdn.discordapp.com/attachments/218520158963105792/344654900871036930/strange_knee_multi-kill_of_same_whip_lady_at_other_enemy.lsmv
- - - - -
Snes9x 1.51 rr movies (mostly for tests and documenting some things):
Stage 2:
One can jump and grab the orange floating bike (similarly to the NES version) for a higher jump, except one doesn't stay up there.
https://cdn.discordapp.com/attachments/218520158963105792/344544889779781643/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_vehicle_grab_jump.smv
Some tests with the orange floating bike (dashing forwards and backwards, ramming and kicking, jumping and kicking in different rhythms that can cause weird vertical teleportations and kick animations).
https://cdn.discordapp.com/attachments/218520158963105792/344530057773187073/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_forwards_vehicle_kick_and_resonating_jumps_and_hi.smv
- - -
Stage 3:
2 types of game crashes:
A game crash with black screen during the narrow climb section in stage 3. I think the crash is related to having a character close to the bottom of the screen near/beneath a bird (possibly bird AI or collision related) and either switching between holding Right and Left or just holding Left or Right. I assume it is related to the birds, because during the tests where I reproduced this kind of crash in similar situations a bunch of times, I think there was always a bird involved and I don't think I could get the game crash without a bird (except of 1 specific other instance). I don't think it is related to the fire ring sprites, since there were cases where the game crash could be reproduced without them aswell.
https://cdn.discordapp.com/attachments/218520158963105792/344491806295195648/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_another_climb_game_crash.smv
While the (seemingly) bird related crash was easy to reproduce, a crash that seemed to be related to the height or timing at which a capsule that spawned at the end of a climbing section was much more precise and harder to recreate. It might be related to the sound or particle effect or the drop's positioning inbetween the 2 characters.
https://cdn.discordapp.com/attachments/218520158963105792/344524982124019712/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_down_climb_capsule_game_crash.smv
This movie demonstrates a clip through the left wall using a laser and the induced animation from touching it (and one can get stuck on that left side that way). In the narrow shaft, this also works to clip through the right wall.
https://cdn.discordapp.com/attachments/218520158963105792/344512718843281409/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_clipping_past_left_wall_in_climb_shaft.smv
It is also to note that the position of the capsule's drop from the above capsule game crash movie depends on positioning/timing of hitting the capsule when it spawns (since that drop can spawn far left or right).
https://cdn.discordapp.com/attachments/218520158963105792/344539150743240715/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_opening_capsule_far_right_when_it_spawns_for_drop.smv
Jumps over/through the ceiling in stage 3:
With the jump-kick mechanic using a crouch midair to gain height and distance (by chaining such kicks) during jumps, one can explore the collision-behavior of the ceiling a bit in stage 3 after the downwards climbing sections (if the jump that gets rid of the rope is well-timed while moving upwards at the top of the screen where the character is teleported back down a bit if one goes too high), and it seems that one cannot stand on any part of the ceiling (at least this seems to be true for the parts of the ceiling I could reach, and instead of landing on the ceiling, one will just fall through), and some parts of the ceiling don't allow the character to move sideways through them (i.e. some tiles in the ceiling have walls). In none of the cases I could get past the left wall with a crouchjump-kick near the top of the screen (but in some cases one can get hit by a blue laser and use the animation that happens when the character is shocked to clip through the left wall). And the stompers seem to extend very far upwards (since they still could hit the character in the ceiling even if they were triggered to move downwards by the other character).
https://cdn.discordapp.com/attachments/218520158963105792/344497436628353025/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_another_jump_through_ceiling.smvhttps://cdn.discordapp.com/attachments/218520158963105792/344511697282924545/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_ceiling_clip_in_stage_3.smv
This movie shows how stompers extend into the ceiling (and it would still be like this if the stomper was triggered earlier by the other character).
https://cdn.discordapp.com/attachments/218520158963105792/344543603516899341/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_stomper_extends_far_into_ceiling.smv
At the climb section in stage 3 shown in the following movie, the last bunch of birds will not spawn and the screen will not stop going downwards if one doesn't attack at least 1 of the 2 birds that come after the first 4 birds higher up in the climb, but if one doesn't attack any of those 2 birds and reaches the bottom, one is stuck and cannot progress anymore (because the screen doesn't move anymore). And in the case that one does attack 1 of those 2 birds, then the screen will continue going downwards as long as the bird isn't despawned yet (when it exits the screen at the bottom), and the next set of birds will spawn (at fixed positions relative to the screen's position for at least 1 of them) as soon as the screen movement stops or as soon as a certain height of the screen close to the bottom of the shaft is finally reached (though it might also instead happen as soon as the juggled bird gets its final hit delivered). One can then also see some sprites of birds on screen that one cannot attack yet because they are actually higher up and will take some time to go down (and their sprites will disappear at the bottom of the screen and appear at the top again). And after those birds are finished off, the capsules that normally would spawn at different heights in relation to each other will all be lined up at a specific height near the end of the shaft (probably because this limiting height has priority and stops the capsules that are usually positioned further below from appearing lower than this limit).
https://cdn.discordapp.com/attachments/218520158963105792/344502913713963008/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_bird_climb_messed_up.smv
The following movie shows how a bird clips through the left wall with its attack animation, and is then stuck over there (where one could still hit it) unless it clips back through if it is lured downwards close enough to the bottom of the screen and attacks.
https://cdn.discordapp.com/attachments/218520158963105792/344509361743462402/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_birds_can_dash_past_walls.smv
The fence in the movie extends to the left (past the range of fence sprites), but unfortunately the stomper is in the way, so I couldn't test how far one could climb over to the left, but one would probably anyways stop at the left side of the screen.
https://cdn.discordapp.com/attachments/218520158963105792/344510690956017665/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_cannot_climb_left_past_stomper.smv
A midair crouchjumpkick-chain test in stage 3 into an abyss to get an idea on how long the point in time of respawning can be delayed that way.
https://cdn.discordapp.com/attachments/218520158963105792/344515686489522186/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_delaying_the_respawn_with_Down-jumpkicks.smv
In stage 3, if one jumps and presses Down at any point during the jump (except during a jumpkick or crouchjumpkick animation), the character cannot move sideways anymore until he lands (or until he executes a crouchjumpkick). And the following movie also contains some crouchjumpkick chain tests (going the same direction or alternating the direction each time), and slowdown tests to do a normal fist attack quickly after running in some direction (instead of a jumpkick which normally would happen). And if one jumps and keeps holding Jump after landing, one cannot dash anymore in order to run as long as Jump is held (nor can one jump by pressing the 2nd Jump button, since apparently the 2 Jump buttons act as 1 Jump button, and the same seems to be true for the 2 Attack buttons). And if one keeps holding Jump, lands on ground and presses down, then the character will be ''stuck'' in the crouch pose and cannot move sideways anymore as long as one keeps holding Jump (unless one presses Attack to do a crouchjumpkick).
https://cdn.discordapp.com/attachments/218520158963105792/344521835997822977/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_Down_button_and_jumpkick_boost_tests.smv
When climbing a fence in stage 3, one can execute crouchjumpkicks that move the character upwards and forwards a bit, but the forwards movement is stopped as soon as one (vertically) comes close enough to the fence so that the character just stays in the air for a bit beneath the fence. Though if one falls further, one can move sideways during a crouchjumpkick before the character gained enough height from the crouchjumpkick in order to ''stick in place'' for the rest of the crouchjumpkick animation. One can also do a sideways kick animation on the fence and press Down about the same time to fall from the fence and do the kick animation (and can then still continue with midair crouchjumpkicks).
https://cdn.discordapp.com/attachments/218520158963105792/344526835197018112/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_downkick_fence_climbing_and_travel.smv
Triggering an ellbow attack (due to the midair capsule) while running into the abyss in stage 3, and the 2nd movie shows the same with better timing where one can even reach the laser on the other side (and possibly could land over there if it wasn't for the laser).
https://cdn.discordapp.com/attachments/218520158963105792/344528935029309444/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_ellbow_attack_into_abyss_again_.smvhttps://cdn.discordapp.com/attachments/218520158963105792/344544428721176586/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_triggering_ellbow_attack_while_running_off_cliff_.smv
A fist attack can be executed at the right height shortly before attaching a character to a fence in the ceiling, but the fist attack seems to not be capable of hitting the lever.
https://cdn.discordapp.com/attachments/218520158963105792/344529390035664896/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_fist_attack_before_attaching_char_to_ceiling.smv
Walking into the abyss and starting to run midair in stage 3. And the 2nd movie shows that one can also change the direction midair.
https://cdn.discordapp.com/attachments/218520158963105792/344531615944540160/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_gaining_dash_speed_in_abyss.smvhttps://cdn.discordapp.com/attachments/218520158963105792/344539869269327874/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_running_diff_directions_midair_falling.smv
One can also run into the abyss and do a fist attack midair (after turning around).
https://cdn.discordapp.com/attachments/218520158963105792/344540777730277376/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_running_into_abyss_and_fist_attack.smv
When a character moves into an abyss and respawns, then the speed and animation is kept and i-frames are given.
https://cdn.discordapp.com/attachments/218520158963105792/344541191376994304/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_speed_and_animation_is_kept_when_respawning_and_i.smv
If one gets hit (in this case by fire rings) while running, then the ''dashing'' state of the character is kept, i.e. one doesn't need to press Forwards, release it and re-press it again in order to start dashing (or in order to do jumpkicks) and can just hold Forwards to continue running. And no i-frames are given by getting hit unless one loses a character's life.
https://cdn.discordapp.com/attachments/218520158963105792/344542747459584010/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_speedkeep_after_getting_hit_and_lack_of_iframes.smv
Jumps over gaps (as applications of the longjump mechanic and or midair crouchjump-kicks):
https://cdn.discordapp.com/attachments/218520158963105792/344536914432622592/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_huge_abyss_longkickjump.smvhttps://cdn.discordapp.com/attachments/218520158963105792/344537462493806592/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_jumpkick_float_over_gap.smvhttps://cdn.discordapp.com/attachments/218520158963105792/344538146005843979/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_longjump_over_tarzan_gap.smvhttps://cdn.discordapp.com/attachments/218520158963105792/344538264004329472/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_longjumps_for_more_gaps.smv
The midair crouchjumpkick also allows to run off a platform and jump back onto it.
https://cdn.discordapp.com/attachments/218520158963105792/344537134910406656/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_jumpkick_back_onto_platform_.smv
In stage 3, a running jumpkick allows to get pushed up onto higher platforms without much of a loss of sideways speed.
https://cdn.discordapp.com/attachments/218520158963105792/344537639803682818/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_jumpkick_to_get_onto_higher_platform_smoothly.smv
If one is close enough to a wall like in the following movie, then a character will get attached to a wall and stand on it, and tapping the other direction will make him stand on the same wall but on the other side of the wall. And one can execute those ''whirlwind'' attacks towards both directions on a wall (either away from it or towards it where one will stay in place). And near the bottom of the screen during climb sections or this place, pressing Down (either while walking on a wall or hanging) can make the character go up, which will happen until one reaches a certain height within the screen during the upwards movement in case one holds Down, or in the case one only taps Down bit by bit, one will not stop moving upwards until reaching the top of the screen.
https://cdn.discordapp.com/attachments/218520158963105792/344545433026166814/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_wall_behavior_with_rope.smv
- - -
Stage 4:
It seems that remaining Missiles cannot hurt/hit the rat ship at the end in any way.
https://cdn.discordapp.com/attachments/218520158963105792/344538327816470529/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_missile_doing_nothing_to_rat_ship.smv
- - - - -
Snes9x 1.53 v.7 movie:
Here is a test of a longjump mechanic that i found kind of by accident (which seems to exist in the NES version of this game aswell at least in a similar manner as someone told me afterwards). The longjump is possible once a character dashes to some direction and slows down for a sufficiently long time (and can even have stopped moving entirely and still be able to execute such longjump). The longjump is then done by jumping (for any amount of time, depending on how high the jump shall be) and pressing and holding Forwards at any point of the jump (but the earlier, the further the jump can go). The high sideways speed of this longjump (which seems to max out at a very similar speed as the maximum running speed) is cancelled if one kicks early on during the jump (on the way up before the apex) or turns around (or starts moving towards the background or foreground in stage 1 or 2, which isn't possible in stage 3). If one turns around after dashing to one direction, one cannot execute such jump anymore either (unless dashing to a direction again to ''store'' jump speed, or rather enable sideways acceleration for such longjump).
https://cdn.discordapp.com/attachments/218520158963105792/344516595848183808/Battletoads__Double_Dragon_-_The_Ultimate_Team_USA_dash_longjump_mechanic_tests_.smv
- - - - -
Timestamps (in frame counts) for the published TAS by Whitegastra:
-----
(1883)
1st stop of screen movement, to the right: 1883
(42)
first frame of screen movement after 1st stop: 1925
(546)
2nd stop of screen movement, to the right: 2471
(65)
first frame of screen movement after 2nd stop: 2536
(65)
3rd stop of screen movement, to the right: 2601
(69)
first frame of screen movement after 3rd stop: 2670
(220)
first frame of screen movement after 4th stop at brown robots (neglecting the player induced screen shift): 2890
(175)
first frame of screen movement after 5th stop at 3 purple fighters after brown robots (overtaken by player stopping the screen longer): 3065
(225)
6th stop of screen movement, to the right: 3290
(48)
first frame of screen movement after 6th stop: 3338
(161)
7th stop of screen movement, to the right: 3499
(204)
first frame of screen movement after 7th stop: 3703
(17)
8th stop of screen movement, to the right: 3720
(571)
first frame of screen movement after 8th stop: 4291
(161)
9th stop of screen movement, to the right: 4452
(167)
first frame of screen movement after 9th stop: 4619
(65)
10th stop of screen movement, to the right: 4684
(570)
first frame of screen movement after 10th stop: 5254
(113)
11th stop of screen movement, to the right: 5367
(553)
first frame of screen movement after 11th stop: 5920
(42)
12th stop of screen movement, to the right: 5962
(72)
1st frame of players jaw drop animation: 6034
(667)
1st frame of Abobo's flying animation: 6701
(398)
- - -
first frame of input in level 2-1: 7099
(693)
2nd stop of screen movement, to the right (neglecting the player induced delay): 7792
(531)
3rd stop of screen movement, to the right: 8323
(206)
4th stop of screen movement, to the right: 8529
(131)
last frame of players jaw drop animation: 8660
(675)
first frame of elevator door fully closed: 9335
(407)
---
1st stop of screen movement, to the left at level 2-2 (neglecting the player induced delay): 9742
(302)
2nd stop of screen movement, to the left: 10044
(575)
3rd stop of screen movement, to the left: 10619
(1091)
4th stop of screen movement, to the left: 11710
(130)
last frame of players jaw drop animation: 11840
(1131)
first frame of elevator door fully closed: 12971
(289)
---
first frame of screen movement after 1st stop in level 2-3: 13260
(8001)
1st frame of players jaw drop animation: 21261
(282)
last frame of players jaw drop animation: 21543
(808)
- - -
first frame of screen movement after 1st stop in level 3-1: 22351
(101)
2nd stop of screen movement, to the right: 22452
(220)
3rd stop of screen movement, to the right: 22672
(531)
4th stop of screen movement, downwards: 23203
(63)
5th stop of screen movement, to the right: 23266
(189)
6th stop of screen movement, to the right: 23455
(268)
7th stop of screen movement, to the right: 23723
(97)
8th stop of screen movement, to the right: 23820
(113)
9th stop of screen movement, to the right: 23933
(138)
10th stop of screen movement, to the right: 24071
(157)
11th stop of screen movement, to the right: 24228
(340)
12th stop of screen movement, to the right: 24568
(94)
first frame of screen movement downwards after 12th stop: 24662
(1279)
12th stop of screen movement, downwards (with movement to the right): 25941
(363)
---
1st stop of screen movement, to the right at level 3-2: 26304
(529)
2nd stop of screen movement, to the right: 26833
(257)
3rd stop of screen movement, to the right: 27090
(169)
4th stop of screen movement, to the right: 27259
(443)
5th stop of screen movement, to the right: 27702
(227)
first frame of screen movement after 5th stop: 27929
(672)
first frame of screen movement downwards after 5th stop: 28601
(2104)
6th stop of screen movement, downwards: around 30705
(188)
7th stop of screen movement, downwards: around 30893
(676)
8th stop of screen movement, downwards (with movement to the right): 31569
(2212)
---
first frame of screen movement, downwards at level 3-3: 33781
(1365)
1st stop of screen movement, downwards: 35146
(545)
first frame of screen movement, to the right (at the sideways rope travelling part): 35691
(498)
2nd stop of screen movement, to the right: 36189
(209)
3rd stop of screen movement, to the right: 36398
(472)
first frame of screen movement, downwards after 3rd stop: 36870
(1980)
first frame of screen movement, to the right after garbage dodging on rope: 38850
(785)
1st frame of players jaw drop animation: 39635
(202)
last frame of players jaw drop animation: 39837
(666)
1st frame of 3-3 boss losing his weapon: 40503
(126)
first frame of screen movement after 3-3 boss: 40629
(4371)
- - -
first frame of rat ship moving to the left at start of 4-2: 45000
(640)
first frame of inner rat ship explosion sprite appearing: 45640
(876)
- - -
1st stop of screen movement, to the right at level 5-1: 46516
(394)
2nd stop of screen movement, to the right: 46910
(128)
3rd stop of screen movement, to the right: 47038
(280)
4th stop of screen movement, to the right (neglecting ladder climb): 47318
(145)
5th stop of screen movement, to the right: 47463
(383)
first frame of space ship door closed: 47846
(1344)
6th stop of screen movement, to the right at the dynamite throwing guys: 49190
(712)
first frame of screen movement to the right after the dynamite throwing guys: 49902
(244)
first frame of space ship door closed: 50146
(1675)
7th stop of screen movement, at the multi ninja ambush: 51821
(382)
---
1st stop of screen movement, to the right at level 5-2: 52203
(130)
2nd stop of screen movement, to the right: 52333
(369)
3rd stop of screen movement, to the right: 52702
(20)
4th stop of screen movement, to the right: 52722
(380)
5th stop of screen movement, to the right: 53102
(22)
6th stop of screen movement, to the right: 53124
(462)
7th stop of screen movement, to the right: 53586
(411)
first frame of space ship door closed: 53997
(1444)
first frame of space ship door closed: 55441
(2302)
- - -
first frame of players lying on ground from falling at level 6-1: 57743
(262)
1st stop of screen movement, to the right: 58005
(168)
2nd stop of screen movement, to the right: 58173
(289)
3rd stop of screen movement, to the right: 58462
(295)
4th stop of screen movement, to the right: 58757
(122)
5th stop of screen movement, to the right: 58879
(161)
1st frame of players jaw drop animation: 59040
(82)
last frame of players jaw drop animation: 59122
(2275)
first frame of screen movement to the right: 61397
(440)
- - -
1st stop of screen movement, to the right at level 7-1: 61837
(243)
first frame of screen movement after 1st stop: 62080
(23)
2nd stop of screen movement, to the right: 62103
(202)
first frame of screen movement after 2nd stop: 62305
(23)
3rd stop of screen movement, to the right: 62328
(355)
first frame of screen movement after 3rd stop: 62683
(18)
4th stop of screen movement, to the right: 62701
(575)
1st frame of players jaw drop animation: 63276
(223)
last frame of players jaw drop animation: 63499
(717)
frame of last input: 64216
-----
Timestamps for the Test-TAS above (in comparison to the published TAS):
-----
(1862|-21)
1st stop of screen movement, to the right: 1862
(21|-21)
first frame of screen movement after 1st stop: 1883
(546|-0)
2nd stop of screen movement, to the right: 2429
(66|+1)
first frame of screen movement after 2nd stop: 2495
(65|-0)
3rd stop of screen movement, to the right: 2560
(28|-41)
first frame of screen movement after 3rd stop: 2588
(186|-34)
first frame of screen movement after 4th stop at brown robots: 2774
(160|-15)
first frame of screen movement after 5th stop at 3 purple fighters after brown robots: 2934
(217|-8)
6th stop of screen movement, to the right: 3151
(47|-1)
first frame of screen movement after 6th stop: 3198
(161|-0)
7th stop of screen movement, to the right: 3359
(146|-58)
first frame of screen movement after 7th stop: 3505 (3557 with knee finisher)
(17|-0)
8th stop of screen movement, to the right: 3522
(567|-4)
first frame of screen movement after 8th stop: 4089
(228|+67)
9th stop of screen movement, to the right (neglecting the player induced delay): 4317
(36|-131)
first frame of screen movement after 9th stop: 4353
(65|-0)
10th stop of screen movement, to the right: 4418
(568|-2)
first frame of screen movement after 10th stop: 4986
(113|-0)
11th stop of screen movement, to the right: 5099
(549|-4)
first frame of screen movement after 11th stop: 5648
(42|-0)
12th stop of screen movement, to the right: 5690
(72|-0)
1st frame of players jaw drop animation: 5762
(664|-3)
1st frame of Abobo's flying animation: 6426
(343|-55)
- - -
first frame of input in level 2-1: 6769
(666|-27)
2nd stop of screen movement, to the right (neglecting the player induced delay): 7435
(439|-92)
3rd stop of screen movement, to the right: 7874
(228|+22)
4th stop of screen movement, to the right: 8102
(132|+1)
last frame of players jaw drop animation: 8234
(627|-48)
first frame of elevator door fully closed: 8861
(396|-11)
---
1st stop of screen movement, to the left at level 2-2 (neglecting the player induced delay): 9257
(298|-4)
2nd stop of screen movement, to the left: 9555
(526|-49)
3rd stop of screen movement, to the left: 10081
(944|-147)
4th stop of screen movement, to the left: 11025
(131|+1)
last frame of players jaw drop animation: 11156
(1011|-120)
first frame of elevator door fully closed: 12167
(284|-5)
---
first frame of screen movement after 1st stop in level 2-3: 12451
(7001|-1000)
1st frame of players jaw drop animation: 19452
(283|+1)
last frame of players jaw drop animation: 19735
(753|-55)
- - -
first frame of screen movement after 1st stop in level 3-1: 20488
(92|-9)
2nd stop of screen movement, to the right: 20580
(130|-90)
3rd stop of screen movement, to the right: 20710
(597|+66)
4th stop of screen movement, downwards: 21307
(58|-5)
5th stop of screen movement, to the right: 21365
(192|+3)
6th stop of screen movement, to the right: 21557
(266|-2)
7th stop of screen movement, to the right: 21823
(28|-69)
8th stop of screen movement, to the right: 21851
(110|-3)
9th stop of screen movement, to the right: 21961
(114|-24)
10th stop of screen movement, to the right: 22075
(145|-12)
11th stop of screen movement, to the right: 22220
(274|-76)
12th stop of screen movement, to the right: 22494
(95|+1)
first frame of screen movement downwards after 12th stop: 22589
(1279|-0)
12th stop of screen movement, downwards (with movement to the right): 23868
(327|-36)
---
1st stop of screen movement, to the right at level 3-2: 24195
(492|-37)
2nd stop of screen movement, to the right: 24687
(258|+1)
3rd stop of screen movement, to the right: 24945
(107|-62)
4th stop of screen movement, to the right: 25052
(207|-236)
5th stop of screen movement, to the right: 25259
(136|-91)
first frame of screen movement after 5th stop: 25395
(256|-416)
first frame of screen movement downwards after 5th stop: 25651
(1715|-389)
6th stop of screen movement, downwards: 27366
(139|-49)
7th stop of screen movement, downwards: 27505
(656|-20)
8th stop of screen movement, downwards (with movement to the right): 28161
(1920|-292)
---
(...)
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
RIP every SM TAS up to now ever xD. Moonwalk for the win.
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
Yes to both questions. The consensus is that it can be opened from the left side only in PAL like this https://www.youtube.com/watch?v=ceYDHO82T0k , and that it can in both versions be skipped with the indirect special case of the greyout-glitch that I call indirect G-Mode (such that the room can be entered without the gate even spawning to begin with) and looks like what is done around 25:40 in this https://www.youtube.com/watch?v=dXmoMcKuop0&feature=youtu.be&t=1541 .
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
The In-Game Timer is objectively less accurate in regards measuring time than real-time, since the for SM available Arbitrary Code Execution allows to manipulate the IGT to any value or behavior one wants. Good luck on manipulating the real-time in any way. Even though the IGT may be emulated perfectly (on newer emulators, not snes9x 1.4), which isn't proven either, problems like this are not an issue for real-time purposes. And as mentioned before, input precision definitely needs to be higher if you want to optimize real-time as opposed to IGT, so your ''higher move precision'' statement is just false.
And in regards timing independency, the higher the accuracy of emulators (or versions) the more the real-time optimizations will converge to the same aswell, not just for the IGT for which this may happen faster or earlier in regards emulation progress due to it being more lenient in regards emulation errors.
Cpadolf isn't defending IGT either, even though he optimized it.
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
But there is a difference in the gravity of influence on the aspect of entertainment between messing with frames in every room or turning the screen back to being visible. So his argument holds that far. As in the IGT run would be by far more not an IGT run anymore than the RTA run wouldn't be an RTA run anymore.
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
You mean ''as it is the case with Snes9x'', not with IGT which is unrelated to the emulation accuracy of the emulator. But this higher accuracy also means the form or shape of the abstract optimization problem given to a TASer on Lsnes is much closer to what the optimization problem would be if one had a perfect accurate emulator environment. And thus, approaching a solution of such far more similar optimization problem allows for results that would aswell be closer to the results one would obtain under perfect accuracy circumstances.
It is true.
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
Saturn can you go into more details and elaborate your understanding of ''more precise movement'' and ''greater mobility, more variety, faster boss fights (in legit conditions for any%) '' ?
I would assume by greater mobility and variety, you mean for given rooms, the set of IGT-optimal inputs through such room is much larger and thus easier to obtain and less unique, because so many nuances don't count towards IGT and can be neglected. This larger set of input-strings through a room at the same IGT limit would allow for slightly more freedom in regards entertainment, I give you that. I mean obviously the movement a TASer has to find is more precise and narrowed down further if one goes for real-time as opposed to IGT in SM, which is the opposite of what I think you wanted to express. And the timing method has no influence on the game's mechanics, as they will not change if you change the way you measure time, so inputs for some trick have a leniency or precision independent of this.
Regarding ''faster boss fights'', what senseful timing method(s) would result in an IGT optimized boss fight being (non real-time) faster than a real-time optimized boss fight?
Lag isn't something completely solely emulator dependent. If you go through a game, then there will happen hundreds of instructions that are executed in the code, and if there is too many to put them all into 1 frame, then lag starts happening, with remaining instructions being processed later. And there is some core of instructions that can cause lag which corresponds to the game's code, which reduces the seemingly perceived arbitraryness of optimizing lag with respect to a given emulator. There will be instructions that are shared among them all, given sufficient accuracy. And the more accurate, the larger the relative amount of ''natural'' lag that isn't induced by the emulator used. Correct me if I'm wrong on this.
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
Well, in this case, the difference between emulators is just that Lsnes is simply superior in accuracy than snes9x1.43, considering it even allows for console verification of some games. And if there would later be an even better emulator, then it wouldn't be so complicatd to port an Lsnes TAS onto it because of the input editor feature that Lsnes provides. It wouldn't change much anymore.
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)
Joined: 10/29/2014
Posts: 176
Location: Bavaria, Germany
I don't think a fixed 100% (real-time) route has been confirmed in any way (may it be via movie files, existing TASes, or time-comparisons/-estimates) so far. There is so many directions available for the run to spread at around early to mid game, so there is still a lot of work to do.
In that case, for coordination and management reasons, it probably would be best to discuss and keep track of tasks and progress on Discord where most people relevant to 100% TAS routing/tests are located already.
It is about time to respond to this, so the following is on the topic of the relevance of the underflow on SM hack TASes:
Now I could say I quickly made a list of all SM hacks for this purpose and looked through all of them using the game's editor to check through the rooms in order to estimate and compare the value of hacks for TASing purposes, but I already had this prepared and updated (for unrelated completionist purposes) for a few months:
https://cdn.discordapp.com/attachments/218520158963105792/286378301478666250/List_of_all_existing_rated_SM_hacks.txt
Considering that I actually did check through those hacks in order to determine the set of items in each hack that constitutes ''non-major-glitched max%'', and since I completed a bit more than 400 of these by now in max% manner (outside of a few TAS-only items), I'd consider myself sufficiently knowledgeable w.r.t. SM hacks to give a proper overview.
For some of these hacks, I even went as far as to prepare (non-major-glitched) any% TAS notes for the future of SM (hack) TASing (aswell as for current TASers such as Hoandizi). I basically take the candy for myself (i.e. look through the rooms in the editor to check for sequence breaks and routes, and test specific tricks within the large range of ideas and concepts that are waiting for application, and then document that) and leave the hard TASing and optimization work behind for them ;P
Those notes can be found here (and are worked out further for some hacks than others, since it is a WIP): http://deanyd.net/sm/index.php?title=ED%27s_stuff
First of all, I can only go over existing hacks, not future hacks, obviously, so that would be another aspect not to forget about. Note that the list of SM hacks merges hacks that are just different versions of each other (i.e. I don't differentiate between all the versions of a given hack).
Now, the underflow only needs to be checked for hacks that have chances to be accepted at TASVideos, since outside of TASVideos it is up to the TASer what he wants to include or exclude from the TAS and what rules to use. So I checked the rules and requirements for hacks on TASVideos which can be found here: http://tasvideos.org/MovieRules.html
Those rules mainly say that the hack must
(i) be of high quality
(ii) be notable/rather well-known
(iii) allow for a TAS that is far separated gameplay-wise from other TASes of games using the same (or very similar) engine (which excludes purely cosmetic hacks)
(iv) allow for a TAS of high quality
So I took the hacks among the top 2 ranks from my list and looked into those (but didn't consider hacks that are even lower rated), with the following result:
(Incomplete hacks and hacks that are very close to the original game (so-called ''half-hacks'' in which the room and map layouts arent changed) are taken out of the list.)
Hacks for which Draygon Underflow is rather irrelevant for classical branches that cover more content such as non-major-glitched any% and max%:
(''-'' means that Draygon doesn't exist in the hack)
Advent (underflow cannot be done due to missing powerbomb items)
Super Zero Mission (Draygon is the final boss right before the escape which doesn't allow for a route-change)
Mega-Metroid X-2 (the any% route already skips the game almost entirely, and in the max% case, Draygon is in the final room before looping back to the ship for escaping the planet)
Phazon (Draygon is in the end-game area that is accessible and unlocked after all previous tasks are done; see Hoandizi's TAS for reference)
Oxide (powerbombs for underflow are gotten far away from Draygon and one would already have ammunition for Ridley at that point and no go back to Draygon beforehand for anything, and only Tourian remains after Draygon)
Cliffhanger (if underflow is skipped, a few more super missile packs are gotten instead on the same route for any%, and Draygon would be the last boss before Mother Brain in here aswell; see my routing notes as reference)
Y-Faster (Draygon can be skipped in any%, and getting more ammunition for max% isn't helpful, since all bosses are dramatically weakened)
A new mission -
So Little Room -
Digital Cube -
Containment Chamber -
Retroid -
Exia -
Ice Returns -
Snowglobe -
So Little Garden -
Darkholme Hospital -
So Little Collab -
Angry Fire Chozo -
Contention -
Grand Prix 1 -
Grand Prix 2 -
So Little Items -
So Little Time -
Sunshine Oddity -
Black Plague -
B2-TW -
Cider -
Equilibrium -
Gloomy Alternative Future Mystery -
Hallow Eve -
Hauntroid -
SMConflict -
SMChallenge -
Temporus -
Wet Winter -
Hacks for which Draygon Underflow could have an influence on any% or max% branches: (Most of these hacks are TASed already, and usually, hacks without an existing TAS are TASed)
Lost World (Draygon is too far out of the way for any% which skips the boss, but for max% the underflow could maybe influence the route at mid-game; see my tas route notes for reference)
Hyper (uses custom mixed ammunition pool, so it is unclear if underflow would be applicable, even though Crystal Flash still can be done)
Eris (there is an any% TAS by Kriole that can help to detect a possible influence)
Project Base (there is an any% TAS by Taco that can help to detect a possible influence)
Revolution Ex (there is an any% TAS by Hoandizi that can help to detect a possible influence)
Escape 2 (there is an any% TAS by Zakem66 that can help to detect a possible influence)
Redesign (there is an any% TAS by Saturn and 100% TAS by Hoandizi that can help to detect a possible influence)
Ice Metal (there is a max% TAS by DCR that can help to detect a possible influence)
Stardust (there is an any% TAS by Namespoofer and Hero of the Day that can help to detect a possible influence)
Z-Factor
New Wet Dream
Arrival
- - -
In general, for a hack to have underflow causing some more major difference, it´d need to have Draygon in the first place aswell as Crystal Flash ammunition needs to be available beforehand, and it should be possible to reach Draygon rather early on, and the hack would need to have parts afterwards at which ammunition plays a more important role so that the underflow can have an impact.
Hacks of which I think that TASes of them possibly could be accepted on TASVideos (according to the rules for hacks, considering that the popularity mentioned at (ii) is a time-dependent factor) as SM-engine based games, and not only be listed mostly next to other TASes on Hoandizi's youtube channel:
Super Zero Mission (Normal/Hard)
So Little Garden
Snowglobe
Darkholme Hospital
So Little Collab
Sunshine Oddity
Hallow Eve
Y-Faster
Eris
Hyper
Redesign
Escape 2
Lost World
Phazon
Arrival
(And with this, I'm not saying TASVideos should be filled with TASes of these, but I'm seeing it as if there was no SM hack TAS published yet on TASVideos, and what hacks could in such a situation have a chance to be accepted.)
collect, analyse, categorise.
"Mathematics - When tool-assisted skills are just not enough" ;)
Don't want to be taking up so much space adding to posts, but might be worth mentioning and letting others know for what games 1) already some TAS work has been done (ordered in decreasing amount, relative to a game completion) by me and 2) I am (in decreasing order) planning/considering to TAS them. Those would majorly be SNES games (if not, it will be indicated in the list) I'm focusing on.
1) Spanky's Quest; On the Ball/Cameltry; Musya; Super R-Type; Plok; Sutte Hakkun; The Wizard of Oz; Battletoads Doubledragon; Super Ghouls'n Ghosts; Firepower 2000; Brain Lord; Warios Woods; Super Turrican; The Humans.
2) Secret Command (SEGA); Star Force (NES); Hyperzone; Aladdin; R-Type 3; Power Blade 2 (NES); Super Turrican 2; First Samurai.
(last updated: 18.03.2018)