Hi,
I know you did not investigate the problem with my mods because of the other things as you said, but I have looked into it a bit... (If I know that there is a failure, I have to deal with it or I can not sleep: D)
I have collected some information:
Here are (again for the memory) the error:
Code: Select all
31.363 Error ModManager.cpp:1294: Error while loading recipe prototype "basic-electronic-components" (recipe): Difficulty normal: Recipe has invalid main product basic-electronic-components. The product does not exist in the recipe product list.
I checked all my override functions in my library (found some problems or missing checks, so it was very productive
), but nothing that results in this error.
At the end I just throw a serpent.block log... at the end of every mod in this pack.
"Debugging in factorio sometimes feels a bit strange, it's a bit like reverse engineering the SMB protocol, and I can say you thats a pain in the a...
"
In the end I can determine the failure in the last stage of your mod and to the angelsmods.functions.OV.execute()
Code: Select all
17.838 Script @__apm_power__/data-final-fixes.lua:12: =================================================================
17.838 Script @__apm_power__/data-final-fixes.lua:13: After final stage apm_power
17.838 Script @__apm_power__/data-final-fixes.lua:14: {
category = "electronics-machine",
expensive = {
enabled = false,
energy_required = 3,
ingredients = {
{
amount = 1,
name = "tinned-copper-cable",
type = "item"
},
{
amount = 1,
name = "solid-carbon",
type = "item"
}
},
result = "basic-electronic-components",
result_count = 3
},
name = "basic-electronic-components",
normal = {
enabled = false,
energy_required = 2,
ingredients = {
{
amount = 1,
name = "tinned-copper-cable",
type = "item"
},
{
amount = 1,
name = "solid-carbon",
type = "item"
}
},
result = "basic-electronic-components",
result_count = 5
},
type = "recipe"
}
^^looks good
Code: Select all
8.164 Script @__apm_recycling__/data-final-fixes.lua:5: =================================================================
18.164 Script @__apm_recycling__/data-final-fixes.lua:6: After final stage apm_recycling
18.164 Script @__apm_recycling__/data-final-fixes.lua:7: {
category = "electronics-machine",
expensive = {
enabled = false,
energy_required = 3,
ingredients = {
{
amount = 1,
name = "tinned-copper-cable",
type = "item"
},
{
amount = 1,
name = "solid-carbon",
type = "item"
}
},
main_product = "basic-electronic-components",
results = {
{
amount = 3,
name = "basic-electronic-components",
type = "item"
},
{
amount_max = 1,
amount_min = 0,
name = "apm_scrap_metal_box_tin",
probability = 0.01,
type = "item"
}
}
},
name = "basic-electronic-components",
normal = {
enabled = false,
energy_required = 2,
ingredients = {
{
amount = 1,
name = "tinned-copper-cable",
type = "item"
},
{
amount = 1,
name = "solid-carbon",
type = "item"
}
},
main_product = "basic-electronic-components",
results = {
{
amount = 5,
name = "basic-electronic-components",
type = "item"
},
{
amount_max = 1,
amount_min = 0,
name = "apm_scrap_metal_box_tin",
probability = 0.01,
type = "item"
}
}
},
type = "recipe"
}
18.164 Script @__apm_recycling__/data-final-fixes.lua:8: =================================================================
^^looks good
Code: Select all
30.278 Script @__PyCoalTBaA__/data-final-fixes.lua:272: =================================================================
30.278 Script @__PyCoalTBaA__/data-final-fixes.lua:273: After final stage PyCoalTBaA
30.278 Script @__PyCoalTBaA__/data-final-fixes.lua:274: {
category = "electronics-machine",
expensive = {
enabled = false,
energy_required = 3,
ingredients = {
{
amount = 1,
name = "tinned-cable",
type = "item"
},
{
amount = 1,
name = "solid-carbon",
type = "item"
}
},
main_product = "basic-electronic-components",
results = {
{
amount = 3,
name = "resistor2",
type = "item"
},
{
amount_max = 1,
amount_min = 0,
name = "apm_scrap_metal_box_tin",
probability = 0.01,
type = "item"
}
}
},
name = "basic-electronic-components",
normal = {
enabled = false,
energy_required = 2,
ingredients = {
{
amount = 1,
name = "tinned-cable",
type = "item"
},
{
amount = 1,
name = "solid-carbon",
type = "item"
}
},
main_product = "basic-electronic-components",
results = {
{
amount = 5,
name = "resistor2",
type = "item"
},
{
amount_max = 1,
amount_min = 0,
name = "apm_scrap_metal_box_tin",
probability = 0.01,
type = "item"
}
}
},
type = "recipe"
}
30.278 Script @__PyCoalTBaA__/data-final-fixes.lua:275: =================================================================
^^looks bad
The function here simply replaced the "basic-electronic-components" with "resistor2" but don't check if there is a main_product because this recipe has multiple output and no icon or icons definition.
you call in (./prototypes/overrides-Hightech.lua)
Code: Select all
OV.global_replace_item('basic-electronic-components','resistor2')
and then call in (./data-final-fixes.lua)
Code: Select all
if mods["angelspetrochem"] then
angelsmods.functions.OV.execute()
^^ Therefore, this error is only raised if "angelspetrochem" is included, and this is the function that forgets to check the "main_product" property in this recipe. I did not thoroughly investigate this function. We should ask Angel for help, because its his function you use here.
I have attatched the last log with this error and a save file before enabling angelspetrochem mod for a easy sync (I hate to select mods manuel
)
EDIT: .. its called "because" NOT "becouse", I will never learn this ...