Установка 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. Перед его запуском следует закрыть все открытые файлы в студии и выключить саму студию.

Автор: Heming (ST-Games)



Комментарии   

Оставьте комментарий

Мини-профиль

Гость

Вы в группе: Гости
Ваш IP: 54.162.91.86

Информация

Прочее

Категории раздела

Croteam [3]
Материалы по студии разработчика игр CroTeam.
Интервью с разработчиками [9]
Интервью с разработчиками, а также их издателями.
Serious Sam 1 [10]
Статьи о Serious Sam 1
Serious Sam 2 [6]
Статьи о Serious Sam 2
Serious Sam HD [5]
Статьи о HD-серии, ремейков классических версий Сэма.
Serious Sam 3: BFE [9]
Статьи о Serious Sam 3: BFE
Уроки по Serious Editor 1 [54]
Уроки по Serious Editor 2 [2]
Самое серьёзное редактирование, на русском!
Уроки по Serious Editor 3 [33]
Уроки по работе с редактором.
Serious Engine [6]
Описание возможностей всех движков компании Croteam
Разное [25]
Всё что не подошло не под одну из вышеупомянутых категорий.
Serious Sam: Revolution [1]
Материалы по SS: Revolution, серьёзном обновлении классических Крутых Сэмов.
Serious Sam 1.05/1.07 SDK [10]
SDK - набор исходников для Serious Sam: The Second Encounter 1.05/1.07.

Голосование

Какая на ваш взгляд самая удачливая часть из Indie-Series?
1. Serious Sam: Double D (XXL)
2. Serious Sam: The Random Encounter
3. Serious Sam: Kamikaze Attack!
4. Serious Sam: The Greek Encounter

Статистика



На сайте: 9
Гостей: 7
Пользователей: 2
Twi, SeriousFAN