anansethespider
Warlord
- Joined
- Oct 27, 2016
- Messages
- 288
Right now I'm in the process of putting up mods on steam that call and depend upon other mods on Steam. As I do this, I'm encountering all sorts of strange technicalities concerning the way different mods load. And the worst part of it is the inconsistency - I'm finding certain configurations work for me but crash for others, and vice versa. So I'm starting this thread to discuss the Best Current Practices in the Civ VI modding community for mod stacking and dependencies.
In order to illustrate what I'm talking about and provide further posts a platform for discussion, let's take this example:
Level 1A: Mods 1-5 are all standalone mods, meaning they can be run all by themselves along with the base game. They require nothing but the base game of Civ in order to run.
Level 1B: Mods 6-10 all require one or more piece of official DLC, but other than that require nothing beyond the base game in order to run.
Level 2: Mods A, B, C, D, and E all add onto the components introduced in mods 1-10. For instance, mods at this level might take all of the new units introduced in 1-10 and standardize their cost. So these mods will contain references to new assets introduced in 1-10.
Level 3: Mods I, II, and III take a variety of other mods, some from level 1 and some from level 2, and combine them all in a single game setup. They contain references to all of the new assets introduced in levels 1 and 2, and must come after them in the stack.
And you could go further than that, but I think it's enough to illustrate my point. Right now I'm organizing my mods without any <LoadOrder> commands, because that seems to be the most stable. Inside all of my level 2 mods, I'm putting dependencies on the level 1. And inside all of the level 3 mods, I put dependencies on the level 2. And this seems to be working so far.
However, when I put a dependency on a level 1 mod inside a level 3 mod, it does not work. The level 3 mod only wants to call on the level 2, which will then call on the level 1 through its own dependency. At least I think.
More later.
In order to illustrate what I'm talking about and provide further posts a platform for discussion, let's take this example:
Level 1A: Mods 1-5 are all standalone mods, meaning they can be run all by themselves along with the base game. They require nothing but the base game of Civ in order to run.
Level 1B: Mods 6-10 all require one or more piece of official DLC, but other than that require nothing beyond the base game in order to run.
Level 2: Mods A, B, C, D, and E all add onto the components introduced in mods 1-10. For instance, mods at this level might take all of the new units introduced in 1-10 and standardize their cost. So these mods will contain references to new assets introduced in 1-10.
Level 3: Mods I, II, and III take a variety of other mods, some from level 1 and some from level 2, and combine them all in a single game setup. They contain references to all of the new assets introduced in levels 1 and 2, and must come after them in the stack.
And you could go further than that, but I think it's enough to illustrate my point. Right now I'm organizing my mods without any <LoadOrder> commands, because that seems to be the most stable. Inside all of my level 2 mods, I'm putting dependencies on the level 1. And inside all of the level 3 mods, I put dependencies on the level 2. And this seems to be working so far.
However, when I put a dependency on a level 1 mod inside a level 3 mod, it does not work. The level 3 mod only wants to call on the level 2, which will then call on the level 1 through its own dependency. At least I think.
More later.