Перейти к контенту
Гость TAYLI

Схема "Компаньоны"

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

AMD

 

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

 

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

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

 

ХЗ, надо будет с этим вариантом проэкспериментировать.

 

Строгое предупреждение от модератора n6260
"хз" - не юзаем! И вообще, по-вежливее...

Отладчик и скриптер мода OGSE. Автор схемы "Компаньоны", стреляющего БТРа и многих других полезностей :wink:

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

kamikazze

Можеш описать как настраивается Гейм.Граф под "Компаньоны"? Желательно поподробнее.

Какой программой пользовался или компилятором? Да и как вообще настроить схему "Компаньон" для новых локаций?

Я думаю что небольшой мануальчик будет для всех очень кстати.

 

З.Ы.: Кто присоединяется к моей прозьбе отпишите.

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

karavan

 

Я для работы с графом использовал скрипт gg_cdc_x4 от Xiani. На Stalker Inside он есть, пользоваться им достаточно просто. Кто распаковывал хотя бы раз аллспавн с помощью ACDC, разберётся без проблем. Нужно распаковать геймграф, получится огромная груда конфигов... находим там справочный конфиг game.graph.info.cross_edges.ltx - в нём перечислены все точки переходов, которые были при распаковке найдены в графе. Все эти точки надо найти в основных конфигах - game.graph.edges.<id_локации>.ltx, искать по параметру edge_offset. После того как нашли, надо у данной связи вертексов поменять параметр distance (расстояние между вертексами в условных игровых метрах) на какое-либо небольшое число. Я лично поставил 5. Далее, обработав все переходы подобным образом, собрать геймграф из конфига обратно и пользоваться.

 

Адаптировать же схему для новых локаций вообще предельно просто. Главное - чтобы новая локация была уже как положено прописана в геймграфе, и на неё там же были прописаны переходы (переходы ГГ непригодны для неписей, они ходят только по связям в геймграфе). Если всё это уже сделано, и NPC могут беспрепятственно посещать локацию, нам достаточно в основном скрипте напарников xr_companion.script поправить табличку offline_dest_table - она находится практически в самом конце модуля. В ней вписаны смарты, в которые компаньон отправляется для того чтобы перейти между локациями. Записи выглядят следующим образом:

 

l07_military = {

none="mil_dolg_ambush_walk1"

}

 

Т.е. это тоже таблички, ключом которых являются идентификационные имена локаций, в которых перечисляются имена смартов, как они заданы в аллспавне, обычно по одному на локацию. Предположим у нас локация Генераторы с именем l13_generators и смарт называется gen_last_hope_smart4. Тогда запись будет выглядеть так:

 

l13_generators = {

none="gen_last_hope_smart4"

}

 

 

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

 

Вот собственно чеклист того, что должно быть сделано, чтобы напарник (да и вообще любой другой NPC) мог посетить локацию:

 

1. На ней должна быть корректно работающая АИ-сетка.

2. Вертексы сетки локации должны быть корректно зарегистрированы в геймграфе.

3. У пары вертексов локации в геймграфе должны быть прописаны связи с вертексами соседних локаций - они работают как переходы для неписей.

4. На локации должен быть хотя бы один смарттеррейн, способный принять NPC любого коммунити.

5. В xr_companion.script в табличке offline_dest_table должна быть сделана запись для этой локации с именем этого смарта.

 

Фактически, все пункты, кроме 5-го, к напарникам не относятся непосредственно. То что описано в п. 1-4 должно быть сделано ещё изначально маппером при подключении локации к моду, иначе это бессмысленная трата времени, так как не подключенной таким образом локацией никакие NPC пользоваться не смогут. Зато если это всё было уже сделано при подключении локации, то вам останется только 5-й пункт выполнить.

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

Отладчик и скриптер мода OGSE. Автор схемы "Компаньоны", стреляющего БТРа и многих других полезностей :wink:

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

KamikazZe,

a eсли в геймграфе новые точки перехода (без доп. локаций) ? И простые нпс 100% ими пользуются, то просто 5 пункт выполнить, т.е разобрать геимграф, там узнать имена переходов и вставить в файл xr_companien?

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

AMD

 

Вы неверно поняли мои объяснения. Прочтите ещё раз, внимательно :) Точки перехода в схему не добавляются, туда добавляются смарты на локации, как маяки на которые будет идти непись. Если новые точки в геймграфе есть, напарник будет их использовать без проблем. Может понадобиться только переписать им расстояния на более короткие.

Отладчик и скриптер мода OGSE. Автор схемы "Компаньоны", стреляющего БТРа и многих других полезностей :wink:

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

Есть ли ограничение в схеме Компаньон на переход Новичка на локацию Радар, когда "Выжигатель мозгов" работает?

 

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

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

И еще соединил АМК 141 + AI additions + Компаньоны и иногда получается такое. Компаньон убивает зверушку, подходит к ней пытаясь обыскать, приседает, смотрит, потом встает и начинает крутиться на одном месте. Когда его отпускаеш то НПС отказывается, что либо делать, просто стоит около зверушки и "плачет" :crazy:

 

Это издержки AI additions? Может зря я вообще соединял эти моды? Есть ли возможность поправить?

 

З.Ы.: Кстати, в такой сборки НПС активно используют болты около аномалий (я так понял если аномалия случайно оказалась на вычесленном пути НПС) и даже пытаются напасть на мутантов с ножем. :)

 

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

KamikaZze,

Можно немного просветить в плане добавления рации? На основе адаптации на АМК.

В файле AMK.SCRIPT строки

local update_cnt = 0

(часть другого кода)

-- рация для ГГ
if update_cnt <= 50 then
	update_cnt = update_cnt + 1
end
if update_cnt == 50 then
	if not db.actor:object("hand_radio_f") then
		amk.spawn_item_in_inv("hand_radio_f")
	end	
end
-- рация для ГГ

они просто спаунят рацию в инвентаре?

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

Этот участок просто вызывает диалог ?

  if select_string=="rad" then
   ui_handradio.open_radio_dialog(params_string)
 end

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

А для чего нужен этот?

if obj and obj:section() == "hand_radio_f" then
amk.start_timer("rad", 0.1, obj:id())
end

Спасибо.

karavan, у меня компаньон переходил на Радар. Просто появлялся у первого лагеря монолитчиков.

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

AMD

 

Запросто:

 

они просто спаунят рацию в инвентаре?

 

Да. При старте игры запускается простейший счётчик обновлений, который после 50-го обновления (на 5-й секунде от передачи управления игроку) проверяет наличие в инвентаре рации и спавнит её если вдруг её нету. Это нужно потому, что инвентарь обновляется и заполяется из сейва далеко не сразу, команда проверки наличия рации соответственно тоже не сразу выдаст правдивый результат, и если эту проверку запихать на первое обновление или на спавн ГГ, то при каждой загрузке игры у ГГ будут появляться 2-3 новые рации :D Ну и после 50-го обновления проверка прекращается, ибо не нужна уже. Таким образом это одноразовая обработка.

 

Этот участок просто вызывает диалог ?

 

Да.

 

А для чего нужен этот?

 

Это таймерная обработка... сделано это вот для чего. Рация - это по сути своей предмет класса еды или аптечки. При её пропаже из инвентаря запускается таймер с идентификатором "rad", с ID рации на интервал в 0.1 секунды. По истечению этого срока скрипт проверяет, есть ли объект с ID рации в игре. Если есть - значит игрок её выронил или выложил. В этом случае меню не открывается. Если же предмет уничтожен, "съеден", то запускается меню и в инвентарь ГГ ложится новая рация ^_^

 

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

 

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

karavan

 

Компаньон убивает зверушку, подходит к ней пытаясь обыскать, приседает, смотрит, потом встает и начинает крутиться на одном месте.

 

Компаньонам надо запрещать использовать схему лута, они конфликтуют, это я делал в текущей версии адаптации для АМК, видимо когда адаптировали этот скрипт у вас выпал, проверьте. Это watcher_act - я внедрил в адаптацию для АМК нашу версию этого скрипта из OGSE, в которой запретил обыск трупов напарникам, а так же неписям в следующих ситуациях:

 

1) если активная схема запрещает лут

2) если посланы игрой бежать куда-то (активная схема test или walker)

3) если играем в скриптовой сценке (активная схема remark)

4) если сражаемся

5) если отыгрываем тяжелораненного

6) если говорим с актором

7) если мы в опасности

8) если мы не той фракции (зомби, торгаш или боец арены, или Доктор например)

9) если актор ближе 3 метров (подошёл для разговора)

10) если рядом враг и мы его атакуем

 

Это позволяет у нас в OGSE эксплуатировать схему лута, не руша сценарные сценки, диалоги, и не подставляя неписей под огонь ради добычи. Никакой доп. адаптации этому скрипту - watcher_act, не требуется, ей по идее достаточно перезаписать текущую.

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

Отладчик и скриптер мода OGSE. Автор схемы "Компаньоны", стреляющего БТРа и многих других полезностей :wink:

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

kamikazze

Если я правельно понял, то мне всего лишь необходимо заменить фаил watcher_act взяв его из адаптации под АМК?

 

Я просто начал сборки в такой последовательности: АМК 141 + AI additions + Компаньон 1.7. Не нужно ли еще какие файлы поправить?

 

И вот еще хотел спросить: Какие по вашему мнению АИ схемы совместимы (теоретически) с выше приведенной сборкой и в том числе с Компаньонами?

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

karavan

 

Да, должно быть достаточно просто обновить скрипт, адаптация дополнительная не нужна. Скрипт берите из 1.8А

Схемы же совместимы не только теоретически, но и практически, они же у нас в OGSE все работают вместе, и для напарников тоже, совершенно нормально. Единственное что я сильно их дорабатывал для большей стабильности, у них местами достаточно глючноваты посмертные обработки (это в основном касается схем медика и гранатометания) - без приведения в порядок могут приводить к зависаниям алайфа при смерти персонажей. Я про это и про то как отладить эти обработки писал в статье своей. Ссылка в профиле если что есть.

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

AMD

 

У меня в биндере схемы Компаньонов сразу есть эвалуаторы для схем xrs_medic и rx_bandage, плюс ещё от нескольких. Поэтому если в игре, где используется напарник уже стоят AI additions и доп. схемы лечения и гранатометания, то напарник сразу же будет их использовать, будет лечиться и бинтоваться сам, швырять гранаты, бить прикладом и т.п. Плюс схема сама его ещё малость подлечивает самостоятельно, чтобы он был покрепче в боях. Так что тут для того чтобы он лечился особых дополнительных действий не требуется.

 

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

Изменено пользователем Таули

Отладчик и скриптер мода OGSE. Автор схемы "Компаньоны", стреляющего БТРа и многих других полезностей :wink:

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

Good news everyone! ;)

Я вернулся.

 

Stalk15

 

Основная функция - dialogs.companion_start_following

 

Всем

 

Ребята, насчёт ЗП ничего пока не могу сказать - там довольно прилично всё отличается от ТЧ, и я не уверен что там заработают те методы записи/чтения нетпакетов, что я использую. Пока времени проверить и порыться нету, плотно занят над OGSE 07. Впрочем есть и плюс в этом - над напарниками тоже работаю, планирую реализовать схему "след в след" и селектор оружия.

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

Обновлена версия для чистой игры:

 

Текущая версия: 1.9

http://forum.ogse.ru/download/file.php?id=3062

http://ifolder.ru/20334150

 

Версия 1.9

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

+ включены более безопасные версии скриптов smart_terrain и xr_gulag с правками исключающими зависания алайфа при посмертном реините логики персонажей

+ в пакет мода включен геймграф с сокращённым расстоянием переходов

+ в пакет для чистой игры добавлена рация для общения с напарником

+ можно легко отключить ограничение по коммунити, изменив параметр other_factions_switch в заголовке xr_companions.script

 

 

----

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

Изменено пользователем Таули

Отладчик и скриптер мода OGSE. Автор схемы "Компаньоны", стреляющего БТРа и многих других полезностей :wink:

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

CAHCAHbl4

 

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

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

Обновлена версия для чистой игры:

 

Текущая версия: 1.9B

 

http://forum.ogse.ru/download/file.php?id=3161

 

Версия 1.9B

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

* Сделан перезапуск логики напарника при начале работы схемы, а так же при переходе на панический бег. Должно помочь исправить проблемы с застреванием напарника при конфликтах логики.

Изменено пользователем Таули

Отладчик и скриптер мода OGSE. Автор схемы "Компаньоны", стреляющего БТРа и многих других полезностей :wink:

Ссылка на комментарий
Crazy_Sniper, Адаптация уже есть, официальная, но пока ничего недоступно, все оригинальные ссылки ведут на ОГСЕ форум, а с того при чистке все вложения удалились. Я связывался с kamikazze, он обещал перезалить. Ждем.
Ссылка на комментарий

Можно еще зеркало для Русская и английская адаптации для XiaNi Freeplay Start 1.21 ? Например, депозит или айфолдер.

 

Сообщение от модератора Таули
Изменено пользователем Таули
==============
Ссылка на комментарий

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

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

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

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

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

Войти

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

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

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

AMK-Team.ru

×
×
  • Создать...