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

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


Halford

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

По идее ничто не мешает навесить на ГГ такой же коллбек, как и на обычного сталкера. Добавить в bind_stalker.script в функцию actor_binder:reinit() строчку типа:

self.object:set_callback(callback.hit, self.hit_callback, self)

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

Тото и оно уважаемый, если бы не пробовал сам вешать коллбеки - не говорил ба, неловиться сволочь, а мне позарез нуно было момент хита ГГ, шоб не грузить апдейтер проверкой хэлса, но.... :unsure:

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение
Правда это только факт выстрела. Вызывается в любом случае, даже если попадания не было.

Это я и сам могу, мну же был нужон конкретно момент получения хита ГГ (делал говорящий HEV костюм как у Гордона Фримена), пришлось в тупую навешивать условия на метод апдейта actor_binder, если знаешь способ узнать, что нанесен хит не юзая апдейтер, подскажи, буду благодарен

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение

:lol3: судя по логу, непись пытялся обшмонать ГГ

~ ERROR: can't detach independant object. entity[ammo_9x18_fmj28161:28161], parent[single_player:0], section[ammo_9x18_fmj]

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

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение
Gonarh, а ты разобрался с методом berserk() ?

пока некогда займусь после выходных

знач так, покрутив повертев сей метод, пришол к выводу что это умершее наследие обливион лоста: спавнил свинью, зомбака и излома в 60 метрах от себя и каждые 5 игровых минут дергал их этим методом, наблюдая за тварями из бинокля, не заметил хоть какого либо изменения в поведении :russian_ru:

ЗЫ. Монстры были всегда в алайфе, не давал им убежать далее 100 метров - гнался за ними :grin2: , пробовал подойти поближе - обычная атака ничего больше...

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение
и каждые 5 игровых минут дергал их этим методом
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение
нетпакет - это класс движка игры, экспортированный в Lua. Каждый объект этого класса содержит буфер. Любой серверный объект можно записать в этот буфер и считать из него. Кроме того, в этом классе есть функции для последовательного разбора этого буфера

 

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

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение

тайник ненаю, а вот как проверить непися и монстра нашол способ:

сцуть в чом, а в том шо попробовал навесить в биндере монстров коллбэк на юзание

и все заработало:

function generic_object_binder:reinit()
    object_binder.reinit(self)
    if self.object:clsid() ~= clsid.script_trader then
        self.object:set_patrol_extrapolate_callback(generic_object_binder.extrapolate_callback, self)
    end

    db.storage[self.object:id()] = { }

    self.st = db.storage[self.object:id()]

    self.object:set_callback(callback.patrol_path_in_point, self.waypoint_callback, self)
    self.object:set_callback(callback.hit, self.hit_callback, self)
    self.object:set_callback(callback.death, self.death_callback, self)
        --ниже наш добавленный колбек 
    self.object:set_callback(callback.use_object, self.use_callback, self)
end

function generic_object_binder:use_callback(obj, who)
  --obj - это непись или монстр которого обыскиваем;)
end


function generic_object_binder:net_destroy()
    self.object:set_callback(callback.death, nil)
    self.object:set_callback(callback.patrol_path_in_point, nil)
    self.object:set_callback(callback.hit, nil)
        --не забываем убрать колбэк при переходе в оффлайн
    self.object:set_callback(callback.use_object, nil)

    local st = db.storage[self.object:id()]
    if st and st.active_scheme then
        xr_logic.issue_event(self.object, st[st.active_scheme], "net_destroy")
    end
    
    db.del_obj(self.object)
    db.storage[self.object:id()] = nil
    object_binder.net_destroy(self)
end

 

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение
Надо чтобы просто стоял на месте,но без дэнжер игнора...

[smart_terrains]
none = true

[no_smart] 

[logic]
active = remark

[remark]
anim = wait

но... как тока появица данжер - непись сорвется с места B)

118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение

[smart_terrains]

none = true

 

[no_smart]

вот изза этой хрени в гулаг как раз таки и не засосет :rolleyes:

 

А когда дэнжэр кончится он вернется?

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

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение

а ты сам попробуй и проверь :grin2: заодно и нам расскажешь

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

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение

влом выдергивать отдельные скрипты, вот те от оригинала полностью папка со скриптами

сорри амк под рукой нету

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение

нет, так как полюбасу аллспавн надо будет менять, нуно начинать гаму по-новому (в свой мод добавил пять карт от Кости, полностью аллспавн пришлось перековыривать)

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение

а не знаю, не пробовал - попробуй сам, о результатах отпишися :rolleyes:

118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение
больше 10 - время быстрее, меньше 10 - медленнее.

чо за чушь??? :wacko2:

значение > 1 время ускоряется, потому параметр и называется тайм_фактор, то бишь коэффициент умножения. поставиш 2 - в два раза быстрее течь будет, 3 - в три раза, и т.д.

ЗЫ. Не знаешь сам - не давай ложную информацию :russian_ru:

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение

привет, сталкерам!

Мужики нужен файлег gamedata\config\models\capture\rat_captures.ltx, ктонить скинтье плиз - с меня пилус :blush:

 

у меня такого в оригинальной игре нет

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

пасиб :rolleyes:

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение

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

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение
Gonarh, ты тоже не совсем прав - все таки анимация заставляет НПС стрелять.Только я еще не разобрался почему они тупят

Вполне возможно, на скоко я понимаю анимация - это всего лишь набор положений тел модели без логики, все это конечно глубоко личное имхо ;)

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение

есть левел вертекс допустим lvid

получить его позицию просто:

level.vertex_position(lvid)

а кто знает как из левел вертекса получить гейм вертекс, это вообще реально? :unsure:

название локации для этого левел вертекса если что известно

118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение

да в скрипте bind_stalker.script вызывается процедура function actor_binder:save(packet)

118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение

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

FATAL ERROR

 

[error]Expression : fatal error

[error]Function : CIni_IdToIndex<1,struct COMMUNITY_DATA,class shared_str,int,class CHARACTER_COMMUNITY>::GetByIndex

[error]File : e:\stalker\patch_1_0004\xr_3da\xrgame\ini_id_loader.h

[error]Line : 147

[error]Description : <no expression>

[error]Arguments : item by index not found in section game_relations, line communities

знаю что этот вылет должен быть изза кривых группировок, однако я посоветовался с Kolmogor'ом

он посмотрел мой файлег game_relations.ltx и сказал шо там все правильно, сканил всех неписей на предмет неверной группировки - все ровно, и вылет кстате происходит не при загрузке гамы а рандомно то есть, бегыешь, прыгаешь может не быть и пол часа а может и через пять минут уже голову сломал, в чем дело :dash2:

Изменено пользователем Gonarh
118 101 110 105 44 32 118 105 100 105 44 32 118 105 99 105

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

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