Skip to main content

poke-battle-sim

Pokemon Battle Simulator (poke-battle-sim) is an open source Python package that provides efficient, customizable simulation of Pokemon battles. Thanks for checking it out.

Overview

poke-battle-sim emulates the mechanics present in the original Generation IV Pokemon games (Diamond, Pearl, and Platinum) while also providing the ability to modify and expand upon traditional Pokemon battles.

Currently the package supports all content from Gen I to IV including:

  • 493 Pokemon
  • 467 Moves
  • 122 Abilities
  • 535 Items

Installation

poke-battle-sim can be installed through pip using:

pip install poke-battle-sim

The package is also available on PyPi and GitHub.

Getting Started

Setting up a battle is as simple as a few lines of code.

import poke_battle_sim as pb

pikachu = pb.Pokemon(...)
ash = pb.Trainer('Ash', [pikachu])

starmie = pb.Pokemon(...)
misty = pb.Trainer('Misty', [starmie])

battle = pb.Battle(ashe, misty)
battle.start()
battle.turn()

print(battle.get_all_text())

Check out the docs and example project for more details.

Features

poke-battle-sim includes all functionality present in both (Single) Link Battles and (Single) Trainer Battles in the original Gen IV games.

Although this package was developed with large-scale simulation in mind, it can be used with little modification as the backend for Pokemon or Pokemon-style games.

Double Battles or other battle formats introduced in later generations are not currently supported.

Limitations

Certain mechanics present in the original games were not possible or practical to implement due to hardware-specific and region-specific behavior.

Mechanics not implemented in poke-battle-sim include:

  • Using Nintendo DS audio volume data in damage calculation
  • Using terrain-based type and power modifications
  • Any glitches in the original games that were patched in subsequent generations

Credit

This package was created and is managed by Vincent Johnson.

References used during development:

Bulbapedia

PokemonDB

Serebii.net

Pokemon Fan Wiki

Supporting packages:

Black was used to reformat this repository.

Setuptools was used to build this package.

Release files for poke-battle-sim 0.1.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for poke-battle-sim 0.1.7
File Size Uploaded
poke-battle-sim-0.1.7.tar.gz 71.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for poke-battle-sim 0.1.7
File Interpreter ABI Platform
poke_battle_sim-0.1.7-py3-none-any.whl Python 3 none any Details

Total release size: 148.2 kB

Release files / poke-battle-sim-0.1.7.tar.gz

Download URL poke-battle-sim-0.1.7.tar.gz
Size 71.8 kB
Tags Source
SHA-256 checksum
How to use checksums
116f28dd0493648fcbd80aeb0af958edc51861208c647961456aa1a4debe4d32
BLAKE2b-256 checksum
How to use checksums
9306a0bf4302ada0af2fe864bfd4e10d9bc4281a6155760925da17178492aa6c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.0

Release files / poke_battle_sim-0.1.7-py3-none-any.whl

Download URL poke_battle_sim-0.1.7-py3-none-any.whl
Size 76.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
309b0b1d576bd308a41aaa55a51c176810d6b5237a6ca7d125166f0f7ff943dd
BLAKE2b-256 checksum
How to use checksums
3eaad6f54b1e4a0cad172b35df0e81c18d93f6a550282c2d51c0c2af82be135d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.10.0

Release history Release notifications | RSS feed

This release

0.1.7 This release

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page