ink (inkle)
詳細情報
- 開発者
- inkle
- 種別
- ナラティブ向けスクリプト言語
- ライセンス
- MIT
- ソースコード
- github.com/inkle/ink
分岐する文章のためのマークアップ言語。スクリプトは散文のように読め、ロジックは可能な限り少ない文字数で書ける。
英国のスタジオinkleが自作ゲーム(『80 Days』『Sorcery!』『Heaven's Vault』)のために作り、2016年にオープンソース化した。物語は「ノット」と「スティッチ」に分けられ、*が選択肢、+が繰り返し選べる選択肢、->が別の箇所への移動(ダイバート)を表す。変数や条件分岐、ある行を何回見たかを数えるカウンタも標準で備わる。
スクリプトは小さなランタイムが読むJSONにコンパイルされる。公式ランタイムはUnity向けのC#で、inkjsを使えば同じファイルをブラウザでも動かせる。ゲームエンジン側がランタイムに次の一行と選択肢を尋ね、見せ方は自分で決める。この分業のおかげで、ライターはゲームのコードに触れずに作業できる。