Создаем свой мод с помощью XrSpawner_0.13.0_Beta просто, быстро, легко! :) Уже заинтересованы? :) Прежде чем будем создавать ознакомтесь что нам
необходимо: 1. Сама игра S.T.A.L.K.E.R. Shadow of Chernobyl 2. Распаковщик архивов игры STALKER_Data_Unpacker скачать 3. Текстовый редактор, подойдет любой, можно даже Блокнот. Либо можно
скачать редактор с подсветкой синтаксиса 4. Редактор файла all.spawn. ХrSpawner 0.13.0 Beta от Zeed’а!!!!!! скачать
. Этот небольшой список позволит нам на начальном этапе создать вполне
работающий мод :)) Допустим, игра у вас установлена в папку С:\\Games\\S.T.A.L.KE.R. Тогда при
помощи STALKER_Data_Unpacker извлеките все содержимое файлов: gamedata.db0 gamedata.db1 gamedata.db2 gamedata.db3 gamedata.db4 gamedata.db5 gamedata.db6 gamedata.db7 gamedata.db9 gamedata.dba gamedata.dbb и еще, если есть...
Допустим в: C:\\Создание модов\\gamedata. На моем слабеньком компьютере эта
разорхивация заняла примерно 10-15 минут.
Теперь в папке C:\\Создание модов\\gamedata\\spawns найдите файл all.spawn
и скопируйте его в папку С:\\Games\\S.T.A.L.KE.R.\\gamedata\\spawns. Если
такой папки нет – создайте ее, и дальнейшем, если необходимо будет
перенести какой-либо файл в каталог, которого нет – создавайте. Запускаем XrSpawner 0.13.0 Beta , нажимаем «Файл - Открыть файл all.spawn»
и указываем ему файл из папки D:\\Games\\S.T.A.L.KE.R.\\gamedata\\spawns.
Окошки редактора заполнились цифрами и буквами. Теперь у нас все готово,
начнём.
Добавление транспорта.
Начнем, пожалуй, с самого легкого и в достаточной степени необходимого – с
добавления транспорта. Превратим наш СТАЛКЕР в авто зону. В правой части
окна редактора раскрываем список «Добавить объект» и выбираем пункт
Transport. В окне внизу выбираем вид транспорта, который вам необходим,
пусть это будет, к примеру, Niva_White (Нива белая) и жмем кнопку
«Добавить». В левой части экрана где весь список объектов, спаунящихся в игре, в самом
конце появилось m_car, это и есть наша Нива. Давайте обратим теперь
внимание на центральную часть редактора и немного разберемся, что есть что.
Итак, m_car – тип объекта (Entity), ven_niva_white_00 – название объекта,
его можно менять, пример: mashina :) , корд X/Y/Z и вектор X/Y/Z –
координаты объекта и углы поворота относительно осей координат. Обратите
внимание, что за вертикальную ось отвечает не привычная нам ось Z, а ось Y.
Это не ошибка, Zeed сознательно ввел такое обозначение осей, что бы те, кто
работает с SDK для мультиплеера, не путались – там координаты поименованы
подобным образом. Level_ID указывает, на какой локации будет находится наш
объект, окно Story_ID лучше не трогать, по умолчанию новому объекту
добавляется значение -1. Если к объекту привязан какой-либо управляющий
скрипт, его текст отражается в окне внизу.
Таким образом, наша Нива должна респауниться на локации l01_escape (на
Кордоне), в точке с координатами -239,8912/ -19,43/ -123,0998, с углом
поворота относительно вертикальной оси -15 градусов. Это значения по
умолчанию и они вполне корректны, луччше оставив все как есть, чтобы потом
обнаружить свою машину, висящую на дереве, в воздухе или застрявшей в
заборе. Не удивляйтесь отрицательному значению высоты, поскольку центр
координат локации Кордон расположен на дороге, неподалеку от автобусной
остановки, лагерь же новичков относительно этого места лежит в низине.
Можете немного поэкспериментировать с числами в окнах «Корд. X/Y/Z», не
забудьте подтвердить изменения «Принять изменения» . После этого сохраняете
свой файл all.spawn (Файл - Сохранить), все, всё, теперь запускайте сталкер
S.T.A.L.K.E.R. и начинайте новую игру. Сразу на выходе из бункера
Сидоровича вас будет ждать автомобиль, заспауненный лично вами. :)) Если вдруг вы не можете завести автомобиль, сделайте следущее: Зайдите в папку с файлом C:/Documents and Settings/All
Users/documents/stalker-shoc/user.ltx и в нем после строчки bind
speech_menu_1 kZ разместите bind turn_engine kQ (Файл - Сохранить), теперь
при нажатии буквы Q в игре будет заводится двигатель автомобиля! Все только что созданные автомобили очень хрупкие, катался на БТРе, и
врезавшись в первый куст его разорвало, давайте устраним этот недостаток. В
папке C:\\Создание модов\\gamedata ищем файл нашей нивы, в данном случае
veh_niva_u_02 и копируем его в папку
С:\\Games\\S.T.A.L.KE.R.\\gamedata\\config\\models\\vehicles. Это файл
конфигурации автомобиля. Открываем его блокнотом и ищем раздел
[immunities], burn_immunity, strike_immunity и т.д. отвечают за стойкость
вашей машины ,если выставим всё равное нулю ваша машина будет практически
неуничтожима. Сохраняем, закрываем файл. Небольшая ремарка, повреждения для
дверей и крышки багажника считаются отдельно и после парочки столкновений
можно лишиться нескольких деталей корпуса, но, думаю, без дверей вы уж
как-нибудь покатаетесь. Рекомендую сразу же в ту же папку перенести файлы
остальных машин и проделать с ними те же операции. Все. Большое спасибо blackfire.
1.2 Допустим, игра у вас установлена в папку D:\Games\S.T.A.L.KE.R. Тогда
при помощи Unpacker-а извлеките все содержимое файлов gamedata.dbX (где Х –
буква или число) из корневого каталога игры в отдельную папку, например
D:\Source\gamedata.
1.3 Теперь в папке D:\Source\gamedata\spawns найдите файл all.spawn и
скопируйте его в папку D:\Games\S.T.A.L.KE.R. \gamedata\spawns. Если такой
папки нет – создайте ее, в дальнейшем, если необходимо будет перенести
какой-либо файл в каталог, которого нет – создавайте, учитывая все
промежуточные папки. 1.4 Запускаем xrSpawner 0.13.0 Beta , нажимаем «Файл - Открыть файл
all.spawn» и указываем ему файл из папки
D:\Games\S.T.A.L.KE.R.\gamedata\spawns. Окошки редактора заполнились
цифрами и буквами. Теперь у нас все готово, начинаем.
2. Добавление транспорта.
2.1 Начнем, пожалуй, с самого легкого и в достаточной степени необходимого
– с добавления транспорта. В правой части окна редактора раскрываем список
«Добавить объект» и выбираем пункт Transport. В окне внизу выбираем вид
транспорта, который вам необходим, пусть это будет, к примеру, Niva_Green
(Нива армейского образца) и жмем кнопку «Добавить». 2.2 В левой части редактора мы видим окно со списком всех объектов,
спаунящихся в игре. В самом конце этого списка появился объект m_car, на
который указывает синий маркер. Это и есть наша Нива. Давайте обратим
теперь внимание на центральную часть редактора и немного разберемся, что
есть что. Итак, m_car – тип объекта (Entity), ven_niva_00 – название
объекта (можете назвать его по-другому, например Moya_Niva), корд X/Y/Z и
вектор X/Y/Z – координаты объекта и углы поворота относительно осей
координат. Обратите внимание, что за вертикальную ось отвечает не привычная
нам ось Z, а ось Y. Это не ошибка, Zeed сознательно ввел такое обозначение
осей, что бы те, кто работает с SDK для мультиплеера, не путались – там
координаты поименованы подобным образом. Level_ID указывает, к какой
локации относится тот или иной объект, окно Story_ID рекомендую не трогать,
по умолчанию новому объекту добавляется значение -1. Если к объекту
привязан какой-либо управляющий скрипт, его текст отражается в окне внизу. Таким образом, наша Нива должна респауниться на локации l01_escape (то есть
, на Кордоне), в точке с координатами -239,8912/ -19,43/ -123,0998, с углом
поворота относительно вертикальной оси -15 градусов. Это значения «по
умолчанию» и они вполне корректны, то есть, оставив все как есть, вы не
рискуете обнаружить потом свою машину, висящую где-нибудь на дереве или
застрявшей в заборе. Не удивляйтесь отрицательному значению высоты,
поскольку центр координат локации Кордон расположен на дороге, неподалеку
от автобусной остановки, лагерь же новичков относительно этого места лежит
в низине. При желании можете немного поэкспериментировать с числами в окнах
«Корд. X/Y/Z», не забудьте подтвердить изменения (нажав «Принять
изменения», сохраните строчку, иначе данные пропадут, если вы уберете
маркер с редактируемого объекта). После этого сохраняете свой файл
all.spawn (Файл - Сохранить), все, можно запускать S.T.A.L.K.E.R. и
начинать новую игру. На выходе из бункера Сидоровича вас будет встречать
автомобиль, заспауненный лично вами. Поздравляю 2.3 Известно, что «по умолчанию» новоявленные автомобили чрезвычайно хрупки
и взрываются буквально от первого же столкновения с забором. Устраняется
эта проблема моментально. В папке Source ищем файл veh_niva_u_01 и копируем
его в папку D:\Games\S.T.A.L.KE.R.\gamedata\config\models\vehicles. Это
файл конфигурации автомобиля. Открываем его блокнотом и ищем раздел
[immunities], после чего выставляем все параметры (burn_immunity,
strike_immunity и т.д.) равными нулю. Сохраняем и закрываем файл. Теперь
ваша Нива неуничтожима в принципе. Небольшая ремарка, повреждения для
дверей и крышки багажника считаются отдельно и после парочки столкновений
можно лишиться нескольких деталей корпуса, но, думаю, без дверей вы уж
как-нибудь покатаетесь. Рекомендую сразу же в ту же папку перенести файлы
остальных машин и проделать с ними те же операции. Все.
3 Поиск координат и расстановка объектов на других локациях.
Накатавшись вволю по Кордону, вы, несомненно, захотите попутешествовать по
остальным локациям уже на своих четырех. Вот тут вы и столкнетесь с
проблемой, поскольку точка перехода Кордон-Свалка находится в здании за
шлагбаумом, куда машина, по понятным причинам, не пролазит. Это значит, что
вам понадобится новый автомобиль, который встречал бы вас на Свалке. В
общем случае речь может идти не только о машинах, но и о монстрах,
артефактах, сталкерах, предметах и прочих объектах. Для спауна любого
предмета необходимо, как мы уже убедились, задать координаты той точки, где
он появится. Алгоритм следующий: спаунимся на локацию, куда вы хотите
добавить объект, визуально выбираем наиболее подходящую для этого точку и
фиксируем ее координаты, выходим из игры, создаем интересующий нас объект с
заранее полученными координатами, вновь спаунимся и проверяем корректность
добавления объекта. Теперь опишем все это более подробно на примере
автомобиля. 3.1 Допустим, вы хотите поместить белую Ниву неподалеку от перехода
Армейские склады – Бар. В окне списка объектов поставьте маркер на первый
объект. В окне «Поиск» наберите level_changer. Уже в процессе набора маркер
переместиться на объект номер 284, который и будет нашим первым
левел-ченджером. Level_cahnger, это точка, в которой расположен триггер,
который выдает на экран окошко «Вы хотите перейти на другую локацию?».
Объект за номером 284 с именем exit_to_garbage_01 отвечает за переход
Кордон-Свалка и нам он не нужен. Нажимайте кнопку «Следующий» до тех пор,
пока маркер на остановится на нужной нам точке перехода. Определить, какой
level_changer за что отвечает, достаточно просто, смотрите на имя объекта,
он подскажет в какую локацию переносит вас триггер. Триггеры одной карты
обычно группируются вместе. Объекты 5286 (exit_to_bar_01) и 5287
(exit_to_radar_01) явно принадлежат к одной локации, по совокупности того,
куда ведут выходы, можно определить, что триггеры принадлежат Армейским
складам, только с нее есть выходы на Бар и Радар. Отлично, значит нас
интересует номер 5286 exit_to_bar_01 с координатами (-372,6236/ -21,69933/
-4,806515). Запомните эти числа, затем открывайте строчку 63 actor (это
вы), меняйте в поле Level_ID l01_escape на l07_military, измените ваши
текущие координаты на координаты точки перехода (-372,6236/ -21,69933/
-4,806515), сохраняйте строчку («принять изменения») и файл («Файл -
Сохранить»). Обратите внимание, сразу после загрузки вы попадете в триггер
выхода. Это не страшно, достаточно нажать «нет» и вы появитесь на локации
Армейские склады. Если же это обстоятельство вам неприятно, попросту
измените горизонтальные координаты на 1-2 метра. 3.2 Начинаем новую игру. После загрузки и отказа переходить на другую
локацию, нам необходимо найти подходящее место для расположения автомобиля
и определить его координаты. Делается это одним из следующих способов. a) В консоли прописываем команду «rs_stats on» без кавычек и слева на
экране появится статистическая информация. Нас интересует последняя строчка
Camera position, которая отражает текущие координаты камеры. Почему я
заостряю на этом внимание. Камера поднята над поверхностью на 1,5 метра,
поэтому, когда будете вписывать данные для спауна, вычитайте из
вертикальной координаты полтора метра. Топаем ножками на понравившуюся
площадку и записываем на листочке цифры с экрана.
b) Точно так же топаем ножками на понравившееся место и там сохраняемся с
помощью quiksave(F6). c) Принимая во внимание, что вы появляетесь на карте с болтами и биноклем в
карманах, ваша персона может сильно заинтересовать недружественных
товарищей и мутантов. Дабы обезопасить себя во время проведения
топографических съемок, набирайте в консоли команду «demo_record 1»,
которая освобождает камеру, давая возможность «полетать» по уровню.
Управлять камерой просто, нажимаете «огонь» и летите вперед («прицел» -
назад), стрелки отвечают за поворот вокруг осей. Далее аналогично –
прилетаем на место, запускаем «rs_stats on» и записываем текущие
координаты. 3.3 Выходим из игры. Если вы сохранялись при помощи быстрого сохранения,
ставьте маркер на объект 63 actor и нажимайте кнопку «Получить координаты
из файла сохранения». В окошках должны появится те же самые данные, что вы
получили при помощи «rs_stats on». Единственное дополнительное преимущество
состоит в том, что при загрузке данных с сейва вы получаете также данные об
угле поворота вашего персонажа. Это вам поможет в том случае, если вы
хотите определенным образом сориентировать вашу машину относительно,
скажем, дороги или другой техники.
3.4 Добавить объект - Транспорт - Niva_White. В поле Level_ID выбираем
l07_military (если оно уже не стоит там по умолчанию), в поля координат
заносим данные, полученные в п.3.2 Сохраняем строчку и файл. Снова
запускаем новую игру. Если вы ничего не изменяли в actor, то вы появитесь в
том же месте, что и в прошлый раз, на дороге по пути к Бару, а пробежавшись
немного вперед, обнаружите свежепоявившуюся Ниву белого цвета.
Если кому-то интересно, автомобиль на скриншоте заспаунен в координаты
(-305,38/-22,53/61,93), углы поворотов относительно осей (0/0/0). Это важно
– когда будите вписывать числовые значения координат, дробная часть
отделяется от целой с помощью запятой. Если вы поставите точку, при
сохранении редактор выдаст ошибку. Вот таким образом вы можете получать и присваивать нужные координаты любым
объектам, начиная от табуретки и заканчивая вертолетами. Внимание, при
создании объектов на других локациях всегда сохраняйте изменения и
обращайте внимание на то, какое значение Level_ID у вас сохранено. Нередки
случаи, когда вместо того, что бы расквартироваться по всей Зоне, монстры
сосредоточились на Кордоне, из-за того, что моде (известный вам Бастард),
забыл сменить левел _айди у части монстров.
4 Добавление новых монстров
С чисто технической точки зрения заспаунить, скажем, бюрера, никаких
трудностей не представляет. Выполняйте все те же операции, что и для
автомобиля. То есть, выбираем Добавить объект ? Mutants ? Burer,
корректируем координаты и локацию, если есть необходимость, сохраняемся,
заходим и любуемся. НО !!! Каждый житель Зоны, от тушкана до сталкера,
должен быть зафиксирован в куче файлов: статистика, описание, инвентарь
(то, что вы видите, нажав «обыскать труп») и прочее. Давать описание того,
что нужно сделать в каждом фале, это слишком долго и муторно, получится
гора сухой писанины, причем, не факт ни я (при наборе) ни вы (при
переписывании) не допустим какую-нибудь ошибку. А отсутствие простой
запятой в одном файле может привести к крашу игры. Поэтому лучшим выходом
из ситуации будет, если вы найдете любой мод, добавляющий монстров и
найдете там необходимые файлы, которые нужно добавить/заменить в игре.
Обратите внимание, что у вас есть возможность добавлять не только новых
монстров и машины, но и спаунить оружие, предметы, артефакты, старых
монстров, сталкеров и проч.
|