Difference between revisions of "Modding"
| (15 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
| − | Mods in Software Inc. can be defined in simple text-based files or using C# and compiling code for the game to load. You can add new software types, furniture and room textures using only the [[TyD|TyD]] file format. | + | Mods in Software Inc. can be defined in simple text-based files or using C# and compiling code for the game to load. You can add new software types, furniture, translations and room textures using only the [[TyD|TyD]] file format. |
== Debugging console == | == Debugging console == | ||
| − | You'll need the in-game console to properly test your mods and check if everything is working as it should. The debugging console is enabled by binding the console key at the bottom of the key binding menu in the options window. | + | You'll need the in-game console to properly test your mods and check if everything is working as it should. The debugging console is enabled by binding the console key at the bottom of the key binding menu in the options window. More information about how to use console can be found on [[Console]]. |
== Folder structure == | == Folder structure == | ||
| − | Unless downloaded from the Steam Workshop, mods are placed in the root of the game folder, depending on which type of mod | + | Unless downloaded from the Steam Workshop, mods are placed in the root of the game folder, depending on which type of mod you are making. Each mod should be placed in its own folder within the following folders (Note that these folders might not exist in the first place, so you should create them yourself): |
| − | * Software types and personalities should be placed in | + | * Software types and personalities should be placed in the '''Mods''' folder. |
| − | * Furniture should be placed in | + | * Furniture should be placed in the '''Furniture''' folder. |
| − | * Room, path and roof textures should be placed in | + | * Room, path and roof textures should be placed in the '''Materials''' folder. |
| − | * C# code and dll files should be placed in | + | * C# code and dll files should be placed in the '''DLLMods''' folder. |
| + | * Translations should be placed in the '''Localization''' folder. | ||
== Meta file == | == Meta file == | ||
| − | Each mod will take its name from the folder it is in. However, you can customize the '''Name''', '''Description''' and '''Author''' of your mod by adding a meta.tyd file to the root of your mod's folder, containing the specified records. This | + | Each mod will take its name from the folder it is in. However, you can customize the '''Name''', '''Description''' and '''Author''' of your mod by adding a meta.tyd file to the root of your mod's folder, containing the specified records. This file will be created automatically when you edit your mod in-game (Not implemented yet as of Alpha 11.4.7). |
== Localizations == | == Localizations == | ||
| − | + | Please go to [https://translate.coredumping.com translate.coredumping.com] to help translate the game. | |
== Mod types == | == Mod types == | ||
=== Data mod === | === Data mod === | ||
| − | [[Data Modding|Read the documentation here.]] | + | [[Data Modding|Read the documentation here.]] |
| − | Data mods can add, change or remove software types, AI company types, name generators and employee personalities. This is all done with [[TyD|TyD]] files, however software can have scripts attached using [[SIPL|SIPL]] | + | |
| + | Data mods can add, change or remove software types, AI company types, name generators and employee personalities. This is all done with [[TyD|TyD]] files, however software can have scripts attached using [[SIPL|SIPL]]. | ||
=== Furniture === | === Furniture === | ||
| − | [[Furniture Modding|Read the documentation here.]] | + | [[Furniture Modding|Read the documentation here.]] |
| + | |||
You can add furniture using .obj 3D object files. The furniture modding system, while only using [[TyD|TyD]] files, allows you to change pretty much anything about your furniture that would be possible to change from within the game's engine. | You can add furniture using .obj 3D object files. The furniture modding system, while only using [[TyD|TyD]] files, allows you to change pretty much anything about your furniture that would be possible to change from within the game's engine. | ||
=== Materials === | === Materials === | ||
| − | [[Material Modding|Read the documentation here.]] | + | [[Material Modding|Read the documentation here.]] |
| + | |||
Material mods allow you to load textures into the game for interior walls, exterior walls, floors, roofs and paths. | Material mods allow you to load textures into the game for interior walls, exterior walls, floors, roofs and paths. | ||
=== Code mod === | === Code mod === | ||
| − | [[Code Modding|Read the documentation here. | + | [[Code Modding|Read the documentation here.]] |
| − | If you want to dive even further, you can put .cs directly with the game, and it will compile and load your scripts on startup. For more control you can compile your own DLL files for the game to load. | + | |
| + | If you want to dive even further, you can put .cs files directly with the game, and it will compile and load your scripts on startup. For more control, you can compile your own DLL files for the game to load. | ||
=== Localizations === | === Localizations === | ||
| − | To create a localization you can copy the English folder from the Localization folder and fill in your own text in the appropriate fields. | + | To create a localization you can copy the English folder from the Localization folder and fill in your own text in the appropriate fields. Localization files are written entirely in [[TyD|TyD]], to be easily human-readable. |
| + | |||
| + | Localizations can also contain '''femalefirstnames.txt''', '''malefirstnames.txt''' and '''lastnames.txt''' files to overwrite the default employee names in the game. These should contain a list of names separated by new lines, ordered by how common the name is. | ||
| + | |||
| + | ====Helpful console commands==== | ||
| + | * '''COMPARE_LOCALIZATION''' X Y - Compares what has changed between between localization X and Y, Y should almost always be "English" | ||
| + | * '''CONVERT_LOCALIZATION_TYD''' X - Converts localization named X from XML to TyD | ||
| + | * '''RELOAD_LOCALIZATION''' - Reloads all localizations, but does not update UI instantly when in-game | ||
Latest revision as of 18:01, 6 April 2026
Mods in Software Inc. can be defined in simple text-based files or using C# and compiling code for the game to load. You can add new software types, furniture, translations and room textures using only the TyD file format.
Debugging console
You'll need the in-game console to properly test your mods and check if everything is working as it should. The debugging console is enabled by binding the console key at the bottom of the key binding menu in the options window. More information about how to use console can be found on Console.
Folder structure
Unless downloaded from the Steam Workshop, mods are placed in the root of the game folder, depending on which type of mod you are making. Each mod should be placed in its own folder within the following folders (Note that these folders might not exist in the first place, so you should create them yourself):
- Software types and personalities should be placed in the Mods folder.
- Furniture should be placed in the Furniture folder.
- Room, path and roof textures should be placed in the Materials folder.
- C# code and dll files should be placed in the DLLMods folder.
- Translations should be placed in the Localization folder.
Meta file
Each mod will take its name from the folder it is in. However, you can customize the Name, Description and Author of your mod by adding a meta.tyd file to the root of your mod's folder, containing the specified records. This file will be created automatically when you edit your mod in-game (Not implemented yet as of Alpha 11.4.7).
Localizations
Please go to translate.coredumping.com to help translate the game.
Mod types
Data mod
Data mods can add, change or remove software types, AI company types, name generators and employee personalities. This is all done with TyD files, however software can have scripts attached using SIPL.
Furniture
You can add furniture using .obj 3D object files. The furniture modding system, while only using TyD files, allows you to change pretty much anything about your furniture that would be possible to change from within the game's engine.
Materials
Material mods allow you to load textures into the game for interior walls, exterior walls, floors, roofs and paths.
Code mod
If you want to dive even further, you can put .cs files directly with the game, and it will compile and load your scripts on startup. For more control, you can compile your own DLL files for the game to load.
Localizations
To create a localization you can copy the English folder from the Localization folder and fill in your own text in the appropriate fields. Localization files are written entirely in TyD, to be easily human-readable.
Localizations can also contain femalefirstnames.txt, malefirstnames.txt and lastnames.txt files to overwrite the default employee names in the game. These should contain a list of names separated by new lines, ordered by how common the name is.
Helpful console commands
- COMPARE_LOCALIZATION X Y - Compares what has changed between between localization X and Y, Y should almost always be "English"
- CONVERT_LOCALIZATION_TYD X - Converts localization named X from XML to TyD
- RELOAD_LOCALIZATION - Reloads all localizations, but does not update UI instantly when in-game