std.tech: INSTEAD технологии

From: be_nt_all (syscall,46) 25.02.19 14:50 UTC
To: All
Subject: Мысли про возможность подружить Twine и INSTEAD
Сильно подробно писать, что такое Twine не буду (лучше таки допишу техчасть в https://ru.wikipedia.org/wiki/Twine — пока отложил, стараяь следовать принципу Википедии «лучше сослаться на вторичный источник (книга, статья в журнале), чем на первичный (документация)» и подбор этих самых вторичных источников — отдельная песня), но в общем — движок книг-игр. На html и JS. Изначально — на основе TiddlyWiki (кто не в курсе что это, легко нагуглить на руссском). У нас больше известен клон AXMA Story Maker. Закрытый и проприетарный — я так понимаю, чтобы не нарушать GPL авторы сего чуда повторили функционал Twine 1, используя те же «запчасти», вроде TiddlyWiki, лицензированные под BSD/MIT. Про аксму больше не буду, так как проприетарный клон свободного софта — «это некрасиво и невкусно». И да, основное преимущество твайна/аксмы — представление игры в наглядном виде — связанные стрелками переходами прямоугольники-комнаты.

Помню я был какой-то похожий редактор, генерящий (в том числе) код для [IN]STEAD 2. Но Instead — он не только (и не столько) для книг игр. Он вообще для много чего, но изначально (как не раз писал и говорил Пётр Косых) — для механики а ля Goblins Quest. И таких игр для INSTEAD всё ещё (кажется) больше всего.

Я тут прикинул, можно ли дописать один из викидвижков Twine (а в Twine-2 их на выбор три штуки) с тем, чтобы реализовать такую механику, не сломав этот самый дизайнер с квадратиками и стрелочками. Получается, что вполне.

Хотя если это сделать на базе низкоуровневого (по отношению к JS и HTML) Twine-Snowman, или сохраняющем архитектуру TiddlyWiki Twine-SugarCube, для мира Instead это не даст ни-че-го. JavaScript на Lua не переводится, и Instead игру ты так не сгенеришь. Хотя в качестве Proof of Concept можно начать с этого.

Ну а куда после такого PoC двигаться дальше? Но ведь где три фреймворка, там можно создать и четвёртый. Берём Lua in browser (можно https://daurnimator.github.io/lua.vm.js/lua.vm.js. html — но путь без emscripten в виде https://fengari.io/ мне видится куда изящней), держим в голове STEAD 3 и сочиняем такой «язык разметки игр и историй», который бы экспортировался в исходный код игры для Instead 3 максимально естественно.

Я думаю, такая штука, если получится, живя рядом с Instead, в довольно «раскрученном» сообществе Twine, да и просто в качестве визуального редактора инстед-игр для непрограммистов, на популяризацию Instead сыграть вполне может. А вы как думаете, стоит в эту сторону копать?
[174 / 182]