Planetbase: Advice (How to change the starting values, using the example of a class D planet)

Home » Gaming Tactics » Planetbase: Advice (How to change the starting values, using the example of a class D planet)
June 19, 2020
3 minutes
98

By Jonny Gamer

Planetbase: Advice (How to change the starting values, using the example of a class D planet)

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)

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)
Planetbase: Advice (How to change the starting values, using the example of a class D planet)

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)

Save the dump for further editing.

Planetbase: Advice (How to change the starting values, using the example of a class D planet)

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)
Planetbase: Advice (How to change the starting values, using the example of a class D planet)

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)

Looking for the PlanetClassD value

Planetbase: Advice (How to change the starting values, using the example of a class D planet)
Planetbase: Advice (How to change the starting values, using the example of a class D planet)

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!

    How do you rate Planetbase: Advice (How to change the starting values, using the example of a class D planet) ?

    Your email address will not be published. Required fields are marked *