This page lists the commands that have been added to the EasyRPG Player, as well as commands that received new parameters.
To be able to use those commands in a game, the EasyRPG flag must be set in the EasyRPG.ini file of the game.
As of now, those commands can only be used by writing them in raw format, or by using the EasyRPGCommands plugin of the Maniac Patch editor.
The TestGame-EasyRPG includes test cases for those commands, which can be used as references if needed:
The Trigger Event At command allows to call the current page of an event by specifying its coordinates.
The command has the following fields:
Notes:
Raw writing:
2002, "", a, b, c, d, e
2002: Command codea: Whether the X Coordinate to use should be a constant (0), a variable (1) or a redirection of variable (2).b: Value to use for the X Coordinate.c: Whether the Y Coordinate to use should be a constant (0), a variable (1) or a redirection of variable (2).d: Value to use for the Y Coordinate.e: Whether the triggered event should continue facing its current direction (0) or if it should face the hero (1).The Pathfinder command allows to make an event move to specified coordinates by avoiding obstacles that are on the route.
The command has the following fields:
Notes:
EasyRpgPathFinder: Unknown event with id [ID] will be displayed.Raw writing:
2003, "", a, b, c, d, e, f, g, h, i, j, k, l, m, n, o
2003: Command codea: Whether the Event ID to use should be a constant (0), a variable (1) or a redirection of variable (2).b: Value to use for the Event ID.c: Whether the Target X to use should be a constant (0), a variable (1) or a redirection of variable (2).d: Value to use for the Target X.e: Whether the Target Y to use should be a constant (0), a variable (1) or a redirection of variable (2).f: Value to use for the Target Y.g: Whether the Max Iterations to use should be a constant (0), a variable (1) or a redirection of variable (2).h: Value to use for the Max Iterations.i: Whether the Max Route Steps to use should be a constant (0), a variable (1) or a redirection of variable (2).j: Value to use for the Max Route Steps.k: Determines the parameters:+1 if the pathfinding algorithm to use is "Wait, until event stops moving, then find path and continue". This overrides other pathfindings algorithms.+2 if diagonal movements are allowed.+4 if debug output is enabled.+8 if the pathfinding algorithm to use is "Skip pathfinding when the event is currently moving". This overrides the default pathfinding algorithm "Find path and continue".+16 if skip steps if cannot move is enabled.l: Whether the Event Ignore List to use should be a constant (0), a variable (1) or a redirection of variable (2).m: If the Event Ignore List is set to constant, number of values to ignore. Otherwise, value to use for the Event Ignore List.m, if the Event Ignore List was set to 0, all arguments will be listed from here, after which the last two parameters will be listed.n: Whether the Move Frequency to use should be a constant (0), a variable (1) or a redirection of variable (2).o: Value to use for the Move Frequency.The Wait for Single Movement command allows to wait for one event to finish moving before continuing processing the code of the event.
While RPG Maker 2000 and RPG Maker 2003 already include a Wait for All Movement command, this command can easily lead to softlocks in game if one event gets stuck moving.
The command has the following fields:
Notes:
EasyRpgWaitForSingleMovement: Unknown event with id [ID] will be displayed.Raw writing:
2051, "", a, b, c, d, e, f
2051: Command codea: Whether the Event ID to use should be a constant (0), a variable (1) or a redirection of variable (2).b: Value to use for the Event ID.c: Whether the Failure Count to use should be a constant (0), a variable (1) or a redirection of variable (2).d: Value to use for the Failure Count.e: Whether the Output Variable to use should be a constant (0), a variable (1) or a redirection of variable (2).f: Value to use for the Output Variable.ℹ️ This command is not present in the EasyRPGCommands plugin, and can only be written through raw writing as of now.
Current issues with the command: EasyRPG Player issue #3659
The Set Interpreter Flag command allows to temporarily enable or disable a patch flag for the processing of an event. This can for instance be used if you want to enable a patch only to do a specific action without further altering the behaviour of the game.
The command has the following fields:
dynrpg to enable or disable the DynRPG flag. DynRPG commands that can be used if the EasyRPG flag is set will not be affected.maniac to enable or disable the Maniac Patch flag.common-this to enable the Common This Event flag. It currently cannot be used to disable the flag.key-patch to enable or disable the Key Patch flag.rpg2k3-cmds or rpg2k3-commands to enable or disable the processing of RPG Maker 2003 commands.rpg2k-battle to start a battle with the RPG Maker 2000 battle system.Notes:
Raw writing:
2053, "patchname", a, b
2053: Command codepatchname: Which patch should be altered for the processing of the event.a: Whether the Flag Status to use should be a constant (0), a variable (1) or a redirection of variable (2).b: Value to use for the Flag Status.ℹ️ This command relies on the nlohmann_json dependency used by the EasyRPG Player, which is not shipped on homebrew platforms (Wii, Wii U, 3DS, PS Vita, Switch). As such, attempting to use this command on one of those platforms will fail and will display the warning "CommandEasyRPGProcessJson: JSON not supported on this platform".
Current issues with the command: EasyRPG Player issue #3657
The Process JSON command allows to retrieve values from a string variable to process them as-if it was a JSON file.
The command has the following fields:
0 - Get Value: Returns the value of the object pointed by the JSON path. If the JSON path was set to /, the entire JSON will be returned.1 - Set Value: Sets the value of the variable to the object that was pointed by the JSON path.2 - Get Length: Returns the numbers of elements of the JSON from the specified JSON path. If the specified JSON path has no element or does not exist, the value returned will be 0.3 - Get Keys: Returns the name of the elements of the JSON from the specified JSON path. If the specified JSON path points to a normal object an object that does not exist, the value returned will be [].4 - Get Type: Returns the type of the element that was pointed by the JSON path. If an object does not exist, the value returned will be 0 for a variable and an empty result for a string variable. The following types can be retrieved (where the type on the left will be the result if the output is set to a string variable, and the value on the right the value assigned if set to a variable):object, 1array, 2string, 3number, 4boolean, 5null, 65 - Remove Key: Removes the selected element that was pointed by the JSON path. If the selected path is valid but the object does not exist, nothing will happen. If the root is selected as the target, the content of the JSON will end up being {}.6 - Array Push: Adds the selected value to the array pointed by the JSON path. If the pointed element is not an array, it will not work.7 - Array Pop: Removes the last entry of the array pointed by the JSON path to put in the target variable. If the array is empty, a warning will be displayed.8 - Contains: Returns the value 1 if the selected JSON path exists, and returns 0 otherwise.0 corresponds to a switch, 1 to a variable and 2 to a string variable. /.{ "keys": [] }: If set and that the operation used was Get Keys, the keys obtained will be added within an array called keys.Notes:
Raw writing:
2055, "string", a, b, c, d, e, f, g, h, i, j, k
2055: Command code"string": JSON of the command followed by the JSON Path, with both attached.a: Whether the Operation Mode to use should be a constant (0), a variable (1) or a redirection of variable (2).b: Value to use for the Operation Mode.c: Whether the JSON to use should come directly from the command (0), from a string variable (1) or from a redirection of string variable (2).d: If the JSON to use is set to come from the command, number of characters of the JSON. Otherwise, value to use for the string variable or redirection of string variable for the JSON.e: Whether the Target Var Type value to use should be a constant (0), a variable (1) or a redirection of variable (2).f: Value to use for the Target Var Type.g: Whether the Target Var ID value to use should be a constant (0), a variable (1) or a redirection of variable (2).h: Value to use for the Target Var ID.i: Whether the JSON Path to use should come directly from the command (0), from a string variable (1) or from a redirection of string variable (2).j: If the JSON Path to use is set to come from the command, number of characters of the JSON Path. Otherwise, value to use for the string variable or redirection of string variable for the JSON Path.k: Determines the parameters:+1 if command codes should be parsed.+2 if command codes should be parsed, with numbers in hexadecimal. It overrides the previous parsing setting.+4 if Pretty Print JSON should be applied.+8 if Get Keys lists should be wrapped with { "keys": []}
.
The Clone Map Event allows to clone an event from the current map or from another map to the current map.
The command has the following fields:
last event ID present on the map + 1.Notes:
CloneMapEvent: Event ID [ID] not found on source map [ID] will be displayed.Raw writing:
2056, "eventname", a, b, c, d, e, f, g, h, i, j, k, l
eventname: Name to use for the cloned event.a: Whether the Source Map to use should be a constant (0), a variable (1) or a redirection of variable (2).b: Value to use for the Source Map.c: Whether the Source Event ID to use should be a constant (0), a variable (1) or a redirection of variable (2).d: Value to use for the Source Event ID.e: Whether the Target X to use should be a constant (0), a variable (1) or a redirection of variable (2).f: Value to use for the Target X.g: Whether the Target Y to use should be a constant (0), a variable (1) or a redirection of variable (2).h: Value to use for the Target Y.i: Whether the Target Event ID to use should be a constant (0), a variable (1) or a redirection of variable (2).j: Value to use for the Target Event ID.k: Whether the New Event Name to use should be defined as part of the command (0), should come from a string variable (1) or from a redirection of string variable (2).l: Value to use for the New Event Name. If the New Event Name comes from the command itself, this parameter does not matter.The Destroy Map Event command allows to entirely remove an event from the current map.
When using the command Erase Event on an event, the event is not actually erased, it is just disabled: it is still possible to call the event, and it is possible to bring it back through the Return function of the Erase Event command of the Maniac patch.
The Destroy Map Event command, meanwhile, completely removes the event: the event will no longer exist and will not be able to be called. It can be combined with the command Clone Map Event to remove events that were cloned once they are no longer needed.
The command only has one field, which consists of the ID of the event, with the possibility to use a constant, a variable or variable redirection.
Notes:
Raw writing:
2057, "", a, b
2057: Command codea: Whether the Event ID to use should be a constant (0), a variable (1) or a redirection of variable (2).b: Value to use for the Event ID.Since the Maniac patch, the Open Save Menu command was reworked to also allow opening other menus, and was renamed to Call System Functions.
EasyRPG Player assigns a menu value to open one of its exclusive menus.
ℹ️ This command is not present in the EasyRPGCommands plugin, and can only be written through raw writing as of now. As it does not take any parameter, you can directly copy it from the TestGame-EasyRPG if needed.
The Open Language Menu function allows to open the language menu of the EasyRPG translation feature.
If this command is used and at least one translation exists, the language menu will be opened. Otherwise, it's the save menu that will be opened.
Raw writing:
11910, "", 207