Modding questions

Hello Devs,

I have a few questions about modding:

ASSETS:

  1. Where can I find the assets of the buildings included in the game and how can I extract and reuse them (as an .isasset file)?
    Background: I want to create a new building based on an existing building in the game (e.g. a new pipe).

  2. How can I edit an existing asset bundle?
    Background: I would like to give the above pipe a different color. Can I import, modify and recreate an .isasset bundle file in Unity?

CODE:

  1. How can I integrate a modified .dll (e.g. old.dll) into a mod so that it is used instead of the .dll contained in the game?
    Background: I want to edit e.g. hard-coded values (e.g. the cost of moving or demolishing buildings). I can change this and recompile the .dll. However the change is only applied when I replace the existing old.dll in the game folder and not when I put it in the mod folder.

ufortunately, you can do none of these, at least not directly.

we do not provide the game assets in decompiled form at the moment and there is no official support to get them.

not sure if you can completely replace a dll, I don’t think so. but what you can do is use the Harmony framework to hook into some methods and change their outcome, see scripting tutorial.

I understand that you do not provide the assets in decompiled form.

Is there however a way to use existing assets in modding ?

I’m currenly making a mod that modifies existing building properties and I want to add these modified buildings in a separate menu utilizing the existing assets.

This way I can play like normal and add modded buildings as needed.

(I don’t want to create new 3D models, just use the existing ones)

This is only possible if you change the code that loads the building model.

Currently, if a building is called “concreteFactory”, it loads the “concreteFactory” model.
You’d have to change this function so if you provide “FrankBKKFactory”, it returns the default “concreteFactory” model.

Got it, thanks for clearing that up.