I've been quiet lately as I had to completely rebuild my mod framework (lua wasn't fast enough!) But now that I have, I made a quick mod to generate planets from a height map. The resolution could do with some work, but hopefully this looks familiar #procedural #modding #indiedev
@DerelictOnline, @sanitycheckme and anyone else who is curious, I ended up switching to C# (the language the game is written in) for my modding language. I compile it into assemblies at run-time and then call those. It's almost as fast as the code directly built into the game.
Later on I plan to cache the compiled assemblies with some kind of system-specific-check-sum to avoid injection of malicious dlls whilst still ensuring a mod heavy version of the game only incurs the compile delay on first play.
I'll need to sandbox the compile environment a bit, but I hope to offer up the power of C# minus things that could be used for nefarious purposes (e.g. I have my own game data system that you can store anything in but will block access to direct file reading/writing in mods).
The modding is primarily for the PC version, but the approach I've used will work for Mac/Linux as well, when I get around to supporting those platforms.
Also, while iOS and Android forbid compiling external code at runtime, if I do end up doing a mobile version as I originally planned before pivoting to PC, being in C# will make mods trivial to include (with permission of the modders) into mobile builds as part of an update.
You can follow @Lifeboat_Earth.
Tip: mention @twtextapp on a Twitter thread with the keyword “unroll” to get a link to it.

Latest Threads Unrolled: