You can add Lob during the game of Lobotomy Corporation, It is a mod that can set the order of appearance of abnormalities to arbitrary things.
Initially, I made it for easy translation confirmation.
This repository exposes only the source code, and the ExtraEditMod artifacts are in the following uploader. Also, when distributing, we also distribute Assembly-CSharp.dll, but we distribute it by permission from Project Moon of the right source.
https://ux.getuploader.com/Lobotomy_Corporation_Extra_Edit_Mod/
- Microsoft Visual Studio
- Illasm
- ilasm
- Convert Assembly-CSharp.dll to intermediate code (.il)
- Use ILModIWriter to rewrite intermediate code so that ExtraEditMod can be used
- Recompile the rewritten intermediate code and generate Assembly-CSharp.dll
- Create dll of ExtraEditMod
- Overwrite the current DLL with the created Assembly-CSharp.dll and add the dll of ExtraEditMod to the same folder
- Start up and enjoy
Illasm is used to output intermediate codes. The output file name is Assembly-CSharp.il. Illasm is software made by microsoft.
Three places of intermediate code are being rewritten from ILModIWriter
- Added version of ExtraEditMod
- To create ExtraEditMod for hierarchy in game, add original mod init to Awake part of title scene
- Rewrite to make CreatureGenerateModel :: SetCreature operate on ExtraEditMod side
For details, please check ILModWriter.cs in source code.
Recompile using ilasm ilasm is Microsoft's software. I think that it was attached to .Net Framework
Before creating, add a reference to Assembly - CSharp.dll to Visual Studio. Class files for each function of ExtraEditMod are as follows
- ExtraEditMod.cs
- Class that manages the overall functionality of this mod. Each function is executed from this class.
- OrderCreature.cs
- It is a class that manages overall functions of appearance order of abnormality
- AddLob.cs
- Lob This class manages the function to add points
- EditSetting.cs
- Current mod setting is a class to manage save load
- EditSettingData.cs
- Class for saving mod settings in json format
5. Overwrite the current DLL with the created Assembly-CSharp.dll and add the dll of ExtraEditMod to the same folder
It's a good idea to take a backup before overwriting Assembly-CSharp.dll.
that's all