RPG Maker MZ — Plugin Downloads

Small, focused plugins built for my own MZ project and cleaned up to share. Each is a single .js file — download it, drop it in your project's js/plugins/, and enable it in the Plugin Manager. Free for commercial & non-commercial use, no credit required.

24 plugins drop-in .js no credit required MZ

← back to the browser toolkit

Drop-in — no dependencies

EnemyLeash v1.0

enemiesevents

On-screen enemies that chase the player within a "home" zone, then give up and walk back when you escape — an idle → chase → return state machine. Built for games with visible (non-random) encounters.

Tag an event's comment <Leash> + optional <Sight: 6>, <Leash Range: 8>, <Home Region: 12>, <Chase Speed: 5>, <Give Up Balloon>.

HpFaceSwap v1.1

facesbattle

Swaps an actor's face index and portrait filename based on current HP %, so characters show hurt / bloodied art as they take damage — in menus and (with MainMenuCore/BattleCore) portraits.

Actor notetags thresholds at ≤75% / ≤50% / ≤25% HP via params; per-actor overrides like <Face Index Override: N>, <Portrait Suffix Override: _hurt>, <No HP Face Swap>.

TextSounds v1.1

messagesaudio

Plays a sound as each character draws in message windows — a typewriter "voice." Configurable SE with volume/pitch variance, interval, and skip-spaces/punctuation. Per-actor and named (NPC) voices.

Per-character give an actor a voice via notetag <Text Sound: file> or a name in the params, then switch voices inline with \Voice[3] (actor) or \Voice[happy] (named). \Voice[-1] mutes.

QuizShaderBackground v1.0

visualmap

A subtle GPU fragment-shader plasma that appears behind your windows on the map while a control switch is ON, and fades out when it's OFF. Built for an opening "void" scene but works for any dream/limbo mood.

Setup pick a control switch in the params; turn it ON/OFF in events. Tune colors, speed, scale and opacity. Costs almost nothing on the CPU (it runs on the GPU).

TextOutlineWidth v2.0

visualtext

Sets the thickness of the outline drawn behind all in-game text, from one setting — bolder for a chunkier look, a hairline for subtle, or 0 to remove it entirely. Optional outline-color override too.

Setup set Outline Width in px (engine default is 3; 0 = none) and an optional Outline Color.

PronounDisplay v1.0

menuidentity

Shows each actor's pronouns under their name in the menu. A small, friendly touch for character-driven and inclusive games.

Actor notetag <Pronouns: they/them> (or she/her, he/him, she/they, any text).

TargetNameInMessage v1.0

battletext

Adds a %t placeholder to a skill or item's Message 1 / Message 2 lines, so the use-text can name the target ("Aida glares at %t.") instead of only the user. Vanilla-compatible.

Usage put %t anywhere in the skill/item Message fields; mixes freely with the normal %1 user placeholder.

PersistentBattleLog v1.0

battleui

Keeps the battle log on screen so lines build up into a running history instead of clearing after each action — a classic, readable combat feel. Works in vanilla MZ and with VisuMZ BattleCore.

Setup tune the max log height in params. If you use VisuMZ BattleCore, place this plugin below it in the list.

LayeredBGM v1.0

audioadaptive

Plays several looping BGM stems in perfect sync and fades each layer in/out by switch, variable, or party size — adaptive music that grows. A hub theme can gain an instrument each time you recruit someone.

Setup export same-length stems to audio/bgm, define a Track with one Layer per stem + its audible condition, then call Play layered BGM. Saves/restores in sync.

HotSpriteReload v1.0

dev toolworkflow

Playtest-only: reload all graphics with a single keypress, so you can edit a sprite or tile in your art program and see it update in-game without restarting the test.

Usage press the configured key during playtest to re-fetch every image. Inert outside playtest, so it's safe to leave enabled.

AmbientSE v1.0

audiomap

Pins a looping sound to an event so it has a place — it swells as the player walks toward it and pans left/right as you pass, fading to silence at the edge of its radius. Perfect for a river, a fire, a crowd.

Event comment <Ambient SE: name, radius, volume, pitch> (radius in tiles). Page-driven, so a Self Switch can start/stop it; it auto-stops when you leave the map.

Footsteps v1.0

audiomap

Plays surface-specific footstep SE on a smooth, frame-timed cadence while the player walks (and a faster one while dashing), picking the sound by terrain tag or region. Random sample variations kill the robotic repeat.

Setup add one sound per terrain tag / region in the params; name files Step1StepN for variations. Silence a map with <NoFootsteps> or a mute switch.

ParallaxMapping v1.0

mapsvisual

Draw maps as full painted images — a ground layer the characters walk on and an overlay they pass behind — with region-painted collision. Supports drifting layers, animated frames, shade tints and per-event lights.

Map notes <Parallax Ground: name>, <Parallax Overlay: name>, <Region Wall: ids>, plus drift / shade / footstep tags. Paint walls with a region in the editor.

CharacterSheetScale v1.0

spritesart

Draw your character sheets at 2× (or any multiple) and tag the filename — the plugin renders them at the matching fraction in-game, so the file on disk stays your full-size master and there's no downscaled copy to overwrite.

Filename tag put %Nx in the sheet name ($Aida%2x.png → shown at 0.5). Feet stay planted; multiplies onto VisuMZ EventsMoveCore <Scale>. Place below EventsMoveCore.

EventFrameAnim v1.0

eventssprites

Drive an event's character-frame animation from a sequence you author, at a speed you set in frames — clean forward cycles, two-frame loops, a one-shot reveal that holds, or treat the whole 12-cell sheet as one animation.

Event comment <Loop Frames: n>, <Reveal Frames: n>, or <Frame Sequence: a,b,c @ n> (add once to hold on the last). Comments are per-page, so a tagged page triggers it.

GestureSkill v1.0

eventsskills

Turn a skill into a field "gesture": when used outside battle, a tagged skill loops a character animation on the player (a wave, a dance, an emote) until you move or press a button — driven by notetags, no script.

Setup tag a skill <Gesture …> and point its Common Event effect at a "Gesture Runner" common event. Pairs with EventFrameAnim + CharacterSheetScale.

SelectWeaponChoice v1.0

eventsbattle

RPG Maker's "Select Item" command can only list items. This makes the next Select Item command list weapons instead — reusing its variable storage and wait handling — so events can ask the player to pick a weapon.

Usage run the plugin command Select Weapon (next command) right before a Select Item command; filter by weapon type and choose whether to include equipped weapons. The chosen ID lands in that command's variable.

BattleBlackStart v1.0

battlecutscene

Lets a battle open fully faded to black so you can play an intro in the dark — messages, an animation, a slow enemy reveal — then bring it up with Fadein Screen. Works around the engine snapping brightness back at battle start.

Troop comment add <Black Start> to any troop page; the battle opens black. Run your intro, then a Fadein Screen battle command. (Always fade in before the battle can end.)

GaugeFontSize v1.0

uimenu

Sets the font size of gauge labels (e.g. "Health", "Willpower") and their value numbers independently, so you can make HP/MP/TP gauges more readable. Optionally grows the gauge's draw area so bigger text doesn't clip.

Setup set Label font size and Value font size in px; leave Grow gauge height to fit on unless it pushes your layout around.

FontGlyphWarmer v1.0

textvisual

Custom fonts can glitch — white specks or overlapping glyphs — when text first draws under load. This pre-rasterizes the font's glyphs at boot (at the sizes and outline width you use) so that first draw is clean.

Setup leave it on; list the Font sizes to warm and match the Outline width to your TextOutlineWidth setting. Pairs well with TextOutlineWidth.

For VisuStella users

IntuitiveKeybinds v1.0

VisuMZ OptionsCorecontrols

Sets modern, intuitive default keyboard bindings instead of MZ's quirky defaults. It only changes the defaults, so players using VisuMZ's rebinding menu can still remap freely.

Setup enable it; pairs naturally with VisuMZ OptionsCore key rebinding.

KeyNameDisplay v1.0

VisuMZ Core + OptionsCorecontrols

Gives every keyboard key a readable text label, so VisuMZ's key-rebinding menu shows proper key names ("Space", "Shift", "↑") instead of blanks or raw codes.

Order place below VisuMZ_0_CoreEngine and VisuMZ_1_OptionsCore.

FixRebindMenu v1.0

VisuMZ OptionsCorebugfix

Patches a bug in the VisuMZ_1_OptionsCore build shipped with the VisuStella sample project, where the rebind menu rejects every keypress (rows show blank and binding does nothing). This restores rebinding while still forbidding keys that shouldn't be remapped (F1–F12, the Windows key, etc.).

Order place below VisuMZ_1_OptionsCore. No parameters.

ChoiceConditionsJS v1.0

VisuMZ MessageCoreevents

VisuStella Message Core can only show/hide a choice by switch. This adds a JavaScript condition tag to Show Choices, so you can say "show this choice only if the party has item 72" without routing it through a switch first.

Choice text tag <Choice Condition: code> shows the choice only if code is truthy (it rewrites into Message Core's native hide/disable, so branches still line up). Place below VisuMZ_1_MessageCore.

No plugins match that filter.

Installing a plugin

  1. Download the .js file and drop it into your project's js/plugins/ folder.
  2. In RPG Maker MZ open the Plugin Manager, add the plugin, and turn it ON.
  3. Set any parameters in that dialog. Mind the load order where a plugin notes one (e.g. "below OptionsCore").
  4. For plugins that use notetags, paste the tag into the relevant Actor / Skill / Event note box.