User Tools

Site Tools


development:technical-details:patches:maniac:modified-maniac-commands

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
development:technical-details:patches:maniac:modified-maniac-commands [2026/10/07 22:30] – [Erase Event] carbonaradevelopment:technical-details:patches:maniac:modified-maniac-commands [2026/10/09 13:54] (current) – carbonara
Line 8: Line 8:
  
 ===== Display Text Settings ===== ===== Display Text Settings =====
 +
 +FIXME
  
 ===== Change Faceset ===== ===== Change Faceset =====
 +
 +FIXME
  
 ===== Control Variables ===== ===== Control Variables =====
 +
 +FIXME
  
 ===== Change Party Member ===== ===== Change Party Member =====
 +
 +FIXME
  
 ===== Change State ===== ===== Change State =====
 +
 +FIXME
  
 ===== Change Actor Name ===== ===== Change Actor Name =====
Line 58: Line 68:
   * ''c'': If the Nickname is pulled from a string variable or string variable redirection, value to use for the string variable ID.   * ''c'': If the Nickname is pulled from a string variable or string variable redirection, value to use for the string variable ID.
 ===== Change Actor Graphic ===== ===== Change Actor Graphic =====
 +
 +FIXME
  
 ===== Change Actor Faceset ===== ===== Change Actor Faceset =====
 +
 +FIXME
  
 ===== Change System BGM ===== ===== Change System BGM =====
 +
 +FIXME
  
 ===== Change System SE ===== ===== Change System SE =====
 +
 +FIXME
  
 ===== Change System Graphic ===== ===== Change System Graphic =====
Line 88: Line 106:
   * ''d'': If the system graphic should come from a string variable, ID of the string variable.   * ''d'': If the system graphic should come from a string variable, ID of the string variable.
 ===== Battle Processing ===== ===== Battle Processing =====
 +
 +FIXME
  
 ===== Shop Processing ===== ===== Shop Processing =====
  
 ⚠️// This option is not directly accessible through the Maniac editor, and requires using TPC, raw writing or another tool.// ⚠️// This option is not directly accessible through the Maniac editor, and requires using TPC, raw writing or another tool.//
 +
 +FIXME
  
 ===== Name Input Processing ===== ===== Name Input Processing =====
Line 122: Line 144:
   * ''b'': Value to use for the initial page.   * ''b'': Value to use for the initial page.
   * ''c'': Whether the scene should start with no default name (0) or if the name of the actor should be displayed by default (1).   * ''c'': Whether the scene should start with no default name (0) or if the name of the actor should be displayed by default (1).
-  * ''d'': Defines if the the values to use are constants, variables or variable redirections:+  * ''d'': Defines if the values to use are constants, variables or variable redirections:
     * ''+1'' if the Actor ID to use should be a variable.     * ''+1'' if the Actor ID to use should be a variable.
     * ''+2'' if the Actor ID to use should be a variable redirection.     * ''+2'' if the Actor ID to use should be a variable redirection.
Line 222: Line 244:
   * ''a'': Value to use for the first event.   * ''a'': Value to use for the first event.
   * ''b'': Value to use for the second event.   * ''b'': Value to use for the second event.
-  * ''c'': Defines if the the values to use are constants, variables or variable redirections:+  * ''c'': Defines if the values to use are constants, variables or variable redirections:
     * ''+1'' if the value to use for the first event should be a variable.     * ''+1'' if the value to use for the first event should be a variable.
     * ''+2'' if the value to use for the first event should be a variable redirection.     * ''+2'' if the value to use for the first event should be a variable redirection.
Line 319: Line 341:
  
 ⚠️// This option is not directly accessible through the Maniac editor, and requires using TPC, raw writing or another tool.// ⚠️// This option is not directly accessible through the Maniac editor, and requires using TPC, raw writing or another tool.//
 +
 +FIXME
  
 ===== Scroll Map ===== ===== Scroll Map =====
Line 457: Line 481:
   * ''11060'': Command code   * ''11060'': Command code
   * ''a'': Whether the Unit of Speed to use should be Amount of movement per frame (4) or Movement frame (5).   * ''a'': Whether the Unit of Speed to use should be Amount of movement per frame (4) or Movement frame (5).
-  * ''b'': Defines if the the values to use are constants, variables or variable redirections:+  * ''b'': Defines if the values to use are constants, variables or variable redirections:
     * ''+1'' if the X to use should be a variable.     * ''+1'' if the X to use should be a variable.
     * ''+2'' if the X to use should be a variable redirection.     * ''+2'' if the X to use should be a variable redirection.
Line 500: Line 524:
   * ''11060'': Command code   * ''11060'': Command code
   * ''a'': Whether the Unit of Speed to use should be Amount of movement per frame (6) or Movement frame (7).   * ''a'': Whether the Unit of Speed to use should be Amount of movement per frame (6) or Movement frame (7).
-  * ''b'': Defines if the the values to use are constants, variables or variable redirections:+  * ''b'': Defines if the values to use are constants, variables or variable redirections:
     * ''+1'' if the X to use should be a variable.     * ''+1'' if the X to use should be a variable.
     * ''+2'' if the X to use should be a variable redirection.     * ''+2'' if the X to use should be a variable redirection.
Line 516: Line 540:
  
 ===== Show Picture ===== ===== Show Picture =====
 +
 +FIXME
  
 ===== Move Picture ===== ===== Move Picture =====
 +
 +FIXME
  
 ===== Erase Picture ===== ===== Erase Picture =====
Line 541: Line 569:
  
 ===== Show Animation ===== ===== Show Animation =====
 +
 +FIXME
  
 ===== Wait ===== ===== Wait =====
Line 587: Line 617:
   * ''c'': Value to use for the Tempo.   * ''c'': Value to use for the Tempo.
   * ''d'': Value to use for the Balance.   * ''d'': Value to use for the Balance.
-  * ''e'': Defines if the the values to use are constants, variables or variable redirections:+  * ''e'': Defines if the values to use are constants, variables or variable redirections:
     * ''+1'' if the Music Name to use should be a string variable.     * ''+1'' if the Music Name to use should be a string variable.
     * ''+2'' if the Music Name to use should be a string variable redirection.     * ''+2'' if the Music Name to use should be a string variable redirection.
Line 640: Line 670:
   * ''b'': Value to use for the Tempo.   * ''b'': Value to use for the Tempo.
   * ''c'': Value to use for the Balance.   * ''c'': Value to use for the Balance.
-  * ''d'': Defines if the the values to use are constants, variables or variable redirections:+  * ''d'': Defines if the values to use are constants, variables or variable redirections:
     * ''+1'' if the Sound Name to use should be a string variable.     * ''+1'' if the Sound Name to use should be a string variable.
     * ''+2'' if the Sound Name to use should be a string variable redirection.     * ''+2'' if the Sound Name to use should be a string variable redirection.
Line 750: Line 780:
   * ''a'': Value to use for the tileset.   * ''a'': Value to use for the tileset.
   * ''b'': Whether the value to use should be a constant (0), a variable (1) or a variable redirection (2).   * ''b'': Whether the value to use should be a constant (0), a variable (1) or a variable redirection (2).
 +
 ===== Change Parallax Background ===== ===== Change Parallax Background =====
 +
 +FIXME
  
 ===== Call System Functions (Open Save Menu) ===== ===== Call System Functions (Open Save Menu) =====
Line 833: Line 866:
  
 ===== Conditional Branch ===== ===== Conditional Branch =====
 +
 +FIXME //Document the other features of this command.//
 +
 +==== Right after loading state ====
 +
 +//Player status: Partial support //ℹ️//Reported as false on a new game, Load Screen command reported as true//
 +
 +**Right after loading state** (also known as Right after load) can be used to detect if the game just started, either as a new game or as part of a save loading.
 +
 +If the conditional branch is used under one of the following conditions and that it is used during the first frame of said instance, the conditional branch will be considered as true:
 +  * Start of a new game (whether the title is skipped or not)
 +  * Save file loaded from the title screen menu
 +  * Save file loaded from the Load command
 +
 +All other instances will be considered to be false.
 +
 +Notes:
 +  * Loading a save file from the Open Load Menu or Call System Functions: Load Menu command will consider Right after loading state to be false on Maniac.
 +
 +TPC syntax (''.else bl'' can be removed if no else is wanted): <code>@if .rightAfterLoad() {
 +    
 +} .else bl {
 +    
 +}</code>
 +
 +Raw writing (only Conditional Branch header): <code>12010, "", 12, 0, 0, 0, 0, f</code>
 +  * ''12010'': Command code
 +  * ''f'': Whether the Conditional Branch should only be a if (0) or if it should be an if-else (1).
 +
 +==== Joypad is enabled ====
 +
 +//Player status: No proper support, always considered to be true// ℹ️
 +
 +**Joypad is enabled** (also known as Enable Joypad) can be used to detect if a controller is connected.
 +
 +If a controller is connected, it will be reported as true, otherwise it will be reported as false.
 +
 +TPC syntax (''.else bl'' can be removed if no else is wanted): <code>@if .enableJoy() {
 +    
 +} .else bl {
 +    
 +}</code>
 +
 +Raw writing (only Conditional Branch header): <code>12010, "", 12, 1, 0, 0, 0, f</code>
 +  * ''12010'': Command code
 +  * ''f'': Whether the Conditional Branch should only be a if (0) or if it should be an if-else (1).
 +
 +==== Window is active ====
 +
 +//Player status: No proper support, always considered to be true// ℹ️
 +
 +**Window is active** can be used to detect if the window of the game is currently active.
 +
 +This command is expected to be combined with [[new-maniac-commands#behavior-when-inactive|Set Game Option: Behavior when Inactive]] as to let the game run while in the background (otherwise the window will always be reported as being active).
 +
 +If the behavior of the game window when inactive is set to keep running and that the window of the game is put in the background, it will be reported as false. Otherwise, it will be reported as true.
 +
 +TPC syntax (''.else bl'' can be removed if no else is wanted): <code>@if .active() {
 +    
 +} .else bl {
 +    
 +}</code>
 +
 +Raw writing (only Conditional Branch header): <code>12010, "", 12, 2, 0, 0, 0, f</code>
 +  * ''12010'': Command code
 +  * ''f'': Whether the Conditional Branch should only be a if (0) or if it should be an if-else (1).
 +
 +==== File output is available ====
 +
 +//Player status: No proper support, always considered to be true// ℹ️
 +
 +**File output is available** (also known as Can output file) can be used to know if the Maniac Patch is currently able to write files.
 +
 +When using the commands Save, Control Global Save, Control String Variables and Output Picture, the Maniac Patch is able to write files in the game directory of the game: as to avoid problems with games writing too many files at once causing issues with the user machine, there is a limit of around 3 files write per second. If more file writing are attempted to be done during the same second, they will all fail.
 +
 +The conditional branch as such informs you of this state: if you have met the file writing limit, the conditional branch will be reported as false; otherwise it will be reported as true.
 +
 +TPC syntax (''.else bl'' can be removed if no else is wanted): <code>@if .canOutput() {
 +    
 +} .else bl {
 +    
 +}</code>
 +
 +Raw writing (only Conditional Branch header): <code>12010, "", 12, 3, 0, 0, 0, f</code>
 +  * ''12010'': Command code
 +  * ''f'': Whether the Conditional Branch should only be a if (0) or if it should be an if-else (1).
  
 ===== Loop ===== ===== Loop =====
 +
 +FIXME
  
 ===== Break Loop ===== ===== Break Loop =====
 +
 +FIXME
  
 ===== End Event Processing ===== ===== End Event Processing =====
  
 ⚠️// The options of this command were added in development versions of the editor, and are as such not available in public versions, in addition to lacking common TPC writings.// ⚠️// The options of this command were added in development versions of the editor, and are as such not available in public versions, in addition to lacking common TPC writings.//
 +
 +FIXME
  
 ===== Erase Event ===== ===== Erase Event =====
  
-//Player support: Partial support //ℹ️//; specifying the event ID 10005 does not work; No warning is displayed when selecting an invalid event ID.//+//Player status: Partial support //ℹ️//; specifying the event ID 10005 does not work; No warning is displayed when selecting an invalid event ID.//
  
 The **Erase Event** command allows to erase an event. The **Erase Event** command allows to erase an event.
Line 869: Line 994:
  
 ===== Call Event ===== ===== Call Event =====
 +
 +FIXME
  
 ===== Change Enemy HP ===== ===== Change Enemy HP =====
 +
 +FIXME
  
 ===== Change Enemy MP ===== ===== Change Enemy MP =====
 +
 +FIXME
  
 ===== Change Enemy State ===== ===== Change Enemy State =====
 +
 +FIXME
  
 ===== Enemy Encounter ===== ===== Enemy Encounter =====
 +
 +FIXME
  
 ===== Change Battleback ===== ===== Change Battleback =====
 +
 +FIXME
  
 ===== Show Animation (Battle) ===== ===== Show Animation (Battle) =====
 +
 +FIXME
  
 ===== Action Times + ===== ===== Action Times + =====
 +
 +FIXME
  
 ===== Force Escape ===== ===== Force Escape =====
 +
 +FIXME
  
 ===== Conditional Branch (Battle) ===== ===== Conditional Branch (Battle) =====
 +
 +FIXME
development/technical-details/patches/maniac/modified-maniac-commands.1791412203.txt.gz · Last modified: by carbonara