Jump to content
Korean Random
ktulho

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

Recommended Posts

вот я перестреливаюсь с врагом, стрельнули, спрятались, отсветились...

мне надо решить - выезжать и продолжить "дуэль" дальше или подождать (помощи союзников, у моря погоды, попутного ветра и т.п.), соответственно, для оценки ХП этого врага надо посмотреть:

Понятно. 

Edited by ktulho

Share this post


Link to post

Short link
Share on other sites

Привет ktulho.

Уже как второй патч пошел как я использую новый py_hitLog, протестирован - работает отлично.

Если вносить предложение по замене текущего hitLog-а на  py_hitLog то необходимо внести ряд дополнений.

 

Не буду дублировать все хотелки которые писал H_E_K_P_O_M_A_H_T_ тут, а перечислю основные:

1. Нужно поле с шапкой(использовать вместо шапки background не совсем верное решение - но оно работает).

2. Для шапки лога урона было бы неплохо сделать отключение как предложил H_E_K_P_O_M_A_H_T_ .

 

Спасибо тебе огромное за проделанную работу ktulho.

  • Upvote 2
  • Downvote 1

Share this post


Link to post

Short link
Share on other sites
Нужно поле с шапкой

Зачем ему шапка, я никак не понимаю, чего вы к этой шапке привязались? От нее наоборот избавиться надо, а вы цепляетесь. Шапку можно сварганить любую на основе Total Efficiency, дополнительно к самой ТЕ.

Edited by demon2597
  • Upvote 1
  • Downvote 1

Share this post


Link to post

Short link
Share on other sites

Это Дима на любителя.

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

А да вот пример лога в текущей реализации

post-14141-0-65730300-1504687422_thumb.jpg

 

/**
  * py_hitLog.xc
  * Macros used in py_hitLog:
  * Макросы используемые в py_hitLog:
   
    {{dmg}}                - TO DO / последний нанесенный урон.
    {{dmg-kind}}           - kind of the received damage (attack, fire, ramming, ...) / тип полученного урона (атака, пожар, таран, ...).
    {{c:dmg-kind}}         - color by damage kind / цвет по типу урона.
    {{type-shell}}         - shell kind / тип снаряда.
    {{c:type-shell}}       - color by shell kind / цвет по типу снаряда.
    {{vtype}}              - vehicle type / тип техники.
    {{c:vtype}}            - color by vehicle type / цвет по типу техники.
    {{team-dmg}}           - TO DO/ командная принадлежность цели (союзник, противник, урон по себе).
    {{c:team-dmg}}         - TO DO / цвет по командной принадлежности цели (союзник, противник, урон по себе).
    {{costShell}}          - shell currency (gold, credits) / валюта снаряда (золото, кредиты).
    {{c:costShell}}        - color by shell currency / цвет по валюте снаряда.
    {{vehicle}}            - attacker vehicle name / название техники цели.
    {{name}}               - TO DO / никнейм цели.
    {{comp-name}}          - vehicle part that was hit (turret, hull, chassis, gun) / часть техники, в которую было попадание (башня, корпус, ходовая, орудие).
    {{clan}}               - clan name with brackets (empty if no clan) / название клана в скобках (пусто, если игрок не в клане).
    {{level}}              - vehicle level / уровень техники.
    {{clannb}}             - clan name without brackets / название клана без скобок.
    {{clanicon}}           - macro with clan emblem image path value / макрос со значением пути эмблемы клана.
    {{squad-num}}          - number of squad (1,2,...), empty if not in squad / номер взвода (1,2,...), пусто - если игрок не во взводе.
    {{dmg-ratio}}          - TO DO / нанесенный урон в процентах.
    {{splash-hit}}         - text for damage with shell splinters (HE/HESH) / возвращает 'splash', если урон нанесен осколками снаряда (ОФ/ХФ).
    {{alive}}              - TO DO / возвращает 'al', если техника после атаки не разрушена, '' для разрушенной
    {{wn8}}, {{xwn8}}, {{wn6}}, {{xwn6}}, {{eff}}, {{xeff}}, {{wgr}}, {{xwgr}}, {{xte}}, {{r}}                      - statistics macros (see macros.txt) / макросы статистики (смотрите macros_ru.txt)
    {{c:wn8}}, {{c:xwn8}}, {{c:wn6}}, {{c:xwn6}}, {{c:eff}}, {{c:xeff}}, {{c:wgr}}, {{c:xwgr}}, {{c:xte}}, {{c:r}}  - statistics macros (see macros.txt) / макросы статистики (смотрите macros_ru.txt)
    {{diff-masses}}        - vehicles weights difference during collision / разность масс техники при столкновении
    {{nation}}             - vehicle nation / нация техники
    {{blownup}}            - TO DO / возвращает 'blownup', если взорван боекомплект цели, иначе ''
    {{type-shell-key}}     - shell kind table key value / название ключа таблицы типа снаряда
    {{n-player}}           - number of hits for each player / число повреждений по каждому игроку
    {{dmg-player}}         - sum of hits for each player / суммарный урон по цели
    {{dmg-ratio-player}}   - TO DO / суммарный урон по цели в процентах
    {{c:dmg-ratio-player}} - TO DO / цвет по суммарному урону по цели (задается в colors.xc)
*/

{
  "py_hitLog": {
    // false - Disable.
    // false - отключить.
    "enabled": true,
    //
    // true - отображать урон по себе 
    "showSelfDamage": true,
    //
    // true - отображать урон по союзникам 
    "showAllyDamage": true,
    //
    //
    "log": {
      //true - allow to move log in battle and disallow macros for "x" and "y" settings
      //false - disallow to move log in battle and allow macros for "x" and "y" settings
      //true - разрешить перемещение лога в бою и запретить макросы в настройках "x" и "y"
      //false - запретить перемещение лога в бою и разрешить макросы в настройках "x" и "y"
      "moveInBattle": false,
	  // "x": 10,
	  // "y": 455,
      // Group hits by players name.
      // Группировать попадания по имени игрока.
      "groupHitsByPlayer": true,
      // TO DO
      // количество строк
      "lines": 10,
      // Insert order: false - insert new values to begin, true - add to end.
      // Сортировка попаданий: false - новые значения добавляются сверху, true - снизу.
      "addToEnd": false,
      // TO DO
      // Тип нанесенного урона (макрос {{dmg-kind}}).
      "dmg-kind": {
        "shot":            "{{l10n:shot}}",            // shot / попадание
        "fire":            "{{l10n:fire}}",            // fire / пожар
        "ramming":         "{{l10n:ramming}}",         // ramming / таран
        "world_collision": "{{l10n:world_collision}}", // world collision / столкновение с объектами, падение
        "drowning":        "{{l10n:drowning}}",        // drowning / утопление
        "overturn":        "{{l10n:overturn}}"         // overturn / опрокидывание
      },
      // TO DO
      // Цвет по типу нанесенного урона (макрос {{c:dmg-kind}}).
      "c:dmg-kind": {
        "shot":            "#FFAA55",  // попадание
        "fire":            "#FF5745",  // пожар
        "ramming":         "#577A3D",  // таран
        "world_collision": "#805A37",  // столкновение с объектами, падение
        "drowning":        "#CCCCCC",  // drowning / утопление
        "overturn":        "#CCCCCC",  // overturn / опрокидывание
        "drowning":        "#265CFF"   // затопление
      },
      // Vehicle type (macro {{vtype}}).
      // Тип техники (макрос {{vtype}}).
      "vtype": {
        "mediumTank":  "<font face='xvm'>;</font>", // medium tank / средний танк
        "lightTank":   "<font face='xvm'>:</font>", // light tank / лёгкий танк
        "heavyTank":   "<font face='xvm'>?</font>", // heavy tank / тяжёлый танк
        "AT-SPG":      "<font face='xvm'>.</font>", // tank destroyer / ПТ-САУ
        "SPG":         "<font face='xvm'>-</font>", // SPG / САУ
        "not_vehicle": ""                                // another source of damage / другой источник урона
      },
      // Color by vehicle type (macro {{c:vtype}}).
      // Цвет по типу техники (макрос {{c:vtype}}).
      "c:vtype":{
        "mediumTank":  "#FFF198",  // medium tank / средний танк
        "lightTank":   "#A2FF9A",  // light tank / лёгкий танк
        "heavyTank":   "#FFACAC",  // heavy tank / тяжёлый танк
        "AT-SPG":      "#A0CFFF",  // tank destroyer / ПТ-САУ
        "SPG":         "#EFAEFF",  // SPG / САУ
        "not_vehicle": "#CCCCCC"   // another source of damage / другой источник урона
      },
      // Shell currency (macro {{costShell}}).
      // Валюта снаряда (макрос {{costShell}}).
      "costShell":{
        "gold-shell":   "", // gold / золото
        "silver-shell": "", // credits / кредиты
        "unknown":      ""  // unknown / неизвестно
      },
      // Color by shell currency (macro {{c:costShell}}).
      // Цвет по валюте снаряда (макрос {{c:costShell}}).
      "c:costShell":{
        "gold-shell":   "#FFCC66", // gold / золото
        "silver-shell": "#CCCCCC", // credits / кредиты
        "unknown":      ""         // unknown / неизвестно
      },
      // TO DO
      // Командная принадлежность цели (макрос {{team-dmg}}).
      "team-dmg":{
        "ally-dmg":  "", // ally / союзник
        "enemy-dmg": "", // enemy / противник
        "player":    "", // self damage / урон по себе
        "unknown":   ""  // unknown / неизвестно
      },
      // TO DO
      // Цвет по командной принадлежности цели (макрос {{c:team-dmg}}).
      "c:team-dmg":{
        "ally-dmg":  "#00EAFF", // ally / союзник
        "enemy-dmg": "#CCCCCC", // enemy / противник
        "player":    "#228855", // self damage / урон по себе
        "unknown":   "#CCCCCC"  // unknown / неизвестно
      },
      // Part of vehicle (macro {{comp-name}}).
      // Часть техники (макрос {{comp-name}}).
      "comp-name":{
        "turret":  "{{l10n:turret}}",  // turret / башня
        "hull":    "{{l10n:hull}}",    // body / корпус
        "chassis": "{{l10n:chassis}}", // suspension / ходовая
        "gun":     "{{l10n:gun}}",     // gun / орудие
        "unknown": ""                  // unknown / неизвестно
      },
      // Shell kind (macro {{type-shell}}).
      // Тип снаряда (макрос {{type-shell}}).
      "type-shell": {
        "armor_piercing":    "{{l10n:armor_piercing}}",    // armor piercing / бронебойный
        "high_explosive":    "{{l10n:high_explosive}}",    // high explosive / осколочно-фугасный
        "armor_piercing_cr": "{{l10n:armor_piercing_cr}}", // armor piercing composite rigid / бронебойный подкалиберный
        "armor_piercing_he": "{{l10n:armor_piercing_he}}", // armor piercing high explosive / бронебойно-фугасный
        "hollow_charge":     "{{l10n:hollow_charge}}",     // high explosive anti-tank / кумулятивный
        "not_shell":         ""                            // another source of damage / другой источник урона
      },
      // Color by shell kind (macro {{type-shell}}).
      // Цвет по типу снаряда (макрос {{type-shell}}).
      "c:type-shell": {
        "armor_piercing":    "#CCCCCC", // armor piercing / бронебойный
        "high_explosive":    "#CCCCCC", // high explosive / осколочно-фугасный
        "armor_piercing_cr": "#CCCCCC", // armor piercing composite rigid / бронебойный подкалиберный
        "armor_piercing_he": "#CCCCCC", // armor piercing high explosive / бронебойно-фугасный
        "hollow_charge":     "#CCCCCC", // high explosive anti-tank / кумулятивный
        "not_shell":         "#CCCCCC"  // another source of damage / другой источник урона
      },
      // List of hits format (macros allowed, see macros.txt).
      // Формат лога попаданий (допускаются макроподстановки, см. macros.txt)
      "formatHistory": "<textformat leading='-4' tabstops='[20,50,90,150]'><font size='13'>\u00D7{{n-player}}:</font><tab>{{dmg-player%4d}}<tab>| <font color='{{c:dmg-kind}}'>{{dmg}}</font><tab>| <font color='{{c:dmg-kind}}'>{{dmg-kind}}</font> | <font face='vtype' size='17' color='{{c:vtype}}'>{{vtype}}</font>  <font color='{{c:vtype}}'>{{vehicle}}</font>  <font face='xvm' size='17' color='#FF0000'>{{alive? |{{blownup?||w}}}}</font></textformat>"
    },
	/** [hitlog] тело по alt. */
    "altLog": {
      "$ref": { "path":"py_hitLog.log" },
      "formatHistory": "<textformat leading='-4' tabstops='[20,50,90,150]'><font size='13'>\u00D7{{n-player}}:</font><tab>{{dmg-player%4d}}<tab>| <font color='{{c:dmg-kind}}'>{{dmg}}</font><tab>| <font color='{{c:dmg-kind}}'>{{dmg-kind}}</font> | <font face='vtype' size='17' color='{{c:vtype}}'>{{vtype}}</font>  <font color='{{c:vtype}}'>{{vehicle}}</font>  <font face='xvm' size='17' color='#FF0000'>{{alive? |{{blownup?||w}}}}</font><tab>| {{name%.15s~..}}</textformat>"
    },
    /** [hitlog] шапка. */	
    "backgroundLog": {
      "$ref": { "path": "py_hitLog.log" }, "lines": 1,
	  "formatHistory": "<b><font face='Tahoma' size='13'>{{l10n:id-Damage}}</font><font face='MicraC' size='12' color='{{py:xvm.totalDamage>0?{{py:xvm.totalDamageColor}}|{{py:xvm.numberShotsDealt>0?{{py:xvm.totalDamageColor}}|0xFFFFFF}}}}'>{{py:xvm.totalDamage}}</font></b> ( {{py:xvm.numberShotsDealt>0?{{l10n:id-Shots}} <b>{{py:xvm.numberShotsDealt}}</b>}}{{py:xvm.numberHitsDealt=0?| <font color='#FFFFFF'>{{py:xvm.numberShotsDealt={{py:xvm.numberHitsDealt}}?=|>}}</font> <b>{{py:xvm.numberHitsDealt}}</b>}} ) </font>"
    },
	/** [hitlog] шапка по alt. */
    "altBackgroundLog": {
      "$ref": { "path": "py_hitLog.log" }, "lines": 1,
	  "formatHistory": "<b><font face='Tahoma' size='13'>{{l10n:id-Damage}}</font><font face='MicraC' size='12' color='{{py:xvm.totalDamage>0?{{py:xvm.totalDamageColor}}|{{py:xvm.numberShotsDealt>0?{{py:xvm.totalDamageColor}}|0xFFFFFF}}}}'>{{py:xvm.totalDamage}}</font></b> ( {{py:xvm.numberShotsDealt>0?{{l10n:id-Shots}} <b>{{py:xvm.numberShotsDealt}}</b>}}{{py:xvm.numberHitsDealt=0?| <font color='#FFFFFF'>{{py:xvm.numberShotsDealt={{py:xvm.numberHitsDealt}}?=|>}}</font> <b>{{py:xvm.numberHitsDealt}}</b>}} )</font>"
    }
  }
}
 
/**
 * HitLog_py.xc
 * Текстовые поля боевого интерфейса.
 */
{
 // Definitions.
 // Шаблоны.
 "def": {
	/** Тень текстовых полей. */
    "textFieldShadow": { "enabled": true, "color": "0x000000", "alpha": 100, "blur": 4, "strength": 1, "distance": 0, "angle": 0 },
	/** [hitlog] шапка. */
	"py_hitLog_Background": {
        "enabled": true,
        "updateEvent": "PY(ON_TOTAL_EFFICIENCY), PY(ON_HIT_LOG), ON_PANEL_MODE_CHANGED",
		"x": "{{pp.mode=0?5|{{py:sum({{pp.widthLeft}},105)}}}}",
		"y": "{{pp.mode=0?60|40}}",
		"width": 400,
		"height": 25,
		"layer": "bottom",
		"shadow": ${ "def.textFieldShadow" },
        "textFormat": { "font": "Tahoma", "size": 13, "color": "0xF4EFE8" },
        "format": "{{py:xvm.hitLog_Background}}"	
    },
	/** [hitlog] тело. */
    "py_hitLog": {
		"$ref": { "path":"def.py_hitLog_Background" },
        "enabled": true,
        "updateEvent": "PY(ON_HIT_LOG), ON_PANEL_MODE_CHANGED",
		"y": "{{pp.mode=0?77|57}}",		
		"width": 400,
		"height": 300,
        "format": "{{py:xvm.hitLog}}"
    }
  }
} 

Edited by Xotabych

Share this post


Link to post

Short link
Share on other sites

@Xotabych, вроде вся шапка,  у тебя,  сделана из макросов totalEfficience или я пропустил что-то? 

Share this post


Link to post

Short link
Share on other sites

Зачем ему шапка, я никак не понимаю, чего вы к этой шапке привязались? От нее наоборот избавиться надо, а вы цепляетесь. Шапку можно сварганить любую на основе Total Efficiency, дополнительно к самой ТЕ.

 

в Total Efficiency не известно, кому урон наносишь, соответственно обрезается часть макросов - и это основная причина.   Да и как от шапки избавиться, если её ещё нет ges_slap.gif

Edited by H_E_K_P_O_M_A_H_T_

Share this post


Link to post

Short link
Share on other sites

@Xotabych, вроде вся шапка,  у тебя,  сделана из макросов totalEfficience или я пропустил что-то? 

Да на макросах totalEfficience.

Share this post


Link to post

Short link
Share on other sites

Да на макросах totalEfficience.

А зачем их пихать в py_hitLog.xc? Сделай отдельное поле. 

Share this post


Link to post

Short link
Share on other sites

А зачем их пихать в py_hitLog.xc? Сделай отдельное поле. 

Я его делал еще в прошлом патче на скорую руку, так и осталось.

Я переделаю.

Share this post


Link to post

Short link
Share on other sites

@ktulho, смотрю, раз уже такая идея прижилась:

 {{py:xvm.numberShotsDealt={{py:xvm.numberHitsDealt}}?=|>}}

может тогда сделаешь (если шапку будешь делать) для hitlog-py простенький макрос:

{{sign}}    возвращает '>' или '=', в зависимости от отношения выстрелов и попаданий (в названии не уверен :))

Share this post


Link to post

Short link
Share on other sites
Я лично не собираюсь от нее отказываться, мне так удобней

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

в Total Efficiency не известно, кому урон наносишь, соответственно обрезается часть макросов - и это основная причина

Не совсем понял, а зачем в шапке кому урон наносишь? Там же вроде суммарные показатели обычно, ну не считая последнего урона, но он- дубляж из лога и не нужен там по сути.

Edited by demon2597

Share this post


Link to post

Short link
Share on other sites

Не совсем понял, а зачем в шапке кому урон наносишь? Там же вроде суммарные показатели обычно, ну не считая последнего урона, но он- дубляж из лога и не нужен там по сути.

 

{{py:xvm.dmg}}  урон по своимпоказывает. @Kapany3uk пытался повторить шапку из hitLog - тоже не получилось. По этому я и предложил (подтвердил просьбу @Kapany3uk ) сделать шапку. 

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

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

Edited by demon2597

Share this post


Link to post

Short link
Share on other sites

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

 

Я короче говоря промусолил массу вариантов (было свободное время)  и пришёл к выводу, что шапка нужна. То есть эта просьба не с потолка  взята а основана на тестировании всяких ситуаций. Я перепробовал и так и сяк, и с totalEfficiency и с шапкой-подложкой - сделал гибрид totalEfficiency и hitlog-py (у меня в конфиге на данный момент) - всёровно не то. В гибриде пока нет строки с уроном - шапка не срабатывает (пустые выстрелы например). Так что всё как говориться научно обосновано  :hmm:

Edited by H_E_K_P_O_M_A_H_T_
  • Upvote 2

Share this post


Link to post

Short link
Share on other sites

@H_E_K_P_O_M_A_H_T_, ну тебе виднее, раз ты пробовал так и сяк. У тебя видимо шапка какая-то сложная задумана, ты видишь туда чего только не выносишь. Ладно, я спорить не буду, как порешите, мне не жалко.

Share this post


Link to post

Short link
Share on other sites

@H_E_K_P_O_M_A_H_T_, ну тебе виднее, раз ты пробовал так и сяк. У тебя видимо шапка какая-то сложная задумана, ты видишь туда чего только не выносишь. Ладно, я спорить не буду, как порешите, мне не жалко.

 

Шапка сложная не спорю, но в ней всё грамотно сделано. Вон сколько маркросов для damageLog выпросил и конечный результат получился на уровне. И этот модуль нужно до дела довести и тогда будет гуд.

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

Обновлено для XVM 7.0.2.

Добавлены макросы: {{wtr}}, {{xwtr}}, {{c:wtr}}, {{c:xwtr}}

Удалены макросы: {{wn6}}, {{xwn6}}, {{c:wn6}}, {{c:xwn6}}

Edited by ktulho
  • Upvote 2

Share this post


Link to post

Short link
Share on other sites
3 часа назад, ktulho сказал:

Обновлено для XVM 7.0.2.

Добавлены макросы: {{wtr}}, {{xwtr}}, {{c:wtr}}, {{c:xwtr}}

Удалены макросы: {{wn6}}, {{xwn6}}, {{c:wn6}}, {{c:xwn6}}

hitLog.pyc - не увидил я там этих изменений, качал с шапки темы.

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites
3 минуты назад, Xotabych сказал:

hitLog.pyc - не увидил я там этих изменений, качал с шапки темы.

Спасибо, не тот файл залил. (оказывается теперь разрешено заливать *.py файлы)

Edited by ktulho
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

@ktulho  привет. Попалась нужная ситуация  (давненько её ждал), а именно затопление противника. В лог затопление не пошло, а желательно конечно.

 

 

 

Edited by H_E_K_P_O_M_A_H_T_
удаление вложения

Share this post


Link to post

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...