DanielKote / Foreman2

Visual planning tool for Factorio
Other
158 stars 14 forks source link

Cannot enable objects for Exotic Industries Mod #52

Closed Rybadour closed 1 year ago

Rybadour commented 1 year ago

The Exotic Industries mod has a different mechanism for enabling new research that I suspect is messing with Foreman.

I can see all the objects when I check "Show Unavailable": image

However even if I manually check them they do not appear when I try to add a new item or recipe.

"Enable All" also does nothing.

Could we have the checkmark in this list override any other checks that prevent these items/recipes from being used? Also it would be nice if "Enable All" could work for this case as well!

mrozpara commented 1 year ago

this is because of: "enabled": false in preset *.pjson file - and as you wrote: "has a different mechanism for enabling new research" Quick workaround: find/replace all "enabled": false with "enabled": true in pjson of your preset. It may cause that you will see more recipes/assemblers that designed by mod's creators, but...

Rybadour commented 1 year ago

That doesn't appear to be the solution. I set a few to "enabled": true but they still don't appear.

mrozpara commented 1 year ago

there is a logic checking if all prerequisits are also "enabled" - that's why I've changed all "enabled" - and I can see all nodes available: screen 1 screen 2

Rybadour commented 1 year ago

Ah okay I understand. That works!

Issue still remains of course, the UI should handle this case.

DanielKote commented 1 year ago

Quite a lot of modpacks (and even vanilla factorio) contain recipes that are disabled/hidden and are not meant for the user. Mods like Exotic industries with unique methods of enabling recipes outside of the research tech tree are currently unsupported by foreman, and I honestly have no idea how to support them since the code for enabling these recipes is not something that can be handled in a generic (for all mods) method and would instead need to be done on a mod-by-mod basis.

For now these situations can be resolved by going into Settings -> graph options -> Advanced -> Show unavailable items (DEV). This allows you to see the recipes that are unable to be researched in the actual game.

Checking the recipes in the settings window of the original post's screenshot will then allow you to have the recipe show up without checking the 'show disabled' option in the recipe selector.

As an example: vanilla factorio has recipes for 'loaders'. These recipes are not available at the start of the game nor can they be researched by any tech. As such foreman app lists them as 'unavailable' and will not show them in the recipe list or the list of 'enabled' recipes. If you check the 'show unavailable items (DEV)' option, then these recipes will become visible in the recipe selection as long as you either check the 'show disabled' option in the recipe selection or 'enable' the recipe in settings.

TL/DR: Recipes that are unavailable through either being unlocked at the start of the game or through the tech tree are hidden by the app under the term 'unavailable'. If you wish to see these recipes you need to go to Settings -> graph options -> Advanced -> Show unavailable items (DEV) << check this. No changes to the preset file are necessary.

Rybadour commented 1 year ago

Ah fair point! It's too bad you can't just enable them all right from that screen. Any chance we get a button to enable them right there?

DanielKote commented 1 year ago

Right, I see how that would help. I added it to the list of features to add for next version (though I cant say how soon that will happen). Having an option to manually set a 'unavailable' recipe to 'available' (and thus not have to show all the rest of the unavailable recipes) would definitely help. Just have to figure out how to set this up in a nice way.