Creating a Pokemon battling and analyzing C++ library designed for speed.
For the past few years, I've worked on building computers that play competitive Pokemon and used Pokemon Showdown to run its Pokemon-related calculations. This worked fine, but once support for double battles was added, where waiting minutes for just one turn's worth of calculations was the norm, it was clear a new approach was needed. After some promising speed tests where a direct port of Showdown's code from TypeScript to C++, I decided to create a speed-focused Pokemon simulator for any Pokemon coding projects where performance matters.
To learn more about the goals for this project and planned features, see DESIGN_SPEC.md.
The project is in active development and, although the user facing API is mostly complete, the implementation is not. The first vertical slice of the project is done (see this issue) and the performance testing pipeline is being created. Once any egregious performance problems are fixed and the second vertical slice is done, then code contributions from others will be much appreciated.
See CONTRIBUTING.md for more details.
See LICENSE