Skip to content

Add mod dependencies to other mods #708

@SmalkiGroove

Description

@SmalkiGroove

Hi,

So I made a mod named "Mixed Combat Pack" that I recently uploaded to FAF.
This mod cherry-picks units from other mods (TM, BrewLAN, Extreme Wars ...) and mixes everything consistently with often some customization from me and balancing, as well as AI builders, platoons, etc.
To respect the copyright, I only included bp and lua files in the mod, which means that to play it, we have to download all mods that originally contain the units models, animations and texturing.

Currently in the mod_info.lua file, we can set requires but it's not what I need. The requires keywork is for other mods that need to be enabled to have the mod working.
For example, scoreboard mod requires to have UI tools mod enabled simultaneously.
In my case, I only want the other mods downloaded, but inactive.

Problem is, if I host a game with my mod, people who join won't necessarily have the dependencies, which obviously lead to game crashing when creating a unit that has a missing mesh.
What I have to do to be able to play on FAF is hosting the game with the 12 mods enabled, then when everybody joined I disable all the dependencies to play with only Mixed Combat Pack.

That's a bypass but not a solution in my opinion, because :
1 - many people are not willing to join a game with 12 mods because it's a mess and they are right, so it's difficult to get people in my games
2 - people who join are often confused because they thought they could make some unit from another mod that I didn't cherry-pick in mine. They look at the unit list before the game starts and it contains everything from every mod
3 - some guys have rated my mod lower because they say they are having crashes, and when I contact them to ask if they read the mod description (where I list the required mods), they say no, which I can understand

=> My suggestion is to add a keyword in mod_info.lua like 'dependencies' with the list of mods that needs to be downloaded automatically when mine is downloaded.

It is comparable to FAF client downloading automatically all mods enabled when we join a modded game, in terms of logic.

This would happen in 2 situations :

  • when you click the download button in the mod vault : it checks the dependencies and also download them
  • when you join a game with, for example, Mixed Combat Pack mod : it downloads the mod, which triggers the download of the dependencies

I took my mod as an example but I know there are many mods that have the same need (perhaps not with 12 mods but still), such as TotalMayhemLite, rebalancing mods, for mods that are libraries of lua code or custom straticons or whatever.

Cheers

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions