We should structure this more like Eamon. A main hall disk that holds all the pfiles. You enter a dungeon and the pfile is marked as in-use and transferred to the dgn disk, and the dgn executable is chain-loaded. You play the dungeon, and when you return to the main hall any non-universal items (keys, misc, etc) are deleted and all loot is converted into gp value. You only get to keep things like weapons, armor, universal items like potions, spells, etc. Or maybe we should have "town disks" and a starting town. Then dungeons can connect different town disks together. But in any case, town disks will be where char creation, level up, and resupply happens. Dungeons will be where combat and exploration happens. Adventures that happen inside a town (rats in the basement or whatever) will be separate dungeons that happen to be on the town disk, and the towns themselves will be like a menu of places to go, not a map to explore. Then all of the custom code in the dungeons for puzzles, how to draw the walls (forest vs dungon wall for example), npcs, etc can be all contained in that one dungeon. We'll define the pfile as compatible with ACKS, with some extensions for piecemeal armor and weapon vs armor type, and more sensible saving throws. We will define some standard item properties and spell effects. We will define a custom item type that is defined by a binary block, so that dungeons by the same author or that work together can pass those custom items around (however when they are imported into a dungeon that doesn't support them, they will take up inventory space but will have no function). Character inventory space on the main hall disk will be strictly limited, but we can include a bank vault where things can be stored. Levelup will be calculated by the main hall/town when the character returns from the dungeon. We'll write some kind of shared code for town disks to handle all that. * Maybe eventually make btw style chargen where you pick class first and then lifepath generates stats mostly appropriate to the class. Cretin Struct ------------- string name ?? sex (male/female/none) ?? class ?? level ?? xp ?? alignment ?? hp_max ?? hp ?? saving throws ?? thac0 u8 str u8 dex u8 con u8 wis u8 int u8 cha