
ZeldaABS Advanced Plugin
A downloadable plugin for Windows
ZeldaABS is a real-time Action Battle System written natively for RPG Maker MZ that converts traditional turn-based encounters into fast-paced, top-down map combat inspired by classic titles like The Legend of Zelda: A Link to the Past and The Minish Cap.
What the Plugin Does
Instead of transitioning into a separate turn-based battle screen, combat takes place seamlessly on the map. Players can explore, swing a sword, and fire ranged projectiles in real-time, while enemy events wander patrol routes, detect intruders, chase the party, and retaliate upon contact.
How It Works Under the Hood
1. Dual-Weapon Combat Pipeline
The combat engine runs on two independent attack loops that can be customized in the Plugin Manager:
- Melee Sword Swings (
OKKey / Enter / Gamepad A): Pressing the attack button freezes the player in an attack recovery animation for a few frames while projecting a directional hitbox in front of the character (weaponRangetiles forward, bounded by a radial cross-section). Any active enemy intersecting this box sustains immediate damage. - Ranged Projectiles (
ShiftKey / Gamepad X): Fires a projectile (arrow, magic beam, or tool) that travels continuously across real-time map coordinates. The projectile checks for tile passability (stopping on solid walls or collision barriers) and queries the map for enemy events. On impact, it deals ranged damage and triggers an impact animation.
2. Autonomous Enemy Event AI
Enemies are regular map events tagged with custom metadata. Every frame, the plugin executes an AI state machine for each active enemy:
- Patrol State: The enemy wanders randomly when the player is out of reach.
- Aggro & Pursuit State: Once the player steps within the enemy’s line-of-sight (
<abs_sight: X>), the AI switches to pursuit mode, chasing the player usingmoveTowardPlayer(). - Contact Damage: If the enemy’s bounding box touches the player's box, it deals direct HP damage, triggers an impact sound effect, and knocks the player backward.
3. Impact Physics & Invincibility Frames (i-Frames)
To prevent unfair chain-stuns and instant deaths:
- Both the player and enemies receive configurable invulnerability frames upon taking damage.
- Striking or being struck calculates directional vectors (
dx,dy) and applies a 1-tile directional knockback away from the impact source, provided the landing tile is passable. - Visual feedback is handled through real-time sprite blending, flashing characters white or red on impact alongside native MZ Effekseer animations.
4. Defeat & Reward Lifecycle
When an enemy’s ABS HP reaches 0:
- Experience points and gold are granted directly to the party.
- The plugin automatically flips a designated Self-Switch (
A,B,C, orD). This allows you to create a second event page for a death animation, a cleared tile, or an item drop without writing custom code.
Technical Feature Overview
| System | Implementation | Configurable Via |
|---|---|---|
| Melee Combat | Directional continuous hitbox calculation | Plugin Parameters (WeaponRange, AttackCooldown)
|
| Ranged Combat | Vector-based projectile simulation with wall checks | Plugin Parameters (ProjectileSpeed, ProjectileMaxDistance)
|
| Enemy AI | Autonomous line-of-sight pursuit & patrol states | Event Notetags (<abs_sight>, <abs_speed>)
|
| Hit Reactions | Directional knockback + sprite color blending | Plugin Parameters (HitSE, PlayerInvincibilityFrames)
|
| Graphics & VFX | Hardware-accelerated Pixi.js + Effekseer MZ queue | Plugin Parameters (SwingAnimationId, ProjectileAnimationId)
|
How to Set Up an Enemy in Your Game
To create an enemy on any map:
- Create a normal event and assign it a monster graphic.
- Set its Autonomous Movement to Fixed (the plugin AI handles movement).
- Paste this block into the event's Note box:
<abs_enemy>
<abs_hp: 30>
<abs_sight: 4.5>
<abs_speed: 3.5>
<abs_touch_damage: 8>
<abs_exp: 20>
<abs_gold: 15>
<abs_switch_die: A>
- Create a Page 2 on the event with the condition Self Switch A is ON, leaving the graphic blank (or using a defeat animation) so the enemy stays defeated.
| Published | 3 days ago |
| Status | Released |
| Platforms | Windows |
| Author | NotHouseGames |
| Tags | 2D, plugin |
| Content | No generative AI was used |
Purchase
In order to download this plugin you must purchase it at or above the minimum price of $3 CAD. You will get access to the following files:

Leave a comment
Log in with itch.io to leave a comment.