Twine

Материал из IFВики
Перейти к навигации Перейти к поиску
Twine
Тип Менюшные платформы
Разработчик(и) Крис Климас и сообщество, русский перевод Антон Жучков
Языки интерфейса 15 языков, в том числе русский
Операционные системы Браузер, Windows, macOS, GNU/Linux (Twine 1.x без GNU/Linux)
Написано на JavaScript (версия 1.x на Python 2)
Язык разработки Собственный скриптовый Twine с визуальным редактором и JavaScript
Читаемые форматы файлов Исходный код Twine (*.tws)
Создаваемые форматы файлов Исходный код Twine (*.tws), Веб-страницы (*.html)
Дата первого выпуска 2009
Последняя версия 2.6.0 (сохраняющая актуальность версия 1.4.2 первого поколения)
Дата последней версии 8 января 2023
Состояние
Лицензия GNU GPL v3.0
Сайт twinery.org


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

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

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

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

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

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

Краткая история

Twine вырос из более старой платформы «Tweebox» (также см. «Twee» и «Twinkie»), которая была форматом для вики-системы TiddlyWiki; первый формат Jonah стал первым форматом нового Twine. Поэтому датой первого релиза мы считаем 2009 год, но на самом деле игры на Tweebox были и раньше, а разметка самих игр с перезапуском движка практически не менялась. (Да, таким образом Twine можно считать старше чем FireURQ)

Для простоты на нашей IFWiki мы не делаем различий между Twine и Tweebox, поэтому смотрите на даты релиза: все игры до лета 2009 года - это Tweebox.

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

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

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

Примеры кода

Harlowe

(if: $hasKey)[Похоже, что $keyColor ключ [[откроет дверь]].]
(else:)[Печально, но дальше прохода нет.]


Snowman

<% if (s.hasKey) { %>
Похоже, что <%= s.keyColor %> ключ [[откроет дверь]].
<% } else { %>
Печально, но дальше прохода нет.
<% } %> 

SugarCube

<<if $hasKey>>
Похоже, что $keyColor ключ [[откроет дверь]].
<<else>>
Печально, но дальше прохода нет.
<</if>>

Ссылки

Обучающие статьи

См. также