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
https://github.com/w3champions/flo
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
https://github.com/w3champions/launcher
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
https://github.com/w3champions/website
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