Firstly it would be important to mention that ALL of our DFN files are cached into memory and kept there until the program is exited. While this is necesarry to prevent slowdowns in some scenarios, this turns into wasted memory in other cases.
There are two basic types of DFN's that UOX3 has. There are the DFN's we all immediately think of, Items and NPC's, and a few assorted others. These scripts are constantly used as the game runs and thus for performance reasons MUST be kept in memory.
However there is a second type, these are scripts such as (Guard/Town) Regions, SpawnRegions, Titles, Teleport Locations, Creatures, Locations, and possibly others. All of these scripts are loaded in as strings, and then pushed into structs and classes contained in the CWorldMain class for easy handling. At this point, it is my belief that we should flush the script entrys out for these particular scripts, saving ourselves quite a bit of wasted memory.
Basically what I'm wanting are thoughts regarding this situation, ideas on how to best go about implementing a good dynamic flushing system, and other opinions in general.
Thanks