Как изменить характеристики аптечки в сталкер
Мини мод, добавляющий на худ аптечки а также бинты, антирадиационные препараты и водку. Мод позволяет вывести подобным образом иконку и кол-во любого предмета в инвентаре ГГ. Для этого нужно просто вписать нужный вам предмет во все таблицы и указать координату по оси X для показа его иконки. Цвета вывода текста чисто экспериментальные - можете заменить их на любые другие ориентируясь на таблицы цветов (легко найти в инете). По умолчанию цвет цифр золотистый - для всех.
Скрипт вывода на худ иконок аптечек и антирада с указанием их кол-ва в инвентаре.
Скрипт позволяет вывести подобным образом иконку и кол-во любого предмета в инвентаре ГГ.
Для этого нужно просто вписать нужный вам предмет во все таблицы и указать координату по оси X для показа его иконки.
Цвета вывода текста чисто экспериментальные - можете заменить их на любые другие ориентируясь на таблицы цветов (легко найти в инете).
По умолчанию цвет цифр золотистый- для всех.
Важно: скрипт необходимо поставить на апдейт в биндер эктора - то есть прописать вызов hud_med.HudShowMed() в функцию
actor_binder:update(delta) в файле bind_stalker.script
В последней версии сделал возможность настройки отображения статиков как по горизонтали - внизу, так и по вертикали - в правом верхнем углу.
вот так будут выводится по вертикали - 990 - это точка отсчета по оси Х - правый верхний угол
local X = true and 990 --// если true строить по вертикали в правом верхнем углу
local Y = false and 725 --//если true строить по горизонтали внизу
а вот так по горизонтали -- 725 - точка отсчета по оси Y - нижняя часть экрана, левее окошка патронов
local X = false and 990 --// если true строить по вертикали в правом верхнем углу
local Y = true and 725 --//если true строить по горизонтали внизу
Также добавил вывод кол-ва водки и бинтов. Изменил шрифт цифр на более подходящий под размер иконок и шаг между крайними углами статиков с 25 на 30 пикселей.
CoP: Делаем нормальные медикаменты.
Данная мини-статья расскажет вам о том как внести в игру более правильные в плане воздействия медикаменты.
Я полагаю многие играя в компьютерные игры задумались что аптечка(к примеру) на самом деле не должна лечить мгновенно(ну или почти мгновенно, как это сделано в STALKER). Это то мы и исправим, ну и заодно рассмотрим полный список эффектов.
Итак поехали:
Возьмем кусок описания обычной аптечки:
В самом верху мы видим:
Рассмотрим секцию "booster" она по сути содержит пустые конфиги. Прокоментирую основное(параметры которые могут пригодиться).
Теория пройдена.
Итак, мы получили аптечку которая лечит медленно но на протяжение 60 секунд(По сравнению с оригиналом это хоть как то похоже на правду)
Таким же образом можно отредактировать и остальные препараты. Антирад например.
Я полагаю что опьянение здесь в тему так как вещества такого типа считаются наркотическими.
А зная о ранее неиспользуемых эфектах можно создавать новые, тот же к примеру "Анти-похмелин". В пачке которого будет 10 таблеток:
S.T.A.L.K.E.R|Модостроение
Делаем нормальные медикаменты
Данная мини-статья расскажет вам о том как внести в игру более правильные в плане воздействия медикаменты.
Я полагаю многие играя в компьютерные игры задумались что аптечка(к примеру) на самом деле не должна лечить мгновенно(ну или почти мгновенно, как это сделано в STALKER). Это то мы и исправим, ну и заодно рассмотрим полный список эффектов.
Возьмем кусок описания обычной аптечки:
[medkit]:booster
$spawn = "food and drugs\medkit"
visual = dynamics\devices\dev_aptechka\dev_aptechka_low.ogf
inv_name = st_medkit
inv_name_short = st_medkit
description = st_medkit_descr
inv_weight = 0.1
inv_grid_width = 1
inv_grid_height = 1
inv_grid_x = 6
inv_grid_y = 14
cost = 250
boost_time = 10.0
boost_health_restore = 0.01
boost_radiation_restore = 0.0
boost_bleeding_restore = 0.005
В самом верху мы видим:
[medkit]:booster = системное имя:системное имя предмета из которого будут браться недостающие строки конфига
Рассмотрим секцию "booster" она по сути содержит пустые конфиги. Прокоментирую основное(параметры которые могут пригодиться).
[booster]:identity_immunities
GroupControlSection = spawn_group
discovery_dependency =
;$spawn = "food and drugs\booster"
$prefetch = 8
class = S_FOOD
cform = skeleton
visual = dynamics\devices\dev_aptechka\dev_aptechka_low.ogf ; Ссылка на визуал в "stalker\gamedata\meshes"
description = default ; Ссылка на описание предмета "gamedata\configs\text\rus"
inv_name = default ; Ссылка на имя предмета(Аптечка автомобильная) "gamedata\configs\text\rus"
inv_name_short = default ; Ссылка на короткое имя предмета(Апт.Авт.) "gamedata\configs\text\rus"
inv_weight = 0.01 ; Вес предмета
inv_grid_width = 1
inv_grid_height = 1
inv_grid_x = 3
inv_grid_y = 18
cost = 1 ; Стандартная стоимость(конечная зависит от отношения торговца)
; eatable item
eat_health = 0 ; Мгновенно даёт определенное количествово здоровья 1 = 100%
eat_satiety = 0 ; Мгновенное насыщение 1 = 100%
eat_power = 0 ; Мгновенное восстановление силы 1 = 100%
eat_max_power = 0 ; Мгновенное увеличение максимальной силы 1 = 100%(Вроде как. )
eat_radiation = 0 ; Мгновенное увеличение или уменьшение облученности (1 увеличение)(-1 уменьшение)
eat_alcohol = 0 ; Мгновенное увеличение или уменьшение уровня опьянения (1 увеличение)(-1 уменьшение)
wounds_heal_perc = 0 ; я так понял что это скорость затягивания ран, но не уверен.
eat_portions_num = 1 ; Интересный параметр. Количество порций в упаковке (проверена работоспособность от 1 до 99999)
boost_time = 0.0 ; Время действия(распостраняется только на параметры boost_*
boost_max_weight = 0.0 ; Увеличение переносимого веса. Уменьшение не работает, как видимо на всех boost_* =(
boost_health_restore = 0.0 ; Увеличение скорости восстановления здаровья
boost_power_restore = 0.0 ; Увеличение скорости восстановления силы
boost_radiation_restore = 0.0 ; Увеличение скорости вывода радиации
boost_bleeding_restore = 0.0 ; Увеличение скорости заживления ран
;protection Снижают количество получаемого ХИТА
boost_radiation_protection = 0.0 ; Увеличение защиты от радиации
boost_telepat_protection = 0.0 ; Увеличение защиты от телепатического воздействия(от контролеров не спасает)
boost_chemburn_protection = 0.0 ; Увеличение защиты от химических повреждений
;immunity Увеличивают минимальный уровень воздействия для получения ХИТА
boost_burn_immunity = 0.0 ; Увеличение имунитета к огню
boost_shock_immunity = 0.0 ; Увеличение имунитета к электрическому току
boost_radiation_immunity = 0.0 ; Увеличение имунитета к радиации
boost_telepat_immunity = 0.0 ; Увеличение имунитета к пси воздействию
boost_chemburn_immunity = 0.0 ; Увеличение имунитета к химическим воздействиям
boost_strike_immunity = 0.0 ; Увеличение имунитета к выстрелам
boost_wound_immunity = 0.0 ; Увеличение имунитета к ударам
boost_explosion_immunity = 0.0 ; Увеличение имунитета к взрывам
boost_fire_wound_immunity = 0.0 ; Увеличение имунитета к взрывной волне
;use_sound = characters_voice\multiplayer\team_1\voice_roger_3 ; Звук "gamedata\sounds"
[medkit]:booster ; НЕ ТРОГАЕМ.
$spawn = "food and drugs\medkit" ; НЕ ТРОГАЕМ.
visual = dynamics\devices\dev_aptechka\dev_aptechka_low.ogf ; НЕ ТРОГАЕМ.
inv_name = st_medkit ; НЕ ТРОГАЕМ.
inv_name_short = st_medkit ; НЕ ТРОГАЕМ.
description = st_medkit_descr ; НЕ ТРОГАЕМ.
inv_weight = 0.1 ; По желанию
inv_grid_width = 1 ; НЕ ТРОГАЕМ.
inv_grid_height = 1 ; НЕ ТРОГАЕМ.
inv_grid_x = 6 ; НЕ ТРОГАЕМ.
inv_grid_y = 14 ; НЕ ТРОГАЕМ.
cost = 250 ; По желанию
boost_time = 60.0 ; Меняем с 10.0 на 60.0
boost_health_restore = 0.002 ; Меняем с 0.01 на 0.002
boost_radiation_restore = 0.0 ; По желанию
boost_bleeding_restore = 0.0 ; По желанию
use_sound = interface\inv_medkit ; НЕ ТРОГАЕМ.
Итак, мы получили аптечку которая лечит медленно но на протяжение 60 секунд(По сравнению с оригиналом это хоть как то похоже на правду)
Таким же образом можно отредактировать и остальные препараты. Антирад например.
[antirad]:booster
$spawn = "food and drugs\antirad"
visual = dynamics\devices\dev_antirad\dev_antirad.ogf
inv_name = st_antirad
inv_name_short = st_antirad
description = st_antirad_descr
inv_weight = 0.01
inv_grid_width = 1
inv_grid_height = 1
inv_grid_x = 18
inv_grid_y = 12
cost = 750
boost_time = 60.0
boost_radiation_restore = 0.01
eat_alcohol = 0.3
Я полагаю что опьянение здесь в тему так как вещества такого типа считаются наркотическими.
А зная о ранее неиспользуемых эфектах можно создавать новые, тот же к примеру "Анти-похмелин". В пачке которого будет 10 таблеток:
[drug_analgin]:booster
$spawn = "food and drugs\drug_analgin"
visual = dynamics\equipments\medical\drug_coagulant.ogf
inv_name = st_drug_analgin
inv_name_short = st_drug_analgin
description = st_drug_analgin_descr
inv_weight = 0.01
inv_grid_width = 1
inv_grid_height = 1
inv_grid_x = 19
inv_grid_y = 4
cost = 350
Информация о пользователе
Подробный разбор файла actor.ltx
max_item_mass = 999 ; Стоит указывать значения меньше параметра max_walk_weight (см.выше).
jump_speed = 60 ; Высота прыжка. Не указывайте астрономические значения. Гл. герой всё равно не улетит в космос ))
crouch_coef = 1 ; Скорость ползагия "очень сидя" (Ctrl + Shift по умолчанию)
climb_coef = 2 ; Вроде присев (Ctrl)
run_coef = 3 ; Обычный бег с параметром консоли "g_always_run" равным 1
sprint_koef = 4 ; спринт
run_back_coef = 3 ; бег назад
walk_back_coef = 2 ; ходьба назад с клавишей Shift
air_control_param = 1 ; контроль полёта. Выгоден при высоких значениях jump_speed, т.к. можно быстро перемещаться по карте
walk_accel = 17 ; неизвестный параметр
pickup_info_radius = 5 ;радиус, в котором над предметами выводятся их названия при нажатии клавиши "F".
Далее параметры 3d и т.п. смотрим поэтому дальше.
camera_height_factor = 0.85 ; определяет высоту взгляда. Увеличиваем и игрок станет зрительно выше
disp_base = 0 ;угол (в градусах) разлета пуль, когда актер стоит на месте
disp_aim = 0
disp_vel_factor = 0 ;на сколько увеличится дисперсия при скорости в 10 м/с (не обязательно при беге)
disp_accel_factor = 0 ;еще на сколько увеличится, если актер бежит (+ скорость)
disp_crouch_factor = 0 ;уменьшение если актер сидит
disp_crouch_no_acc_factor = 0 ;уменьшение если актер сидит + no acceleration
Чтобы уменьшить размер прицела можно сделать так.
Дальше увидим секцию [actor_immunities_gd_***] (вместо *** нужный ранг)
Чтобы увеличить живучесть - меняем значение ниже.
burn_immunity = 0.0
strike_immunity = 0.0
shock_immunity = 0.0
wound_immunity = 0.0
radiation_immunity = 0.0
telepatic_immunity = 0.0
chemical_burn_immunity = 0.0
explosion_immunity = 0.0
fire_wound_immunity = 0.0
Дальше видим [actor_condition]
И настройка в лучшую сторону будет таковой:
satiety_v = 0 ;скорость уменьшения сытости со временем
radiation_v = 1 ;скорость уменьшения радиации
satiety_power_v = 1 ;увеличение силы при уменьшении сытости
satiety_health_v = 1 ;увеличение здоровья при уменьшении сытости
satiety_critical = 0 ;критическое значения сытости (в процентах от 0..1) когда здоровье начинает уменьшаться
radiation_health_v = 0 ;уменьшение здоровья при воздействии радиации
morale_v = 1 ;скорость восстановления морали
psy_health_v = 1 ;скорость восстановления psy-здоровья
alcohol_v = -1
health_hit_part = 0 ;процент хита, уходящий на отнимание здоровья
power_hit_part = 0 ;процент хита, уходящий на отнимание силы
max_power_leak_speed = 0 ;накопление усталости (макс граница, до которой восстанавливается сила) в секунду игрового времени
max_walk_weight = 1000 ; Вес, при котором игрок не может двигаться. Указать можно любое значение.
bleeding_v = 0 ;потеря крови при номинальной ране в секунду
wound_incarnation_v = 1 ;скорость заживления раны
min_wound_size = 0 ;минимальный размер раны, после которого она считается зажившей
min_wound_size,satiety_v,satiety_power,satiety_health,satiety_critical,alcohol_v можно было и не настраивать, если вам нужно бессмертие
Будем настраивать выносливость.
Назодим строку "jump_power"
Меняем так, чтобы игрок никогда не уставал, разве что если нацепит на себя 5 огненных шаров ))
jump_power = 0 ;умешьшение силы с прыжком без учета веса ноши
jump_weight_power = 0 ;умешьшение силы с прыжком с учетом веса ноши, для максимального допустимого веса
overweight_jump_k = 1 ;коэффициент влияние перегрузки прыжок с весом (умножается на jump_weight_power)
stand_power = 0
walk_power = 0 ;умешьшение силы за секнду во время ходьбы без учета веса ноши
walk_weight_power = 0 ;умешьшение силы за секнду во время ходьбы с учетом веса ноши, для максимального допустимого веса
overweight_walk_k = 1 ;коэффициент влияние перегрузки ноши (умножается на walk_weight_power)
accel_k = 1;коэффициент на бег (умножается walk_power, walk_weight_power)
sprint_k = 1 ;коэффициент на "sprint" бег (умножается walk_power, walk_weight_power)
Значения с комментом "коофициент" и значениями более 1 (необязательно) рекомендую менять на 1.
limping_health_begin = 0 ;порог здоровья меньше которого актер начинает хромать
limping_health_end = 0;порог здоровья больше которого актер перестает хромать
limping_power_begin = 0 ;порог силы меньше которого актер начинает хромать
limping_power_end = 0 ;порог силы больше которого актер перестает хромать
cant_walk_power_begin = 0 ;порог силы меньше которого актер не может двигаться
cant_walk_power_end = 0 ;порог силы больше которого актер сможет двигаться
cant_sprint_power_begin = 0 ;порог силы меньше которого актер не может бежать в спринте
cant_sprint_power_end = 0 ;порог силы больше которого актер сможет бежать в спринте
Дальше идут кости, работающие в 3d, и их тоже можно менять, чтобы уменьшить уязвимость, но пока их настройка не столь нужна. Я лишь скажу, что нужно настраивать 1 (первый) параметр. Чем меньше, тем лучше.
Как изменить характеристики аптечки в сталкер
Структуру папок и местонахождение основных файлов игры Сталкер смотрим здесь Структура файлов и папок
Короче, нашел у себя в загашнике решение (вроде как от самого Архары) и испытал, создав ситуацию с неотключившимся выбросом (не уходил с локации пока таймер не обнулился), вот описание (подправил немного):
затем, вызов функции в таком виде: <action>arhara_dialog.dell_duratskiy_timer</action>
вставить в любой ближайший диалог.
под строку: function actor_binder:update(delta)
добавить вызов: arhara_dialog.dell_duratskiy_timer()
Сохранить изменения, грузить сейв перед заходом на ЧАЭС-1 и потом переходить, или загружаться с автосейва перехода, тоже сработает.
После, как перешли на ЧАЭС-1 и выброс отключился - сохраняемся, выходим из игры и удаляем строку arhara_dialog.dell_duratskiy_timer() из файла bind_stalker.script
Ключи для быстрого запуска игры , также немного разгружает память .
На рабочем столе , правой кнопкой мышки кликаем на ярлык.S.T.A..L.K.E.R
Далее , выбираем Свойства
Далее , в Объект , после кавычек , делаем пробел и прописываем
. XR_3DA.exe" -nointro -noprefetch -noshadows
Подходит к любому Сталкеру , Н.И. не нужна , удачи .
Ряд дополнительных команд, которые можно запускать при старте STALKER'а называются Переключателями Командной Строки. Эти 'переключатели' - это команды посланные главному исполняемому файлу XR_3DA.exe, говорящие движку выполнить определённые действия при запуске игры. Для использования переключателей командной строки, кликните правой кнопкой мыши на ярлыке STALKER'a и выберите 'Свойства'. Далее в поле 'Объект', через пробел от последнего символа, вставьте переключатель(и) которые вы хотите использовать. Например:
Переключатели -nointro, -noprefetch и -noshadows добавлены для отключения вводных заставок с логотипами, предварительной загрузки информации (ускоряет запуск и загрузку сохранений) и отключения всех не солнечных теней в игре. По другому не возможно использовать предигровые настройки. Можно вернуть настройки в любой момент просто удалив переключатель с ненужной настройкой из ярлыка или создав другой с требуемыми переключателями и использовать его когда ты захочешь запустить игру с другими настройками. дополнение от --HikeR 14:17, 31 мая 2007 (MSD)][
Для различных ситуаций можно создать несколько копий ярлыков для запуска игры с различными параметрами. Например можно использовать ключ -nointro для всех вариантов, комбинацию -noprefetch -noshadows -nosound -r4xx для всяких экспериментов (отключен звук, префетч, тени, форсированно используется DX8, максимально быстрая загрузка), и просто ярлык для обычной игры
Полный список Переключателей Командной Строки для STALKER'а приведённый ниже сопровождается также кратким пояснение для каждого, где это было возможно. Я протестировал каждый и все переключатели, но некоторые переключатели не имеют видимого эффекта или просто подвешивают игру во время загрузки. Инструкции по предполагаемому использованию наиболее полезных переключателей приведены на протяжении этого гида:
Читайте также: