Twine

Материал из IFВики
Перейти к навигации Перейти к поиску

Общая информация

Система для создания интерактивных историй на JavaScript. В качестве интерпретатора готовых историй используется интернет-браузер.

Ранее система называлась Tweebox.

Для описания историй можно использовать несколько простых вики-подобных форматов. Формат описывает язык исходного кода и исходный внешний вид игры.

Кроме графического редактора, который называется собственно Twine, есть также консольная утилита twee, которая позволяет хранить код игры в системах контроля версий (git), а также разбивать код на несколько файлов.

Игры Twine, как правило, можно без потерь декомпилировать в код twee или импортировать в редактор, получив полный код игры. Но при этом Twine 2 не может открывать игры Twine 1 и наоборот, а программа-конвертер несовершенна и работает только с SugarCube.

Доступные форматы (Twine 2)

  • Harlowe - по умолчанию. Чёрный текст по центру белого фона. Википодобный язык.
  • Snowman - напоминает Markdown
  • SugarCube - наследие Twine 1. Позволяет иметь несколько слотов сохранений.
  • Proofread - выводит весь текст игры на одной странице для облегчения вычитки. Twine автоматически переводит игру в этот формат, когда вы нажимаете на кнопку "proofread copy".

Возможно создать свой формат. Также в сообществе могут быть другие авторские форматы.

Как они выглядят

Harlowe

(if: $hasKey)[It looks like the $keyColor key will open the door.]
(else:)[No way forward here, unfortunately.]

Snowman

<% if (s.hasKey) { %>
It looks like the <%= s.keyColor %> key will open the door.
<% } else { %>
No way forward here, unfortunately.
<% } %> 

SugarCube

<<if $hasKey>>
It looks like the $keyColor key will open the door.
<<else>>
No way forward here, unfortunately.
<</if>>

Ссылки