Данный пост является дополнением к предыдущему по данной теме. К вот этому: ссылка.
Если вы его не читали, вероятно, вы ничего не поймёте, так что прочитайте на всякий случай.
А теперь начнём.
Всё это время я продолжал свои эксперименты с нейросетями в рамках текстовых ролевых. Перепробовал кучу разных сетей, отдал им кучу денег и в итоге пришёл вот к чему:
Лучшей для данного рода занятий мне показалась вот эта: @gpt3_unlim_chatbot, и вот почему:
1. Разнообразие сеттингов
Она водит игры по самым разным вселенным — от Древних Свитков и Звёздных Войн до Sea of Thieves и Arx Fatalis и даже по твоему авторскому миру. Ты только распиши его нюансы — и она постарается их соблюсти. Так что разгуляться есть где.
2. Точная атмосфера
Она почти всегда идеально попадает в атмосферу конкретного сеттинга, отлично передавая его отличительные черты.
3. Следование личным хотелкам
Она выполняет почти все требования к сюжету. Если ты хочешь отыграть в сюжете какую-то конкретную сцену, встретить определённого персонажа или пройти конкретный путь развития своего героя — она это сделает.
4. Классное исполнение заявок
Она хорошо следует твоим заявкам. Данная нейросеть практически идеально исполняет даже самые безумные запросы и, более того, часто подкидывает идеи для таких экспериментов.
Но у неё есть и минусы:
1. Лорные ошибки
Их не очень много, но они присутствуют. Особенно это становится заметно, если попросить её провести какой-то готовый сюжет без изменений. Если не расписать его досконально, ты получишь историю по мотивам, а не точную копию. Она передаст атмосферу и некоторых персонажей, но большую часть переделает. Плюс это или минус — решать вам.
2. Огромная любовь к отсебятине (но хорошей)
Её хлебом не корми — дай придумать нового персонажа, фракцию или гильдию. Но, справедливости ради, её отсебятина хорошо вписывается в мир и не выбивается из общего стиля. Пару раз я даже не сразу понял, что некоторые фракции она придумала сама. Опять же, это можно исправить фразой: «Такой фракции нет в каноне, замени», если вдруг тебе не нравится её придумка.
3. Передача управления миром игроку
Ей частенько нравится задавать тебе вопросы, за которые ответственен гейм-мастер (то есть она сама). Иногда она спрашивает в духе: «Что ты видишь в пещере?» — вместо того, чтобы описать окружение. Эта проблема решается фразой «Реши сама», и игра продолжается дальше нормально, но иногда такие моменты учащаются и начинают напрягать.
4. Цена (небольшая, но заметная)
Если не вдаваться в подробности, то стоимость одной игры продолжительностью около часа обойдётся вам примерно в 200 рублей. Стоит оно того или нет — решайте сами. Лично мне нормально.
Несколько примеров
Я не буду вдаваться в подробности сюжетов, в которые играл, но выделю самые запомнившиеся:
1. Искупление Охотника
Отличная история по Звёздным Войнам, главным героем которой стал бывший джедай, скрывающийся от Империи и выбравший путь охотника за головами. В ходе истории развернулись классное расследование, отличный экшен, моральные дилеммы, рост персонажа и красивый финал.
2. Сын Империи
История в мире The Elder Scrolls, где главный герой — имперский боевой маг, взявший на себя ответственность за восстановление разграбленного поселения на границе с Морровиндом. Получился этакий миниатюрный градостроительный симулятор с делегированием обязанностей, строительством новых зданий, развитием торговли и всеми сопутствующими делами.
3. Цена Добычи
Приключение в мире Sea of Thieves о бравом морском волке, решившем в одиночку одолеть Кракена. Классическое пиратское приключение переросло в симулятор выживания на необитаемом острове с постройкой базы, поиском ресурсов и раскрытием древних тайн.
4. Золото Дальних Земель
Очередная история в Sea of Thieves. На этот раз в центре сюжета оказался опытный торговец, решивший основать свою торговую империю на бескрайних берегах Моря Воров. Получилась интересная история практически без экшена, но с колоритными персонажами и классным менеджментом торговой компании.
Промежуточные итоги
Я ещё продолжу свои тесты. В будущем есть идея попробовать её в качестве игрока, а не мастера — посмотрим, что из этого выйдет.
А пока могу сказать одно: она хоть и не идеальна, но уже сейчас способна погрузить тебя в мир любимой вселенной и подарить отличное приключение.
P.S.
Если тебе интересно моё творчество, мнение об играх, сериалах и других штуках — подписывайся на мой телеграм: @jackdaws_nest_channel.
- Непрекращающаяся работа над балансом существующих вещей/монстров/нпс/боссов. - Добавление новых предметов, сетов. - Удаление предметов, потерявших актуальность. - Корректировка некоторых зелий. - Корректировка некоторых заклинаний. - Постепенно все оружие в игре приходит к общей, единой, понятной и более интересной системе в своих физических характеристиках (подробности по завершению всей работы). - Корректировка боссов тир 2 (регенерация ослаблена в два раза). - Всем расам добавлен базовый бонус при старте к характеристике Выносливость (+10) и к навыку Атлетика (+10). [ Это сделано для того, чтобы маги и воины во время бега не падали без сил каждую минуту, ведь в BTW без стамины ведение боя невозможно ]. - Некоторые правки перевода и перевод непереведенного. - Некоторые визуальные правки. - Добавлено +100 лиц от маккома, а так же обновлены/переработаны старые. - А так же ряд иных дополнений.
Где нас можно найти/скачать клиент/больше узнать о проекте?
Преодолев большую часть пути, наши герои продолжают своё путешествие, но новые испытания не заставляют себя ждать. Спасаясь от преследователей, они встречают неожиданную компанию, оказавшуюся в беде. Протянув им лапу помощи, путники получают шанс избавиться от погони. Отправившись дальше, герои совершают роковую ошибку, которая приводит к опасным последствиям. Природа сама бросает им вызов, вынуждая искать укрытие в глубокой пещере. Но укромный уголок оборачивается новой угрозой — в темноте их поджидает существо, чьи намерения пока остаются загадкой…
В январе 2021 года я, как обычно, просматривал контент на теперь уже заблокированном видеохостинге и натолкнулся на интересные видеоролики о создании игр и работе студентов. Это были рекламные материалы одной компании, предлагающей курсы по геймдеву. Хотя я и не собирался проходить эти курсы, поскольку имел представление об их качестве, сама идея создания игры крепко засела у меня в голове.
Через пару дней я решил попробовать заняться чем-то интересным просто ради развлечения и начал с выбора жанра будущей игры. Изначально выбор пал на RTS (коим фанатом жанра я являюсь) с микроменеджментом и развитыми, продуманными производственными цепочками.
Однако во время новогодних праздников я предавался ностальгии, играя в старые игры, включая серию Gothic. Тогда у меня возникла мысль: "А что, если создать игру подобного жанра, но добавить в неё элементы онлайн-игры – иммерсивный мир, расписанный день у NPC, разнообразные диалоги?"
Сказано - сделано! И я твердо определил будущий жанр. Я не планировал тысячи игроков. Для данного мира лучше делить на несколько независимых друг от друга серверов, чтобы изрядно не портить происходящую атмосферу кучей стоящих афк игроков в стартовых локациях.
Первым делом я набросал короткий прототип того, каким должен был стать мой проект, и начал продумывать основные моменты:
Вид от третьего лица;
Система диалогов;
Отсутствие бессмысленных заданий вроде «убей 100 волков, а затем еще »;
Смена дня и ночи, влияющая не только на освещение, но и на поведение NPC, которые будут вести себя естественно: спать, работать, менять свои диалоги в зависимости от развития сюжета;
Интерактивность игрового мира: взаимодействие с мобами, NPC и объектами. Можно разжигать кузницы, сидеть на лавках, зажигать и тушить факелы, готовить еду у костра;
Квесты, связанные с сюжетом;
Поддержка многопользовательского режима.
Первые запуски движка и изучение инструментария
Начало разработки
Я никогда не боялся трудностей и прекрасно представлял какой длинный путь предстоит. Но равно с этим необходимо ставить себе реалистичные цели,, чтобы это не превратилось в очередного “убийцу WoW”, у которого будет бесконечная стадия разработки и затем проект так и не увидит свет.
Определился с движком, открыл документацию, начал изучать программирование на бесплатных источниках (поисковики к счастью всегда дадут информацию ищущему). Не ленился читать и задавать вопросы на форумах и в чатах.
И вот появился первый прототип, который очень далёк от того, что мне необходимо, но начало уже положено:
Наступила рабочая пора, праздники закончились, но азарта стало только больше. Рабочий день (основной работы + времени на разработку игры) было принято решение увеличить до 12-14 часов в сутки на протяжении первых 3х лет.
Небольшой лайфхак для тех, кто сгорает не доделав проект до конца: разбейте задачу на этапы и выполняйте поэтапно. Чем больше этапов - тем лучше. Вы будете прекрасно видеть свой результат от того, что было, до того что имеется на текущий момент. Это будет вас мотивировать делать дальше.
Мультиплеер.
Сделав мини прототип было принято решение двигаться сразу в сторону мультиплеера, чтобы на фундаменте понять возможности и не переделывать проект с нуля спустя несколько лет.
Спустя 6 месяцев изучения C++, php, sql, самого движка UE с его неотъемлемой особенностью в виде Blueprints и получения боли от потраченных нервов наконец-то были готовы:
Полноценный выделенный общедоступный сервер с панелью управления, к котором люди могут подключаться и видеть других игроков. Установлены базовые античиты и многократно перерабатывалось на момент уязвимых мест.
В дополнение игрокам доступен кооперативный режим для игры с друзьями или в соло, если игрок не хочет играть со всеми или общедоступный сервер по какой-либо причине в данный момент недоступен. Так сказать небольшая альтернатива при фатальном запуске или неожиданном падении оборудования.
Наверное, это была самая сложная часть из всех, нюансов были не сотни, их были тысячи и список багов не умещался в моих заметках. Но для этого и существуют тесты. В данный момент тестирование уже проводилось с несколькими игроками одновременно.
Полностью рабочая авторизация из VK Play, Steam и объединение игроков из разных площадок в одну с помощью сервис EOS (Epic Games). Да, необходима небольшая регистрация на сайте эпиков, но взамен вы получаете стабильный автологин без необходимости каждый раз вводить данные и игру с друзьями стима и вк одновременно.
Продолжение разработки
После того, как я убедился, что на данный момент мультиплеер скорее жив, то пора вернуться к визуалу и механикам самой игры.
Игру решил назвать “The Story Page”. Я не знаю почему именно так, путем перебора многих названий мне показалось данное наиболее созвучным и легко сокращаемым до “TSP”.
Что могу сказать. Это был сложный момент. Поскольку я был единственным членом команды разработчиков - пришлось делать самому буквально всё. Игру, страницу, группу, тест, изучать маркетинг и прочее. Собственно, я применил всё, что смог с трудом узнать, вместе N-ым количеством денег.
Думаю можно упустить многие моменты разработки и далеко не всем будет интересно о том сколько ошибок я совершил, из-за которых начинал всё практически заново.
Итак, спустя ещё 3 года реализовано следующее:
Оптимизация.
Да, это самый первый пункт и самый важный как по мне. У меня изначально было видение выжать максимум, но из слабого железа. В основном я провожу активные тесты на Rysen 5500, GeForce GTX 1650, 16 gb ОЗУ и пытаюсь держаться отметки 40-60 фпс на средне-высокой графике. Впоследствии соберу статистику игроков, пожелания и от сюда буду исходить стоит ли наваливать крутого графона или всё же оставить как есть с небольшими косметическими изменениями, но чтобы могли играть даже на примитивных на сегодняшний день как у меня системах.
Атмосфера.
Здесь не долго думая решил пойти по классическому пути - мрачному фентезийному средневековью, но без радуги, бронелифчиков, 5ти метровых мечей и неуместных “скинчиков”. Сурово, жестоко, реалистично.
Редактор персонажей.
Чтобы можно было создать того, кто действительно по душе, а не довольствоваться заготовками из 10 вариантов
1/2
НПС и мобы с социальным поведением.
Каждый НПС имеет своё имя, он для чего-то служит: будь то торговец, квестодатель, учитель и т.д. У них имеется социум: к примеру проходящий мимо наёмник не проявится “сочувствия” к обороняющемуся жителю деревни, который отбивается от случайного игрока. В то же время поможет другим наемникам в данной борьбе. Ровно как и жители деревни встанут на защиту своего соседа. Ну или разбегутся, т.к. каждый социальный кластер может делиться еще и на их поведение от трусливого и беззащитного до агрессивного по отношению к другому класстеру. Более простой пример - это лесной олень, не видящий опасности в зайце, но убежит от волка едва его увидев.
Распорядок дня.
Раз уж я отталкиваюсь от упомянутой выше игры, то без этого разработка была бы преступлением :) В игре присутствует динамическая смена дня и ночи, смена погоды. Поверхность земли, объектов, одежды покрывается снегом или мокнет от дождя. Ночью многие НПС идут спать или занимаются иными делами отличными от дневных. У каждого из них имеется своё место пребывания.
Открытый мир
Так часто слышу это словосочетание в преимуществах проектов. Так часто он остается пустым и скучным… Здесь я стараюсь соблюсти баланс и не упираться в гигантизм масштабов, а использовать “вертикальность” мира. Сделать его более интересным для исследования, избежав при этом более 1 минуты беготни в одну точку по пустому полю. Весь мир и каждое дерево создается вручную без использования генераторов, нейросетей и вспомогательных программ. Да - это долго, но зато каждый метр становится обдуманным, хоть и не без ошибок, которые устраняются по мере их обнаружения.
Атрибуты, статы защиты\атаки
Раз уж заикнулся про жанр RPG, то конечно же каждый элемент одежды, брони, оружия должен содержать в себе защиту от урона (а это 12 типов прямого урона и 2 естественных). Нет универсальной брони и одежды, чтобы защитить от всего. Везде действует принцип: “камень-ножницы-бумага”. Тяжелая броня хорошо защищает от стрел и многих физических типов урона, но много весит и хуже воспринимает защиту от 2 естественных - это от холода и жары. В латах действительно тяжело передвигаться как по жаркой пустыне, так и во время морозной вьюги, когда броня начинает замерзать и покрываться льдом, приводя персонажу к постепенному замерзанию.
На данный момент помимо холода и жары реализованы так же такие типы урона, как: Режущий, Колющий, Дробящий, Рубящий, а так же магия данных типов: Огонь, Вода, Ветер, Земля, Свет, Тьма, Чистая магия, Магия крови.
Каждый тип может спровоцировать определенный эффект от воспламенения, до кратковременной потери видимости.
Текущая версия инвентаря на момент написания статьи
Одежды персонажей учитывающая пол персонажа.
Более 200 предметов уже добавлены, столько же будет добавлено позже, на данный момент в этом нет необходимости.
Селфи вместе с отдыхающими нпс
Инвентарь и торговля
Возможность торговли с НПС и другими игроками по всем канонам мультиплеерных игр.
Диалоговая система
Диалоговая система в возможностью различных разветвлений и вариантов выбора ответа. В последствии планируется изменять награду и даже отношения НПС к игроку в зависимости от выбранных веток диалога.
Боевая система
Боевая система представляет собой классическую полную нон-таргет систему, включая луки, арбалеты и магию. Для онлайн игр многим это может показаться сомнительным решением, но я решил пойти по пути обдуманных действий, а не закликивания кнопок по таргету.
1/3
Магия
Разнообразие магии. От классического Fireball, свойственного многим фэнтези играм, до метеоритных дождей, защитных куполов и сферы, замедляющей время внутри нее (да-да, аналог Faceless Void но в жанре mmorpg с открытым миром для тех кто в теме 😂).
Кулинария и крафт
Возможность добычи ресурсов и создания новых предметов с помощью сложных, но многим привычных деревьев крафта: железо и уголь перерабатывается в сталь, хлопок в ткань, из шкур выделывается кожа и только после этого можно изготовить одежду и броню. Ну или сварить рагу из сорванных на грядках овощей и набрав воды из колодца.
Создание гильдий
Данная система еще в рамках теста и может претерпеть множество изменений. На данный момент гильдии могут создавать игроки и полностью управлять ими. Но я всё же планирую свести их к фракциям, которые изначально присутствуют в мире и игроки могут вступать в данные фракции, повышаясь по рангу выполняя определенные задания.
Что планируется?
На данный момент я работаю над наполнением мира контентом, созданием новых продуманных локаций. В ближайшее время будет доступна система бизнеса, при которой игроки смогут приобретать дома и инфраструктуру, а также управлять ей. Пример: игрок сможет купить таверну, если она принадлежит НПС, нанять в ней работников (как игроков, так и НПС). Каждая продажа в данном заведении приносит доход владельцу и автоматически отправляет налог в казну города. Но и за товарами и зарплатами работников также необходимо следить. Нет товаров - нет продаж.
Из ближайших апдейтов параллельно готовится механика мировых событий: осады игроков (некоторые фракции могут участвовать в осаде города и захватить его), нападения толп НПС.
1/5
Работаю над локациями
Итоги
Если подытожить вышесказанное, то делать свою игру в одиночку, очень тяжело и не так весело как казалось на первый взгляд, но очень интересно. Ставьте себе разумные рамки сложности выполнения и временных затрат. Если собираетесь делать крупный проект в одиночку, то трижды подумайте хватит ли вам сил, денег и терпения. И, конечно же, если начали, то доводите дело до конца! Пробуйте запускать ваш прототип для тестов со своими друзьями, но не прислушивайтесь к хейтерам :) Со стороны лежа на диване всегда “виднее” как должно быть.
На этом все! Спасибо, что прочитали мою историю. Буду рад, если вы поддержите The Story Page добавив её в список желаемого, лайком в новостях, да или просто добрым словом. С удовольствием отвечу на вопросы, если они у вас возникли. Всем добра!
P.S.: Пользуясь случаем, если вы дошли до этого места, я был бы благодарен вам за добавление моей игры в списки желаемого и подписку в группы ВК и ТГ 🙂
На этот раз мы играем в НРИ "Корни", первый эпизод уже на канале.
Эта история рассказана старым странствующим мудрецом в канун нового года. Издавна двенадцать покровителей Леса ежегодно сменяют друг друга на посту правителя, каждый по-своему помогая жителям чащ справляться с жизненными трудностями. Мудростью своей они дополняют друг друга и никому их них власть не принадлежит единолично - так соблюдается баланс в жизни Леса. Но вот хрупкое равновесие грозит быть нарушенным, когда один из двенадцати пропадает накануне своего вступления на пост правителя. Приключилась беда или это чей-то злой умысел? Четырём бравым бродягам выпадает честь попытаться восстановить гармонию в родном Лесу и спасти главный праздник года.