Space Engineers

Space Engineers

435 ratings
Electric Network Info - Touch App
6
4
3
4
3
3
2
   
Award
Favorite
Favorited
Unfavorite
Type: Mod
Mod category: Script, Production, Other
File Size
Posted
Updated
504.401 KB
12 Jan, 2023 @ 11:14pm
27 Feb @ 10:56am
14 Change Notes ( view )

Subscribe to download
Electric Network Info - Touch App

In 1 collection by Adriano
Adriano's Space Engineers Mods
6 items
Description


Electric Network Info
This mod adds an App to LCD screens for monitoring Electric production and consumption, also battery storage and detailed info per block.
It saves a history of last 30 minutes of data and presents the info as a chart, with configurable interval.

How to Install
  1. Open any LCD Block Control Panel;
  2. Change Content property to Script;
  3. Select "Electric Network Info" from the list;

Description
  • Consumption - Current and consumption if all blocks require maximum input;
  • Production - Current and production if all producers are on maximum output;
  • Battery Output - Current power production of batteries and maximum output;
  • Chart Time Span - Set the time span for the graph. "30s" means over the last 30 seconds;
  • Battery Checkbox - If checked, battery output will count as production in the graph;
  • Battery Storage - Time until the battery is depleted. If red border, the system is overloaded. Needs more power production;
  • Detailed Consumption and Production - A list of consumers and producers from highest power to lowest;
  • Window Bar Buttons - Help button open this help panel. Gears button open settings. Changes how info is displayed;

Screens and Touch
It works and adapts to pretty much any LCD in the vanilla game and DLCs including cockpits, but since it has small bottons and labels it may be hard to read in some small screens. Use Screen Calibration app to make it work on any modded LCD.
Touch screen feature is provided by TouchScreenAPI mod.
Which makes both cursor and UI elements available for any modder.
Send me a direct message on Github[github.com], Steam or Discord (@adrianolima).

Multiplayer and Servers
It works in singleplayer, multiplayer and also servers. Since it is a TSS (LCD script) it runs almost entirely at client side.
The clients are responsible for drawing and monitoring the grids, and also sends to the server only for persisting data across sessions.
I made it only visible to players that have access to the block, so share with faction will allow other player to interact with it.

Changing the Scale
Use "Ctrl + Plus" or "Ctrl + Minus" to change the scale of the app. "Ctrl + 0" to reset.
This can be very useful for small screens.

Running at 6fps
This is a limitation on the game side for LCD screens texture frames update.
There is a possible workaround to make it run at 30fps, but for performance reasons I decided to keep this first version without it.
It is possible that I change it on upcoming versions.

Have and idea of a Touch App?
I just created an open Discussion on TouchScreenAPI for people to share and discuss ideas.
100 Comments
Adriano  [author] 27 Feb @ 11:01am 
Just sent an update to prevent the error bellow. It was caused by a modded block missing DefinitionDisplayNameText in their definition.

Now mods with that problem will be listed as "Unknown" instead of throwing an error.

Thanks for the detailed report :steamthumbsup:
Adriano  [author] 27 Feb @ 8:18am 
@NotSankhya Oh that is bad, thanks for reporting with logs <3
I will take a look and upload a fix ASAP
NotSankhya 27 Feb @ 7:31am 
I'm getting this error on a particular grid.
Everyone who is nearby gets the same error.
Where do I look to find out what is causing this?
It's when selecting the script, it stops when selecting another and not when switching block off.
thanks in advance!
Parameter name: key
at System.ThrowHelper.ThrowArgumentNullException(ExceptionArgument argument)
at System.Collections.Generic.Dictionary`2.FindEntry(TKey key)
at System.Collections.Generic.Dictionary`2.TryGetValue(TKey key, TValue& value)
at Lima.ElectricNetworkManager.UpdatePowerDict(Dictionary`2 dict, MyCubeBlock block, Single power, String customKey)
at Lima.ElectricNetworkManager.Update()
at Lima.GameSession.UpdateAfterSimulation()
2024-02-27 16:28:20.456 - Thread: 1 -> Value cannot be null.
Adriano  [author] 18 Feb @ 2:20pm 
@Rastlore30 Hey, thanks <3 About disabling subgrids, that is not possible currently but it may be something I can add in the future. Good idea! I added to my notes and will try to include it on next round of updates :steamthumbsup:
Rastlore30 18 Feb @ 2:11pm 
Hiya Adriano! Just wanted to drop a line and say thank you for fixing the Button Pad API to work with blueprints and for your hard work in keeping us all happy despite our flood of requests and operator level bug reports :steamhappy:

That said I do have a question or perhaps a feature request. Is there a way to disable the Electric Network from reading subgrids? And if there is not could that be something that could be worked in at some point in the future?
Adriano  [author] 14 Feb @ 5:34am 
@Chrysaloid thanks for the suggestion. I’ll do that and will also think about that every new mod I publish.
Chrysaloid 13 Feb @ 11:11pm 
A minor suggestion: add "Count blocks by type" to description of the mod so Google search and Steam search will show this mod when someone searches for that. I literally couldn't find a mod that does just that and yours does + it displays some cool graphs. Thanks for the mod
PAuCA MAKCuMOBHA 27 Jan @ 10:45pm 
@Adriano thanks for fix, and thanks again for Your mod!
Adriano  [author] 21 Jan @ 12:19pm 
@PAuCA MAKCuMOBHA I just sent an update that includes the Gyro in the list. It needed to be treated different because it doens'st have a sink element like the other blocks.

It may show it properly now, thanks for the report.
PAuCA MAKCuMOBHA 31 Dec, 2023 @ 2:18pm 
@Adriano, thanks for quick answer. It easy to reproduce that situation - just start a "Learning to survive" scenario and use the default ship, docked to station.