(Микро) обзоры на игры "Червемент-ремейк" и "Червемент-2 ремейк". Интервью с автором игр

Я люблю IF. Наибольшее количество игр, в которые я играл были на INSTEAD и я давно слежу за этой платформой. 2023 не был богат на игры, к тому же в основном это были работы давно известных авторов. Зайдя пару дней назад в репозиторий, я увидел там новую игру. «По старинке» скачал архив для интерпретатора и сел играть. Прохождение игры вдохновило меня сделать на неё обзор, а дальше…

Давайте в хронологической последовательности.

(Микро) обзор на игру «Червемент-ремейк»


Что меня порадовало в этой игре:
  • весёлая музыка и подходящие звуковые эффекты
  • юмор
  • оригинальный сеттинг
  • оригинальная рисовка
  • внимание к деталям

Отдельная история состоит в том, что я хотел опубликовать обзор тут, а уже после этого создать обсуждение на форуме INSTEAD и «по горячим следам» взять интервью у автора. Технические шоколадки (я не мог подтвердить почту на IFhub) привели к тому что всё вышло наоборот: сначала вышло обсуждение и интервью на форуме (сокращённое) и только сейчас я делаю (мини)обзор и выкладываю полную версию интервью для тебя %Username%.

Полная версия интервью с Антоном Гринблатом, автором игры “Червемент" и её INSTEAD-ремейка


Я: Что тобой движет при написании игр и почему ты выбрал именно текстовый жанр?
Антон: Чувствую удовольствие/удовлетворение от того, что что-то создаю. Это если кратко. Если полно — то это лучший способ сделать что-то своё, если ты не художник, не скульптор, не писатель. Я очень люблю компьютерные игры с детства, когда ещё собственного компьютера не было, уже рисовал то, что хотел бы создать сам. И мой лучший друг и одноклассник рисовал вместе со мной — это было прекрасной составляющей нашей прогулки — вместе рисовать техническую мечту. Потом, годы спустя, появился ZX Spectrum (я тогда учился в 7 классе). Из того, что было у меня в доступе, именно квесты были на нём самыми интересными играми и самыми сложными игровыми программами. Это вам не аркады-стрелялки и не абстрактные головоломки с кружочками-квадратиками, а настоящее приключение, где думать да гадать! Так я и пошёл по линии квестов, и по ней пришёл к Инстеду. Ещё одно о родном «спекки»: чтобы загрузить язык программирования, достаточно было включить Спектрум в розетку и подождать 2 секунды, а чтобы загрузить игру — мучиться с магнитофоном не менее десятка минут. Так что программировать было даже доступнее, чем играть, вот.
Я: А как давно (хотя бы примерно) ты узнал про INSTEAD?
Антон: Не очень давно, 2018 год где-то, ближе к началу.
Я: В какие игры ты успел поиграть и какие тебе больше всего понравились/зацепили?
Антон: Если Инстед-игры, то куда уж тут без квантового кота ))) и зацепило, и понравилось. И ещё зацепило — аж до слёз — «Урзи», где от лица кота игра идёт, и лексикон соответствующий. «Метель» прекрасна. НИИ Альфа, где можно редактировать свои же предметы инвентаря. «Краски сентября» с выходом за пределы картины… Я вообще немало Инстед-игр перепробовал, но малый их процент прошёл до конца, и, к сожалению, помню не все названия, даже если помню сюжет. Вне Инстеда — очень порадовали квесты от Сиэрры вроде Ларри и Спейс Квеста, порадовали и все части Кирандии, и Day of the Tentacle, а Teenagent — особенно… Ну, в общем я люблю Point-n-Click, но такой, чтобы герой не погибал.
Я: Почему вселенная твоей игры именно про червей?
Антон: Черви-герои потому, что я рисовать не умею. А тут всего два кадра анимации без рук без ног, ну, если не считать зеркальных. С человечками или осьминожками я бы не справился. Хотя вот с осьминожками честно пытался — grantsoft.github.io/site/games_h5games/Cephalopod/index.html
Я: Интересное решение! А сколько игр по вселенной «Червей» ты сделал до того как начать делать «Червемент-ремейк»?
Антон: Червемент до моего перехода к Инстеду существовал в виде двух частей — первая на Delphi, что я писал ещё студентом — в 2002 году, вторая — на Unity3D, который отчётливо и даже немного насильно, дал мне понять, что Си, даже в его «лёгком варианте» — Си Шарп — это не моё, совсем не моё: второго, юнитишного, Червемента я писал более 7 лет — с июня 2014 по ноябрь 2021, и это не считая подбора движка (до этого пробовал сначала Construct/Construct2 и ещё какую-то мелочь — не помню уже).
Я: А сколько времени у тебя заняла работа над “Червемент-ремейк”?
Антон: Инстед-ремейк Червемента-1 делался с конца марта по конец сентября 2023 года, было бы, может быстрее, если бы не взрослые проблемы и если бы не бестолковость нейросетей, которым я скармливал свои «детские рисунки», чтобы они перерисовали мне фоны для игры, а на выходе более, чем в половине случаев получал вообще не то, что требовалось. Кстати, предмет «Лезвие» в инвентаре Червемента — это моё личное ржавое лезвие, натуральное, сфоткал, устал от бестолковости нейронок.
Я: Насколько я понимаю код игры зашифрован. Это сделано чтобы у игроков не было соблазна искать подсказки и не «прочитать» всю игру до её прохождения или какие-то другие факторы повлияли?
Антон: Фактор только один — я — непрофессиональный программист-самоучка-паскальщик, притом очень ранимый и тяжело переживающий даже конструктивную критику. Не хочу давать повода для насмешек над моими корявыми исходниками, тем более случаи были. В общем, я стесняюсь. А официальную проходилку, может быть и сделаю когда-нибудь… А может, и нет, квест не супер-сложный, если честно.
Я: Я тебя понимаю. Расскажи, в какой OS ты программировал, какой редактор кода/IDE использовал, графический редактор и т.д?
Антон: Первый-первый Червемент нарисован в Пэинте тех лет и написан на Delphi 5 под Windows 2000.
Первый Червемент-ремейк нарисован комбинированием пэинт-картинка--->нейросетевая обработка--->допиливание в фотошопе. Что же касается среды разработки, то могу с гордостью заявить, что мне удалось «приручить» Emacs под Windows 7, поначалу очень не хватало вкладок и recent-меню — добился, сделал, а сегодня даже удалось вживить в Emacs aspell c русским словарём! И это тоже непросто на а) устаревшей б) винде. Так что «второй-второй» Червемент будет, наверно с меньшим количеством орфографических ошибок. Говорю «наверно», потому что некоторые ошибки, которые заметил я сам, aspell пропустил. Как-то так. Ой, забыл про Юнити-версию исходного второго Червемента. Там я работал с MonoDevelop в качестве редактора кода. Есть одна неразгаданная головоломка. По квестовой цепочке и графике Червемент-1-Delphi и Червемент-1-Instead-ремейк мало чем отличаются, но Червемент-1-Delphi десятки лет лежал в свободном доступе, ни у кого, кроме Олега Боша, не вызывая интереса к моей личности/творчеству/персонажу, как Инстед-ремейк. Более того, Delphi-версия более «живая», т.к. и анимация там имеется, и предметы инвентаря значительно лучше прорисованы, но почему-то Инстед это всё легко превозмог. Кстати, Инстед-ремейк я сделал именно по совету Олега Боша, и он же, собственно говоря, меня в сообщество Инстед и затащил ))).
Я: Ого. Ну и последний вопрос, будет ли у «Червемента» продолжение на платформе INSTEAD?
Антон: Смотря, что считать продолжением… На данный момент я делаю ремейк той самой второй части, которую доделал на Юнити в 2021. Так что, можно считать ответ наполовину положительным.

Что же самое интересное? «Червемент-2 ремейк» тоже уже опубликован в каталоге INSTEAD и в него я уже успел поиграть.

(Микро) обзор на «Червемент-2 ремейк»


  • Продолжение приключений червесыщика в стране Червей
  • Снова присутствует юмор
  • Внимание к деталям
  • Разлом 4-й стены
  • прикольная мини-игра внутри игры

(Втянувшись, я пошел проходить другие игры и готовить по ним информацию)
(Готов быть бето-тестером и ваших игр)

Ссылка на 1-ю часть игры в каталоге INSTEAD
Ссылка на 2-ю часть игры в каталоге INSTEAD
ССылка на обсуждение на форуме INSTEAD и сокращённую версию интервью

«Врата Штейна» и что такое цундэрэ

«Врата Штейна» это не совсем обычная визуальная новелла. Основная фишка игры — это нечёткая ветвистость: в любой удобный момент герой может вытащить из кармана мобильник, чтобы кому-то позвонить или написать сообщение. Здесь нет обычных пауз для выбора действий, и даже ключевые развилки можно проворонить, если всё время жать на кнопку «далее».

Сразу скажу, что, по-моему, игра не тянет на четвёртое место всех времён и народов (в рейтинге VNDB, между «Литературный клуб 'Тук-Тук'» (Doki Doki Literature Club) и «Девушки с ограниченными возможностями» (Katawa Shoujo)), но всё-таки это качественная работа, достаточно интересная для игры и разбора.

Первое прохождение «ВШ» от начала до одной из концовок у меня заняло двенадцать часов, сбор всех концовок – двадцать три часа. Аниме по игре я не смотрел, приквелы и сиквелы тоже.

После краткой вставки – история про молодых и шутливых друзей, которые пошли ломать систему и наломали дров. И теперь они спорят, насколько дрова — моэ.

Читать дальше

Открылось голосование на IFComp 2023

Вчера вечером были выложены игры международного конкурса IFComp 2023.

На конкурс было принято 75 игр на английском языке, из них всего 6 на Ink, 22 на Twine и 20 на Inform.

Одну из работ придётся запускать на ПЭВМ Commodore 64 или, если у вас нет под рукой подходящей машины, на её эмуляторе.

Игрокам, которые не пропустили конкурс «ЗОК-2023», возможно, будет уже знакома работа «Kaboom» (Twine, анонимный автор, иллюстрации Веры П.), переведённая и переработанная с игры «Бабах» (FireURQ, без иллюстраций).

В это время конкурс интерактивной литературы на русском языке всё ещё принимает заявки до 19 ноября.

Фестиваль ИЛ на украинском языке откроет подачу игр с этого четверга, джем игр на испанском — 31 октября, конкурс игр на французском закончится в начале следующего года. Авторов книг-игр на болгарском ждёт отдельный конкурс с предварительной записью до 15го числа.

Пакет QSP для Sublime Text

Когда-то я публиковал пост о начале работы над билдером QSP-игр для Sublime Text. С тех пор много печенья съедено, и много сухарей насушено.

Теперь Билдер не является основной частью проекта, а только лишь одной из составляющих полноценного пакета для Sublime Text. Теперь внутрь пакета упакованы и сам билдер и различные вспомогательные скрипты, подсветка синтаксиса и небольшая коллекция полезных сниппетов, и много чего ещё.

Установка пакета сократилась до нескольких простых действий:
  • Качаете последний релиз со страницы релизов.
  • Распаковываете скачанный архив.
  • Копируете файл
    QSP.sublime-package
    в папку Packages рядом с установленным Sublime Text (Например, в
    C:\Program Files\Sublime Text\Packages\
    ).
  • Подсветка синтаксиса, плагины и прочее заработают при следующем запуске Sublime Text.

Более подробная информация о том, как работать с пакетом и встроенным в него билдером, представлена на гитхабе.

Есть и инструкция для быстрого старта: github.com/AleksVersus/JAD_for_QSP/blob/master/siaiz.md

Буду рад любым замечаниям по работе пакета. Спасибо, если пользуетесь.

Полуночная месса

«Midnight Mass — это короткое текстовое приключение, которое даст волю вашему творческому мышлению!


Оснащенные инструментами, позволяющими создавать разветвления, необязательные диалоги и создавать запланированные события всего в несколько кликов, мы призываем вас проявлять творческий подход и создавать истории, которые ВЫ хотите рассказать!


Мы надеемся, что в сочетании с примером начальной истории в качестве основной игры вы получите немного жуткого повествования, и вам понравится наш небольшой проект, и вы получите удовольствие, создавая свои собственные приключения!»


В комплект входят демонстрационная игра, визуальный редактор и плеер приключений.
Инструмент написан на движке Godot
https://godotengine.org/

Ссылка:
https://wumpusgimlet.itch.io/midnight-mass

Дебажим «Сектор 471»

Здорово, когда все компоненты в игре работают слаженно, словно единый механизм. В «Trouble in Sector 471» механизм дал сбой. Нет, с самой игрой всё в порядке, всё-таки пятое место на последнем IFcomp, как-никак. По сюжету мы оказываемся на какой-то футуристической фабрике в роли робота-, хм..., -дебаггера. Как водится, что-то пошло не так, и фабрику наводнила полчища багов. Самых, что ни на есть, натуральных. С лапками. Собственно их поиском и уничтожением нам и предстоит заняться.

Читать дальше

Три поросёнка и поход за стройматериалом

Сказки это замечательно. А для интерактивной литературы — настоящий клондайк и находка. Сюжет какой-нибудь «Курочки Рябы» прекрасно ложится на механику классической парсерной головоломки. Ведь чтобы разбить яйцо Деду придётся разыскать и собрать вместе Бабку, Внучку и Жучку у которых, похоже, какие-то тёрки друг с другом. По ходу действия, пенсионер узнает, что не всё так просто как говорят по телевизору; яйцо на самом деле заколдованное, а чтобы хакнуть чары нужно незаметно проникнуть в логово Бабы Яги. И никто кроме Мышки этого сделать почему-то не может…

Ладно, я тут немного увлёкся, но в общем, вы уловили мысль. К сожалению, немногие авторы берутся «интерактивить» этот жанр. Автор игры «Три поросёнка: Наф-Наф и Серый волк» [1] — из тех немногих, кто взялся и у кого это даже неплохо получилось.
Читать дальше

BOOK OF QUESTS - Текстовые квесты в Телеграм!



BOOK OF QUESTS — первый сборник текстовых квестов и визуальных новелл, созданный на платформе мессенджера Телеграм.

Игра создана в формате бота и включает в себя множество квестов, в самых разных жанрах: Фэнтези, Ужасы, Детективы и 18+.
Читать дальше

Закончить парсерную игру спустя сорок лет: история Ferret

фото экрана машины со списком файлов

Игра «Ferret» (англ. «хорёк», также «рыскать, искать спрятанное») была впервые опубликована в 1982 году. Первая версия была написана командой анонимных авторов и вышла на 16-битных мини-компьютерах Data General AOS. После продолжительного перерыва было решено портировать игру с AOS на более распространённую операционную систему DOS; первая версия порта вышла в 2009 году. После портирования авторы решили дописать концовку, и вот в этом году игра была полностью завершена.

(На иллюстрации: AOS MV3200 третьего поколения с 24Мб памяти, модель ок. 1985 года, фото foxdata.com)
Читать дальше

qSpider 0.13.0

Вышла новая версия плеера qSpider — 0.13.0

Новые фичи:
  • msg и input больше не закрываются по клику вне модалки, улучшена поддержка клавиатуры — закрытие по Esc, кнопка в msg теперь фокусируется при открытию (соответственно нажатие пробела или Enter аналогично клику на кнопку)
  • в браузерную версию добавлена возможность открытия файла с списком игр или отдельной игры через URL — например https://qspfoundation.github.io/qspider/?config=https://qspfoundation.github.io/qspider/game/game.cfg загрузит файл конфига, а https://qspfoundation.github.io/qspider/?game=https://qspfoundation.github.io/qspider/game/skazka/skazka.qsp — то есть теперь можно просто выложить файл игры на какой-то сервер и запускать через qspfoundation.github.io/qspider, здесь пока есть ограничение — на сервере должна быть включена поддержка CORS (я занимаюсь возможностью обойти это ограничение)
  • добавлена поддержка запуска игры в текстовом формате qsp — для этого файл должен быть с расширением `.qsps`, поддерживаются кодировки utf-8 и utf-16le (qgen экспортирует в этой кодировке), но я рекомендую utf-8 поскольку файл будет значительно меньше по сравнению с utf-16le
  • для запуска плеера из qgen больше не нужен дополнительный bat файл
  • в десктоп плеере теперь доступна панель разработчика как в обычном браузере

Исправлены следующие баги:
  • сепаратор в меню выводился отдельным пунктом меню
  • исправлена поддержка 4-го недокументированного параметра в rgb функции отвечающего за альфа канал (прозрачность)
  • исправлен первый запуск (иногда при запуске из qgen не открывалась игра)
  • исправлена поддержка html — теперь все аттрибуты тегов должны сохраняться (раньше большая часть терялась при отрисовке)
  • исправлено отображение названия игры в toolbar — раньше длинное название ломало отображение
  • исправлен креш плеера при использование ряда тегов

В процессе работы часть кода была вынесена в отдельные npm пакеты, доступные без плеера
@qsp/converters — в пакете содержатся функции для конвертации из текстового формата qsp в бинарный и обратно
@qsp/cli — консольная утилита для конвертации аналогичная txt2gam (требует наличия усnановленой NodeJS, но может запускаться на linux и mac)
@qsp/wasm-engine — ядро QSP собранное в WebAssembly и JavaScript обвязка для запуска игр, пакет специально собран таким образом что его можно запускать как в браузере так на NodeJS сервере