Команда модеров разрабатывает новый движок для Fallout 4
Я сделал перевод +пара скриншотов.
Как мы создаем G.A.R.D.E.N с использованием ИИ и текущий статус проекта
В последнее время я много слышал о применении ИИ в разработке игр, особенно в таких проектах, как наш и OpenNV. Я решил поделиться информацией о том, как мы его используем, что именно создаем и текущем статусе проекта G.A.R.D.E.N.
Что такое G.A.R.D.E.N.?
G.A.R.D.E.N. – это наш проект с открытым исходным кодом, направленный на создание движка, необходимого для запуска контента из Fallout 4 в Godot.
Мы не используем Creation Engine внутри Godot или не модифицируем оригинальный исполняемый файл от Bethesda. Мы разрабатываем собственную реализацию, используя C# и кастомную версию Godot, собранную из исходного кода.
Наша цель – предоставить Fallout 4 контент в современном, открытом движке, который даст разработчикам и моддерам больше контроля над тем, как всё работает.
Мы также стремимся к совместимости с существующими форматами данных, плагинами, скриптами и модами Fallout 4, насколько это возможно.
Наша команда и использование ИИ
Наша команда состоит из разработчиков игр, разработчиков программного обеспечения и художников, все работают над разными частями проекта.
ИИ также является частью нашего процесса разработки, так же как и другие инструменты, которые мы используем.
ИИ уже используется во многих компаниях, включая крупные игровые студии. Он помогает с программированием, отладкой, тестированием, работой с активом и инструментами разработки.
Мы используем различные модели ИИ для помощи в кодировании, отладке, проверки реализации, написания тестов, проведения исследований технических проблем и создания документации.
Это позволяет нам работать над определёнными задачами гораздо быстрее, особенно когда дело касается большого количества кода и систем, используемых в таком проекте.
Но использование ИИ не меняет основные инженерные требования. Код должен компилироваться, системы должны работать вместе, и результаты должны быть протестированы.
Например, переработка Papyrus – это не просто генерация кода C#. Нам нужно понимать, как работает оригинальная система скриптов, реализовать необходимые функции и проверить их на реальных скриптах и игровых данных.
Мы также используем автоматизированное тестирование, регрессионное тестирование и код-ревью на протяжении всего процесса разработки. Наличие кода, успешно прошедшего тестирование, полезно, но главная цель – чтобы всё работало правильно вместе в движке.
Для нас ИИ – это просто ещё один инструмент разработки, который помогает нам двигаться вперёд.
Как работает G.A.R.D.E.N.
Мы используем собственную версию Godot, собранную из исходного кода с поддержкой двойной точности и интеграцией C#.
Большая часть систем, специфичных для Fallout, написана на C#, а Godot используется для таких вещей, как рендеринг, физика и другие функции движка.
Вместо распространения оригинальных файлов игры от Bethesda, наши инструменты работают с файлами из вашей собственной копии Fallout 4.
Конвейер конвертации обрабатывает модели, текстуры, материалы и другие активы в форматы, которые Godot может использовать. Worldspaces и ячейки преобразуются в сцены, а ESM и ESP плагины считываются для восстановления мира и записей в игре.
Мы также перерабатываем виртуальную машину Papyrus, чтобы оригинальные скрипты могли выполнять без среды выполнения от Bethesda.
Цель – сохранить совместимость с существующим контентом Fallout 4, предоставляя разработчикам доступ к базовым системам движка.
Что мы делаем
Сейчас в разработке находятся несколько ключевых частей проекта.
Потоковая передача мира
Одной из первых крупных систем, над которыми мы работали, является потоковая передача мира.
Вместо загрузки больших частей мира сразу, движок динамически загружает и выгружает ячейки по мере перемещения игрока по окружению.
Мы уже протестировали более крупные объемы активных ячеек, включая область размером 7x7, в отличие от стандартного 5x5.
Мы также работаем над бесшовными переходами между интерьерами, когда интерьеры могут загружаться в фоновом режиме перед входом игрока.
Papyrus Scripting
Это одна из самых крупных частей проекта.
Fallout 4 использует Papyrus для квестов, взаимодействия с объектами, игровых логик и многих других систем.
Мы разрабатываем собственную виртуальную машину Papyrus, включая выполнение скриптов, нативные функции, события и интеграцию с нашими системами движка.
Мы также разрабатываем конвейер конвертации и кэширования скриптов, чтобы они не требовали обработки каждый раз при запуске игры.
Наша цель – поддерживать оригинальные скрипты и существующие моды, не требуя ручного переписывания всего.
Моддинг Framework
Моддинг – ещё одна ключевая область.
Поскольку наш движок с открытым исходным кодом, и большинство игровых систем написаны на C#, разработчики могут напрямую работать с движком, вместо того чтобы полагаться на "хочки" или впрыскивание в исполняемый файл.
Моды F4SE не будут работать напрямую, поскольку они разработаны специально для движка Bethesda, но их функциональность можно воссоздать в нашем движке и с помощью API для моддинга.
Мы также разрабатываем инструменты для настройки пользовательского интерфейса, что упрощает создание и модификацию интерфейсов без необходимости обратной разработки оригинальных систем.
Наша долгосрочная цель – сделать моддинг более доступным, одновременно предоставляя опытным разработчикам больше контроля.
Текущий статус проекта
G.A.R.D.E.N. находится в активной разработке.
У нас уже есть работающие инструменты конвертации, потоковую передачу мира, функциональность рендеринга и несколько систем движка, которые уже реализованы или находятся в стадии тестирования.
Однако мы ещё не достигли стадии, когда Fallout 4 можно будет полностью играть с начала до конца в нашем движке.
Нам ещё предстоит проделать работу по совместимости с Papyrus, игровыми системами, ИИ, анимациями, квестами и интеграции всего в единое целое.
Система, которая работает самостоятельно, не означает, что игра готова. Большая часть нашей работы сейчас связана с объединением этих систем и обеспечением их корректной работы с реальным контентом Fallout 4.
Мы продолжаем делиться скриншотами, техническими демонстрациями и новостями о ходе разработки по мере появления новых функций.
Почему мы это делаем
Я много работал с модами Fallout 4, F4SE и обратной разработкой, и один вывод становится очевидным: сколько усилий требуется для работы с движком, который у вас нет исходного кода.
Это одна из основных причин, почему мы создали G.A.R.D.E.N.
Имея движок с открытым исходным кодом, мы можем действительно изменять системы, отвечающие за эти ограничения.
Хотите изменить способ потоковой передачи мира? Вы можете это сделать.
Хотите построить совершенно другой пользовательский интерфейс? Вы можете.
Хотите добавить новые игровые механики или изменить поведение существующих систем? У вас есть доступ к самому движку.
Вместо того, чтобы тратить время на то, чтобы понять, как взаимодействовать с закрытым исполняемым файлом, разработчики могут напрямую работать с теми системами, которые они хотят изменить.
Мы также хотим, чтобы этот проект был полезен не только для Fallout 4. Инструменты, улучшенные движки и фреймворки, которые мы создаем, могут быть полезны для других проектов, использующих Godot.
Что дальше?
Прямо сейчас мы сосредоточены на продолжении совместимости с Papyrus, улучшении рендеринга и потоковой передачи мира, а также на более тесной интеграции игровых систем.
Мы также работаем над более полными демонстрациями в движке, чтобы люди могли увидеть, как всё работает, в отличие от отдельных тестов и скриншотов.
Проект с открытым исходным кодом, и нам всегда интересно общаться с другими разработчиками, моддерами, художниками и всеми, кто работает над подобными технологиями.
Если вы заинтересованы в участии, слежении за развитием проекта или просто в том, чтобы узнать, как всё работает, добро пожаловать в сообщество.
Важное примечание о контенте Bethesda
G.A.R.D.E.N. – это независимый проект, разработанный сообществом, и он не связан, спонсируется или одобрен компанией Bethesda Softworks, ZeniMax Media или Microsoft.
Мы не распространяем оригинальные игровые файлы. Наши инструменты предназначены для обработки контента локально с вашей собственной лицензионной копии Fallout 4.
Наша цель – разработать независимый движок и фреймворк для моддинга с уважением к правам оригинальных создателей.
Спасибо всем, кто следит за развитием проекта. Мы с нетерпением ждем возможности поделиться с вами более подробной информацией по мере его продвижения.