https://github.com/w3champions/matchmaking-service (private)
matchmaking-service
Typescript, Node, Express, Mongodb
Main API for many other components.
Sends and Receives data to ingame-client
Creates games
Runs the matchmaking queue
Logs game results
communicates with Flo
https://github.com/w3champions/ingame-client (private)
HTML/CSS/JS, JQuery
The in-game UI addon as seen inside reforged.
Adds additional functionality to the existing Reforged UI
Processes requests from users
Provides UI for interacting with W3Champions
Handles downloading assets
GitHub - w3champions/flo: Warcraft III toolkit in Rust.
Rust
3rd Party game server implementation for Warcraft 3: Reforged
Handles sending and receiving of data packets for Warcraft 3 games.
Intercepts data for processing (e.g. save as replay actions, prevent muted players from communicating)
Magic
GitHub - w3champions/launcher: This is the launcher for w3champions. It includes the needed flo hostbot executables.
Typescript, Vue, Electron
Desktop launcher that automatically manages updates and flo connections
Checks and Installs version updates
Parent process for flo-worker.exe - The entrypoint for flo data transfer
Reconfigurable Hotkeys
PTR switching
https://github.com/w3champions/launcher-e
Rust/Tauri, React/Typescript
Next generation replacement for the launcher
and ingame-client
Serves both purposes in one desktop application
Reduces joinbugs
Better support for players
Faster than ingame-client
Decoupled from Warcraft 3 client
https://github.com/w3champions/update-service
.NET, Mongodb
Serves content and updates for W3Champions
Syncs assets to cloud services
Serves map downloads on demand (e.g. when entering a custom game)
Serves Launcher updates & checks
GitHub - w3champions/website: The webpage for the www.w3champions.com community project.
Typescript, Vue, Vuetify, Chartjs
https://github.com/w3champions/website-backend
.NET, Mongodb
Serves all content for https://www.w3champions.com/
Logs aggregated results from Matchmaking-service
Readmodels for overall statistics
Admin functions
https://github.com/w3champions/map-service
Rust
https://github.com/w3champions/identification-service
.NET
Handles Auth for the website
Serves JWTs for website login
Handles Blizzard & Twitch 0Auth for the website
Defines Admins
https://github.com/w3champions/mmr-service (private)
Python, FastAPI
Serves as a calculator API for complex mathematical functions for matchmaking-service
Calculates post-game MMR
Calculates team balancing for large team games (4v4 melee, 4v4 LTD, etc)
https://github.com/w3champions/map-updater-scripts
Typescript, https://github.com/cipherxof/w3ts , Lua
Functions for Warcraft 3 maps, specifically the ones used for W3Champions ladder maps.
Automates the injection of scripts via Typescript API
Adds -draw, -workercount, -deny etc