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

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


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

Monnoroch

 

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

Виноват оказался рестриктор как только убрал указание на него из загрузки работ

вылет исчез

Вобшем он запрешал нпс находится за пределами определенной им зоны

Ссылка на комментарий
Этот мод АМК :) Посмотри изменения в файле xr_logic.script

 

Спасибо! Что-то я затупил. Искал ведь в логике от АМК эти моменты, проспал видно

 

Уважаемые подскажите как сделать что бы оружие убитого НПС при поднятии было разряжено ?

 

Это было и в оригинале, и в АМК, в файле death_manager.script. В функции keep_item(npc,item) перед уменьшением кондишена оружия из обоих слотов убитого НПС были строки (167-я и 174-я для АМК):

item:unload_magazine()

 

Но они, по идее, затрагивали только то оружие, что находилось у НПС в слотах. Для оружия, валяющегося в инвентаре, надо по идее проверять каждый предмет (насколько я понимаю, это все равно делается), если это оружие, то портить и разряжать.

Мои работы:

Ночные прицелы + смена ножевого слота

AI вертолетов + ПЗРК

Soul Cube

 

Работаю только с ТЧ. С ковырянием ЧН/ЗП не связываюсь ни в какой форме. Совсем.

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

Привет. :rolleyes:

Значит ситуация такая:

Хочу через диалог заставить нпс (с которым говорил) двигатся в определённом направлении указаном в гулаге.

Через <action> в диалог вписываю название функции, а вот как вписать гулаг в функцию незнаю (функция отвечает за спавн врагов в точке куда должен двигатся НПС, ну и ГГ вместе с ним). Поскажите пожалуйста, хотябы примерно, как создать такую функцию и увязать с гулагом, чтобы все зарботало? И если можно приведите пожалуйста пример гулага?

P.S.Свои наработки писать не буду дабы не позорится. :wacko2:

P.S.S. AKKK1 снова благодарен. :rolleyes: (как добавить + в репутацию?) :russian_ru:

Сообщение от администратора _And_
Сможешь "плюсить" после набора 100 постов.

 

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

Чуть не забыл.

Где в АМК описана такая штука "bones_particles"?

В каких скриптах?

Если не трудно напишите в каких файлах вообще есть ссылка на неё?

Знаю только что это писалось специально под электро-химеру.

:rolleyes:

 

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

n6260

А ты можешь ответить на мои вопросы? :rolleyes:

Помоги, а. :negative:

Сообщение от администратора _And_
Я ж не могу все знать ;)
Ссылка на комментарий

Monnoroch

 

Могу лиш предположить что с позиции движка эта точка пути доступна а рестриктор просто запрешает конкретному обьекту в ней находится (происходит конфликт с вылетом)

 

 

Если я спавнил нпс скриптом и отправлял его по пути [esc_lager_mod1] все было нормально

а если отправлял по этому пути нпс из лагеря получал вылет

 

OUT RESTRICTIONS :

esc_lager_guard_kill_zone

IN RESTRICTIONS :

camp_fire_0000

camp_fire_0001

camp_fire_0002

camp_fire_0003

camp_fire_0004

camp_fire_0005

camp_fire_0006

camp_fire_0007

camp_fire_0008

camp_fire_0009

esc_in_rest_5

esc_mine_field_1

esc_mine_field_2

esc_soldiers_camp

esc_space_restrictor

esc_space_restrictor_0000

esc_space_restrictor_0001

esc_space_restrictor_0002

esc_space_restrictor_0003

esc_space_restrictor_0004

esc_space_restrictor_0005

esc_space_restrictor_0006

esc_space_restrictor_0007

esc_space_restrictor_0008

esc_space_restrictor_0009

esc_space_restrictor_0010

esc_space_restrictor_0011

esc_space_restrictor_0012

esc_space_restrictor_0013

esc_space_restrictor_0014

esc_space_restrictor_0015

esc_space_restrictor_0016

esc_specnaz_camp

 

FATAL ERROR

 

[error]Expression : vertex || show_restrictions(m_object)

[error]Function : CPatrolPathManager::select_point

[error]File : E:\stalker\patch_1_0004\xr_3da\xrGame\patrol_path_manager.cpp

[error]Line : 155

[error]Description : any vertex in patrol path [esc_lager_mod1] in inaccessible for object [esc_lager4]

 

насколько я понимаю это значит любой vertex в пути [esc_lager_mod1] недоступен для объекта [esc_lager4]stack trace:

Expression : false

Function : CGameGraph::distance

File : e:\stalker\patch_1_0004\xr_3da\xrgame\game_graph_inline.h

Line : 96

Description : There is no proper graph point neighbour!

 

 

 

karavan

 

 

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

Хочу через диалог заставить нпс (с которым говорил) двигатся в определённом направлении указаном в гулаге.

 

зачем тебе гулаг? я веть уже писал

 

[твое имя секции]:stalker

 

$spawn = "respawn\esc_stalker_respawn_1"

 

character_profile = sim_dolg_master тут наименование фаила конфигурации и имя секции в нем

если секция находится в файле character_desc_escape.xml будет так esc_наименование_секции

 

spec_rank = novice

 

community = stalker

 

custom_data = scripts\имя используемого файла логики.ltx

 

создаеш файл в папке S.T.A.L.K.E.R \ gamedata \ config \ scripts \ имя используемого файла логики.ltx

 

А вот в нем прописываеш свою логику куда ему идти и т.д

 

[smart_terrains]

none = true чтоб не попадал в гулаги

 

далее твоя логика

 

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

В каком файле лучше редактировать вооружение НПС? Просто это прописывается в нескольких файлах , например в character_desc_simulation.xml, а так же в файлах character_desc_[название локации].xml, я хочу немного расширить арсенал сталкеров-новичков и бандитов-новичков, за счёт уже введённых в игру нескольких новых стволов, но не знаю какие файлы лучше юзать, а все это разнообразие файлов вводит в некоторое заблуждение. Кстати, таких НПС, как например бандиты сторожащие Шустрого я трогать не хочу, а хочу отредактировать именно случайных НПС.

Заранее спасибо.

Если ты желаешь возвестить людям какую-либо важную истину, облеки оную в одежду общего мнения.

Пифагор Самосский.

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

Надо смотреть нужные файлы в алл спавне

 

[137]

; cse_abstract properties

section_name = stalker

name = esc_lager1

position = -209.067367553711,-19.7512016296387,-132.083114624023

direction = 0.062321275472641,0.00316426996141672,0.0140644172206521

 

; cse_alife_trader_abstract properties

money = 5000

character_profile = esc_stalker_novice указание на файл профиля character_desc_escape.xml

секция esc_stalker_novice

 

; cse_alife_object properties

game_vertex_id = 61

distance = 9.80000019073486

level_vertex_id = 43968

object_flags = 0xffffffbf

custom_data = <<END

[smart_terrains]

esc_lager = true

[spawn]

conserva

END

 

; cse_visual properties

visual_name = actors\novice\green_stalker_2

 

; cse_alife_creature_abstract properties

g_team = 0

g_squad = 1

g_group = 5

health = 1

dynamic_out_restrictions =

dynamic_in_restrictions =

 

upd:health = 1

upd:timestamp = 0x617a6b75

upd:creature_flags = 0x6b

upd:position = -209.067367553711,-19.7512016296387,-132.083114624023

upd:o_model = 0

upd:o_torso = 0.00316426996141672,0.062321275472641,0

upd:g_team = 0

upd:g_squad = 1

upd:g_group = 5

 

; cse_alife_monster_abstract properties

 

upd:next_game_vertex_id = 65535

upd:prev_game_vertex_id = 65535

upd:distance_from_point = 0

upd:distance_to_point = 0

 

; cse_alife_human_abstract properties

predicate5 = 2,2,0,1,1

predicate4 = 0,2,0,2

 

; cse_ph_skeleton properties

 

upd:start_dialog =

 

; se_stalker properties

 

 

вот эти секции

 

<specific_character id="esc_stalker_novice_default1" team_default = "1">

<name>GENERATE_NAME_stalker</name>

<icon>ui_npc_u_green_stalker_2</icon>

<bio>esc_stalker_novice_bio</bio>

 

<class>esc_stalker_novice</class>

<community>stalker</community> <terrain_sect>stalker_terrain</terrain_sect>

 

<rank>140</rank>

<reputation>12</reputation>

<money min="200" max="600" infinitive="0"/>

 

<snd_config>characters_voice\human_01\newbie\</snd_config>

<crouch_type>-1</crouch_type>

 

<visual>actors\novice\green_stalker_2</visual>

<supplies>

[spawn] \n

wpn_bm16 \n

ammo_12x70_buck \n

#include "gameplay\character_items.xml" \n

#include "gameplay\character_food.xml"

</supplies>

 

#include "gameplay\character_criticals_3.xml"

 

<start_dialog>hello_dialog</start_dialog>

#include "gameplay\character_dialogs.xml"

</specific_character>

<!------------------------------------------------------------------------------------------>

<specific_character id="esc_stalker_novice_default2" team_default = "1">

<name>GENERATE_NAME_stalker</name>

<icon>ui_npc_u_green_stalker_2</icon>

<bio>esc_stalker_novice_bio</bio>

 

<class>esc_stalker_novice</class>

<community>stalker</community> <terrain_sect>stalker_terrain</terrain_sect>

 

<rank>127</rank>

<reputation>-8</reputation>

<money min="200" max="600" infinitive="0"/>

 

<snd_config>characters_voice\human_01\newbie\</snd_config>

<crouch_type>-1</crouch_type>

 

<visual>actors\novice\green_stalker_2</visual>

<supplies>

[spawn] \n

wpn_pm \n

ammo_9x18_fmj = 1 \n

device_torch \n

#include "gameplay\character_items.xml" \n

#include "gameplay\character_food.xml"

</supplies>

 

#include "gameplay\character_criticals_3.xml"

 

<start_dialog>hello_dialog</start_dialog>

#include "gameplay\character_dialogs.xml"

</specific_character>

<!------------------------------------------------------------------------------------------>

<specific_character id="esc_stalker_novice_default3" team_default = "1">

<name>GENERATE_NAME_stalker</name>

<icon>ui_npc_u_green_stalker_3</icon>

<bio>esc_stalker_novice_bio</bio>

 

<class>esc_stalker_novice</class>

<community>stalker</community> <terrain_sect>stalker_terrain</terrain_sect>

 

<rank>214</rank>

<reputation>9</reputation>

<money min="200" max="600" infinitive="0"/>

 

<snd_config>characters_voice\human_01\stalker\</snd_config>

<crouch_type>-1</crouch_type>

 

<visual>actors\novice\green_stalker_3</visual>

<supplies>

[spawn] \n

wpn_bm16 \n

ammo_12x70_buck \n

#include "gameplay\character_items.xml" \n

#include "gameplay\character_food.xml"

</supplies>

 

#include "gameplay\character_criticals_3.xml"

 

<start_dialog>hello_dialog</start_dialog>

#include "gameplay\character_dialogs.xml"

</specific_character>

<!------------------------------------------------------------------------------------------>

<specific_character id="esc_stalker_novice_default4" team_default = "1">

<name>GENERATE_NAME_stalker</name>

<icon>ui_npc_u_green_stalker_3</icon>

<bio>esc_stalker_novice_bio</bio>

 

<class>esc_stalker_novice</class>

<community>stalker</community> <terrain_sect>stalker_terrain</terrain_sect>

 

<rank>175</rank>

<reputation>8</reputation>

<money min="200" max="600" infinitive="0"/>

 

<snd_config>characters_voice\human_01\stalker\</snd_config>

<crouch_type>-1</crouch_type>

 

<visual>actors\novice\green_stalker_3</visual>

<supplies>

[spawn] \n

wpn_pm \n

ammo_9x18_fmj = 1 \n

#include "gameplay\character_items.xml" \n

#include "gameplay\character_food.xml"

</supplies>

 

#include "gameplay\character_criticals_3.xml"

 

<start_dialog>hello_dialog</start_dialog>

#include "gameplay\character_dialogs.xml"

</specific_character>

<!------------------------------------------------------------------------------------------>

<specific_character id="esc_stalker_novice_default5" team_default = "1">

<name>GENERATE_NAME_stalker</name>

<icon>ui_npc_u_green_stalker_4</icon>

<bio>esc_stalker_novice_bio</bio>

 

<class>esc_stalker_novice</class>

<community>stalker</community> <terrain_sect>stalker_terrain</terrain_sect>

 

<rank>268</rank>

<reputation>-10</reputation>

<money min="200" max="600" infinitive="0"/>

 

<snd_config>characters_voice\human_02\newbie\</snd_config>

<crouch_type>-1</crouch_type>

 

<visual>actors\novice\green_stalker_4</visual>

<supplies>

[spawn] \n

wpn_bm16 \n

ammo_12x70_buck \n

device_torch \n

#include "gameplay\character_items.xml" \n

#include "gameplay\character_food.xml"

</supplies>

 

#include "gameplay\character_criticals_3.xml"

 

<start_dialog>hello_dialog</start_dialog>

#include "gameplay\character_dialogs.xml"

</specific_character>

<!------------------------------------------------------------------------------------------>

<specific_character id="esc_stalker_novice_default6" team_default = "1">

<name>GENERATE_NAME_stalker</name>

<icon>ui_npc_u_green_stalker_4</icon>

<bio>esc_stalker_novice_bio</bio>

 

<class>esc_stalker_novice</class>

<community>stalker</community> <terrain_sect>stalker_terrain</terrain_sect>

 

<rank>133</rank>

<reputation>6</reputation>

<money min="200" max="600" infinitive="0"/>

 

<snd_config>characters_voice\human_02\newbie\</snd_config>

<crouch_type>-1</crouch_type>

 

<visual>actors\novice\green_stalker_4</visual>

<supplies>

[spawn] \n

wpn_bm16 \n

ammo_12x70_buck \n

#include "gameplay\character_items.xml" \n

#include "gameplay\character_drugs.xml" \n

#include "gameplay\character_food.xml"

</supplies>

 

#include "gameplay\character_criticals_3.xml"

 

<start_dialog>hello_dialog</start_dialog>

#include "gameplay\character_dialogs.xml"

</specific_character>

<!------------------------------------------------------------------------------------------>

<specific_character id="esc_stalker_novice_default9" team_default = "1">

<name>GENERATE_NAME_stalker</name>

<icon>ui_npc_u_green_stalker_5</icon>

<bio>esc_stalker_novice_bio</bio>

 

<class>esc_stalker_novice</class>

<community>stalker</community> <terrain_sect>stalker_terrain</terrain_sect>

 

<rank>224</rank>

<reputation>18</reputation>

<money min="200" max="600" infinitive="0"/>

 

<snd_config>characters_voice\human_02\stalker\</snd_config>

<crouch_type>-1</crouch_type>

 

<visual>actors\novice\green_stalker_5</visual>

<supplies>

[spawn] \n

wpn_pm \n

ammo_9x18_fmj = 1 \n

#include "gameplay\character_items.xml" \n

#include "gameplay\character_drugs.xml" \n

#include "gameplay\character_food.xml"

</supplies>

 

#include "gameplay\character_criticals_3.xml"

 

<start_dialog>hello_dialog</start_dialog>

#include "gameplay\character_dialogs.xml"

</specific_character>

<!------------------------------------------------------------------------------------------>

<specific_character id="esc_stalker_novice_default10" team_default = "1">

<name>GENERATE_NAME_stalker</name>

<icon>ui_npc_u_green_stalker_5</icon>

<bio>esc_stalker_novice_bio</bio>

 

<class>esc_stalker_novice</class>

<community>stalker</community> <terrain_sect>stalker_terrain</terrain_sect>

 

<rank>58</rank>

<reputation>-2</reputation>

<money min="200" max="600" infinitive="0"/>

 

<snd_config>characters_voice\human_02\stalker\</snd_config>

<crouch_type>-1</crouch_type>

 

<visual>actors\novice\green_stalker_5</visual>

<supplies>

[spawn] \n

wpn_pm \n

ammo_9x18_fmj = 1 \n

device_torch \n

#include "gameplay\character_items.xml" \n

#include "gameplay\character_drugs.xml" \n

#include "gameplay\character_food.xml"

</supplies>

 

#include "gameplay\character_criticals_3.xml"

 

<start_dialog>hello_dialog</start_dialog>

#include "gameplay\character_dialogs.xml"

</specific_character>

 

 

несколько секций чтоб одинаковых не спаунилось

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

А без алл спавна не обойтись?

 

Сообщение от администратора _And_
Чарестеры у которых в названии присууствует группировка (бандит, сталкер) - это обычно рандомно спавнящиеся НПСы. В чарестерак с названием локации - более определенные наборы. Квестовые персы имеют имена собственные (найти легко). Чарестер "генераль" отвечает за зомбирваного НПСа (этот файл можно не править вообще).

Определить кто где спавнится можно выяснить (кроме алл_спавна) простым внимательным чтением названий профилей. Ну и знанием кто и где на данной локе стоит. например в ТД охрана Борова - это профили "бандит_бодигард", Свободовец на входе на базу Свободы - тоже имеет уникальный профиль. Мастера-монолитовцы штурмующие Барьер имеют один общий профиль. Тоже самое команда Черепа (один профиль на всех + профиль Черепа). Профили "долг_снайпер" в чаретере Бара - это НПСы в\у штаба долга. И так далее...

Если ты желаешь возвестить людям какую-либо важную истину, облеки оную в одежду общего мнения.

Пифагор Самосский.

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

Ал спаун - зло. Изготовил тут функцию спауна мутантов для кордона. Но дело в том, что контролер вот спаунится, убили его, и все. Кто знает, помогите сделать такую вещь: контролер появляется например в 23.00, а прячется в 05.00. Предлагаю так, только не знаю, как оформить: сама функцию спауна, функция удаления контролера на дневное время. Вот например: если время 23.00, запускаем функцию спавна. Затем, когда наступает пять утра, проводим проверку, а жив ли контролер. Если жив, то запускаем функцию удаления, если места, то ничего не делаем. В одиннадцать вечера снова спавн. Кто хорошо разбирается в скриптах, сделайте это пожалуйста, я не знаю как. И напишите плз, куда в бинд сталкер или еще куда вписать, что бы функция работала. Если можно, то оформите эти функции в один текстовый файл и выложите на вебфайл, ссылку в лс:) функцию спасуна назовите sp_monster.

Ссылка на комментарий
А без алл спавна не обойтись?

 

Без алл спавна точно не узнаеш как вариант редактируй все подряд

 

 

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

Мастер с обрезом

 

убили его, и все. для него нужно еше респаун изготовить :grin2: а для этого создать смарт + гулаг :blush:

Ссылка на комментарий
Мастер с обрезом, прячется, появляется - сделай логикой, а не убить/спавнить, ато ты в него стреляеш, а он бац и пропал, а потом вдруг за спиной вынырнул

Vita sine libertate, nihil

Vita sine litteris - mors est

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

А что ему в логике надо писать, что бы он только ночью был активен? И как файл логики зарегистрировать для этого контролера конкретно?

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

Можно ли сделать так чтобы ГГ начинал игру рандмонно - в нескольких местах?

Правельно пейсать "мадыратарчег", патамукаг проверочнойе слова "красафчег".

Ссылка на комментарий
Writer, как способ, после начала новой игры телепортировать ГГ куда нужно. Изменено пользователем Министр
Ссылка на комментарий

karavan

Это не скрипт, а свойство конфига, в оригинале на нем сделан полтергейст. Не знаю, правда, для каких классов оно работает, пробуй ;)

Мои работы:

Ночные прицелы + смена ножевого слота

AI вертолетов + ПЗРК

Soul Cube

 

Работаю только с ТЧ. С ковырянием ЧН/ЗП не связываюсь ни в какой форме. Совсем.

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

Вылет:

attempt to call method 'STATE_Write' (a nil value)

 

Со ссылкой на строку:

sobj:STATE_Write(stpk)

 

Что это значит?В АМК этот метод прекрасно используется.

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

Kolmogor,

значит , что sobj равен nil

В этом случае вроде бы другая ошибка, что-то вроде "attempt to index global 'sobj' (a nil value)"

Может, sobj как-то получился не серверным объектом?

 

Monnoroch,

что выдаёт type(sobj)?

 

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

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

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

 

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

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

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

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

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

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

Войти

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

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

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