Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 5 Next »

A list of all W3Champions components can be found on our github https://github.com/w3champions and you can see how they are deployed here: DevOps

Name

Docs

Tech

Purpose

https://github.com/w3champions/matchmaking-service (private)

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/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://www.w3champions.com/

  • Serves views for Matches, Rankings, Profiles, FAQ

  • Localization for: πŸ‡¬πŸ‡§ πŸ‡·πŸ‡Ί πŸ‡°πŸ‡· πŸ‡¨πŸ‡³ πŸ‡©πŸ‡ͺ πŸ‡΅πŸ‡± πŸ‡ΊπŸ‡¦ πŸ‡§πŸ‡· πŸ‡«πŸ‡·

  • Admin panel

  • Displays Statistics

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

  • Provides map parsing data compatible with Flo

  • This enables storing and adding maps to flo dynamically

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

  • No labels