PokemonMZ - A new Pokemon engine! [Update 2026-07-19]

Hi folks!

It has been a while since I worked on an amusing project - last was the Extended Character Generator. Today, I come to you with: PokemonMZ.

PokemonMZ is a demo version of a plugin I started designing a month ago. The idea was to reproduce Pokemon’s generation I mechanics up to a given point of the original game. In the case of this early demo version, the mechanics reach the end of the Route 3, after the 1st badge.

A few captures to give you an idea of the plugin:

Use of AI:

None for the code. I only generated the player back sprite from RPG Maker’s default picture of one actor. Apart from that, none.

Credits :

Pokemon Essentials for the pokemon sprites and cries I placed in that demo, as well as some common Pokemon game sounds.

Getting the plugin :

You can find that plugin here : GitHub - Schlangan/PokemonMZ: RPG Maker MZ plugin for Pokemon games · GitHub

As the plugin is quite complicated, I recommend getting the demo version with it (Download link here), that allows you to play Pokemon RBY with RPG Maker MZ graphics up to Viridian Forest, and experience what the plugin currently offers.

What comes next?

Well, the main idea would be to continue coding the plugin to the end of Generation I mechanics, then tackling later generations, one by one. Some things will be improved, but the basic framework has already a base for selecting generation mechanics inside the plugin.

But… doing it alone takes time. It would be much more fun with help. There are lot of things to implement, especially something I’m bad with : Effseeker animations for pokemon attacks. In the demonstration version, I simply took RPG Maker’s default animations.

Also, I’m no true developer, so I think the code could be improved in many ways.

Anyways, tell me what you think about all of this!
Thanks :smiley:

5 Likes

I think its cool. There have been a lot of people seeking an MZ mod for pokemon-like games. Now one officially exists. Mind if I also link people on the reddit to this post to make people aware (assuming that you didn’t plan to post to the RPG Maker subreddit).

1 Like

I’m not using reddit, so feel free to do so. But don’t forget, this is only a demonstration of some part of gen I mechanics. The plugin is far from complete for now ^^

1 Like

Good work!

The UI looks a bit simple but that makes it easy to modify as well so it’s a positive in its own way.

Will share this with some friends!

1 Like

Indeed the UI is quite simple, as it is a copy of pokemon first generation - the idea will be to provide various UIs depending on the selected pokemon generation. For now, the demo sticks to the first generation only. (Old box format, a single bag, no pokeballs indicating if a pokemon has been caught or not, and so on)

That’s impressive. This system is great.

1 Like

UPDATE - 16th July 2026 - Code up to Pewter City

An update to all mechanics that can be found after Viridian Forest, up to Pewter City.

  • Standard mechanics
    • Take player money, for Pewter Museum
    • Give badge to player, from Brock
  • New items effects
    • Awakening, sold in Pewter Mart
    • Escape rope, sold in Pewter Mart
    • Full heal, used by Brock
    • TMs, learning/forgetting moves
    • Badges, and passive stats increase for player during battle
  • New skill effects
    • Screech, dropping defense by two stages
    • Bide, complete mechanics (wait, and unleash twice damage)
  • New battle mechanics
    • Message for ineffective moves (using thundershock on diglett)
    • Basic trainer AI, not using status moves on player if already got one
    • Specific trainer AI using items, notably brocks 5 full heals per pokemon

The demo hasn’t been updated, but the github project contains defaut data for all new pokemon/items

  • New items
    • Boulder Badge
    • Escape Rope
    • Full Heal
    • TM 34 - Bide
  • New moves
    • Bide
    • Defense Curl
    • Screech
  • New pokemons
    • Sandshrew
    • Diglett
    • Geodude
    • Onix
  • New battles
    • Pewter gym Jr.Trainer
    • Pewter gym Brock

Sorry missed the earlier go-ahead. Will do so now.

Downloading as we speak. Does it include IV/EV?

Since I’m working for now only with generation one, it includes not IV/EV, but DV/old EV.

How did it work at that time?

DVs are differential values between 0 and 15, define randomly (ATK,DEF,SPC,SPD) for wild pokemons, set a specific value for trainer’s pokemon. HP’s DV are calculated from the four other DVS.

EVs in that generation go from 0 to 65335. Each time you defeat a pokemon, your EV increase by the base stats values of that pokemon, meaning all EV increase. For exemple, defeating a Bulbasaur gives :
{“hp”:45,“patk”:49,“pdef”:49,“spd”:45,“spc”:65}

At that time, all EVs could reach 65535.

sorry i shouda known, IV/EV wasnt around that early

No worries, if one day I reach gen three, IVs will be implemented. If you check the predefined files in the project, you’ll note that pokemons have in fact already in their data the value of the ev they give in later gens (meaning one or two in a specific stat)

we rooting for you pal! hope we’ll see the day thru you make a new Poke Essentials, but for MZ!

We’ll see how it goes. It will probably work better if people help me too, because there is a limit of speed for coding alone (without AI), while having to work IRL :smiley:

i hear you. im not much of a coder yet, with a bit of limited of time, just managed to put few addons on VisuStella plugins..
I can try be your QA on your demo and iteratives henceforth!
incidentally, MEGAnz is still taking too long to decrypt the demo for me lol

im omw to viridian forest. was i supposed to receive Pokeballs from Prof Oak before? i forgot lol

EDIT: btw, I think you should enable wild Pokemon to drop money if they got beaten in wild encounter

1 Like

Wild pokemon do not give money in Generation I, except if the move Payday was used (it is not implemented yet).

Concerning Oak giving Poke balls, you can get some, but there were specific conditions to do so:

  • You have to get the pokedex
  • You must not have bought or found any pokeball
  • You must not have captured any pokemon
  • You must defeat the rival on route 22 (he has two pokemon) with only your starter

Then, if all these conditions are fulfilled, Prof.Oak will give you 5 Poke balls. I have implemented the same mechanics in the demo.

UPDATE [0.0.3] - 2026-07-19 - Code up to Route 3

All mechanics up to Route 3 have been added, as well as any obtainable pokemon until level 20.

  • Standard mechanics
    • Command Can Get a Pokemon, to check if the player has room inside the party or the current box.
    • Message preventing to receive a Pokemon if the current box and party are full. A switch can be selected to get the failure state and use it in other event commands.
    • Send automatically a received Pokemon to a box, with a message, if the party is full and the current box has room.
  • New skill effects
    • Whirlwind, blowing enemy away (only wild battles in generation I)
    • Focus energy (critical chances x4 - but of original gen I games fixed)
    • Poison on last hit of multi-hit move (twineedle)
    • Binding move, preventing opponent attack for N turns and inflicting damage (wrap)
    • Splash, no effect at all.
  • New battle mechanics
    • Enhanced animation system: allowing to make pokemon move during animations
  • New predefined Pokemon data
    • Ivysaur (Bulbasaur evolves at lvl.16)
    • Charmeleon (Charmander evolves at lvl.16)
    • Wartortle (Squirtle evolves at lvl.16)
    • Pidgeotto (Pidgey evolves at lvl.18)
    • Raticate (Rattata evolves at lvl.20)
    • Fearow (Spearow evolves at lvl.20)
    • Ekans (fought against a trainer)
    • Nidorina (Nidoran​:female_sign: evolves at lvl.16)
    • Nidorino (Nidoran​:male_sign: evolves at lvl.16)
    • Jigglypuff (found in grass + trainer)
    • Magikarp (can be bought at a NPC)
    • Gyarados (the bought Magikarp evovles at lvl.20)
  • New predefined moves data
    • Bite (learned by Gyarados)
    • Disable (learned by Jigglypuff)
    • Focus Energy (learned by Beedrill)
    • Pound (learned by Jigglypuff)
    • Sing (learned by Jigglypuff)
    • Slash (learned by Sandshrew)
    • Splash (learned by Magikarp)
    • Supersonic (learned by Butterfree)
    • Twineedle (learned by Beedrill)
    • Whirlwind (learned by Pidgey)
    • Wrap (learned by the trainer’s Ekans)

It looks very good, it does bring back old childhood memories, Pokemon Yellow was my very first love when I was 7 and it brought me here today. Good job!