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/04 18:19] – [Swap Event Location] 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 =====
  
-⚠️// This option was added in development versions of the editor, and is as such not available in public versions, in addition to lacking a common TPC writing.//+//Player status: Unsupported// ❌
  
 +The **Name Input Processing** command allows to open the name input screen to rename a hero.
 +
 +The Maniac Patch adds the possibility to use a variable or variable redirection for the ID of the actor. ⚠️// This option is not directly accessible through the Maniac editor in the public version, and requires using TPC, raw writing or another tool.//
 +
 +The development version adds the following field:
 +  * Character limit: How many characters can be typed for the name, with the possibility to either use a constant, variable or variable redirection. ⚠️// This option was added in development versions of the editor, and is as such not available in public versions, in addition to lacking a common TPC writing.//
 +
 +Additionally, as custom pages for the name input processing scene can be written since the development version, the initial page can now use more values than just 0 and 1. ⚠️// This option was added in development versions of the editor, and is as such not available in public versions, in addition to lacking a common TPC writing.//
 +
 +Notes:
 +  * The character limit is capped on the [1;30] range.
 +  * Having the character limit set to 0 will use the default character limit (12 in English RPG Maker 2003).
 +
 +TPC syntax: <code>@actor[1].inputName .kana .preset</code>
 +
 +Where:
 +  * ''1'': ID of the hero, with the possibility to replace the constant by a variable or variable redirection.
 +  * ''.kana'': If set, the default page will be set to the second page (1). If omitted, the default page will be set to the first page (0).
 +  * ''.preset'': If set, the name of the actor should be displayed by default. If omitted, it will not be set by default.
 +
 +Raw writing: <code>10740, "", a, b, c, d, e</code>
 +  * ''10740'': Command code
 +  * ''a'': Value to use for the Actor ID.
 +  * ''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).
 +  * ''d'': Defines if the values to use are constants, variables or variable redirections:
 +    * ''+1'' if the Actor ID to use should be a variable.
 +    * ''+2'' if the Actor ID to use should be a variable redirection.
 +    * ''+65536'' if the character limit to use should be a variable.
 +    * ''+131072'' if the character limit to use should be a variable redirection.
 +  * ''e'': Value to use for the character limit.
 ===== Set Vehicle Location ===== ===== Set Vehicle Location =====
  
 ⚠️// 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.//
 +
 +//Player status: Unsupported// ❌
 +
 +The **Set Vehicle Location** command allows to teleport a vehicle.
 +
 +The Maniac Patch allows specifying a direction that the vehicle should face after teleportation.
 +
 +Common TPC syntax: <code>@map[1].setVehiclePos .ship .pos 2, 3 .up</code>
 +
 +Where:
 +  * ''1'' corresponds to the map ID, ''2'' to the X coordinate and ''3'' to the Y coordinate; They can be set to either constants or variables, but their types cannot be mixed.
 +  * ''.ship'' corresponds to the vehicle, with the possibility to specify ''.boat'' for the Boat, ''.ship'' for the Ship and ''.airship'' for the Airship. ⚠️ //TPC does not has a common syntax to specify the Player as a vehicle.//
 +  * ''.up'' corresponds to the direction parameter, with ''.retain'' corresponding to no direction change, ''.up'' to face up, ''right'' to face right, ''.down'' to face down and ''.left'' to face left.
 +
 +Notes:
 +  * It is possible to teleport the player through this command: doing so will not display any transition nor clear any picture if the map changes.
 +  * Specifying a negative direction or a direction higher than 4 will keep the current direction.
 +
 +Raw writing: <code>10850, "", a, b, c, d, e, f</code>
 +  * ''10850'': Command code
 +  * ''a'': Value to use for the Vehicle:
 +    * ''-1'': Player
 +    * ''0'': Boat
 +    * ''1'': Ship
 +    * ''2'': Airship
 +  * ''b'': Whether the map ID and coordinates should be constants (0) or variables (1).
 +  * ''c'': Value to use for the map ID.
 +  * ''d'': Value to use for the X coordinate.
 +  * ''e'': Value to use for the Y coordinate.
 +  * ''f'': Value to use for the Direction:
 +    * ''1'': Up
 +    * ''2'': Right
 +    * ''3'': Down
 +    * ''4'': Left
 +    * ''Other values'': Retain 
  
 ===== Set Event Location ===== ===== Set Event Location =====
 +
 +⚠️// Those options are only accessible through the Maniac editor in development versions, but the displayed interface incorrectly displays that the Direction can be set as a variable or variable redirection which is false, and the parameter for the Event ID on the interface is actually the one displayed for the Direction. Those options can be used on public versions, but require using TPC, raw writing or another tool.//
 +
 +//Player status: Supported// ✅
 +
 +The **Set Event Location** command allows to teleport an event.
 +
 +The Maniac Patch allows to specify a variable or variable redirection for the event ID, and allows specifying a direction that the event should face after teleportation.
 +
 +Common TPC syntax: <code>@ev[1].setPos .pos 2, 3 .up</code>
 +
 +Where:
 +  * ''1'' corresponds to the event ID, with the possibility to replace it by a variable or variable redirection.
 +  * ''2'' corresponds to the X coordinate and ''3'' to the Y coordinate; They can be set to either constants or variables, but their types cannot be mixed.
 +  * ''.up'' corresponds to the direction parameter, with ''.retain'' corresponding to no direction change, ''.up'' to face up, ''.right'' to face right, ''.down'' to face down and ''.left'' to face left.
 +
 +Notes:
 +  * The instance This Event can be specified by specifying the ID 10005, but the Player and the vehicles (IDs 10001~10004) cannot be targeted using the command.
 +  * Specifying a negative direction or a direction higher than 4 will keep the current direction.
 +
 +Raw writing: <code>10860, "", a, b, c, d, e</code>
 +  * ''10860'': Command code
 +  * ''a'': Value to use for the event ID.
 +  * ''b'': Whether the values to use should be constants, variables or variable redirections:
 +    * ''+1'' if the coordinates to use should be variables.
 +    * ''+256'' if the Event ID to use should be a variable.
 +    * ''+512'' if the Event ID to use should be a variable redirection.
 +  * ''c'': Value to use for the X coordinate.
 +  * ''d'': Value to use for the Y coordinate.
 +  * ''e'': Value to use for the Direction:
 +    * ''1'': Up
 +    * ''2'': Right
 +    * ''3'': Down
 +    * ''4'': Left
 +    * ''Other values'': Retain 
  
 ===== Swap Event Location ===== ===== Swap Event Location =====
Line 121: 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 218: 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 356: 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 399: 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 415: Line 540:
  
 ===== Show Picture ===== ===== Show Picture =====
 +
 +FIXME
  
 ===== Move Picture ===== ===== Move Picture =====
 +
 +FIXME
  
 ===== Erase Picture ===== ===== Erase Picture =====
Line 440: Line 569:
  
 ===== Show Animation ===== ===== Show Animation =====
 +
 +FIXME
  
 ===== Wait ===== ===== Wait =====
Line 461: Line 592:
 ===== Play BGM ===== ===== Play BGM =====
  
 +//Player status: Supported// ✅
 +
 +The **Play BGM** command allows to play a music.
 +
 +The Maniac Patch supports the use of variables and variable redirections for the fadein time, tempo, balance and volume, as well as using a string variable or string variable redirection for the music name.
 +
 +Notes:
 +  * Internally, the unit used for the Fadein Time by the command is milliseconds, not seconds: for instance, if you want to fadein the music by 5 seconds, then the value to use should be 5000.
 +
 +TPC syntax: <code>@bgm.play "music" .opt 5000, 80, 100, 50</code>
 +
 +Where:
 +  * ''music'' is the name of the music, and can be replaced by a string variable or string variable redirection.
 +  * ''5000'' is the Fadein Time of the music, with the possibility to use a variable or variable redirection.
 +  * ''80'' is the Volume of the music, with the possibility to use a variable or variable redirection.
 +  * ''100'' is the Tempo of the music, with the possibility to use a variable or variable redirection.
 +  * ''50'' is the Balance of the music, with the possibility to use a variable or variable redirection.
 +
 +Raw writing: <code>11510, "name", a, b, c, d, e, f</code>
 +  * ''11510'': Command code
 +  * ''name'': Name of the music. If the Music Name to use is set to a string variable, this has no effect.
 +  * ''a'': Value to use for the Fadein Time.
 +  * ''b'': Value to use for the Volume.
 +  * ''c'': Value to use for the Tempo.
 +  * ''d'': Value to use for the Balance.
 +  * ''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.
 +    * ''+2'' if the Music Name to use should be a string variable redirection.
 +    * ''+16'' if the Fadein Time to use should be a variable.
 +    * ''+32'' if the Fadein Time to use should be a variable redirection.
 +    * ''+256'' if the Volume to use should be a variable.
 +    * ''+512'' if the Volume to use should be a variable redirection.
 +    * ''+4096'' if the Tempo to use should be a variable.
 +    * ''+8192'' if the Tempo to use should be a variable redirection.
 +    * ''+65536'' if the Balance to use should be a variable.
 +    * ''+131072'' if the Balance to use should be a variable redirection.
 +  * ''f'': If the Music Name to use is a string variable or string variable redirection, value to use for the string variable.
 ===== Fadeout BGM ===== ===== Fadeout BGM =====
  
Line 482: Line 650:
 ===== Play SE ===== ===== Play SE =====
  
 +//Player status: Supported// ✅
 +
 +The **Play SE** command allows to play a sound effect.
 +
 +The Maniac Patch supports the use of variables and variable redirections for the tempo, balance and volume, as well as using a string variable or string variable redirection for the sound name.
 +
 +TPC syntax: <code>@se.play "sound" .opt 80, 100, 50</code>
 +
 +Where:
 +  * ''sound'' is the name of the sound, and can be replaced by a string variable or string variable redirection.
 +  * ''80'' is the Volume of the sound, with the possibility to use a variable or variable redirection.
 +  * ''100'' is the Tempo of the sound, with the possibility to use a variable or variable redirection.
 +  * ''50'' is the Balance of the sound, with the possibility to use a variable or variable redirection.
 +
 +Raw writing: <code>11550, "name", a, b, c, d, e</code>
 +  * ''11550'': Command code
 +  * ''name'': Name of the sound effect. If the Sound Name to use is set to a string variable, this has no effect.
 +  * ''a'': Value to use for the Volume.
 +  * ''b'': Value to use for the Tempo.
 +  * ''c'': Value to use for the Balance.
 +  * ''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.
 +    * ''+2'' if the Sound Name to use should be a string variable redirection.
 +    * ''+16'' if the Volume to use should be a variable.
 +    * ''+32'' if the Volume to use should be a variable redirection.
 +    * ''+256'' if the Tempo to use should be a variable.
 +    * ''+512'' if the Tempo to use should be a variable redirection.
 +    * ''+4096'' if the Balance to use should be a variable.
 +    * ''+8192'' if the Balance to use should be a variable redirection.
 +  * ''e'': If the Sound Name to use is a string variable or string variable redirection, value to use for the string variable.
 ===== Key Input Processing ===== ===== Key Input Processing =====
 +
 +//Player status: Supported //✅//; Wheel Mouse Up and Wheel Mouse Down are not properly tracked if the command is formatted like a RPG Maker 2000 command.//
 +
 +The **Key Input Processing** command allows to track pressed keys.
 +
 +In the Maniac Patch, the following buttons can be tracked, and will give the following values:
 +  * **Mouse wheel down**: 1001
 +  * **Mouse wheel up**: 1004
 +  * **Left mouse button**: 1005
 +  * **Right mouse button**: 1006
 +  * **Middle mouse button**: 1007
 +
 +Common TPC writing: <code>@key.input .wait .elapsed v[2] .dst v[1] {
 +    .decision
 +    .cancel
 +    .shift
 +    .down
 +    .left
 +    .right
 +    .up
 +    .number
 +    .symbol
 +    .lclick
 +    .rclick
 +    .mclick
 +    .wheelDown
 +    .wheelUp
 +}</code>
 +
 +Where:
 +  * ''v[1]'' corresponds to the variable that should receive the key input value.
 +  * ''.elapsed v[2]'' corresponds to the Count time until key is pressed argument as well as the variable that should receive the value. If omitted, it will not be set.
 +  * ''.wait'' corresponds to Wait for Key Input. If omitted, it will not be set.
 +  * ''.decision'', ''.cancel'', ''.shift''... corresponds to the keys that are tracked. If keys are omitted, they will not be tracked.
 +
 +Raw writing (format used by RPG Maker 2000; also used by RPG Maker 2003 if the command has 10 numeric arguments or less): <code>11610, "", a, b, c, d, e, f, g, h, i, j</code>
 +  * ''11610'': Command code
 +  * ''a'': Variable that should receive the key input value.
 +  * ''b'': Whether Wait for Key Input should not be used (0) or if it should be used (1).
 +  * ''c'': If the command has five numeric arguments or less, whether all arrow keys should not be tracked (0) or if they should be tracked (1). Compatibility leftover from the original RPG Maker 2000 version.
 +  * ''d'': Whether the Interaction key and the Left Mouse button should be tracked:
 +    * ''+1'' if the Interaction key should be tracked.
 +    * ''+2'' if the Left Mouse button should be tracked.
 +  * ''e'': Whether the Cancel key and the Right Mouse button should be tracked:
 +    * ''+1'' if the Cancel key should be tracked.
 +    * ''+2'' if the Right Mouse button should be tracked.
 +  * ''f'': Whether the Shift key and the Middle Mouse button should be tracked:
 +    * ''+1'' if the Shift key should be tracked.
 +    * ''+2'' if the Middle Mouse button should be tracked.
 +  * ''g'': Whether the Down key and the Mouse Wheel Down should be tracked:
 +    * ''+1'' if the Down key should be tracked.
 +    * ''+2'' if the Mouse Wheel Down should be tracked.
 +  * ''h'': Whether the Left key should not be tracked (0) or if it should be tracked (1).
 +  * ''i'': Whether the Right key should not be tracked (0) or if it should be tracked (1).
 +  * ''j'': Whether the Up key and the Mouse Wheel Up should be tracked:
 +    * ''+1'' if the Up key should be tracked.
 +    * ''+2'' if the Mouse Wheel Up should be tracked.
 +
 +Raw writing (RPG Maker 2003): <code>11610, "", a, b, c, d, e, f, g, h, i, j, k, l, m, n</code>
 +  * ''11610'': Command code
 +  * ''a'': Variable that should receive the key input value.
 +  * ''b'': Whether Wait for Key Input should not be used (0) or if it should be used (1).
 +  * ''c'': If the command has five numeric arguments or less, whether all arrow keys should not be tracked (0) or if they should be tracked (1). Compatibility leftover from the original RPG Maker 2000 version.
 +  * ''d'': Whether the Interaction key and the Left Mouse button should be tracked:
 +    * ''+1'' if the Interaction key should be tracked.
 +    * ''+2'' if the Left Mouse button should be tracked.
 +  * ''e'': Whether the Cancel key and the Right Mouse button should be tracked:
 +    * ''+1'' if the Cancel key should be tracked.
 +    * ''+2'' if the Right Mouse button should be tracked.
 +  * ''f'': Whether the Number keys should not be tracked (0) or if they should be tracked (1).
 +  * ''g'': Whether the Symbol keys should not be tracked (0) or if they should be tracked (1).
 +  * ''h'': If Wait for Key Input and Count time until key is pressed are enabled, variable that should receive the wait value.
 +  * ''i'': If Wait for Key Input is enabled, whether Count time until key is pressed should not be tracked in a variable (0) or if it should be tracked (1).
 +  * ''j'': Whether the Shift key and the Middle Mouse button should be tracked:
 +    * ''+1'' if the Shift key should be tracked.
 +    * ''+2'' if the Middle Mouse button should be tracked.
 +  * ''k'': Whether the Down key and the Mouse Wheel Down should be tracked:
 +    * ''+1'' if the Down key should be tracked.
 +    * ''+2'' if the Mouse Wheel Down should be tracked.
 +  * ''l'': Whether the Left key should not be tracked (0) or if it should be tracked (1).
 +  * ''m'': Whether the Right key should not be tracked (0) or if it should be tracked (1).
 +  * ''n'': Whether the Up key and the Mouse Wheel Up should be tracked:
 +    * ''+1'' if the Up key should be tracked.
 +    * ''+2'' if the Mouse Wheel Up should be tracked.
  
 ===== Change Tileset ===== ===== Change Tileset =====
Line 498: 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 581: 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 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.
 +
 +In the Maniac Patch, it is now possible to specify another event ID to erase, as well as using a variable or variable redirection for the event ID to use. Additionally, once an event has been erased, it is possible to make it come back.
 +
 +Notes:
 +  * The instance This Event can be specified either by using the value 0 or 10005.
 +  * The Player and the vehicles cannot be altered by this command.
 +  * Specifying an event ID that does not exist displays an error and forces the game to close.
 +  * Erasing an event already erased or making an event already present return has no effect.
 +
 +TPC syntax: <code>@ev[1].erase</code>
 +
 +Where:
 +  * ''1'' is the event ID to use, with the possibility to use a constant, variable or variable redirection.
 +  * ''.erase'' corresponds to the action to perform, with ''.erase'' to erase an event and ''.return'' to make it return.
 +
 +Raw writing: <code>12320, "", a, b, c</code>
 +  * ''12320'': Command code
 +  * ''a'': Whether the Event ID to use should be a constant (0), variable (16) or variable redirection (32).
 +  * ''b'': Whether the selected event ID should be erased (0) or should return (1).
 +  * ''c'': Value to use for the Event ID.
  
 ===== 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.1791137946.txt.gz · Last modified: by carbonara