Hello! I’ve been lurking in the forums for a few months, but I couldn’t yet find a solution to the issue we are facing with diffing/merging Dialogue Trees. Our game mechanics and flow heavily uses Dialogue Trees and we are regularly fixing bugs in our master branch in these “Game mechanics” Dialogue Trees. We have another branch with future development that also needs these bug fixes, but they already contain new nodes for the new expansion and I can’t merge them.
The Dialogue Tree graph is externally saved to a pretty printed json file, but even with this, three way merge doesn’t seems possible since the graph node IDs and orders are shuffled around when saving a slightly different version of the graph (adding one new node in the middle of the Dialogue Trees). For this single node addition, I had over 200 conflicts to manually review, which seems unbearable on the long run.
Is there any way to three way merge dialogue trees? If its not possible, is there an alternative solution?
Indeed, adding a new node in between other nodes will change the ID of the nodes and the son. Nodes are always sorted and the ID of the node is basically reflecting its index in the nodes list. The IDs are also required by the serializer to deserialize the connection node references. Due to the nodes being sorted (something that needs to be done), the json is also changing to insert the new node serialization (it is not simply added to the end for example). With that said and even with those changes made into json, have you tried typical 2-way merge with pretty json solution of pbpf? Prety Json should be possible to diff without conflicts.
Let me know. Thank you.
Join us on Discord: https://discord.gg/97q2Rjh
Author
Posts
Viewing 2 posts - 1 through 2 (of 2 total)
You must be logged in to reply to this topic.
Login
Register
By registering on this website you agree to our Privacy Policy.