SDK - набор исходников для Serious Sam: The Second Encounter 1.05/1.07. C помощью SDK, а также знания языка программирования С++ можно оперировать функционалом движка Serious Engine 1: создавать новых врагов, оружие, собственный интерфейс, игровые режимы, да практически что угодно.
После того как вы загрузили SDK, устанавливаем его. Открываем архив и видим 4 zip'a:
SDK107_DebugBinaries.zip
SDK107_EntitiesSE.zip
SDK107_Includes.zip
SDK107_ModelsSE.zip
Сейчас мы сделаем папку для workspace'а нашего мода. Эта папка будет располагаться отдельно от папки с игрой. К примеру она будет называться C:\MyMod. Далее идем в папку Сэма(у меня C:\Games\SSSE) и копируем оттуда папку Bin в нашу новую папку: C:\MyMod. Потом в вашей папке C:\MyMod\Bin, создайте другую папку Debug и извлеките SDK107_DebugBinaries.zip в неё.
Сейчас идём в C:\MyMod и создаем папку Sources и извлекаем туда SDK107_EntitiesSE.zip. Потом извлекаем SDK107_Includes.zip в ту же папку (C:\MyMod\Sources) и делаем то же самое с SDK107_ModelsSE.zip.
Затем извлеките архив с DirectX 8.1 Headers & Libraries в C:\MyMod.
Далее идем в C:\MyMod\Sources и видим файлы с именем:
Engine.lib
EngineGUI.lib
И копируем эти файлы в папку C:\MyMod\Bin.
Щелкаем правой кнопкой по "Мой компьютер" и выбираем свойства, щелкаем по "Дополнительно", нажимаем кнопку "Переменные Среды". Вы увидите новое окно, нажмите верхнюю кнопку "создать" и в поле "Имя переменной" введите ENGINE_DIR и в Значение переменной введите: C:\MyMod\Sources.
Сейчас самое время запустить Microsoft Visual C++ 6.0 и создать ваш собственный workspace (File -> New). Это откроет окно названное New. Щелкните по закладке Workspaces. Введите в поле Location местоположение вашего мода: C:\MyMod\ Сейчас в Workspace name впишите Sources. Нажмите ОК. Щелкните Project -> Insert Project into Workspace... и добавте EntitiesMP.dsp файл, из папки C:\MyMod\Sources\EntitiesMP. Затем проделайте тоже самое с файлами GameMp.dsp и GameGUIMP.dsp.
Нажмите Project -> Dependencies... и сделаете так:
Entity MP-все выключено.
Game MP-EntitiesMP-включено, GameGUIMP-выключено.
GameGUIMP-EntitiesMP-выключено, GameMP-включено.
Теперь нажмите Project -> Settings... чтобы вызвать окно Project Settings. Щелкните по закладке Custom Build далеко справа. Сейчас в Commands box удалите две нижнии линии содержащие .lib и .map файлы.
Наконец нажмите Tools -> Options в меню. Щелкните по закладке Directories. В Show directories for: выберите Executable files и добавьте следующий путь в список: C:\MyMod\Bin Поменяйте Show directories for: на Include files и добавьте следующие пути в список:
C:\MyMod\Bin
C:\MyMod\Sources
Поменяйте Show directories for: на Library files и добавьте следующие пути в список:
C:\MyMod\Bin
C:\MyMod\Bin\Debug
Нажмите Build->Set Active Configuration... и выберите EntitiesMP-Win 32 Release
Нажмите F7 для компиляции (создания нового .dll файла). Новую EntitiesMP.dll можно будет найти в папке C:\MyMod\Sources\Bin.
Если компилятор выдаст:
Код
Copying EntitiesMP binaries to C:\MyMod\Bin Error executing d:\windows\system32\cmd.exe
То в Project -> Settings...->Custom Build, в Commands поменяйте $ENGINE_DIR на C:\MyMod\Sources и/или запустите Microsoft Visual C++ 6.0 от имени администратора. При возникновении других ошибок после настройки SDK, пробуйте Build->Rebuild All.
Автор оригинального туториала: Croteam (перевод: Dr. Zlo)
Просто напишу это сообщение для себя же, на случай если забуду как фиксить баги Этакое небольшое FAQ Ну и может кому оно тоже поможет не потратить 3 долбанных часа вникуда Х-х
Итак Чтобы d3d8.h эта штука могла найти, следует в Options Include files прописать один важный путь МОД\SOURCES\ENGINE\GRAPHICS Тогда будет видеть
Строчки в Settings можно менять только после снятия галочки Только для чтения и лучше перепроверить пару раз
При замене $ENGINE_DIRни в коем случае нельзя убирать сами скобки - это ловушка
Надеюсь я кому-нибудь помог как и себе в будущем, который увидит это сообщение я надеюсь
Сообщение отредактировалAzuNeko - Понедельник, 08.11.2021, 00:50
В поисках серьёзного сахара: Крайние миры в благополучной разработке
Скомпилируй StdH.cpp в EntitiesMP, потом собери весь EntitiesMP.
Я попыталась. Жалуется на то, что не может открыть Engine/Engine.h, да и так не даёт скомпилировать ничего, при всех нужных настройках не видит cmd.exe