View Single Post
Old March 7, 2019, 18:19   #102
Derakon's Avatar
Join Date: Dec 2009
Posts: 9,024
Derakon is on a distinguished road
Originally Posted by luneya View Post
If you're going to have an officially maintained and distributed alternative configuration file--which is what the old_class.txt provided with the 4.2 development builds actually is--then there is no reason not to make it a birth option instead. The code complexity would hardly be increased: the only changes would be the addition of a global variable to tell the program whether to read from class.txt or old_class.txt whenever it needs to reference class configurations, and a birth option to set that variable.
Unfortunately it's not quite that simple: unless I miss my guess, the data files are loaded prior to character creation/loading, so either you need a pre-loading options file, or you need to delay options loading until you've processed the "use old classes or new classes" question during chargen. Either is likely to be nontrivial.

Think of the old vs. new classes as like being a game mod, because that's effectively how they're implemented. Most games either just blindly load all installed mods as part of startup, or have a prompt screen that asks you which mods to load before you get into the game proper. Angband happens to do the former, and you're basically asking for it to switch to the latter.
Derakon is offline   Reply With Quote