Nouveau! Voici "L'Histoire parralèle" d'Undertale par Toby Fox - Deltarune, Par Boxy Fot!
Le jeu a obtenu une version payante en 2025, après une attente de près de 17 ans ! - ou plutôt 14 dépendant d'où tu commences à compter, pusique Boxy Toby a eu son rêve lui inspirant 'Deltarune'' en 2011. Même après tout ce temps passé, il n'inclu pour le moment que les Chapitre 1 à 5. Les chapitres suivants sont prévus en tant que Mise à jour gratuites, avec le chapitre 6 prévu pour 2027, et le Chapitre 7 prévu pour sortir un jour.
Avec un cycle de développement si long, il n'est pas surprenant qu'un ""grand nombre"" de contenu soit inutilisé, on parle de zone entières coupés dans certains chapitre, des patternes d'attaques inutilisés, des méchaniques de Gameplay, du contenu de debuggage et bien plus - et si tu cherches assez longtemps, tu tomberas peut-être sur du contenu "Vraiment, vraiment interessant", certainement pas laissé là par accident.
Le jeu utilise une feature de GameMaker qui a été ajouté spécifiquement pour le jeu3, permettant à chaque chapitre d'être considéré comme un jeu à part entière, et de pouvoir passer de l'un à l'autre à la volée. Chaque Chapitres vient avec son fichier data.win et pas mal de contenu dupliqué, puisque seuls les fichiers musicaux sont partagés entre les Chapitres. Donc, cet article a été séparé par Chapitre, avec cette page principale servant aux contenus présents dans plusieurs Chapitres. (L'article usera les noms de la VF pour qualifier les ennemis, lieux etc...)
Sous Pages#
Contenu inutilisés par Chapitres#
Contenus sans Chapitre Spécifique#
Preceding Chapter Leftovers#
Many sprites and sounds from a previous chapter will be left over in the next one, regardless of if they're used in that chapter or not. This is likely due to the chapters being built off one another, as well as being a remnant from when each chapter was in one data file before the game_change function was implemented. The exceptions to this are typically sprites that are unlikely to be needed in future chapters, such as Ramb's sprites being exclusive to Chapter 3's files and very cutscene-specific sprites being exclusive to the files of the chapter they appear in.
Graphismes Inutilisés#
obj_npc_facing#
This sprite, spr_placeholder, is the default sprite of the object obj_npc_facing, which is used for most NPCs capable of facing different directions (hence the name). The sprite is likely present simply to make these objects identifiable in the editor – it is changed to an NPC's sprite (Toriel's by default) upon creation.
(Source: Original TCRF research)
Sprite Placeholder de Kris#
An unused placeholder sprite for Kris, named spr_krisplace. It's used as the "default" sprite for the party member objects in battle, while programming from the parent object tells the game which object should use which party member's sprites.
(Source: Original TCRF research)
Portes#
Designs for the marker objects used to set Kris's position upon entering a room through a door introduced since the release of Chapter 2, using a cleaner letter design and including a silhouette of Kris, as well as adding letters R-V, with the S marker using the Cool S. There were also "any" markers added, which go through the entire alphabet and have numbers for each letter.
(Source: Original TCRF research)
Like with the markers, the door objects also got "any" versions, though there aren't quite as many of them in comparison.
(Source: Original TCRF research)
Portrait de Noelle de la Démo du Chapitre 1#
spr_face_nX |
||||||||||
|---|---|---|---|---|---|---|---|---|---|---|
spr_face_n_matome |
Noelle's original dialogue portraits from the Chapter 1 Demo still exist in each Chapter's files as spr_face_n0-spr_face_n9, being replaced with spr_face_n_matome in Chapter 2 and retroactively replaced in Chapter 1. She had a much rounder jaw, longer hair that was cut off by the bottom of the frame, and her eyes were closer to her hair and further from her nose. A couple of them are notably animated, a feature that was lost in her new portraits (and most portraits in general) due to the game adopting a new system of storing each character's portraits as one sprite rather than multiple.
(Source: Original TCRF research)
Extra Chapter Numbers#
From Chapter 2 onwards, a chapter number sprite is displayed beneath the game's logo with its frame corresponding to the current chapter (dictated by the global.chapter variable). This includes the expected Chapter 2-7 graphics, along with an unused version for Chapter 1, which doesn't include/display this sprite. Furthermore, it also includes graphics for Chapters 0, 8, 9 and 10, none of which appear in the chapter select screen or otherwise have had any indication of their planned existence.
The Chapter 0 and 1 graphics were likely added for convenience so that each frame of the sprite would correspond to a Chapter number properly, but it's unclear why the Chapter 8-10 ones exist. As Toby Fox has explicitly stated in interviews that there will be seven chapters, these were most likely either left here as a red herring, or the developers themselves were simply uncertain of how many chapters there would be at the time the sprite was made.
(Source: Original TCRF research)
Objets Inutilisés#
obj_CHAPTER_SELECT_old#
|
Old |
Current |
|---|---|
|
|
|
An old version of the chapter select, leftover from v2 of the LTS Demo. This version is from before the chapter select was reprogrammed in v3 of the demo, so it's very different internally. The changes are as follows:
- The game window's title is still set to "DELTARUNE Chapter 1&2".
- Only Chapters 1 and 2 can be selected.
- After selecting a chapter, 12 frames need to pass before the player is allowed to proceed with or back out of starting it.
- The lines separating the chapters fade in from the bottom rather than the top.
- It's missing the option to switch to Japanese.
- The text and icons are all further from the sides of the window.
- The chapter icons are displayed incorrectly due to changes in how they're stored.
- The copyright information was moved from the bottom right to the bottom left to make space for the Shadow Crystal UI.
- The version is "DELTARUNE v2" and the copyright years are still listed as 2018-2024.
- The stars that appear to indicate which save files were completed in a chapter don't exist.
- The text for continuing and starting a new chapter before all available chapters are completed is formatted differently.
Attempting to start a chapter will crash due to the chapter starting sounds being renamed, but fixing this by making it call the proper audio files will make it function properly again.
Textes inutilisés#
Failsafe Text#
Throughout Deltarune, as with Undertale, there are many places in the dialogue where particular text is shown depending on the value of some variable. In many of those places, failsafe text is defined, which will be displayed if there was no other text defined for the particular value of the checked variable.
Objects and Scripts#
There are several generic objects and scripts used to display text for multiple different NPCs (and other interactables) throughout the game. They often have a general failsafe message for if the particular variable value (e.g. room ID, item ID, etc.) isn't defined.
Monster Encounters
The default message for the text that appears at the start of battles in scr_enountersetup, which can be seen in-game by starting a battle with an encounter that's not uniquely defined. In Chapter 4, it can also be seen in an encounter with a Wicabel and Organikk due to an oversight where they don't have a battle message defined.
English |
Japanese |
|---|---|
|
|
Door
Shortcut door choice (though this is unused even if the choice is undefined):
English |
Japanese |
|---|---|
|
|
Rhyming NPC Dialogue
obj_npc_facing, obj_npc_room, and obj_npc_room_animated, respectively:
English |
Japanese |
|---|---|
|
|
|
|
|
|
These three rhyming lines appear to be connected. It is worth noting that they describe Undertale 's "mystery man" (the character assumed by many to be Gaster) suspiciously well.
(Source: Original TCRF research)
Symbols
obj_npc_sign (primarily used for signs):
English |
Japanese |
|---|---|
|
|
This line is a reference to similar lines in Sans's workshop in Undertale (these lines are not in Deltarune; they're just included here for illustrative purposes):
|
|
|
(Source: Original TCRF research)
Seizure
obj_readable_room1:
English |
Japanese |
|---|---|
|
|
(Source: Original TCRF research)
Base Interactable Objects
obj_interactablesolid and obj_readable, respectively (which serves as the bases for actual interactable objects):
English |
Japanese |
|---|---|
|
|
(Source: Original TCRF research)
Generic Error Messages
In Chapter 2 onwards, if debug mode is enabled, these messages all become basic error messages explaining what the problem is.
Object |
Text |
|---|---|
|
|
|
|
|
|
|
|
|
|
Game Initializers#
scr_gamestart
Among other things, this script defines default choice options:
English |
Japanese |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(Source: Original TCRF research)
obj_initializer
This object's Create script defines default messages (which were seemingly at one point used for testing).
Small messages:
RALSEI:
|
SUSIE:
|
Normal messages:
RALSEI:
|
SUSIE:
|
(followed by Susie's above small message)
|
TORIEL:
|
(Source: Original TCRF research)
SAVE Files#
If a save file exists but dr.ini doesn't exist, then one of the following three strings will be displayed in place of the file's name:
FILE0
FILE1
FILE2
(Source: Original TCRF research)
Save Name
English |
Japanese |
|---|---|
|
|
Code that doesn't work anywhere, from obj_savemenu's Create script.
(Source: Original TCRF research)
Name Hack#
English |
Japanese |
|---|---|
|
|
Since the Light World menu is reused from Undertale, the stat menu will still respond to a name longer than 6 letters, though now with confusion. The reason is likely that the name is harder to change this time around as it's always set to "Kris", making it impossible to change through save editing. This text can be seen by changing the value of global.lcharname in scr_gamestart from "Kris" to a name longer than 6 letters, and will overwrite the "Since Chapter" message that shows the chapter the player started that file from.
Ennemis inutilisés#
#1: Enemy#
Enemy (obj_placeholderenemy) is an unused placeholder enemy evidently used for testing. It is defined as a failsafe in a few different places, and so has a few other names. It uses Rudinn's sprites, though it has different text, ACT options, and stats.
TESTOBJECT is defined by obj_initializer, and Enemy is properly defined in scr_monstersetup. Oddly, the name defined for it in scr_gamestart is often changed between chapters; it was first called G BODY in Chapter 1, then Chapter 2 changed it to ECHIDNA, Chapter 4 changed it to TERUTERUBOUZA, and Chapter 5 changed it to WEATHER DOLL. Chapter 4's name is similar to teru teru bōzu, dolls that are hung outside doors and windows in Japan in hopes of bringing sunny weather, which Chapter 5's name seems to describe as well.
TESTOBJECT |
G BODY/ECHIDNA/TERUTERUBOUZA/WEATHER DOLL |
|||
|---|---|---|---|---|
Attack |
3 |
Attack |
3 |
Attack |
Defense |
2 |
Defense |
2 |
Defense |
HP |
20 |
HP |
20 |
HP |
Spare point |
0 |
Spare point |
||
EXP |
||||
D$ |
||||
Messages de Combat#
messages de combat normaux:
|
|
|
|
Enemy Messages#
Messages that would be spoken by the enemy, randomly chosen between:
|
|
|
|
...were it not for this line, which replaces the above lines every time:
|
Message shown after using 'Victory (S)' (see below) at the end of the enemy's turn:
|
|
ACT#
ACT options (effects detailed below):
English |
Japanese |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
'Check' text (note the incorrect stats):
English |
Japanese |
|---|---|
|
|
'Warning' text:
|
|
'Victory' text (makes the enemy spareable immediately):
|
'Victory (D)' text (makes the enemy spareable after the enemy's next turn):
|
'Victory (S)' text (makes the enemy say a message and run away, following its next turn):
|
'Lecture' text:
|
|
(Source: Original TCRF research)
Unused Settings#
There are several flags stored in each chapter's save file for settings that normally can't be changed in-game.
Disable Screen Shake#
Flag 12 (found on line 329 in Chapter 1 and line 565 in Chapters 2+) allows you to toggle the screen shake effects. When set to 1, all screen shakes will be disabled. A variable called shakeoff is still present in the config menu's draw code, being set to either "OFF" or "ON" depending on if flag 12 is set to 0 or 1.
Alternate Attack Mode#
|
|
To do: |
When flag 13 (found on line 330 in Chapter 1 and line 566 in Chapters 2+) is set to 1, it enables an unused method of attacking where each party member uses a different key to attack. The first member uses the Confirm button (Z by default), the second member uses the Cancel button (X by default), and the third member uses the Menu button (C by default). Note that in Chapters 1 & 2, this mode will properly light up Ralsei's attack box, unlike the normal mode, though it won't return to green due to the same bug that prevents the normal mode from lighting the box up in the first place. This mode's code wasn't updated upon Noelle being added in Chapter 2, so her attack box won't light up at all while using it.
Battle Cursor Memory#
When flag 14 (found on line 331 in Chapter 1 and line 567 in Chapters 2+) is set to 1, each member's selections from their previous turn will be kept instead of reset. This extends from the main action menu to all the sub-menus.
SFX and Music Volume#
Flags 15 and 16 (found on lines 332 & 333 in Chapter 1 and lines 568 & 569 in Chapters 2+) control the volume of sound effects and music respectively, which are options that cannot be changed normally, as only Master Volume can be changed. Code still exists in the step event of obj_darkcontroller (the object for the Dark World's pause menu) to change these values, sound effect volume being changed when global.submenu is set to 31 and music volume being changed when global.submenu is set to 32. Their values are both changed by 0.5 (5%) at a time instead of 0.2 (2%) like Master Volume is. Interestingly, a variable called musvol containing the music volume's current percent is still set for the config menu's draw code, but it's never used.
Unused Mechanics#
Talk Button#
Hidden in the Dark World menu's code is a fifth button for TALKing. It's supposed to be placed in the middle of the four buttons, but is programmed to be skipped when drawing the menu buttons and moving the cursor left or right to select an option, along with an extra check to cancel selecting it and reset the menu cursor position if the option was somehow selected. The button would have been used for talking to your party members about the room you're currently in (à la calling Papyrus in Undertale), but was likely scrapped due to the sheer amount of dialogue that would need to be written to account for story progress and current party members. scr_talkroom, the script that would've held all the dialogue, still exists and is ran when using this button, but any dialogue that may have been written was stripped out, leaving it to use a single placeholder line instead.
Interestingly, using this button in the second timed puzzle room in Chapter 1 will change the text for failing too many times.
Multiple Attack Bolts#
Another feature that would've returned from Undertale was a character having multiple attack bolts depending on their weapon. Each weapon has a weaponbolts variable for how many bolts the weapon should give, but they're all set to 1, and each character's charbolt variable in the code for creating the attack UI is hardcoded to 1 anyway regardless of their weapon's bolt amount. Changing the hardcoded values or making the game set each character's charbolt variable to their current weapon's weaponbolts variable will show that this feature is fully functional. The damage done to an enemy will be multiplied by the amount of bolts however, which is unclear if it's a bug or not.
Overworld Spell Use#
The game supports using certain spells in the overworld from the status menu when the party has enough TP, calling the script scr_spell_overworld to do so. Battles usually set TP to 0 upon ending to prevent this from happening, though it's unintentionally possible in Chapter 1 on rare occasions where TP isn't reset, such as after the battle between Susie and Lancer. The only spell that's usable in the overworld is Heal Prayer, healing 100 HP being just as if an item were used. Starting with Chapter 2, this was completely removed by making Heal Prayer no longer usable in the overworld.
Ambushing#
Starting with Chapter 2, the game contains a partially unused mechanic for enemies ambushing the player when starting battles. obj_chaseenemy, the object commonly used for overworld enemies, contains unused code for shooting basic diamond bullet objects called obj_encounter_bullet at the player when its test_release_bullet variable is set to 1. If one of these bullets hits the player, the global.ambush variable will be set to 1 and the party will shake while (with the exception of Noelle) using a hurt or shocked sprite, after which obj_testoverworldenemy, the object often used when touching an enemy to start battles, will run code to play the sound snd_battleenter while immediately starting the battle, instead of playing two instances of snd_tensionhorn first. When the battle starts, the enemy will have its turn first.
The reason this mechanic is only "partially" unused is that the functionality for starting battles on the enemies' turn with with the global.ambush variable is still occasionally used for some fights, such as Clover and Tasque Manager's in the Dojo.
There is also unused code for the player ambushing enemies instead. When hitting enemies while in sword mode (more on that below), an explosion animation will play over the enemy, global.ambush will be set to 2, and obj_testoverworldenemy will have its washit variable set to 1, which makes the object play snd_break2 while immediately starting a battle with TP set to 25%. The enemies will also have their firststrike variable set to 1, but this variable is never checked by the game. Interestingly, an encounter with two Virovirokuns in Chapter 2 has alternate battle start text for if the enemy was ambushed.
Sword Mode#
Starting with Chapter 2 obj_mainchara, the object for Kris in the overworld, contains code for an unused mechanic where they'd use a sword to attack in the overworld when their swordmode variable is set to 1. In this mode, Kris can only face left or right even if they're moving up or down, and pressing the CONFIRM button will freeze them in place for a moment and make them "slash" by spawning obj_swordhitbox and playing a slashing sound. By default obj_swordhitbox won't function properly due to not having a sprite assigned to it, but assigning it one (like Kris' slashing sprite, for example) will display the object at 20% visibility and allow it to hit objects that are children of obj_swordobjparent, such as enemies and test objects present in room_cutscene_tester. An unused object called obj_swordarea will put Kris in this mode while they're touching it as long as an object that's a child of obj_swordobjparent is also touching it, implying the mechanic would be restricted to specific sections of rooms. The graphics for this mechanic appear to have not been implemented, as Kris will use their right facing sprite the entire time, flipped to match the direction they're facing.
Debug Mode#
|
|
To do: |
Debug mode has largely been stripped, but some mechanics of it still work (and some testing maps need it enabled to work correctly), with the extent to which this is the case varying by chapter. Chapters 1 and 2 have nearly all debug functionality stripped despite it originally being present in the demos. Chapters 3 and 4 have more functionality intact, but they crash at various points without further modifications. Chapter 5 is missing more code compared to the previous two, and will always crash when trying to save or load a file as debug code in some associated scripts tries to access the room rm_blank, a leftover the GMLive extension that was deleted from the files before release.
The easiest way to enable the remaining debug mode features in each chapter is to use UndertaleModTool's built-in UT/DR Debug script on the chapter's data.win file, which will also fix the crashes in Chapters 3 and 4. To instead do it manually, edit obj_initializer2's Create event to set global.debug to true instead of false (and in the case of Chapter 2, replace the contents of the scr_debug function with return global.debug).
The following debug features are shared across some chapters:
- Holding G records and saves a gif to Deltarune's AppData folder
- Pressing S allows you to save your game anywhere
- Pressing L will instantly load your current save
- Pressing Z shows the hitbox for interacting with objects
- Pressing ~ speeds up the game to 150 FPS until it's pressed again
- Pressing Ctrl + ~ slows down the game to 10 FPS until it's pressed again
- Pressing ⇧ Shift + Ctrl + N (LB/LT + RB/RT + Y on controller) activates no-clip in Chapters 3 and 4
- Pressing ⇧ Shift + Ctrl + 0 (LB/LT + RB/RT + Select on controller) sets global.interact to 0 in Chapters 3 and 4
- Various keys allow you to easily traverse between rooms:
- Pressing the Insert key brings you to the next room ID
- Pressing the Delete key brings you to the previous room ID
- Pressing Home + 1 brings you to the Cyber World intro room (Chapter 2 only)
- Pressing Home + 2 brings you to Kris's bedroom
- Pressing Home + 3 brings you to your Castle Town
- Pressing Home + 7 brings you to the Legend cutscene
- Pressing Home + 8 or Home + 9 brings you to
room_battletest
Debug Menu Remnants#
There are remnants of a debug menu in each chapter's files, mainly in scripts prefixed with "scr_84_", implying the menu was originally created by 8-4, Ltd. during the japanese localization of Chapter 1's development. Although it cannot be used anymore due to a vital script being dummied out, its companion scripts are still intact.
Script |
Function |
|---|---|
scr_84_debug() |
The aforementioned vital script that was dummied out. Unlike most debug content this script was even dummied out of the demos, though thankfully Chapter 1's version of this script was left in the Nintendo Switch port of the Chapter 1 Demo, revealing this script would have contained the code for setting up, controlling, and drawing the menu. In the Chapter 1 and 2 demos and Chapters 3 and 4, this script is called in obj_time's Step and Draw GUI events, the latter of which was updated in Chapter 3 to add a transparent blue background while the menu is active. This script being dummied out is actually the reason for Chapter 3's boards crashing in debug mode, as they try to check if the "show room name" setting from this menu is enabled, which causes an error when the menu is stripped out. |
scr_84_add_menu_item() |
Adds an option to the debug menu, usually having 3 arguments passed into it: a string that the menu reads to figure out how the option should function, a value to be used as an argument by the option, and a string to be displayed in the menu as the option's name. |
scr_84_draw_menu() |
Draws the menu. Was updated in Chapter 2 to highlight the selected options in yellow, and further updated in Chapter 3 to change how drawing groups works. |
scr_84_push() |
Used to set up a group in the menu, allowing more options to be hidden until the group is selected. |
scr_84_pop() |
Ends the current group being set up. |
scr_84_draw_text_outline() |
Draws an outlined version of the text passed into it as an argument. While technically not unused since it would eventually end up being used for a couple huds in Chapters 3 and 4, this script was originally only created and used for this menu. |
scr_84_is_digit() |
Checks if the argument passed into it is between 0 and 9. Not actually used in the menu (or anywhere for that matter), but it may have been intended for it. |
Rhythm Game (Lightners Live)#
|
|
To do: |
Both Chapter 3 and 4 contain an entire chart editor within the files, which supports the creation, saving, and loading of charts. This requires debug mode to be active to work fully. In Chapter 3, the map is protected by Dogcheck, and requires modifying the files to load. Chapter 4 just requires a save edit to load room 40266. It supports editing all three sections (Drums, Guitar, and Vocals) along with playing each of these charts. Despite this making Drums and Vocals playable, the rhythm game code does not support a third button. There's no way to chart for specifically Normal and Hard, despite both chapters supporting difficulty. The editor has different song listings in each chapter, and the code has even more songs.
OST Name |
In-Game Name |
Chapter |
Used in Final |
Charted? |
Notes |
|---|---|---|---|---|---|
MIKE, The BOARD, please! |
How To Play |
Chapter 3 |
Used |
Charted |
Has a custom guitar track on top of the song. Although can't be played normally, this is used as a tutorial on how to play this minigame. |
Soundcheck |
Soundcheck |
Chapter 3 |
Used |
Charted |
|
Raise Up Your Bat |
Lightners Live |
Chapter 3 |
Used |
Charted |
This is the chart used for the Round 2 minigame and inside the A-Rank room. |
It's TV Time! |
Tenna boss |
Chapter 3 |
Partially Used |
Charted |
This is the chart used during the boss fight with Tenna. It's fully charted, but only parts are used. |
Doom Board |
Board 4 |
Chapter 3 |
Unused |
Charted |
|
Ruder Buster |
Rude Buster (Boss) |
Chapter 3 |
Unused |
Partially Charted |
This song has about 5 seconds of charting for guitar. |
Vapor Buster |
Rude Buster (Vapor) |
Chapter 3 |
Unused |
Partially Charted |
Same as Ruder Buster; has about 5 seconds of guitar charting. |
Rude Buster |
Rude Buster |
Chapter 4 |
Unused |
Uncharted |
There's additional code and audio to support this song in Castle Town. |
Field of Hopes and Dreams |
Field of Hopes and Dreams |
Chapter 4 |
Unused |
Uncharted |
There's additional code and audio to support this song in Castle Town. |
Raise Up Your Bat |
Raise Up Your Bat |
Chapter 4 |
Used |
Charted |
Available in Castle Town. |
It's TV Time! |
It's TV Time! |
Chapter 4 |
Used |
Charted |
Available in Castle Town. |
Knock You Down!! |
Knock You Down!! |
Chapter 4 |
Used |
Charted |
Available in Castle Town. |
N/A |
tenna_battle_old |
Only in Code |
Unused |
Uncharted |
Despite the song file being left over, it is byte-for-byte identical to the final tenna_battle. The song has code to end earlier. |
Rhythm Game Debug#
|
|
To do: |
If debug is enabled, the rhythm game has a debug mode for itself by pressing O while playing a song.
This displays the current FPS and FPS_real (possibly framerate for the underlying rhythm game's hit registering system) above Kris. These will turn red whenever the game's framerate drops under 30.
In the top left, four items are shown: track pos, showing how far you are in the song, fame, which is your 'health', and two numbers- the song's 'note time' and the track position divided by the meter.
- Pressing I will enable auto-play. This requires you to have pressed O prior to pressing I.
- Pressing U causes the game to swap different internal modes, and pressing too many times quickly can cause the game to crash.
- Pressing U once causes it to switch to auto-play; a second time switches it to auto-play with the control prompts enabled.
- A third time greys out Kris's highway.
- A fourth time just completely disables input or gameplay.
- A fifth time causes the game to block out Kris's and Susie's highway.
- A sixth time completely disables the rhythm game UI but gives you back control.
- A seventh time makes Kris, Susie, and Ralsei go into their standing pose, and the stage flashes red.
- An eighth time sets the game into the tutorial song with just Kris's highway.
- A ninth time enables Susie's and Ralsei's highways.
- Pressing U more than 9 times repeats the cycle with the tutorial song selected.
- Pressing/Mashing 4 while starting Raise Up Your Bat will skip the intro. This sometimes causes the song to freak out, but should usually work.
- Pressing P lets you pause the rhythm game. Simple as that. Pausing causes notes yet to appear on the highway to display.
- Pressing R restarts the song.
- Pressing F5 causes the rhythm game to instantly end, showing the results.
- Pressing F6 brings the player to the fail screen (Retry/Quit).
Volume Control#
For some reason, the Rhythm Game's audio can be changed while playing. Holding Left ⇧ Shift then - or + will cause the song's volume to go down or up accordingly.
BIG Combo#
If the note combo is above 999, the display on the chart will stop and simply say "BIG" where the combo number would be. The "MAX COMBO" meter on the bottom right and the results screen will continue counting past 999, however. As no song currently included in Deltarune has over 999 notes, this can only be seen by modifying the game, or by waiting during Tenna's explanations of the minigame in Chapter 3.
As of version 1.03, this can be seen naturally in-game when playing "Raise Up Your Bat" in Chapter 4 when Susie and Ralsei are not in your party near the end of the chapter. Around the end of the song Susie's lane will display a "BIG" combo.
Allcaps Asset Names#
|
|
To do: |
The window captions used throughout Chapter 1 change in some cases to denote context; the 'light world' sections use title case (e.g. "The Beginning", "The Return") and the 'dark world' sections, along with everything else, use upper-case (e.g. "THE DARK", "CONTACT", "DELTARUNE").
Internally, most of the game's assets are named using a similar though distinct convention of upper/lower case. Unlike the window captions, the "Dark World" assets, like the "Light World" assets, use lower case, abbreviated prefixes (in Undertale, these were the only prefixes used). Allcaps prefixes/names are only used in the following contexts:
- The CONTACT sequence at the start of Chapter 1 and everything associated with it.
- The logo screen and main menu (both versions of it).
- The game over ("FAILURE") screen.
- The dogcheck room.
- "UNUSED", a series of unique "scripts" found in each chapter.
- Most variable names in DEVICE scripts.
- The ominous grinning face with pink and yellow eyes, with the internal name of "FRIEND", though in Chapter 3 it's simply referred to as "_" instead.
These are effectively all of the "out-of-bounds" sections of the game, as it were, with the exception of the ending credits and the "FRIEND".
Below is a full list of the used prefixes:
Type |
Normal prefix |
Allcaps prefix |
Notes |
|---|---|---|---|
Sound |
|
|
|
Music |
|
Most of the music doesn't use a prefix, but the few that do use these. |
|
Sprite |
|
|
|
Background |
|
||
Script |
|
" |
|
Font |
|
||
Object |
|
|
|
|
As mentioned above, this seems like it should logically be the script prefix. |
||
Room |
|
|
" |
Variable names within allcaps objects also follow this convention, mostly being in allcaps as well, in addition to sometimes utilizing slightly more verbose terminology. One notable counterpart for a common local variable is EVENT, used in place of con (condition/conversation).
(Source: Original TCRF research)
Music/Sound Metadata#
|
|
To do: |
Similar to Undertale and its demo, some audio files contain metadata. Most of it seems to come from FL Studio.
Chapter 1#
(most files) |
Name |
|
|
Name |
|
|
Name |
|
|
|
|
Name |
|
|
|
|
Name |
|
|
|
Chapter 2#
|
Name |
|
|
|
|
Name |
|
|
|
|
Name |
|
|
|
|
Name |
|
|
|
|
Name |
|
|
|
Chapter 3#
|
Name |
|
|
|
|
Name |
|
|
|
|
Name |
|
|
|
Chapter 4#
|
Name |
|
|
|
|
|
|
|
|
(some files under the root folder - seems to be added by GameMaker) |
Name |
|
Chapter 5#
|
Name |
|
|
|
|
Name |
|
|
Name |
|
Misc.#
|
Name |
|
|
|
|
Name |
|
|
Name |
|
The mentions of "LAME in FL Studio 10" imply that some files were converted from MP3s - LAME is a MP3 encoder.
Due to reusing Undertale's snd_hit file for snd_hit_(ch1), the "Snoopy, Come Home" (which is the title song for the 1972 movie with the same name) metadata is intact.
(Source: Original TCRF research)
Chapter Inconsistencies#
Despite the game reaching its full release, there are some odd inconsistencies between the currently available chapters.
Enemy Targeting#
In Chapter 1, one or more specific party members will be targeted for an attack, and they'll have a target graphic placed over them before the attack starts while the rest are darkened. Targeted members will be the only ones who take damage during the attack until they're downed. In every subsequent chapter, the target graphic was removed, and aside from a few instances, a random party member is chosen to be damaged each hit.
Invisible Mercy#
In Chapter 1, the enemies' mercy meters and percentages aren't visible to the player in battle. Granted, the only enemy whose mercy meter doesn't fill up immediately upon successfully pulling off an act in this chapter is Clover, but it's a notable oddity nonetheless.
Unkillable in Overworld Bug#
Due to a coding error in Chapter 1, if any character's HP value is exactly 2, it will be impossible for the party to be killed by hazards in the overworld. This was fixed in future chapters.
S/R/N-Action Debug Display#
In Chapter 2, holding A while in a character's ACT menu in battle will display a box beside the enemies that contains the text for their S/R/N-Action depending on if they're defined and what characters are currently in your party. Starting with Chapter 3, this function was locked behind debug mode, meaning its availability in Chapter 2 was likely an oversight.
Chapter 3 Invincibility Frames#
In Chapters 1, 2 and 4, the soul is nearly always given 40 invincibility frames after being hit. However, for some odd, unknowable reason, Chapter 3 changes this to 30 invincibility frames instead.
Pink/Twin Ribbon TP Gain Nerf#
From Chapter 3 onward, the Pink Ribbon and Twin Ribbon were given a TP Gain nerf not communicated by the game. The Pink Ribbon will reduce TP gain by 20%, while the Twin Ribbon will reduce TP gain by 25%. This nerf stacks with each of these items equipped, which can result in TP actually being taken away if enough are obtained through hacking.
Rude Buster Damage Boost Lock#
Rude Buster's damage boost mechanic was made more strict between Chapters 2 and 3. Before Chapter 3, pressing Z at all would cause you to deal the maximum damage bonus, due to a bug in the logic which caused any boost to be the maximum boost. This was fixed starting with Chapter 3, making it necessary to time the attack correctly.
Ralsei Attack Box Bug#
In the first two chapters, Ralsei's attack box won't light up while attacking. This is the result of a coding error where the game should set pressbuffer[1], pressbuffer[2], and pressbuffer[3] to 5 when pressing the attack button and then decrease them by 1 each frame, but mistakenly does this for pressbuffer[0], pressbuffer[1], and pressbuffer[2] instead. This was fixed starting with Chapter 3.
Kris Slide Animation#
Kris's slide animation was updated in Chapter 3, being completely redrawn and given more than one frame to be consistent with Susie and Ralsei's. In Chapter 4, they still use the updated spritework, but only one frame is displayed due to the slide objects not being updated to set Kris's animation speed like they were in Chapter 3. Chapter 5 retains the same error as Chapter 4, aside from on the first sliding wall early in the Cliffs area where the animation does play, albeit faster than in Chapter 3.
Note that their unused Light World sliding sprite was left unchanged.
Chapter 1+2 |
Chapter 3 |
Chapter 4+5 |
|---|---|---|
Alternate Project Name#
Although the game's project is simply named "DELTARUNE", there seems to be an alternate name used internally by the developers: "sunkus". This can be seen in the igor.output.manifest file in the game's install folder, where it's called "sunkus_kb_check" and "sunkus_kb_block".
Although it's unclear why the project is called sunkus, it's possible that it was named after Circle K Sunkus, a Japanese convenience store chain that was rebranded in 2016.
Leftover Build Paths#
|
|
To do:
|
Within the igor.output.manifest file left in the game's install folder on PC is a build path for the game, including a build date.
Version |
Release Date |
Build Date |
Path |
|---|---|---|---|
v1.0 |
June 4, 2025 |
June 2, 2025 |
/ProgramData/GameMakerStudio2-LTS/Cache/runtimes/runtime-2022.0.3.104/bin/igor/windows/x64/250602_SUNKUS.zip |
v1.01A |
June 6, 2025 |
June 6, 2025 |
/ProgramData/GameMakerStudio2-LTS/Cache/runtimes/runtime-2022.0.3.104/bin/igor/windows/x64/250606_SUNKUS.zip |
v1.01B |
June 8, 2025 |
June 7, 2025 |
/ProgramData/GameMakerStudio2-LTS/Cache/runtimes/runtime-2022.0.3.104/bin/igor/windows/x64/250607_SUNKUS.zip |
v1.01C |
June 9, 2025 |
June 8, 2025 |
/ProgramData/GameMakerStudio2-LTS/Cache/runtimes/runtime-2022.0.3.104/bin/igor/windows/x64/250608_SUNKUS.zip |
v1.02 |
July 8, 2025 |
June 18, 2025 |
/ProgramData/GameMakerStudio2-LTS/Cache/runtimes/runtime-2022.0.3.104/bin/igor/windows/x64/250618_SUNKUS.zip |
v1.03 |
July 23, 2025 |
July 2, 2025 |
/ProgramData/GameMakerStudio2-LTS/Cache/runtimes/runtime-2022.0.3.104/bin/igor/windows/x64/250702_SUNKUS.zip |
v1.04 |
August 5, 2025 |
July 23, 2025 |
/ProgramData/GameMakerStudio2-LTS/Cache/runtimes/runtime-2022.0.3.104/bin/igor/windows/x64/250723_SUNKUS.zip |
v1.05 |
August 26, 2025 |
August 21, 2025 |
/ProgramData/GameMakerStudio2-LTS/Cache/runtimes/runtime-2022.0.3.115/bin/igor/windows/x64/250821_SUNKUS.zip |
Although the Nintendo Switch version has no manifest file, it includes what seems to be a path to a Nintendo SDK and a build path for the game in its options.ini file, though it lacks a build date.
[LLVM-Switch]
SDKDir=C:\Nintendo\sunkus\NintendoSDK
UseNEX=False
UseNPLN=False
nMeta=C:\Users\sodon\Projects\01-DELTARUNE\20-Launcher\sunkus-launcher\DELTARUNE\options/switch/SWITCH_FULL/application.nmeta
(Source: Original TCRF research)
References#
|
The Undertale series | |
|---|---|
|
Windows, Mac OS X, PlayStation 4, Nintendo Switch |
Undertale (Prototypes) • Deltarune (Demos) |
|
Linux, PlayStation Vita, Xbox One, Xbox Series X |
|
|
PlayStation 5, Nintendo Switch 2 |
|