Architecture
[ Metin2 Client ] --TCP packets--> [ Auth :11000 ]
|
v
[ Redis cache ]
|
[ Metin2 Client ] --TCP packets--> [ Game :13000 ] --SQL--> [ MariaDB/MySQL ]
|
[ data/ ] (jobs, exp, atlas, items, maps as provided)
Processes
- Auth — login, account validation, channel list
- Game — world, movement, combat, inventory, shops (per core feature set)
- DB — accounts, players, items persistence
- Cache — session / live world shared state
Data layers for “items / skills / maps”
| Layer | Where |
|---|---|
| Protocol packets | Core source (vendor/*/src) |
| Item/mob definitions | Core data JSON/SQL + client proto packs |
| Skills | Core skill managers + client skill data |
| Maps | Map files client-side + spawn/atlas server-side |
| Play handling | Game server combat/move services |
Two cores included
- QCX — production-style Docker images from GHCR, C#
- Open-MT2 — Node/TS, rich roadmap UI, easier to read for packet study
Pick one primary for runtime; keep the other as reference.