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

AI additions


Bak

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

7 часов назад, Anonymouse сказал:

Можете запилить адаптацию AI Additions 2.0 под OGSM? 

Winmerge, блокнот и вперёд, запиливай.

  • Не нравится 2
  • Согласен 3
  • Сомнительно 1
Ссылка на комментарий

Тоже спрошу, под FreePlay start 1.2.1 никто не запиливал?
Я запилил, вылетов вроде нет, но мне кажется что всё равно запилил криво (в скриптах не силён)...

  • Спасибо 1

h-264.jpg

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

@CuJIbBEP да там по моему только модуль на собирательство надо выпилить так как в ai_add он уже есть, при чем в последнем даже лучше. А в остальном аи пак должен нормально стать. Хотя я не особо вникал, надо будет попробовать.

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

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

UriZzz.gif

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

@UriZzz там достаточно много пересекающихся скриптов, на FS его просто так не накатить.
Так-то Aa работает, НПС кидают гранаты, обыскивают трупы, подбирают всякое, лечатся и своих лечат. Но заметил что аддоны на пушки не ставят. Одному новичку дал оранжевый научный комбез, переодеваться в него он не стал...
Так же циклично повторяют анимации проверки трупа или просто стоят и дёргаются над ним. Сам я в скриптах ни в зуб ногой, скорее всего криво адаптировал, или какие-то схемы пересекаются. Может кто из продвинутых в этом деле этим занимался...

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

h-264.jpg

Ссылка на комментарий
2 часа назад, CuJIbBEP сказал:

там достаточно много пересекающихся скриптов, на FS его просто так не накатить.

Ой... Ну да... Я имел в виду что при совмещении могут возникнуть проблемы с модулем обыскивания трупов, так как он есть и там и там. А в остальном ВинМердж поможет. На счет аддонов к оружию, блин, вот это не проверял.

 

2 часа назад, CuJIbBEP сказал:

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

Может тут работает та же схема что и ai pack для amk мода, там в роде бы нужно отойти на некоторое расстояние, я уж точно не помню.

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

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

UriZzz.gif

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

Ребята, кто шарит - помогите. Битый час пытаюсь приладить этот пак к чистому АМК 1.4.1, и на выхлопе безлоговый вылет. Может кто уже делал, или увидит где я там что поломал Pastebin.

 

  • Не нравится 1
Ссылка на комментарий

upd.

Худо-бедно прикрутил, полёт нормальный. Один неприятный косяк вылез - в баре осведомитель и бармен говорят фразы посетителей. Вроде как-бы к модулю rx_sound не относится, какие-то затыки в xr_kamp скорее, но шашки с эвалюаторами ничего не дали.

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

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

Код там такой:

Скрытый текст

function action_inhide:initialize()
  action_base.initialize(self)
  local npc=self.object
  npc:set_detail_path_type(move.line)
  npc:set_path_type(game_object.level_path)
  if self.st.hide==nil then self.st.hide={} end
  if self.st.hide.place==nil then self.st.hide.place={} end
  -- get_console():execute("load ~~~inhide init "..npc:character_name())
  -- get_console():execute("flush")
  -- Выбираем точку внутри укрытия
  local ang0=math.random(0,360)
  local r0=math.random(1,15)
  local v0=vector():set(1,0,0)
  self.lvid=npc:level_vertex_id()
  local stop=false
  for r=r0,0,-1 do
    for ang=ang0,ang0+360,30 do
      local v=utils.vector_rotate_y(v0,ang)
      local lvid=level.vertex_in_direction(self.st.hide.center,v,r)
      if npc:accessible(lvid) and (not self.st.hide.place[lvid]) and
         amk_mod.check_npc_in_hideout(level.vertex_position(lvid),self.st.hide) and
         level.vertex_position(lvid):distance_to(level.vertex_position(self.st.hide.center))>r/1.5 then
        self.lvid=lvid
        stop=true
        break
      end
      if stop then break end
    end
  end
  state_mgr.set_state(npc,"raid")
  self.begin=time_global()
  self.kicktime=time_global()+5000
  utils.send_to_nearest_accessible_vertex(npc,self.lvid)
  self.tgtvec=control_entrance_vec(self.lvid,self.st.hide)
  self.st.hide.place[self.lvid]=true
 end

function action_inhide:execute()
  action_base.execute(self)
  local npc=self.object
  -- get_console():execute("load ~~~inhide exec "..npc:character_name())
  -- get_console():execute("flush")
  if npc:level_vertex_id()==self.lvid and self.begin and self.begin<time_global() then
    self.begin=nil
    state_mgr.set_state(npc,"hide_na",nil,nil,{look_position=self.tgtvec})
  elseif npc:level_vertex_id()~=self.lvid then
    if self.kicktime<time_global() then
      if not self.begin then
        state_mgr.set_state(npc,"raid")
      end
      self.kicktime=time_global()+5000
      utils.send_to_nearest_accessible_vertex(npc,self.lvid)
      self.begin=0
    end
  end
end

function action_inhide:finalize()
  action_base.finalize(self)
  local npc=self.object
  if self.st.hide and self.st.hide.place then
    self.st.hide.place[self.lvid]=nil
  end
  -- get_console():execute("load ~~~inhide fin "..npc:character_name())
  -- get_console():execute("flush")
end

function control_entrance_vec(vtx,hide)
  local delt=level.vertex_position(vtx):sub(level.vertex_position(hide.center))
  local tgtvtx=vector():set(0,0,0)
  local maxdist=-10000
  for i,v in ipairs(hide.entrances) do
    local delt1=level.vertex_position(v):sub(level.vertex_position(hide.center))
    local dist=delt1:dotproduct(delt)
    if dist>maxdist then
      maxdist=dist
      tgtvtx=level.vertex_position(v)
    end
  end
  return tgtvtx
end

 

 

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

@Metal293 Единственное что могу посоветовать - делать бэкапы оригинала и поэтапно вмонтировать.

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

Лучше сделать мод с 0, чем пытаться залатать багованный.

DarkSnowder.gif

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

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

@I am Dead 

Тот же косяк в твоей адаптации. А ещё ты там конфликтующую схему watcher_act оставил подключенной в modules.

 

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

День добрый! Нахлынуло у меня желания поиграть в Зов Припяти. Но в голый не хочу. Охота поставить AtmosFear3, Absolute Natures 4, оружейку STCOP 2.09 и, собственно, AI Additions 2.06. И вот тут у меня просьба: если в природе существует адаптация AI Additions к STCOPу, ткните меня в нее носом, если не сложно. Потому как я не уверен, что у меня получится грамотно совместить, а хочется все же поиграть без вылетов.

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

@I am Dead 

На свалке в ангаре такое наблюдал, когда рядом с неписями в укрытии был противник, они начинали приседать и вскакивать, пряча за спину и доставая оружие при этом, с периодичностью в полсекунды, и так до самого конца выброса. Очевидно там надо переписывать переход на анимацию под новый state_mgr с новой функцией lock. Код я выше давал, у самого у меня не получилось ничего там выдумать.

@Han Sola 

А толку там что-то отдельно вмонтировать, если конфликт в state_mgr, который адаптации не поддаётся в принципе.

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

Всем привет. Возникла небольшая проблема со сквадами неписей, после установки AI Additions 2.06 COP - если командир сквада уходит слишком далеко от отряда, остальные начинают либо кружить на месте, либо просто стоят на месте пока их не тронет мутант/вражеский непись.

Файлы AI Additions я не изменял, изменён только alife.ltx

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

Скажите пожалуйста за Собирательство (xr_corpse_detection) какие другие модули скриптов отвечают?
В скриптах не силён пытаюсь хоть как-то разобраться в них:blush:

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

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

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

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

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

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

Войти

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

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

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