Space Engineers

Space Engineers

288 ratings
Easy Automation V2.0
File Size
0.081 MB
May 30, 2016 @ 3:50pm
May 21 @ 6:53pm
51 Change Notes ( view )

Subscribe to download
Easy Automation V2.0

Timer Block no longer needed as of V2.035

Not compatible with:
- Space Data Center by mooviies

New features since release:

- The ability to affect one block with an exact name without affecting other similarly named blocks by using # in front of the exact name of the block. Eg #block name

- the ability to check the value of a variable with an if or when statement
-the ability to check the number of existing blocks with the requested name (exact, EAA group, or InGame group) and also the ability to store that number in a variable.

if your LCD script looks for a block value for a block that does not exist or no longer exists, then your script will not halt like it used to. It will continue on. This allows your creations to be damaged and potentially be able to continue limping on. With the implementation of "Number of" that can check the number of blocks with a name, your scripts can now be much more intelligent about how they deal with damage as well as other things like merging and docking blocks.

bug fixes

-added compatibility for the multi-word action "Add Top Part"
-added the capacity to add text to a block name at any index position

-fixed a bug with Stop
-Added the ability to store positional and velocity type data of cockpits to variables.
-Added the ability to write to the Private text of LCD Screens.

-finished documentation for the newly added functionalities for v2.017 through v2.019
-rehashed how defining scale works when used in a write statement with a cockpit property. (It now works as intended)

-now compatible with Stable and Dev versions.

-now able to handle mid-run conection block conections (This was a problem after the recent patch)

-now able to us the Sound key word like a property in order to change the currently selected sound of a sound block eg. Sound of Sound Block = Lights off

-fixed detailed info parse to accommodate the change in format of "Filled" of tanks

-fixed bug with checking Color with an "if" statment, Color must be entered as a string with quotation marks.

-fixed bug with checking Color with an "Else if" statment.

-added error for incompleat "if" and "when" statments

-fixed bug with writing variables with set significant figures

-fixed bug with how blank lines where dealt with.

-Added "surface elevation" to the cockpit block (Special thanks to Allammo)

-Fixed rotor current angle not updating unless terminal was being looked at. (Special thanks to Avocatoe)

-updated script to work with the new space engineers LCD update

-Added the ability for inline comments, each line that is a comment is started with a * and must be on it's own line

-Fixed problem with Advanced Rotors, they should now work with the "Rotate" and "ShortRotate" statements.

-Removed the need to link a timer block to the programming block. EA now runs without any special timer block setup required. I know this has been a pain since day one but now you can set EA up like you do with any other script. Hurray!

-Added the ability to get the sum of the gravity vectors in the cockpit by adding "sum" to the property requested. eg
sum natural gravity of MyCockpit.

-removed the sum of the gravity vector and replaced it with the magnitude of the vector. eg
natural gravity magnitude of MyCockpit.
This should give the gravity in meters per second as was intended.
this will work with natural, artificial, and total gravity statements.

-Fixed a bug with the >> and << logic.

- Fixed bug introduced in v2.038 due to the reqval variable being removed from the proper scope. Reverted scope to the greater then and less then logic in the HandleIfWhen block.

- returned actVal variable to proper scope.

- Added ability for Rename statement to use variables like the Write statements do. You can't use Rename if your block name contains a \

Current Version from this subscription = 2.040

Welcome fellow space engineers, to the Easy Automation InGame Script V2.0
Much has changed since the previous version which is why I am releasing this as a new item on the workshop.

The Easy Automation V2.0 script will allow you to:
  • Delay actions to millisecond precision
  • Manipulate the Sliders and Actions of every block
  • Stop an Automation until a desired situation happens and then resume
  • Take a Value from one block and apply it to another
  • Rotate a rotor to a desired angle at a desired speed
  • Create complex logic which will govern how your automation’s react to different situations
  • Have unlimited LCD code size
  • Write and manipulate text on LCD's
  • Write current values of blocks to LCD's (such as a pistons "Current position")
  • Write to the core LCD the actions and properties of a block you may want to manipulate
  • Modify block names (Especially useful when interacting with other tech such as Digi's Control Module)
  • Create and destroy specialized groups as well as use the games built in groups (the built in groups can't be created, destroyed or modified with this system)
  • Run other programs with arguments you define in your program
  • Reset the Easy Automation system in case of a systems failure
  • View debug info of a non functioning automation in the detailed info of the Programming block
  • Assign simple algebra equations to variables
  • Edit the LCD code as the programing block is running it for run time testing/experimenting.
  • And maybe some other stuff that I can't remember right now, this thing has gotten pretty big!

I have written up a detailed guide for set up and all available functionality here:

If you are still having trouble after referring to the guide then ask your questions in the "Questions on Use" discussion below or in the discussion you will find below the guide.

Good luck fellow Spacefarers and happy Engineering!

Feb 2nd 2017 - The Stable and Dev versions of the programing block are now the same.
Popular Discussions View All (5)
Sep 6 @ 9:54pm
Previously working build (as of march 3, 2020) no longer works on current
7 hours ago
Questions on Use
May 17 @ 6:00pm
Bug Reports
< >
M4770 Sep 23 @ 5:54am 
Hello Coren, this script is awesome! thx for all the time and effort you put in to this! really great work! begone timer blocks and the ridiculous amount of work using this hideous GUI... thank you so much!:)
Vandesm14 Sep 12 @ 4:51pm 
I am trying to write a page-switcher for my auto LCD cockpit. Please add the ability to change the custom data of any block rather than just LCDs!
Coren  [author] Sep 6 @ 3:37pm 
Unfortunately this is old news from a few years ago. I made a big stink about it back then but so few people use the programming block that they see it as not worth dealing with. A few people even joined me in my attempt to find a workable solution but ultimately our arguments fell on deaf ears. The best I can do is refactor it in a way that will make it simple for users to add a bit of code themselves in order to use a mod.
Shadowpheonix Sep 6 @ 1:43pm 
Coren [author] 22 hours ago
Now I need a "slot" for each block type in order to read that block types info. This also means that I will no longer be able to deal with blocks that are modded in. It is unfortunate but that is the direction Keen decided to go in order to make multiplayer work more smoothly

This is definitely not good news. :(
Controlling modded items (like the Nanobot Build & Repair and Nanobot Drill & Fill System are my primary uses for Easy Automation.
Do you know if there is an enhancement request/petition/whatever submitted to Keen to get this changed that I can add my vote to?
Const Sep 6 @ 2:44am 
made a discussion thread so as to prevent additional clutter for the comment section. please refer to that for additional info
Const Sep 6 @ 2:16am 
and it's not just one, all of the flight controls don't respond properly at all. even after reconfiguring all the timers to apply the right arguments, it still doesn't work
Const Sep 6 @ 2:15am 
yes, but like i said, this was previously working perfectly when i uploaded it; upon testing a day or two ago, it no longer works as intended. i made no changes at all
Coren  [author] Sep 6 @ 1:37am 
sounds like the argument for one of those was incorrectly entered when setting up activator.
Const Sep 5 @ 10:48pm 
"Argument is missing an opening round
bracket "(" "

argument i run is "Flight(-control name-)"
where control name is the direction; Pitch Up, Pitch Down, Roll Right/Left, etc
Coren  [author] Sep 5 @ 3:09pm 
Is EA hanging mid code? What comes up in the detailed info when you run the argument "Show Storage"?