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

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


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

 

 

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

А отбирать инфопоршень, активирующий задание, и выдавать заново не пробовал?

Ссылка на комментарий
@AndrewMor, в ТЧ для тасков нет состояния "отменено". Только "получено", "обновлено", "выполнено" и "провалено". А повторно выдать можно. Как пример - task_manager. Изменено пользователем naxac

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

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

Есть способ заставить главное меню игры отображать номер сборки модификации из внешнего файла? Например, по его имени внутри папки gamedata: build 170916 и без зависимости от расширения. Что-то вроде поиска по ключевому слову build + все то, что написано в названии файла кроме него.

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

aka Stalker_AleX333
 
Мои проекты  - ЯндексДиск   |   Я на Gamer-Mods.ru

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

Мне вот интересно, а можно сделать так что бы один и тот же монстр использовал несколько разных моделей? 

Технически нет, одному мутанту (именно секции) нельзя прописать несколько визуалов. Наследуешь свои секции из исходной и правь им настройки в конфиге, исходя из модели. Потом вручную их спавнишь.

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

Мы по аномалиям зону разберём!

Сидора повесим, а Бармена убьём!

Ну а вояк мы смоем в унитаз!

Пускай плывет в канализации спецназ!

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

 

 

Столкнулся с интересным моментом: если прописать отдельное задание в tasks_имя_локации.xml, его выполнить, то его повторно выдать уже нельзя, так получается? А отменить скриптово возможно, с тем, чтобы выдать его повторно? И каким образом?

 

Инфопоршни удалить попробуй, которые идут в графе infoportion_complete для конкретного квеста. Должно помочь.

Удалить можно например, из диалога. А вот как точно не припомню, погугли на досуге

Не соответствует правилам.

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

Кстати, в голове крутится, что когда-то читал про рандомную привязку визуалов к профилю НПС. А может и приснилось...

 

Почему так происходит:

Есть спейс_рестриктор с логикой:

[logic]
active = sr_idle
[sr_idle]
on_actor_inside = {+info1} nil %+info2%

При выдаче info2 происходит функция спавна предмета через alife():create().

<info_portion id="info2"><action>mod_spawn.spawn_predmet</action></info_portion>

И, если эту ф-цю спавна записать в тело квеста как условие выполнения

<function_complete>mod_spawn.spawn_predmet</function_complete>

то, при подходе к рестриктору на дистанцию а-лайфа происходит замедление игры практически в ноль. Я, собсна сделал квест через поршень, но всё равно, почему так происходит?

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

 

 

при подходе к рестриктору на дистанцию а-лайфа происходит замедление игры практически в ноль.

Странный однако подход к проверкам в квестах: ф-ция, которую ты указал тегом <function_complete>, будет с определенной периодичностью выполняться таск-менеджером, пока не вернет true\истину, т.е. условие проверки в этой ф-ции выполнилось. А у тебя в этой ф-ции происходит спавн, не важно чего - представь какая нагрузка на движок, спавнить что-то с частотой примерно пару раз в секунду. Конечно, у тебя игра останавливается...

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

Кстати, в голове крутится, что когда-то читал про рандомную привязку визуалов к профилю НПС. А может и приснилось...

 

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

 

Суть схемы: Присваиваем профилю "какой_нибудь_там_визуал.ogf".

В соответствующую папку кидаем "какой_нибудь_там_визуал_1.ogf" "какой_нибудь_там_визуал_2.ogf" и так далее...

И, по идее, игра их рандомно выбирает.

 

Скриптовой реализации не встречал.

Мы по аномалиям зону разберём!

Сидора повесим, а Бармена убьём!

Ну а вояк мы смоем в унитаз!

Пускай плывет в канализации спецназ!

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

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

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

Может и нубский вопрос, просто я этому никогда не придавал никакого значения. 

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

Хотя извиняюсь, по моему это из-за правки "лечения тайников".

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

 

 

А отбирать инфопоршень, активирующий задание, и выдавать заново не пробовал?

Пробовал. Задание по новой не выдается, так и висит в выполненных.

 

 

 

А повторно выдать можно. Как пример - task_manager.

Рандомные - можно, каковые как раз и описываются в таск_менеджер. Мне такой вариант не совсем подходит.

 

 

 

Инфопоршни удалить попробуй, которые идут в графе infoportion_complete для конкретного квеста. Должно помочь.

Попробую, конечно. Только вроде без толку.

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

Ссылка на комментарий
Пробовал. Задание по новой не выдается, так и висит в выполненных.

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

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

local new_task = CGameTask()
new_task:load("твое_задание")
db.actor:give_task(new_task, 3600*1000, true)

В task_manager.script погляди, как там происходит завершение регулярных заданий, может используется что-то типа set_task_state(...), чтоб опять пометить подзадания\задание как не выполненное.

Посмотри в сторону task_manager.ltx, там для сюжетных заданий прописано type = storyline. Проверь, если изменить на что-то другое(к примеру type = find_item), может получится выдавать повторно. Хотя, конфиг, как мне думается, отвечает за отображение в статистике, выдачу плюшек и т.п.

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

UnLoaded, спасибо за совет, буду пробовать. Мешает только нехватка времени. Попутно вопрос: а task_manager.script отвечает только за рандомные квесты, или и за основные тоже?

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

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

Не приснилось.

 

Верно, не приснилось. Но надпись "не работает" в начале статьи наводит на некоторые замышления :D

 

Как правильно составить логику рестриктора:

 

 

Есть поршни info1, info2 и info_start. И две ситуации при попадании в рестриктор:

info1 - есть

info2 - нет

info_start - выдаётся

 

info1 - есть

info2 - есть

info_start - не выдаётся

 

 

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

@dPlayer, так в чём проблема?

[logic]
active = sr_idle

[sr_idle]
on_actor_inside = {+info1 -info2} %+info_start% nil
on_actor_inside2 = {+info1 +info2} sr_idle@2

[sr_idle@2]
on_actor_outside = sr_idle

Ранее был известен под ником BoBaH_671.

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

@BoBaH_671 :unsure:

Почему эта конструкция никак звук не играет?

[logic]
active = sr_idle
[sr_idle]
on_actor_inside = {+info1 -info2} nil %+info3 +info2%
on_info = {+info2} sr_sound_act
[sr_sound_act]
snd = characters_voice\scenario\military\pda\mil_pda_5
Изменено пользователем dPlayer
Ссылка на комментарий

Ребята - у меня созрели два вопроса:

1. Я пытался перевооружить Пряпора на долговском блокпосте, на свалке, вручил ему гразу что чего он с обрезом, не получилось; приходу на блокпост, смотрю обрез у него в ногах является а в руках пистолет о__О почему так?

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

 Моя нычкаНычка в арендованном у Опричника холодильнике  

Мы хорошие ребята, жаль патронов маловато:):ukostra:

UriZzz.gif

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

@dPlayer, имя схемы в названии секции логики отделяется символом "@", т. е. у тебя должно быть [sr_sound@act].

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

@Charsi, sr_sound_act это такая схема, sr_sound2d.script и ага.

 

@dPlayer, предположу, что на ключе on_actor_inside (а он у тебя выполняется первым) схема уходит в nil, отсюда ключ on_info не выполняется, соответственно, если я прав, то можешь зайти в рестриктор, потом сделать сейв/лоад и звук должен начать играть, если я не прав, значит не прав, но звук который ты играешь по любому корректный, так как оригинальный.

 

А вообще я бы изобразил все как-то вот так:

[logic]
active = {+info1 -info3 -info2} sr_idle, nil
[sr_idle]
on_actor_inside = sr_sound_act %+info3 +info2%
[sr_sound_act]
snd = characters_voice\scenario\military\pda\mil_pda_5
on_signal = sound_end | nil
Изменено пользователем Карлан
  • Спасибо 1
Ссылка на комментарий

@UriZzz, ты или не убрал ему обрез из профиля или не добавил патронов от Грозы, пачки 3 ему пропиши. И да, проверь через НИ.

Волк на АС оригинал, но там косяк с лагерем, если все сталкера этого лагеря будут живы, то при первом заходе Волк заспавниться прямо в центре camp'а, который благополучно совпадает с лагерным костром... Поэтому, по минимуму - убери урон от костров, а ещё лучше поправь по человечески.

@Карлан, ну почти твоё, сработало))

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

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

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

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

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

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

Войти

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

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

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