Empyrion – Galactic Survival Scripts for automation with ASTIC’s Script mod guide

Empyrion – Galactic Survival Scripts for automation with ASTIC’s Script mod guide 1 - steamsplay.com
Empyrion – Galactic Survival Scripts for automation with ASTIC’s Script mod guide 1 - steamsplay.com

This is the TLDR guide on how to install and use ASTIC’s script mod for automation right away, without knowing how to code. Just copy paste.
 
 

What’s in this guide?

ASTIC’s Scripts Mod: TLDR Beginner’s Guide

 
 
For a visual guide after you have read this and installed the mod, please watch this video –
 
 

YouTube player

 
 
1. What is ASTIC’s Scripts Mod?
 
2. How to get and install ASTIC’s Scripts Mod.
 
3. How to use, ASTIC’s Scripts Mod, right away without coding.
 
4. Where to find out how to code your own scripts for ASTIC’s Scripts Mod.
 
5. Some scripts you can copy-paste and use right now.
 
 
 

1: What is ASTIC’s Scripts Mod?

ASTIC’s Scripts Mod is a Mod for Empyrion: Galactic Survival created by ASTIC. The Mod adds script functions and complex operations to Empyrion: Galactic Survival using the Placeable LCD item in the game to execute the functions and display information and results of functions on LCDs you place in and on your Bases, SVs, HVs, and CVs.
 
 
 

2: How to get and install ASTIC’s Scripts Mod.

ASTIC’s Scripts Mod can be found on GitHub at: ASTIC scripts Github Download – [github.com] 
 
 
To Install the ASTIC’s Scripts Mod into your Empyrion: Galactic Survival game, Download EmpyrionScripting.zip AND the EgsEsExtension.dll.zip from the above link and unzip the EmpyrionScripting folder into C:\ \ Steam\steamapps\common\Empyrion – Galactic Survival\Content\Mods, or wherever your Empyrion – Galactic Survival/content/Mods folder is located on your machine. To find the location, go to your Steam Library, Right click Empyrion – Galactic Survival, click “Manage,” and click “browse local files.” From there open the Content folder and inside you will find the Mods folder.
 
 
To run the mod’s scripts in Single Player or Co-op, you must have EAC off. Go to the Options in the game, go to Misc tab at the top, choose the EAC option to OFF and restart the game.
 
 
 

3: How to use, ASTIC’s Scripts Mod, right away without coding.

A: Placing and using LCDs to use a script.
 
To use the scripts and functions provided by this mod in the game, you will need to place at least one LCD on a Base, HV, SV, or CV you own – meaning the core must be either private or your faction.
 
After the LCD is place, you need to add it to a group in the Devices tab of your base or ship. To access this, point your crosshair at the base or ship, press P to open the Control Panel, Click on the Devices Tab, Click the + “create group” button and name it something like LCD. Then find the LCD in the “ungrouped” list. Click on the LCD and use the “Add to group” button and find the LCD group in the dropdown list. Click the group you want in the dropdown list and press the OK button.
 
 
When the LCD is in a group you can click on it in the group and rename it. For using a script, you must name the LCD Script:Nameofscript – Change Nameofscript to anything you want or find easy to use and remember.
 
 
When the LCD is renamed, you can use the access button in the device menu or just press the use key (default “F”) to open the LCD screen. Then either type in the script code you want to use or copy and paste the script code from somewhere. I’ve included some of the most useful scripts at the bottom of this guide.
 
 
B: Displaying information from scripts on LCDs.
 
 
To display the information of a script you have created on a script LCD, simply place another LCD somewhere, add it to a group and rename it to the same name of the script. If the script LCD is “Script:Nameofscript” then the display LCD should be “Nameofscript”. Keep in mind that some scripts require a large LCD to print all the script information on to. You can use an LCD projector for larger script displays.
 
 
 

4: Where to find out how to code your own scripts for ASTIC’s Scripts Mod.

More information on the scripts and code of the scripts can be found at ASTIC’s GitHub Wiki for the mod. The link is https://github.com/GitHub-TC/EmpyrionScripting – [github.com] . The English-Version is a little more than halfway down the page.
 
 
If you have any coding experience, you may find the scripting language easy to understand and use. If you have no experience and can’t be bothered to learn the scripting language, you can always just copy and paste scripts that others have created.
 
 
Some scripts that ASTIC has created can be seen, and copied from his Empyrion – Galactic Survival, Steam Workshop mod “Empyrion Scripting-Demo” at https://steamcommunity.com/sharedfiles/filedetails/?id=1751409371 – [steamcommunity.com] .
 
Subscribe to the workshop item, start the game and create a creative world, then spawn in the ship and view the scripts LCDs. Most of the scripts have the script LCD and the display LCD next to each other and are easy to understand. SOME of the displays are not so easy to figure out. Basically, you need one LCD to run the script and one LCD for the script to print information to, as described in section 3 above.
 
 
Though, some of the displays don’t have script LCDs with intuitive connections. As I figure these out, I will try to add them below.
 
 
If you have written a script you feel is unique or want to share with others, Please E-mail it to [email protected] – [gmail.com]  formatted as below in section 5 of this guide, with the Subject “ASTIC’s Script.” I will add it to this guide after I have tested it.
 
 
 

5.1: Deconstruction scripts you can use right now (copy paste)

((Deconstruction Scripts))
 
 
(((*****)))
 
Deconstruct Script, Written by ASTIC:
 
This script will deconstruct any BA, SV, HV, or CV and place the blocks in a storage you choose.
 
 
What it does:
 
Finds all BA, CV, SV, and HV entities on the playfield and prints them to an LCD if the core is not specifically named for deconstruction. If the core of the found entity is renamed for deconstruction, the script will remove all of its blocks except the core and place them in a specifically named storage container, or container controller.
 
 
What you need:
 
2 LCDs, one for the script and one for the display.
 
1 Storage container or container controller.
 
 
Usage:
 
1. Name one of the LCDs “Script:Nameofscript” and paste the code below to it. You can change the container name by editing the line {{#deconstruct . ‘Stuff’}} and changing ‘Stuff’ to whatever you want the container’s name to be.
 
 
{{#entitiesbyname ‘*’ 500}}
 
{{#each .}}
 
{{#test @root.E.Id neq Id}}
 
{{Name}}:
 
{{#deconstruct . ‘Stuff’}}
 
min: {{MinPos}}
 
max: {{MaxPos}}
 
current X: {{X}}
 
current Y: {{Y}}
 
current Z: {{Z}}
 
TotalBlocks: {{TotalBlocks}}
 
CheckedBlocks: {{CheckedBlocks}}
 
RemovedBlocks: {{RemovedBlocks}}
 
{{else}}
 
– {{/deconstruct}}
 

 
{{/test}}
 
{{/each}}
 
{{/entitiesbyname}}
 
 
2. Name another LCD (recommended 1×2 size) to “Nameofscript” the same as the script LCD but without the “Script:” part. This LCD will now display all the Entities on the playfield and what you should name the core to for deconstruction.
 
 
3. Place a container or container controller and name it to “Stuff” or whatever you changed the container name to in the code as mentioned in step 1.
 
 
Go to the entity you want to deconstruct, make sure the core is in a group in the device menu, then rename it to the name printed on the LCD. The script will place all the blocks of the entity into the storage you named if the storage has room. If the storage runs out of room, the script will pause until the storage is empty again, and continue to fill the box until all items have been placed. WARNING>> If you do not have enough space in your container and leave the playfield before all the items have been transferred, any untransferred items will be lost.
 
 
(((*****)))
 
Recycle Script, Written by ASTIC:
 
This script will deconstruct, down to the elementary parts, any BA, SV, HV, or CV and place the resources in a storage you choose.
 
 
What it does:
 
Finds all BA, CV, SV, and HV entities on the playfield and prints them to an LCD if the core is not specifically named for Recycling. If the core of the found entity is renamed for recycling, the script will remove all of its blocks except the core and place them in a specifically named storage container, or container controller, down to their elementary or secondary parts. i.e. Iron ingots, zascosium-alloy, motors, electronics, etc.
 
 
What you need:
 
2 LCDs, one for the script and one for the display.
 
1 Storage container or container controller.
 
 
Usage:
 
1. Name one of the LCDs “Script:Nameofscript” and paste the code below to it. You can change the container name by editing the line {{#recycle . ‘Stuff’}} and changing ‘Stuff’ to whatever you want the container’s name to be.
 
 
{{#entitiesbyname ‘*’ 500}}
 
{{#each .}}
 
{{#test @root.E.Id neq Id}}
 
{{Name}}:
 
{{#recycle . ‘Stuff’}}
 
min: {{MinPos}}
 
max: {{MaxPos}}
 
current X: {{X}}
 
current Y: {{Y}}
 
current Z: {{Z}}
 
TotalBlocks: {{TotalBlocks}}
 
CheckedBlocks: {{CheckedBlocks}}
 
RemovedBlocks: {{RemovedBlocks}}
 
{{else}}
 
– {{/recycle}}
 

 
{{/test}}
 
{{/each}}
 
{{/entitiesbyname}}
 
 
2. Name another LCD (recommended 1×2 size) to “Nameofscript” the same as the script LCD but without the “Script:” part. This LCD will now display all the Entities on the playfield and what you should name the core to for deconstruction.
 
 
3. Place a container or container controller and name it to “Stuff” or whatever you changed the container name to in the code as mentioned in step 1.
 
 
Go to the entity you want to recycle, make sure the core is in a group in the device menu, then rename it to the name printed on the LCD. The script will place all the blocks of the entity into the storage you named if the storage has room. If the storage runs out of room, the script will pause until the storage is empty again, and continue to fill the box until all items have been placed. WARNING>> If you do not have enough space in your container and leave the playfield before all the items have been transferred, any untransferred items will be lost.
 
 
(((*****)))
 
Recycle Script, Written by Mysteriouslabs:
 
This script will remove the hull blocks of any BA, SV, HV, or CV and place the resources in a storage you choose.
 
 
What it does:
 
Finds all BA, CV, SV, and HV entities on the playfield and prints them to an LCD if the core is not specifically named for Hull Stripping. If the core of the found entity is renamed for Hull Stripping, the script will remove all of its hull blocks except the core and place them in a specifically named storage container, or container controller.
 
 
What you need:
 
2 LCDs, one for the script and one for the display.
 
1 Storage container or container controller.
 
 
Usage:
 
1. Name one of the LCDs “Script:Nameofscript” and paste the code below to it. You can change the container name by editing the line {{#deconstruct . ‘Crg-Salvage’ ‘Core-HullSTR’ and changing ‘Crg-Salvage’ to whatever you want the container’s name to be.
 
 
<size=300%><sprite name=”Engineering_Bar2″></size>
 
<line-height=-17px>
 
</line-height><align=right>
 
<size=100%><b>Hull Stripper</b><br></size>
 
</align>
 
{{~set ‘IDs’ @root.E.Id}}
 
{{~#each E.S.DockedE}}
 
{{~set ‘IDs’ (concat @root.Data.IDs ‘,’ Id)}}
 
{{/each}}
 
{{#entitiesbyname ‘*’}}
 
{{#each .}}
 
{{~#test Id in @root.Data.IDs}}{{else}}
 
{{Name}}:
 
{{#deconstruct . ‘Crg-Salvage’ ‘Core-HullSTR’
 
‘403,404,405,406,407,412,413,1788,1787,1829,1854,1867,1828,1786,1482,1483,1683,2040,1910,1842,1856,1830,1869’}}
 
min: {{MinPos}}
 
max: {{MaxPos}}
 
current X: {{X}}
 
current Y: {{Y}}
 
current Z: {{Z}}
 
TotalBlocks: {{TotalBlocks}}
 
CheckedBlocks: {{CheckedBlocks}}
 
RemovedBlocks: {{RemovedBlocks}}
 
{{else}}
 
– {{/deconstruct}}
 
{{/test}}
 
{{/each}}
 
{{/entitiesbyname}}
 
 
2. Name another LCD (recommended 1×2 size) to “Nameofscript” the same as the script LCD but without the “Script:” part. This LCD will now display all the Entities on the playfield and what you should name the core to for deconstruction.
 
 
3. Place a container or container controller and name it to “Crg-Salvage” or whatever you changed the container name to in the code as mentioned in step 1.
 
 
Go to the entity you want to recycle, make sure the core is in a group in the device menu, then rename it to the name printed on the LCD. The script will place all the blocks of the entity into the storage you named if the storage has room. If the storage runs out of room, the script will pause until the storage is empty again, and continue to fill the box until all items have been placed. WARNING>> If you do not have enough space in your container and leave the playfield before all the items have been transferred, any untransferred items will be lost.
 
 
 

5.2: Information scripts you can use right now (Copy/Paste)

((Information Scripts))
 
 
(((*****)))
 
Storage contents display, Written by ASTIC:
 
This script will print the contents of storage boxes, containers, or controllers to an LCD.
 
 
What it does:
 
Finds all storage containers on the BA, CV, SV, or HV, the script LCD is placed on and prints the contents to an LCD with the same name as the storage.
 
 
What you need:
 
2 LCDs, one for the script and one for the display.
 
1 Storage box, container, or container controller.
 
 
Usage:
 
1. Name one of the LCDs “Script:Nameofscript” and paste the code below to it. Please make sure not to name it the same as any of the other scripts you may have already placed.
 
 
{{#devicesoftype E.S ‘Container’}}
 
{{#each .}}
 
Found: {{CustomName}}
 
{{#if CustomName}}
 
{{#items @root.E.S CustomName}}
 
– [{{format Id ‘{0,4}’}}]:{{format Count ‘{0,5}’}} {{Name}}
 
{{/items}}
 
{{#devices @root.E.S
 
(concat CustomName ‘LCD*’)}}
 
{{#each .}}
 
{{#settextblock .}}
 
{{../../../CustomName}}:
 
{{~islocked @root.E.S ../../../.}}(locked){{/islocked}}
 
{{#items @root.E.S ../../../CustomName}}
 
– [{{format Id ‘{0,4}’}}]:{{format Count ‘{0,5}’}} {{Name}}
 
{{/items}}
 
{{/settextblock}}
 
{{/each}}
 
{{/devices}}
 
{{/if}}
 
{{/each}}
 
{{/devicesoftype}}
 
 
2. Place a container or container box, storage, or controller and name it to anything you want.
 
 
3. Place an LCD anywhere you want to see the contents of a box and rename it to the name of the box. Example, If the box is named box01 then the contents will be displayed on any LCD with the name box01.
 
 
(((*****)))
 
Ship information panel, Written by ASTIC:
 
This script will print the player and ship/base information to an LCD.
 
 
What it does:
 
Finds playfield and entity iformation on the BA, CV, SV, or HV, the script LCD is placed on and prints the contents to an LCD with the same name as the script.
 
 
##Example of information included.##
 
 
Playfield: “Ecios”/Planet/Black Desert/Black Desert/False
 
Entity: “LCDInfo-Demo” Power:True #664002 (25989.8, 75.6, 14430.9)
 

 
███████████████████░ 99.47% =47744.1 / 48000.0 Fuel
 
░░░░░░░░░░░░░░░░░░░░ 0.00% = 0.0 / 8000.0 Oxygen
 
░░░░░░░░░░░░░░░░░░░░ 0.00% = 0.0 / 999.0 AU
 
░░░░░░░░░░░░░░░░░░░░ 0.00% Damage
 

 
Docked:
 

 
Pilot:
 
Passengers:
 
Players on Playfield:
 
– ASTIC
 

 
Players on Structure:
 
– ASTIC
 

 
Time on board: 10/2/2021 5:27:20 AM
 
EmpyrionScripting by ASTIC/TC Version:7.8.1.0
 
 
##END OF EXAMPLE##
 
 
What you need:
 
2 LCDs, one for the script and one for the display.
 
 
Usage:
 
1. Name one of the LCDs “Script:Nameofscript” and paste the code below to it. Please make sure not to name it the same as any of the other scripts you may have already placed.
 
 
Playfield: “{{P.Name}}”/{{P.PlayfieldType}}/ – [] 
 
{{~P.PlanetType}}/{{P.PlanetClass}}/
 
{{~P.IsPvP}}
 
Entity: “{{E.Name}}” – []  Power:
 
{{~E.S.IsPowerd}} #{{E.Id}} {{E.Pos}}
 

 
{{#use E.S.FuelTank}}
 
{{bar Content 0 Capacity 20 }}
 
{{~math Content ‘/’ Capacity}}
 
{{~format . ‘{0,8:P2}’}}
 
{{~/math}} =
 
{{~format Content ‘{0,7:0.0}’}} / {{format Capacity ‘{0,7:0.0}’}} Fuel
 
{{/use}}
 
 
{{#use E.S.OxygenTank}}
 
{{bar Content 0 Capacity 20 }}
 
{{~math Content ‘/’ Capacity}}
 
{{~format . ‘{0,8:P2}’}}
 
{{~/math}} =
 
{{~format Content ‘{0,7:0.0}’}} / {{format Capacity ‘{0,7:0.0}’}} Oxygen
 
{{/use}}
 
 
{{#use E.S.PentaxidTank}}
 
{{bar Content 0 Capacity 20 }}
 
{{~math Content ‘/’ Capacity}}
 
{{~format . ‘{0,8:P2}’}}
 
{{~/math}} =
 
{{~format Content ‘{0,7:0.0}’}} /
 
{{~format Capacity ‘{0,7:0.0}’}} AU
 
{{/use}}
 
 
{{#use E.S.DamageLevel}}
 
{{bar . 0 100 20 }}
 
{{~format . ‘{0,8:P2}’}} Damage
 
{{/use}}
 

 
Docked:
 
{{#each E.S.DockedE}}
 
– {{Name}}
 
{{~use S.FuelTank}}
 
{{~math Content ‘/’ Capacity}}
 
{{~format . ‘{0,8:P2} Fuel’}}
 
{{~/math}}
 
{{/use}}
 
{{~use S.OxygenTank}}
 
{{~math Content ‘/’ Capacity}}
 
{{~format . ‘{0,8:P2} O2’}}
 
{{~/math}}
 
{{/use}}
 
{{/each}}
 

 
Pilot: {{E.S.Pilot.Name}} – [] 
 
 
Passengers:
 
{{#each E.S.Passengers}}
 
– {{Name}}
 
{{/each}}
 
 
Players on Playfield:
 
{{#each P.Players}}
 
– {{Name}}
 
{{/each}}
 

 
Players on Structure:
 
{{#each E.S.Players}}
 
– {{Name}}
 
{{/each}}
 

 
Time on board: {{datetime}}
 
{{Version}}
 
 
2. Place a container or container box, storage, or controller and name it to anything you want.
 
 
3. Place an LCD anywhere you want to see the contents of a box and rename it to the name of the box. Example, If the box is named box01 then the contents will be displayed on any LCD with the name box01.
 
 
 

5.3: Where to find more scripts to copy and paste?

https://empyriononline.com/threads/mod-ext-empyrion-scripting-scripts.92458/ – [empyriononline.com] 
 
 

Written by GrinningStudios

 
 
Here we come to an end for Empyrion – Galactic Survival Scripts for automation with ASTIC’s Script mod guide hope you enjoy it. If you think we forget something to include or we should make an update to the post let us know via comment, and we will fix it asap! Thanks and have a great day!
 


Be the first to comment

Leave a Reply

Your email address will not be published.


*