A downloadable tool

Download NowName your own price

Chess Plugin for RPG Maker MV/MZ – Narrative Mini-Game in the Main Menu

What is it?

This plugin adds a fully functional Chess game against an AI opponent to the main menu of your RPG Maker MV or MZ project.

Players can access it at any time, play a complete game of chess, and unlock narrative content through the messages you write directly in the plugin manager.

📜 License

You may use this plugin freely in your own RPG Maker MV/MZ projects, including commercial games that you sell.

If you use this plugin in your game, you must credit the original author, Erophenice, in your game's credits.

Reselling the plugin itself (the .js file, as a standalone product) is strictly prohibited.

Modifying the plugin's code and redistributing it as your own work — rebranding it, removing credit, or claiming authorship of the plugin — is strictly prohibited.

What the plugin does (and does well)

A real Chess game: classic rules, full chess logic (castling, promotion, check, checkmate, stalemate).

Play against a smart AI: configurable depth from Easy to Hard, with alpha-beta pruning for fast thinking. The AI actively seeks checkmate, not just material advantage.

Beautiful wooden board: dark walnut style with subtle wood grain and shadows.

Fully customizable without touching the code: AI color (white or black), AI difficulty (1 to 5), board offset (X/Y position on screen), background image or solid color, message duration (1 to 300 seconds), and all game texts (start, thinking, victory, defeat, draw).

Customize every chess piece with your own PNG images: you can replace each piece (both white and black) with your own images. Just set the filename in the plugin manager parameters (WhiteKing Image, BlackPawn Image, etc.) and put your PNG files in the img/pictures/ folder. No coding required.

100% customizable messages in the plugin manager: Start Message (on launch), Thinking Text (while AI calculates), Victory Message (when you win), Defeat Message (when you lose), Draw Message (stalemate). These messages can be used for narration, clues, secret codes, quest hints, or any story element you want to integrate. Write whatever you need using \n for line breaks.

One important narrative detail: the Thinking Text is not just "AI is thinking...". You can change it to the name of your NPC. For example, if your protagonist plays chess against a character in your story, you can write "The King is thinking...", "The Wizard is thinking...", or even "The mysterious traveler is thinking...". This gives the illusion that your NPC is actually reflecting on their move, making the game feel alive and integrated into your narrative.

Works on RPG Maker MV and MZ (tested on both). Lightweight, does not slow down your game.

What the plugin does NOT do (let's be clear)

It is NOT locked to the main menu. You CAN launch it from NPCs, map events, or items using this script call: startChessGame();

You can also override parameters directly in the script call: startChessGame({ aiColor: 'white', aiDepth: 4, background: 'my_bg' });

When launched from an NPC or event, closing the game (Escape key) returns the player to the map, not to the main menu. Victory, defeat, or draw also return to the previous screen.

It does not modify your main game's gameplay. It is a purely optional bonus: players can play it or ignore it without any impact on your story.

Why this plugin is useful for you

For narrative‑driven games: you can use the messages (launch, thinking, victory, defeat, draw) to integrate lore, poems, clues, story fragments, or even metaphorical events. The Thinking Text is especially powerful: you can rename it to your NPC's name, making the AI feel like a real character in your world.

Examples:

· On launch: "A mysterious traveler challenges you to a game. The pieces whisper ancient secrets..."

· During AI turn: "The traveler studies the board with a knowing smile..." (instead of "AI is thinking...")

· On victory: "The king falls. You glimpse a truth: 'The shadow is not your enemy.'"

· On defeat: "Checkmate. The traveler smiles. 'You will understand in time...'"

· On draw: "A stalemate. Neither wins, neither loses. A perfect balance."

For gameplay integration: you can also trigger in‑game effects by adding a few lines to the _onCheckMate method (or _onStaleMate): activate switches, give items or gold, change variables, or call common events when the player wins.

For creators who want a bonus mini‑game without spending hours coding: no need to write chess logic from scratch, no need to design an AI, no need to create a board and pieces.

To add a relaxing or intellectual activity to a demanding or horror game: provides a narrative contrast, gives players a break, adds depth to your world.

Installation (quick)

Place ChessGame.js in your project's js/plugins/ folder.

Enable it in the plugin manager.

Adjust the parameters (messages, AI difficulty, background image, board offset, etc.).

Launch your game → "Chess" appears in the main menu.

Optional: for NPC usage, create an event with Script Call and enter startChessGame(); or with custom parameters: startChessGame({ aiColor: 'black', aiDepth: 4, background: 'forest' });

How to use in your game

From the main menu: the command "Chess" is automatically added to the main menu. Simply click it to start a game.

From an NPC or event: create a new event, add a Script Call command, and enter startChessGame(); When the player finishes the game (win, lose, draw, or Escape), they return to the map, right where they were.

From an item or skill: same script call works anywhere. Perfect for a "magic chessboard" item that the player can use at any time.

With custom parameters: you can override the default plugin parameters on the fly: startChessGame({ aiColor: 'white' }); startChessGame({ aiDepth: 2, background: 'cave' }); startChessGame({ aiColor: 'black', aiDepth: 5, background: 'throne_room' });

Parameters (edit in plugin manager)

Menu Command Name: text displayed in the main menu (default: Chess).

AI Color: color played by the AI (white or black, default: black).

AI Depth: difficulty from 1 (Easy) to 5 (Hard), default: 3.

Thinking Text: displayed while AI calculates. You can put the name of your NPC here to make the game feel more narrative. For example: "The King is thinking...", "The Wizard is thinking...", or any name you like (default: AI is thinking...).

Message Duration: how long messages stay on screen in seconds (default: 3, min 1, max 300).

Start Message: shown when the game launches. Use \n for line breaks. Default: "Welcome to the chessboard!\nClick a piece, then a green square to move."

Victory Message: shown when the player wins (checkmate). Default: "Victory! Checkmate."

Defeat Message: shown when the AI wins (checkmate). Default: "Defeat... Checkmate."

Draw Message: shown in case of stalemate. Default: "Draw (stalemate)."

Background Image: image filename (without extension) in img/pictures/. Leave empty for black background.

Board Offset X: horizontal offset in pixels (default: 0).

Board Offset Y: vertical offset in pixels (default: 0).

Custom piece images: you can replace each chess piece with your own PNG images. In the plugin manager, you will find parameters like WhiteKing Image, WhiteQueen Image, BlackPawn Image, etc. Simply set the filename (without extension) and put your PNG files in img/pictures/. Leave empty to use the default Unicode symbols.

Gameplay instructions (for players)

Click a piece to select it (highlighted in yellow). Allowed moves are shown in green. Click a green square to move the piece. Press ESC to exit the game at any time. The AI plays automatically after your move. Messages (start, victory, defeat, draw) appear in the center of the screen and disappear after the set duration.

Compatibility

Works on RPG Maker MV and MZ. 

Final word

This plugin is stable, functional, and ready to use. It won't perform miracles, but it will do exactly what it promises: provide a full chess game integrated into your menu, with your own narrative messages, and usable anywhere in your game world.

Quick reference: script calls

IMPORTANT: Before launching your game, open the Plugin Manager, select ChessGame, and for every piece image parameter (WhiteKing Image, blackPawn Image, etc.), if the field contains "================", delete it and leave the field empty (or set your own image name without extension). If you don't, the game will crash because "================.png" does not exist. Once done, everything works perfectly.

To launch with default settings: startChessGame();

To launch with custom AI color: startChessGame({ aiColor: 'white' });

To launch with custom background: startChessGame({ background: 'my_image' });

To launch with custom difficulty: startChessGame({ aiDepth: 4 });

To launch with multiple parameters: startChessGame({ aiColor: 'black', aiDepth: 5, background: 'castle' });

To launch from NPC or event (same): startChessGame();

Download

Download NowName your own price

Click download now to get access to the following files:

ChessGame.js 65 kB

Development log

Comments

Log in with itch.io to leave a comment.

Hello! Thank you for creating such a fantastic plugin. Would it be possible for you to provide a sample game file that uses only this plugin, so I can see how it works? Also, I would like to check the custom image sizes.

(1 edit)

Hello,

The size of the custom graphics is 64x64 px.

Regarding the demo and sample project: originally, the plugin was paid (and if you purchased it back then, thank you so much for your support!). That's why there wasn't a demo ZIP available.

I later decided to make all of my plugins—both current and future ones—completely free. The goal is simply to give my projects more visibility and gather a community of testers so I can continuously improve them based on your feedback.

If you'd like to see how the plugin is set up and how it works in-game, the video on the store page already shows the plugin manager configuration and gameplay.

Additionally, I update the plugin regularly. A future update will allow you to use custom PNG images for the board, so you won't be limited to the current dark wood style anymore and can fully customize it.

Thank you!

Thank you for your kind response! Your plugin is really great. I didn’t know there was such a risk. I’m sorry if I caused you any inconvenience. Don’t you have any plans to attach sample photos of the custom image to a sample file later?

I want to create a custom image, but I’m not quite sure what kind of feel it should have when it works. (It’s because my skills are lacking.) Thank you!

No problem; it’s normal to have questions when using a new plugin. For the 64x64 px graphics, the principle is the same as for standard tilesets or icons in RPG Maker. The pieces can be designed like character sprites (facing forward or in profile) within a 64x64 pixel format. The image background must be transparent (in .png format) to avoid any solid white or black blocks appearing on the board. To test this, resize an existing icon or character to 64x64 pixels, place it in the plugin folder, and launch the game to check its positioning on the tiles. This provides a direct visual reference.

Thank you very much. I look forward to more great plugins in the future!

In a future update, I plan to add the ability to customize the wooden chessboard with your own PNG images.


For the photo I sent you, it's just a quick and random test with NPC heads. Normally, we use real sprites or tile graphics and not just floating heads, it was only to show you concretely the rendering and positioning on the board squares.

Support & Updates


If you encounter any issue while using this plugin, or if you have a specific feature request that would make it even more useful for your project, please leave a comment on this page. Mention me directly, and I will do my best to help you resolve the problem or consider your suggestion for a future update.


I carefully evaluate each request and will implement it if I find it relevant and consistent with the plugin's scope.