Space Engineers

Space Engineers

59 ratings
H2O2 Control Program v1.0
3
   
Award
Favorite
Favorited
Unfavorite
File Size
Posted
Updated
411.369 KB
1 Sep, 2020 @ 5:23pm
20 Jan, 2021 @ 7:12am
12 Change Notes ( view )

Subscribe to download
H2O2 Control Program v1.0

Description
This script provides you an alternative UI to interact with all oxygen, hydrogen or ice related blocks instead using the K-menu.

You can use screens for all these blocks to check their current status.

An O2 and H2 management is included as well.


With the Control Program scripts I want to create a way to build a real control room or bridge with consoles to control the whole ship or station. By using the included automatic resource management of the scripts you will have more time for engineering your next build.

The main features of the H2O2 Control Program:
  • status screens for all hydrogen and oxygen related blocks including a cargo container screen to display the amount of ice
  • charts are available to display the change over time
  • damaged blocks are marked at those screens with a warning
  • a overall status screen to see all amounts of those resources stored in your grid
  • time calculation to predict how long your resources will last
  • moving ice to specific marked ice cargo containers and move every other item to the other cargo containers
  • a control screen used as a user interface to browse through your blocks and change working status or primary and secondary attributes
  • by using the automatic control the script controls your generators and tanks to keep the oxygen and hydrogen between given limits - easily change those limits with the user interface at the control screen
  • this control screen can be used to control the Room Control Program, too
  • an oxygen farm alignment can be used to turn the farms towards the sun using advanced rotors

First steps:

When the code is loaded to a programmable block you only have to edit one setting value.
This is the maximum number of separated conveyor systems in your grid. Two systems are separated, if there is no connection between those systems.

With default settings the script analyses the grid to find connected blocks.
If you are using merge blocks to connect seperate ships or stations you need to enter a specific name. Switch "scanConstruct" to false and enter a name/phrase between the quotes at "gridName". Each block of your grid has to have this name/phrase in its custom name.

If you want to use the farm alignment you have to tell the script which farm is connected to which rotor. Here you are using a name/phrase, too. If you have a mast with rotors and farms then all the rotors and farms needs this name/phrase as part of their custom name.
Enter the name in between the quotation marks at the alignment setting sector. You can use the script with multiple farm masts. Simply separate the names with commas.

The custom data field of the blocks is used by the script for all the block specific setup information. All information are given in the custom data field.

To get a screen used by the script simply open the custom data field of the screen and enter “@H2O2Control” to the field. After leaving the custom data field it takes a few seconds and now you have a new custom data field with all screens provided by the block, the possible settings and all available screens of the script. Follow the instructions given in the custom data field.

Using the Room Control Program as an Add-On:

You can use one control seat to control this H2O2 script and my Room Control Program Script.

You have to build two programmable blocks, one for each script. Download and setup both scripts.
Now you can setup the control seat or a cockpit with the “@H2O2Control” token I explained before.
If you scroll down the code of this script to the instructions you can see the commands you need to enter to the run argument of the H2O2 Control programmable block.
tab=3 > Room ~ BlockName
The “ ~ BlockName” is the custom name of the cockpit or control seat you are using.

Uninstalling the script:

I've added the programmable block command "uninstall" to completly remove all changes the script made to your blocks. If you want to test the script and you don't like it, please use this command before you remove the script.

Discord, Feedback, donations & credits:

And if you don't like the script or have problems with it please let me know down in the commends.
Or join the community at my Discord:
https://discord.gg/2a52ftDyXX

But if you like my scripts and would like to be kept up to date on the current progress and upcoming projects, you can get regular information from now on here:
https://www.buymeacoffee.com/AlfRomeo80

To bypass the programmable block's character limitation, I used Malware’s Development Script MDK-SE.
https://github.com/malware-dev/MDK-SE

Thank you for your feedback and your support!
Popular Discussions View All (1)
0
9 Mar, 2021 @ 10:17am
Air Vents
Skyhawk
61 Comments
Degrath 20 May, 2023 @ 11:02pm 
''Script execution terminated, script is too complex. Please edit and rebuild script'' Used to work just fine not any longer> Anyone got a fix for this?
コイ 23 Jun, 2022 @ 1:36pm 
do we have a video tutorial of this ?
royalrollin 28 May, 2022 @ 3:07pm 
The old version 0.6 (Pre-Aplha) is working. Maybe that info is help´s...
Wallie 11 May, 2022 @ 8:55am 
Getting the same error message also
Hawkwar 21 Apr, 2022 @ 2:18am 
Ellesar I get the same message ever since the last update. Can only hope he updates at some point.
Ellesar 👑 18 Apr, 2022 @ 8:02am 
18 days since my comment and no feedback... i guess this script is dead.
Ellesar 👑 31 Mar, 2022 @ 1:30pm 
After loading the script in Programmable Block i got the following message:
''Script execution terminated, script is too complex. Please edit and rebuild script''
well i guess its broken then
Tunla 2 Jan, 2022 @ 2:30pm 
This is a really nice script, but It took a little while to figure out how to use. Regardless, very good job, this has really helped me know whats going on with O2 systems in my world.

One feature request I have, that is, if you are still supporting this script, would be a break down of independent conveyor areas/zone/etc . I like that you give an option to control isolated systems independently, but it would also be nice to see how much O2 is in each "zone" or conveyor system.

In my example, I have independent life support conveyor areas for redundancy that are separate from my main base conveyor and vent system. It would be nice to see how my life support areas are doing on Ice, O2, and H2 (Bottle refills) versus seeing the overall total for all system.

Thanks for the excellent script!
Chris C 26 Oct, 2021 @ 3:56pm 
Thanks for your reply but i still can't get it to work, i have tried following along with your video but the information is different compared to the script.
i have tried putting the seat name into different areas but still unable. I think i will just use it as information only.
AlfRomeo80  [author] 25 Oct, 2021 @ 5:07pm 
Hi! To use the screens of your control seat enter "@H2O2Control" to the Custom Data field of the control seat.
If you want to use commands sitting in the control seat you have to use the command given in the readme section of the script followed by "~ H2O2ControlSeat", in your case.