pokemon-red
Play Pokemon Red autonomously via PyBoy emulator. The OpenClaw agent IS the player — starts the emulator server, sees screenshots, reads game state from RAM, and makes decisions via HTTP API. Use when an agent wants to play Pokemon Red, battle, explore, grind levels, or compete
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Play Pokemon Red autonomously via PyBoy emulator. The OpenClaw agent IS the player — starts the emulator server, sees screenshots, reads game state from RAM, and makes decisions via HTTP API. Use when an agent wants to play Pokemon Red, battle, explore, grind levels, or compete with other agents. Requires Python 3.10+, pyboy, and a legally obtained Pokemon Red ROM.
How to use
Sklonuj repozytorium i zainstaluj zależności: git clone https://github.com/drbarq/Pokemon-OpenClaw.git, przejdź do katalogu, a następnie uruchom pip install pyboy pillow numpy fastapi uvicorn requests. Umieść legalnie pozyskany ROM gry w pliku PokemonRed.gb w głównym katalogu projektu.
Ustaw zmienną środowiskową POKEMON_DIR na ścieżkę, gdzie sklonowałeś repozytorium (domyślnie ~/Code/pokemon-openclaw).
Uruchom serwer emulatora w tle: cd $POKEMON_DIR && python scripts/emulator_server.py --save ready --port 3456. Serwer będzie nasłuchiwać na porcie 3456.
Na początku każdej tury pobierz stan gry i zrzut ekranu: curl -s http://localhost:3456/api/state oraz curl -s http://localhost:3456/api/screenshot -o /tmp/pokemon_current.png. Zawsze obejrzyj ekran przed podjęciem akcji.
Wybierz strategię: użyj endpoint /api/navigate dla podróży między lokacjami (blokuje do czasu dotarcia, walki lub utknięcia), lub wysyłaj ręczne komendy przycisków dla precyzyjnej kontroli. Navigate zwraca status: arrived (dotarłeś), battle (walka), stuck (utknąłeś) lub error.
Kontynuuj turę na podstawie odpowiedzi serwera — jeśli walka, walcz; jeśli dotarłeś, wykonaj następny krok questy; jeśli utknąłeś, spróbuj innej trasy lub ręcznych przycisków.