EmperorFool
Deity
It looks like all of the infos are stored in vectors and all items are read from the XML. As long as all new elements are at the end of the XML files they will be read but ignored since the ones that have additional elements have #defined constants that are used as loop constraints. We'd really need to do a thorough test, but it looks promising.
One thing I still need to do is find a good alternative to using PlayerOptions for features that cause OOS issues: Governor Builds Workers, Safe Moves, and Pre-Chop. One idea is to keep them as normal options and copy their values to PlayerOptions if the player is using the MP BULL DLL. I'd rather not have a separate DLL for MP, though.
One thing I still need to do is find a good alternative to using PlayerOptions for features that cause OOS issues: Governor Builds Workers, Safe Moves, and Pre-Chop. One idea is to keep them as normal options and copy their values to PlayerOptions if the player is using the MP BULL DLL. I'd rather not have a separate DLL for MP, though.