|
Post by alexey on Feb 2, 2017 7:48:00 GMT
Question in subject As far as I discovered, game now allows for custom entities in text-files (materials, modules, missions, themes). Is there any plugin API that can inject custom behaviour into the game? For example, I'd like to have surface-based defences (silos, etc). In KSP plugin system allows 3-rd party mods to implement such novelties. Is it possible in COADE?
|
|
|
Post by shiolle on Feb 2, 2017 22:21:08 GMT
There was this thread on the topic. By design, you can mod anything that is stored in the resource folder of the game, including textures and shaders. Some things, like icons and logos are hardcoded and cannot be changed easily. Plugins are only available through DLL injection and to my knowledge nobody tried to do that yet (I mean DLL injection, not modding in general). Fortunately the game includes .PDB file for the exe, so at least you won't need to actually disassemble the exe to figure out what interfaces are there. If you want to know why there is such a difference between modding in KSP and CDE, I can elaborate.
|
|
|
Post by alexey on Feb 3, 2017 7:42:54 GMT
Well, as an ex-programmer I can suggest few reasonable possibilites First of all - good modding system is not easy to implement and requires a lot careful design.
|
|
|
Post by shiolle on Feb 3, 2017 13:12:40 GMT
Truth be told, there is an easier way to add new code to CDE. Most of the DLLs it uses are open-source. You should be able to add anything you want there, recompile it and just let the game to run your code (for example to load more DLLs with actual plugins). However, substituting components of the game itself is another matter. For most practical uses you need to be able to substitute certain classes the game instantiates with your own. I don't know if CDE uses inversion of control or how flexible is its architecture. In worst case scenario (I mean, this game has icons hardcoded!) it may be tricky to do.
KSP is using Unity3d. Not only the engine itself is well documented, it also uses C#, which is a simpler language compared to C++. Furthermore, KSP developers now provide a wealth of interfaces that allow modders to access most of the inner workings of the game.
|
|