Configuration
While we try to support as much of the previous functionality not everything can be replicated due to different constraints. If you think something should be supported please make a PR.
QuantumCoreX tries to implement Metin2 in a modern way. Some things may not match the new workflow. However we want to collect some scripts here to help migrating or importing legacy data into QuantumCoreX.
QuantumCoreX uses Microsoft.Extensions.Configuration which can have multiple data sources (i.e. json files, command line args, environment variables). Feel free to read into their docs do get a better understanding about overriding and naming.
The following configuration providers are supported by default
- hardcoded configs in the app (see default value)
appsettings.json:{"Section":{"SomeKey": "SOME_VALUE"}},{"Section:SomeKey": "SomeValue"}- Environment:
SECTION__SOME_KEY=SOME_VALUE - Command Line:
--SECTION:SOME_KEY SOME_VALUE,--SECTION:SOME_KEY=SOME_VALUE
The order is important. The providers are applied on after another. The last is the most important overriding all previous providers. It is not possible to remove configuration from previous providers as of now.
The following examples are equivalent
- Command Line
- Environment
- appsettings.json
--database:provider sqlite
DATABASE__PROVIDER=sqlite
{
"Database": {
"Provider": "sqlite"
}
}
Settings
🏗️ This area is work in progress and might not be up to date
Depending on your application you have different settings:
By default, QC comes with a preexisting appsettings.json file next to the executable. You can create a
appsettings.Production.json to override values without touching the base config file
Additional config files
The following files will be loaded from the data directory in the directory where the Game executable is. The
default path in development is src/Executables/Game/data
936skilltable.txt- atlasinfo.txt
- exp.csv
- exp_guild.csv
- shops.tsv
group.txtgroup_group.txtitem_protomob_protoskilltable.txtmaps/*/boss.txtmaps/*/npx.txtmaps/*/regen.txtmaps/*/stone.txtmaps/*/Town.txt