Basically, I'm stealing an idea from Bioware's Aurora engine. They use a format called the ERF, or Encapsulated Resource File. For the Aurora engine, this mostly contains files, like a package or zip (though, not compressed). The ERF structure is used for the games HAK, MOD, and SAV files (as well as raw ERF files, naturally).
My UDC, I'm hoping, will do the same thing, but on a much more generalized scale. I thought I had drawn out a good design for the UDC, being nodes of data that could, themselves, contain nodes of data. As I poked at it, though, my initial design was becoming quickly cumbersome when it came to calculating out node offsets, since one level of nodes would have to take into account sub-nodes, and those sub-nodes would need to take into account their sub-nodes and so on.
After coming to a moment of pure frustration, I started on a new tactic for tackling this problem. A branching structure where each element in the branch can contain a node and/or child branches. Haven't gotten far with this idea, yet, but tomorrow I hope to tackle some more of it.
What do I want to achieve with the UDC? A single file structure that can be adapted for various custom file-types. One UDC file type for packaging files, one UDC type for a 3D model format, and so on. I suppose we'll see if this idea ultimately holds water or not. I think it will, but I'd be willing to hear anyone's thoughts on the idea.
Thanks for the comments on my last post! Hope my journal stays interesting for everyone :)