explicit NOT/ONLY operands for mod compatibility declaration

Suggestions that have been added to the game.

Moderator: ickputzdirwech

Post Reply
usafphoenix
Long Handed Inserter
Long Handed Inserter
Posts: 58
Joined: Sun Aug 06, 2017 9:42 am
Contact:

explicit NOT/ONLY operands for mod compatibility declaration

Post by usafphoenix »

My idea is to introduce two new operands to be available for use in info.json of a mod file.
We are able to declare an optional dependency "?" but so far don't have a way to explicitly declare two mods as being incompatible, or NOT-allowed to load together. So i suggest "!" as a way to explicitly declare two mods as incompatible or stating "do not load if both of these are enabled". A new status color can maybe be used to indicate there is a mod enabled that another mod has declared incompatible and to highlight those in the mod-selection window with, say: Blue and Purple colors.

This first option is important because there are many mods out there that have others they are simply not compatible with....will never be compatible with....and have errors that cannot be fixed because they both edit the same files (or in some way interact that breaks the game).

The other idea for an operand is the "ONLY" operand: which is essentially the idea above "!" but instead of listing every mod that exists, it essentially says : "if the mod is not in this list as either a required dependency, or an optional dependency," do not allow them to load together.

Functionally, this second one makes it MUCH easier for someone to create a modpack and distribute it for others to play. The idea being, a modpack would require lots of recipe/technology/and integration tweaking between whatever mods the author(S) decide to do, and any additional mods a player adds could (more frequently than not) either negate the balancing the author has done, alter the concept of the modpack idea, or create scenarios where errors or crashes result.

I think the "ONLY" operand would need a separate (optional) line within the info.json
the formatting of the dependency list would stay the same. With the presence of the "ONLY" operand above, it would limit the mods that could be enabled concurrently with the list of mods in the dependency list. Those listed can still be optional themselves so you could effectively create a modpack that has an explicit list of "these are the only mods that can load, but some of these are optional. Adding mods not in this list will cause the client to close out or cause all the mods to forcefully be disabled."
Last edited by usafphoenix on Sun Apr 29, 2018 3:57 pm, edited 1 time in total.

Bilka
Factorio Staff
Factorio Staff
Posts: 3140
Joined: Sat Aug 13, 2016 9:20 am
Contact:

Re: explicit NOT/ONLY operands for mod compatibility declaration

Post by Bilka »

! already works as a "not-compatible" operand.
I'm an admin over at https://wiki.factorio.com. Feel free to contact me if there's anything wrong (or right) with it.

usafphoenix
Long Handed Inserter
Long Handed Inserter
Posts: 58
Joined: Sun Aug 06, 2017 9:42 am
Contact:

Re: explicit NOT/ONLY operands for mod compatibility declaration

Post by usafphoenix »

sorry. info at https://wiki.factorio.com/Tutorial:Modding_FAQ was lacking. it didn't mention the existance of the "!" operand for dependency declarations

where can i find more detailed info? there may already be the functions i need to do what i want, but i'm not sure if i've been looking in the right place

Bilka
Factorio Staff
Factorio Staff
Posts: 3140
Joined: Sat Aug 13, 2016 9:20 am
Contact:

Re: explicit NOT/ONLY operands for mod compatibility declaration

Post by Bilka »

usafphoenix wrote:where can i find more detailed info?
Nowhere, the info.json is not documented.
I'm an admin over at https://wiki.factorio.com. Feel free to contact me if there's anything wrong (or right) with it.

Post Reply

Return to “Implemented Suggestions”