Skip to content

evanmiller2112/flippymon

Repository files navigation

FlippyMon

A Pokemon-style monster catching game for Flipper Zero!

Features

Core Gameplay

  • Turn-based battles with type effectiveness system
  • Catch monsters by "linking" them (Flipper Zero style!)
  • Build your party of up to 6 monsters
  • Trainer battles with multi-monster teams
  • Defeated trainer dialogue system

World

  • 7 unique towns in the Flipria Region
  • 6 routes connecting the towns
  • Indoor locations (Dolphin Lab)
  • Animated grass and water tiles
  • Furniture tiles for indoor spaces

Quality of Life

  • Save/load system with persistent progress
  • New Game / Load Game menu
  • Hex number display option (hacker aesthetic!)
  • Debug configuration for development

The Flipria Region

  • Bootport Town - Starting town, home of Dr. Dolphin's lab
  • GPIO Grove - Hardware tinkering forest town
  • Infra City - Infrared metropolis
  • SubGale Town - Sub-GHz radio signal plains
  • NFC Nexus - Sleek metro city with card systems
  • BadUSB Borough - Chaotic cyber district
  • Firmware Peak - Snowy mountain data center (endgame)

Monster Roster (9 Species)

# Name Type Description
1 Grassling Grass Balanced starter
2 Flambit Fire High attack starter
3 Aquafin Water High defense starter
4 Voltpup Electric Fast attacker
5 Rocklet Rock Tank
6 Skywing Flying Speedster
7 Frostkit Ice Rare find
8 Toxibug Poison Status specialist
9 Lumighost Psychic Special attacker

Controls

  • D-Pad: Navigate menus, move character
  • OK Button: Select, interact with NPCs
  • Back Button: Open menu, cancel actions

Requirements

  • Flipper Zero device
  • uFBT (Micro Flipper Build Tool)

Setup Instructions

1. Install uFBT

# On macOS/Linux
python3 -m pip install --upgrade ufbt

# On Windows
python -m pip install --upgrade ufbt

2. Clone with Submodules

git clone --recursive https://github.com/evanmiller2112/flippymon.git
cd flippymon

Or if already cloned:

git submodule update --init --recursive

3. Build the Project

ufbt

4. Install on Flipper Zero

Connect your Flipper Zero via USB and run:

ufbt launch

Or manually copy dist/flippymon.fap to your Flipper's SD card under /ext/apps/Games/.

Project Structure

flippymon/
├── application.fam         # Build configuration
├── flippymon.c/h          # Main entry point
├── engine/                # Game engine submodule
├── src/
│   ├── debug.h            # Debug/display settings
│   ├── game_state.c/h     # Global state management
│   ├── save_manager.c/h   # Save/load system
│   ├── data/              # Generated game data
│   ├── entities/          # Player, NPCs
│   └── levels/            # Menu, overworld, battle, party
├── maps/                  # Map definitions (.txt)
├── monsters/              # Monster definitions (.txt)
├── moves/                 # Move definitions (.txt)
├── npcs/                  # NPC definitions (.txt)
├── sprites/               # Character sprites (.txt)
├── tiles/                 # Tile graphics (.txt)
└── tools/                 # Python code generators

Configuration

Edit src/debug.h to customize:

// Movement & World
#define DEBUG_FAST_MOVEMENT true    // 2x speed for testing

// Battle System
#define DEBUG_PLAYER_INVINCIBLE false
#define DEBUG_FAST_CATCH true

// Display
#define DISPLAY_HEX_NUMBERS true    // Hacker aesthetic!

Development

Content Creation

All game content is defined in .txt files and converted to C code at build time:

  • maps/*.txt - Map layouts with tile characters
  • monsters/*.txt - Monster species with stats
  • npcs/*.txt - NPCs with dialogue and trainer data
  • tiles/*.txt - 8x8 tile graphics
  • sprites/*.txt - Character/monster sprites

Pre-Commit Checks

# Install git hooks (one-time)
./.githooks/install.sh

# Run checks manually
./scripts/pre-commit-check.sh

Adding Content

See these files for examples:

  • FURNITURE_TILES.md - How to create furniture tiles
  • tiles/README.md - Tile system documentation
  • Existing .txt files in each directory

Current Status

Completed

  • Full overworld exploration system
  • Turn-based battle system
  • Monster catching mechanics
  • Trainer battles
  • Save/load system
  • NPC dialogue system
  • 7 towns + 6 routes
  • Tile animation system
  • New Game / Load Game menu

In Progress

  • Populating world with more trainers
  • Gym interiors and gym leaders
  • Evolution system
  • Badge progression system

Planned

  • Trading system (Sub-GHz?)
  • More monster species
  • Sound effects
  • Status effects

License

Open source - feel free to modify and extend!

Credits

Built with the official Flipper Zero Game Engine

About

Flipper zero monster catcher game.

Resources

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors