Space Engineers

Space Engineers

73 ratings
Logic Pain - Smart(er) Event Controller
2
2
2
   
Award
Favorite
Favorited
Unfavorite
Type: Mod
File Size
Posted
871.722 KB
15 Apr, 2023 @ 5:59am
1 Change Note ( view )

Subscribe to download
Logic Pain - Smart(er) Event Controller

Description
The issue this mod addresses was fixed in Space Engineer 1.203 (Warfare Evolution), and you should probably remove it from your worlds

This mod makes the Event Controller smarter, and behave more logically - at least to my mind.

The event conditions in the Event Controller are changed to properly reflect a logical "OR", instead of firing rather inconsistently when tracking multiple blocks.

Why is this necessary?
By default, the Event Controller operates in a mode where tracking multiple blocks gives very inconsistent, and largely useless results.

Consider a simple example, with two doors, and the Event Controller monitoring for "Door Opened".
- Both doors start closed, Event Controller remains "Off"
- Open one door, Event Controller signals "On"
- Open the second door, Event Controller remains "On"
- Close one door, Event Controller signals "Off"

This last state is rather undesirable, since the Event Controller is now signaling "Off" despite a door still being open.
The basic problem here is that the Event Controller does not actually track the states of the blocks, and rather will always mirror the state of the last block that changed. One door closed, the Event Controller signals "Doors Closed".

In any logical system, this sort of behavior does not offer any benefit. The built-in "AND" mode actually works fine however, only the default did not. One might consider this issue a bug, but we will have to see if Keen does so as well.

With this mod, and therefor a proper OR, and the built-in AND mode, you can cover all potentially interesting conditions, which is not possible without them.
Is any door open? Is any door closed?
Are all doors open? Are all doors closed?

"Door Opened" is of course only used as an example condition, and all conditions that accept multiple blocks are affected.

Affected Events
All events that are adjusted by this mod will have a "(Smart)" added behind their name.

For technical reasons, it was not possible to adjust "Angle Changed" and "Gas Filled %", and of course those that do not interact with multiple blocks are not touched.

Due to inconsistent behavior of the vanilla event, the "Connector Ready to Lock" is currently also not included.

Keen Bug Report
In the hope of getting a similar fix into the vanilla game, as I do not see how the current behavior makes any sense, I have reported the issue here:

https://support.keenswh.com/spaceengineers/pc/topic/28005-event-controller-does-not-properly-track-block-states-in-normal-or-mode

Help by upvoting!
39 Comments
nevcairiel  [author] 7 Sep, 2023 @ 8:51am 
The issue this mod fixes was fixed in the Warfar Evolution update (1.203), at least in my testing.
Therefor, for the time being, this mod should be considered superfluous and discontinued.
Kosmonavt 30 Aug, 2023 @ 4:24pm 
Add - Run ones
Kosmonavt 30 Aug, 2023 @ 4:23pm 
If angle rotor >= angle mast have
Altitude - traster
Kengored 24 May, 2023 @ 1:06am 
hey, they responded to the bug report 2 days ago, we might finally get this in vanilla!
ChozoSR388 9 May, 2023 @ 5:06am 
@Namethon How do you reset it with a timer? I've been struggling with that and still hadn't figured out a good solution.
HeilTec 4 May, 2023 @ 3:52pm 
Thanks for taking the time to make this temporary fix.
I sincerely hope bug will be fixed to match this mod.
NeonDrip 1 May, 2023 @ 3:40am 
not played since the update but the fact the made a logic block with less gate logic then redstone in minecraft is fucking stupid, come on keen AND OR is the bare minimum and you couldnt even do that right
Nemirel 30 Apr, 2023 @ 5:43pm 
Best way I was able to reliably trigger events when all conditions were false was to have an EC for each targeted block, with a light set to "turn off"/"turn on", then one final EC looking at all bit-lights ON/OFF state, ANDed. This is kinda dumb for something you'd think would be achievable in a single EC.
Rusted Droid 26 Apr, 2023 @ 8:40am 
Classic Keen.
They did not test their stuff again.
Merge block is also not usable as event of merge is not fired.
Event block not react to any state of merge block.
Nemethon 24 Apr, 2023 @ 7:49am 
"Connector Ready to Lock" is a pain in the ass at the moment. My solution to get it work properly: timer block resets the eventblock every 3 seconds.