Это популярное сообщение. Bak 755 Опубликовано 25 Января 2009 Это популярное сообщение. Поделиться Опубликовано 25 Января 2009 (изменено) Ai Additions 2.0 Дата выпуска: 2009,2016Разработчик: Rulix aka @BakМой канал youtube Дополнения, дарующие неписям новые возможности (АИ схемы). Менеджер оружияСкрипт, управляет выбором оружия НПС.Непись способен определить лучшее оружие;в зависимости от противника, расстояния до него, количества патронов в магазине выбирает более подходящее оружие.Например, издалека будет стрелять со снайперской винтовки, вблизи переключится на автомат или пистолет, если есть,если кончаются патроны, может достать другую пушку и т.д.Возможно управление оружейными предпочтениями персонажей.Перезарядка оружияНПС перезаряжают оружие для сохранения боеготовности.Исправление ситуации, когда НПС встречал обнаруженного врага с пустым/полупустым магазином,так как потратил патроны в перестрелке или подобрал разряженное оружие.-дополнительно- Перезаряжается всё используемое оружие, а не только активное.Стрельба с подствольных гранатометовЕсли НПС стал счастливым обладателем винтовки с подстволом,будет его использовать, но только если это безопасно для него самого, ну и своих будет стараться не задеть.Эффективность зависит от ранга персонажа. Удар в лицоНПС дубасит руками/прикладом всех врагов, которым не повезет оказаться поблизости.Если нет оружия, может подкрадываться к врагам для удара. Напяливание аддоновНПС могут прикреплять к своему оружию аддоны: оптический прицел, глушитель, гранатомет.Также снимают аддоны и переодевают на лучшее оружие.Перевязка (самолечение)Если НПС получит ранение, то он достанет бинт или аптечку (при наличии) и использует их по назначению. В бою будет лечиться только находясь в укрытии. По своим не стрелятьЕсли на линии огня оказался союзник, НПС прекращает огонь и меняет позицию. Бой с ножомНПС использует нож в бою с людьми и мутантами Добивание раненыхУлучшенная схема добивания, используются разные варианты: выстрел, нож, удар. Лечение раненыхНПС лечат тяжелораненых союзников. СобирательствоНПС собирают предметы с пола и обыскивают трупы Оборона от монстровТеперь вместо того, чтобы прятаться от монстров по укрытиям, НПС будет увеличивать дистанцию, чтобы расстрелять мутанта с безопасного расстояния, а также пытаться уклониться от атаки Хромание НПСДобавлен новый режим "легкого тяжелого ранения", в котором НПС:- при наличии врага стараются спрятаться от него, ковыляя в укрытие- находясь в укрытии, могут сами себя вылечить (при наличии аптечки)- используют сидячую анимацию вместо лежачей КамикадзеПсихи-камикадзе (некоторые монолитовцы) достают гранату, выдергивают чеку и бегут на противника. Ожидание после бояПосле убийства врагов НПС некоторое время сидят на месте,отыгрывая соответствующие анимации и озвучку Метание гранат (гренадер)НПС. кидают гранаты. во врагов. Переодевание в лучшую броню (тамагочи)NPC можно продать какой-нибудь костюм и если его устроит, то он его оденет.Неписи очень стеснительные, поэтому переодеваются только тогда, когда гг их не видит и находится как минимум за 15 метров от нихКроме того введена система апгрейда брони - теперь NPC развиваются, вполне возможно встретить по прошествии времени NPC новичка, который обзавелся, например, костюмом сталкера или даже СЕВОЙ. Оттаскивание трупов от костра (анти-веселая понихида)NPC находящиеся на отдыхе (у костра, например) будут оттаскивать в сторону трупы людей и животных. RGhost release или Яндекс ДискAI Additions SHOC 2.0rghost yadiskАдаптациидля Народной солянки (1.932)для ОП-2 (1.932)для NLC7 (1.925) для Darkest Time (2.0)Озвучка монолитовчев из ЗПСпецназёрские анимации от Mirage2000 для ТЧ [spoiler=для Чистого Неба]тут [spoiler=для Зова Припяти]тут Изменено 16 Апреля 2017 пользователем Bak 12 21 10 Ссылка на комментарий
KDit 3 Опубликовано 28 Декабря 2009 Поделиться Опубликовано 28 Декабря 2009 PUNK-398, непотянет, сохранки вылитают. Bak, сделай и под 1.0005 - 1.0006. Ссылка на комментарий
The ReapeR 72 Опубликовано 4 Мая 2010 Поделиться Опубликовано 4 Мая 2010 (изменено) Черт возьми: [error]Expression : fatal error [error]Function : CScriptEngine::lua_error [error]File : E:\stalker\patch_1_0004\xr_3da\xrGame\script_engine.cpp [error]Line : 73 [error]Description : <no expression> [error]Arguments : LUA error: ...\games\s.t.a.l.k.e.r\gamedata\scripts\rx_wmgr.script:595: bad argument #1 to 'insert' (table expected, got nil) При переходе на Агропром. Я понимаю. что можно строку закомментить, но мне кажется, что-то работать не будет - строка связана с заполнением таблицы... Я кажется понял...поправьте, если не так: он говорит что первый аргумент ноль - то есть тип оружия ноль. Я играю с арсенал модом, все адаптировано, приоритеты тоже прописывал. Наверное. в арсенал моде какой-то новый тип оружия, который не обозначен....В общем, не знаю как обьяснить, щас буду ковырять... Извините, что постю один за другим, просто нашел rx_weapon_mgr.ltx - там прописаны типы оружия. 1,5,6,7,8,9. Возможно в Арсенале есть иные цифры, но их тут нет, вот так и получается. Щас попробую. Пока я нашел только то, что у bm16 было 4. Исправил на 7, как у остальных дробовиков, щас потестируем. Да! Все работает При совмещении с вашим модом смотрите, чтобы у в конфигах оружия в графе ef_weeapon_type стояли только 1,5,6,7,8,9 ! Изменено 4 Мая 2010 пользователем The ReapeR New Level Changer 5.08: Раритеты ReapeR build 3: Раритеты Я на YouTube: Vincent Vega Ссылка на комментарий
rnm_016 54 Опубликовано 11 Мая 2010 Поделиться Опубликовано 11 Мая 2010 А с AI modification by Monnoroch кто нибудь соеденял? FWR modОбитаю здесь и здесь Так же известен, как: ~<Red>~ Где то на компе лежит куча стволов, и весьма хороших, фишка в том, буду ли я выкладывать их еще Ссылка на комментарий
The ReapeR 72 Опубликовано 11 Мая 2010 Поделиться Опубликовано 11 Мая 2010 (изменено) Red, Мой пост с AI Full Pack Изменено 3 Июня 2010 пользователем The ReapeR New Level Changer 5.08: Раритеты ReapeR build 3: Раритеты Я на YouTube: Vincent Vega Ссылка на комментарий
нАемНик 1 Опубликовано 15 Августа 2010 Поделиться Опубликовано 15 Августа 2010 А как увеличить урон от удара прикладом? Ссылка на комментарий
СтаринаФил 0 Опубликовано 23 Августа 2010 Поделиться Опубликовано 23 Августа 2010 нАемНик, в конфиге rx_facer вроде Ссылка на комментарий
kamikazze 266 Опубликовано 19 Апреля 2011 Поделиться Опубликовано 19 Апреля 2011 Сделал поправки некоторых проблем менеджера, с разрешения автора выкладываю тут: http://deathdoor.ru/mod_ogse/ai_add_SHOC_f...4-11_patch_5.7z http://ifolder.ru/23063515 Поправлены вылеты вида: [error]Expression : assertion failed [error]Function : xrServer::Process_event_reject [error]File : E:\stalker\sources\trunk\xr_3da\xrGame\xrServer_process_event_reject.cpp [error]Line : 12 [error]Description : e_parent && e_entity А так же напрямую связанная с ними проблема с пропажей части оружия NPC при выходе в онлайн. Эти вылеты иногда происходят когда NPC уходит в оффлайн - в этот момент менеджер вооружений для них отключается и возвращает вещи. Так вот, зачастую похоже что game_object непися успевает исчезнуть из игры раньше чем ему вернутся все вещи, в итоге происходят такие вылеты. Ситуация дурацкая - оставить так нельзя - вылетает периодически. Если же заворачивать обработку если непись не онлайн - тогда в итоге он теряет часть вещей, что неприемлемо. Пришлось отлавливать ситуацию когда непись вот-вот выпадет оффлайн и в этот момент шмот возвращать. Пришлось проверять условие пригодности для вывода в оффлайн и в случае если можно - проверять дистанцию переключения. Если дистанция в радиусе переключения - то поехали. В связи с этим изменены три скрипта: rx_wmgr.script - добавлена функция для отлова момента передачи вещей и флаг-блокировщик xr_motivator.script - убран вызов функции rx_ai.npc_switch_offline(self.object) в методе net_destroy se_stalker.script - модифицирован код проверки на пригодность к выводу в оффлайн и вставлен вызов новой функции из rx_wmgr Обратите внимание что в пакете появился поправленный скрипт se_stalker - тут он от 5-го патча, совместимый с 6-м и не совместимый с 4-м. Под 4-й если надо его легко можно адаптировать. Кроме вышеуказанных правок возвращен небольшой кусочек кода из предыдущей версии менеджера - без него враги часто застывают столбом, вешаясь на выборе оружия, если выбор оружия для боя в настройках менеджера указан как динамический. Отладчик и скриптер мода OGSE. Автор схемы "Компаньоны", стреляющего БТРа и многих других полезностей Ссылка на комментарий
Artos 99 Опубликовано 19 Апреля 2011 Поделиться Опубликовано 19 Апреля 2011 (изменено) kamikazze Привнесу немного сумбура с целью получения достаточно надежной и логичной схемы менеждера оружия. В своеей сборке давно использую данную схему Bak'а (но модифицированную). Устранял и ошибки с 'e_parent && e_entity' и также натолкнулся на проблему перехода онлайн<->оффлайн. Предложенные тобою правки дадут конечно эффект, но(!) и не уберут полностью проблему 'перехода' и добавят сложностей для неопытных с адаптациями к другим модам (тот же массив перевода объектов он/офф-лайн из АМК, задействованный и в se_stalker). К сути: Менеджер оружия использует фейковый ящик, в котором находится невостребованное неписями оружие. Ситуация конечно дурацкая, когда непись успевает уйти в оффлайн, а оружие ему не успевает вернуться. Твой вариант, основанный на предсказании перехода и опережающем возвращении возможно и даст некоторый запас прочности по стабильности и исчезновении ошибок, но привнесет и нелогичность (ИМХО). Не буду расписывать их, достаточно одного момента, когда непись будет на границе предсказанного перехода в оффлайн (условно ~100м), но не собирается переходить. Гистерезиса (триггерного эффекта) в твоем варианте нет (хотя несложно сделать), но не это основной минус. Слишком дистанция по меркам Зоны маловата (<100м) для принудительного отправления в оффлайн, поэтому игрок будет периодически наблюдать (и без оптики) исчезновение неписей. Собственно, а так ли нужно предсказывать уход в оффлайн? Мысли: 1. Если NPC ушел и не вернулся - то и фик с ним и с оружием в фейк-ящике ... Сделать периодическую чистку ящика, если напрягать будет. 2. Если NPC вернулся в онлайн (в запущенной уже игре!), то и заберет штатно свое оружие (если сторадж менеджера оружия не сбрасывать). 3. Если возврат в онлайн происходит из сэйва - вот тут то и нужно бы доработать, чтобы непись и/или фейк-ящик помнили где/чье. У себя в сборке сделал давно так, что фейк-ящик на локации всегда один и тотже с положенным в него барахлом и нужно только вернуть владельцу. 4. Остается последний момент - переход непися на другую локацию. В этой ситуации фейк ящик или таскать за Меченым по локациям (вот откуда наработка для компаньонов) или делать дубли ящика на локациях и перемещать востребованное оружие. Т.о. для более логичной работы схемы требуется (ИМХО): а) Постоянный фейк-ящик на локации в котором при сэйвах сохраняется барахло. (реализуемо/реализовано) б) Запоминать паренты (владельцов) оружия, чтобы возвращать после возвратов неписей в онлайн. (реализуемо и не сложно) в) Организовать трансфер между локациями или фейк-ящика или оружия. (уже реализуемо и 1-ое предпочтительнее). Доведем схему до логического и стабильного состояния?! :-) (частности можно и в ЛС обсудить) --- P.S. Вспомнил что резануло в глаза - один флаг (temp_disable), время жизни которого до 0.5 сек на несколько неписей, которые могут и практически единовременно уходить в оффлайн - источник оставшейся нестабильности и нелогисности. СтОит его внутрь менеджера запихнуть для каждого непмся индивидуально. (ИМХО) Изменено 19 Апреля 2011 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
kamikazze 266 Опубликовано 19 Апреля 2011 Поделиться Опубликовано 19 Апреля 2011 (изменено) Артос добавят сложностей для неопытных с адаптациями к другим модам (тот же массив перевода объектов он/офф-лайн из АМК, задействованный и в se_stalker). Ты код поправленный погляди сначала. Не добавят, там обработка встроена прямо в определение разрешения выхода в оффлайн. Работает следующим образом - если непись на границе оффлайна, local switch_dist = system_ini():r_s32("alife","switch_distance") local switch_fact = system_ini():r_float("alife","switch_factor") local real_off_dist = switch_dist*(1+switch_fact) т.е. если расстояние от него до актора более или равно real_off_dist, и уже получено разрешение на выход в оффлайн, т.е. se_stalker:can_switch_offline() вернуло true (в этой ситуации непись уже фактически начал переход, после второго срабатывания can_switch_offline он вывалится в офф). При этом сделан небольшой таймаут. Поэтому пущщай себе в онлайн/оффлайн гуляют на здоровье, в любом случае при выходе в оффлайн шмот они получат назад. Если будут балансировать на границе, то для них пока будут балансировать просто будет выключено укладывание оружия в ящик, т.е. всё их оружие просто будет при них. основанный на предсказании перехода Там не совсем предсказание, там скорее немного нагловатый перехват за один апдейт буквально до выхода. 1. Уже есть в родной схеме 2. Тоже 3. У нас в ОГСЕ они вообще из аллспавна заспавнены и имеют стори_ид, т.е. ящик известен всегда. Но для портируемой схемы не прокатит. 4. Лишний геморрой по моему. Проще и думается надёжнее будет если просто они не будут бросать оружие при уходе в офф, чего я и добивался. а) уже б) вот над этим думал, и пришел к выводу, что не надо так делать... дело в том, что когда главгерой вернётся к этому месту - неизвестно - в итоге приличный объем данных о стволах и владельцах будет лежать запомненным и занимать место. А ведь хозяин оружия может в оффлайне ещё и упилить куда-то бродить, тогда эта запись останется насовсем. в) трансфер между ящиками возможен только если оба в онлайне. Переброс самого ящика вариант реализуемый, но не слишком ли громоздко? Мне кажется просто тут слишком много костылей получается в твоём варианте. Глянь код, как я сейчас сделал, протести - решение очень простое и работает очень адекватно, я пока накладок не нашёл. Добавлено через 4 мин.: один флаг (temp_disable), время жизни которого до 0.5 сек на несколько неписей Да пущщай уходят, пока работает флаг, неписи просто не могут выложить оружие в ящик - т.е. тут нет основы для нестабильности. Если ушло несколько сразу, этот период может затянуться на секунды две, три максимум (потому что в офф они как правило выходят сразу почти), но не вижу тут вроде бы ничего криминального Поэтому и флаг один на всех сделал Изменено 19 Апреля 2011 пользователем kamikazze Отладчик и скриптер мода OGSE. Автор схемы "Компаньоны", стреляющего БТРа и многих других полезностей Ссылка на комментарий
Artos 99 Опубликовано 19 Апреля 2011 Поделиться Опубликовано 19 Апреля 2011 (изменено) kamikazze Код сразу и глянул и проанализировал (благо 'полтора десятка' строк в сумме). И даже встроил в свой вариант модифициованного менеджера для 'пощупать/проверить' (пока еще не смотрел). Сам алгоритм доработки и его работа мне ясны, но ... поэтому и пишу. 1. Усложнение адаптации не в том, что сложен алгоритм, а только в том, что неопытным придется самим еще одну ветку 'от АМК' заворачивать на 'can_be_offline'. Несложно (нам), но ... ;-) Ну да ладно, на всех не угодишь ... на то и свои мозги нужны. 2. Собственно сама функция 'to_offline(npc)' нуждается и в оптимизации. Вызовы из 'se_stalker:can_switch_offline()' не так уж и редки и две правки уже стОит внести: а) Заменить параметр вызова 'self' на 'self.id', т.к. все равно только id и требуется. б) Организовать таймер, зависимый от дистанции. По достижении дальней дистанции пауза минимальна, а ближе (~80м) пусть хоть секуды 'тикает', отсекая излишние вычисления. Т.о. разгрузится немного проц. По п.4 "переход непися на другую локацию". Оно то правильно, и гиморно и нечего раскидывать и не забирать, но ... 'забирание по дистанции' далеко не всегда прокатит. При сэйвах часто неписи с оружием поблизости и не запрещенный трансфер из ящика также может вызывать ошибки по парентам при трансфере (серверный объект с проверкой на онлайн порой запаздывает относительно клиентского). (В своей сборке я сделал весь трансфер по сэйву актора, пока все неписи и ящик заведомо в он-лайне). По чистке устаревших записей: При старте игры/сэйва так и так считывать данные, вот и актуализировать их. При правильной организации это совершенно не проблема и 'грязи' не остается. По п.в) "трансфер ящика между локациями". Хм, спавнить ящики в all.spawn'е, да на каждую локацию, да их на каждой искать/инициализировать, ... Спавним один раз (любой нам потребный!) и запоминаем - далее перебрасываем за ГГ при его переходах (благо не часто). Т.к. менеджер оружия работает ТОЛЬКО там где ГГ - то и ящик не проблема иметь 'при себе'. Ну да это дело вкуса. :-) Прим: Сам ящик может быть и стораджем массива парентов и еще чего ..., не загружая ни актора ни самих неписей и будучи при акторе (считай доп.сторадж). По флагу: понятно, согласен что в данном алгоритме не самое насущное. Бум смотреть и проверять ... ;-) Изменено 19 Апреля 2011 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
kamikazze 266 Опубликовано 19 Апреля 2011 Поделиться Опубликовано 19 Апреля 2011 Artos 2. а) ага, пожалуй б) думал уже, получается чрезмерно громоздко - это ж блин каждому неписю сделать надо и хранить свой таймер обновления, и вполне будет вероятна ситуация когда непись выскочит в оффлайн между срабатываниями - если же сделать интервал таймера очень короткий, то оно не будет иметь смысла - я уже пробовал такие вещи, взводить таймерную проверку как правило бессмысленно на величины менее 100-150 мсек - фактически срабатывают на каждом апдейте... При сэйвах часто неписи с оружием поблизости и не запрещенный трансфер из ящика также может вызывать ошибки по парентам при трансфере (серверный объект с проверкой на онлайн порой запаздывает относительно клиентского). (В своей сборке я сделал весь трансфер по сэйву актора, пока все неписи и ящик заведомо в он-лайне). Вот это кстати не пойму зачем... В родном паке это есть, вроде даже сразу было - там просто сделано у Бака - при сейве актора все вещи из ящика раздаются владельцам, и только затем игра сохраняется. Проверял, работает как надо, вещи при - сейв/лоадах и переходах между локациями не теряются. Пропадания были только когда ГГ убегал от непися на расстояние алайфа. Кстати, там же прямо в функции трансфера есть принудительное выпихивание ящика в онлайн, т.е. проверка на это вообще не требуется. При правильной организации это совершенно не проблема и 'грязи' не остается. Ну да, только стоит ли городить огород... Хм, спавнить ящики в all.spawn'е, да на каждую локацию, да их на каждой искать/инициализировать, ... Вот как раз чтобы не искать и не инициализировать это и сделано Ящиков всего по одному на локацию, добаляются элементарно, у каждого есть свой story_id, и в заголовке скрипта табличка вида локация=стори_ид_ящика. В родной схеме ящик ищется перебором всех ид, у нас же сейчас просто вот так: local lname = level.name() local id = id_by_sid(wmgr_boxes[lname]) local obj = sim:object(id) if obj and obj:section_name() == "wmgr_box" then -- printf("manage_box:%s",id) box = obj boxid = id end И все дела. Работает не в пример быстрее, так как перебор просто не нужен. Плюс всегда когда надо можно к ящику обратиться сразу, опять же используя story_id Сам ящик может быть и стораджем массива парентов и еще чего ..., не загружая ни актора ни самих неписей и будучи при акторе (считай доп.сторадж). Да, вот только блин меня так и не вдохновляет идея хранить какие-то данные, если можно этого не делать а ещё я опасаюсь что ящик при телепортации может проявиться на поверхности земли (запросто кстати) - после телепорта игра его может попробовать разместить на ближайшем доступном вертексе. Отладчик и скриптер мода OGSE. Автор схемы "Компаньоны", стреляющего БТРа и многих других полезностей Ссылка на комментарий
Artos 99 Опубликовано 19 Апреля 2011 Поделиться Опубликовано 19 Апреля 2011 (изменено) kamikazze По таймеру: ты не понял меня, вероятно невнятно пояснил. Если NPC рядом с ГГ, то нет смысла проверять его уход в оффлайн, хотя вызов из 'se_stalker' следует (проверка из поведенческих схем и пр.). При уходе на дистанцию близкую к переключению - вполне можно и убирать (почти) таймаут. Сделав типа: tm_pause = time_global() + math.max( 50, (real_off_dist - dist)*100 ) - можно на ближних дистанциях неписей отсекать проверки секундными паузами. По удалению - таймер перестраивается на сотни/десятки милисекунд. Но мы пошли уже в часности и субъективизмы, отойдя от основной сути. :-) Но все же еще немного позащищаю вариант 'одного ящика': Фейк-ящик создается при спавне ГГ в самом начале игры. Это не инвентарный ящик, а любой иной вариант хоть с невидимой текстурой. Спавнится где угодно, лишь бы с сеткой не глючил. Его id при спавне один раз запоминается и остается только считать его и найти в онлайне (у себя я просто сделал ему биндер и он сам находит себя, заодно и разрешая работу менеджеру оружия). За все время подобного варианта ящик никогда не конфликтовал с графами/вертексами. При телепортации его хоть по Y за облака можно заспавниь, хоть под уровень ... Т.о. не требуется ни резервироваь стори_ид, ни иметь табличку, ни итерировать по ней, сравнивая с текущей локацией, ни прочего, что завязано на кодах конктретного мода. Все динамически и просто, только одна переменная для хранения его игрового идентификатра (можно и без нее обойтись, если сделать уникальной секцию) и простенький биндер фейк-ящика (для ускорения). А при потере (специальной) можно и новый в любое время заделать. Вот к хранению данных в ящике я бы более серьезно отнесся. а) У неписей могут быть и квестовые предметы-оружие. В модах с собирательством эти предметы могут кочевать. Неписи гибнуть (при смерти в аномалии от разрыва ни какой код не вернет оружие). Т.о. зависание оружия в ящиках очень даже непризрачно. Проверка наличия владельца предмета из ящика на присутствие в игре позволит возвращать предметы в игру. б) К сожалению, необхлдимость хранить данные все более возрастает с усложнениями схем/модулей и появлением все новых. Иметь доступное хранилище 'на всякий случай' все проще, чем изворачиваться потом. в) (это уже 'в сторону'). Подобный фейк-ящик можно использовать не только для менеджера оружия. Например в сборке, я заменил постоянный спавн/удаление поясного сепаратоа на трансфер между ГГ и ящиком. Один Ящик, один сепаратор и трансфер. Движок не занят лишними серверными функциями. P.S. В оновном я разбирал исходную схему Bak'а довольно старой версии. Обновленные версии тоже смотрел, но целостной картины не складывал, поэтому возможно повторяю то, что было сделано при модернизации схемы и позже аналогичное в новых версиях исходного мода. В общем прикрутил и твой кусочек - проверим и твой вариант. :-) Изменено 19 Апреля 2011 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
kamikazze 266 Опубликовано 19 Апреля 2011 Поделиться Опубликовано 19 Апреля 2011 Сделав типа: tm_pause = time_global() + math.max( 50, (real_off_dist - dist)*100 ) - можно на ближних дистанциях неписей отсекать проверки секундными паузами. По удалению - таймер перестраивается на сотни/десятки милисекунд. Дельно, надо будет сделать. Неписи гибнуть (при смерти в аномалии от разрыва ни какой код не вернет оружие). Ну при этой ситуации оружие в любом случае погибнет вместе с владельцем, тут без вариантов, увы Иметь доступное хранилище 'на всякий случай' все проще, чем изворачиваться потом. Внутри большого мода да, у нас есть сейчас шикарное хранилище на 6,5 Кб - хоть упихайся, плюс работающее чисто на движковом функционале, и не пользующее ни кастомдату, ни пстор актора. Делается совсем несложно, но вот чистый мини-мод таким функционалом мне нагружать ой как не хочется, потому что портируемость схемы упадет - мало ли что там наверчено куда это прикручивать будут. Я вообще не любитель сохранять куда-то какие-то данные (и это говорит человек, запихавший в объект машины кодированную структуру багажника, бггг), стараюсь по возможности делать всё почти аппаратно-жестко, чтобы не зависело от целостности структуры где данные хранятся. Отладчик и скриптер мода OGSE. Автор схемы "Компаньоны", стреляющего БТРа и многих других полезностей Ссылка на комментарий
Artos 99 Опубликовано 19 Апреля 2011 Поделиться Опубликовано 19 Апреля 2011 (изменено) kamikazze: Ну при этой ситуации оружие в любом случае погибнет вместе с владельцем, тут без вариантов, увы Ну ... я бы не согласился, хотя ... ты прав ... в основном и привычном всем нам. ;-) Скажу крамолу: А если оружие НЕ у владельца?! Если у непися имеется квестовое оружие то: или он его держит в руках или - в рюкзаке (в оригинале игры). При работающем менеджере оружия - оружия в рюкзаке не должно быть(!). Как помним, при попадании в аномалии неписи хотя и гибнут/разрываются/исчезают - оружие(!) остается в игре, хотя и покоцанное и порой парит в облаках. Т.о. или в аномалии (динамические исчезают!) или в фейк-ящике оружие остается в игре и уже задействованные квесты (а они не стори_ид контролируют а игровые идентификаторы!) НЕ будут провалены и есть возможность 'трансфером' из ящика восстановить квест для 'сдачи'. Вот этот момент меня тоже сильно интересует, как и то, что преследует твоя правка менеджера. Жаль пока они в разных фазах, т.к. твой вариант подразумевает возврат из ящика в подобных ситуациях, а сохранение квестов наоборот - по возможности держать оружие 'или в руках или в ящике'. На этом пока наверное закончим, дабы и дела не стояли на месте. :-) Изменено 19 Апреля 2011 пользователем Artos "Но иногда найдется вдруг чудак, этот чудак все сделает не так ..."© Машина времени Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 5 Мая 2011 Поделиться Опубликовано 5 Мая 2011 Господа, вы таки будете смеяться, но я последние пять месяцев угробил на то, чтобы полностью перелопатить менеджер оружия. В частности, вообще оторвав нафиг все эти ящики. (Смена аддонов пока отключена по причине тормозности и общей страшности.) Проблема осталась. При внимательном изучении она разделилась на 2: 1. Кто-то, и я так и не нашел кто, удаляет из тушек неписей, например, патроны. Кто - я так найти и не смог. Раньше это конфиликтовало с десменеджером, но он тоже полностю переписан, и удаления патронов в нем больше нет - по тому что этот кто-то как раз пытался удалить патроны, УЖЕ удаленные десменеджером. 2. Оффлайн-алайф. Пачка, буквально пачка мест, где удаляется шмот, либо несуществующий, либо принадлежащий другому неписю, либо находящийся в онлайне. Находится в стадии перелопачивания, но на текущий момент проблема вроде-бы решена. Вот такие дела применительно к солянке. Не знаю, как в других местах. Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
shepard1a 0 Опубликовано 3 Июня 2011 Поделиться Опубликовано 3 Июня 2011 А реально ли сделать так, чтобы НПС, когда его ранят, начинал хромать(анимация хромания была продемонстрирована в старом ролике, где мутаны атакуют армю склады), а хромать переставал, когда себя заштопает? Если ты желаешь возвестить людям какую-либо важную истину, облеки оную в одежду общего мнения. Пифагор Самосский. Ссылка на комментарий
Sky_Line 11 Опубликовано 5 Июля 2012 Поделиться Опубликовано 5 Июля 2012 Всем привет. Адаптировал под свой мод AI additions самую последнию. Все отлично все схемы работают, но есть одно НО. Где то на Аграпроме все НПС начали стрелять чисто из пистолетов имея в рюкзаках и пистолеты-пулеметы и автоматы. Когда убиваешь и обыскиваешь труп оказываеться что в его рюкзаке нет патронов к автомату или пистолету-пулемету, а к пистолету патроны есть. Как исправить это подскажите пожалуйста, а то не интересно всех с автомата растреливать единолично в то время когда в тебя только с ПМ все палят Ссылка на комментарий
Marafon6540 765 Опубликовано 5 Июля 2012 Поделиться Опубликовано 5 Июля 2012 (изменено) Sky_Line, то, что при обыске у НПС нет каких-либо патронов, на мой взгляд совсем не значит, что это имеет отношение к АИ-логике. То, что выпадает после смерти НПС прописывается в дид-менеджерах (можно им здесь хоть атомную бомбу прописать - она и будет в трупах), а вот то что есть у НПС - в профилях этих самых НПС. Посмотри, может ты им просто при спавне не выдал патроны к автоматам\пулеметам? Хотя, может быть, я и не прав: Непись способен определить лучшее оружие; в зависимости от противника, расстояния до него, количества патронов в магазине выбирает более подходящее оружие. Например, издалека будет стрелять со снайперской винтовки, вблизи переключится на автомат или пистолет, если есть, Изменено 5 Июля 2012 пользователем Marafon6540 Трилогия Апокалипсис. Упавшая звезда. Честь наемника. v. 1.2 УЗЧН v.1.3 + ОГСРх64 Последний сталкер v. 1.2 ПС v. 1.3 + ОГСРх64 Ссылка на комментарий
alex5773 1 330 Опубликовано 6 Июля 2012 Поделиться Опубликовано 6 Июля 2012 (изменено) Sky_Line, Если нет патронов у нпс при их обыске, то добавь их выпадение в death_generic, death_items_by_communities, death_items_by_levels, death_items_count. А то что они не стреляют(на дальних дистанциях с автоматов), может быть в профилях нпс не те патроны стоят. Хотя может быть и причина в другом, подобное я видел в каком-то моде(там даже с ак-74 не стреляли, и не было у них патронов к нему, ни у кого), всё проверил абсолютно, нормально, а они всё равно именно на агропроме стреляли только с пистолетов. Это явно наверно с ал спавном проблема, а может и нет. Так как я смотрел и в character_desc_agroprom, character_desc_simulation, там всё нормально тоже было. Это было не помню в каком моде, но помню там было добавлено много локаций. Изменено 6 Июля 2012 пользователем alex5773 Ссылка на комментарий
Sky_Line 11 Опубликовано 6 Июля 2012 Поделиться Опубликовано 6 Июля 2012 Sky_Line, Если нет патронов у нпс при их обыске, то добавь их выпадение в death_generic, death_items_by_communities, death_items_by_levels, death_items_count. А то что они не стреляют(на дальних дистанциях с автоматов), может быть в профилях нпс не те патроны стоят. Хотя может быть и причина в другом, подобное я видел в каком-то моде(там даже с ак-74 не стреляли, и не было у них патронов к нему, ни у кого), всё проверил абсолютно, нормально, а они всё равно именно на агропроме стреляли только с пистолетов. Это явно наверно с ал спавном проблема, а может и нет. Так как я смотрел и в character_desc_agroprom, character_desc_simulation, там всё нормально тоже было. Это было не помню в каком моде, но помню там было добавлено много локаций. Да нет же загвостка не в этом. Нет патронов у убитого да и фиг бы с ним. Проблема в другом что НПС вместо автомата либо пистолета-пулемета используют только пистолет не важно на каком растоянии враг. Функцию выбора оружия её клинит просто на просто. Как только перестрелка закончилась и все успокоились НПС вытаскивают автоматы и ходят с ними. Стоит только начать бой тут же автомат сменяется на пистолет Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти