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

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


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

 

 

Прописал флаг и в walk и в look - заработало

:offtopic:

Ну а хотя-бы посмотреть, как это всё прописано в родном олл_спавне? Не судьба? Чат на две страницы лучше устроить...

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

"Запрет чего ? Пока, в текущей формулировке, не ясно. dc" Попробую переформулировать... В общем, у гг, за которого мы играем, тень присутствует, фонарь тоже, но модели нету, но в переключении в 3-й вид она появляется. И так скажем... Нужно сделать включение этой модели и в 1-м.

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

Вообщем уже не знаю куда писать поэтому пишу суда: Мне надо чтобы мой НПС стоял на месте и когда его спугнут чтобы он вернулся на то же самое место.

Пишу вот Такую логику в all. spawns

[logic] 
active = walker@stay_at_position 
combat_ignore = combat_ignore 
danger = danger_condition 
   
[walker@stay_at_position] 
path_walk = walker_stay_at_position_walk 
path_look = walker_stay_at_position_look 
   
[combat_ignore] 
combat_ignore_cond = always 
   
[danger_condition] 
ignore_distance = 0 
ignore_distance_corpse = 0 
; cse 

И в way_|02_garbage:

[walker_stay_at_position_walk] 
points = p0,p1
p0:name = name00
p0:position = -63.22,-0.55,-221.84 
p0:game_vertex_id = 330
p0:level_vertex_id = 133639
p0:links = p1(1)
   
[walker_stay_at_position_look] 
points = p0,p1
p0:name = name00
p0:position = -63.22,-0.55,-221.84 
p0:game_vertex_id = 330
p0:level_vertex_id = 133639
p0:links = p1(1)

Но НПС не стоит на месте а убегает. Даже если в all.spawn я пишу путь к скрипту с той же самой логикой он всё ровно убегает. 

[logic] 
cfg = scripts\Dikiy_logic.ltx

Вопрос: как правильно прописать логику?

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

@MGS, да так и пиши...

points = p0

И никаких p0:links = p1(1) до кучи - это вообще указание, куды идтить надо.

И почитай чего-нибудь о путях.

Там и про логику есть кстати.

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

Вообще-то damage_section вычитывается из юзердаты модели, а никак не из логики объекта.

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

Вот ещё одна ошибка: 

Expression    : no_assert
Function      : CXML_IdToIndex<class CCharacterInfo>::GetById
File          : e:\stalker\patch_1_0004\xr_3da\xrgame\xml_str_id_loader.h
Line          : 112
Description   : item not found, id
Arguments     : 

Появляется когда идёт экран загрузки, при надписи старт новой игры. Последние файлы в которых ковырялся: bind_stalker, character_desc_garbage, npc_profile, spawn_sections, stable_bio_name и в all.spawns. Даже когда вернул исходные файлы (до того момента как копаться начал в них) всё ровно происходит вылет с этим логом.

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

Ошибка в .xml файлах (нет нужного id): как пр. - <specific_character id="gar_seriy", а в npc_profile.xml - gar_seri, также с id для биографий нпс и т.д. Если многое изменял, лучше сравни свои файлы с оригинальными с помощью программ: beyond compare \ araxis merge и т.п.

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

Товарисчи, подскажите, при поиске через if string.find(1 аргумент, 2 аргумент) then бла бла

1 -аргумент то, где мы ищем, 2 аргумент- что именно ищем.

Вопрос: как во 2 аргументе указать переменную, а не вручную писать?

Хочу чтобы при поиске он искал реальное имя нпс, но не выходит: if string.find(npc:character_name(), n) then

здесь n- имя которое ищем у нпс

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

Такой вот вопрос: в скрипте гулага, в назначении работ можно задать in и out-рестрикторы. А в собственно логике непися,  как-то можно задавать\менять ему рестрикторы ? Или это только через правку нет-пакета ?


 

 

Хочу чтобы при поиске он искал реальное имя нпс

А разве npc:character_name() не возвращает это самое реальное имя ? К примеру для Волка эта ф-ция вернет "Волк". И что тут искать ?

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

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

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

Ну так ищем function gulag:set_restrictions( ... ) и смотрим:

npc:add_restrictions(), npc:remove_restrictions()

 

Ну и при чем здесь нетпакет/логика ?

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

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

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

Раздал некоторым НПС автоматические пистолеты (Глок и АПС). НПС в свою очередь либо выбрасывают пистолеты, либо выбрасывают основной ствол.

Подозреваю что виной всему эти строчки:
 

 

 

class = WP_LR300
ef_main_weapon_type = 2
ef_weapon_type = 6
weapon_class = assault_rifle

Подозреваю что если сменить на
 

 

 

class = WP_WALTH
ef_main_weapon_type = 0
ef_weapon_type = 5

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

Теперь вопросы:
1. Верно ли я мыслю?
2. Смогу ли я вести автоматический огонь из пистолетов после переделки?

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

либо выбрасывают пистолеты, либо выбрасывают основной ствол.

В оригинале неписи ничего не выбрасывают.

То есть, разбирайтесь с тем, что Вы добавили.

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

А разве npc:character_name() не возвращает это самое реальное имя ? К примеру для Волка эта ф-ция вернет "Волк". И что тут искать ?

Возвращает, был мой косяк:)

А поиск идёт в таблице db.creature, по имени, введённого вручную с кпк. путём перебора всех нпс на локации

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

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

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

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

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

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

Войти

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

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

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