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

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


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

проблемы бы не было , если бы я хоть немного разбирался что где как.

 

я то вообще дуб дубом. мне бы кто то пожевал бы .

 

вроде в каком то файле нужно где то строчку изменить или прописать.

 

видимо не судьба ((.

 

 

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

А можно ли в ЗП сделать так: после выполнения опр логики, сталкер получал новую логику? Тоесть например сталкер ваня сделал полностью logic@bla-bla-bla и после этого получил логику logic@v_dva_raza_bolshe_bla

Freedom

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

_Призрак_,

А можно ли в ЗП сделать так: после выполнения опр логики, сталкер получал новую логику? Тоесть например сталкер ваня сделал полностью logic@bla-bla-bla и после этого получил логику logic@v_dva_raza_bolshe_bla

Не совсем понятна задача. То, что вы описали, похоже на штатное переключение секций. Там ведь так и заложено, что выполнение какой-то секции приводит к переключению на другую секцию. Зачем здесь всю логику менять?

 

 

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

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

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

 

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

Здраствуйте. Я пытался вытянуть из Сигероус мода схему поведения "телохранители" для чистой игры. Зарегестрировал модель поведения в modules.script, закинул скрипт самой модели поведения с примыкающими к ней файлами, также записал в _g.script, написал логику для НПСа. Где я ошибся? Какие файлы нужны для полной работы новой модели поведения?

FATAL ERROR

 

[error]Expression : !m_error_code

[error]Function : raii_guard::~raii_guard

[error]File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp

[error]Line : 748

[error]Description : ... - Зов Припяти\gamedata\scripts\smart_terrain.script:512: attempt to index field 'alife_task' (a nil value)

 

 

stack trace:

 

Изменено пользователем PavelSnork
Жду ли я Сталкер 2? Хм...
Ссылка на комментарий

Помогите! В ЗП не работает sr_sound в space_restrictor-ах Чем заменить или как восстановить эту функцию?

Хочу сделать так:

active = sr_sound

[sr_sound]
snd = characters_voice\human_02\stalker\alife\defence\request_help_vs_mutant_1_pda

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

Phantom1305, нет не забыл, я просто показал саму логику. Правда писал в алл.спавн, хотя собака зарыта в отсутствии sr_sound.script

 

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

Ладно, проблему почти решил - прописал sr_sound.script в modules.script, как это сделал PavelSnork, и получил тоже вылет как и он:

Expression : !m_error_code

Function : raii_guard::~raii_guard

File : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp

Line : 748

Description : ....e.r. - Зов Припяти\gamedata\scripts\sr_sound.script:201: attempt to call field 'get_safe_sound_object' (a nil value)

 

И у меня почти такие же требования и вопросы как и у него.

 

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

В завершение. Добавил следующий код в конец файла xr_sound.script

--' Соунд обжект

 

--' Таблица для хранения созданных саунд обжектов.

sound_object_by_theme = {}

--' type = [random|seq|looped]

function get_sound_object(theme, t_type)

if sound_theme.ph_snd_themes[theme] == nil then

abort("ph_snd_themes for theme %s", tostring(theme))

return

end

 

if sound_object_by_theme[theme] == nil then

sound_object_by_theme[theme] = {}

end

 

if t_type == nil then

t_type = "random"

end

 

--' Выбор следующего айдишника

local play_id = -1

local table_size = table.getn(sound_theme.ph_snd_themes[theme])

if sound_object_by_theme[theme].last_id == nil then

if t_type == "random" then

if table_size >= 2 then

play_id = math.random(1, table_size)

else

play_id = 1

end

else

play_id = 1

end

else

if t_type == "random" then

if table_size >= 2 then

play_id = math.random(1, table_size - 1)

if play_id >= sound_object_by_theme[theme].last_id then play_id = play_id + 1 end

else

play_id = 1

end

else

if sound_object_by_theme[theme].last_id < table_size then

play_id = sound_object_by_theme[theme].last_id + 1

else

if type == "looped" then

play_id = 1

end

end

end

end

 

printf("SOUND_OBJECT: selected id [%s] for theme [%s], type [%s], size [%s]", tostring(play_id), tostring(theme), tostring(type), table_size)

 

if play_id == -1 then

return

end

--' Проверяем создан ли у нас соответствующий саунд обжект или его надо создать

if sound_object_by_theme[theme][play_id] == nil then

if type(sound_theme.ph_snd_themes[theme][play_id]) == "table" then

sound_object_by_theme[theme][play_id.."_r"] = get_safe_sound_object(sound_theme.ph_snd_themes[theme][play_id][1].."_r")

sound_object_by_theme[theme][play_id.."_l"] = get_safe_sound_object(sound_theme.ph_snd_themes[theme][play_id][1].."_l")

else

sound_object_by_theme[theme][play_id] = get_safe_sound_object(sound_theme.ph_snd_themes[theme][play_id])

end

end

 

sound_object_by_theme[theme].last_id = play_id

 

--' Возвращаем саунд обжект

if type(sound_theme.ph_snd_themes[theme][play_id]) == "table" then

return sound_object_by_theme[theme][play_id.."_r"], sound_object_by_theme[theme][play_id.."_l"]

else

return sound_object_by_theme[theme][play_id]

end

end

 

local sound_object_by_path = {}

--' Обертка вокруг функции, возвращающий звуковой объект.

function get_safe_sound_object(path)

if sound_object_by_path[path] == nil then

sound_object_by_path[path] = sound_object(path)

end

return sound_object_by_path[path]

end

 

function stop_all_sound_object()

for k,v in pairs(sound_object_by_path) do

if v:playing() then

v:stop()

end

end

end

function clear_all_sound_object()

sound_object_by_theme = {}

end

 

 

Добавлено:

И всё заработало!!!

 

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

PavelSnork, я посмотрел файл, на который ссылается икс-рей. Получил следующее:

        v.game_vertex_id = v.alife_task:game_vertex_id()
        v.level_id         = game_graph():vertex(v.game_vertex_id):level_id()
        v.position       = v.alife_task:position()

Суди сам, что ты намудрил, но, как видишь, это кусочек функции позиции: гаме вертекс, левел вертекс и позитион.

Изменено пользователем Greh921
Ссылка на комментарий
Greh921, я уже решил ету проблему. Убрал строку № 512 и 514. Пока все работает. Хотя кто знает какие после етого проблемы в игре будут... Изменено пользователем PavelSnork
Жду ли я Сталкер 2? Хм...
Ссылка на комментарий

TREWKO,

этот параметр работает только для Грави. И если не ошибаюсь, то это задаёт подпрыгивание самого артефакта, а, как мне показалось, TimeShift хотел для ГГ.

Изменить динамически высоту прыгания ГГ вроде как нельзя.

 

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

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

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

 

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

Срочно! Не могу получить инфопоршень с спейс_регитр-а на новой локации для старта квеста

[logic]

active = sr_idle

 

[sr_idle]

on_actor_inside = nil %=give_task(+escape_stalker_help)%

 

 

[escape_stalker_help]

icon = ui_inGame2_V_poiskah_Soroki

prior = 112

storyline = true

title = {-escape_stalker_help} escape_stalker_help

descr = {-escape_stalker_help} escape_stalker_help_text

target = {+escape_stalker_help} esc_kwest

;reward_money = 3000

condlist_0 = {+escape_stalker_help_done} complete

;condlist_1 = {+jup_b220_trapper_zaton_chimera_hunted_told} complete

 

 

[20506]

; cse_abstract properties

section_name = space_restrictor

name = esc_tips_fox

position = 287.200012207031,16.6319103240967,275.321502685547

direction = -0.104504659771919,0.517827808856964,-0.0501847825944424

 

; cse_alife_object properties

game_vertex_id = 934

distance = 0

level_vertex_id = 594270

object_flags = 0xffffff3e

custom_data = <<END

cfg = scripts\esc_tips_fox.ltx

END

 

; cse_shape properties

shapes = shape0,shape1,shape2,shape3,shape4,shape5

shape0:type = box

shape0:axis_x = 71.6746063232422,0,0

shape0:axis_y = 0,18.0631980895996,0

shape0:axis_z = 0,0,7.15800046920776

shape0:offset = 0,0,0

shape1:type = box

shape1:axis_x = 71.6746063232422,2.67008715582051e-007,-2.13606972465641e-006

shape1:axis_y = 0,18.063196182251,1.34581313204762e-007

shape1:axis_z = 0,2.66656297043255e-008,7.15800046920776

shape1:offset = -70.810791015625,3.28049087524414,0.246719360351563

shape2:type = box

shape2:axis_x = 70.5857162475586,-5.34017431164102e-007,-12.4460964202881

shape2:axis_y = 6.72906566023812e-008,18.063196182251,-6.72906566023812e-008

shape2:axis_z = 1.24296712875366,1.06662518817302e-007,7.04925537109375

shape2:offset = -139.549942016602,6.66907978057861,6.34806823730469

shape3:type = box

shape3:axis_x = 64.9593124389648,-1.00128272606526e-006,-30.2908554077148

shape3:axis_y = 3.81672322191662e-007,25.6135959625244,1.90836161095831e-007

shape3:axis_z = 3.0250871181488,0,6.48735809326172

shape3:offset = -203.898208618164,6.86461544036865,27.2836456298828

shape4:type = box

shape4:axis_x = 64.9593124389648,-1.00128272606526e-006,-30.2908554077148

shape4:axis_y = 3.81672322191662e-007,25.6135959625244,1.90836161095831e-007

shape4:axis_z = 3.0250871181488,0,6.48735809326172

shape4:offset = -260.097442626953,7.74838256835938,53.8768310546875

shape5:type = box

shape5:axis_x = 65.4553070068359,4.65114135295153e-006,-45.8319931030273

shape5:axis_y = -1.67716643773019e-006,26.4829940795898,9.86568466032622e-007

shape5:axis_z = 6.40486860275269,3.32790563106755e-007,9.14716148376465

shape5:offset = -318.800598144531,12.4033985137939,88.3407592773438

 

; cse_alife_space_restrictor properties

restrictor_type = 3

 

Помогите! Плиз!

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

Подскажите почему у меня не бежит непись?

[zaton_lox_trup_walk1]

points = p0

p0:name = wp00|a=run|sig=path_end

p0:flags = 0x1

p0:position = -53.8860282897949,-2.06345987319946,-206.42658996582

p0:game_vertex_id = 1186

p0:level_vertex_id = 139608

 

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

Freedom

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

Greh921, give_task(...) - это выдача задания, а не инфы, попробуй так

[logic]

active = sr_idle@help

 

[sr_idle@help]

on_actor_inside = sr_idle@test %=give_task(escape_stalker_help) +escape_stalker_help%

 

[sr_idle@test]

on_info = {+escape_stalker_help} sr_idle@nil %=run_cam_effector_global(scenario_cam\zaton\zat_b14_robbery)%

 

[sr_idle@nil]

 

 

Вторая секция логики - проверка на месте выдачи инфо, потом переключишь у себя на [sr_idle@nil] .

 

_Призрак_, так выдь точка пути одинарная - он и не побежит, делай двойной путь с первой точкой

на месте спавна (или там откуда он должен бежать), а вторую уже в конце пути, где у тебя по замыслу он помрет.

А что-бы быстрей бежал a=sprint .

[zaton_lox_trup_walk1]

points = p0,p1

p0:name = wp00|a=run|sig=path_end

p0:flags = 0x1

p0:position = откуда должен бежать

p0:game_vertex_id = откуда должен бежать

p0:level_vertex_id = откуда должен бежать

p0:links = p1(1)

 

p1:name = wp01

p1:flags = 0x1

p1:position = -53.8860282897949,-2.06345987319946,-206.42658996582

p1:game_vertex_id = 1186

p1:level_vertex_id = 139608

 

 

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

Прошу прощения если вопрос уже задавали, но я не нашел на него ответа: можно ли сделать так, чтобы обрез и детектор можно было взять в руки одновременно?

Стыдно не спрашивать - стыдно незнать.

Не ошибается тот - кто ничего не делает.

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

Неработает - достает с детектором нож. Может быть "animation_slot = 3" поменять?

 

За что отвечает "hand_dependence = 1"?

Изменено пользователем Мертвец

Стыдно не спрашивать - стыдно незнать.

Не ошибается тот - кто ничего не делает.

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

В файле character_desc_general в самом начале есть строки:

<name>st_actor_name</name>

<icon>ui_inGame2_Hero</icon>

насколько я понял, 1 - имя, 2 - фото. Но вот его-то я и не могу нигде найти. Может я ошибаюсь?

Подскажите, где найти файл с иконками персонажей которые в главном меню отображаются. Всю папку перебрал - не нашел.

 

Ковыряю: SGM 1.6 + апдейт

 

ЗЫ: Если кто может, но хочет прилюдно обсуждать - подскажите в личку. Я волшебное слово знаю - "Пожалуйста".

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

ui_actor_portrets.dds -здесь гг

ui_iconstotal.dds - тут все остальное.

я изменился. пью, курю, употребляя наркотические средства.

Жизнь-говно. Бабы -консервы.

Забьюсь под стол, чтоб никто не трогал.

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

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

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

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

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

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

Войти

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

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

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