# McRogueFace

A Python-Powered Roguelike Engine

C++ engine with Python scripting, compiled to WebAssembly. BSP dungeons, Wang tile autotiling, field of view, and turn-based combat — all running in your browser.

Loading...

Click to play

### Controls

- Arrow keys or WASD to move
- Bump into enemies to attack
- Walk over potions to heal
- Find stairs to descend deeper
- Period (.) to wait a turn
- R to restart after death

### Engine Features

- BSP dungeon generation (libtcod)
- Wang tile autotiling (Tiled .tsx)
- Field of view & fog of war
- Entity/Grid system with layers
- Python 3.14 scripting (full interpreter)
- SDL2 + OpenGL ES 2 rendering

### About This Demo

This entire game is written in Python, running on the McRogueFace C++ engine compiled to WebAssembly via Emscripten. The game logic, dungeon generation, AI, and UI are all Python — the engine handles rendering, input, and the tile/entity system.

### Tech Stack

- C++17 game engine core
- Python 3.14 (cross-compiled to WASM)
- SDL2 + OpenGL ES 2 (via Emscripten)
- libtcod (BSP, FOV, pathfinding)
- Kenney Tiny Dungeon tileset
- ~16 MB total download

GitHub Gitea Documentation