If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Notes:Proto:Deltarune/Chapter 1 & 2 Demo (2021)

From The Cutting Room Floor
Jump to navigation Jump to search

This page contains notes for the game Proto:Deltarune/Chapter 1 & 2 Demo (2021).

Hmmm...
To do:
Add more info about reading ch2 cutscene code.

Hacking the Game

While datamining the game you may occasionally need to edit the game in order to restore stuff, so here's some notes. I assume you're editing data.win with UndertaleModTool in this section.

Code

Usually what you need to edit is the code. There are 3 tabs in the editor for a code entry:

  • Decompiled - GML code that UMT's decompiler converted from the opcodes. The GM manual has a GML reference that can help you read the code. You can edit the code in the editor, and click the space outside of the editor or press Ctrl+K to compile it.
  • Disassembly - VM assembly that UMT's disassembler converted from the opcodes. This reference by Space Core may help while reading this. You can also edit it.
  • Graph view - Flow chart graph view generated from the opcodes. It's currently broken, and will be removed.

Note that editing code from the Decompiled tab may be unstable; always back your data.win up.

Hmmm...
To do:
Maybe remove this section. It doesn't seem useful.

Chapter 2 Cutscene System Stuff

Chapter 2 added a new cutscene system.

Cutscene Commands

Here's a basic documentation of the cutscene commands for this system.

Hmmm...
To do:
Complete this. Also document the script aliases.

Based on the order in scr_cutscene_commands:

delaycmd

Wait for arg1 frames, then execute command arg2 with parameter arg3. If instant mode is enabled, the command is run immediately.

walk

Makes an actor walk to direction arg1 with speed arg2 for arg3 frames. If instant mode is enabled, move the actor to the point the actor will end up in immediately.

walkdirect

Elementary, my dear Cactus.
This needs some investigation.
Discuss ideas and findings on the talk page.
Specifically: Is arg3 actually the speed?

Makes an actor walk to point arg1, arg2 (if both parameters are 0, the actor will move to itself) at speed arg3. If instant mode is enabled, move the actor to point arg1, arg2 immediately.

msgset, msgnext

Calls script msgset or msgnext with the parameters the commands received.

talk

If not in instant mode, spawns a obj_dialoguer with the side and zurasu settings previously set with msgside.

msgface, msgfacenext

Calls scr_anyface or scr_anyface_next with the parameters the commands received.

msgside

Sets side or zurasu variables for later use. Possible arg1 values include:

  • any - Makes dialoguers decide where it should appear at
  • top - Makes dialoguer show up at the top of the screen
  • bottom - Makes dialoguer show up at the bottom of the screen
  • zurasuon - Turns on zurasu (which means "move" or "shift" in Japanese), makes the writer objects attached to dialoguers move with the dialoguer
(Source: colinator27)
  • zurasuoff - Turns off zurasu

emote

If not in instant mode, changes the emote of an actor by calling scr_emote on it with the parameters the command received (arg3 is ignored if it is 0).

speaker

Calls scr_speaker with arg1.

fe

Sets global.fe to arg1, also sets global.fc to arg2 if arg2 is not -2.

msc

Sets global.msc (message code) to arg1, then initializes the message by calling scr_text.

instancecreate

Creates a object (arg3) at arg1, arg2, and sets cutscene_instance in the master object to it.

Elementary, my dear Cactus.
This needs some investigation.
Discuss ideas and findings on the talk page.
Specifically: cutscene_instance???