Are you a fan of Pokémon? Have you spent countless hours playing the games or way too much money on the cards? Well, we’re willing to bet that MrSquishy is a bigger fan than you, because he’s undertaking the ridiculous task of remaking Pokémon Red inside of Minecraft.

We came across MrSquishy (his real name is Matt – he didn’t want to give us his last name) and his ambitious project, still a work in progress, as a gif.

In it you can see the player character (Red) walking around the environments. Looking at it with no reference, you’d assume this was any other emulator running the famous first entry in the Pokémon franchise.

We got in touch with Matt to see how the project is going and find out what in the name of Arceus does he think he’s doing. For someone unfamiliar with both Pokémon and Minecraft, what is your project about?
I am attempting to recreate Pokémon Red, a game originally released for the Game Boy in 1996, within Minecraft using the game’s built-in scripting language. The map will use a custom resource pack to retexture Minecraft’s items into Pokémon game assets, but will not require any mods to be installed to run.

What is the history of your project? Where did it begin?
I started wondering whether this was possible about 18 months ago when I was recreating Pac-Man in Minecraft.  That map was really a proof of concept for me – confirming that it was possible to get a 2D game running smoothly and efficiently, and executing some light AI. Pokémon is a much more ambitious project than Pac-Man was, but the fundamentals are still the same – the user controls a 2D character which navigates the world, triggering a set of unique events with each step.  I started in on the Pokémon map about a year ago at this point.

Where are you currently in the project?
Most start menu systems are complete (Pokedex, party menu, item menu, options). Wild encounters are finished, including animations and logic for 165 moves, experience gaining, leveling, moveset learning, and evolutions. The world is completely built out and it is possible to move between areas.

What do you still need to do before you call it “done”?
The biggest is NPC interactions.  The game doesn’t know that anyone beyond the player currently exists.  Adding NPCs will require a whole slew of new systems, such as stores, trainer battles, scripted events, and the ability to interact with objects in the world. [Then there’s the] custom functionality for interior regions, such as the arrow puzzles in Team Rocket’s hideout, the door puzzles on Cinnabar island, and the slot machines at the Game Corner. Items don’t currently do anything, so I’m currently working on redesigning the item menu and adding item functionality both in and of battles.

Why did you choose Pokémon for the game and Minecraft to make it?
I’ve played Minecraft for around 5 years and love the creative freedom that the game allows.  It really is a case of if you can dream it, you can do it.  I wanted to set myself a challenge to really see how far the game can be pushed, and Pokémon felt like a great way to do that.  It’s a full-length game with hundreds of mechanics and textures, running on a 2D screen despite Minecraft’s 3D nature.

Look closely and you’ll see all the maps from Pokémon Red (the region of Kanto).

What’s the biggest problem you’ve encountered so far?
Minecraft really doesn’t like running things in 2D, and there are a whole slew of rendering issues resulting from that.  For example, if you display a semi-transparent texture before another texture, that second texture will not render.  It’s also been a challenge to keep everything as lightweight as possible to minimise potential lag.

When the project is done, do you plan on releasing it somehow?
Yes, the map will be available for download upon completion.

What’s your favourite Pokémon ?
Magikarp.  He is wonderfully pointless and I love him for it.  I’ve considered adding a new secret area to the map that includes a pool of level 100 Magikarp that only know Splash.  Whether I’ll actually do it or not I don’t yet know, but it makes me giggle!