How to make a custom LCD image mod
How to insert your own custom LCD images into the game like Splitsie's Impossible Images? You will need basic knowledge how to edit XML files (for example in NotePad++) and how to create images (in Paint.net).
Source
Create the folder structure
- Go to
%APPDATA%\SpaceEngineers\Mods
. If it doesn't exist, create that folder. - Create a new folder under
Mods
, its name is the name of your mod, for example,MyLCDMod
.%APPDATA%\SpaceEngineers\Mods\MyLCDMod
- In the
MyLCDMod
folder, create the following folder structure:%APPDATA%\SpaceEngineers\Mods\MyLCDMod\Textures\Models
%APPDATA%\SpaceEngineers\Mods\MyLCDMod\Textures\Models\MyFirstImage.dds
%APPDATA%\SpaceEngineers\Mods\MyLCDMod\Textures\Models\MySecondImage.dds
...%APPDATA%\SpaceEngineers\Mods\MyLCDMod\Data
%APPDATA%\SpaceEngineers\Mods\MyLCDMod\Data\LCDTextures.sbc
%APPDATA%\SpaceEngineers\Mods\MyLCDMod\metadata.mod
%APPDATA%\SpaceEngineers\Mods\MyLCDMod\thumb.jpg
Next, we create the files:
Create the thumbnail file
Take a screenshot and resize it, add a title if you like. Save the thumbnail file as thumb.jpg or thumb.png.
The mandatory requirement is that the file size must be less than 1 MB.
How to convert the images
- Open Paint.net.
- Paste or create your image.
- Delete the white background to get transparency.
- Use Image > Resize and resize it to an LCD size, typically, 512x512 square.
- If you want the image to be translucent on a transparent LCD in game, use Layers>Layer Properties to reduce the opacity a bit (e.g. 250 instead of 255).
- Then File > Save As:
- Select DirectDrawSurface (DDS).
- Enter a file name, e.g. "MyFirstImage.dds".
- Select the
%APPDATA%\SpaceEngineers\Mods\MyLCDMod\Textures\Models
folder as location. - Click Save.
- In the Settings dialog, select
R8G8B8A8
(mnemonic: RGBA with number 8 added). Click OK.
Create config files
Create a text file %APPDATA%\SpaceEngineers\Mods\MyLCDMod\Data\LCDTextures.sbc
in e.g. NotePad++. Copy the following XML and edit it:
<?xml version="1.0"?>
<Definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<LCDTextures>
<LCDTextureDefinition>
<Id>
<TypeId>LCDTextureDefinition</TypeId>
<SubtypeId>My First Image</SubtypeId>
</Id>
<TexturePath>Textures\Models\MyFirstImage.dds</TexturePath>
</LCDTextureDefinition>
<LCDTextureDefinition>
<Id>
<TypeId>LCDTextureDefinition</TypeId>
<SubtypeId>My Second Image</SubtypeId>
</Id>
<TexturePath>Textures\Models\MySecondImage.dds</TexturePath>
</LCDTextureDefinition>
</LCDTextures>
</Definitions>
Each LCDTextureDefinition adds one image, this example has two. In each definition, edit two attributes:
- Enter the name of the image in the
<SubtypeID>
element. That's the name visible in game. - Enter the relative path inside your
MyLCDMods
folder in the<TexturePath>
element.
Leave the rest as is. To add more than two images, copy and paste another <LCDTextureDefinition>
block and edit it.
Next to it, create a second text file and name it metadata.mod.
Paste the following into the metadata.mod file:
<?xml version="1.0" encoding="utf-8"?>
<ModMetadata xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ModVersion>1.0</ModVersion>
</ModMetadata>
Install and test the mod
- Start Space Engineers and click Load Game.
- Select a save and click Edit to edit the World Settings.
- Click Mods to open the Mods window.
- Select your mod
MyLCDMod
on the left side, then click the single right arrow in the center to add it to the game. Click OK. - Click OK again to close the World Settings screen.
- Click Load.
Now you should be able to select your custom images on an LCD or cockpit screen.
Tip: To share it with others, publish it to the Steam or mod.io workshop from the Mods window.
Publish/Update the Mod
For each update:
- Edit the metadata.mod file and increase the ModVersion,, e.g. from 1.0 to 1.1.
- Start Space Engineers and click Load Game.
- Select a save and click Edit to edit the World Settings.
- Click Mods to open the Mods window.
- Select your mod
MyLCDMod
on the left side, and click Publish. - Update the Type and edit the description etc. as needed. To update the thumbnail or data, edit the files directly.
- Click OK to close the World Settings screen.
Aside: How do I know what to put into the SBC file?
The SBC file in your mod typically starts out as the copy of an existing SBC file from the base game that you copy and learn from.
The default location of your game directory is:
C:\Program Files (x86)\Steam\steamapps\common\SpaceEngineers\
In this directory, go into the Data subdirectory and look at existing SBC files to learn how game rules, sounds, planets, images, models, etc. are defined.
C:\Program Files (x86)\Steam\steamapps\common\SpaceEngineers\Content\Data\
For example, you can find LCD image definitions in this file:
C:\Program Files (x86)\Steam\steamapps\common\SpaceEngineers\Content\Data\LCDTextures.sbc
You recognise the list of LCD images that are included in the game. To create a mod, you mirror the structure and create a copy along the same pattern, with new IDs and paths inserted (as described here). Of course it's not always so simple -- sometimes you don't know what values to enter, which ones are optional and which ones mandatory, and so on... But after you have found a related file, you can at least start asking questions about it in Keen's modding Discord.
Tip: To search keywords in XML files fast, open the Data directoy as workspace in NotePad++, right-click it, and use the Find in Files option to search the whole directory.
References
- The default LCD images are defined in XML here:
C:\Program Files (x86)\Steam\steamapps\common\SpaceEngineers\Content\Data\LCDTextures.sbc
- The default LCD images in DDS format are here:
C:\Program Files (x86)\Steam\steamapps\common\SpaceEngineers\Content\Textures\Sprites
- Your installed Space Engineers mods are here:
C:\Program Files (x86)\Steam\steamapps\workshop\content\244850
- For example, if you have ImpossibleImages installed from the Workshop, it's here:
C:\Program Files (x86)\Steam\steamapps\workshop\content\244850\2183745839
- For example, if you have ImpossibleImages installed from the Workshop, it's here: