Space Engineers

Space Engineers

View Stats:
Olverine Feb 7, 2017 @ 7:31am
Programmable block api documentation
So I've been diving into the in-game programming feature and it is really amazing to be able to write actual programs in a game like this
However, I struggle to find any good documentation. So far I've been using this[www.spaceengineerswiki.com] and this[www.spaceengineerswiki.com] that i found on the wiki. But they are both outdated and incomplete. I remember there being a file that could be found at
SteamApps\common\SpaceEngineers\Tools\Documentation.chm
, but I can no longer find this file. Was it removed in an update? If anyone still has this file, maybe they could send it to me?
< >
Showing 1-15 of 18 comments
TheBudgie Feb 7, 2017 @ 7:41am 
the documentation is actually incomplete, feel free to add me if you have any questions, I know literally 90% of the interfaces by memmory :)
Loues.S.Cat Feb 7, 2017 @ 7:45am 
The documentation files are screwed up and have been for ages. I don't think Keen are bothering to update it any more. >.>
You can open up the library files using a program like ILSpy and get the methods and available variables that way. works reasonably well, but evereything is spread over a number of specific files.
Anrock Feb 7, 2017 @ 7:52am 
There is https://github.com/KeenSoftwareHouse/SpaceEngineers
It's probably up-to-datest source.
CelticChaos Feb 7, 2017 @ 7:52am 
The generous Gods of Keen have made the entire sourcecode available.

SE Sourcecode[www.spaceengineersgame.com]

I am just getting started in modding and having the entire library available really helps me understand how the game is working. Not objects are available for interfacing through the program blocks. Combining this with the wiki programming information it will give you a great start.

Edit: Jinx - Anrock
Last edited by CelticChaos; Feb 7, 2017 @ 7:54am
malafides Feb 28, 2017 @ 5:39am 
Originally posted by TheSneakret:
the documentation is actually incomplete, feel free to add me if you have any questions, I know literally 90% of the interfaces by memmory :)
please help. I want use the ejector blok in script, but i can not find name of its class. Either IMyEjector of IMy Ship Ejector not working... Thanks
Loues.S.Cat Feb 28, 2017 @ 7:48am 
If I am not mistaken they used the same interface as the collectors do.
IMyShipConnector
rft50 Feb 28, 2017 @ 8:08am 
I'm looking for a complete documentation of Solar Panels to make a custom script that spins a solar array, but the wiki isn't up-to-date on it. Could you please help?
Loues.S.Cat Feb 28, 2017 @ 8:38am 
As far as I know:

IMySolarPanel
Type: MyObjectBuilder_SolarPanel/SmallBlockSolarPanel

Actions
OnOff
OnOff_On
OnOff_Off

Terminal Properties
OnOff
ShowInTerminal
ShowInInventory
ShowInToolbarConfig
Name
ShowOnHUD

Variable/Methods
float CurrentOutput { get; }
float MaxOutput { get; }
rft50 Feb 28, 2017 @ 8:40am 
Thanks.
The lack of documentation is even worse for beginners. Only real starting point I can find are c# videos on youtube by people with difficult accents. This https://forum.keenswh.com/threads/guide-programmable-block-c-101-for-space-engineers.7225150/ is supposed to be a crash course, but it's more like a kamikaze run.
Kirzy Jan 4, 2018 @ 5:20pm 
Originally posted by Twitch.tv/TheSneakret:
the documentation is actually incomplete, feel free to add me if you have any questions, I know literally 90% of the interfaces by memmory :)
Hi since you know so well API i don't know it you can tell me how can i know what's the current selected item of the player executing an action, like press a button.
What i want to do is press a button and if i have selected for example a piston, rotor, LCD or whatever, it will transfer to a container all the components needed to create that item
casualsailor Jan 4, 2018 @ 7:25pm 
2 years old is about as current as you will find. And yes it's extremely frustrating trying to search all the various forum posts and dig thru scripts on the workshop for something that is in Keens possession but for some reason they refuse to distribute.

And it's not like they don't want you to have it. They just don't want to take the time to publish it and keep it up to date.

But I could be wrong. Maybe they don't have their code documented and kept in a source code management system. Maybe there are a dozen versions of their code floating round at Keen's shop. Maybe that's why code that was in the process of being modified got accidently compiled and released as an update a few weeks ago breaking most mods.. Maybe that accounts for the weekly updates re-introducing issues solved by prior updates.

Nah. They're just too busy to publish the documentation.
Last edited by casualsailor; Jan 4, 2018 @ 7:32pm
Oneill_SFA Jan 4, 2018 @ 11:03pm 
Originally posted by Silverwing:
The generous Gods of Keen have made the entire sourcecode available.

SE Sourcecode[www.spaceengineersgame.com]

I am just getting started in modding and having the entire library available really helps me understand how the game is working. Not objects are available for interfacing through the program blocks. Combining this with the wiki programming information it will give you a great start.

Edit: Jinx - Anrock


That isn't updated any longer as far as I know.

You'd have to search on youtube for tutorials, but make sure they are from at least the last year. They are rudimentary, but helpful sometimes to get a start. gl
plaYer2k Jan 5, 2018 @ 10:46pm 
Originally posted by Loues.S.Cat:
You can open up the library files using a program like ILSpy and get the methods and available variables that way. works reasonably well, but evereything is spread over a number of specific files.

This really is the most up-to-date amd best thing you can do, and always could do. The documentation was always a rather bad tool that was outdated most of the time and usually lacked lots of things you could do with the IngameAPI.
It left out useable things as well as didnt give the same usability through refrence/use/implementation checks etc other tools like ILspy do.

So just get used to such tools and go through the DLLs directly for all your programmers needs.
You can also just set VisualStudio up properly to do the same and conveniently code with autocompletion and syntax checks

Thus, please dont fall back to using the old """Documentation""".chm or the outdated repository.
The wikis attempt to give a useful documentation but are terribly outdated because most "serious coder" simply use the aforementioned methods.
Last edited by plaYer2k; Jan 5, 2018 @ 10:46pm
casualsailor Jan 5, 2018 @ 11:15pm 
Originally posted by plaYer2k:
Originally posted by Loues.S.Cat:
You can open up the library files using a program like ILSpy and get the methods and available variables that way. works reasonably well, but evereything is spread over a number of specific files.

This really is the most up-to-date amd best thing you can do, and always could do. The documentation was always a rather bad tool that was outdated most of the time and usually lacked lots of things you could do with the IngameAPI.
It left out useable things as well as didnt give the same usability through refrence/use/implementation checks etc other tools like ILspy do.

So just get used to such tools and go through the DLLs directly for all your programmers needs.
You can also just set VisualStudio up properly to do the same and conveniently code with autocompletion and syntax checks

Thus, please dont fall back to using the old """Documentation""".chm or the outdated repository.
The wikis attempt to give a useful documentation but are terribly outdated because most "serious coder" simply use the aforementioned methods.

Doesn't using a decompiler on the DLLs violate section 2.2.4 of the EULA?

2.2.4. not to disassemble, decompile, reverse-engineer or create derivative works based on the whole or any part of the Software nor attempt to do any such thing except to the extent that (by virtue of section 296A of the Copyright, Designs and Patents Act 1988) such actions cannot be prohibited because they are essential for the purpose of achieving inter-operability of the Software with another software program, and provided that the information obtained by you during such activities:

I personally don't care what you do. But you might want to be careful what you advise others to do just in case.

http://www.spaceengineersgame.com/eula.html
Last edited by casualsailor; Jan 5, 2018 @ 11:23pm
< >
Showing 1-15 of 18 comments
Per page: 1530 50

Date Posted: Feb 7, 2017 @ 7:31am
Posts: 18