Установка SDK: Debug, подсветка синтаксиса и абсолютные пути

Установка SDK: Debug, подсветка синтаксиса и абсолютные пути


Статья посвящена расширенной настройке SDK для Serious Sam TFE/TSE Classic.
Подразумевается, что у ваш проект уже полностью подготовлен, поэтому если SDK еще не подготовлен для компиляции, то сначала настройте его.


Часть 1: Абсолютные пути.

Абсолютные пути. Зачем они нужны? При указывании абсолютных путей MSVC++ будет компилировать EntitiesMP/GameGUIMP.dll/GameMP/ не в ENGINE_DIR, а там, где установлен Serious Sam. Это значительно сэкономит время и позволит переносить проект без его повторной настройки. Как же это сделать?

В студии щелкаем Project->Settings. Выберем вкладку далеко справа, названную Custom Build. Слева выберем проект, который нужно отредактировать, например, EntitiesMP.

Теперь по порядку - нам надо заменить все упоминания $(ENGINE_DIR) на ту папку, где расположен Serious Sam + папка Bin. Например, у меня это выглядит так:

ВАЖНО: В указании пути не должно быть запрещенных символов! (например, восклицательного знака).
 

На этом все. Теперь проект будет компилироваться прямо в папку с Serious Sam. Также, чтобы не копировать dll в корень игры, можно указать папку SeriousSam/Mods/ModName/Bin.


Часть 2: Debug.

Debug - мощное оружие кодера, позволяющее отлавливать самые различные ошибки. Он значительно экономит вам время, так как не нужно искать, где же вы забыли добавить проверку или, к примеру, делили на ноль.

В данной статье мы будем рассматривать два вида настройки дебага - для игры и для мода.

Debug игры.

Заходим в Project->Settings во вкладку Debug. В поле Executable for debug session выберем файл SeriousSam.exe, который находится в папке Bin в самой игре Serious Sam.
Нажимаем ok. Теперь, при нажатии F5 (или Build->Start Debug->Go) будет запускать Serious Sam с только что собранной dll в режиме дебага (естественно, если были настроены абсолютные пути). Если во время игры возникнет ошибка, дебаггер укажет вам на нее.

Например, я попытался поделить на 0. Дебаггер указал мне на это и остановил программу с ошибкой:

И покажет вам строку, где остановилась программа.

Но иногда эта строчка не всегда конкретно указывается. Чтобы найти ее, нужно просмотреть весь список в разделе Context:

Я поделил 5 на iLevel, в то время как iLevel был равен нулю. Функция iNextLevelPoints использовалась в другой функции, называемой TickActions, которая в свою очередь вызывалась из PostMoving. Как видно из картинки, дебаггер указал их.

Debug модификации.

Аналогично и с прошлой настройкой, но теперь во вкладке Debug в поле Program arguments надо дописать "+game НазваниеМодификации" (без кавычек). При нажатии F5 запустится модификация.


Часть 3: Подсветка синтаксиса.

Croteam оставили в папке с игрой .reg файл, который подсвечивает синтаксис в .es файлах, что может быть весьма приятным при редактировании. Он находится здесь: Serious Sam/Help/SDK/Extras/SyntaxColoring.reg. Перед его запуском следует закрыть все открытые файлы в студии и выключить саму студию.

Категория: SDK | Добавил: Heming (16.08.2014) | Автор: Heming_Hitrowski
Просмотров: 1002 | Теги: Serious Sam Classic, Heming_Hitrowski, sdk
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]