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

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


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

Возможно ли заспавнить горящий костер? На r2

Изменено пользователем Shader 3.00
Жить хорошо, а хорошо жить ещё лучше.
Ссылка на комментарий

Shader 3.00,

Можно. Вот секции костра на Болотах из Пака Кости (если правильно помню, на базе ЧН):

Эта секция создаёт рестриктор вокруг костра, как я понимаю, чтобы НПС в него не лезли.

[9830]

; cse_abstract properties

section_name = space_restrictor

name = camp_fire_restr_banderos_01

position = -147.914245605469,0.612444043159485,-292.253875732422

direction = -2.27373675443232e-013,0,0

 

; cse_alife_object properties

game_vertex_id = 3376

distance = 0

level_vertex_id = 71758

object_flags = 0xffffff3e

 

; cse_shape properties

shapes = shape0

shape0:type = box

shape0:axis_x = 1.7837952375412,0,0

shape0:axis_y = 0,1.93420171737671,0

shape0:axis_z = 0,0,1.7837952375412

shape0:offset = 0,0,0

 

; cse_alife_space_restrictor properties

restrictor_type = 2

 

Это непосредственно сам костёр.

[9831]

; cse_abstract properties

section_name = zone_flame_small

name = zone_flame_small_banderos_01

position = -147.914245605469,0.612444043159485,-292.253875732422

direction = -9.31549948290922e-010,0,0

 

; cse_alife_object properties

game_vertex_id = 3376

distance = 3.5

level_vertex_id = 71758

object_flags = 0xffffff3e

 

; cse_shape properties

shapes = shape0

shape0:type = sphere

shape0:offset = 0,0,0

shape0:radius = 0.64168655872345

 

; cse_alife_space_restrictor properties

restrictor_type = 0

 

; cse_alife_custom_zone properties

max_power = 15

 

; cse_alife_anomalous_zone properties

offline_interactive_radius = 3

artefact_spawn_count = 32

artefact_position_offset = 0x1380

 

Это секция освещения от костра на втором рендере, т.е. DX9. Она должна быть расположена чуть выше самого костра, примерно на 0.6 единиц по оси Y. Просто прибавляешь к снятым с места прасположения костра координатам 0.6 по оси Y (я выдели где прибавлять)

[9832]

; cse_abstract properties

section_name = lights_hanging_lamp

name = lights_camp_fire_banderos_01

position = -147.914245605469,1.212444043159485,-292.253875732422

direction = -2.27373675443232e-013,0,0

 

; cse_alife_object properties

game_vertex_id = 3376

distance = 0

level_vertex_id = 71758

object_flags = 0xffffffba

 

; cse_visual properties

 

; cse_ph_skeleton properties

 

; cse_alife_object_hanging_lamp properties

main_color = 0xfffab807

main_brightness = 0.400000005960464

main_color_animator = koster

main_range = 6

light_flags = 0x2a

health = 100

main_virtual_size = 0.100000001490116

ambient_radius = 2

ambient_power = 0.400000005960464

main_cone_angle = 2.09439516067505

glow_radius = 0.699999988079071

 

Ссылка на комментарий

Вопрос по инвентарю - как определить, что у ГГ отрыт худ инвентаря в режиме перекладывания или продажи (не в режиме просмотра инвентаря)?

 

Из того, что нашел сообразил такое:

 

local inventory = level.main_input_receiver()
if inventory and inventory:WindowName() == "бла-бла-бла" and inventory:IsShown() then
    --- режим открытого инвентаря
end

 

Если это правильно - то нужны имена инвентаря в разных режимах...

 

P.S. Код поправил.

Изменено пользователем sapsan
Ссылка на комментарий

sapsan, лови инфопоршень!!! без этого level.main_input_receiver() вернет nil

имена сам узнаешь - просто сунь в bind_stalker.script

 

после function actor_binder:info_callback(npc, info_id)

строку get_console():execute(info_id)

 

далее в этой же функции можешь делать условие по info_id

i-igroman.ru - Мой, принципиально новый сайт о компьютерных играх

Ссылка на комментарий

lekzd, суть вопроса не в моменте открытия худа, а в проверке при ондропе на то, не открыт ли инвентарь для перекладывания (это чтобы не делать определённые действия в ондропах разных модов в Солянке).

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

 

=======

db.actor:has_info("ui_inventory") - это инвентарь открытый именно на просмотр (не на перекладывание или продажу) ?

 

Спасибо огромное! :)

Изменено пользователем sapsan
Ссылка на комментарий

sapsan, db.actor:has_info("ui_inventory")

 

и больше тебе ничего не надо, если итем не съедобный (т.е. его можно выкинуть только из инвентаря)

 

Добавлено через 16 мин.:

sapsan, ну да - тебе же он нужен - эта функция вернет true - если открыт именно просмотр своего инвентаря - иначе false

 

------------------------------------------------------------

Да черт его знает

 

кажется совместить серверные и клиентские копии объектов можно только перебором по id

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

i-igroman.ru - Мой, принципиально новый сайт о компьютерных играх

Ссылка на комментарий

Чтобы не дублировать сообщение, приведу лишь ссылку. Там два вопроса - по использованию .parent_id и alife():object("имя объекта"). Можете прокомментировать ?

Изменено пользователем sapsan
Ссылка на комментарий

Какой параметр отвечает за скорость бега монстра?

 

Добавлено через 70 мин.:

И еще есть такие монстры,которые вообще не бегают.Типа контроллера.Можно ли в конфигах настроить,чтобы бегали,или надо лезть в схему?

 

и что это значит:

Expression : best_param
Function : CControlAnimationBase::accel_chain_get
File : E:\stalker\patch_1_0004\xr_3da\xrGame\ai\Monsters\control_animation_base_accel.cpp
Line : 86
Description : probably incompatible speed ranges

Изменено пользователем Monnoroch
Ссылка на комментарий

Товарищи!

Кто знает, что за ошибка:

[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: ...:\s.t.a.l.k.e.r.chernobyl\gamedata\scripts\_g.script:20: bad argument #2 to 'format' (string expected, got no value)

Добавил монстра - скелет(Автор ЖуКа, вроде бы...)

И при убийстве такая ошибка.

Изменено пользователем TREWKO
Ссылка на комментарий

Если кто помнит, на локации с ЧАЭС был момент, когда ГГ мотается по телепортам и его заносит к Сидору. Знает кто, как это реализовано? Это движковая фича или скриптовая? Не мог ведь актор перенестись на другую локацию, для этого загрузка нужна. Или таки переносился?

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

Ссылка на комментарий
malandrinus, на ютубе есть видео, где этот момент отловили - там сидор вообще стоит и не двигается как физический объект + оружие у него там не убирается - я демо_рекордом искал того Сидора но так и не нашел

i-igroman.ru - Мой, принципиально новый сайт о компьютерных играх

Ссылка на комментарий

Но губами то шевелит, я помню.

Ты тоже думаешь, что это смоделенный кусок того же уровня? Я попытался в all.spawn поискать, но тоже не нашёл.

 

Моя мысль была, что это должно проявляться где-то в скриптах.

 

Дополнение:

Нашел я Сидора. Значит так.

Телепорт отправляет ГГ на точку пути с именем "aes2_teleport_walk_exit_trader". Там в свою очередь стоит рестриктор. Имя его "aes2_space_restrictor_trader",

координаты: -247.054550170898,-18.7832088470459,-134.401412963867

При попадании в него запускается звук и отыгрывается анимация у физического объекта с визуалом Сидора.

Объект имеет имя "aes2_physic_object_0002". Секция "physic_object".

Координаты: -244.721908569336,-18.7780876159668,-133.974792480469

story_id = 1118

Запуск анимации выполняется функцией xr_effects.set_sidorovich_animation

 

 

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

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

Ссылка на комментарий

Несколько вопросов, может, кто и ответит...

 

1)Можно ли через алл.спавн заспавнить объект, НО при наличии определенного инф.поршня ? ,т.е делаем секцию объекта (например вертолет) и чего-то ему дописываем на условие наличия инф.поршня ?

 

2)Можно ли в секции смартерейнов спавнить не сталкеров, а объекты (бтр, вертолеты, машины, трахторы) ?

 

 

Что-то кончается, что-то начинается...

Ссылка на комментарий

Vano_Santuri,

1. - скриптовым спавном можно

2. - секция смарттеррейна только для смарта - а вот в области смарттеррейна можно спавнить и привязывать много всего

i-igroman.ru - Мой, принципиально новый сайт о компьютерных играх

Ссылка на комментарий

Сталкнулся с непонятной проблемой...

Вот прописал пару неписям логику в all.spawn и тут вылет не связанный с неписями

Expression    : fatal error
Function      : CScriptEngine::lua_error
File          : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp
Line          : 73
Description   : <no expression>
Arguments     : LUA error: ...итель желанийguygu\gamedata\scripts\amk_anoms.script:307: attempt to index local 'sobj' (a nil value)

Что это за лог? И причём здесь неписи?

 

Ссылка на комментарий
Можно ли через алл.спавн заспавнить объект, НО при наличии определенного инф.поршня ?

можно, в кастом_дату объекта пропиши:

custom_data = <<END

[spawner]

cond = {+имя_твоего_инфопоршня}

END

как тока даш инфопоршень "имя_твоего_инфопоршня", объект заспавница

118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105
Ссылка на комментарий

Вопрос камрады, создал свою группировку и хочю зделать им место типа костра у лагеря новичков (чтоб сидели и байки травили), с настройкой логики ознакомился. Например местечко там где Толик аптечку клянчит, как определить её как зону для Кампа?

Изменено пользователем Balistik
Ссылка на комментарий

Народ, подскажите какие параметры надо изменить чтоб сутки в игре шли быстрее.

В АМК 1.4.1. Одна минута игрового времени идёт где-то 30 сек реального времени, я хочу это время уменьшить раз в 6.

Подскажите какие файлы надо подредактировать. Буду очень благодарен.

Ссылка на комментарий

gamedata\config\alife.ltx

 

 time_factor                    = 5

 

ставим так

 

 time_factor                    = 10

 

И начинаем новую игру.

 

ЗЫ: или новая игра не нужна?

 

 

Что-то кончается, что-то начинается...

Ссылка на комментарий

 

Да новая нужна

 

Добавлено через 2 мин.:

Сталкнулся с непонятной проблемой...

Вот прописал пару неписям логику в all.spawn и тут вылет не связанный с неписями

Expression    : fatal error
Function      : CScriptEngine::lua_error
File          : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp
Line          : 73
Description   : <no expression>
Arguments     : LUA error: ...итель желанийguygu\gamedata\scripts\amk_anoms.script:307: attempt to index local 'sobj' (a nil value)

Что это за лог? И причём здесь неписи?

Неужели никто не знает?

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

 

Ссылка на комментарий

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

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

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

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

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

Войти

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

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

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