Перейти к контенту

Внимание. На форуме проводятся технические работы с боковым меню.

_Val_ _Val_

[SoC] Ковыряемся в файлах


Рекомендуемые сообщения

@Morder07,

Вольная цитата  от балды из отзывов к большинству модов...

**Неписи видят ГГ через всю локацию и суперметко стреляют, убивая его одной пулей**

Ну а так...Вот тут почитай.

Изменено пользователем _Val_

   УРАГАН.png

                 Краткий гид по моду Тайные Тропы 2

                                      ПАРТИКЛЫ TERRA

 

 

 

Ребят, подскажите как на айтеме сделать эффект уменьшения здоровья, что-то типа бустеров из ЗП, на определённое время?

Всем привет, опять приходится поднимать вопрос по условию:

if db.actor.satiety <= 0.3 then

 db.actor:give_info_portion("esatiety_critical)
 end

Пробовал в любом месте (и перед последним end, как советовали) это прописать под функцией function actor_binder:update(delta), но получаю вылет при загрузке:

[error]Expression    : fatal error

[error]Function      : CScriptEngine::lua_error
[error]File          : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp
[error]Line          : 73
[error]Description   : <no expression>
[error]Arguments     : LUA error: ... Тени Чернобыля\gamedata\scripts\bind_stalker.script:664: attempt to compare nil with number
Только сточка 664 меняется, и она указывает всё время на if db.actor.satiety <= 0.3 then (при варианте if self.object.satiety <= 0.3 then - тоже самое)
Могу только догадываться (т.к. не знаю языка LUA), что причина либо в самом условии (какой-то неверный параметр), либо в отсутствии какой-то строчки с параметром nil. Если кто может, помогите пожалуйста с этим.
З.Ы. Вопрос решен.
Изменено пользователем Outfater

 

 

 

@Outfater, на 4 патче в db.actor нет параметра satiety. Поэтому db.actor.satiety это nil и к нему операция <= не применяется.

  • Спасибо 1

Возник ряд вопросов относительно некоторых параметров в конфигах оружия. Что оно такое и на что влияет?
вот эти параметры:

  • max_radius - ???
  • min_radius - ???
  • launch_speed - вразумительные значения видел только у гранатометов, но зачем этот параметр присутствует и у другого оружия, и почему у стволов оснащенных подствольником - равен нулю...
  • $prefetch - на что именно это влияет, конфиги же грузятся в порядке подключения их к system.ltx и подклченных к нему файлов?

По первым двум - наиболее вразумительная подборка постов сведена вот здесь http://www.amk-team.ru/forum/index.php?showtopic=13148&p=971188
То есть, надо проверять. На чистом ТЧ. dc

Изменено пользователем Dennis_Chikin

Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine / Мимокрокодил.

Я понял что моя старая подпись что-то нарушает. Удалил все ссылки.

@Zander_driver, 

 

min_rаdius - минимальное расстояние, на котором нпц будет использовать этот вид оружия (актуально для гранат, снайперок и гранатометов, допустим min_rаdius = 30 значит если цель находится ближе 30 метров - нпц сменит (например снайперку) на пистолет))

 

mаx_rаdius - максимальное расстояние, на котором нпц будет использовать данный вид оружия, допустим 

mаx_rаdius = 50 значит если цель находится дальше 50 метров, то нпц не будет стрелять из этого оружия (слишком маленький mаx_rаdius является причиной весьма распространенного глюка: наверняка у каждого был такой момент, когда враги прекрасно видели гг, но не стреляли и просто ходили из стороны - в сторону)

 

для пистолетов и автоматов рекомендую выставлять min_rаdius = 0

для снайперок и гранатометов min_rаdius = 30 и больше

 

mаx_rаdius можно тупо поставить всем  стволам значение 200 (больше смысла не имеет, можно меньше, допустим 100)

  • Нравится 1

Мы по аномалиям зону разберём!

Сидора повесим, а Бармена убьём!

Ну а вояк мы смоем в унитаз!

Пускай плывет в канализации спецназ!

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

Работы butcher_512. Все ссылки пропали, поэтому ложу свои сюда, чтобы никогда не потерять:

Customization Pack 0.83 [Beta4] - SoC - Тема модификации.

Customization Pack CoP [Beta]   - CoP - Тема модификации.

mzarkas,

Вот здесь можно скачать диалог с Shadows, где он мне доходчиво доказал, что упомянутые параметры вообще не используются движком.

ed_rez.gif

c1f11b67ff360413e81b4e4dcf21eb41.jpg

Возможно пишу не сюда, уж простите.

 

Вопрос по поводу OGSM 2.3.1 Ultimate, возможно ли пофиксить проблему с таймерами как в Чистом Небе, когда через месяц игрового времени герой не хочет есть, спасть, выбросы не происходят и т.д.?

 

Если не трудно опишите подробно метод исправления данной ситуации.

@Возрождённый, на Янтаре и Радаре пси-излучение сделано через рестрикторы со схемой sr_psyantenna.

Можно сделать на базе аномалии - ZS_RADIO (вроде, так класс называется) - радиоактивная зона, просто тип хита поменять. Так в ЗП пси-аномалии сделаны.

Аддон для ОП-2.09.2: Яндекс/Google/GitHub/Тема на AP-PRO

naxac.gif

@Возрождённый, дополню naxac-a: 

 

 

Один из рестрикторов на Радаре:

; cse_abstract properties
section_name = space_restrictor
name = rad2_space_restrictor_0000
position = -5.87346267700195, -0.711700439453125, 14.6107597351074
direction = -0.0772645771503448, 1.9053154609594e-009, 2.46841782569618e-008
id = 65535
version = 118
script_version = 6
spawn_id = 7034


; cse_alife_object properties
game_vertex_id = 1862
level_vertex_id = 197671
object_flags = 0xffffff3e
custom_data = <<END
[logic]
active = sr_psy_antenna@no_helmet


[sr_psy_antenna@no_helmet]
eff_intensity = 20
hit_intensity = 30
on_info = {=actor_has_item(good_psy_helmet)} sr_psy_antenna@good_helmet, {=actor_has_item(bad_psy_helmet)} sr_psy_antenna@bad_helmet
on_info2 = {+bar_deactivate_radar_done} nil
phantom_prob = 40
min_phantom_idle = 15000
max_phantom_idle = 20000


[sr_psy_antenna@bad_helmet]
eff_intensity = 40
hit_intensity = 0
on_info = {=actor_has_item(good_psy_helmet)} sr_psy_antenna@good_helmet, {=actor_has_item(bad_psy_helmet)}, sr_psy_antenna@no_helmet
on_info2 = {+bar_deactivate_radar_done} nil
phantom_prob = 30
min_phantom_idle = 15000
max_phantom_idle = 20000


[sr_psy_antenna@good_helmet]
eff_intensity = 20
hit_intensity = 0
on_info = {=actor_has_item(good_psy_helmet)}, {=actor_has_item(bad_psy_helmet)} sr_psy_antenna@bad_helmet, sr_psy_antenna@no_helmet
on_info2 = {+bar_deactivate_radar_done} nil
phantom_prob = 20
min_phantom_idle = 15000
max_phantom_idle = 20000
END


; cse_shape properties
shapes = 1
shape_0:type = sphere
shape_0:offset = 0,0,0
shape_0:radius = 130.301193237305


; cse_alife_space_restrictor properties
restrictor_type = 3

 

 

 

Привет! Не подскажите мне, почему скрипт не корректно работает с предметом на классе артефакта? Вот скрипт

 

 

function use_bread_oz( obj )
if obj == nil then return end
if obj:section() ~= "bread" then return end
local s_obj = alife():create( "ПРЕДМЕТ_НА_КЛАССЕ_АРТА", vector(), 0, 0, db.actor:id() )
snd:play_at_pos(db.actor, vector():set(0,0,0), 0, sound_object.s2d)
local Timer_zrems = time_global() + 5000
local effect_start = function()
if s_obj.online and Timer_zrems < time_global() then
return true
end
end
local effect_stop = function()
if snd:playing () then
snd:stop ()
end
alife():release( s_obj, true )
end
level.add_call( effect_start, effect_stop )
end

 

 

Вот конфиг предмета

 

 

[medaid_activation]
starting = 0.5, detectors\geiger_click3, 0, 0, 0, 0, "","idle"
flying = 0, detectors\geiger_click3, 0, 0, 0, 0, "","idle"
idle_before_spawning = 9, detectors\bomb_timer, 0, 0, 0, 0, "","idle"
spawning = 0.5, detectors\geiger_click3, 0, 0, 0, 0, "","idle"


[medaid_b]:identity_immunities
GroupControlSection = spawn_group
$spawn = "weapons\mine\medaid_b"
hud = medaid_b_hud
animation_slot = 11
allow_inertion = true
slot = 1
attach_angle_offset = 0,0,0
attach_position_offset = -0.1,-0.1,0
attach_bone_name = bip01_r_hand
belt = false
af_actor_properties = off
actor_properties = on

$prefetch = 64
cform = skeleton
class = ARTEFACT
visual = huds\item_aptechka.ogf
description = "Пустая Аптечка"
inv_name = "Пустая Аптечка"
inv_name_short = "Пустая Аптечка"
inv_weight = 0.0

inv_grid_width = 2
inv_grid_height = 1
inv_grid_x = 6
inv_grid_y = 14
cost = 50

jump_height = 0
lights_enabled = false

snd_draw = weapons\pm_draw
snd_holster = weapons\generic_holster
snd_shoot = weapons\t_pm_shot ;pm_shoot
snd_empty = weapons\pistol_empty
snd_reload = weapons\pm_reload, 0.8
snd_close = weapons\generic_close
snd_idle_sprint = weapons\generic_close
snd_hide = weapons\generic_close
snd_show = weapons\generic_close
snd_activate = weapons\generic_close
snd_idle = weapons\generic_close


;скорости увеличения (уменьшения)
health_restore_speed = 0.0
radiation_restore_speed = 0.0
satiety_restore_speed = 0.0
power_restore_speed = 0.0
bleeding_restore_speed = 0.0
hit_absorbation_sect = medaid_absorbation

artefact_activation_seq = medaid_activation

[medaid_b_hud]
orientation = 0, 0, 0
position = 0, -0.155, 0
visual = huds\medaid.ogf


anim_idle_sprint = using
anim_activate = using
anim_show = using
anim_hide = using
anim_idle = using


[medaid_absorbation]
burn_immunity = 1.0 ;коэффициенты иммунитета
strike_immunity = 1.0
shock_immunity = 1.0
wound_immunity = 1.0
radiation_immunity = 1.0
telepatic_immunity = 1.0
chemical_burn_immunity = 1.0
explosion_immunity = 1.0
fire_wound_immunity = 1.0

 

При открытии инвентаря следующий вылет:

FATAL ERROR
[error]Expression    : 0
[error]Function      : CUICellContainer::FindFreeCell
[error]File          : E:\stalker\patch_1_0004\xr_3da\xrGame\ui\UIDragDropListEx.cpp
[error]Line          : 508
[error]Description   : there are no free room to place item

 

 

 

С чего бы это?
Изменено пользователем HellRatz

Мы по аномалиям зону разберём!

Сидора повесим, а Бармена убьём!

Ну а вояк мы смоем в унитаз!

Пускай плывет в канализации спецназ!

@mzarkas, иконка предмета больше чем слот. Проще говоря размер иконки не сходится с размером слота. К примеру если попытаться оружие с иконкой от 3-го слота засунуть во второй, пистолетный слот, то будет такой вылет.

 

А вообще этот вылет очень старый и давно разобранный. Лучше погуглить, прежде чем спросить. Ответ быстрее найдется, нежели ждать на форуме.

Всем привет. Изменил спавн на свалке через СДК, и заметил одну проблему. Когда защищаем кладбище техники от бандитов, то их почему-то мало (изменил до 5 а пришло только 3), остальные бандиты ушли защищать свой лагерь (вот там оставил троих, а обороняют 5). Посмотрел в gulag_garbage.script и gulag_garbage.ltx и попытался их поменять. В итоге у меня стал нападать только главарь, а остальные до сих пор обороняют свой лагерь. Где и как исправить эту проблему?
Скриншоты для ознакомления:
04a62ee626f0t.jpg5daa4bed1f15t.jpg

Изменено пользователем Gaz24

Всем привет. Возникла проблема. Перенес в мод OFFLIFE АК104 из ООП для Солянки. Прописал торговцам сам ствол и патроны. В результате ловлю стабильный вылет

FATAL ERROR

[error]Expression : fatal error
[error]Function : CScriptEngine::lua_error
[error]File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp
[error]Line : 73
[error]Description :
[error]Arguments : LUA error: d:\s.t.a.l.k.e.r\gamedata\scripts\xr_gulag.script:185: attempt to index local 'job' (a nil value)


stack trace:

 

Перенес по инструкции с http://stalkerin.gameru.net/wiki/index.php?title=Создание_нового_оружия

Изменено пользователем Gorodetskij

@Gorodetskij, При каких обстоятельствах вылет? Что-то не похоже на проблему с оружием.

Мы по аномалиям зону разберём!

Сидора повесим, а Бармена убьём!

Ну а вояк мы смоем в унитаз!

Пускай плывет в канализации спецназ!

Всем привет. Возникло пару вопросов по скриптам.

 

 

У меня есть скрипт типа "при использовании предмета - выполняем функцию"

function OnUseObject(obj, who)
    if obj then 
           if obj:section() =="ryk_item1" then
                amk.spawn_item_in_inv("stalker_outfit")
           end
    end
end

Есть много предметов при использовании которых нужно спавнить другие. Как нужно изменить код, что бы в этой ф-ции имелась проверка для большого кол-ва предметов с последующим спавном?

 

 

и второй вопрос.

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

vlyu3.gif

Fan%20fan.gif

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...