Wednesday, June 4, 2014

FMod - Reconfigurating I/O

I executed the change in file configuration, changing it from one XML document to a dictionary of FROF configuration structures accessed by a string name. This caused more compile errors than I expected. Since I was in triage mode anyway, I went ahead and implemented the new event bus style that I had been thinking about for a while. I fixed up all the broken things and then started ripping apart the first class I ever wrote for Abiathar: the dependency binder.

I deleted the file pointers in that class, moving them to a FrofConf structure. That broke a huge amount of things in the saving and loading routines, which I still have not fully fixed (they're not even building now). The profile infrastructure is something I threw together a few days before release to support NetKeen and quickly became dissatisfied with. Instead of mixing data between the file configuration and the profile in the general configuration, the entire profile in the general config will be copied to the file config, allowing it to be modified without messing with the blueprint. This is possible because of a new Duplicate function on any FrofConf structure.

I decided to place these structures in a separate file, "defaults.aconf", while the settings for less advanced users remain in the equivalent of "persist.aconf", which I may or may not change. A bug in the File Emitter has been fixed, allowing it to correctly output files with sizes greater than 8KB. So far, v1.4 looks to be a promising version!

No comments:

Post a Comment