RPG Maker Action Combat
Notetags
❤️ HP System for Events
Setup a hp bar to an event
HP Bar Customization
⚔️ Damage System
The damage this event will deal to others. This only assign damage value to the event. To calculate damage, you need to use plugin command "Increase/Decrease Character HP"
Combat Timing
Damage over time effects that will continue after x frames have passed. Only for conditional branch
checkCollide(source, target, cooldown (write as is)")
Hitbox Configuration
Hitbox of this event. Every event has the default hitbox is 1, 1, 0, 0 unless otherwise. (Units: width/height in tiles, offsets in pixels)
Assign Attacker in Formula
Optional notetag to manually assign the attacker in a skill’s formula box. If left blank, the plugin will auto-detect the attacker. Most of the time, you won't need to use this.
🎨 Visual Customization
Color Effects
Hue the event, min -180, max 180, you can hue in Aseprite for preview
Position Adjustment
Offset the event's sprite. Only the sprite!
🎯 Movement & Interaction
Only usable for movement route moveToClosest, which to not move to events with this notetag
Player can step on any event with this notetag regardless of where they're being placed
Transform the event into a platform. Characters stepping on platform will move along with it. Size is in pixel unit. If size isn't assigned (you only write <platform>) then size will be 48 pixel by default.
Comments
🔄 Event Behavior
Passive Events
The common event ids/names that this event will call in parallel. It's like calling a common event in a parallel event but on another layer that isn't being affected by any commands inside that event.
Animation Control
Adjust the walking animation speed of the event. The lower the number, the faster the animation plays.
Event Sliding
Stop the event from moving instead of sliding, when it moves toward an obstacle or screen boundary.
🏗️ Collision System
Collision Area
Expand your event collision area (not hitbox). All in tile unit (still support decimal). Offset doesn't move the rect but move your player/event location. Rect when expand will expand with anchor top-left, which also is where the player/event is standing
<collisionRect: 3, 3, 1, 1> Same but also make event sprite to be at the center
Hitbox Collision Control
The event will be ignored from conditional branch checkCollide on any page with this comment
👨👧👦 Parent-Child System
Child Events
Make the event to be a child of another event/player. Child events are just regular events with attributes to move along with the player.
Child Positioning
Adjust position of the child from the parent
🖱️ Mouse Interaction
Clickable Events
Event with this comment can be activated via mouse click and only when the player is within range
<clickable: 3> - Display outline and can be triggered if player is within 3 tiles
Conditional Branch
❤️ HP Monitoring
Check the current HP of an event or player
Check if the event just got its HP decreased
Check if the event just got collided by another event (result of condition checkCollide)
💥 Collision Checking
Check collision between source and target ONCE (unless cooldown is assigned). The hitbox size/position is determined by notetag <hitbox: width, height, offset x, offset y> from both source of target (still work even if you don't assign that).
The checkCollide only return true once when collision just happened, but if a cooldown is assigned, it'll return true multiple time, and the cooldown is the wait frame before another collision to happen again
📡 Range Checking
Check range from source to target, like a detection system. By default, it's a circle detection.
Sound Detection
Check if there's any sound playing from other events around source event within x range.
📊 Local Variables
Check local variable of an event
Other Event Local Variables
Check local variable of another event that is nearby the source event
The direction of the source that will use to look for nearby event. Either check for the front or the back. If not assigned, it'll check for the event underneath the source
Percentage Checks
Check local percentage of an event. It's similar to when you set a variable from range 1 ~ 50 and the result will be given randomly from 1 - 50.
⚔️ Equipment & Inventory Checks
Weapon Checks
Check if the player is equipping a weapon using its id or name. If slot isn't assigned then it'll check for the first weapon slot
Weapon Type Checks
Return true if player is equipping a weapon with a certain type
Weapon Notetag Checks
Return the value from the notetag box of equipped weapon
Armor Checks
Return true if player is equipping an armor
Skill Checks
Return true if an actor has learned a certain skill
learnedSkill('David', 'Blizzard') - Return true if actor named "David" has learned Blizzard
Inventory Quantity Checks
Return the amount of item/weapon/armor that the player possesses.
amount('armor', 'Heavy Armor') == 1 - Return true if player has 1 'Heavy Armor' in inventory
amount('weapon', 5) >= 4 - Return true if player has 5 weapon id 5 in inventory
🎮 Gamepad & Control Checks
Return true if a gamepad is connected
Return true if right stick of gamepad is being pushed
Return true if left stick is being pushed to this degree (0 - 360)
Return true if key is pressed and released once (Requires Hendrix Keyboard Gamepad plugin)
Input.isTriggered('leftclick') - Return true if just Left Clicked
Input.isTriggered('rightclick') - Return true if just Right Clicked
Return true if key is being pressed and hold (Requires Hendrix Keyboard Gamepad plugin)
🎯 Direction & Target Lock Checks
Number: 4 -> left, 6 -> right. Support 8 directions
Target Locking
See if the source is target locking something. Support 'player' , this._eventId or an event Id
See if the target is being locked by something. Support 'player' , this._eventId or an event Id
🦸🏻 Game States Checks
Return true when party leader has just leveled up
Return true if party leader is id x or has a certain name
🔧 Advanced Conditions
Performance & Optimization
A useful conditional that is mostly used for performance optimization. It'll return true if events are on screen and will return false if it's offscreen.
inViewport(this._eventId, 48) - Check with extra 48 pixels offscreen
Impassable In Front Check
Return true if in front of target is an impassable tile or impassable events. Target supports an event id or 'player'
Notetag & Name Checks
A versatile conditional branch that will either check if an event has a certain notetag or an event with a certain notetag exists on map.
Check if eventId's name is something
Check if there's an event with this name on current map
🕺 Platform & Jumping
Platform Checks
Return true if target is standing on a platform event (event with notetag <platform>). Target supports an event Id or 'player'
Jumping Checks
Return true if target is either started jumping, is jumping or landed
Script Call
⚔️ Weapon Functions
Weapon Damage
Return the attack value of the weapon party leader is equipping in a certain slot
Weapon Parameters
Return a value from a param of the weapon party leader is equipping in a certain slot
Gun System (check database notes section)
Return the current ammo loaded to equipped weapon from a certain slot
Return the capacity of equipped weapon from a certain slot
Return the amount of ammo item in inventory that belong to a weapon equipped from a certain slot
gunAmmo(slot) gunCapacity(slot) gunAmmoInInventory(slot)
💥 Collision Damage
Return the damage from notetag <dmg: x-y> of the event just collided
🦸🏻 Characters & Sprites
Change Sprites
Change this event image to $haha.png. This is a single file so character index should always be 0
Change this event image to group.png and select index 1
Play Frames
Make event or player play frames from their spritesheet. Requires Hendrix Animation Solution plugin
Make player play from frame 1 to 6 by the speed of "wait 3" (just like Wait command) each frame
Set Frames
Make event or player set to a frame from their spritesheet. Requires Hendrix Animation Solution plugin
Change current event image to frame 3 of its spritesheet
🔧 Utility Functions
Vortex Effects
Suck events to the source. Source supports event id or 'player'
Variable Access
Return the value of the local variable of an event.
Direction Info
Get target's current direction. Target supports event id or 'player'
Count Event on Map
Return the amount of event currently on map. Target supports event name or <notetag>
Movement Route
Call these script in a Set Movement Route command
🚶 Basic Movement
Self Switch Control
Same as Control Self Switch but you can call this in Movement Route.
Movement
Move the player to the direction he's moving. Why use this instead of Move Forward? Because this supports 360 degrees and in pixel so it's compatible with Joystick.
By default, RPG Maker only supports max speed of 6. With this, you can break that limit.
🎯 Target Lock
Make the character lock to a target. He/she will always look at this target. You'll find this feature common in action games
🧭 Directional Movement
Turn Toward Target
Turn the character direction to the target.
If assigned, lock or unlock the character to the current direction, similar to Directional Fix ON
If assigned, character will only turn toward the target within this range (tile unit)
mouse or gamepad - Turn torward mouse/joystick position
playerLockedTarget - Turn character to the target that player is locking
eventLockedTarget - Turn character to the target that current event is locking
360-Degree Rotation
rotateTo(destination, search range)Rotate the character (support 360 degrees) to a destinatino. Best for projectiles.
If assigned, limit the search for destination up to this range (tile unit)
map cordination - Written as x, y. Rotate character to this cordinate
mouse or gamepad - Rotate character to the position of mouse/joystick
player moving direction - Rotate character to the same direction player is moving
playerLockedTarget - Rotate character to the target that player is locking
eventLockedTarget - Rotate character to the target that current event is locking
Direction Sharing
Make the character to have the same direction as the target
playerLockedTarget - Share the same direction of the target that player is locking
eventLockedTarget - Share the same direction of the target that current event is locking
🦘 Jump & Teleport
Random Jumping
Jump the character to nearby positions from its current position. I use it for loots dropping from monsters or from a chest.
jumpToNearby(3, true) - Same but will jump on other events if they're in the way
Targeted Jumping
A versatile command that will jump the character to a target. In some cases, the param will act differently, please read examples carefully to further understand the feature.
If assigned, jump up to this range or jump this many range, depending on what you used from X, Y (tile unit)
forward - Jump forward from character's direction
backward - Jump backward from character's direction
away - Jump away from player
cursor - Jump to mouse location
right stick - Jump to gamepad's right stick degree
playerLockedTarget - Jump to the target that player is locking
eventLockedTarget - Jump to the target that current character is locking
Teleportation
A versatile command that will teleport the character to a target. In some cases, the param will act differently, please read examples carefully to further understand the feature.
If assigned, teleport to destination with minimum distance by X range (tile unit). This param becomes
If assigned, teleport to destination but only if this destination is within X range (tile unit). This param becomes Exception when used with forward
forward - Teleport character forward
playerLockedTarget - Teleport character to the target that player is locking
eventLockedTarget - Teleport character to the target that this character is locking
👟 Advanced Movement
Pixel Movement (Requires DotMoveSystem)
A versatile command that will move the character to a target in pixel. In some cases, the params will act differently, please read examples carefully to further understand the feature.
map cordination - Written in format x, y
mouse or gamepad - Move to mouse position or gamepad's joystick degree
comment: x - Move to an event with comment "x"(green text) in its active page
playerLockedTarget - Move to the target that player is locking
eventLockedTarget - Move to the target that current character is locking
forward - Move forward by 1 pixel. If y is assigned with "tile" then it'll move by 1 tile
Grid-Based Pathfinding
Move the character to a target grid-based, support pathfinding.
Add path finding if true
If true, one call of this movement route script will wait till character reached destination before processing the next command
Same as case 2 but with perfect pathfinding, automatically avoids obstacles. Best for ground characters.
playerLockedTarget - Move to the target that player is locking
eventLockedTarget - Move to the target that current event is locking
🦸🏻 Character Sprites
Make your character play animation with a spritesheet, unlimited frame. A very important feature to upper the quality of your game as characters animations are the soul of every game.
Make character play its spritesheet from first frame to last frame with a certain speed
Make character set its current frame to a another frame from its spritesheet
Database Notes
⚔️ Weapons
Setup a Gun
☠️ States
Inflict a State
Call this common event on the event that got hit. Can be multiple common events. Can use either common event name or their Ids
Plugin Commands
🌟 Event Spawning & Management
Spawn Event
Spawn an Event from the Template Map to the Current Map.
Destroy Event
Destroy the events you spawned from Template Map or a regular RPG Maker event
Create Dynamic Event
Create an event that contains some properties that will only last an amount of time before it destroys itself. Best used to create hitboxes.
Destroy Dynamic Event
Destroy all events created dynamically
❤️ HP & Health Management
Increase / Decrease Character HP
Update HP characters. Will automatically detect whether it's an event enemy or an actor event
damage - Use value from notetag <dmg: x> of event that just collided with Target event
HP Bar Visibility
Show/hide HP bar of an event (just visually)
Remove Event HP Bar
Remove an event's hp bar completely
🎨 Visual Effects & Display
Pop Text Value
Display a text onto an event, can be used to show damage dealt
exp / gold - Display exp or gold from defeated enemy
number , text , other expressions
Break Character
Immediately break the event calling this command into pieces
Character Effects
Play certain sprites effect on character like spin, rotate, bounce, etc
Swing Weapon
Using a picture file as a weapon and swing it
Camera Update
Stop/Resume camera focusing on player
Freeze Time
Freeze all events and player for an amount of time
Pause Events
Pause all events (except the event calling this command) from moving or processing commands
🎮 Event Control & Behavior
Collision Status
When false, conditional branch checkCollide won't return true even if it collided with the event calling this command
Whatever you're doing, stop!
Immediately stop movement routes of the event calling this command
Child and Parent
Make an event to be a child of another event/player. The child will move along with its parent whilst still being able to do its own things
Change Event Hitbox
Change the hitbox of an event dynamically
Assign New Passive
Add or remove a common event from comment <passive: x, x, x> if it exists in the current event
Dynamic passable
Make an event to be passable (able to walk on it) even if it's an obstacle
knockback
Push a target away from another target
add state
Inflict a state to a target
remove state
Remove a state from the target that has been inflicted by a state. Will remove state from event/player calling this command
🔄 Switches & Variables
Control Self Switch
Similar to RPG Maker default control self-switch but slightly more advanced. It can automatically find the right page to self-switch into. Support extra self switch set via naming Switches as "self switch [name]."
Control Local Variable
Create variables that belong to the event calling this command
Reset All Local Variables
Reset all local variables of events to 0
Quick Reset Switches & Variables
Reset all switches with a specific keyword in their name to false, Reset all variables with a specific keyword in their name to 0
🎮 Player Controls & Actions
Player Movement
Block player from moving
Change Player Hitbox
Change player hitbox dynamically
FAST WEAPON EQUIP
Immediately equip the next weapon available in inventory
JUMPING
Make a target jump!
Target Lock
Make player locks onto an event. Player will always look at this event. This is a common gameplay mechanic that you'll often see in action games
Gun - armor & capacity control
Modify ammo/magazine capacity of equipped weapon that has note <capacity: x> and <ammo: item name>. A great command to create a ranged weapon like bow and gun
Gun - reload
Reload the weapon by decrease item name (<ammo: item name>)
Additional Features
🔄 Extended Self Switches
If an event with a page has a switch named self switch X, that switch becomes a self-switch of that page. This feature is to break the limitation of having only 4 self switches A B C D