Set Game State: Difference between revisions

From Spiral Framework
Jump to navigation Jump to search
No edit summary
No edit summary
Line 44: Line 44:
<pre>0x33|8, 0, 0, 2</pre>
<pre>0x33|8, 0, 0, 2</pre>
This tells the game that when the next map loads, the player should be positioned outside room 1-A. The "position IDs" for each room are currently unknown and so must be researched and documented.
This tells the game that when the next map loads, the player should be positioned outside room 1-A. The "position IDs" for each room are currently unknown and so must be researched and documented.
== Mode 23: Text Speed ==
Mode 23 appears to be a text speed function. Just like the wait function, the game will wait for an amount of frames dependent on arguments 3 and 4.


==Notes==
==Notes==

Revision as of 00:26, 24 March 2018

Hmmm...
To do:
Also investigate this opcode in DR2

The 0x33 opcode is a multipurpose opcode that is used several times in the game with different effects depending on the arguments. It has 4 arguments that are as follows:

  • Argument 1: Mode
  • Argument 2: Unknown
  • Argument 3: Short for argument 4 (Final result = Arg4 + (Arg3 * 255))
  • Argument 4: Variable

The article itself will be split into sections based on the mode argument, since this is what determines the effect 0x33 has on the game. Argument 4 is typically the variable of a mode and changing this changes the effect of the mode.

Mode 0 : Time of Day

Mode 0 is used to control the "Time of Day" display on the HUD. Argument 4 is the only argument which should be used in this mode as other arguments could cause unintended effects.

Argument 4 Effect
0 Daytime
1 Nighttime
2 Morning
3 Midnight
4 Time Unknown
5 Blue slash replaces the time; Normal nighttime theme
6 and onward White block covers the time; Normal daytime theme

Modes 5 and 6 : Wait

Modes 5 and 6 appear to be wait functions. Put simply, the game will wait for an amount of frames dependent on arguments 3 and 4.


Mode 8: Map Load Player Placement

Mode 8 is used to determine where the player will appear in the next map loaded. The meaning of argument 4 depends on the map being loaded. For instance, when exiting classroom 1-A, this code is run:

0x33|8, 0, 0, 2

This tells the game that when the next map loads, the player should be positioned outside room 1-A. The "position IDs" for each room are currently unknown and so must be researched and documented.


Mode 23: Text Speed

Mode 23 appears to be a text speed function. Just like the wait function, the game will wait for an amount of frames dependent on arguments 3 and 4.

Notes

  • This opcode currently has no name due to its nature and lack of research and must be used with its hexadecimal.