Improved Combinator


The mod provides a custom entity which allows the user to create any number of decider & arithmetic combinators in a single entity. Improved Combinator also provides timer utilities that allow for timers to be setup which can call specific combinators at a specified time.

Content
3 years ago
0.18 - 1.1
14.2K
Circuit network

b Crash upon selecting output: "Each"

4 years ago
(updated 4 years ago)

Hey there, first off, great mod, simplifies a lot of cable management, but we've run into an issue:
We wanted to take "EACH" incoming signal and multiply it by 1 (just to test the "each" signal with the improved combinator)
and output "EACH", upon confirming the output signal, the game crashed due to a "non-recoverable error" (see below). I've looked in the source code, but I havent worked too much with Factorios entity and gui system to find the exact problem.

Here's the error from current.log:
3942.498 Error MainLoop.cpp:1207: Exception at tick 56048969: The mod Improved Combinator (1.0.12) caused a non-recoverable error.
Please report this error to the mod author.

Error while running event ImprovedCombinator::on_gui_closed (ID 85)
Gui element must be owned by this player.
stack traceback:
  __ImprovedCombinator__/scripts/overlay_gui.lua:191: in function 'destory_top_nodes_and_unselect'
  __ImprovedCombinator__/scripts/gui.lua:35: in function <__ImprovedCombinator__/scripts/gui.lua:28>
stack traceback:
  [C]: in function '__newindex'
  __ImprovedCombinator__/scripts/overlay_gui.lua:191: in function 'destory_top_nodes_and_unselect'
  __ImprovedCombinator__/scripts/gui.lua:35: in function <__ImprovedCombinator__/scripts/gui.lua:28>
3942.498 Error ServerMultiplayerManager.cpp:90: MultiplayerManager failed: "The mod Improved Combinator (1.0.12) caused a non-recoverable error.
Please report this error to the mod author.

Error while running event ImprovedCombinator::on_gui_closed (ID 85)
Gui element must be owned by this player.
stack traceback:
  __ImprovedCombinator__/scripts/overlay_gui.lua:191: in function 'destory_top_nodes_and_unselect'
  __ImprovedCombinator__/scripts/gui.lua:35: in function <__ImprovedCombinator__/scripts/gui.lua:28>
stack traceback:
  [C]: in function '__newindex'
  __ImprovedCombinator__/scripts/overlay_gui.lua:191: in function 'destory_top_nodes_and_unselect'
  __ImprovedCombinator__/scripts/gui.lua:35: in function <__ImprovedCombinator__/scripts/gui.lua:28>"
4 years ago

Hi Cerboin,
Thank you your post. I can't duplicate the issue on single player or on multiplayer. It must only impact games with multiple players.

I don't know how Factorio handles gui events in multiplayer, but if the on_gui_close event is sent to all players then I can see how that might cause this particular issue.

I'll add couple checks around that event to try and fix this issue.

4 years ago

Yes, sorry I forgot to mention that we are in a multiplayer session and I am the host. Sounds pretty good, we are really looking forward to using the mod, currently we are a bit cautious since loading takes quite a while in our MP session.

Generally I think this mod has a lot of potential and I especially like that it uses the UX from the train system, so good job on that :)

New response