Maintenance Madness

by Arcitos

Adds a complete new game mechanic: Maintenance! Create a sophisticated spare parts logistics and bring your mall to its absolute limits! UPS-friendly and MP-tested - Now with a fancy GUI!

Tweaks
3 years ago
0.17 - 0.18
16

b [Fixed] Server Crash

4 years ago

15327.472 Error MainLoop.cpp:1195: Exception at tick 8610165: The mod Maintenance Madness caused a non-recoverable error.
Please report this error to the mod author.

Error while running event MaintenanceMadness::on_player_setup_blueprint (ID 68)
Invalid source circuit connector ID: 1
stack traceback:
MaintenanceMadness/control.lua:1738: in function <MaintenanceMadness/control.lua:1693>
stack traceback:
[C]: in function 'set_blueprint_entities'
MaintenanceMadness/control.lua:1738: in function <MaintenanceMadness/control.lua:1693>
15327.472 Error ServerMultiplayerManager.cpp:92: MultiplayerManager failed: "The mod Maintenance Madness caused a non-recoverable error.
Please report this error to the mod author.

Error while running event MaintenanceMadness::on_player_setup_blueprint (ID 68)
Invalid source circuit connector ID: 1
stack traceback:
MaintenanceMadness/control.lua:1738: in function <MaintenanceMadness/control.lua:1693>
stack traceback:
[C]: in function 'set_blueprint_entities'
MaintenanceMadness/control.lua:1738: in function <MaintenanceMadness/control.lua:1693>"

4 years ago

This is reproducible as happening when you create a blueprint of a MM repair box that has wires hooked to it.

4 years ago

Thank you for your report. This issue was caused by a flaw in the blueprint processing routine that replaced the container type maintenance unit with its beacon type surrogate. The problem: This surrogate does not support circuit connections. The issue is fixed for now: Connected circuits will be simply removed whenever a maintenance unit with circuit connection is about to be blueprinted.

4 years ago

As far as I recall, we were trying to read the contents of a beacon in order to re-request more in a neighboring box, and use an inserters to move them over.

In other words, can that behavior be maintained?

4 years ago

The beacon type placement entity is only needed to show the radius visualisation of the unit.

As soon as it is placed down or revived, it will be replaced by the actual maintenance unit, which is a simple chest (type "container"). The radius you see if you hover over this chest is actually completely script rendered.
This chest can like every other chest be connected to a circuit networt to read its contents. Besides the fact that blueprints with maintenance units will not contain the wires connected with this unit, everything else is working fine :)

I hope the devs stand to their promise to include a generic radius visualisation for entities. Then this hack - using a fake beacon unit to show a radius for an item held in cursor - can eventually be removed.

New response