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

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


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

Что бы изменения вступили в силу, нужно поспать. Ну или начать новую игру)))

Или перезапустить игру. Тогда конфиги читаются заново.

P.S не имею понятия почему текст в цитате красный...

Изменено пользователем Kirgudu
Добавлено Kirgudu,

Потому что это была не цитата (quote), а код (code). Поправил.

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

Или перезапустить игру. Тогда конфиги читаются заново.

 

В каком смысле перезапустить игру? Насколько я знаю (так как большой любитель играть с реальным течением времени в модах) изменить течение времени можно только двумя вышеописанными способами. Бывает сон не помогает, и приходится в sleep_manager.script подправлять значения set_time_factor.

 

 

 

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

 

 

В каком смысле перезапустить игру?
Exit\Run.

После изменения конфигов игра должна их прочитать. В случае с логикой и торговлей достаточно Save\Load-а, для остальных правок необходимо выйти из игры.

П.С. Есть движковая правка которая читает все конфиги при save\loade, но из-за скорости загрузки это подходит только для разработки.

 

 

 

Бывает сон не помогает, и приходится в sleep_manager.script подправлять значения set_time_factor.
time_factor устанавливает скорость течения времени в игре относительно реального.

ф-ия set_time_factor = time_factor +\- number изменяет скорость течения времени в игре.

  • Нравится 2
Ссылка на комментарий
"конфиг" этот называется all.spawn.

А зачем разрабы загнали эти лтх-конфиги в один архив, для быстроты?

@ins33, ой, спасибо, нигде что-то найти не мог :)

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

 

 

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

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

  • Нравится 2

 

 

 

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

@ins33, а почему это не работает?

[logic]
active = kamp@ros_duty_blockpost
[kamp@ros_duty_blockpost]
center_point = ros_duty_blockpost_kamp
on_info = {=dist_to_enemy_ge(5)} camper@ros_duty_blockpost
[camper@ros_duty_blockpost]
path_walk = ros_dolg_sniper_walk
path_look = ros_dolg_sniper_look_a
sniper = true

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

Интересно, зачем в оригинале у солдата на Кордоне стоит on_info = {+esc_bridge_pass_fire} walker@esc_bridge_post3_fire %=bar_arena_hit%

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

 

 

Но он сразу переходит в комбат и начинает бегать...

Все верно - при переходе в комбат схемы поведения перестают работать. В Вашем примере логики стоит 5 метров для переключения схемы. Есть такая секция danger, которая управляет реакцией неписей на всякие опасности и для нее есть значения по умолчанию. Так вот реакция на живую опасность выставлена на 150м, и на звук - 50м. Так что Ваши dist_to_enemy_ge(5) никогда не сработают, потому что непись по любому значительно раньше уйдет в danger, а затем в комбат.

  • Спасибо 1
Ссылка на комментарий

@naxac, дак добавил и мит, и мит_диалог, не хочет говорить.

упд

Схема добивания раненых при нескольких палачах и раненых просто помирает - 7 неписей не смогли пристрелить 4х, топтались до посинения. :D

упд

@UnLoaded, я с этого взяточника и брал пример) use = true помогло. А как примирить с другим НПС, кроме фейк-комьюнити? И возможно ли дать НПСу бинокль в руки при соответствующей анимации? В характер_деск бинокль есть, а всё равно смотрит в руки(

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

 

 

дак добавил и мит, и мит_диалог, не хочет говорить.

Ты хоть бы показал чего там наваял. А вообще, есть работающий пример - майор-взяточник под мостом на Кордоне. Примирен с актером(ГГ) через combat_ignore и вполне себе разговорчив - смотри как и делай по аналогии.

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

Сталкеры, пара вопросов.

В файле damages.ltx есть всякие-разные секции, например:

[body_kurtka_damage]


bip01_pelvis = 1.0, 0.15
bip01_spine = 1.0, 0.15
bip01_spine1 = 1.0, 0.15
bip01_spine2 = 1.0, 0.15

bip01_l_clavicle = 1.0, 0.15
bip01_l_upperarm = 1.0, 0.15
bip01_l_forearm = 1.0, 0.15
bip01_l_hand = 1.0, 0.15

bip01_r_clavicle = 1.0, 0.15
bip01_r_upperarm = 1.0, 0.15
bip01_r_forearm = 1.0, 0.15
bip01_r_hand = 1.0, 0.15

bip01_l_thigh = 1.0, 0.15
bip01_l_calf = 1.0, 0.15
bip01_l_foot = 1.0, 0.15
bip01_r_thigh = 1.0, 0.15
bip01_r_calf = 1.0, 0.15
bip01_r_foot = 1.0, 0.15

 

 

Кто подскажет, какая косточка какую часть тела обозначает? И что означают цифры справа от имени кости?

 

И еще, если поменять значения, новая игра нужна или нет?

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

Сталкер - наше всё!

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

@AndrewMor, Вот:

 

bip01_pelvis - Таз
bip01_spine - Низ спины(под ребрами)
bip01_spine1 - Средняя часть спины. Ребра.
bip01_spine2 - Верхняя часть спины. Плечи

bip01_l_clavicle - Левое плечо(сустав)
bip01_l_upperarm - Плечо.
bip01_l_forearm - Предплечье.
bip01_l_hand - Кисть и малая часть предплечья.
Тоже самое, но bip01_r_... Это правая часть.

bip01_l_thigh - Левая ляжка.
bip01_l_calf - Левая икра.
bip01_l_foot - Голеностоп. 
Тоже самое, но bip01_r_... Это правая часть.

 

 

@AndrewMor, нет. Но, относительно, недавно кто-то писал на эту тему. 

Извиняюсь. Не недавно. Вот, нашел.

Изменено пользователем Kober(BRUC)
  • Спасибо 2
Ссылка на комментарий

Kober(BRUC), спасибо. А с цифрами не подскажешь?


 

 

Но, относительно, недавно кто-то писал на эту тему.

Еще бы вспомнить, кто и где писал...

Сталкер - наше всё!

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

 

 

А как примирить с другим НПС, кроме фейк-комьюнити?

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

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

@UnLoaded, а как? В оригинале ничего такого не нашёл.

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

УПД

Нашёл в оригинале: в val_prisoner_guard.ltx есть условие =val_fighting_prisoner, а в xr_conditions.script есть функция

function val_fighting_prisoner(actor, npc)
	-- FIXME: use SID!!!
	return db.storage[npc:id()].enemy:name() == "val_prisoner_captive"
end

и рядом ещё несколько подобных.

Уж не эта ли ф-ия обижает нпс?

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

 

 

а как? В оригинале ничего такого не нашёл

combat_ignore_cond  = {=check_fighting(400:402)}

Будут игнорироваться неписи, у которых StoryID 400 и 402. Ф-ция находится в том-же xr_conditions.

 

 

кроме хэдшота - не реагируют

Это движковая фича, если не ошибаюсь... 

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

Не работает.

[logic]
active = kamp@esc_bandit_camp
combat_ignore = combat_ignore@esc_bandit_camp
on_hit = hit
[kamp@esc_bandit_camp]
center_point = esc_bandit_camp
combat_ignore_cond = {-esc_bandit_hit =fighting_actor =check_fighting(5484)}
[hit]
on_info = %+esc_bandit_hit%

Если комбат_игнор поставить универсальный, и убрать =файтинг_актор, всё равно не мирится с ним!(( ИД задан верно, метка на карте по нему работает.

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

@dPlayer, это как оно должно сработать? У тебя проверяется, что враг актор И, одновременно, какой-то 5484. Одновременно эти два условия никогда не выполнятся. В каждый момент проверки враг либо тот, либо другой. Смотря кто из них проверяется.

 

Что-то никак не соображу. Вот у меня загружен какой-то сейв, идет игра и тут я из игры выхожу. В логе вижу

- Disconnect

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

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

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

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

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

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

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

Войти

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

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

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