I'd like to use this dialog tool to author a chatbot - ie a Slack app that doesn't run in Unity at all.
Is there a way to just get a JSON dump of the output that doesn't depend on any runtime classes?
What does it look like? how complex?
thanks!
pure JSON output?
Re: pure JSON output?
Hi,
I'm not sure how far you mean by "doesn't run in Unity at all".
If you only want the data, you can dump a dialogue database to CSV or Chat Mapper XML format. It's a little complicated, but actually not bad to work with because everything uses ID numbers, not pointers. I can provide more details if this is the route you want to take.
If you want the Dialogue System to actually run the conversation, you'll have to use Unity, but you can run it in headless mode. This is much easier with the Dialogue System than any other conversation systems on the Asset Store because the UI subsystem is modular. As long as your UI implements a few methods in a C# interface (ShowSubtitle, ShowResponses, etc.), the Dialogue System can run conversations through it. For example, your ShowSubtitle method can use Unity's WWW class to tell the Slack API to post a message to a channel. Other developers have done similar things, such as writing the ShowResponses method to connect to a voice recognition web service to get the player's response, rather than showing a traditional GUI menu of response buttons. I'm happy to provide more details about this route, too; just let me know.
I'm not sure how far you mean by "doesn't run in Unity at all".
If you only want the data, you can dump a dialogue database to CSV or Chat Mapper XML format. It's a little complicated, but actually not bad to work with because everything uses ID numbers, not pointers. I can provide more details if this is the route you want to take.
If you want the Dialogue System to actually run the conversation, you'll have to use Unity, but you can run it in headless mode. This is much easier with the Dialogue System than any other conversation systems on the Asset Store because the UI subsystem is modular. As long as your UI implements a few methods in a C# interface (ShowSubtitle, ShowResponses, etc.), the Dialogue System can run conversations through it. For example, your ShowSubtitle method can use Unity's WWW class to tell the Slack API to post a message to a channel. Other developers have done similar things, such as writing the ShowResponses method to connect to a voice recognition web service to get the player's response, rather than showing a traditional GUI menu of response buttons. I'm happy to provide more details about this route, too; just let me know.