Argh wrote:VFS should not be looking for a local file for that. It should be using the iconTypes table, which should be constructed before any UnitDefs are even defined.
I don't suppose it's too late to say, also, that if more than one TDF defines stuff that should be loaded before unitDefs are even evaluated (i.e., you have more than one armor.txt, etc.)... they should get added to one another, not override each other, unless there's a name collision (imo).
VFS is how spring loads files. Virtual FILE system. It doesn't even know what lua is, let alone tables. Why do you insist on random jargon?
Only one file can have a particular name. Have two icontypes.tdf, and the most recent one gets used. It would be possible for icontypes.lua to do combination work if files from a single archive could be requested from the VFS, but they can't yet. One method you could use is a custom icontypes.lua in worldbuilder that loads icontypes.tdf and then adds onto it. If you only have a single icontypes.lua, then you should know that there is no code that would cause interference with unitdefs or cares about what archive they come from at all, so that guess is wrong.
Also, I have no idea why you would say that icontypes should load before unitdefs. As it happens defs.lua grabs unitdefs first before returning them both to spring at the same time, but it could go in either order easily.