#FC25 GUI Reference
File: fc25-gui.py · Lines: 639 · Framework: Tkinter
#Overview
The FC25 GUI launcher provides a simple interface to start/stop the FC25 bot and configure settings. It also listens for remote WebSocket commands.
#GUI Elements
| Element | Type | Purpose |
|---|---|---|
| UUID Label | tk.Label |
Shows current UUID |
| UUID Entry | tk.Entry |
Input field for new UUID |
| Minutes Radio | tk.Radiobutton |
Select 7 or 10 minutes |
| Update Button | tk.Button |
Save settings to .env |
| Start Button | tk.Button |
Start bot scripts |
| Stop Button | tk.Button |
Stop all bot processes |
| Status Label | tk.Label |
Memory check status |
| Progress Bar | ttk.Progressbar |
Memory check progress |
#Functions
#check_memory_and_start() ACTIVE
Main entry point for starting the bot. Validates memory addresses before launching.
Flow:
- Check
C:\FIFA25_MEMORY\addresses.txtexists - Create
FC25Memoryinstance (connects toFC25.exe) - Call
validate_all_memory()with progress callback - If failed → show error with failed keys
- If success → call
run_script()
#run_script(trigger_source) ACTIVE
Launch fc25-start.bat and focus.bat as subprocesses.
| Parameter | Type | Default | Description |
|---|---|---|---|
trigger_source |
str |
"manual" |
Source: "manual", "ws", "close_event" |
#stop_script(trigger_source) ACTIVE
Stop all running bot processes:
- Send
terminateevent via WebSocket to/fc25/helpernamespace - Collect all known PIDs (local + stored + WMIC fallback)
taskkill /F /PID <pid> /Tfor each PID
#update_env() ACTIVE
Save UUID and Minutes to .env file using python-dotenv.
#load_current_settings() ACTIVE
Load and display current settings from .env on startup.
#refresh_button_states() ACTIVE
Update Start/Stop button states based on process status.
#_initialize_websocket_listener() ACTIVE
Connect to WebSocket server and register remote command handlers:
| Event | Action |
|---|---|
start-script |
Call run_script(trigger_source="ws") |
stop-script |
Call stop_script(trigger_source="ws") |
git-pull |
Run git fetch + pull in background thread |
#_run_git_pull() ACTIVE
Execute git fetch origin undisputed followed by git pull origin undisputed.
#on_close() ACTIVE
Window close handler — stops all processes and disconnects WebSocket.