Как добавить еду в сталкер

Обновлено: 17.05.2024

В папке Scripts создаем чистый скриптовый файл с именем inv_food и в него поместим функцию:

function use_med()
if eat and type(eat) == 'number' then
if not level.object_by_id( eat ) then
local snd_obj = xr_sound.get_safe_sound_object([[interface\inv_food]])
snd_obj:play_no_feedback(db.actor, sound_object.s2d, 0, vector(), 1.0)
end
eat = nil
end

if eat and type(eat) == 'userdata' then
eat = eat:id()
else
eat = nil
end
end

function drop_med(obj)
local obj_sect = obj:section()
if obj_sect == 'conserva' or obj_sect == 'kolbasa' or obj_sect == 'bread' then
eat = obj
end
end

где, (выделено жирным) local snd_obj = xr_sound.get_safe_sound_object([[interface\inv_food]]) - это путь к звуку;

if obj_sect == 'conserva' or obj_sect == 'kolbasa' or obj_sect == 'bread' then, это объекты на которые распространяется озвучка.

Затем в файле bind_stalker.script лежащий в папке script под строчкой function actor_binder:update(delta) напишем следующие:

в этом же файле под строчкой function actor_binder:on_item_drop (obj) пишем:

Вот и все. По образу и подобию создаем озвучку и для водки с энергетиком и аптечки.

Как добавить еду в сталкер


Привет, сталкер! Заплутал?
Проходи, садись.Cогреем.
Ну что стоишь то как вкопанный?!
Давай уже проходи, чувствуй
себя как дома!


Ходит по Зоне любопытная легенда. Будто один сталкер на дикой территории встретился лицом к лицу сразу с тремя мутантами и, что самое интересное, расправился с ними. Поговаривают, что ему помогли в этом какие-то таблетки, дающие чудовищную силу. А чтобы не пропитаться насквозь радиацией, смельчак, говорят, регулярно пил невесть откуда взявшийся в Зоне ром.

Это не просто красивая история — в модификации, которую мы сегодня создадим, найдется место и наркотикам, и рому (и прочим алкогольным напиткам), и фантастическим подвигам.

В первом вскрытии «Сталкера» (см. прошлый номер «Игромании») мы воспользовались утилитой S.T.A.L.K.E.R. Data Unpacker (устанавливайте ее с нашего DVD из раздела «Игрострой»), она умеет распаковывать «сталкеровские» архивы. Сегодня нам без нее тоже не обойтись.

Файл разделен на три части (имена каждой из них отмечены рядами точек с запятыми): FOOD, MEDICAL и DEVICES. Каждая из них содержит характеристики различных видов предметов: первая — продуктов питания, вторая — медицинских принадлежностей, третья — всевозможных девайсов.

Каждой отдельной вещи отводится свой раздел (блок), имя которого заключено в квадратные скобки. Практически во всех блоках из первых двух частей файла вы сможете встретить следующие атрибуты:

cost — стоимость предмета;

inv_name — название вещи; обратите внимание, что здесь прописывается не то наименование, которые вы видите в игре, а лишь ссылка на него (имя раздела в файле string_table_enc_equipment.xml, в нем содержится само название);

inv_grid_width — количество клеток по горизонтали, которое занимает вещь в инвентаре;

inv_grid_height — число клеток по вертикали;

description — описание предмета; как и в случае с показателем inv_name, здесь содержится не сам текст, а лишь указание на него (а точнее — название соответствующего раздела в файле string_table_enc_equipment.xml).

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

eat_health — прибавка к здоровью;

eat_satiety — насыщение организма (сытость);

eat_power — бонус к силе (энергии);

eat_radiation — защита от радиации; в данном случае отрицательное значение параметра улучшает защиту (при положительном значении ваш герой будет переносить радиацию еще тяжелее, чем обычно);

eat_alcohol — действие алкоголя; чем выше число, тем большие проблемы со зрением и координацией испытывает герой;

wounds_heal_perc — остановка кровотечения.

Пиво и ром — почувствуйте разницу. После употребления пива вашего героя лишь слегка заносит на поворотах. Ром куда крепче — перед глазами все буквально плывет.

Путем редактирования файла items.ltx добавим в игру ряд уникальных полезных вещиц, которые здорово разнообразят джентльменский набор сталкера и окажут вам неоценимую помощь в сложных игровых ситуациях.

Водку описывает блок под названием vodka (кто бы мог подумать?!). Ее мы преобразуем в ром или там пиво — как вам угодно. В первом случае понадобятся следующие изменения: cost — 200, eat_satiety — 0, eat_health — -0.03, eat_radiation — -0.5, eat_alcohol — 0.3.

В оригинале водка слегка сбивает у вас аппетит и чуть-чуть укрепляет здоровье — все это, согласитесь, не совсем естественно. У нас же в моде заменяющий ее ром никакого насыщения организму не дает, а здоровье, наоборот, заметно подсаживает. Да и крепкий он очень — в глазах от него плывет еще сильнее, чем он водки (так что будьте с ним осторожнее). Зато он намного эффективнее борется с радиацией.

Если вы желаете заменить водку пивом, изменения должны быть такими: cost — 50, eat_health — 0, eat_radiation — -0.2, eat_alcohol — 0.05. Этот пенный напиток в нашем моде, по сути, является облегченной версией водки: от радиации предохраняет похуже, но и опьянение от него слабое.
Энергетик

Энергетический напиток Non Stop несложно переделать в алкогольно-энергетический. Для того чтобы изготовить этот чудный коктейль, нужно перейти в раздел energy_drink и смешать ингредиенты в следующих пропорциях: cost — 80, eat_power — 0.7, eat_alcohol — 0.08, eat_radiation — -0.3. Готово — можно пробовать. Однако учтите, что эта гремучая смесь немного опьяняет, зато является средством защиты от радиации и энергетиком в одном флаконе. Хотя, конечно, оба этих полезных качества в данном случае не столь эффективны, как при использовании узкоспециализированных водки и Non Stop.
Наркотик

Обычную же консерву мы превратим в. мощный наркотик-стимулятор (благо консервы в игре не очень-то и нужны, ведь есть другая еда — хлеб и колбаса). Все, что для этого нужно, — внести следующие преобразования в блок conserva: cost — 120, inv_weight — 0.2, eat_health — -0.05, eat_satiety — 0.1, eat_power — 1.8. Получившаяся смесь губительно сказывается на здоровье, но дает просто фантастический прилив энергии, да и весит всего ничего. Кроме того, этот наркотик немного отбивает аппетит.

С «начинкой» покончено. Осталось придать продуктам питания подходящий внешний вид, а также сделать соответствующие названия и описания.

Наркотик дает столь мощный прилив энергии, что враги подчас просто не поспевают за действиями главного героя.

Все xml-файлы устроены следующим образом. Каждой надписи соответствует небольшой раздел вида:

Здесь X — название блока, то есть кодовое наименование объекта, к которому относится надпись. Y — сам текст.

Сначала исправьте названия переделанных нами ранее вещей. Отыщите блок со словом Vodka. На месте Y в нем стоят слова «водка «Казаки». Исправьте ее на «Ром» или «Пиво» (без кавычек) — в зависимости от того, какой напиток вы добавили в игру.

Далее подредактируйте описания экс-водки (раздел enc_equipment_food_vodka1), экс-энергетика (enc_equipment_energydrink) и экс-консервов (enc_equipment_food_conserva1).

Ром значительнее лучше водки защищает от радиации. Но лучше им не злоупотреблять.

Скопируйте файл ui_icon_equipment.dds в каталог, в который вы установили DXT Tools. Находясь в этом каталоге, наберите в командной строке: readdxt.exe ui_icon_equipment.dds. В результате вы получите искомую картинку в виде файла test.tga. Открывайте его в Photoshop (или в каком-то другом мощном графическом редакторе) и готовьте кисти.

Полученный файл содержит альфа-канал. Чтобы его увидеть, в списке каналов (меню Channels) программы выберите пункт Alpha 1 (вместо прежнего RGB). Вашему взору предстанут знакомые вам по игре изображения, но закрашенные в белый цвет. Эти шаблоны задают форму каждого отдельного предмета и его границы. Если вы задались целью хоть чуточку изменить размер объекта, не забудьте отредактировать и альфа-канал. Например, если вы подрисовываете к вещи какой-то новый элемент, перейдите в режим в Alpha 1 и обязательно залейте его белым цветом.

Впрочем, если вы не планируете глобальных изменений, можно и вообще не трогать альфа-канал. Например, для трансформации водки в ром или пиво совершенно необязательно менять форму бутылки. Достаточно просто-напросто «переклеить» этикетку и нанести какую-то новую надпись (название напитка или производителя) или логотип. То же самое и с банкой энергетика. Только учтите, что новые рисунки должны быть максимально крупными, иначе вы их просто не разглядите в игре.

Консервную банку можно преобразовать в. таблетку. Здесь-то вам как раз и пригодится альфа-канал. Совсем несложно закрасить черным цветом (именно тем его оттенком, что разграничивает предметы в файле) консерву и на ее месте с использованием инструмента «Эллипс» (Ellipse Tool) нарисовать одну или лучше несколько таблеточек. После этого, перейдя в режим альфа-канала, закрасьте получившиеся кружки белым цветом.

Мы добавили в игру четыре невиданных ранее продукта: ром, пиво, алкогольно-энергетический напиток и наркотик-стимулятор. При желании вы можете сотворить еще несколько не менее полезных продуктов, изменяющих характеристики главного героя. Описанным в статье способом очень легко создавать небольшие, но крайне интересные модификации. Главное — не забывать о балансе

Как добавить еду в сталкер

Спавн новых предметов

В этой статье я расскажу как создавать новые предметы:

inv_name = Bread
inv_name_short = Bread
inv_weight = 0.3 ;0.2

inv_grid_width = 1
inv_grid_height = 1
inv_grid_x = 11
inv_grid_y = 9
cost = 20

attach_angle_offset = -0.287979, 1.560923, 1.544060
attach_position_offset = 0.096910, -0.013594, 0.107925
attach_bone_name = bip01_r_hand
auto_attach = false

// should be deleted after update
bone_name = bip01_r_hand
position_offset = 0.0,0.0,0.0
angle_offset = 1.570790,1.570790,3.92699

; eatable item
eat_health = 0.05
eat_satiety = 0.2
eat_power = 0
eat_radiation = 0
wounds_heal_perc = 0
eat_portions_num = -1

; food item
slot = 4
animation_slot = 4

;hud item
hud = wpn_vodka_hud

Вставляем его копию в конец, меняем название:

А также:
inv_name = Bread
inv_name_short = Bread

На:
inv_name = test
inv_name_short = test

И description = enc_equipment_food_bread1 на description = enc_equipment_food_bread1_test

И, также, "по желанию":

eat_health = 0.05 eat_satiety = 0.2 eat_power = 0 eat_radiation = 0 wounds_heal_perc = 0 eat_portions_num = -1

Всё, в item.ltx работа закончена, теперь переходим к редактированию описания, открываем string_table_enc_equipment "Блокнотом". Что мы там видим: все описания и названия прописаны по тегам:

<string >
Название в игре

<string >
Описание в игре

<string >
Тестовый предмет

<string >
Тестовый предмет, разработанный в сверхсекретных лабораториях Зоны :)

Сохраняем. Все! Основная работа завершена! Теперь добавим предмет торговцам, например, Сидоровичу.

Открываем trade_trader из папки config/misc (работа с ним подробно описана в этой статье), прописываем:

Сохраняем, запускаем игру, торгуем с Сидоровичем и видим у него два вида хлеба: один из них - наш :)

О том как, делать иконки для новых предметов, детально описано в статье BAC9-FLCL.

Информация о пользователе

S.T.A.L.K.E.R|Модостроение

Шутки из Зоны

Залетает разъяренный Меченый к Сидоровичу в бункер, достаёт АК и всаживает в него всю обойму, выбрасывает пустую, заряжает новую и снова высаживает её всю. так раз пять. затем останавливается, удивленно смотрит на Сидоровича, откидывает автомат и падает на колени, слезы текут с глаз:
- Вот он - Бог! - прошептал Меченый

Спорят как-то Меченый с Волком.
Меченый: Связка ломов, как правило, тонет.
Волк: Но в ртути прекрасно плавает.
Меченый: Но если ломы урановые, то и во ртути тонут.
Волк: сам топи урановые ломы в ртути.

- Гюльчатай, открой личико! Ну, открой же! - в который раз просил Петруха.
- Хреновы военные! Мало того, что надругались, так ещё издеваются, гады! - подумал про себя грустный снорк.

Заходит сталкер в бар:
- Бармен! - кричит он.
Выходит бармен, говорит:
- Извините, но бар закрыт, откроется только через час.
Сталкер, усаживаясь за столик:
- Ничего, я подожду!
Бармен: Может пока что-нибудь закажете?

К Воронину нас не пустили, но сержант Пличко рассказал свой любимый анекдот: "Новобранец "Долга" жалуется: "Товарищ старшина, смотрите, что мне выдали: брюки только до колен, рубаха болтается, рукава коротки, сапоги хлябают, глядеть страшно".
- Все в порядке, - сказал старшина, - воин "Долга" должен внушать страх".

Пришёл сталкер к Сахарову и говорит:
- Профессор, почему мной кровососы брезгуют?
- Молодой человек, я же вам говорил, что в вашем спирту крови не обнаружено!

Сталкер-новичок в первый раз пришёл в Бар. Просит меню, но вместо этого сразу получает тарелку с непонятной жратвой. Спрашивает:
- А я могу сам выбрать?
- Можешь, - ответил Бармен. - Хочешь - ешь, хочешь - не ешь.

Доктор:
- Посмотрел я ваши анализы, молодой человек, и должен огорчить: у вас глисты.
Пациент (браток):
- Да ну. Диагноз какой-то не пацанский. Братва меня засмеёт! Доктор:
- Не проблема! Напишем "очковые змеи".

Отношения сталкеров и военных.
Блокпост: Стой, кто идет?
Сталкер: Свои, с бутылкой!
Блокпост: Свои, проходи! Бутылка - стой!

- Представляешь, я вчера забыл на базе автомат!
- Ой-ой-ой. И когда ты про него вспомнил?
- К сожалению, только тогда, когда принёс торговцу щупальца кровососа.

Семья сталкера. Все сидят за столом, молча ужинают. Вдруг сын задевает бутылку с водкой локтём. Бутылка стремительно летит к полу. Но в сантиметре от пола сын успевает подхватить бутылку. Ставит на стол и обращается весело к отцу:
- Пап, приколи, бутылка была на волоске от смерти!
Сталкер прячет пистолет и говорит серьезным голосом:
- Ты тоже, сынок!

Молодой сталкер подбежал к псевдопсу и стал гладить его пышный хвост. Ветеран в испуге кричит:
- Что ты делаешь? Он же порвет тебя!
- Нет, чувак, с этого конца они не кусаются.

Поймал вояка сталкера на периметре:
- Щас я тебе покажу, как в Зону лазить!
- Ф-фух, слава Богу, а то меня уже 3-й раз ловят!

Сталкеры, не пейте палёную водку - кровососы травятся.

Стоят два наемника, ждут "заказанного" сталкера. Его все нет и нет. Один спрашивает другого:
- Что-то долго его нет. Может, случилось что?

Два сталкера:
- Ты с каждым днём всё больше становишься похож на алкаша.
- Это почему же?
- Да у тебя руки трясутся, когда ты ведро с водкой ко рту подносишь!

- Ты чего такой грустный?
- Да вот, пошли с мужиками на кабана охотиться. Кабан не пришел. Ну, мы и напились как свиньи. И тут пришел кабан.

Идут два сталкера по дороге. Один спрашивает:
- А что делать, если меня кровосос схватит?
- Сопротивляйся подольше, чтобы я успел убежать!

Трусливые сталкеры в засаде:
- Почему же ты не стреляешь в этого кровососа?
- Ты разве не видишь, как бежит?! Может, бешеный, ну его к черту!

- Какая первая обязанность долговца на войне?
- Умереть за свою идею!
- Неправильно. Первая обязанность долговца - сделать так, чтобы свободовцы умерли за свою идею!

- Доктор, приходите скорей, у Меченого "белочка"!
- А что, собственно, случилось?
- По комнате скачут белые лошади, а он их не замечает!

Лукаш:
- Кто поедет зачищать заставу "Долга", два шага вперед.
Из строя выходят два бойца.
Лукаш:
- А остальные пойдут пешком. Гы-гы-гы.

Приснилось сталкеру его собственная могила - у дубка, на его родине. Тот, проснувшись, подумал, что это означает. И решил пока в Зоне отсидеться.

Идут занятия по уставу караульной службы в "Долге".
- Рядовой Петров! Вы стоите на посту и замечаете, что к вам подползает человек. Ваши действия?
- Отведу генерала Воронина в штаб.

Один сталкер другому:
- Я попадаю в крысу с расстояния ста шагов.
- Интересно, где ты найдешь таких крыс, которые ждут, пока ты отмеришь сто шагов?

Приходит Меченый к Болотному доктору:
- Доктор, меня мучает бессонница!
- Примите слабительное.
- И я от него усну?
- Нет, но, по крайней мере, вам будет чем заняться.

В гоpодке около Периметра женщина сообщает соседке:
- Вчера кто-то весь огород вытоптал.
- Может сталкеры?
- Да ну, какие сталкеры, следы-то человеческие.

Стоят два монолитовца и держат плакат. На плакате надпись: "Сверните со своего пути, неверные, или погибните!"
Мимо ехал на ниве Стрелок. Увидев надпись, он крикнул со всей злости: "Религиозные фанатики. " - и нажал на педаль газа. Через пару секунд послышался всплеск воды.
Один сектант говорит другому:
- Слушай, Фёдор, может нам нужно было попроще написать: "Мост поломан"?

Ты охренел фраер, ничего не попутал. Вали давай отсюда.

Сталкера ограбили на дороге бандиты.
- Почему же ты не мог дать им отпор? - удивились товарищи.
- А что я мог поделать? - Обиделся сталкер. - У меня были заняты руки: в правой был нож, а в левой - ружье.

База бандюков. Базарят два братка:
- Стало быть, надо тебе двадцать тыщь. Я их тебе дам, но какая гарантия, что ты их через месяц вернешь?
- Слово честного человека!
- Лады! Вот нынче вечером ты этого человека и приводи, поглядим.

Подходит, значит, сталкер к Монолиту. Тот ему:
- Загадывай желание.
- Хочу, чтоб Зона исчезла.
- Не, ну ты загнул. Попроси чё полегче.
- Ну, тогда сделай так, чтоб Сидорович при торговле не обманывал.
- Так что ты там насчёт Зоны говорил.

Новобранец блокпоста в Зоне присылает домой гранату с письмецом:
- Бабушка, если ты дёрнешь за это колечко, то я получу 3 дня отпуска.

Ползут два сталкера, пересекают периметр. Вдруг один вляпывается рукой в дерьмо. Второй начинает ржать. Первый (зажимая ему рот рукой):
- Тихо, военных встревожишь!

- А я свою девушку в армию вчера проводил. Я ее любить буду, я ее ждать буду, я ей ребёночка рожу маленького такого.
- Ты че? Ты же мужик! Большого рожай!

- Деда, а расскажи, как ты в Зоне два вертолета сбил!
- Ну-у-у. Не совсем сбил.. Скажем так: недозаправил!

Зашёл как-то Стрелок на базу бандитов. Продал то, что не надо, закупил, то что надо. И перед уходом говорит толпе бандитов, сидящих на выходе:
- Ну что, драконы, отдыхаете?-
Бандиты в непонятках: что за новое слово "Драконы"? Пошли они к своему бугру спросить. Тот им и отвечает:
- Драконы - это те же петухи, только у них гребешок во всю спину.

О сайте

Приветствую случайный посетитель, хотя, скорее, вы попали на этот сайт намеренно. И вот, что вы можете здесь отыскать: большую информационную базу по игре S.T.A.L.K.E.R., если быть конкретнее, то информация, размещенная на данном сайте, преимущественно касается разбора игры в качестве скриптовой платформы. Если быть проще, сайт посвящен модостроению. Надеюсь, вы останетесь довольны сайтом.

CS. Создание новых предметов (еда,квестовые)

Здраствуйте. В этом уроке мы научимся создавать новую еду, квестовые предметы.

Просто скажу что вы можете взять модель и текстуру вашей еды а также иконку из других модов независимо от платформы (ЗП, ТЧ)

Ну что ж давайте начнем

Для начала откроем gamedata\configs\misc\items.ltx

bread и его дальнейшее описание

Создаем новую еду

Я создам напиток Non stop
пишем ниже

[energy_drink_1]:vodka
$spawn = "food and drugs\energy_drink_1"
inv_name = st_energy_drink_1
inv_name_short = st_energy_drink_1
visual = dynamics\devices\dev_drink_stalker\dev_drink_stalker
description = st_energy_drink_1_descr
cost = 80

inv_grid_width = 1
inv_grid_height = 1
inv_grid_x = 19
inv_grid_y = 7
inv_weight = 0.2

eat_health = 0
eat_satiety = 0
eat_power = 0.5
eat_alcohol = 0
eat_radiation = 0
wounds_heal_perc = 0
eat_portions_num = 1
eat_max_power = 0.2

attach_angle_offset = 0.000000, 0.000000, 0.000000
attach_position_offset = 0.087266, -0.078540, 0.052360
attach_bone_name = bip01_r_hand
auto_attach = false

давайте разберем что мы тут написали

[energy_drink_1]:vodka --имя секции и vodka - его прародитель
$spawn = "food and drugs\energy_drink_1" -- для опции в СДК
inv_name = st_energy_drink_1 --имя
inv_name_short = st_energy_drink_1--имя
visual = dynamics\devices\dev_drink_stalker\dev_drink_stalker --модель в данном случае стандартного энергетика
description = st_energy_drink_1_descr --описание
cost = 80 --цена

inv_grid_width = 1 --иконка (работающая)
inv_grid_height = 1
inv_grid_x = 19
inv_grid_y = 7
inv_weight = 0.2 --вес в инвентаре

eat_health = 0
eat_satiety = 0
eat_power = 0.5 - добавляет выносливости
eat_alcohol = 0
eat_radiation = 0
wounds_heal_perc = 0
eat_portions_num = 1
eat_max_power = 0.2

attach_angle_offset = 0.000000, 0.000000, 0.000000
attach_position_offset = 0.087266, -0.078540, 0.052360
attach_bone_name = bip01_r_hand
auto_attach = false

Дальше открываем любой файл из gamedata\configs\text\rus\ и пишем

<string /> <text>Энергетический напиток Non-stop</text>
</string>
<string /> <text>Практически аналог напитка s.t.a.l.k.e.r. но чу чуть дороже а так пьется сталкерами на праздники.</text>
</string>

P.S. отличается чу чуть повыше ценой и иконкой!

Создаем квестовые предметы

Идем в gamedata\configs\misc\quest_items.ltx и пишем

[document_killer]:device_pda
visual = dynamics\equipments\documents_4.ogf
description = kil_document_descr
inv_name = kil_document
inv_name_short = kil_document
inv_weight = 5.0

inv_grid_width = 2
inv_grid_height = 1
inv_grid_x = 6
inv_grid_y = 19
cost = 5000

can_trade = false
quest_item = true

[document_killer]:device_pda -- document_killer имя device_pda его прародитель
visual = dynamics\equipments\documents_4.ogf --- путь к модели
description = kil_document_descr ---описание
inv_name = kil_document ---имя
inv_name_short = kil_document --- имя
inv_weight = 5.0 ---вес

inv_grid_width = 2 --иконка, тут она рабочая
inv_grid_height = 1
inv_grid_x = 6
inv_grid_y = 19
cost = 5000 --цена

can_trade = false --возможность торговать, если поставить true то можно торговать
quest_item = true ---подтвержение того, что это квестовый предмет по умолчанию true

Дальше открываем нужныйфайл из gamedata\configs\text\rus\ и пишем

<string /> <text>Документы о проведенных эксперементах под землей</text>
</string>
<string /> <text>Эти документы ищут наемники, срубить с них можно за них не плохие деньги.</text>
</string>

А почему когда я прописываю свой предмет трупу нпс то они у него не спавнятся?

Идем в gamedata\configs\misc\death_generic

и ищем секцию [keep_items]

и под ней пишем

Ну что ж на этом можно закругляться.

Всем спасибо за просмотри и удачи!

Отредактировано saintsergei (2017-03-25 21:39:03)


Читайте также: