Краткое руководство для участников, работающих
с SVN репозиторием Blood Omnicide.

I. Настройка SVN

Клиент для Windows: TortoiseSVN

Адреc, логин и пасс: получить у администратора

Если соединение с интернетом идет через прокси-сервер, необходимо настраивать Port Forwarding на сервере + настройка TortoiseSVN на работу с прокси.

Внимание! Коммиты разрешены, но только тем, кто знает что это такое и для чего.

II. Структура SVN

  1. kain - папка с ресурсами игры
  2. devkit - исходники и утилиты
  3. kain_make - скрипты для сборки готовой версии игры и инсталлятора, также здесь лежит тестовый скрипт конвертации pill.big в legacy.pk3
  4. mapeditor - редактор карт, при первом запуске требует указать папку с игрой (папка с omnicide.exe)
  5. misc - сюда попадают все файлы, не попадающие в вышеописанные папки: документация, списки заданий, всякие исходники, графика и проч.

III. Обновления (SVN Update)

  1. Рекомендуется делать регулярно.
  2. Иногда после обновления до новой ревизии необходимо удалять файл kain/config.cfg (рабочую конфигурацию игры), сообщения когда это надо делать указываются в логах, после этого все настройки сбрасываются до значений по умолчанию.
  3. Cейвы от разных ревизий могут не работать, рекомендуется удалять слишком старые.
  4. Тоже самое относится к демкам, как так .dem суть запись работы сетевого стека, они чувствительны к пересборке уровней.

Настройка первого обновления (SVN Checkout):

  • Убедимся что на компьютер поставлен клиент Tortoise SVN
  • Создаем пустую папку, где будет располагаться репозиторий (например C:\OmnicideSvn, в пути не должно быть пробелов и русских букв (важно для правильной работы редактора уровней)
  • Щелкаем правой кнопкой мыши на папке, выбираем SVN Checkout
  • Вводим адрес, нажимаем OK, вводим логин с паролем
  • Ждем, когда все загрузится

IV. Обновление файлов, подхватываемых из Blood Omen

Многие файлы (звуки, видео) подхватываются игрой из оригинала, это осуществляется во время инсталляции игры. Так как SVN лишена этого механизма, здесь используется пакетный файл installationscript.cmd, который находится в папке kain_make/installscript/

При первом обновлении, чтобы в репозитории появились все необходимые файлы Blood Omen, нужно:

  1. Найти полную английскую версию Blood Omen (можно без видео).
  2. Скопировать папку kain/ (содержащую файл pill.big и файлы .VAG и .JAM) в kain_make/installscript, таким образом получив kain_make/installscript/kain/.
  3. Запустить kain_make/installscript/installationscript.cmd и дождаться завершения.
  4. Проверить что в kain/ появились файлы LEGACY0.PK3 и LEGACY1.PK3 (он появляется только если вы копировали полную версию с видео).
  5. Регулярно перезапускать installationscript.cmd для сборки обновленного LEGACY0.PK3, когда при апдейте в логах говорится, что необходим перезапуск installationscript.cmd.

Если у вас в игре вместо моделей разноцветные ромбики - это значит что данный пункт не был выполнен до конца.

V. Кеш DDS

Начиная с ревизии 2390 движок Омницида использует кешированные DDS текстуры, это исходные текстуры tga/jpg с примененной к ним компрессией. Кеш DDS помогает значительно снизить расход видеопамяти а также уменьшить время загрузки уровней.

Кеш текстур создается внешней утилитой RwgDDS, находящейся в папке devkit/other/rwgdds (невозможно создавать кеш "на лету" во время загрузки, так как для компрессии текстур без потери качества требуются сложные и медленные алгоритмы). Время пересборки кеша DDS - примерно 10 минут на 4-ядерном CPU, примерно 30 на одноядерном.

Чтобы начать сборку кеша, запустите rwgdds.exe, дождитесь завершения работы. Также утилиту можно использовать для конвертирования одиночных картинок в DDS, для этого достаточно дропнуть файл изображения на rwgdds.exe. Сконвертированная картинка появится в папке с исходным файлом.

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

VI. Про коммиты

  1. Перед использованием нужно ознакомиться с инструкцией по ссылке выше.
  2. Всегда указывать в логах краткую информацию об изменениях.
  3. Не обязательно при коммите обновления к существующему файлу заводить файл с новым именем, достаточно перезаписать существующий файл.
  4. Логи можно вести как на английском так и на русском.

VII. Правила оформления лог-сообщения коммита

С апреля 2011 SVN коммиты транслируются в RSS, поэтому нужно соблюдать несколько простых правил их оформления:

  1. Текст коммита пишется с большой буквы (как все предложения) и заканчиваетя точкой.
  2. Абзацы отделяются друг от друга по shift+enter.
  3. Предложения согласовываются, текст должен быть читаем и понятен.
  4. Текст проверяется на орфографические ошибки.
  5. Меньше пафоса в сообщениях, кратко и спокойно разъясняйте суть.
  6. Сообщение о коммите не показывается в официальной ленте, если его длина меньше 10 символов или в сообщении есть кодовое буквосочетание: (NoRSS)

VIII. Правила заливки новых файлов

  1. Новые файлы по возможности заливаются в существующие структуры папок, с соблюдением их назначения. В kain/ заливается только то, что реально используется в игре (+сурцы для этих файлов в .psd /.blender / .max). Все что не подходит ни в какую из категорий заливается в misc/. Исключение: папка kain/models/new/ куда складируются модели на текстуринг.
  2. Следует избегать БОЛЬШИХ БУКВ В РАСШИРЕНИИ во избежание проблем при портировании на Linux
  3. Не заливайте файлы "для архива", если вы знаете что никто, в том числе вы их использовать не будет.
  4. Пробелы в именах могут быть только у папок и только в misc/.
  5. SVN не резиновый, все залитые файлы остаются в нем навсегда (поэтому вариант "потом удалю" не годится). Экономьте место на сервере и трафик пользователей. Форматы которые не экономят место: BMP, TIFF, WAV (если большие). Вместо них рекомендуется использовать: TGA (с RLE компрессией), PNG, OGG или 7Z-архивы.
 

Добавить комментарий / Add comment


Защитный код / Captcha
Обновить / Refresh



Blood Omnicide 3D Port developing by RazorWind Games. By fans for fun.
Blood Omen: Legacy of Kain © Crystal Dynamics 1996-1997. Blood Omen and Kain logos © Square Enix and Crystal Dynamics.
Blood Omen, Legacy of Kain, Legacy of Kain Series and Crystal Dynamics are registered trademarks of Square Enix.

Designed by Wex & Vortex. Powered by Joomla!