Hytale Modding
Моддинг Hytale
Известная информация

Вопросы и ответы разработчиков & Технические подробности

Подробное резюме технических идей разработчиков Hytale, охватывающее архитектуру, моддинг, игровые системы и философию разработки.

Вопросы и ответы разработчиков & Технические подробности

В ходе этой обширной сессии вопросов и ответов с разработчиками Hytale раскрываются важные технические детали об архитектуре игры, философии моддинга, игровых системах и подходе к разработке.

Техническая архитектура

Сеть и инфраструктура

  • Протокол: использует QUIC (надежный UDP с ненадежными каналами) вместо TCP.
  • Совместимость с серверами: Работает на любой платформе, поддерживающей Java 25.
  • Метод подключения: сначала прямой IP, после запуска планируется обнаружение сервера.
  • Уровень данных: текущий пользовательский формат сериализации будет заменен после запуска.
  • Производительность: поддержка многоядерных процессоров — каждый мир имеет основной поток + параллельное выполнение
  • Рендеринг: OpenGL 3.3 для совместимости с Mac, потенциальный переход на Vulkan/Metal в будущем
  • Модель тиков: тикрейт 30 TPS по умолчанию; можно изменить с помощью серверных плагинов.

Безопасность и распространение

  • Отсутствие выполнения кода на стороне клиента: предотвращает уязвимости, связанные с удаленным выполнением кода.
  • Скачивание ограничено: только конфигурационные файлы и ресурсы
  • Распространение модов: платформы сообщества (CurseForge, Modrinth), нет непосредственного внутриигрового маркетплейса
  • Хостинг сервера: доступен с первого дня, не требуется заключение деловых соглашений (только EULA/TOS)

Возможности моддинга

Мощность со стороны сервера

  • Полный доступ к Java: соединения с базами данных, веб-запросы, любая функциональность Java
  • Пользовательские библиотеки: можно создавать скрипты Lua, ML-фреймворки или любые Java-библиотеки
  • Моддинг сервера: общий исходный код позволяет вносить значительные изменения в сервер
  • Горячая перезагрузка: поддерживается для большинства типов ресурсов
  • Документация: Планируется создание общедоступного GitBook, хотя изначально он будет содержать не так много информации

Создание контента (без кодинга)

  • Генерация мира: кастомные биомы и карты без Java
  • NPC и предметы: использование JSON файлов
  • Рецепты крафта: Система, основанная на данных
  • Визуальный скриптинг: заменяет командные блоки, полностью изолированы
  • Система префабов: сложные строительные блоки с встроенным в игру редактором

Продвинутый моддинг

  • Боевая система: система взаимодействий, основанная на данных, для цепочек атак и способностей
  • Подхитбоксы: поддержка сложных механик боссов (требуется доработка)
  • Эффекты состояния: система баффов и дебаффов с пользовательскими эффектами и характеристиками
  • Кастомный UI: переход на NoesisGUI позволит гибко и мощно настроить интерфейс
  • Физика блоков: выборочная система (деревья падают, но размещённые блоки — нет)

Игровые системы

Основные механики

  • Система выносливости: голод по умолчанию отсутствует (можно добавить через моды)
  • Гравитация: выборочная физика блоков — деревья рушатся, здания могут парить в воздухе.
  • Освещение: полная переработка для устранения проблем с взаимодействием освещения и модели/вокселей
  • Высота мира: в настоящее время ограничена, возможны изменения с обновлением системы хранения вокселей
  • Автоматизация: на старте нет эквивалента редстоуна (можно добавить посредством модов)

Системы игрока

  • Модели персонажей: по умолчанию человек, модель игрока можно изменить в творческом режиме
  • Аватары в многопользовательском режиме: управляются сервером (в многопользовательском режиме нет пользовательских моделей)
  • Скины: Возможна полная кастомизация ("можешь превратить себя в картошку :D")
  • Шейпешифтинг: Зелье трансмутации для веселья/моддинга

Мир и NPC

  • Система фракций: живой мир с динамичным взаимодействием NPC
  • Системы деревень: запланированы динамичные деревни с взаимоотношениями и особым поведением жителей
  • Загрузка чанков: Сущности выгружаются, когда выходят за пределы обзора (рендеринга) всех игроков
  • Сиды: Поддерживаются сиды мира

Философия разработки

Стратегия релиза

  • Приоритет базовой игры: Режим приключений — основной фокус, архитектура моддинга поддерживает его
  • Технические задолжности: признан необходимым для релиза, планируется сократить их и улучшить имеющиеся системы
  • Частота обновлений: планируются крайне частые обновления, особенно после запуска.
  • Политика версий: планируется всегда использовать последнюю версию, но сервера могут запускать модифицированные версии

Приверженность коммьюнити

  • Поддержка Создателей: запланированы вознаграждения за разработки для участников сообщества
  • Туториалы: запланирован выпуск официальных гайдов по моддингу в сотрудничестве с нашими партнёрами
  • Интеграция обратной связи: полная поддержка стремлений коммьюнити к участию в планировании будущих обновлений, идей для улучшения игрового процесса
  • Доступность: рассчитана на менее производительное железо, с разумными системными требованиями

Инструменты и документация

  • Интеграция Blockbench: заменяет созданный раннее "Hytale Model Maker"
  • Инструменты для машинимы: полный набор возможностей для создания кинематографических роликов
  • Творческие инструменты: планируется крупный анонс информации о функциях строительства/создания
  • Доступ к исходному коду: код сервера будет деобфусцирован с добавлением комментарий разработчиков.

Поддержка платформ

  • Текущий: Windows (основной)
  • Планируется: Поддержка Mac/Linux (в активной разработке)
  • VR: Нереализуемо в обозримом будущем
  • Производительность: неограниченная частота кадров, разработано с учётом доступности
  • Офлайн-игра: однопользовательский режим работает без подключения к интернету

Монетизация и правовые вопросы

  • Нет Pay-to-Win: твердая приверженность борьбе с механикой P2W
  • Только косметика: недорогие косметические наборы для поддержки инфраструктуры игры
  • EULA для серверов: завершается согласование условий политики монетизации сервера
  • Блокировка QUIC: подтвержденная проблема в некоторых регионах, альтернативного протокола нет

Текущие ограничения

  • Пользовательские шейдеры: не поддерживаются, пока не будет найдено решение для песочницы
  • Лимиты UI/ввода: расширяются, но в настоящее время имеются ограничения
  • Документация: поначалу будет не очень содержательная, со временем будет дополняться
  • Клиентские моды: для обеспечения безопасности не допускается выполнение кода на стороне клиента.
  • Именные таблички: в настоящее время кастомизация ограничена

Эта комплексная техническая основа делает Hytale безопасной и расширяемой платформой, которая дает творцам новые возможности, сохраняя при этом высокую производительность, доступность и стремление к постоянному совершенствованию