ZX Spectrum - Castlevania: Spectral Interlude "100%" in 34:33.12

About the game

Castlevania: Spectral Interlude is a Castlevania fangame for the ZX Spectrum, developed by Rewind and released in 2015. It mostly pays homage to the classic Castlevania games of the NES era, particularly Simon's Quest, but also takes on elements from later "Metroidvania"-style titles in the series.
Regarding the plot/timeline, the game is set in the early 1800s, a few decades after Symphony of the Night, with the plot aiming to explain the disappearance of Richter Belmont and the Belmont clan after said game. The protagonist of the game is Richter's son, Simon Belmont (named after his ancestor of classic Castlevania fame), who with the help of sorcerer Joseph aims to remove Dracula's evil influence on the world by collecting demonic altar pieces, summoning Dracula, and whipping him to death as usual. However, some things don't go exactly as planned...

About the run

Game objectives

  • Emulator used: BizHawk 2.3
  • 100% completion
  • Best ending
  • Uses hardest difficulty
  • Heavy luck manipulation
  • Takes damage to save time
  • Unofficial game

Goal

The goal of this movie is 100%/full completion of the game. There are quite a few factors of (full) completion for this game, so this movie aims to achieve all of the following:
  • Collect all 28 Altar Pieces
  • Defeat all 7 bosses
  • Get all 6 boss items
  • Get all 9 Health upgrades (HP maxes at 48)
  • Get all 7 Heart upgrades (hearts max at 50)
  • Get all 8 Metallic Plates
  • Apply all 8 Metallic Plate upgrades to the whip
  • Get all 6 subweapons
  • Get all other town upgrades (warp shrine, 2 map enhancements)
  • Complete the map by filling in all map tiles (visit every room)
  • Get the "true" ending (trigger Death event)

Tricks/Notes

Lag/frame dropping

  • The game handles lag, or laggy situations, in a quite interesting way. Instead of slowing down the whole game, the game instead just drops visual frames while the game loop is kept up at the same pace as normal. In extreme situations, the game loop may even be run multiple times per frame. Because of this, even during intensive gameplay situations with many enemies or a tricky boss battle, there is no slowdown, although the visuals may become quite choppy. Sometimes this can make a difference of a frame or so over the course of a sequence or room, but usually it doesn't make a difference.

Luck manipulation

  • There's a lot of it.
  • The RNG is updated whenever a random action calls for it (enemy AI, loot drop, etc). On update, it does some calculations involving the R Register, which increments on every CPU instruction run. Therefore, the RNG can be manipulated by changing the instruction flow of the CPU, and in practice this can be done by feeding any input that is recognized or processed by the game in some way - this includes the 0 key (which opens the minimap) and H key, which resets to the main menu. Both keys do not have their actual effect as long as another key is held, but they do add instructions, and therefore change the R register, and change the RNG by extension. (The same thing can be done with the 1 and 2 keys, which cycle subweapons, when no subweapons are obtained yet). So, in practice, luck is manipulated with relative freedom by adding random 0 or H presses prior to luck-based events.
  • RNG manipulation is primarily used to manipulate random drops from enemies. In particular, gold bags with 50 coins are very rare drops early on (1/64 chance, from memory), but a dozen of them are already manipulated even before the first town visit (so the shrine warp upgrade and several subweapons can already be bought immediately). Later on in the run, many big heart drops from candles or certain enemies are another 1/32 drop at best, yet are manipulated by the dozens.
  • It should be noted that drop table logic varies depending on a few factors, like if the player has visited the same room before (which makes drops much less likely, and makes some bigger drops impossible), what altars have been triggered, whether or not the player is capped on hearts, or the type of enemy (or candle) destroyed.
  • Some boss patterns also can be manipulated by luck. Most notably Grant (randomly climbs along the ceiling) and Medusa (teleport randomly to one of three locations, and move around for a random amount of time) had to be manipulated in order to remain optimally hittable without getting out of reach or intangible while invincibility ends.

Boss notes

  • Bosses have 135 frames of invincibility on hit (7 frames of hit freeze, then another 128 frames of plain invincibility). Therefore, saving hits on bosses is important wherever possible.

Damage boost

  • It's possible to pick up items while taking damage, and taking damage elevates Belmont briefly for about a half tile. This is barely enough to allow Belmont to collect an item that normally would be too high to reach, by taking damage.
  • It's also possible to reach a higher platform by taking damage at the apex of a jump.

Teleporting tricks

  • After starting a teleport, the next teleport can be buffered immediately by pressing the input while the first teleport is underway. This makes it easy to chain teleports at optimal speeds, but also puts a clear limit on the maximum speed of teleporting.
  • Belmont is fully invincible while teleporting, and remains constantly invincible when chaining teleports.
  • Teleports shift Belmont by 64 pixels left or right.
  • It is possible to whip right before teleporting, and the whip will come out during/after the teleport. This is useful for hitting enemies quickly from long range, or for hitting candles while teleporting around.
  • When teleporting from the ground onto the air, it's possible to buffer a jump directly after the teleport. This jump will count as a ground jump, and it will still be possible to do a double jump after.
  • Teleporting into stairs will elevate Belmont by one tile any time a stair block is touched. This translates to a full 45 degree angle teleport upwards when teleporting directly up a set of stairs.
  • Platform teleport: Teleporting into a platform that can be passed vertically will allow Belmont to land on the platform, provided he's less than half a tile below the platform. This effectively allows Belmont to reach platforms a half-tile higher than his combined double-jump height. This saves time in some vertical sections. This is made easier by the fact that teleporting inside a platform doesn't enable horizontal movement (platforms are considered like solid blocks for teleporting purposes).

Dialogue skip

  • Multi-page dialogue can be skipped after the first page can be closed by pressing the H key. This has a side effect of making some text in-game appear rather nonsensical as dialogue ends abruptly and some context is omitted entirely. In other words, don't try to follow the plot too much just by watching this movie, as it skips out on quite a bit of text without the viewer being able to realize it.
  • There are a few rare events where two separate sets of dialogue are displayed in succession, so multiple pages appear even when H is pressed. In these cases, H still reduces the total amount of pages visible.

Spike jump glitch

  • With frame perfection, it's possible to walk off a ledge, land on a spike tile and jump from it without taking damage (which resets the scene), while also still keeping the double jump. This can only be done once on a strip of spike tiles (although with double jump, two jumps can be done in total). This allows reaching a few items early that normally would require the teleport ability.

Teleport event graphics glitch

  • No practical utility besides visual quirks, but triggering an event or room transition by teleporting as soon as a new area is loaded (a room is entered, or new location is entered - not by regular scrolling room transitions) will cause the event to trigger before the new area is even visible, and delay or skip its visual loading. This does not affect anything ingame, and the new room graphics will be made visible anyway after the event is passed.
    • This is done when entering the top part of Dracula's Castle from the main part - teleporting left instantly there will trigger the room transition before the new area is loaded yet, resulting in a glitchy looking screen scroll.
    • This is also triggered a few more times when entering the White Altar room, when leaving it, and when entering Richter's house all during the Death sequence. The latter one has the interesting effect of showing the boss door closing before the room is even visible.

Event-skip tile glitch

  • Skipping certain events, or otherwise passing them quicker than should be possible, can corrupt on-screen tiles resulting in odd effects. There are two known instances of this:
    • Entering the White Altar house mid-teleport and then directly teleporting into the dialogue event trigger. Just the direct teleport is fine (even if it triggers the teleport event graphics glitch), but the mid-teleport house entry is not.
    • Skipping the Dracula pre-battle dialogue by whipping him instantly after the Altar is activated.
  • The result of this glitch is that certain on-screen tiles will glitch out and change graphics or properties. This will happen along the bottom two rows of the screen, and effects include tiles becoming a plain blue or water graphic, becoming solid/standable, becoming slippery, or becoming possible to drop through.
    • The White Altar instance is deliberately avoided, as the glitched tiles would hinder coming down in the next section and lose time.
    • The Dracula instance is used but provides no benefits other than some room for playaround after the battle.
  • No beneficial use is known yet for this glitch.

Stage by stage notes

Start

  • The start of the game is highly railroaded. Belmont must talk to Boldo before being able to leave the first screen, and cannot travel to the west beyond Joseph's room before meeting Joseph.
So, naturally, meeting Joseph is the first event that's going to happen in this run.
  • The skeletons in the graveyard are highly manipulated for favorable coin drops. Who says graveyard peacekeeping doesn't pay well?
  • Going to the west after meeting Joseph is advised against by Joseph, although it's still useful to get the blue Altar piece here.
At this point, going west would eventually just lead to a dead-end red Altar without the required pieces to activate it, so going right towards town is the only reasonable option.
  • Upon visiting town for the first time, Belmont spends most of the money obtained from a few minutes of graveyard peacekeeping in town.
    • Donating 300 gold to the Church enables warping to it from any of the shrines scattered throughout the world. This saves a ton of backtracking time, so it's important to get this at the first opportunity.
    • A lot more money is spent stocking up on subweapons at the shop. The Silver Dagger, Holy Water, Golden Axe and Purifying Fire are all bought here.
The only important items here for now are the Holy Water and Purifying Fire, but the other items are bought anyway because we have the money for it and we need to get them down the line regardless. We don't have money for everything, but the rest will come later.
  • After the town visit, Belmont travels to the east for more blue Altar pieces, as well as red Altar pieces and other items to collect along the way. These are needed for progress in the short term.
  • After going down to the cave, it's possible to travel west for a few more items (a metallic plate, heart upgrade, and health upgrade), but those are skipped for now.
The heart upgrade would enable a second Purifying Fire use for the boss, which would save about 12 seconds, but it's not worth the 45 seconds it takes to get it. And this area needs to be backtracked to later anyway, as it contains a teal Altar piece that requires the teleport ability from much later on.
  • Some damage boosting is used all the way to zero health, but Belmont collects a health upgrade mid-death, enabling him to live for longer.
  • The fourth blue Altar piece normally requires a significant backtrack, but this is avoided by abusing a damage-warp from the spikes adjacent to it.

Blue Altar - Skull Knight

  • Skull Knight has 114 health. Whip hits do 6 damage without upgrades, Holy Fire does 8, Purifying Fire does 30, and all other subweapons bounce off. Skull Knight has about 3 seconds of invincibility on hit.
  • Skull Knight's pattern is fully linear and cannot be manipulated.
  • Skull Knight drops the Copper Shield, which allows Belmont to block a projectile from the front. After being used once, it cannot be used again for a few seconds. It's strictly speaking not a needed item, but it's still useful in a lot of places.
  • After warping to town, Belmont gets a whip upgrade.
This is a 25-second detour, but it's worth it - the single upgrade will save multiple hits on the Red Altar bossfight, brings skeletons down from 2 whip hits to 1 to kill, and Mermen from 3 hits to 2. This will make up for the time loss over the course of the next section.
  • A hidden health upgrade is obtained here to refill health. Refilling at the altar would have cost 160 frames.
  • A tricky damage boost allows Belmont to get a Magenta Altar piece early, saving having to backtrack to this place after obtaining the Legendary Boots once more.
  • Another tricky damage boost allows Belmont to get on a platform to get another Magenta Altar piece early, also saving having to backtrack to this place after obtaining the Legendary Boots.
  • Yet another tricky damage boost allows Belmont to get the final red Altar piece early, saving having to go back and forth through 5 screens to get it.

Red Altar - Possessed Grant

  • Possessed Grant has 135 health. Nobody cares about the fact that it's Grant in this game, it's just a normal boss ripped from Castlevania 3 like many of the others.
  • Possessed Grant drops the Legendary Boots on defeat, which allows double jumping. Obviously this is an enormously useful item in a game like this, and allows access to many new places.
  • Thanks to the damage boosts earlier, there's no backtracking for Magenta Altar pieces nearby needed, so Belmont can warp straight back to town.
  • Some backtracking in the graveyard is needed, however, for the third Magenta Altar piece, which is in a hidden area behind Joseph's original location. There's also a whip upgrade here which is not too out of the way, which is also obtained in order to save hits for the Ice Dragons battle. There are more items here, but Belmont needs to come back here later anyway, so they are left for now.
  • Belmont also returns to the cave to use the double jump ability to get a Teal Altar piece and some more items. These items are useful now, and there's not much of a reason to wait with getting them until getting the Teal Altar piece becomes truly necessary.
  • Along the way to the Magenta Altar, a damage boost is used to get a Teal altar piece early. This area won't be revisited any time soon, so it's good to get the Teal Altar piece now, even if it costs a few seconds.
  • Also along the way, another damage boost is used to reach the hidden entrance to Dracula's Castle early. This is used to get a whip upgrade and heart upgrade in these areas. The main reason this is done is that because the whip upgrade needs to be applied in town, this means town must be visited some time after reaching this area with this item for the first time. This area won't be visited otherwise until the end of the game, and by then it's too late to get the whip upgrade, so it's visited now that there is an opportunity for it. Besides that, these items are both also helpful timesavers for later bossfights.

Magenta Altar - Ice Dragons

  • The Ice Dragons have 97 health each. They are essentially designed to be frustrating; if the player is too close, or is facing in their direction (while being on their half of the screen), the dragon won't appear, or will try to hide as soon as possible (which only can't be done while they're firing projectiles). Also, the floor is slippery. Belmont stands on specific positions to be in whipping range of the dragons, while not preventing them from appearing.
  • Projectile subweapons are also used to be able to attack both dragons at once.
  • After the Ice Dragons are defeated, the Dragon Artifact is dropped. By crouching, a nearby body of water or waterfall will freeze up, allowing it to be used as a floor or platform.
  • The newly obtained Dragon Artifact is needed to get a Green Altar piece in the western cave, so Belmont backtracks to there again. Along the way Belmont also gets a whip upgrade.
  • The lake seen earlier on the eastern side can now also be passed, and it features the front door to Dracula's Castle. And of course, a number of items along the way, including the last Green Altar piece.
  • Once inside Dracula's castle, besides picking up a heart upgrade that's on the way, the first objective is to go straight to the Green Altar and defeat Medusa to get the teleport ability. A different route with less backtracking but going to Medusa later was also tried, but turned out slower simply because the teleport ability is that valuable.
  • Belmont gets the last Heart upgrade shortly before reaching the Green Altar. This caps out hearts at 50, allowing me to use five Purifying Fires for each of the next three bosses.

Green Altar - Medusa

  • Medusa has 230 health.
  • Hitting Medusa causes a snake to spawn at her location, and so does her teleporting around. These snakes are generally quickly defeated to prevent even worse frame drops, and for general convenience.
  • Medusa drops the Ring with Inscriptions on defeat, which enables Belmont to teleport by double-tapping left or right. This speeds movement up about threefold, and hence it's enormously useful to have.

Teal Altar - Leviathan

  • Leviathan has 245 health. Teleporting to the edge causes only two blocks to fall instead of three when he pounds the ground, which saves on lag. This is one of the most frame-droppiest areas in the game, so it's nice to minimize some of that, even if it doesn't really save time. The smaller dragon enemies summoned are also quickly dispatched for the same reason.
  • Leviathan drops the Enchanted Amulet on defeat. This will highlight secret entrances and destroyable areas by recoloring them. At this point, all but two items in the game have already been collected, but you can still see one area where it's useful (well, to a non-prescient player).
  • After defeating Leviathan, Belmont warps back to town. The western dungeon must be visited one last time to get the final Yellow Altar Piece (which requires teleportation to reach), and a health upgrade that's in the same room. Then it's back to town again.
  • In this final town visit, Belmont gets his last whip upgrade (soon to be obsoleted by the Vampire Killer), and activates the White Altar, which summons Death.
  • Activating the White Altar and summoning Death triggers the secret/"true" ending. This will take effect after Dracula is defeated.
  • After Death is summoned and the town is overrun, Belmont needs to go to Richter's home to fight Death.

White Altar - Death

  • Death has 255 health. His pattern is rather simple; he randomly either moves in a diagonal direction or throws a mini-scythe at Belmont, and he teleports to a random location when hit.
  • Death drops the Vampire Killer (formerly held by Richter) on defeat. The Vampire Killer replaces the default whip and any of its upgrades, and does 24 damage per hit.
  • Now, all that's left is going to Dracula and defeating him.
  • The hidden entrance to Dracula's Castle is used again, this time with a platform teleport (slightly clipped into the wall) instead of a damage boost to reach the proper height. (It's also possible to reach this normally now by chaining teleports from the higher ground in the next room, but this would be significantly slower).
  • Belmont stocks up on 30 hearts on the way here, because there's no point getting any more. He now has the Vampire Killer, which does 24 damage, and both Dracula forms have 255 health. This means that in order to save a hit on one of the forms, Belmont needs to use three Purifying Fires. Five is not enough to make a difference beyond that.

Yellow Altar - Dracula

  • Both forms of Dracula have 255 health.
  • The pre-Dracula dialogue can be skipped by whipping him as soon as he appears, which can be done by teleport-attacking onto the altar while activating it.
  • Three Purifying Fires are used on the first form to save a hit. Aside from that, it's just Vampire Killing him to death.

Final comments

Screenshots

Special thanks to Asnivor, for making ZXHawk and making this TAS (as well as ZX Spectrum TASing in general) a possibility!

ThunderAxe31: Judging.
ThunderAxe31: Before everything else, it must be noted that unofficial games need to be high quality and notable in order for movies made with them to be acceptable. This is clearly not a problem in this case, since this homebrew game showcases gorgeous graphics and music, while featuring a very extensive gameplay and diversity for a ZX Spectrum game.
This game doesn't seem to inform the player when an upgrade is maxed out, nor does show beforehand what the maximum achievable is; the same can be said for collecting all items. The only way to ultimately confirm the limits would be to reverse-engineer the game code, which has nothing to do with playing the game normally and thus doesn't work as a full completion yardstick.
It could be argued that the map could be confirmed to be completed, thanks to the second map upgrade showing undisclosed rooms nearby to the player position; however this can be debatable since it requires the player to walk through the whole world looking for the existence of any undisclosed room, which also means that this feature will work for all cases.
Full completion is usually recognized by the fact that a game features optional challenges or requirements, and that clearing them results in the game awarding the player with a different ending cutscene, a different ending message, or simply by displaying a full percentage gauge. The only clear and obvious full completion scenario applicable for this game is reaching the hidden/true ending, as it requires the player to beat the optional boss, Death; all the other goals of this movie aren't clear or obvious, as explained in the previous paragraph.
Since the goal chosen for this movie doesn't fall under either fastest completion or full completion, it's considered as an additional branch and thus needs to be considered accordingly. I think this is a great choice for an abitrary goal, since it allows to showcase much more contents compared to the two main branches, while the ruleset is well defined and sensible: getting everything that can be obtained in the game. It could be argued that this goal should include killing all enemies and maxing out the money income, but this is not applicable since any non-boss enemy will spawn again after re-visiting the same room, and the money drops still happen even after maxing out the player income.
Being a non-Vaultable movie, it's also required to meet the entertainment standards of Moons tier, which has been achieved thanks to the beauty of the game and the optimized execution of gameplay in general; the audience response was also very welcoming.
As a side note, I have to note that the branch label "100%" is not perfectly indicative of the movie goal, as the game doesn't feature any percentage value and the game does require just the Death fight as a full completion requirement. For this reason, in accordance with feos, I'm renaming the branch label to "completionist", as it's more accurate.
Accepting for Moons as a secondary branch.
Note for the publisher: the goals for this movie should be mentioned in the publication text, due to their compound nature.
fsvgm777: Processing. Holding off on encoding it until the situation with the branch label has been cleared up.

feos: After heated discussion we agreed that when the full completion goal for a game is decided by the community to consist of maximizing several independent units, each on its own, we can't deduce such labels to "all X". If the game does not use the term "100%" for something special, compound full completion can be labeled as "100%". When "100%" means something different in the game, there should be a new iteration of discussion to come up with a name that's not "100%" and still represents full completion.
So we consider the "100%" label iconic and use it when we have to, when we can. Changed the branch back.

fsvgm777: Processing (for real).