Skip to content
forked from ajboni/Talkit

Non-Linear Game Dialogue Editor

License

Notifications You must be signed in to change notification settings

zzzarius/Talkit

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Live


Talkit

Web Based, Non-Linear Game Dialogue Editor.

Talkit is a fork of et1337's wonderful The Poor Man's Dialogue Tree which is currently part of Lemma project.

Description.

Talkit is a Non-linear, node based, game dialog editor. It runs on jointJS. It exports to JSON with game ready content. alt text

Nodes

Text

Display a message from the specified actor.
Actor: Specify the actor who will say the speech.
Speech: The text the actor will say.

Choice

Intended to populate the players choices for responses.
Title: The title of the choice. This is useful for cases when the buttons the player would have to chose from will differ from the actual speech he will say.
Speech: The text the actor will say.

Set

Sets a variable to a value. Can link to one Text, Node, Set, or Branch.

Branch

Takes one of several paths based on the value of a variable. Each port can link to one Text, Node, Set, or Branch.

Node

Does nothing. Can link to one Text, Node, Set, or Branch, or to one or more Choices.

Usage

Fire up the HTML, make your dialog and export.
You can add ?load="file.json" to the URL to load a graph saved on cache.
Example Output:

[
    {
        "type": "Text",
        "id": "227b6f95-2759-4bda-8364-3bcbcb2cbf4d",
        "actor": "Detective",
        "name": "Now tell me Victor.\nWhere were you last night?",
        "choices": [
            "b24806af-4923-4881-84c8-93426cbe3c19",
            "69261cd7-1cfe-4088-8c7c-99f19bc5fb25"
        ]
    },
    {
        "type": "Choice",
        "id": "69261cd7-1cfe-4088-8c7c-99f19bc5fb25",
        "title": "Honest Answer",
        "name": "I was at her house.\nBut I dind't saw anything strange.",
        "next": "6e9f9c69-3efc-447b-ac3a-ade28635b106"
    },
    {
        "type": "Choice",
        "id": "b24806af-4923-4881-84c8-93426cbe3c19",
        "title": "Lie",
        "name": "",
        "next": "fe9c4ac5-3f5a-4df1-91fe-e45b523017d7"
    },
    {
        "type": "Set",
        "id": "6e9f9c69-3efc-447b-ac3a-ade28635b106",
        "variable": "Honest",
        "value": "true",
        "next": "fd3067f6-2afc-42e8-a697-2bb5739a8438"
    },
    {
        "type": "Set",
        "id": "fe9c4ac5-3f5a-4df1-91fe-e45b523017d7",
        "variable": "Honest",
        "value": "false",
        "next": "fd3067f6-2afc-42e8-a697-2bb5739a8438"
    },
    {
        "type": "Text",
        "id": "fd3067f6-2afc-42e8-a697-2bb5739a8438",
        "actor": "Detective",
        "name": "That will be all for now.",
        "next": null
    }
]

Not Implemented Yet - TODO:.

  • Add ?import="file.json" to import a graph from disk.
  • Add the ability to make a node a starting node.
  • Display the Id of the node on each node.

About

Non-Linear Game Dialogue Editor

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 98.5%
  • CSS 1.4%
  • HTML 0.1%