Submission #9027: Flip's Genesis Earthworm Jim 2 in 19:56.52

(Link to video)
Sega Genesis
baseline
Bizhawk 2.6.3
71699
59.922751013550524
118143
PowerOn
Earthworm Jim 2 (USA).md
Submitted by Flip on 4/21/2024 5:00:19 PM
Submission Comments
This is an improvement of 4706 frames (78 seconds) over the previous movie by YamiAmarillo. This is achieved through new glitches, avoiding more of the speed-inhibiting ground, general optimisation techniques and better health management.

Game objectives

  • Emulator used: Bizhawk 2.6.3 (Syncs on latest versions)
  • Plays on easiest difficulty to remove additional Puppy Love levels
  • Manipulates luck to save time
  • Takes damage to save time

Improvements

LevelFlipYamiAmarilloDifference
Anything but Tangerines41844395-211
Lorenzen's Soil47585395-637
Puppy Love Part 11010310262-159
Jim's now a Blind Cave Salamander26934509-1816
Flying King25012691-190
Puppy Love Part 21180112401-600
Udderly Abducted40064048-42
Inflated Head46484683-35
ISO 900023272482-155
Puppy Love Part 31208912767-673
Level Ate75637647-84
See Jim Run, Run Jim Run43644463-99

Tricks

Double Jumps

Quickly cancelling a jump to initial a snot swing can allow for a jump immediately after, thereby allowing for an overall greater height. The ability to use is heavily dependent upon the ground directly underneath Jim, for example this cannot be used when jumping over pits where there's no ground underneath Jim. On the other hand, a 45 degree angle slope can even allow for triple or quadruple jumps in this fashion, but since the slope is at such a high angle anyway this doesn't actually gain any relative height, but it still can be used to avoid the slow walking speed which would otherwise be forced upon such inclines.

Snot Swing

Launching a Snot Swing will squash Jim's hitbox slightly, allowing him to squeeze through tight gaps for useful skips.

Ending Sequence Manipulation

There are up to four potential ways to end the level, dictated by the current RNG value. Getting the wrong one will waste a lot of frames. The easiest way to manipulate these is to shoot Jim's weapon to cycle through RNG to a more favourable one, which is why a few levels will end with a few pistol blasts.

New Tricks

Early Control

A few levels begin with Jim falling to the ground, with directional controls being locked. Simply opening the parachute can regain control of Jim instantly, and as long as the parachute isn't held for too long, Jim will resume falling under the normal physics.

Parachute Cancels

Running/jumping has velocity 3, vertical jumps 2, with the parachute speed alternating between 2/3. Once the parachute has been used, the airborne velocity will be stuck on its alternating 2/3 pattern. Therefore, we want to minimise use of the parachute wherever we can, as it provides as a slower means of transport.
What I have discovered however is that once Jim is falling sufficiently fast, opening a parachute will reset his vertical velocity as intended, but instantly cancelling it with a whip attack will negate the override for the horizontal slowdown, allowing us to still move forward at the previous speed. As it requires Jim to be falling sufficiently fast in order to activate, it does mean that a bit of extra room is required and thus not every use of the parachute can be negated this way.

Shot Cancels

Shooting a weapon can be immediately cancelled by doing a vertical jump, therefore giving at most a horizontal speed of 2. What was previously overlooked is that doing a combined jump/whip attack will regain control with the maximum speed of 3 instead. This can even be used on chains, periodically dropping off order to temporarily benefit from airborne velocity for a few frames, which for some reason only works when travelling in an easterly direction.

Level Commentary

01 Anything but Tangerines

More nooks and crannies in the level geometry are jumped over, avoiding the slowdown which was caused in the previous movie. Better navigation across granny staircases avoided unnecessary slowdown when off screen. Immediately after, parachute cancels are used to float down to the next area without any slowdown.
Better jumps through the out-of-bounds darkness area onto the ledge, and the chain is now dropped off sooner due to how much slower it is for general movement. Afterwards, no time was wasted needing to slowly manipulate the aliens to drag them to the final area, since the Bob Despawn glitch is now done by having homing missiles on screen instead.

02 Lorenzen's Soil

Shot Cancels used throughout the level for faster travelling. Each section of land can only be destroyed every so often, and so shots were strategically scattered when approaching a section wherever possible, whereas the previous movie frequently just waited to get to a destination and then began drilling the entire thing in one go.
Using a second snotswing is faster when ascending the right hand side, and there's now a new floor skip going up. A few better tunnels gets helps us with the rest of the level, and now the final boss is properly optimised to be killed without any delays.

03 Puppy Love Part 1

Oh dear god, it's the the first of the dreadful Puppy Love levels, the longest and most annoying levels to TAS. Here we have Psycrow with seemingly arbitrary instructions to just randomly chuck Puppies wherever he wants, for which Peter will aggressively attack us if we fail to rescue enough. This means that we need to balance sacrifices against our remaining lives and resulting health management, whilst trying to figure out if it even makes the slightest bit of difference in the long run.
Thankfully Part 1 is the most deterministic of them, as being the introduction level it follows more of a strict pattern than the other ones do, with the least (but albeit still plenty!) of randomness. By this point in the creation of this TAS I managed to just about scrape through the level through trial and error, finding a working solution without extensive knowledge on the inner workings of the level. This was made easier due to taking one more suicidal hit from Peter, effectively trivialising a lot of the rounds through mass genocide.

04 Jim's now a Blind Cave Salamander

Whilst the game tries to maintain a solid border around all of the edges, there is the occasional overlooked corner with a chunk missing. This is just enough to allow Jim to pass through whilst his invincibility shield holds. Each wall pushes Jim away after getting hit, and there isn't enough time to just fly back into the same spot, and so clever use of bumpers is needed to project ourselves over from a different wall.
This allows for the new sheepless route, a significant improvement over the previous TAS and even gets hurt fewer times in the process.

05 Flying King

The first rocket is triggered 92 frames sooner to minimise slow camera panning at the start. All rockets in this level set Jim to the same high speed, but they are not the same distance apart from each other, and thus they do not all have the same usage. To optimise travel here, we need to control when each one is triggered on screen, to prolong the ones which are travelling at the highest velocity upon succession, and attempt to minimise the ones which decay the most by the time the next one is triggered.
Given that each rocket get progressively further apart, this means that each rocket becomes less important than the previous, and thus all other rockets are triggered as late as possible (or at least, the best possible during bomb manipulation) in order to get maximum use out of the very first initial burst of speed. Proper use of rockets in this fashion saves a nice 180 frames in the main journey.
Afterwards, the snot section is really laggy, and shooting has a bad habit of slowing the game down. All bullets and enemies are handled properly to eliminate all prior lag reduction, saving a few more frames too.

06 Puppy Love Part 2

This is where previous research into Puppy Love really becomes important. The difficulty level spikes up significantly here, as the locations and frequency of puppy throws are now subject to wild fluctuations, and it became just about impossible to try to navigate through by guesswork alone.
During the judgment of the previous TAS, research began into the nature of the levels to assist with understanding how to optimise them, which has culminated into the Lua scripts made by r57shell/Feos, which had to have a quick update during the creation of this TAS to enable them to work properly on the relative emulator versions. These revealed that the game works off a main series of instructions, with a periodic timeout variable showing when to execute the next chunk of code, with the occasional call to a randomised subroutine. Each chunk of instructions will be with concluded with an 'End' command, which waits for all other activities to cease before moving on. Please see the LUA script encode for an example.
This helped identify which puppies will not save any time if sacrificed, as it's only the final ones in each wave which are effectively slowing us down. However, each bounce that a puppy does on the trampoline will give an RNG shift, which means that even if we're planning on killing certain puppies in a wave, it may still prove useful to bounce them one or two times before accidentally forgetting about them purely for the purpose of RNG manipulation. Even if killing a puppy won't cause the next wave to be started sooner, not having to bounce it across may mean a more favourable RNG call for the next sections, and so quite a few possibilities need to be tested across all 12 random calls.
Puppy Love 2 in particular took the most amount of time to TAS, as the preceding level does not end with the usual see-saw animation. Thus, it gives Jim free reign to shoot all he wants to cycle through RNG as much as possible, giving dozens of initial seeds to try for the main level, each of which requires hundreds of permutations to check for who to sacrifice and when. Definitely a devilish job which would not be possible without the understanding provided by the prior work done, and so an extra special thanks to Feos and r57shell for their hardwork.

07 Udderly Abducted

Double jumping down into first chasm gives a quick save due to falling from a greater height. Manipulation of X coords via parachute sets Jim up to be in a better position for the major skip to get past the first cow shed blockade without the need to stop. Double jumps done much smoother across the rest of the level for smoother travel getting up to subsequent ledges.

08 Inflated Head

Collisions will only give boosts during certain timings of Jim's animation cycles, and so we cannot simply crash into every light bulb at the earliest opportunity, but in general a few more boosts were utilised this time compared to the previous TAS.

09 ISO 9000

Early Control still allows for falling at max speed, and a short mid-air 'run up' is used for a higher X velocity. Jumping through the first hole was done using the parachute floating into the gap on the way in, rather than landing and needing to waste time accelerating in order to overcome the horrible ice physics on the ground. This therefore also allows for a faster X velocity when falling down to the second tier.
When dropping down to the third tier, we don't waste time landing on the lower section first, as a few parachute cancels give just enough airborne advantage to make it over the cabinets. Next, when falling down to the fourth tier, parachute cancels were used to fall from a greater height when dropping around the next corner. Finally, after falling through to the last section, it's faster to skip the first snot swing and just slowly parachute to the second one.

10 Puppy Love Part 3

For whatever reason, despite this level being the longest of the three it certainly was not the most difficult to TAS. The particular set of randomised subroutines available in this level are nowhere near as hectic as they were in the previous level, as all timer modifications work as intended and I was fortunate enough to manipulate a few really short RNG calls in succession.

11 Level Ate

A few more of the slow slopes were correctly jumped over, for a few frames saved. This time, we elect to skip collecting the 3-Finger Gun which saves 10 frames jumping over, but it means that we're now stuck with Homing Missiles for the rest of the level. No problem though, as we can use these to our advantage.
By shooting homing missiles ahead of us, we can have them attack the eggs (once on screen, as they can't destroy anything not visible), which gives Jim a patch of safe ground to land on. This negates the slow damage/parachute speed which would otherwise hold us back when crossing the hotplates, thus regaining maximum speed as early as possible. Additionally, the chain section is parachuted through for another huge saving.
Unfortunately, each homing missile costs 1 extra frame to damage Flaming Yawn, thus creating a 12 frame loss on the boss fight, but given the huge savings across the hotplates in the previous sections it still represents a saving overall.

12 See Jim Run, Run Jim Run

Correct use of Shot Cancels removes many of the slowdown which was present in the previous TAS. A few more slow slopes were correctly jumped over, and better double jumps negated the use of parachute in a few places.
During the middle section, it turns out that using the snot swing is faster than using the booster, and the final section utilises one extra booster for a nice saving.

nymx: Claiming for judging.
Last Edited by nymx 11 days ago
Page History Latest diff List referrers