I have some questions/concerns regarding the Dialogue Tree extension.
First this extension is marked as experimental, should an experimental extension be avoided in a published game? Is there a plan for this extension to move out of experimental status? (I didn’t see any backlog items on future development of this extension on the Gdevelop roadmap)
Second, per the Gdevelop wiki, this extension is built on the bondagejs Yarn parser. In github the last commit for bondagejs was 17 months ago. Is that a warning sign that this library is being abandoned and if so could that lead to the Dialogue Tree ultimately being abandoned/ deprecated?
Finally since this extension utilizes a JSON file to store dialogue and according to the wiki, internal storage is limited to Windows, macOS and Linux, am I correct in assuming you can’t publish a game using the Dialogue Tree to mobile devices?
I’d love to use this extension, but am debating the pros/cons of putting time and effort into using this extension or in building my own (bare bones) dialogue system. I’d like to future proof my game as much as possible and avoid a lot of rework down the line.
Not so much “avoided”, more so “by using this you acknowledge it may have bugs and/or not be as seamless as an experience as other objects”.
Nope, you’re fine for mobile. You’re selecting a JSON file to store/load the dialogue file. it is getting loaded as a resource just like your images are. It will be compiled into the main game package when you export/build the game, so it’s not utilizing the file system. (Also, Storage is available on all platforms. File System access is not).
I can’t speak to the other questions, unfortunately.
The extension has some bugs and limitations, and crashes easily (syntax is strict). I’ve flagged a few issues about it, and I don’t think they have been addressed, their community is indeed quite inactive.
I built some custom features on top of it when needed, but I still think it’s a useful extension, and the dialogue editor is nice to use.
If you’re up for building a dialogue system as a GDevelop extension, it could surely be an interesting contribution. But if you know JS, it might be easier to contribute to the existing projects, rather than reinventing the wheel.