#SPGG Bot Documentation
Welcome to the technical documentation for the SPGG Game Bot System — an automated game streaming and match management platform for EA Sports FC 24, EA Sports FC 25, and Undisputed Boxing.
#What is SPGG?
SPGG is an automation system that:
- 🎮 Controls game windows — Automated key presses, mouse movements, and screen navigation
- 📺 Manages OBS streaming — Start/stop RTMP streams via OBS WebSocket
- 🧠 Reads game memory — Real-time match data (scores, time, statistics) via Cheat Engine
- 🌐 Communicates via WebSocket — Receives match instructions and sends live data to the server
- 🖥️ Provides GUI Launchers — Tkinter-based launchers for easy start/stop/restart
#Architecture Overview
┌─────────────────────────────────────────────────┐
│ WebSocket Server │
│ (Match Queue & Control) │
└──────────┬──────────────────────┬───────────────┘
│ │
┌──────▼──────┐ ┌──────▼──────┐
│ GUI Launcher│ │ Bot Script │
│ (Thread Holder)│ │ (Main Logic) │
│ fc25-gui.py │ │ fc25.py │
└──────┬──────┘ └──────┬──────┘
│ │
│ ┌──────▼──────┐
│ │ Memory Reader│
│ │ FC25Memory.py│
│ └──────┬──────┘
│ │
┌──────▼──────────────────────▼──────┐
│ Game Process (FC25.exe) │
└────────────────────────────────────┘#Supported Games
| Game | GUI File | Bot Script | Memory Module |
|---|---|---|---|
| EA Sports FC 24 | fc24-gui.py |
fc24.py |
FC24Memory.py |
| EA Sports FC 25 | fc25-gui.py |
fc25.py |
FC25Memory.py |
| Undisputed Boxing | und-gui.py |
und.py |
UNDMemory.py |
#Quick Links
- Installation Guide — Setup requirements and dependencies
- Configuration — Environment variables and settings
- Architecture Overview — System design and data flow
- FC25 Bot Reference — FC25 bot API documentation
- Undisputed Bot Reference — Undisputed bot API documentation
- WebSocket Events — All socket events reference
- User Guide: Restart FC25 — How to restart FC25 bot
- User Guide: Restart Undisputed — How to restart Undisputed bot
#Documentation Legend
Throughout this documentation, you'll find status badges on functions:
ACTIVE — Function is actively used in the main bot flow
DEPRECATED — Function is not called by any production code
INTERNAL — Internal helper function, not called externally
UNUSED CALLER — The function works, but its caller chain is deprecated