Страница 1 из 212»
Форум настоящего сталкера » S.T.A.L.K.E.R. Shadow of Chernobyl » Теория модостроения » Новые монстры (Добавление в игру вырезанных мобов...)
Новые монстры
V@Dik008 Дата: Воскресенье, 30.03.2008, 22:23:18 | Сообщение # 1

всегда где-то там...

Ранг: Охотник
Группа: Тени Зоны
Сообщений: 593
Должность : Зам. лидера ДОЛГа
Награды: 14
Регистрация: 29.03.2008
Статус: Offline
Пол: Мужчина
Город: Пенза  


Введение
Многие часто сталкиваются с тем, что при попытке добавления монстров не попавшими в финальную версию игра может вылетать. Попробую рассказать, как это дело можно исправить.

Для примера возьму кошек (уж очень они мне нравятся)

Добавить их можно отредактировать файл all.spawn, либо динамически создать в игре через функцию alife:create().

Вылет при появлении
Обычно сопровождается сообщением в логе:

Arguments : Can't open section 'cat_weak'
Это значит, что монстр у нас не до конца описан. В файле конфигурации идет секция

[m_cat_e]:monster_base
Но для создания разных по силе конфигураций монстров обычно используется такая штука. Создается секция вида

[cat_weak]:m_cat_e
то есть ссылка на основную конфигурацию, а потом указываются параметры, которые отличаются от нее. Например сила, здоровье, угол обзора и тд. Мы пока ограничимся просто добавлением этой секции. В файле config\creatures\m_cat.ltx в конце допишем [cat_weak]:m_cat_e. Запускаем, добавляем кошку, вылетаем с ошибкой:

Arguments : Can't find variable smart_terrain_choose_interval in [cat_weak]
Что ж, добавим и этот параметр. Посмотрим, какой он у собак, и сделаем также:

smart_terrain_choose_interval = 00:15:00
Запускаем, вылетаем с ошибкой:

Arguments : Can't find variable satiety_threshold in [cat_weak]
Вобщем, добавляем параметры, по кошка не станет нормально появлятся. Такие ошибки легко локализуются и исправляются.

Ну, на всякий случай, нужно добавить еще две строчки:

critical_wound_threshold = 0.4
critical_wound_decrease_quant = 0.
После этого кошка появляется, бегает, с 30 метров бежит нас кушать. Мы этого не хотим, стреляем в нее, и у нас происходит

Вылет при убийстве
Это знаменитая ошибка:

Arguments : LUA error: e:\stalker\gamedata\scripts\_g.script:20 ........
Самое просто и неправильное решение - закоментировать 20-ю строку скрипта _g.script, вылет исчезнет, но ошибка никуда не денется. Я не могу сказать с уверенностью, к чему игнорирование этого факта может привести, так как исправлял причину, а не следствие.

Путем нехитрых логических размышлений решение было найдено. Вернее тупым перебором всего, что относилось к делу, криками на форумах, битьем головой о стенку... Потом пришло озарение, вместе с сакраментальным вопросом "что происходит после смерти?" А происходит добавление в статистику убитого объекта (монстра, нпс-а). Поэтому лезем в скрипт xr_statistic.script. В самом начале видим объявление переменной

local killCountProps = {...}
в которой кошек нет. Поэтому добавляем их туда (например, в конец), для начисления очков опыта:

cat_weak = 1, cat_normal = 2, cat_strong = 3,
Хотя мы сделали только cat_weak, но на будущее добавим и остальных. Затем идет перечисление используемых классов монстров:

monster_classes = {
кошек нет и здесь, добавляем:

[clsid.cat_s] = "cat",
Смотрим дальше, видим функцию addKillCount(npc), которая определяет сообщество (community) убитого. Функция вызывает getNpcType(npc), которая находится в этом же скрипте. А там идет обращение к функции IsStalker(npc), и возвращает сообщество и ранг убиенного.

Но тут про мостров ни слова, а значит идем дальше. Функция IsStalker(npc) обнаруживается в скрипте _g.script. Просматривая его обнаруживаем следующие интересующие нас функции:

is_object_monster(obj)
кошек нет, добавляем рядом с собаками:

otype == clsid.cat or
IsMonster (object, class_id)
кошки есть, ничего не трогаем.

Для страховки проверим еще одни файл, class_registrator.script. Находим в нем строку

cs_register (object_factory, "CCat", "se_monster.se_monster", "SM_CAT_S", "cat_s")
и успокаиваемся на этом. Запускаем, убиваем, подходим, пытаемся обыскать - вылетаем. Потому что случился

Вылет при обыске
Ну тут уже проще. Вспоминаем, что у нас показывается в инвентаре убитого? Иконка растерзанного трупа. Проверяем m_cat.ltx - действительно, параметр icon отсутствует. Тут появляется два пути.

Первый - нарисовать новую иконку, вставить ее в файл ui_npc_monster.dds, определить координаты и добавить их в xml-описатель ui_npc_monster.xml. И так для каждого нового монстра.





Правила форума S.T.A.L.K.E.R. GSC
 
V@Dik008 Дата: Воскресенье, 30.03.2008, 22:23:28 | Сообщение # 2

всегда где-то там...

Ранг: Охотник
Группа: Тени Зоны
Сообщений: 593
Должность : Зам. лидера ДОЛГа
Награды: 14
Регистрация: 29.03.2008
Статус: Offline
Пол: Мужчина
Город: Пенза  


Второй - использовать общую иконку для всех монстров, у которых отсутствует этот параметр. Мы им и воспользуемся, так как для тестовых целей сойдет, а для серьезного применения все равно необходимо иметь хоть какие-то художественные навыки (если кто видел мой тестовый мод "15 кошек", то помнят тот ужас вместо иконки кошки smile )

Для этого отредактируем файл defines.ltx , так как именно в нём содержится секция monster_base, общая для всех монстров. Открываем, ищем секцию, и вставляем

icon = ui_frame_error_sign_red
Это будет такой красный крест в круге. Запускаем, убиваем, обыскиваем и не вылетаем.

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





Правила форума S.T.A.L.K.E.R. GSC
 
Nemesis Дата: Суббота, 18.04.2009, 14:08:45 | Сообщение # 3

Ранг: Прибывший
Группа: Сталкер
Сообщений: 8
Награды: 0
Регистрация: 28.03.2009
Статус: Offline
Пол: Мужчина
Город:   


подскажите пожалуйста как например на локации "росток" возродить и расставить гражданских зомби
а то эту статью я как то не очень понял %)
и еще вопрос чем можно открыть allspawns ?

Добавлено (18.04.2009, 14:08:29)
---------------------------------------------
что-то я застрял на монстрах :(
никак не могу вставить зомбей :(
начнем с начала:

сначала в файле config\creatures\m_zombie.ltx я добавил [zombie_weak]:m_zombie_e
затем добавил smart_terrain_choose_interval = 00:15:00
и такую строчку: critical_wound_threshold = 0.4
critical_wound_decrease_quant = 0.

затем в файле xr_statistic*****ipt. прописал zombie_weak = 1, zombie_normal = 2, zombie_strong = 3,
далее прописал [clsid.zombie_s] = "zombie",
затем в файле _g*****ipt добавил otype == clsid.zombie or

потом я запускаю spawner нажимаю ctrl O выбираю сейв, потом открываю allspawns и появляется многобукав :)
затем нажимаю "добавить объект в базу" класс - monstrs, имя - m_zombie_e
и добавляю объект!

и конечно же никакого зомби не появляется :(
скажите пожалуйста где у меня ошибка
одна кажется в строчке zombie_weak = 1, zombie_normal = 2, т.к у зомби другая классификация
но мне кажется загвоздка не в этом и я где-то намудрил
ПОДСКАЖИТЕ ПОЖАЛУЙСТА !!!!

Добавлено (18.04.2009, 14:08:45)
---------------------------------------------
что-то я застрял на монстрах :(
никак не могу вставить зомбей :(
начнем с начала:

сначала в файле config\creatures\m_zombie.ltx я добавил [zombie_weak]:m_zombie_e
затем добавил smart_terrain_choose_interval = 00:15:00
и такую строчку: critical_wound_threshold = 0.4
critical_wound_decrease_quant = 0.

затем в файле xr_statistic*****ipt. прописал zombie_weak = 1, zombie_normal = 2, zombie_strong = 3,
далее прописал [clsid.zombie_s] = "zombie",
затем в файле _g*****ipt добавил otype == clsid.zombie or

потом я запускаю spawner нажимаю ctrl O выбираю сейв, потом открываю allspawns и появляется многобукав :)
затем нажимаю "добавить объект в базу" класс - monstrs, имя - m_zombie_e
и добавляю объект!

и конечно же никакого зомби не появляется :(
скажите пожалуйста где у меня ошибка
одна кажется в строчке zombie_weak = 1, zombie_normal = 2, т.к у зомби другая классификация
но мне кажется загвоздка не в этом и я где-то намудрил
ПОДСКАЖИТЕ ПОЖАЛУЙСТА !!!!







Сообщение отредактировал Nemesis - Воскресенье, 12.04.2009, 13:25:13
 
Рядовой Дата: Воскресенье, 13.09.2009, 16:03:11 | Сообщение # 4

Ранг: Познающий
Группа: Сталкер
Сообщений: 95
Должность : Штурмовик
Награды: 30
Регистрация: 09.08.2009
Статус: Offline
Пол: Мужчина
Город: Вильнюс  


А как карлика в игру вернуть


 
Уатто Дата: Воскресенье, 13.09.2009, 16:59:53 | Сообщение # 5

Ранг: Мастер
Группа: Сталкер
Сообщений: 2548
Награды: 304
Регистрация: 11.12.2008
Статус: Offline
Пол: Мужчина
Город: Заполярье  


Рядовой делай 3D модель, делай ей анимацию, рисуй текстуры и добавляй в игру...
 
Freezer Дата: Вторник, 22.02.2011, 19:07:07 | Сообщение # 6

Ранг: Знаток Зоны
Группа: Заблокированные
Сообщений: 603
Должность : Связист
Награды: 47
Регистрация: 07.11.2010
Статус: Offline
Пол: Мужчина
Город: Тамбов  


Щас вам новые монстры!Ага!Но совет могу дать:можете скопировать и сделать сначала дубликат монстра,например химеру и взять кусочек от кровососа,отвечаюший за невидимость.И будет у вас химера-стелс.А при желании можно телекинес приписать химере,будет пси волнами атаковать,фантомы создавать.Ну и анимки можно поменять.
Вот мой урочек
 
BotKILLer Дата: Среда, 23.02.2011, 17:03:23 | Сообщение # 7

Ранг: Разведчик
Группа: Сталкер
Сообщений: 249
Награды: 9
Регистрация: 04.09.2009
Статус: Offline
Пол: Мужчина
Город:   


Freezer, Это то как но всеравно полностью нового монстра не зделаеш(нужно править xrGame.dll) можно лиш изменить старых или на основе старых зделать нового с другой моделью.




В разработке: B.O.L. mod and Crusader Land

 
comador Дата: Пятница, 04.03.2011, 09:04:50 | Сообщение # 8

Ранг: Знаток Зоны
Группа: Сталкер
Сообщений: 508
Награды: 71
Регистрация: 03.03.2011
Статус: Offline
Пол: Мужчина
Город:   


Freezer, если вы играли в солянку, то должны были видеть, что Библиотекарь (с Метро) прекрасно "чувствует" себя в игре (бегает, "резвится"), т.е. анимки присутствуют. Видел еще модель Коготь смерти (вроде так называется), которую вытянули и прописали в Сталкере.


Не столь важно что ты делаешь, важно как ты это делаешь! (Джимми Лансфорд)
 
MrHeAdShot Дата: Суббота, 05.03.2011, 15:35:42 | Сообщение # 9

Ранг: Новичок
Группа: Сталкер
Сообщений: 38
Должность : Странник
Награды: 10
Регистрация: 15.10.2010
Статус: Offline
Пол: Мужчина
Город: Калининград  


Здравствуйте!Мне нужны все вырезанные монстры , расставленные по локам и с нормальным спавном.Можно ли такое реализовать?


Пойди туда , не знаю куда , принеси то , не знаю что...
Это наверное про ЧАЭС и Монолит?
 
StormyMoore Дата: Вторник, 31.05.2011, 14:03:04 | Сообщение # 10

Regular Combat Force

Ранг: Новичок
Группа: Сталкер
Сообщений: 55
Должность : Походной повар
Награды: 1
Регистрация: 19.05.2011
Статус: Offline
Пол: Мужчина
Город: Мухосранск  


тему надо назвать "вырезанные монстры", поскольку добавить действительно новых монстров не представляется возможным. имхо.


WIND - j064kde3048 number of unit
Хорошо уметь наслаждаться короткими, но самыми счастливыми моментами жизни. например, когда ешь банку подогретой тушёнки..
 
Vova-VIP Дата: Пятница, 22.07.2011, 21:13:29 | Сообщение # 11

Ранг: Знаток Зоны
Группа: Сталкер
Сообщений: 727
Должность : Модострой
Награды: 30
Регистрация: 02.03.2009
Статус: Offline
Пол: Мужчина
Город: Челябинск  


Помню я как-то крысу пробовал возвращать. Получилось, вот только после неё бинокль ГГ перестал доставать ^_^ Пришлось крысу обратно убирать. Кто-нибудь знает из-за чего это?


Истинный путь MOD ver. 1.3.0 (ТЧ) готов!
Истинный путь 2: Пролог в разработке...
 
Вектор Дата: Понедельник, 15.08.2011, 13:24:53 | Сообщение # 12

Weapon Pack

Ранг: Мастер
Группа: Сталкер
Сообщений: 530
Должность : Модостроитель
Награды: 52
Регистрация: 14.11.2010
Статус: Offline
Пол: Парень
Город: Шахунья  


StormyMoore, новых монстров добавляли, например в АМК - электрохимера и др.



Weapon Pack: Дополнение 1 в разработке...
 
Одинокий-Волк Дата: Суббота, 24.09.2011, 12:01:11 | Сообщение # 13

The king of fight Лёха_ТЦ

Ранг: Разведчик
Группа: Сталкер
Сообщений: 291
Награды: 64
Регистрация: 22.07.2011
Статус: Offline
Пол: Мужчина
Город:   


Quote (StormyMoore)
тему надо назвать "вырезанные монстры", поскольку добавить действительно новых монстров не представляется возможным. имхо.

не с чего ты это взял вполне можно и новых сделать с нуля



МОИ ПОМЫСЛЫ ВАМ НЕ ПОНЯТЬ....
со стукачами переговоры не веду.
[spoiler]ВОЛЧЬЕ ПРАВО - вечно быть первым...
ВОЛЧЬЯ ДОЛЯ - вечно сражаться...
ВОЛЧЬЯ СИЛА - стальные нервы...
ВОЛЧЬЯ ГОРДОСТЬ - никого не бояться...
ВОЛЧЬИ ЗАКОНЫ - стая едина...
ВОЛЧЬЯ ДОБЛЕСТЬ - до последнего драться...
ВОЛЧЬЯ СТАЯ - непобедима
ЕСЛИ ТЫ ВОЛК - НИКОГДА НЕ СДАВАЙСЯ
[/spoiler]
 
Carnaged Дата: Среда, 28.09.2011, 18:04:48 | Сообщение # 14

Снайпер Свободы

Ранг: Сталкер
Группа: Сталкер
Сообщений: 340
Должность : Снайпер
Награды: 15
Регистрация: 22.05.2010
Статус: Offline
Пол: Мужчина
Город: Воронеж  


Всё возможно главное материал найти!



СВОБОДА ЭТО СТАЛКЕР А СТАЛКЕР ЭТО СВОБОДА!!! ТАК КТО ЖЕ ТЫ ???
 
Одинокий-Волк Дата: Четверг, 29.09.2011, 15:49:33 | Сообщение # 15

The king of fight Лёха_ТЦ

Ранг: Разведчик
Группа: Сталкер
Сообщений: 291
Награды: 64
Регистрация: 22.07.2011
Статус: Offline
Пол: Мужчина
Город:   


Carnaged, да не обязательно некоторые вон с нуля делают



МОИ ПОМЫСЛЫ ВАМ НЕ ПОНЯТЬ....
со стукачами переговоры не веду.
[spoiler]ВОЛЧЬЕ ПРАВО - вечно быть первым...
ВОЛЧЬЯ ДОЛЯ - вечно сражаться...
ВОЛЧЬЯ СИЛА - стальные нервы...
ВОЛЧЬЯ ГОРДОСТЬ - никого не бояться...
ВОЛЧЬИ ЗАКОНЫ - стая едина...
ВОЛЧЬЯ ДОБЛЕСТЬ - до последнего драться...
ВОЛЧЬЯ СТАЯ - непобедима
ЕСЛИ ТЫ ВОЛК - НИКОГДА НЕ СДАВАЙСЯ
[/spoiler]
 
Carnaged Дата: Суббота, 01.10.2011, 23:31:02 | Сообщение # 16

Снайпер Свободы

Ранг: Сталкер
Группа: Сталкер
Сообщений: 340
Должность : Снайпер
Награды: 15
Регистрация: 22.05.2010
Статус: Offline
Пол: Мужчина
Город: Воронеж  


rd_team, Ну так а я про что, главное чтобы было что в игру вставлять.



СВОБОДА ЭТО СТАЛКЕР А СТАЛКЕР ЭТО СВОБОДА!!! ТАК КТО ЖЕ ТЫ ???
 
Одинокий-Волк Дата: Четверг, 13.10.2011, 10:14:21 | Сообщение # 17

The king of fight Лёха_ТЦ

Ранг: Разведчик
Группа: Сталкер
Сообщений: 291
Награды: 64
Регистрация: 22.07.2011
Статус: Offline
Пол: Мужчина
Город:   


Carnaged, ну так щяс не проблема научиться делать модели для игры а конфиги и остальное подобрать не проблема



МОИ ПОМЫСЛЫ ВАМ НЕ ПОНЯТЬ....
со стукачами переговоры не веду.
[spoiler]ВОЛЧЬЕ ПРАВО - вечно быть первым...
ВОЛЧЬЯ ДОЛЯ - вечно сражаться...
ВОЛЧЬЯ СИЛА - стальные нервы...
ВОЛЧЬЯ ГОРДОСТЬ - никого не бояться...
ВОЛЧЬИ ЗАКОНЫ - стая едина...
ВОЛЧЬЯ ДОБЛЕСТЬ - до последнего драться...
ВОЛЧЬЯ СТАЯ - непобедима
ЕСЛИ ТЫ ВОЛК - НИКОГДА НЕ СДАВАЙСЯ
[/spoiler]
 
stalkervol Дата: Пятница, 18.11.2011, 18:28:56 | Сообщение # 18

Ранг: Разведчик
Группа: Сталкер
Сообщений: 240
Должность : Проводник
Награды: 3
Регистрация: 02.01.2011
Статус: Offline
Пол: Мужчина
Город: Москва  


где находиться функция alife:create?
 
Vova-VIP Дата: Пятница, 18.11.2011, 19:25:44 | Сообщение # 19

Ранг: Знаток Зоны
Группа: Сталкер
Сообщений: 727
Должность : Модострой
Награды: 30
Регистрация: 02.03.2009
Статус: Offline
Пол: Мужчина
Город: Челябинск  


stalkervol, не понял вопроса. Что ещё за функция alife:create? Через неё обычной с помощью скрипта спавнят объекты, зачем тебе её искать?


Истинный путь MOD ver. 1.3.0 (ТЧ) готов!
Истинный путь 2: Пролог в разработке...
 
Mакc Дата: Воскресенье, 15.04.2012, 02:09:38 | Сообщение # 20

Ранг: Познающий
Группа: Журналист
Сообщений: 86
Награды: 5
Регистрация: 03.01.2012
Статус: Offline
Пол: Парень
Город: Москва  


Монстры уже на самом деле довольно распространённая тема и добавить таковых уже совсем не сложно, в особенности если вы работаете на такой платформе как ТЧ. В развитие темы выкладываю несколько ссылок на полезные темы с AMK Форума.



Зона меня любит... ©

Сообщение отредактировал Mакc - Воскресенье, 15.04.2012, 02:10:21
 
Форум настоящего сталкера » S.T.A.L.K.E.R. Shadow of Chernobyl » Теория модостроения » Новые монстры (Добавление в игру вырезанных мобов...)
Страница 1 из 212»
Поиск:







Вверх >