Dana: crafting tree/graph explorer

by Credne

Dana provides ways to explore and display the recipe graph of Factorio (vanilla or modded). This mod is still in alpha stages: it is recommended to use it on a dedicated (sandbox) save, or at minimum to backup your save. While the mod should work in multiplayer, be careful about griefing (rendering huge graphs can freeze the game for several minutes).

Utilities
5 months ago
0.18 - 1.1
1.97K

b [Pending: SE] Crashes on new game start

2 years ago
(updated 2 years ago)

Game ver 1.0.0, with a huge list of mods on.

The mod Dana: crafting tree/graph explorer (0.2.1) caused a non-recoverable error.
Please report this error to the mod author.

Error while running event dana::on_init()
dana/lua/model/BoilerTransform.lua:82: attempt to index global 'Logger' (a nil value)
stack traceback:
dana/lua/model/BoilerTransform.lua:82: in function 'tryMake'
dana/lua/model/TransformsDatabase.lua:116: in function 'rebuild'
dana/lua/model/PrototypeDatabase.lua:82: in function 'rebuild'
dana/lua/model/PrototypeDatabase.lua:54: in function 'new'
dana/lua/Dana.lua:54: in function 'new'
dana/lua/EventController.lua:38: in function <dana/lua/EventController.lua:33>

Right now running tests to localize which mod combination did it..

2 years ago

"Dragon Industries - Nauvis Division" + "Nauvis Day" + "Dana" = Crash

2 years ago
(updated 2 years ago)

Thanks for the report.

After some investigation it's a very nice bugception:

  • The code dereference a variable that does not exists.
  • But this code is a warning/error message that should happen for a case that seemed impossible according to the doc: a boiler consuming 2 different fluids at the same time. Well I was wrong: fluid-powered boilers legitimately have 2 fluid inputs (the water input & gasoline input).
  • And while trying to write code to handle liquid-powered boilers properly, I found what looks like a bug in Factorio's modding API.

So I'll remove the ugly crash in a patch that should probably come out today. But proper support of fluid-powered boilers will have to wait until Factorio's devs give feedback to the ticket (and possibly the release of an update from them). Until then, they'll simply not appear in Dana.

2 years ago

v0.2.2 is out, and should fix the crash.

For now Dana will log a warning message when the game is loaded indicating the name of ignored boilers.

Please confirm that it's working as intended for you too.

2 years ago

v0.2.2 is out, and should fix the crash.

For now Dana will log a warning message when the game is loaded indicating the name of ignored boilers.

Please confirm that it's working as intended for you too.

Yep, works ^_^
Thank you for your work on this mod :) And also for the explanation, this helps forward information on how the game works internally

2 years ago
(updated 2 years ago)

Game crash also with 0.2.2

Die Mod Dana: crafting tree/graph explorer (0.2.2) hat einen Fehler verursacht, der nicht behoben werden kann.
Bitte informiere den Autor der Mod über diesen Fehler.

Error while running event dana::on_configuration_changed
LuaGuiElement API call when LuaGuiElement was invalid.
stack traceback:
dana/lua/gui/GuiElement.lua:261: in function 'recursiveUnbind'
dana/lua/gui/GuiElement.lua:60: in function 'destroy'
dana/lua/apps/query/gui/AbstractStepWindow.lua:50: in function 'close'
dana/lua/apps/query/QueryApp.lua:83: in function 'close'
dana/lua/apps/AppController.lua:128: in function 'closeApp'
dana/lua/apps/AppController.lua:116: in function 'switchToDefaultApp'
dana/lua/Player.lua:156: in function 'reset'
dana/lua/Dana.lua:112: in function 'on_configuration_changed'
dana/lua/EventController.lua:29: in function <dana/lua/EventController.lua:28>
stack traceback:
[C]: in function 'index'
__dana
/lua/gui/GuiElement.lua:261: in function 'recursiveUnbind'
dana/lua/gui/GuiElement.lua:60: in function 'destroy'
dana/lua/apps/query/gui/AbstractStepWindow.lua:50: in function 'close'
dana/lua/apps/query/QueryApp.lua:83: in function 'close'
dana/lua/apps/AppController.lua:128: in function 'closeApp'
dana/lua/apps/AppController.lua:116: in function 'switchToDefaultApp'
dana/lua/Player.lua:156: in function 'reset'
dana/lua/Dana.lua:112: in function 'on_configuration_changed'
dana/lua/EventController.lua:29: in function <dana/lua/EventController.lua:28>

with an older version (i think 0.2.0 on my first install) it dit not crash on start (same mods)

Factorio 1.0.0 and a huge mod list including Krastorio 2, Space Exploration, Bio Industries and much more

2 years ago

@kuxynator Thanks for the report. Could you provide a savefile ?

Seems similar to Full crafting graph crash's follow-up report

Side note: this is a different crash than OP (his was on a fresh game, yours is on updating an existing save), Next time I would prefer if you could open a new thread (easier traking for me, allow people to get notifications for precise bugs). But let's handle this one here.

2 years ago
(updated 2 years ago)

@Credne
providing a savefile is difficult. I use a bundle set of mods where some are localy changed.
It seems the error occurs only when mod configuration changed.
I will try to make a savefile only with public mods.

2 years ago
(updated 2 years ago)

The crash definitely happens in on_configuration_changed (which is fired when mods are installed/uninstalled/reinstalled/reconfigured). But I have tested migrations from a "Dana only" save from all released versions of my mod and was unable to reproduce.

My best guess right now is that my on_configuration_changed conflicts with the one of some other mod, but I'm unable to reproduce with the mod list of the other thread (I wasn't able to find all the listed mods though).

A savefile would still greatly help. If it's not possible, your list of unmodified mods could help.

EDIT: Do you have Informatron installed ?

2 years ago
(updated 2 years ago)

does my mod-list.json help? https://pastebin.com/QYfrud9G
my local changes: https://pastebin.com/d5xC9XAu
one of the new mods wich I have added was "SpidertronEngineer" then it dit crash.

2 years ago

Could you try to load the save after disabling Informatron ?

2 years ago

Informatron is required by Space Exploration, so if I disable it, also Space Exploration would be disabled and i get some errors on loading savefile (not related to your mod).

2 years ago

Ok thanks for trying. I was able to reproduce the bug with just Dana+Informatron installed. What happens is that under some circumstances, Informatron just deletes the GUI of others mods. By doing so it puts my mod in a corrupted state...

I've reported the problem to Informatron's author. I hope he'll get a fix out pretty fast (it's probably not a lot of effort, and it's quite a serious bug since it can crash pretty much any mod that has a GUI). Otherwise I'll make a quick release tomorrow to add a hard incompatibility with this mod.

Anyway the Dana install in your save is corrupted beyond repair. You should be able to remove Dana safely if you were not in "Dana mode". If you had Dana opened... well, I just hope it wasn't the case, because it won't be straightforward to fix.

2 years ago

yes, there is no problem with removing and also adding is no problem anymore if no mods are changed.
Thanks for your help. As long as I don't change any mods while dana is active, dana should be able to start normally.

2 years ago

Follow-up

Informatron got a patch, and should not cause problems anymore.
After more investigation I've found that Space Exploration is also killing other mod's UIs. Bug report was sent to them.

2 years ago

Follow-up 2:

  • Informatron v0.1.12 & Dana v0.2.3 should now be compatible. Dana's updater will recover from the corrupted GUI (but it's a one time trick, mods can still corrupt Dana's GUI if they do shaddy things).
  • Negociations with Space Exploration's author aren't going well. I'll likely have to mark it as incompatible.

New response