public

Rpg Maker Developers Group

Simple enough for a child, powerful enough for a developer

2 Followers

MZFree Plugin (Event Name)

BMM Archive · July 15, 2026

Preserved forum archive. This topic stores the original first post and locally mirrored RPG Maker Web attachments when available. It is posted by the BMMPlay archive account, not by the original creator.

Original Source

  • Original title: Free Plugin (Event Name)
  • Original author: gamel001
  • Original date: March 29, 2024
  • Source thread: https://forums.rpgmakerweb.com/threads/free-plugin-event-name.167286/
  • Source forum path: Game Development Engines > RPG Maker Javascript Plugins > JS Plugin Releases (RMMZ)

Summary

Serge Event Name Plugin (FREE) { "lightbox_close": "Close", "lightbox_next": "Next",

Archived First Post

Serge Event Name Plugin (FREE)
0Xt65n.png

Hello guys, I'm here to bring you this plugin that shows the name of the event.

*You can configure the text size, position, and color.

More Plugins Here:
Serge Plugins



Serge Event Name (FREE)

Code:
//=============================================================================
// SergeEventName.js
//=============================================================================

/*:
 * @target MZ
 * @plugindesc Displays names above events using note tags in RPG Maker MZ.
 * @author Serge
 * @url https://gamel001.itch.io/
 *
 * @param fontSize
 * @text Font Size
 * @desc Font size for the event names.
 * @type number
 * @default 20
 *
 * @param fontColor
 * @text Font Color
 * @desc Color for the event names. Use CSS color values.
 * @type string
 * @default #FFFFFF
 *
 * @param outlineColor
 * @text Outline Color
 * @desc Outline color for the event names. Use CSS color values.
 * @type string
 * @default #000000
 *
 * @param outlineWidth
 * @text Outline Width
 * @desc Width of the outline for the event names.
 * @type number
 * @default 4
 *
 * @param offsetX
 * @text Offset X
 * @desc Horizontal offset for the event name display from the center of the event.
 * @type number
 * @default 0
 *
 * @param offsetY
 * @text Offset Y
 * @desc Vertical offset for the event name display from the bottom of the event. Positive values move text up.
 * @type number
 * @default -40
 */

(() => {
    const parameters = PluginManager.parameters('SergeEventName');
    const fontSize = parseInt(parameters['fontSize'], 10);
    const fontColor = String(parameters['fontColor']);
    const outlineColor = String(parameters['outlineColor']);
    const outlineWidth = parseInt(parameters['outlineWidth'], 10);
    const offsetX = parseInt(parameters['offsetX'], 10);
    const offsetY = parseInt(parameters['offsetY'], 10);

    class Sprite_EventName extends Sprite {
        constructor(event) {
            super();
            this._event = event;
            this.bitmap = new Bitmap(200, 48);
            this.bitmap.fontSize = fontSize;
            this.bitmap.textColor = fontColor;
            this.bitmap.outlineColor = outlineColor;
            this.bitmap.outlineWidth = outlineWidth;
            this.visible = false; // Initially hidden, will be shown after positioning
        }

        update() {
            super.update();
            if (this._event && this._event._erased) {
                this.parent && this.parent.removeChild(this);
                return;
            }
            this.updatePosition();
            this.refresh();
        }

        updatePosition() {
            if (SceneManager._scene instanceof Scene_Map && this._event) {
                const screenX = this._event.screenX();
                const screenY = this._event.screenY();
                this.x = screenX + offsetX - this.width / 2;
                // Applying offsetY so positive values move the name up
                this.y = screenY - offsetY - this.height - $gameMap.tileHeight();
                this.z = 9;
                this.visible = true;
            }
        }

        refresh() {
            const nameMatch = /<EventName:(.+?)>/.exec(this._event.event().note);
            if (nameMatch) {
                this.bitmap.clear();
                const eventName = nameMatch[1];
                this.bitmap.drawText(eventName, 0, 0, 200, 48, "center");
            }
        }
    }

    const _Scene_Map_start = Scene_Map.prototype.start;
    Scene_Map.prototype.start = function() {
        _Scene_Map_start.call(this);
        this.createEventNameSprites();
    };

    Scene_Map.prototype.createEventNameSprites = function() {
        const events = $gameMap.events();
        events.forEach(event => {
            const nameMatch = /<EventName:(.+?)>/.exec(event.event().note);
            if (nameMatch && !event._eventNameSprite) {
                const eventNameSprite = new Sprite_EventName(event);
                this._spriteset._tilemap.addChild(eventNameSprite);
                event._eventNameSprite = eventNameSprite;
                eventNameSprite.refresh();
            }
        });
    };
})();

Downloads / Referenced Files

Log in to download

Log in, then follow the RPG Maker Developers Group to see these download links.

Log in to download
Creator Claims / Removal

If you are the original creator and want this listing reassigned, edited, or removed, join BMMPlay and contact the moderators with proof that matches the original RPG Maker Web profile, linked GitHub, itch.io page, or another public creator identity.

#ffffff#000000#rmmz#plugin-archive

Replies (0)

No replies yet.

0 replies 1 view

Log in to reply.

User Avatar