Dan Treble is a user on mastodon.gamedev.place. You can follow them or interact with them if you have an account anywhere in the fediverse. If you don't, you can sign up here.
Dan Treble @dantreble

We shipped modding support for Hand of Fate 2, very proud of the team. You can even play the released game in the editor to test your content. Ask me anything about modding a unity project, it's all in my head right now! steamcommunity.com/app/456670/

ยท 6 ยท 9

@dantreble Would love to read a write up of what it takes to make a moddable Unity game!

@chemikhazi I'll start writing up the problems we had and how we overcame them ๐Ÿ˜ƒ

@leiradel graph based editor that serialises to json. Editor is a unity plugin called node canvas

@dantreble Thanks for the answer. What does Node Canvas generate? A file containing a representation of the graph which is interpreted during runtime?

@dantreble One last question: is the JSON used directly, or is it converted to something else during the build?

@leiradel it is deserialising into objects. This is slow.... We had to optimise it a lot on console. The json serialised used does allow circular references of objects and shared references. Not many serialialisers allow that we found, when desperately searching for a faster one!

@dantreble Sorry for the stream of questions, but it only gets more interesting :) So you use an 3rd party JSON deserializer to recreate the graph with Node Canvas objects? Then you pass these objects to a Node Canvas runtime, or they can be executed directly?

@dantreble it would be awesome reading an article about it. Modding support in Unity games seems to be one of the topics with the least information out there.

Would also be very interested in reading a write-up on lessons learned. Do you ship your source assets to allow the game to be playable in the editor?

@keith no! We load them directly from the asset bundles from the game. That was one of the breakthroughs. I'll crack on with that write up