Distribution Centers

by Sladki

Distribution Centers are structures capable to transfer items to adjacent inventories.

Content
3 years ago
0.17 - 1.1
569
Logistics

g Unrecoverable exception

4 years ago

Unsure what happened here. Please see the below unrecoverable exception that I experienced. Occurred as I was deconstructing via bots. My apologies for the lack of word wrap below, I didn't have my command prompt well formatted.

Thanks

476.409 Error MainLoop.cpp:1202: Exception at tick 2208437: The mod Distributio
n Centers (0.2.0) caused a non-recoverable error.
Please report this error to the mod author.

Error while running event distribution-centers::on_tick (ID 0)
LuaEntity API call when LuaEntity was invalid.
stack traceback:
distribution-centers/lua/InventoriesInRange.lua:4: in function <di
stribution-centers
/lua/InventoriesInRange.lua:3>
(...tail calls...)
distribution-centers/lua/BaysInspection.lua:14: in function 'inspect
_bays'
distribution-centers/lua/DistributionCenter.lua:34: in function 'tic
k'
distribution-centers/lua/DCRegistry.lua:18: in function 'tick'
distribution-centers/lua/events/on_tick.lua:4: in function <distri
bution-centers
/lua/events/on_tick.lua:3>
stack traceback:
[C]: in function 'index'
__distribution-centers
/lua/InventoriesInRange.lua:4: in function <di
stribution-centers
/lua/InventoriesInRange.lua:3>
(...tail calls...)
distribution-centers/lua/BaysInspection.lua:14: in function 'inspect
_bays'
distribution-centers/lua/DistributionCenter.lua:34: in function 'tic
k'
distribution-centers/lua/DCRegistry.lua:18: in function 'tick'
distribution-centers/lua/events/on_tick.lua:4: in function <distri
bution-centers
/lua/events/on_tick.lua:3>
476.410 Error ServerMultiplayerManager.cpp:92: MultiplayerManager failed: "The
mod Distribution Centers (0.2.0) caused a non-recoverable error.
Please report this error to the mod author.

Error while running event distribution-centers::on_tick (ID 0)
LuaEntity API call when LuaEntity was invalid.
stack traceback:
distribution-centers/lua/InventoriesInRange.lua:4: in function <di
stribution-centers
/lua/InventoriesInRange.lua:3>
(...tail calls...)
distribution-centers/lua/BaysInspection.lua:14: in function 'inspect
_bays'
distribution-centers/lua/DistributionCenter.lua:34: in function 'tic
k'
distribution-centers/lua/DCRegistry.lua:18: in function 'tick'
distribution-centers/lua/events/on_tick.lua:4: in function <distri
bution-centers
/lua/events/on_tick.lua:3>
stack traceback:
[C]: in function 'index'
__distribution-centers
/lua/InventoriesInRange.lua:4: in function <di
stribution-centers
/lua/InventoriesInRange.lua:3>
(...tail calls...)
distribution-centers/lua/BaysInspection.lua:14: in function 'inspect
_bays'
distribution-centers/lua/DistributionCenter.lua:34: in function 'tic
k'
distribution-centers/lua/DCRegistry.lua:18: in function 'tick'
distribution-centers/lua/events/on_tick.lua:4: in function <distri
bution-centers
/lua/events/on_tick.lua:3>"
476.410 Info ServerMultiplayerManager.cpp:776: updateTick(2208437) changing sta
te from(InGame) to(Failed)
476.410 Quitting: multiplayer error.

4 years ago
(updated 4 years ago)

Yep, it seems that you've deconstructed DC and for some reason my code thinks that the DC is still present and tries to find adjacent inventories.

Did you try to load the game and deconstruct again with some delay? Do the error appears after deconstruction specific DC or any? Can you provide the save (send in PM for example: https://forums.factorio.com/memberlist.php?mode=viewprofile&u=73318 )?

4 years ago
(updated 4 years ago)

So I was able to reproduce it doing the same action last night also this was before any circuitry was configured if that helps. I am a bit tied up for a few hours but I will be able to send more diagnostics this evening. I'm on the east coast US so it's morning here now. For when I send things later... save file,game log, mod list file? Anything else?

Edit... grr. Hitting conflicts when upgrading to more recent experimental versions due to GUI changes (not related to your mod). What build are you working in for reference? I'm on 0.18.12 and broke about 10 mods going past it.

4 years ago

Just a save file.
I've tested on 0.18.2 and the latest and it works fine.

4 years ago
(updated 4 years ago)

Worked out my other conflicts and shot you my save file via PM.

Editing for context, in the save -- the area North where I'm starting a bus is where I was working. I was designing the distribution center layout and pulled those up.

4 years ago

It seems that Construction Drones (with lasers) do not fire "on_robot_pre_mined" event. As a workaround you can deconstruct DCs manually or with vanilla flying robots.
I'll notify the author of the mod about the issue.

Thanks for the report!

4 years ago

Ah!! I should've thought of that as being the source. I completely forgot to mention because this my first time trying them also. Thank you so much for investigating with me! If you'd like I'd be happy to continue as a pilot user of sorts for you. I really like the concept behind this mod.

4 years ago
(updated 4 years ago)

BTW, you can use bigger adjacent inventories to increase "surface area" of DCs:

4 years ago

Yeah I've been thinking about setups a bit. larger chests increase the output area but your input area is static in the current context. 3x4 sides so I guess technically maxing out a single one of these completely you could have loader inputs on all sides and then large chests at the corners. Or am I mistaken in my understanding?

4 years ago
(updated 4 years ago)

You can emit [S]torage signal to an adjacent inventory too.

4 years ago

Ah, I wasn't thinking of that. Very cool.. I have a lot of ideas but I think I'll just need to dive in and play around. :)

4 years ago
(updated 4 years ago)

I'm envisioning something like this where I have a main bus flowing and repeating channels like this that I can put factory hubs at the ends in off shoots. (still designing and then will need to do all the circuitry.
Imgur

lol I can't figure out what the tag is to include the image in the message. What is it?? lol

4 years ago
(updated 4 years ago)

https://daringfireball.net/projects/markdown/syntax
![](https://i.imgur.com/lwHvbLK.pngbracket

I advise to start small because circuitry can be confusing.
When I was creating the mod, I had in mind that DCs are solution to problem of routing small amounts of items of many types: when you have to provide items with fat line, because one belt can have only two types without issues. The perfect example of the problem is the mall. Think DCs is not the part of the bus, but another layer of distribution - it is the way to put many item types on one belt.

4 years ago

Thanks for the advice. I was actually planning on testing this in tandem with your stuff:
https://mods.factorio.com/mod/TriCircuits

tl;dr it allows multiple channels for circuitry networks over the same wires as far as I understand. Another very powerful new concept.

New response