Jump to content
Korean Random

[Лог нанесенного урона / Hitlog] V2 (py_macro)


Recommended Posts

Обновил xvm и почти все заработало от тока понять не могу почему параметеры {{vtype}} и {{c:vtype}}  не работают.

Было так e67d6a1d5e03.jpg

 

Стало вот так187acf7d96f4.jpg

Link to comment
Short link
Share on other sites

В 04.03.2019 в 19:20, ktulho сказал:

Добавил макрос:


{{dmg-deviation}} - отклонение нанесенного урона от номинального урона снаряда в процентах. Возвращает 0.0, если техника была уничтожена выстрелом, или выстрел был фугасом и отклонение составило больше 25%.

 

 

У фугасов коэф. по полторы сотни приходит

полагаю, что:

 

                    self.data['damageDeviation'] = (_shells['shellDamage'] - self.data['damage']) / float(self.data['damage'])
                    if (_shells['shellKind'] in ['high_explosive', 'armor_piercing_he']) and (self.data['damageDeviation'] < -0.25):
                        self.data['damageDeviation'] = 0.0

"< -0.25" нужно поменять на "> 0.25"

Link to comment
Short link
Share on other sites

Есть фугас  с уроном 630, есть урон 290
(630-290)/290=1.17

if 1.17 > 0.25:

 damageDeviation = 0.0

 

if 1.17 < -0.25:

  damageDeviation = 1.17 а потом ещё и *100

 

Upd. и вообще... делить нужно не на нанесенный урон а на базовый

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

Edited by BuSH
  • Upvote 1
Link to comment
Short link
Share on other sites

Смысл отклонения для фугаса - при непробитии урон от 1 до 50% альфы плюс  25% от 50% альфы минус толщина брони с кэффициентом и расстояние.

 

т.е.

 

 Если фугас пробил, то  урон от 75% до 125% альфы, если не пробил, то даже 75% от альфы гарантированно не наберётся.

И если не набирается 75% от альфы, то макросу нет нужды пытаться высчитать недобор и перебор.

 

 

в <-0.25 Получается что-то вроде "альфа меньше 75% нанесенного урона", что не имеет смысла.

 

Edited by aster
Link to comment
Short link
Share on other sites

16 минут назад, BuSH сказал:

Есть фугас  с уроном 630, есть урон 290
(630-290)/290=1.17

Ага, перепутал, наоборот надо.

Исправил. Обновил в шапке скрипт hitLog.py.

  • Upvote 1
Link to comment
Short link
Share on other sites

36 минут назад, BuSH сказал:

Upd. и вообще... делить нужно не на нанесенный урон а на базовый

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

 

                    self.data['damageDeviation'] = (_shells['shellDamage'] - self.data['damage']) / _shells['shellDamage'] * -100
                    if (_shells['shellKind'] in ['high_explosive', 'armor_piercing_he']) and (self.data['damageDeviation'] < -25):
                        self.data['damageDeviation'] = 0.0

а отам в макросе убрать *100

так и процент отклонения верный и фугасы с нулями

Link to comment
Short link
Share on other sites

12 минут назад, BuSH сказал:

а отам в макросе убрать *100

так и процент отклонения верный и фугасы с нулями

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

Edited by ktulho
Link to comment
Short link
Share on other sites

аааа... ты всё-таки поменял расчёт отклонения. тогда всё ок

Я правильно понимаю, что в хитлоге все остальные XVMные макросы будут статичны?

Edited by BuSH
Link to comment
Short link
Share on other sites

В 10.03.2019 в 20:30, BuSH сказал:

Я правильно понимаю, что в хитлоге все остальные XVMные макросы будут статичны?

Только увидел это сообщение. Так как hitLog сделан через battleLabels, то все не глобальные макросы будут возвращать значения для твоей техники.

 

Поправил скрипт hitLog.py для режима "Линия фронта".

Link to comment
Short link
Share on other sites

В 06.03.2019 в 11:58, ktulho сказал:

Просто буду подставлять {{l10n:pillboxes}}+номер.

 

Есть небольшое предложение, брать наименование из l10n файла по шаблону:

"pillbox": "Огневая точка{0}",
"pillbox": "Pillboxes{0}",

Где {0} - отдает номер точки (номер и пробел перед ним),

конструкция по аналогии с номером захватываемой базы из "captureBar".

 

В 05.03.2019 в 19:53, ktulho сказал:

Планирую добавить урон по "Огневым точкам"

 

Как то не так считается {{dmg-player}} для точек.

Отсчет ведется от максимального запаса прочности (3200), в меньшую сторону, минус приписывается к значению.

 

Так же недочет по параметру:

"groupHitsByPlayer": true,

В обоих логах (слева - дефолт, справа - py_macro-ий), группировка активна.

В дефолтном группируется, скриптовом - нет.

 

23cacc7d2c2e.png

Edited by night_dragon_on
  • Upvote 1
Link to comment
Short link
Share on other sites

10 минут назад, night_dragon_on сказал:

Не смотрел, реплей нужен с нанесением урона четырем точкам?

Можно и с одной. Меня больше интересует удвоение строчек, тех кого уничтожил.

Link to comment
Short link
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...