Back to basics


Pokemon Battle Simulator

Oct 11, 2015
1 minute read

One of the most challenging programming programs I ever attempted was a Pokemon Battle Simulator (PBS from now on).

My first, and most successful, attempt was on the mIRC scripting language. Though it was very buggy and not very easy to debug, it was possible for two people to actually have a battle.

My next few attempts revolved around moving it to C++ and using an OO language, but I was a pretty inexperienced programmer who had little time and those attempts were even less successful. Also C++ was the absolutely wrong choice.

Part of the complexity of creating a PBS are:

This caused a lot of if-conditions needing to be sprinkled everywhere.

There were also bugs in the Pokemon game itself that needed to be replicated in the PBS. Things like toxic-leech seed that are likely bugs but it is an actual strategy (and a poor strategy at that).

So nothing ever got complete, and I eventually lost interest in Pokemon.

That was… over a decade ago?

Once in a while I think back and wonder what happened to the community. There were different PBS in existance, even when I left. Today, there seems to be an open source version available called Pokemon Showdown written in Node, though I could swear the last time I checked this out it was written in Java.