Привет!
Сегодня в номере: очередные фиксы для библиотеки и первый релиз версии библиотеки, совместимой с Glulx.
Что нового в 0.8.3 (2018-02-04)
- Улучшения для глаголов «целовать» и «обнимать».
- Исправлено «загрузить» (регрессия).
- «отчёт» и «остотчёт» как синонимы для «транскрипт».
Также, в сборке теперь лежит компилятор версии 6.34 (для Windows). Как всегда, свежую версию можно скачать:
- на официальном сайте: http://rinform.stormway.ru/
- на репозитории Bitbucket: https://bitbucket.org/yandexx/rinform/downloads/?tab=tags
Первый релиз Glulx
Это было относительно сложно, но в целом проще, а поэтому быстрее, чем я ожидал. Готов первый альфа-релиз Русского Информа, поддерживающий Glulx. Скачать можно на GitHub: https://github.com/yandexx/rinform-glulx
Что нам даёт поддержка Glulx:
- мультимедиа-фичи: картинки, звук, ссылки.
- расширенные возможности типографики.
- возможность разделять окно на произвольные области.
- полная поддержка UTF-8 как в исходниках, так и в готовых играх.
- файлы игр до 4 гигабайт (формат .z8 поддерживает не более 512 килобайт).
- ещё больше мультимедии в онлайне и вызов произвольного JS-кода, если использовать Vorple (ещё не тестировалось).
Версия пока «альфа», хотя в целом всё вроде бы работает без проблем: демки собираются, игры ведут себя адекватно, Гораф уже сказал что смог без багов пройти Винтер на Glulx. Но, например, расширения пока отсутствуют и проверены не были.
Короткий FAQ
Почему новый репозиторий, и почему на GitHub?
К сожалению, совместить обе версии в одной код-базе никак не получится: Z-машина не поддерживает 4-байтные dictionary-слова, которые нам обязательно нужны для Glulx. А на GitHub работать заметно удобнее, чем на BitBucket. Версия для Z-машины будет обновляться параллельно. Но никаких преимуществ (чего-нибудь, чего нет в Glulx) у Z-машины не видно, поэтому версия для Glulx в итоге будет считаться первостепенной.
Значит ли это что нужно учить новый язык?
Нет, язык Информ точно тот же самый, и даже компилятор не нужно менять (хотя рекомендуем 6.34, чтобы поддерживался весь-весь юникод, включая эмоджи ?). Уже имеющиеся игры очень легко портировать.
Как портировать игру под Glulx?
- Пересохранить исходник игры в UTF-8 (игры под Z-машину пишутся на Win-1251).
- Удалить или закомментировать строчку
Include "CyrDef";
- Избавиться от прямых вызовов Z-машины, например таких как
@erase_window -1;
. Но вероятность встретить такие команды очень мала. - Собрать игру командой вида
..\inform.exe +..\library +language_name=Russian -G -Cu $DICT_CHAR_SIZE=4 AdventR.inf AdventR.ulx
. Если что-то будет не так, компилятор вам подскажет.
А в чём её запускать?
Как всегда можно онлайн через iplayif.com, на десктопе есть Windows Glulxe/Git и Lectrote. На Андроиде Fabularium.
Если есть какие-то вопросы, задавайте в комментариях. До новых встреч!
Я вообще Винфробз люблю, на нем пойдет Глулкс? Выложите хоть файл для пробы что ли.
Блин, откуда такие названия у всего этого? Язык сломаешь!
А вообще Ян, пиши, блин, игры, нафиг все это. Никто в 512 килобайт на русском языке еще не уперся, а картинки нафиг не нужны парсерам. Какое-то неправильное развитие у Информа — куча суеты, а игра за все время только одна. Надо от потребностей идти, а без игр потребностей нет.
Переход на UTF-8 необходимый шаг! Молодцы!
Ты, Волк, зря.
Вот сравни код Информа раньше и теперь:
@<<Будем@>> -- сказал он и выпил.
«Будем», — сказал он и выпил.
Только одно это стоило всей катавасии с глулксом.
Che, я вовсе не зря :)
Человек, который пишет комментарии в блоги на ifiction.ru под ником «Серый» — это не я.