cannot read recipe subgroup from data.raw
-
- Inserter
- Posts: 21
- Joined: Fri Jun 14, 2024 12:33 am
- Contact:
cannot read recipe subgroup from data.raw
I'm trying to copy recipes in data-final-fixes.lua, and I need to be able to read the subgroup. None of the recipes in data.raw["recipe"] have the subgroup member present. If I deepcopy a recipe, it still has the original subgroup. I can change the subgroup, but i need to be able to modify the subgroup based on the original name.
Re: cannot read recipe subgroup from data.raw
I think I can help you, but I don't understand the explanation.
Can you give me a code or before and after data?
Can you give me a code or before and after data?
Solo entiendo español, pero si tu también lo entiendes, escríbeme


Everything i write in English is translated by Deepl.

-
- Inserter
- Posts: 21
- Joined: Fri Jun 14, 2024 12:33 am
- Contact:
Re: cannot read recipe subgroup from data.raw
Code: Select all
local function process_recipe(name, recipe)
if not recipe.results or next(recipe.results) == nil then return end
if ends_with(name,"_rcomb") then return end
local new_recipe=table.deepcopy(recipe)
new_recipe.name=new_recipe.name.."_rcomb"
new_recipe.hide_from_signal_gui = false
new_recipe.show_amount_in_title = true
local sg = new_recipe.subgroup
-- SG is nil here
new_recipe.subgroup="recipe-subgroup"
--but i can assign it here.
new_recipe.localised_name=recipe.name
data.raw.recipe[name.."_rcomb"]=new_recipe
Re: cannot read recipe subgroup from data.raw
I don't see any error in your code, I think you are missing information.
I suggest changing this line
Code: Select all
new_recipe.localised_name=recipe.name
Code: Select all
new_recipe.localised_name={recipe.name}
--------------------------------------------------------------------------------------
I think your problem is that you have not created the subgroup.
The following is an example of the code to create a sub-group
Code: Select all
data:extend({
{
[ 'type' ] = 'item-subgroup',
[ 'name' ] = 'recipe-subgroup',
[ 'group' ] = 'logistics',
[ 'order' ] = 'a'
}
})
The following is an example of the code of a group
Code: Select all
{
[ 'type' ] = 'item-group',
[ 'name' ] = 'logistics',
[ 'order' ] = 'a',
[ 'icon' ] = '__base__/graphics/item-group/logistics.png',
[ 'icon_size' ] = 128
}
Code: Select all
data.raw["item-group"]
data.raw["item-subgroup"]
I hope I've been helpful, and if not, I'll look forward to hearing from you.
Solo entiendo español, pero si tu también lo entiendes, escríbeme


Everything i write in English is translated by Deepl.
