How samsulpanjul/umamusume-auto-train works
Umamusume Auto Train automates a career run from the game lobby, using configured training priorities and game-state observations to choose actions. Users configure presets through the local web interface; the Python launcher starts both the bot and configuration server, while the bot interacts with the game through screen-based or ADB controls. The README also documents race scheduling, event choices, skill purchasing, hint hunting, and claw-machine play. Those capabilities are represented by their corresponding core modules, but their internal call wiring is not established by the sampled excerpts.
Main entry points: App.tsx Web app · bot.py Career bot · server/main.py Local API · main.py Launcher
Components 28
Bot runtime
- Launcher
main.py - Career bot
core/bot.py - Runtime config
core/config.py
Game automation
- Game state
core/state.py - OCR
core/ocr.py - Recognizer
core/recognizer.py - Training logic
core/skeleton.py - Strategies
core/strategies.py - Training choices
core/trainings.py - Event choices
core/events.py - Game actions
core/actions.py - Claw machine
core/claw_machine.py - Screen controls
utils/pyautogui_actions.py - ADB controls
utils/adb_actions.py
Configuration UI
- Web app
web/src/App.tsx - Setup settings
web/src/components/set-up/SetUpSection.tsx - Race schedule
web/src/components/race-schedule/RaceScheduleSection.tsx - Event selection
web/src/components/event/EventSection.tsx - Training settings
web/src/components/training/TrainingSection.tsx - Training timeline
web/src/components/skeleton/TimelineSection.tsx - Function mods
web/src/components/function-mods/FunctionModsSection.tsx - Local API
server/main.py - Score calculator
server/calculator_helpers.py - Preset files
External integrations
- Umamusume
- Browser
- Discord webhook
Other components
- Player
Connections 20
- Player → Launcher: starts bot
- Launcher → Career bot: starts career
- Launcher → Local API: starts API
- Player → Browser: configures
- Browser → Web app: opens UI
- Web app → Local API: requests config
- Web app → Setup settings: edits setup
- Web app → Race schedule: edits races
- Web app → Event selection: edits events
- Web app → Training settings: edits training
- Web app → Training timeline: edits timeline
- Web app → Function mods: edits scoring
- Local API → Preset files: reads and writes
- Local API → Score calculator: calculates scores
- Local API → Career bot: updates webhook config
- Career bot → Runtime config: loads settings
- Career bot → Umamusume: automates career
- Career bot → Screen controls: controls screen
- Career bot → ADB controls: controls device
- Career bot → Discord webhook: sends updates