Page 1 of 1

[Rseding91] [0.13.11]Adding Prereq to a tech that is that tech crashes

Posted: Fri Jul 29, 2016 6:50 am
by kasandraen
Its a stupid bug, but I somehow managed to do it. I added a new tech, advanced-processing-unit, and later in the script added advanced-processing-unit as a Prerequisites to advanced-processing-unit. The game loaded fine, except when you are ingame and select it, the game crashes with the following error:

Code: Select all

ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FFD8B8B13D2)
00007FFD8B8B13D2 (KERNEL32): (filename not available): BaseThreadInitThunk
ERROR: SymGetLineFromAddr64, GetLastError: 487 (Address: 00007FFD8D1154E4)
00007FFD8D1154E4 (ntdll): (filename not available): RtlUserThreadStart
I assume it happens since it tries to create a tech tree that is impossible :)

Re: [Rseding91] [0.13.11]Adding Prereq to a tech that is that tech crashes

Posted: Fri Jul 29, 2016 11:02 am
by Rseding91
Thanks for the report, I'm surprised no one else has mistakenly made recursive prerequisites before :)

Fixed for 0.13.12.

Re: [Rseding91] [0.13.11]Adding Prereq to a tech that is that tech crashes

Posted: Sat Jul 30, 2016 8:11 pm
by daniel34
Not sure if this is intended, but in 0.13.12 adding a prerequisite to a technology that already has this prerequisite will cause Factorio to give the "Recursive technology prerequisites detected" error.

Example: the HardCrafting mod adds Plastics as a prerequisite to Advanced Electronics although it already has this prerequisite from the base game, this worked without problems in 0.13.11.
(See viewtopic.php?f=91&t=18877&start=170#p190810)

Factorio should either ignore duplicate prerequisites like it did in previous versions or explain the issue in the error message (at least adding that this can also be caused by duplicate prerequisites).

The error message dialog is also way too long and lists all technology prerequisites including vanilla ones which further confuses mod authors and users, it should be limited to the affected technologies if possible.
4K portrait mode