Obvious flaws: Most mods are made for specific tilesets. If modders add plants, vermin, inorganics that occur naturally, grasses, trees or tools, they have a tile mapped to them in the raws.
If the modders only add stuff (compared to eg. vanilla ironhand) that can be dealt with. If they change things, or diverge from the basic phoebeus, yeah that's not good.
I think 98% success can be achived by changing the raw generation flow to: ASCII -> patch graphics changes -> patch mod changes (as opposed to the previous idea: ascii -> mod -> graphics) -> I'm talking about raw/objects here, and keep in mind that we don't want to overwrite files, but merge the changes.
As for raw/graphics: what kind of changes are there? These'd be additional sprites and configs, or do the modders modify the existing configs? I'm not sure. But diff-merge could work here too.
If your mod starter pack offer 5 tilesets, but includes a mod that has only been written for 1, you will face a choice:
Do the other 4 tileset versions yourself, which is a lot of work for every mod. Or add them with the note
"this only looks good with tileset X", which leads to lots of combinations of mods that dont look good together.
On the other hand, if there's a mod manager that can spare you the time to hand-make 5 raws sets for 5 g.packs, because it can generate you all 5 IF you follow the guidelines (to be discussed...) I think that's a strong enough initiative to use it. Of course there's the obvious problem, when someone creates extra sprites for their mod with a particular style (eg ironhand), but nothing can fix that.
There is no data/raws folder. Everything in the data folder is save-unrelated, it will stay across tilesets.
Which might cause a problem if you have Save1, generated with Masterwork and the Masterwork tileset, and Save2, playing Genesis with the Ironhand tileset.
Because your data folder can only have 1 tileset at a time, and the game doesnt realize to which save it fits. So people that just played their Genesis fort,
then load their older Masterwork fort will suddenly look at broken ironhand graphics, because the raws in the save are configured for another tileset.
Yes, I meant df/raws. So when loading worlds
nothing gets loaded from df/raws? Not even df/raws/graphics? Everything comes from region/raws? Just double checking.
Because that's a problem. That's why I proposed previously that the launcher should ask you which save folder you'd like to play, so you can choose the appropriate tileset too.
Another, better solution - which may, or may not be possible- is to use dfhack to "hijack" the folder config.
Proposition: when launching the game everything is loaded as it is now. But when you select a save game a dfhack function "overwrites" the location of the tileset and .init in memory, and loads it from region/art and region/init. After all I've seen mifki do with the rendering, I'd be surprised if this was not possible. If not, we could still ask Toady to change this in the game, it'd be logical to have the tileset next to the save, if the graphics are already there. But that may take a long wait.
The save updating: You are correct, the raws have to be the same. I think I misunderstood you, about adding mods to already existing saves.
Thats mostly not possible. Altering previous content yes, but adding new stuff, no.
I think we can skip this, while bug fixing updates could be inserted into existing saves (like correcting bugged reactions) it'd generate a hell of support request when players don't understand while the new entities are not there. Better leave it out, at least for now.
You will also do some manual refitting, for example the embark profiles.
/snip
Perhaps add a suffix to the profile indicating which mod it was made for? I'm not sure if it's a big problem, you're going to choose the raws anyway, changing the embark profiles and the worldgen settings too looks like a logical extension anyway. Just one more thing to add to the list.
Mods that include the same named objects, with different IDs are also important.
/snip
Merging Genesis and MDF together is something someone will obviously try and fail.
That's a bit extreme example I'm not sure we even need to consider that scenario.
What is realistic is like taking Accelerated mod and adding the MDF Gnomes to it. For eg. If MW is added to the mix I think it should be in a modularized form: rip it apart, so all races are a standalone mod, stronger invaders are another mod and so on, with simplified materials as a prerequisite. Then we can put it together in a different configuration.
But yeah, I can see the problem with conflicting IDs. Sigh.