Submission #8694: Merl_'s PICO8 Demon Castle in 02:19.27

PICO-8
baseline
(Submitted: demon-castle-1.p8 demon-castle-1)
libTAS 1.4.4
8356
60
1950
PowerOn
Submitted by Merl_ on 10/22/2023 9:08 PM
Submission Comments
Demon Castle is a castlevania-inspired Pico-8 game. Your goal is to stop an evil sorcerer from summoning an ancient demon to destroy the world. Obviously, time is of the essence here, so the TAS storms through all four stages in record time, plowing through enemies and bosses to beat the game with an in-game time of just 2:23, four seconds faster than the RTA world record.

Game objectives

  • Emulator used: libTAS 1.4.4
  • Reach the castle and kill the demon as fast as possible
  • Played on the hardest difficulty and gets the bad ending
  • Manipulates luck
  • Takes damage to save time
  • Ends inputs early

Comments

After completing each level, there is a split path, and the player must choose which path to follow. Depending on your choices, there are three different paths you can take to the castle. Once you choose the top path, you are locked into the top path, and if you choose the bottom path twice in a row, you are locked to the bottom path. The bottom entrance to the castle is very fast, while the top path is slow and wastes a lot of time waiting for pendulum cycles. As a result, it's faster to choose the bottom path each time, even though stages two and three are slightly faster if you go the top route.
This TAS is played on hard mode, which reduces your health and adds additional enemies in tricky spots. This actually makes the TAS faster, since the extra enemies are used to save time in the castle, and reduced health is obviously no problem for a TAS.

Stage by stage comments

Stage 1

Zombies can be killed in one hit, so I clear them out pretty easily in the first room. I skip a set of stairs by doing a precise jump off the first platform. The last zombie is barely out of range of the whip, so I slow down for two frames to let it pass under me so I don't take damage. Getting hit normally deals knockback, but on stairs it has no effect. However, after beating the boss, your health has to refill to full before the next level can start. This refill is slow, so I want to already be at full health at the end of each level. I have to wait for the elevator cycle on the next screen, so I mess around with the enemies for a bit before heading to the bossfight. I time my whips to hit the boss on the first frame it becomes vulnerable, and once it's dead I collect the heart in midair to end the level as soon as possible.

Stage 2

This level requires a lot of luck manipulation. The slimes bounce in random directions, at random times, with random heights and distances. If you get bad RNG, it can be difficult or impossible to clear each room without slowing down, especially on hard mode. Whipping enemies and taking damage cause random particles to appear, so I attack enemies at specific times to get the best RNG. The slime boss behaves just as randomly as the other slimes in the level, so I manipulate it to jump towards me so I can start hitting it sooner.

Stage 3

This first room is pretty basic. The second room has a fire-breathing enemy that normally shoots you when you reach the stairs. These enemies can't shoot fire while taking damage though, so I whip it repeatedly to prevent it from firing. Just like in the first stage, there's a mummy in the way that I can't reach with the whip. Waiting for this one to walk under me is very slow in this case, so I just take the hit since it won't knock me back on the stairs. In the next room, I jump in order to avoid a fireball, and walk down the stairs to the elevator room, then down to the final room before the boss. There's a secret path on the right side which contains a chicken you can use to get health back, but I just use the path to skip walking down the stairs. I do a "stair boost" at the end of this room. When you press up to walk up or down stairs, the player snaps to where the stairs are. If you then immediately walk off the stairs, the "snap" can save a few frames of walking. I kill the bat and then do another stair boost to save time in the overworld.

Castle

It's barely possible to make it onto the first moving platform with a frame perfect jump. Hard mode causes floating heads to spawn in the first room of the castle. I need to damage boost using one of them to get onto the second platform early. Floating heads spawn at regular intervals on the right edge of the screen, but the height they spawn at is random. I stand as far left as possible so that the floating head spawns as close to the platform I'm on as possible, and manipulate a high spawn. Once on the second platform, I walk off of it in order to get a speed boost, then walk upstairs. The next room is a very cramped hallway filled with enemies, but I get through without taking damage. The demon boss is interesting to optimize. It's one of the few enemies in the game that can be "crit". The demon has very short invulnerability frames, so if your whip connects with the demon as soon as you use it, you can deal two damage per attack. You can kill the boss in just five attacks this way, but I actually attack six times and only get four crits. The problem is that you have to spend a lot of time waiting at the start of the fight for the demon to come down, so I attack immediately to get two non-crits before critting the remaining hits. I end inputs very early by getting a damage boost, so that my whip stays in the demon's hitbox for long enough to crit it. Taking damage doesn't matter in this fight since you don't get a refill.

Other comments

It might be possible to improve this TAS by adding more damage boosts, but I tried damage boosting in several other places and couldn't get it to work. 2:22 might be possible if you damage boost using the bat in stage one to skip the elevator, or using a slime in stage two to get onto the platform that leads to the seal and skip the elevators, or by luring a bat to the stairs before the final boss.
Note: I found a way to end inputs even earlier. Here's the updated ltm: https://tasvideos.org/UserFiles/Info/638336813566637923

InfoTeddy: Claiming for judging.
InfoTeddy: Replaced file with 8 frame improvement.
InfoTeddy: Delaying due to issues with sync.
InfoTeddy: Sync issues have been resolved thanks to fsvgm777.

InfoTeddy: Despite the sync snafu I had, this is a pretty great movie to watch. Accepting to Standard.
Note for syncing: Make sure that in the PICO-8 config (in ~/.lexaloffle/pico-8/config.txt), you have foreground_sleep_ms 5 instead of any other value for foreground_sleep_ms.
fsvgm777: Processing.
Last Edited by fsvgm777 on 11/9/2023 7:44 AM
Page History Latest diff List referrers