Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Football simulation engine (like Football Manager) written in pure Rust

License

Notifications You must be signed in to change notification settings

ZOXEXIVO/open-football

Repository files navigation

Open Football

Attempt to implement Sigames Football Manager simulation engine without manual control.

The project is NOT a game, it is a simulation without the possibility of control.

The goal is to get as close as possible to a real soccer simulation and based on this data:

  • Predict match results
  • Predict the success of future player transfers
  • Simulate other football data

Currently available nation for simulation - Italy


Live Demo

The simulation is quite resource-intensive, so I disabled the continue button (top-rigth corner) after first simulation


Match example (click on any goals)

alt text

Player page example (click on any player) alt text

Club page example

alt text

League page example

alt text

Project structure

/src/core - Core Rust app logic (including match)

/src/database - Simulation data source logic

/src/dev/graphics - Dev utils for instant match development (src/core/src/match)

Match dev looks like (cross-platform)

alt text

/src/dev/neural - Dev utils for training NN for using in match, etc

/src/neural - Core Burn neural network data /src/web - HTTP server for running API for Angular UI

/ui - Angular app that you can see in Live Demo


How to run?

  1. Local run
// run backend
cargo run
...
open chrome at http://localhost:18000
  1. Run in Docker
cd open-football
docker build -f .\build\Football.Dockerfile -t open-football .
docker run -d -p 18000:18000 --name open-football open-football
open chrome at http://localhost:18000

License

Apache License 2.0

AltStyle によって変換されたページ (->オリジナル) /