First of all, we find the ildasm program on our computer (I found it on C: \ Program Files (x86) \ Microsoft SDKs \ Windows \ v10.0A \ bin \ NETFX 4.6.1 Tools). We launch it. Such a window should appear.
![Planetbase: Advice (How to change the starting values, using the example of a class D planet)](https://i.playground.ru/p/I2Pu8PdglSKPTFnhzCH6_A.jpeg)
Open the Assembly-CSharp.dll file, usually located in C: \ Program Files (x86) \ Steam \ steamapps \ common \ Planetbase \ Planetbase_Data \ Managed, but on my Z drive.
![Planetbase: Advice (How to change the starting values, using the example of a class D planet)](https://i.playground.ru/p/dEZAPWLlbLoQrndT9v_-Kg.jpeg)
![Planetbase: Advice (How to change the starting values, using the example of a class D planet)](https://i.playground.ru/p/ui1w4hXr2Npa17EmrBsT-Q.jpeg?800-auto)
Tip: Before doing anything, make a backup copy of the Assembly-CSharp.dll file.
![Planetbase: Advice (How to change the starting values, using the example of a class D planet)](https://i.playground.ru/p/GY88iuPPZGhWmjbGxj1oGw.jpeg)
Save the dump for further editing.
![Planetbase: Advice (How to change the starting values, using the example of a class D planet)](https://i.playground.ru/p/CEhhYuT5F4LCLRdIDWaa7g.jpeg)
In my case, I saved it as 123 (in addition to 123.il, another 123.res file will appear in the folder).
![Planetbase: Advice (How to change the starting values, using the example of a class D planet)](https://i.playground.ru/p/1hIRf7PzTRMe19-1QCROjA.jpeg?800-auto)
![Planetbase: Advice (How to change the starting values, using the example of a class D planet)](https://i.playground.ru/p/FyOdZcErtohaeIfij8pymw.jpeg)
Now open the 123.il file with any text editor convenient for us, you can even use a stock Windows notebook.
![Planetbase: Advice (How to change the starting values, using the example of a class D planet)](https://i.playground.ru/p/Y_9tyCCx_E_aCNdyIM-smg.jpeg?800-auto)
Looking for the PlanetClassD value
![Planetbase: Advice (How to change the starting values, using the example of a class D planet)](https://i.playground.ru/p/vCvGYo0Le9dC5fhoAcF8ow.jpeg?800-auto)
![Planetbase: Advice (How to change the starting values, using the example of a class D planet)](https://i.playground.ru/p/z3eV_Sksr4xR1gu0Da2WOw.jpeg?800-auto)
A piece of code responsible for weather conditions (the value is in the line above the name of the parameter)
IL_004c: ldc.i4.2
IL_004d: stfld valuetype Planetbase.Planet / Quantity Planetbase.Planet :: mAtmosphereDensity
IL_0052: ldarg.0
IL_0053: ldc.i4.2
IL_0054: stfld valuetype Planetbase.Planet / Quantity Planetbase.Planet :: mLightAmount
IL_0059: ldarg.0
IL_005a: ldc.i4.2
IL_005b: stfld valuetype Planetbase.Planet / Quantity Planetbase.Planet :: mSandstormRisk
IL_0060: ldarg.0
IL_0061: ldc.i4.0
IL_0062: stfld valuetype Planetbase.Planet / Quantity Planetbase.Planet :: mSolarFlareRisk
IL_0067: ldarg.0
IL_0068: ldc.i4.1
IL_0069: stfld valuetype Planetbase.Planet / Quantity Planetbase.Planet :: mMeteorRisk
A piece responsible for the number of people.
For example, the line IL-006f: idc.i4.3 indicates that Worker`s will be 3. The maximum that I put is the value 4. But you can check.
IL_006e: ldarg.0
IL_006f: ldc.i4.3
IL_0070: call instance void Planetbase.Planet :: addStartingSpecialization (int32)
IL_0075: ldarg.0
IL_0076: ldc.i4.2
IL_0077: call instance void Planetbase.Planet :: addStartingSpecialization (int32)
IL_007c: ldarg.0
IL_007d: ldc.i4.1
IL_007e: call instance void Planetbase.Planet :: addStartingSpecialization (int32)
IL_0083: ldarg.0
IL_0084: ldc.i4.1
IL_0085: call instance void Planetbase.Planet :: addStartingSpecialization (int32)
IL_008a: ldarg.0
IL_008b: ldc.i4.1
IL_008c: call instance void Planetbase.Planet :: addStartingSpecialization (int32)
IL_0091: ldarg.0
IL_0092: ldc.i4.1
IL_0093: call instance void Planetbase.Planet :: addStartingSpecialization (int32)
The next part of the code is responsible for the number of starting resources. That is, metal will be 35, bioplastics – 30, food – 25, etc. I tried to change it to 1000, but after compilation the game did not start. Therefore, I put only 99, you can experiment.
IL_0098: ldarg.0
IL_0099: ldc.i4.s 35
IL_009b: call instance void Planetbase.Planet :: addStartingResource (int32)
IL_00a0: ldarg.0
IL_00a1: ldc.i4.s 30
IL_00a3: call instance void Planetbase.Planet :: addStartingResource (int32)
IL_00a8: ldarg.0
IL_00a9: ldc.i4.s 25
IL_00ab: call instance void Planetbase.Planet :: addStartingResource (int32)
IL_00b0: ldarg.0
IL_00b1: ldc.i4.s 10
IL_00b3: call instance void Planetbase.Planet :: addStartingResource (int32)
IL_00b8: ldarg.0
IL_00b9: ldc.i4.s 10
IL_00bb: call instance void Planetbase.Planet :: addStartingResource (int32)
Save the modified file.
Now we are looking for the ilasm.exe program, I found it in the C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 folder, copy it to the folder with the saved modified 123.il file. We start the console (Win + R, write cmd and launch).
Through the console, using the “CD” command, go to the folder where you saved 123.il (I have – Z: \ Program Files (x86) \ Steam \ steamapps \ common \ Planetbase \ Planetbase_Data \ Managed).
We type in the console “ilasm 123.il /resource=123.res / dll”
If we succeed, then the console will write “Operation completed successfully”, and if they were mistaken, then “***** FAILURE *****”, and the error line above, try to reduce the amount indicated in that line.
And the last step, replace 123.dll with Assembly-CSharp.dll.
Have a good time!