Эссе о разработке игр, мышлении и книгах

Русскоязычная GPT-2+ от Сбера vs «Сказка»

Сбер выпусти свой генератор текста, основанный на GPT-2. Я попробовал скормить ему сказочные описания действий героев. Проверял на jupiter note, опубликованной в вебе, так что вы тоже можете с ней поиграть.

Обновлено: говорят, использовали на GPT-3, а GPT-2 с доработками.

Получилось средненько — не на тех текстах всё-таки нейронка обучалась. Вот если бы ей фэнтези скормили… Текст получается осмысленный, но чувствуется явная нехватка контекста.

Самые интересные примеры под катом.

Далее

Концепт-документ «Сказки»

Скриншот из ранней девелоперской версии игры.

Скриншот из ранней девелоперской версии игры.

Наткнулся в своих завалах на оригинальный концепт-документ Сказки от 2012 года. Привожу с минимальными правками.

Как видите, не всё удалось реализовать, но концепция более-менее соблюдается.

Также у меня какое-то время было хобби — писать подобные документы на свои идеи. Если вам интересно, напишите в комментариях. Если наберётся достаточно заинтересованных людей, буду постепенно выкладывать документы в блог.

Далее

Процедурная генерация и прочая математика

Открыл для себя доклады, которые Squirrel Eiserloh делал для математической секции GDC. Очень наглядно и доступно рассказывает о процедурной генерации, случайности и прочей математике.

Доклады:

Доклады о процедурной генерации особенно интересны.

Генерация подземелий — от простого к сложному

Что у нас должно получиться.

Что у нас должно получиться.

В этом уроке рассказывается, как запрограммировать подземелье. Если вы не программист, вам будет интересно почитать как придумать подземелье.

Несколько вечеров проверял идею генерации космических баз. Космическая база в итоге не получилась, а вот на добротное подземелье результат похож. Поскольку шёл от простого к сложному и никакой суровой магии не делал, то решил переработать код в урок по генерации подземелий на Python.

В итоге у нас получится генератор подземелий со следующими свойствами:

  • Комнаты будут соединены коридорами.
  • Топологически подземелье будет иметь форму дерева. Добавить циклы будет элементарно, но уже в качестве домашнего задания.
  • Будет настраиваться количество комнат, их размер, «уровень ветвления».
  • Подземелье будет располагаться на клеточной сетке (состоять из квадратных клеток).

Весь код можно найти на github.

Кода в посте не будет — все используемые подходы легко описываются словами.

Для каждого этапа разработки в репозитории будет создан отдельный тэг, содержащий код на момент завершения этапа.

Задача этого урока не столько научить программировать генераторы подземелий, сколько показать, что кажущиеся сложными вещи на деле довольно просты, если их правильно разбить на подзадачи.

Далее

Видео с изменениями карты мира «Сказки» с 2013 года

Изменения карты мира «Сказки» с 2013 года.

Смотреть лучше в максимальном качестве.

Карта изменяется динамически, исходя из действий игроков и своей внутренней логики.

По сути реализована небольшая модель формирования ландшафта с учётом климата и «точек влияния», контролируемых игроками.

Просчитываются и меняются: высота, температура почвы/воздуха, направление ветра, влажность, плодородность земли, типы растительности.

Поверх этого отображаются обобщённые биомы (пустыня, джунгли, горы, etc). Для каждой клетки выбирается биом, который лучше всего ей подходит.

По ссылкам с ютуба можно скачать более подробные ролики.