Mod directory structure redefinition
Posted: 29 Aug 2007, 08:54
Title pretty much says it all. Some things already allow this to an extent:
- objectname (FBI), model (weapon TDF), and object (corpse TDF) allow arbitrary subdirectories within the objects3d folder
- Sound tags in various files also allow subdirectories within ./sounds/
- resources.tdf also allows arbitrary paths within ./bitmaps/
- icontypes.tdf is completely arbitrary
However, I'd personally like to organize things even further:
- ./unitpics/ and ./sidepics/ should be sorted into ./bitmaps/
- ./anims/ should be renamed to ./cursors/ and moved into ./bitmaps/
- ./LuaCob/, ./LuaGaia/, ./LuaRules/, and ./LuaUI/ should be in Lua/Cob/, Lua/Gaia, etc
- Armor.txt should be renamed to Armor.tdf and moved into ./gamedata/
- I'd personally like an FBI tag like objectname, except for the script file, which would also allow arbitrary paths.
I know a lot of these would break current stuff though, so just let each directory be defined in modinfo.tdf (or a new tdf file, whatever) with the values defaulting to the current structure. Something simple like:
- objectname (FBI), model (weapon TDF), and object (corpse TDF) allow arbitrary subdirectories within the objects3d folder
- Sound tags in various files also allow subdirectories within ./sounds/
- resources.tdf also allows arbitrary paths within ./bitmaps/
- icontypes.tdf is completely arbitrary
However, I'd personally like to organize things even further:
- ./unitpics/ and ./sidepics/ should be sorted into ./bitmaps/
- ./anims/ should be renamed to ./cursors/ and moved into ./bitmaps/
- ./LuaCob/, ./LuaGaia/, ./LuaRules/, and ./LuaUI/ should be in Lua/Cob/, Lua/Gaia, etc
- Armor.txt should be renamed to Armor.tdf and moved into ./gamedata/
- I'd personally like an FBI tag like objectname, except for the script file, which would also allow arbitrary paths.
I know a lot of these would break current stuff though, so just let each directory be defined in modinfo.tdf (or a new tdf file, whatever) with the values defaulting to the current structure. Something simple like:
Code: Select all
[MOD]
{
Name=My organized mod;
Description=Blah;
URL=http://www.google.com;
[DIRECTORIES]
{
cursors=bitmaps/cursors; //default: anims
luacob=lua/cob; //default: luacob
luagaia=lua/gaia;
luarules=lua/rules;
luaui=lua/ui;
sidepics=bitmaps/sidepics;
unitpics=bitmaps/unitpics;
units=gamedata/unitdefs; //just an example for the hell of it
}
}