Difference between revisions of "Scripting API Documentation"
From Space Engineers Wiki
(→Sandbox.ModAPI.Ingame: Updated descriptions. Lots and lots of descriptions. If anyone is sure about what a "slim block" is, please update that one.) |
(Expanded the warning on the cuber documentation with more details.) |
||
Line 1: | Line 1: | ||
In [[Update 01.063]], ''In-game Programming'' was introduced, allowing Engineers to make their own scripts to be compiled and ran by the [[Programmable Block]]. There is a limited API available to would-be coders which is described and documented here. | In [[Update 01.063]], ''In-game Programming'' was introduced, allowing Engineers to make their own scripts to be compiled and ran by the [[Programmable Block]]. There is a limited API available to would-be coders which is described and documented here. | ||
− | An alternative documentation is available [https://jcuber.github.io/space-engineers-doc-collab/html/R_Project_SE_Ingame_API.htm to experienced c# developers here, | + | An alternative documentation is available [https://jcuber.github.io/space-engineers-doc-collab/html/R_Project_SE_Ingame_API.htm to experienced c# developers here], as explained [http://forums.keenswh.com/post/programmable-block-api-documentation-now-online-7224725?&trail=15 in this forum post here]. This documentation is made using Sandcastle, and is in the same format as [[http://msdn.microsoft.com/library|MSDN]] reference. At the moment, it is a work in progress and lacks any description of what anything does. If you don't know what a "decompiled DLL" is, that documentation is likely unhelpful. |
==Sandbox.Common.ObjectBuilders== | ==Sandbox.Common.ObjectBuilders== |
Revision as of 00:34, 13 January 2015
In Update 01.063, In-game Programming was introduced, allowing Engineers to make their own scripts to be compiled and ran by the Programmable Block. There is a limited API available to would-be coders which is described and documented here.
An alternative documentation is available to experienced c# developers here, as explained in this forum post here. This documentation is made using Sandcastle, and is in the same format as [[1]] reference. At the moment, it is a work in progress and lacks any description of what anything does. If you don't know what a "decompiled DLL" is, that documentation is likely unhelpful.
Contents
Sandbox.Common.ObjectBuilders
Structs | |
---|---|
Name | Description |
BoneInfo | A struct |
MyEncounterId | A struct |
MyObjectBuilder_Checkpoint.ModItem | A struct |
MyObjectBuilder_Checkpoint.PlayerId | A struct |
MyObjectBuilder_Checkpoint.PlayerItem | A struct |
MyObjectBuilder_Checkpoint.RespawnCooldownItem | A struct |
MyObjectBuilder_CubeBlock.MySubBlockId | A struct |
MyObjectBuilder_FactionRelation | A struct |
MyObjectBuilder_FactionRequests | A struct |
MyObjectBuilder_FracturedBlock.ShapeB | A struct |
MyObjectBuilder_FracturedPiece.Shape | A struct |
MyObjectBuilder_ProductionBlock.QueueItem | A struct |
MyObjectBuilder_Toolbar.Slot | A struct |
MyObjectBuilderType | A struct |
MyOrientation | A struct |
MyPositionAndOrientation | A struct |
MyRuntimeObjectBuilderId | A struct |
Interfaces | |
---|---|
Name | Description |
IMyRemapHelper | An interface. |
Enumerations | |
---|---|
Name | Description |
MyBlockTopology | An enum. |
MyCameraControllerEnum | An enum. |
MyCharacterModelEnum | An enum. |
MyCubeSize | An enum. |
MyEnvironmentHostilityEnum | An enum. |
MyGameModeEnum | An enum. |
MyItemFlags | An enum. |
MyObjectBuilder_ConveyorLine.LineType | An enum. |
MyOnlineModeEnum | An enum. |
MyOwnershipShareModeEnum | An enum. |
MyPersistentEntityFlags2 | An enum. |
MySessionGameType | Obsolete. |
MySessionHarvestMode | Obsolete. |
MyToolbarType | An enum. |
Sandbox.ModAPI
Classes | |
---|---|
Name | Description |
MyAPIGateway | A class |
Interfaces | |
---|---|
Name | Description |
IMyButtonPanel | An interface. |
IMyConfigDedicated | An interface. |
IMyControllerInfo | An interface. |
IMyCubeBlock | An interface. |
IMyCubeBuilder | An interface. |
IMyCubeGrid | An interface. |
IMyDoor | An interface. |
IMyEntities | An interface. |
IMyEntity | An interface. |
IMyEntityController | An interface. |
IMyFaction | An interface. |
IMyFactionCollection | An interface. |
IMyFunctionalBlock | An interface. |
IMyGamePaths | An interface. |
IMyHudObjectiveLine | An interface. |
IMyIdentity | An interface. |
IMyInventory | An interface. |
IMyLandingGear | An interface. |
IMyMotorStator | An interface. |
IMyMultiplayer | An interface. |
IMyNetworkClient | An interface. |
IMyParallelTask | An interface. |
IMyPistonBase | An interface. |
IMyPlayer | An interface. |
IMyPlayerCollection | An interface. |
IMyProductionBlock | An interface. |
IMySensorBlock | An interface. |
IMySession | An interface. |
IMyShipMergeBlock | An interface. |
IMySlimBlock | An interface. |
IMyTerminalActionsHelper | An interface. |
IMyTerminalBlock | An interface. |
IMyUtilities | An interface. |
IMyVoxelMap | An interface. |
IMyVoxelMaps | An interface. |
Delegates | |
---|---|
Name | Description |
MessageEnteredDel | A Delegate. |
Enumerations | |
---|---|
Name | Description |
EntityFlags | An enum. |
ResultEnum | An enum. |
Sandbox.ModAPI.Ingame
Interfaces | |
---|---|
Name | Description |
IMyAssembler | Interface for assembler-class blocks. |
IMyBatteryBlock | Interface for battery-class blocks. |
IMyBeacon
Interface for beacon-class blocks. | |
IMyBlockGroup | Interface for block groups. |
IMyButtonPanel | Interface for button panel blocks. |
IMyCameraBlock | Interface for camera-class blocks. |
IMyCargoContainer | Interface for cargo container blocks (includes small, medium, and large). |
IMyCockpit | Interface for cockpit classes (includes pilot seat, cockpit, fighter cockpit, and control station). |
IMyCollector | Interface for collector-class blocks. |
IMyControlPanel | Interface for control panel blocks. |
IMyCubeBlock | Base class for all blocks. |
IMyCubeGrid | Base class for grids. |
IMyDoor | Interface for door-class blocks. |
IMyFunctionalBlock | Base class for all "functional" blocks. These include, but are not limited to: gyroscopes, assemblers, refineries, sensors, doors, thrusters, and sound blocks. |
IMyGravityGenerator | Interface for standard gravity generator blocks. |
IMyGravityGeneratorBase | Base class for all gravity generators. |
IMyGravityGeneratorSphere | Interface for spherical gravity generator blocks. |
IMyGridTerminalSystem | Static object that allows access to other blocks on the same and locally connected grids. |
IMyGyro | Interface for gyroscope-class blocks. |
IMyInteriorLight | Interface for interior light blocks. |
IMyLandingGear | Interface for landing gear blocks. |
IMyLargeConveyorTurretBase | Base class for all conveyor-connectable turrets. |
IMyLargeGatlingTurret | Interface for Gatling turrets. |
IMyLargeInteriorTurret | Interface for interior turrets. |
IMyLargeMissileTurret | Interface for large missile turrets. |
IMyLargeTurretBase | Base class for all large turrets. |
IMyLightingBlock | Base class for all light blocks (spotlights, interior lights). |
IMyMedicalRoom | Interface for medical bays. |
IMyMotorAdvancedStator | Interface for advanced rotors. |
IMyMotorBase | Base class for all motorized components (rotor, advanced rotor, wheel suspensions). |
IMyMotorStator | Interface for standard rotors. |
IMyMotorSuspension | Interface for wheel suspensions. |
IMyOreDetector | Interface for ore detectors. |
IMyPistonBase | Base class for pistons. |
IMyProductionBlock | Base class for production blocks (arc furnace, refinery, assembler) |
IMyProgrammableBlock | Interface for programmable blocks. |
IMyProjector | Interface for projector blocks. |
IMyRadioAntenna | Interface for antennas. |
IMyReactor | Interface for all reactors (large grid and small grid large and small reactors). |
IMyRefinery | Interface for refineries. |
IMyReflectorLight | Interface for spotlights. |
IMyRemoteControl | Interface for remote control blocks. |
IMySensorBlock | Interface for sensors. |
IMyShipConnector | Interface for connector blocks. |
IMyShipController | Base class for control station classes-- cockpits are included in this. |
IMyShipDrill | Interface for all ship drills. |
IMyShipGrinder | Interface for grinders. |
IMyShipMergeBlock | Interface for merge blocks. |
IMyShipToolBase | Base class for ship grinders and welders. |
IMyShipWelder | Interface for welders. |
IMySlimBlock | An interface. Block classes TBD. |
IMySmallGatlingGun | Interface for small ship Gatling guns. |
IMySmallMissileLauncher | Interface for missile launchers. |
IMySmallMissileLauncherReload | Interface for small ship reloadable missile launchers. |
IMySolarPanel | Interface for solar panels. |
IMySoundBlock | Interface for sound blocks. |
IMyTerminalBlock | Base class for any block that appears in the terminal (control panel screen). |
IMyThrust | Interface for thrusters (large and small). |
IMyTimerBlock | Interface for timer blocks. |
IMyWarhead | Interface for warheads. |
IMyVirtualMass | Interface for artificial mass blocks. |
Sandbox.ModAPI.Interfaces
Interfaces | |
---|---|
Name | Description |
IMyCameraController | An interface. |
IMyControllableEntity | An interface. |
IMyDestroyableObject | An interface. |
IMyInventory | An interface. |
IMyInventoryItem | An interface. |
IMyInventoryOwner | An interface. |
IMyStorage | An interface. |
ITerminalAction | An interface. |