К содержимому

Разработчик

Тот, кто строит утилиту, мод или сервис на открытом SDK или расширяет саму игру

SDK открыт под MIT, последний источник правды - его исходники

Начните с SDK, затем - Установка

Документация

  • Аргументы запуска сразу открывают экран, уровень или забег, а переключатели меняют один запуск игры. Пишутся они после исполняемого файла: в ярлыке, терминале или параметрах запуска Steam

  • SDK - формат уровня Bullet Hero в виде открытой библиотеки на C#. Игра читает и пишет уровни через неё, и ваша программа может делать то же самое

  • SDK - это пакет BulletHero.SDK на nuget.org или сборка из исходников. В Unity он подключается как git submodule, а пример ConsoleSmoke проверяет, что ваши уровни читаются

  • Уровень - это папка: содержимое в level.json или level.blob, метаданные в metadata.json или metadata.blob, обложка и медиафайлы. Бэкапы, рекорды и настройки игрока остаются на устройстве

  • Файл .blob хранит те же данные, что .json, в бинарном виде: заголовок в 24 байта, за ним данные. Это равноправный формат уровня, а не кэш

  • Уровень экспортируется папкой, tar.gz или zip, по желанию под паролем: zip с AES-256 или OpenPGP. Формат присланного файла SDK определяет по первым байтам, а не по имени

  • Версий три: gv - игра, sv - SDK, mg - поколение формата моделей. По mg SDK мигрирует старый файл, а файл с поколением новее сборки отказывается читать

  • Валидацию вы вызываете сами через ValidationFacade, в сохранение и загрузку она не встроена. Находки делятся на Error, Warning и Advice, а ValidateAndFix чинит то, что можно

  • Сервис описывает, какие уровни принимает, файлом PublishProfile: лицензии, источники ресурсов, обязательные поля, пределы размера. Добавить сервис - значит написать файл, а не править анализатор

  • Генератор - один класс на базовом классе SDK: BaseLevelGenerator, BaseContentGenerator или BaseModifier. Форму, оценку и отмену хост строит сам по контракту

  • О проблемах SDK сообщайте в issues репозитория bullet-hero/sdk, изменения в код присылайте туда же пулл-реквестами. Правила для контрибьюторов лежат в том же репозитории, рядом с кодом