Pocket Creatures
November 30, 2025 · View on GitHub

Pocket Creatures is a small Pokemon-style demo built with GreyScript. It includes an overworld, a turn-based battle system, a simple pixel renderer, item/bag support, save/load, and basic party management.
This repository is intentionally compact and designed for experimentation and teaching — add new creatures, moves, maps, or polish the renderer.
Note: This demo project is mainly generated by AI. The only human-written part was the base canvas and pixel rendering libraries. The rest of the code (game logic, battle system, etc.) was created by an AI language model based on prompts and guidance.
Features
- Overworld with tile maps and player movement
- Turn-based battle system (FIGHT / BAG / PKMN / RUN)
- Pixel renderer that runs in a separate
displayprocess - Party management: view and reorder Pokémon, switch in battle
- Bag with Potions and Pokéball support (battle and overworld)
- Save / Load game state
How to build
- Install either Greybel CLI or Greybel VS.
- Download or clone this repository.
- Open the project folder in VSCode (if using Greybel VS) and run
Greybel: Build root filefrom the command palette, or rungreybel build pokemon.srcin the terminal (if using Greybel CLI).
Quick Start
Open two terminals side-by-side.
- Run the logic/input process:
pokemon game
- Run the renderer/display process:
pokemon display
The logic process writes the render state to a file; the display process reads it and draws the screen.
Controls
- Movement:
W/A/S/Dor Arrow keys - Interact / Confirm:
EorSpace - Menu:
M - Quit:
Q
In battles:
- Navigate options:
W/S(or arrow keys) - Confirm:
EorSpace - Back / Cancel:
Q
Title / Save / Load
- At title screen select
CONTINUEto load saved state (if present), orNEW GAMEto start fresh. - Open
M→SAVEto persist your progress to/root/pokemon_save.dat.
Project Layout
pokemon.src— main entry; contains the game and display modeslibraries/— core systemsbattle.src— battle logic and state machinerenderer.src— rendering entry point (includes modules fromrenderer/)renderer/— rendering modules (battle, overworld, common, etc.)ui.src— simple 3x5 pixel font and text helpersrenderstate.src— serializes state for the renderergamestate.src— save/load and global game statecreatures.src— creature factory, stats and movescanvas.src/pixel.src— low-level pixel canvas
Troubleshooting
- You'll need https://github.com/ayecue/greyhack-customizable-output to have the graphics displaying correctly. Due to changes in Grey Hack TextMesh Pro support.
- If the display shows
WAITING..., ensure thegameprocess is running and has saved state (it writes to the render state file). - Save files are at
/root/pokemon_save.dat— inspect them to debug load/save issues.
License
See the LICENSE file in the repository.
Next steps / Ideas
- Add more moves, types, and animations
- Improve UI text layout and scrolling
- Add trainer battles with item restrictions and AI