Overview of new TMWA config system
Posted: 25 Jan 2014, 04:39
Whenever I release the next version of TMWA (14.1.y), it will handle config files in a unified manner.
Instead of hard-coding all the config files, it load a single file (which can be specified on the command line, but has a hard-coded default) which specifies the location of *all* of the other files.
Additionally, for ALL config files, it will be possible to load the files more than once - for instance, to split mob_db or item_db.
In addition to 'import', the new config file system supports version conditional "stop parsing this file", so that options that don't exist in a certain server version will not cause errors.
The new config parser is stricter and gives better error messages (I hope). This may mean that the next server restart will take more time.
I will be adding the new config files to our data repository. The data repository will continue to be compatible with recent versions of the server, but the new server version will not be compatible with old data (unless you copy the new config file over).
--
Also, just a small reminder that I am planning to drop support for GCC 4.6 in April, when Ubuntu 14.04 comes out. I just spent a couple hours debugging a crash caused by the fact that I can't write code for GCC 4.7+ only ...
Instead of hard-coding all the config files, it load a single file (which can be specified on the command line, but has a hard-coded default) which specifies the location of *all* of the other files.
Additionally, for ALL config files, it will be possible to load the files more than once - for instance, to split mob_db or item_db.
In addition to 'import', the new config file system supports version conditional "stop parsing this file", so that options that don't exist in a certain server version will not cause errors.
The new config parser is stricter and gives better error messages (I hope). This may mean that the next server restart will take more time.
I will be adding the new config files to our data repository. The data repository will continue to be compatible with recent versions of the server, but the new server version will not be compatible with old data (unless you copy the new config file over).
--
Also, just a small reminder that I am planning to drop support for GCC 4.6 in April, when Ubuntu 14.04 comes out. I just spent a couple hours debugging a crash caused by the fact that I can't write code for GCC 4.7+ only ...