From 7ac65a1eebe3913cf5a259de557f0c783f6ff345 Mon Sep 17 00:00:00 2001 From: Ishaan <66783696+Sai-Ishaan@users.noreply.github.com> Date: Tue, 4 Nov 2025 13:31:57 +0530 Subject: [PATCH 1/6] Expand BasicSetupCheckList with requirements and fixes Added system requirements, hardware recommendations, setup steps, and common issues with fixes for the Basic Pokemon RL Training environment. --- examples/BasicSetupCheckList.md | 61 +++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 examples/BasicSetupCheckList.md diff --git a/examples/BasicSetupCheckList.md b/examples/BasicSetupCheckList.md new file mode 100644 index 0000000..7954ccf --- /dev/null +++ b/examples/BasicSetupCheckList.md @@ -0,0 +1,61 @@ +### Basic Pokemon RL Training ENV checklist + +## System_Requirements : + a) Python: 3.9 or higher stable versions(3.10 recommended) + b) Node.js (v20 or higher, for Pokemon Showdown server) + c) npm: Latest version + d) Git + e) OS:(Win10/11, Linux, macOS) + +## Hardware_Recommendations : + a) RAM: Min 8-16GB + b) Storage: Minimum 5GB free space + c) CPU: Multi-core processor(4 recommended) + d) GPU: recommended for faster training + + Note: Make sure to install compatible python and node versions and add it in PATH in system variables. + Enable pip & py launcher + + ### Steps to setup: + a) Create a virtual-environment (venv) in your project directory.( python -m venv venv for windows, or python 3.10 -m venv venv for Linux/Mac users) + b) Activate venv (venv\Scripts\activate for Windows Users and source venv/bin/activate for Mac or Linux users) + c) Upgrade pip and install core tools: + python -m pip install --upgrade pip setuptools wheel + d) The following packages: + i) Install poke-env first (this sets the correct gymnasium version) + ii) pip install poke-env + iii) pip install torch --index-url https://download.pytorch.org/whl/cpu + iv) pip install stable-baselines3 (2.2.1 or 2.3.2) + v) pip install gymnasium + vi) pip install poke-env + vii) pip install tensorboard matplotlib pandas wandb + viii) pip install trl==0.19.1 + ix) pip install torchvision torchaudio + OR + + d) Install poke-env 0.9.0: + pip install poke-env==0.9.0 + e) This automatically installs: + i) gymnasium>=1.0.0(RL Env Interface) + ii) numpy>=2.0.2(numerical computing) + iii) orjson>=1.24.3(fast JSON parsing) + iv) pettingzoo>=2.32.3(HTTP library) + v) tabulate;= 0.9.0(table formatting) + vi) websockets== 15.0.1( WebSocket client) + f) Create a test script to verify setup and installation: + Basic Example: + image + + +### Problems faced while installing packages and libraries(so far): + a) stable versions of packages such as stable-baselines3, poke-env run into issues, no version compatibility + b) gymnasium, pettingzoo, stable-baselines run into issues. + +### Fixes(so far): + a) Select Python interpreter used to create venv(here 3.10), upgrade pip. + b) Uninstall the packages; pip uninstall -y poke-env gymnasium pettingzoo stable-baselines3 trl torch + c) Install a newer stable-baselines3 that supports gymnasium>=1.0.0 + i) pip install stable-baselines3>=2.4.0 + + + From 788381684424dbe8ba130f99f605b5b8d3c35aeb Mon Sep 17 00:00:00 2001 From: Ishaan <66783696+Sai-Ishaan@users.noreply.github.com> Date: Tue, 4 Nov 2025 13:32:31 +0530 Subject: [PATCH 2/6] Rename examples/BasicSetupCheckList.md to examples/project-pikachu/BasicSetupCheckList.md --- examples/{ => project-pikachu}/BasicSetupCheckList.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename examples/{ => project-pikachu}/BasicSetupCheckList.md (100%) diff --git a/examples/BasicSetupCheckList.md b/examples/project-pikachu/BasicSetupCheckList.md similarity index 100% rename from examples/BasicSetupCheckList.md rename to examples/project-pikachu/BasicSetupCheckList.md From 6c296dc11d52c97fcdb0668db5c5d385f8a340f3 Mon Sep 17 00:00:00 2001 From: Ishaan <66783696+Sai-Ishaan@users.noreply.github.com> Date: Tue, 4 Nov 2025 13:33:53 +0530 Subject: [PATCH 3/6] =?UTF-8?q?Revise=20Basic=20Pok=C3=A9mon=20RL=20Traini?= =?UTF-8?q?ng=20Setup=20Checklist?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Updated the checklist for setting up the Pokémon RL training environment, including system requirements, hardware recommendations, setup instructions, and known issues. --- .../project-pikachu/BasicSetupCheckList.md | 177 ++++++++++++------ 1 file changed, 116 insertions(+), 61 deletions(-) diff --git a/examples/project-pikachu/BasicSetupCheckList.md b/examples/project-pikachu/BasicSetupCheckList.md index 7954ccf..8c7f757 100644 --- a/examples/project-pikachu/BasicSetupCheckList.md +++ b/examples/project-pikachu/BasicSetupCheckList.md @@ -1,61 +1,116 @@ -### Basic Pokemon RL Training ENV checklist - -## System_Requirements : - a) Python: 3.9 or higher stable versions(3.10 recommended) - b) Node.js (v20 or higher, for Pokemon Showdown server) - c) npm: Latest version - d) Git - e) OS:(Win10/11, Linux, macOS) - -## Hardware_Recommendations : - a) RAM: Min 8-16GB - b) Storage: Minimum 5GB free space - c) CPU: Multi-core processor(4 recommended) - d) GPU: recommended for faster training - - Note: Make sure to install compatible python and node versions and add it in PATH in system variables. - Enable pip & py launcher - - ### Steps to setup: - a) Create a virtual-environment (venv) in your project directory.( python -m venv venv for windows, or python 3.10 -m venv venv for Linux/Mac users) - b) Activate venv (venv\Scripts\activate for Windows Users and source venv/bin/activate for Mac or Linux users) - c) Upgrade pip and install core tools: - python -m pip install --upgrade pip setuptools wheel - d) The following packages: - i) Install poke-env first (this sets the correct gymnasium version) - ii) pip install poke-env - iii) pip install torch --index-url https://download.pytorch.org/whl/cpu - iv) pip install stable-baselines3 (2.2.1 or 2.3.2) - v) pip install gymnasium - vi) pip install poke-env - vii) pip install tensorboard matplotlib pandas wandb - viii) pip install trl==0.19.1 - ix) pip install torchvision torchaudio - OR - - d) Install poke-env 0.9.0: - pip install poke-env==0.9.0 - e) This automatically installs: - i) gymnasium>=1.0.0(RL Env Interface) - ii) numpy>=2.0.2(numerical computing) - iii) orjson>=1.24.3(fast JSON parsing) - iv) pettingzoo>=2.32.3(HTTP library) - v) tabulate;= 0.9.0(table formatting) - vi) websockets== 15.0.1( WebSocket client) - f) Create a test script to verify setup and installation: - Basic Example: - image - - -### Problems faced while installing packages and libraries(so far): - a) stable versions of packages such as stable-baselines3, poke-env run into issues, no version compatibility - b) gymnasium, pettingzoo, stable-baselines run into issues. - -### Fixes(so far): - a) Select Python interpreter used to create venv(here 3.10), upgrade pip. - b) Uninstall the packages; pip uninstall -y poke-env gymnasium pettingzoo stable-baselines3 trl torch - c) Install a newer stable-baselines3 that supports gymnasium>=1.0.0 - i) pip install stable-baselines3>=2.4.0 - - - +# Basic Pokémon RL Training Environment Setup + +## 🖥️ System Requirements + +- **Python**: 3.9 or higher (✅ 3.10 recommended) +- **Node.js**: v20 or higher (for Pokémon Showdown server) +- **npm**: Latest version +- **Git** +- **Operating System**: Windows 10/11, Linux, or macOS + +> ⚠️ Ensure Python and Node.js are added to your system's `PATH`. +> ✅ Enable `pip` and Python launcher (`py`) during installation. + +--- + +## 🧰 Hardware Recommendations + +| Component | Requirement | +|----------|-------------| +| RAM | 8–16 GB minimum | +| Storage | At least 5 GB free | +| CPU | Multi-core (4+ cores recommended) | +| GPU | Recommended for faster training | + +--- + +## ⚙️ Setup Instructions + +### 1. Create and Activate Virtual Environment + +```bash +# Windows +python -m venv venv +venv\Scripts\activate + +# Linux/macOS +python3.10 -m venv venv +source venv/bin/activate +``` + +### 2. Upgrade Core Tools + +```bash +python -m pip install --upgrade pip setuptools wheel +``` + +### 3. Install Required Packages + +#### Option A: Manual Installation + +```bash +# Install poke-env first to set compatible gymnasium version +pip install poke-env + +# Core RL and utility libraries +pip install torch --index-url https://download.pytorch.org/whl/cpu +pip install stable-baselines3==2.2.1 # or 2.3.2 +pip install gymnasium +pip install poke-env # Reinstall to ensure compatibility +pip install tensorboard matplotlib pandas wandb +pip install trl==0.19.1 +pip install torchvision torchaudio +``` + +#### Option B: Install Specific poke-env Version + +```bash +pip install poke-env==0.9.0 +``` + +This will automatically install: + +- `gymnasium>=1.0.0` – RL environment interface +- `numpy>=2.0.2` – Numerical computing +- `orjson>=1.24.3` – Fast JSON parsing +- `pettingzoo>=2.32.3` – Multi-agent RL environments +- `tabulate==0.9.0` – Table formatting +- `websockets==15.0.1` – WebSocket client + +--- + +## ✅ Test Your Setup + +Create a basic test script to verify installation. +Example output: + +![Test Script Output](https://github.com/user-attachments/assets/c5cb5911-388b-4511-8d43-0a48f5e047a0) + +--- + +## 🐛 Known Issues + +- Compatibility issues between versions of: + - `stable-baselines3` and `poke-env` + - `gymnasium`, `pettingzoo`, and `stable-baselines3` + +--- + +## 🛠️ Fixes Applied + +- Ensured Python 3.10 is selected for `venv` +- Uninstalled conflicting packages: + +```bash +pip uninstall -y poke-env gymnasium pettingzoo stable-baselines3 trl torch +``` + +- Installed newer compatible version of `stable-baselines3`: + +```bash +pip install stable-baselines3>=2.4.0 +``` + +--- + +Let me know if you'd like this turned into a shareable README or setup script! From c91411f82bdba4c7a8e86e3a70d90cd32178ccab Mon Sep 17 00:00:00 2001 From: Ishaan <66783696+Sai-Ishaan@users.noreply.github.com> Date: Tue, 4 Nov 2025 13:34:27 +0530 Subject: [PATCH 4/6] Fix formatting in BasicSetupCheckList.md --- examples/project-pikachu/BasicSetupCheckList.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/project-pikachu/BasicSetupCheckList.md b/examples/project-pikachu/BasicSetupCheckList.md index 8c7f757..3894b9a 100644 --- a/examples/project-pikachu/BasicSetupCheckList.md +++ b/examples/project-pikachu/BasicSetupCheckList.md @@ -82,7 +82,7 @@ This will automatically install: ## ✅ Test Your Setup Create a basic test script to verify installation. -Example output: +Example script: ![Test Script Output](https://github.com/user-attachments/assets/c5cb5911-388b-4511-8d43-0a48f5e047a0) From bec696b2ed7576667084976dcd382da454ee4dee Mon Sep 17 00:00:00 2001 From: Ishaan <66783696+Sai-Ishaan@users.noreply.github.com> Date: Tue, 4 Nov 2025 13:35:01 +0530 Subject: [PATCH 5/6] Clean up BasicSetupCheckList.md Removed unnecessary comments and cleaned up formatting. --- examples/project-pikachu/BasicSetupCheckList.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/examples/project-pikachu/BasicSetupCheckList.md b/examples/project-pikachu/BasicSetupCheckList.md index 3894b9a..3ba69f5 100644 --- a/examples/project-pikachu/BasicSetupCheckList.md +++ b/examples/project-pikachu/BasicSetupCheckList.md @@ -110,7 +110,3 @@ pip uninstall -y poke-env gymnasium pettingzoo stable-baselines3 trl torch ```bash pip install stable-baselines3>=2.4.0 ``` - ---- - -Let me know if you'd like this turned into a shareable README or setup script! From 215257e5b7d80f26bc253d3499ffc8a188183d8f Mon Sep 17 00:00:00 2001 From: Ishaan <66783696+Sai-Ishaan@users.noreply.github.com> Date: Tue, 4 Nov 2025 13:42:55 +0530 Subject: [PATCH 6/6] Update BasicSetupCheckList with forking instructions Added instructions for forking the Pokemon-Showdown repository and noted compatibility issues with random battle generation. --- examples/project-pikachu/BasicSetupCheckList.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/examples/project-pikachu/BasicSetupCheckList.md b/examples/project-pikachu/BasicSetupCheckList.md index 3ba69f5..100fec7 100644 --- a/examples/project-pikachu/BasicSetupCheckList.md +++ b/examples/project-pikachu/BasicSetupCheckList.md @@ -78,7 +78,8 @@ This will automatically install: - `websockets==15.0.1` – WebSocket client --- - +### Fork the Pokemon-Showdown Repo onto your main project folder +- git clone https://github.com/smogon/pokemon-showdown.git ## ✅ Test Your Setup Create a basic test script to verify installation. @@ -93,12 +94,13 @@ Example script: - Compatibility issues between versions of: - `stable-baselines3` and `poke-env` - `gymnasium`, `pettingzoo`, and `stable-baselines3` - + - `random battle generator doesn't load for gen9, due to ShadowException(still buggy)` --- ## 🛠️ Fixes Applied - Ensured Python 3.10 is selected for `venv` +- Using gen8 for random battle generation - Uninstalled conflicting packages: ```bash