Space Engineers

Space Engineers

644 ratings
Isy's Docked Ships Info
2
2
   
Award
Favorite
Favorited
Unfavorite
File Size
Posted
Updated
482.559 KB
18 Apr, 2017 @ 2:24pm
10 Nov, 2023 @ 12:00am
16 Change Notes ( view )

Subscribe to download
Isy's Docked Ships Info

In 1 collection by Isy
Isy's Main Scripts
5 items
Description
This script searches for currently docked ships and prints their names on a LCD panel. Great for Hangars.

Current Version:
Version: 1.6.1
Date: 2023-11-10

Main features:
  • reads the ship names of currently docked ships
  • reads the connector a ship is connected to
  • displays statistics of a ship like battery, hydrogen, oxygen and cargo levels
  • highly customizeable LCD content via custom data settings
  • scrolling LCD text, if the list gets too long

Basic Setup:
  • create a LCD panel and add 'IDS-main' to its name
  • set up a programmable block with the script, check code, remember & exit and you're done!
  • NO TIMER required!

Master options:
All settings, that can be changed via the LCD's custom data, can also be set as master options inside the script config. Every new LCD and every LCD that has master options enabled will get these settings.

LCD Options:
You can enable and disable many settings of the LCDs by setting the values in their custom data to true or false. These options are automatically generated on every newly added LCD. Right now, there are three categories of settings:

Master options: disable this to enable custom settings per LCD
useMasterOptions=true

Basic settings: hide or show specific items
showNumbers=true showDockingTime=true showConnectorName=true showShipHealth=true showBatteryCharge=true showHydrogenLevel=true showOxygenLevel=true showCargoLevel=true

Visual settings: sorting and spacing
showHeading=true compactShipStats=false scrollText=true showFreeConnectors=true sortByConnector=true emptyLineBetweenEntries=true

Monitored connectors: this category is kind of special as you can monitor specific connectors or connector groups for more room based output (e.g.: hangar). This feature is also useful if you want to show connectors, that are not on your main grid but on a connected subgrid.
Put a single connector name or a groupname here. Leave blank to monitor all! monitoredConnectors= showGroupHeading=true

LCD Panel Setup
The following topic explains, how to use LCD panels (regular and block LCDs) of my script. Whenever you add one of the following keywords to a LCD name, the keyword gets transformed to the universal [IsyLCD] keyword. In the custom data, you can then set different options about the LCD as well as the screen, the information should be shown (on blocks like cockpits, programmable blocks and so on). The custom data will look like this:

@# KEYWORD

@# stands for the screen, the information is shown, where # is the screen identifier number from 0 to the max number of screens - 1. A programmable block for example has two screens: The main screen and the keyboard. Both can be used to show the script informations (screen 0 and screen 1). To change the screen, you want to show your informations, just edit the screen identifier number in the custom data.

It is also possible to display informations of different scripts in one block by using this syntax (MMaster's Automatic LCDs 2 uses the same syntax and all of my other scripts).

LCD Keywords
Main LCD
This is the main screen and heart of the script. All your docked ships will be shown here. Just add the following keyword to a LCD name:
IDS-main

You can enable or disable specific informations on the LCD by editing its custom data.

Warning LCD
You can display all current warnings and problems on a dedicated LCD screen. Just add the following keyword to a LCD name:
IDS-warnings

Performance LCD
You can display the script performance (PB terminal output) on a dedicated LCD screen. Just add the following keyword to a LCD name:
IDS-performance

Multi-panel screens
You can display your docked ships over multiple screens by giving all screens the same group tag. This tag can be any word you want and has nothing to do with terminal groups. To start off, tag two ore more screens with IDS-main and wait until the script has converted the tag into [IsyLCD].
Then edit first line of the custom data of each LCD with the following syntax:
@0 IDS-main:GROUP#
  • GROUP is a name of your choice
  • # is the number of the LCD in the row

So, LCD 1 should have
@0 IDS-main:myCoolGroupname1

and LCD 2
@0 IDS-main:myCoolGroupname2

as the first line of the custom data.

Tutorial Videos:
How to enable ingame scripts: https://youtu.be/NkhZ7BbYgvc
Script video guide: https://youtu.be/xXRCXk-uxb4

Note:
  • Be sure to always check your ownership! All used blocks should be owned by you (Owner: Me)!

Known Bugs / Planned Features:
  • nothing for now

Credits:
I have to give a big thanks to Mygira for the basic idea of the script and the testing he has done for me! Thanks, buddy!

Join my discord:

You need additional help, want to make suggestions or just want be up to date about my scripts? Join my discord server:
https://discord.gg/gY9aUUy

Wanna buy me a beer?

If you like my work, you can buy me a beer via PayPal:
http://paypal.me/derisy/1

Thanks to all my donators so far!
203 Comments
Lampglow 21 Feb @ 2:52pm 
This is fantastic! Very useful and easy to use.
CptLooney 21 Dec, 2024 @ 3:25am 
Trying to use the custom data LCD option for a LCD to read a specific connector. LCD isn't updating and the script seems to have information missing - mainly the Master Options rule is not present in the current downloadable script.

Any direction of displaying a LCD screen to one connector? Obviously over multiple times.
Leconite 8 Dec, 2024 @ 2:29am 
As the whole idea is accurate and useful information.
I've actually chucked this script in favor of Telemetry Plus
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=2856836020

Same info and more; regardless of docking state.
Zhane 7 Dec, 2024 @ 8:24pm 
Kepp getting this error
Caught exception during execution of script:Object reference not set to an instance of an object.
at Program.IJ()
at Program.Main()
at Sandbox.Game.Entities.Blocks.MyProgrammableBlock.<>c__DisplayClass43_0.<ExecuteCode>b__0(IMyGridProgram program)
at Sandbox.Game.Entities.Blocks.MyProgrammableBlock.RunSandboxedProgramActionCore(Action`1 action, String& response)
Leconite 29 Aug, 2024 @ 4:33am 
Having an issue with tanks volumes displaying as 8x larger than reality.

For a docked LG ship with 1x O2 tank (volume 100KL) and 1x Small H2 tank (volume 1ML), the display reads.

[IIIIIIIIIIIIIIIIIIIIIIIIIIIII] H2 Tanks 8 ML / 8 ML 100%
[IIIIIIIIIIIIIIIIIIIIIIIIIIIII] O2 Tanks 800 KL / 800 KL 100%
Leconite 20 Aug, 2024 @ 3:08pm 
Is there a way to not show ships docked to docked ships?

Example
Main ship running this script.

Large grid miner docked to main ship.
Small grid drones docked to miner.

On the displays in the main ship, I don't need to see the drones docked to the miner.
Zulu-1 17 Jun, 2024 @ 5:49pm 
When I add a group name to the Custom Data, docked ships don't show up; only the unused connectors? I've got a group with four connectors. It only shows the connectors that aren't docked. When I dock to a connector, it just disappears from the list. I tested by moving a ship between the connectors.
phreekbird 23 May, 2024 @ 6:54pm 
display shows 4 of the same ship, dunno why. each dock/connector is being shown 4 times.
Isy  [author] 2 Jul, 2023 @ 12:01am 
:P
MagnusGrey 29 Jun, 2023 @ 2:46pm 
Never mind, I am just dumb and forgot to engage the parking.