This repository exists to build a new server implementation without importing legacy Metin2 code into the codebase.
- Do not copy source files from legacy server/client repositories into this repository.
- Do not vendor proprietary assets, packet headers, maps, SQL dumps or quest files whose licensing is unclear.
- Protocol compatibility notes must be rewritten in our own words.
- Fixtures and captures used for tests must be produced and curated for this project.
- Every contributor should treat legacy implementations as behavioural references, not as copy-paste sources.
- self-written protocol notes
- packet matrices written from observation
- network captures produced in the lab
- tests and fixtures generated specifically for this project
- freshly implemented code in Go
- direct copies of legacy structs/headers/source files
- pasted SQL schemas from unlicensed dumps
- copied quest logic or assets
- vendored client/server trees for convenience