Prototype flag to disable showing up in "Made in" tooltip (Factoriopedia)

Place to ask discuss and request the modding support of Factorio. Don't request mods here.
Pi-C
Smart Inserter
Smart Inserter
Posts: 1726
Joined: Sun Oct 14, 2018 8:13 am
Contact:

Prototype flag to disable showing up in "Made in" tooltip (Factoriopedia)

Post by Pi-C »

The problem
The tooltip for recipes will show a section "Made in" if the recipe can not be hand-crafted or if the recipe prototype has the flag 'always_show_made_in' set. "Made in" will also be shown in Factoriopedia. This section can become quite crowded in modded games with many different prototypes for assembling machine, chemial plants etc. – and characters:
factoriopedia_chars.png
factoriopedia_chars.png (262.7 KiB) Viewed 123 times
My mod miniMAXIme: Character scaler and selector allows players to switch between characters on the fly if they also have mods installed that provide new character prototypes. Each of these character prototypes will be listed in the "Made in" section of tooltips/Factoriopedia. For the screenshot above, I've used only 2 character mods (one of them providing about 20 different characters), but there are much more around, so the number of characters shown in "Made in" could be even longer.

That all available characters are displayed in "Made in" is impractical (list becomes too long, potentially pushing useful information out of the way and making it hard to scan the list) and doesn't really make sense: A character is not a machine. Characters can be placed in the world, but can't be ordered to craft something.

I guess including the character in the "Made in" list was an easy way to indicate that a recipe could be handcrafted. But given that there may be characters based on many different prototypes in the game, it doesn't make sense to include all of them in that list.

Suggested solution
In recipe prototypes, we can set the flag "always_show_made_in" to enforce that all prototypes where the recipe can be crafted will always be shown.

I suggest to add a similar flag, e.g. "hide_from_made_in", that can be set in prototypes of characters. (It may even make sense to also add that flag to any machines used for crafting: think of mods that add multiple tiers of the same base thing).

A number of the mods providing new characters depend on my Helper for mods that create new characters. While the character mods just have to define the properties of their characters (mainly animations), my helper mod deals with copying properties from or to the default character. If a "hide_from_made_in" flag was available, I could easily add this flag to any character created with my helper mod – and the "Made in" list wouldn't be spammed with characters any longer.
Last edited by Pi-C on Sat Nov 02, 2024 12:08 pm, edited 1 time in total.
A good mod deserves a good changelog. Here's a tutorial (WIP) about Factorio's way too strict changelog syntax!
curiosity
Filter Inserter
Filter Inserter
Posts: 470
Joined: Wed Sep 11, 2019 4:13 pm
Contact:

Re: Prototype flag to disable showing up in "Made in" tooltip

Post by curiosity »

Can't you make those prototypes hidden? Pretty sure "made in" didn't show hidden prototypes, at least in 1.1.

edit: It's alredy marked implemented. And indeed, looking at entity flags, there it is.
Pi-C
Smart Inserter
Smart Inserter
Posts: 1726
Joined: Sun Oct 14, 2018 8:13 am
Contact:

Re: Prototype flag to disable showing up in "Made in" tooltip

Post by Pi-C »

curiosity wrote: Fri Nov 01, 2024 8:11 am Can't you make those prototypes hidden? Pretty sure "made in" didn't show hidden prototypes, at least in 1.1.
I didn't want to set the 'hidden' flag because that would remove the prototypes it is applied to from useful GUIs as well (e.g. somebody may want to place characters in editor mode).

edit: It's alredy marked implemented. And indeed, looking at entity flags, there it is.
Oh, darn … You're right, there is such a flag that I didn't see! However, so far the flag affects recipe tooltips but is ignored in the Factoriopedia. For testing, I've set data.raw.recipe["wooden-chest"].always_show_made_in = true and added just 2 character prototypes:
recipe+factoriopedia.png
recipe+factoriopedia.png (476.56 KiB) Viewed 106 times
So I'll change my request to get the "not-in-made-in" flag respected by Factoriopedia as well.
A good mod deserves a good changelog. Here's a tutorial (WIP) about Factorio's way too strict changelog syntax!
Post Reply

Return to “Modding interface requests”