Jump to content
Korean Random
ktulho

УГН и УВН средствами XVM

Recommended Posts

Okay, with the new version the bound errors are gone end the log is error free, but I don't see any markers.

 

Made a mistake. All okay now.

Share this post


Link to post

Short link
Share on other sites

@Kapany3uk, попробуй поставить

COUNT_STEPS = 1.0 

все равно немного подлагивает - дискомфортно играть...

вернусь к просьбе: дай, пжл, прежний вариант скрипта - пусть уголки дергаются...

и без УГН - не нашел практического смысла - поскольку также, как и УВН "приезжают" к центру прицела, а хотелось бы, чтобы на экране отражались верхний и нижний "пороги" прицеливания, т.е. то место, куда опускается/поднимается пушка (имхо)...

Share this post


Link to post

Short link
Share on other sites

все равно немного подлагивает - дискомфортно играть...

, как говорил Станиславский: "Не верю". Сейчас код, как минимум не медленней.

 

вернусь к просьбе: дай, пжл, прежний вариант скрипта - пусть уголки дергаются...

,  anglesAiming.rar

 

и без УГН - не нашел практического смысла - поскольку также, как и УВН "приезжают" к центру прицела, а хотелось бы, чтобы на экране отражались верхний и нижний "пороги" прицеливания, т.е. то место, куда опускается/поднимается пушка (имхо)...

, не понял. 

 

 

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

Edited by ktulho

Share this post


Link to post

Short link
Share on other sites
@xvm.export('xvm.anglesAiming_xRight', deterministic=False)
def xvm_anglesAiming_xRight():
    return dataHor[1] if dataHor is not None else BigWorld.screenWidth()


@xvm.export('xvm.anglesAiming_y', deterministic=False)
def xvm_anglesAiming_xRight():
    return dataHor[2] if dataHor is not None else - BigWorld.screenHeight() * 0.0775

Is the second "xvm_anglesAiming_xRight()" definition name correct?

  • Upvote 2

Share this post


Link to post

Short link
Share on other sites

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

Удалил мод, на 2х компьютерах ВСЕ хорошо....

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

Кто-нибудь нарисовал нормальные уголки? Поделитесь, если не жалко. 


@xvm.export('xvm.anglesAiming_xRight', deterministic=False)
def xvm_anglesAiming_xRight():
    return dataHor[1] if dataHor is not None else BigWorld.screenWidth()


@xvm.export('xvm.anglesAiming_y', deterministic=False)
def xvm_anglesAiming_xRight():
    return dataHor[2] if dataHor is not None else - BigWorld.screenHeight() * 0.0775

Is the second "xvm_anglesAiming_xRight()" definition name correct?

 

Совсем забыл про это сообщение. Может быть с этим связаны утечки и проблема описанная @vizhu. Завтра обновлю.

Edited by ktulho

Share this post


Link to post

Short link
Share on other sites

Кто-нибудь нарисовал нормальные уголки? Поделитесь, если не жалко.

 

насчет "нормальных" - у каждого "фломастеры на свой вкус", но этими пользуюсь сам

post-24956-0-44848500-1483898236.png post-24956-0-13278200-1483898237.png

post-24956-0-97265100-1483898236.png post-24956-0-24405900-1483898237.png

post-24956-0-39476100-1483898237.png

 

post-24956-0-88991400-1483898235.png

 

для УГН размеры в battleLabelsTemplates.xc указывать 36х36

для УВН - 196х31 (w/h)

 

 

Переодически наблюдаются жуткие фризы,в основном через пару часов игры.
попадается такое, грешил в целом на все моды, без конкретизации...

 

 

 

Совсем забыл про это сообщение. Может быть с этим связаны утечки и проблема описанная vizhu. Завтра обновлю.
а можешь тут написать правильное имя?
@xvm.export('xvm.anglesAiming_y', deterministic=False)
def xvm_anglesAiming_xRight():
    return dataHor[2] if dataHor is not None else - BigWorld.screenHeight() * 0.0775
Edited by Kapany3uk
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

а можешь тут написать правильное имя?

@xvm.export('xvm.anglesAiming_y', deterministic=False)
def xvm_anglesAiming_xRight():
    return dataHor[2] if dataHor is not None else - BigWorld.screenHeight() * 0.0775

 

В принципе без разницы, пусть будет def xvm_anglesAiming_y():

@ktulho, как цифру вывести. увн и угн? динамическую. 

В градусах? Пока ни как, можно добавить такие макросы. 

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

В градусах? Пока ни как, можно добавить такие макросы. 

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

Share this post


Link to post

Short link
Share on other sites

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

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

Edited by ktulho
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

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

А можно сделать,чтоб маркеры УВН появлялись только ближе +-5 градусов,даже вниз наверное можно и тремя обойтись.Чтоб картинка не постоянно была в поле зрения,а при приближении к граничным градусам.

  • Upvote 2

Share this post


Link to post

Short link
Share on other sites

 

насчет "нормальных" - у каждого "фломастеры на свой вкус", но этими пользуюсь сам

attachicon.gifleft.PNG attachicon.gifright.PNG

attachicon.gifLeft_limit.png attachicon.gifRight_limit.png

attachicon.gifTop.png

 

attachicon.gifBottom.png

 

для УГН размеры в battleLabelsTemplates.xc указывать 36х36

для УВН - 196х31 (w/h)

 

 

попадается такое, грешил в целом на все моды, без конкретизации...

 

 

 

а можешь тут написать правильное имя?
@xvm.export('xvm.anglesAiming_y', deterministic=False)
def xvm_anglesAiming_xRight():
    return dataHor[2] if dataHor is not None else - BigWorld.screenHeight() * 0.0775

 

 

 

НО убрав УГН-УВН перестало !(

 

ЭТО НЕ камень в огород ktulho :exc:

ktulho мега респект и уважуХА :exc::gawi: 

Edited by vizhu

Share this post


Link to post

Short link
Share on other sites
@xvm.export('xvm.anglesAiming_xRight', deterministic=False)
def xvm_anglesAiming_xRight():
    return dataHor[1] if dataHor is not None else BigWorld.screenWidth()


@xvm.export('xvm.anglesAiming_y', deterministic=False)
def xvm_anglesAiming_xRight():
    return dataHor[2] if dataHor is not None else - BigWorld.screenHeight() * 0.0775

Is the second "xvm_anglesAiming_xRight()" definition name correct?

 

  • Исправлено. Просьба протестировать у кого были проблемы с производительностью.
  • Также, были сделаны не большие изменения скрипта, с целью повышения производительности.
  • Добавлены макросы:
    {{py:xvm.anglesAiming_yaw}} - угол между орудием и корпусом техники в градусах;
    {{py:xvm.anglesAiming_pitch}} - угол склонения орудия в градусах.
    

    Шапку обновил.

А можно сделать,чтоб маркеры УВН появлялись только ближе +-5 градусов,даже вниз наверное можно и тремя обойтись.Чтоб картинка не постоянно была в поле зрения,а при приближении к граничным градусам.

Вместо числа 350 (350 - это расстояние в пикселях от прицела) подберите какое вам удобно число, например 250, в параметрах "alpha" в секциях angleAimingTop и angleAimingBottom:

    "angleAimingBottom": {
      "enabled": true,
      "updateEvent": "PY(ON_ANGLES_AIMING)",
      "x": 0,
      "y": "{{py:xvm.anglesAiming_yBottom}}",
      "width": 194,
      "height": 29,
      "alpha" : "{{py:xvm.anglesAiming_yBottom<350?{{py:math.sub(350, {{py:xvm.anglesAiming_yBottom}})}}|0}}",
      "screenHAlign": "center",
      "screenVAlign": "center",
      "format": "<img src='xvm://res/Angles/Bottom.png'>"
    }, 
    "angleAimingTop": {
      "enabled": true,
      "updateEvent": "PY(ON_ANGLES_AIMING)",
      "x": 0,
      "y": "{{py:xvm.anglesAiming_yTop}}",
      "width": 194,
      "height": 29,
      "alpha" : "{{py:xvm.anglesAiming_yTop>-350?{{py:math.sum({{py:xvm.anglesAiming_yTop}}, 350)}}|0}}",
      "screenHAlign": "center",
      "screenVAlign": "center",
      "format": "<img src='xvm://res/Angles/Top.png'>"
    }, 

P.S. Как обычно забыл убрать логирование.) Перекачайте кто успел скачать.

Edited by ktulho
  • Upvote 4

Share this post


Link to post

Short link
Share on other sites

@ktulho, python.log:

2017-01-09 14:46:24.776: WARNING: [py.warnings] res_mods/configs/xvm/py_macro\anglesAiming.py:121: SyntaxWarning: name 'old_gunAnglesPacked' is used prior to global declaration
  global yaw, old_yaw, pitch, old_pitch, currentStep, old_gunAnglesPacked

Share this post


Link to post

Short link
Share on other sites

 

насчет "нормальных" - у каждого "фломастеры на свой вкус", но этими пользуюсь сам

attachicon.gifleft.PNG attachicon.gifright.PNG

attachicon.gifLeft_limit.png attachicon.gifRight_limit.png

attachicon.gifTop.png

 

attachicon.gifBottom.png

 

для УГН размеры в battleLabelsTemplates.xc указывать 36х36

для УВН - 196х31 (w/h)

 

 

попадается такое, грешил в целом на все моды, без конкретизации...

 

 

 

а можешь тут написать правильное имя?
@xvm.export('xvm.anglesAiming_y', deterministic=False)
def xvm_anglesAiming_xRight():
    return dataHor[2] if dataHor is not None else - BigWorld.screenHeight() * 0.0775

По поводу УВН, если ширина картинки четная то центральный индексатор указывает немного не по центру, конечно всего на 1 пиксель но временами глаз мозолит. Для себя раздвинул изображения на 1 пиксель что бы ширина получилась нечетной(недостающее дорисовал), может кому пригодиться.

ЗЫ. В battleLabelsTemplates.xc соответственно надо будет поправить длину и ширину  "width": 197, "height": 31.

post-30084-0-67265800-1483965397.pngpost-30084-0-03494000-1483965398.png

Share this post


Link to post

Short link
Share on other sites

 

@ktulho, python.log:

2017-01-09 14:46:24.776: WARNING: [py.warnings] res_mods/configs/xvm/py_macro\anglesAiming.py:121: SyntaxWarning: name 'old_gunAnglesPacked' is used prior to global declaration
  global yaw, old_yaw, pitch, old_pitch, currentStep, old_gunAnglesPacked

Поправил.

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

 

  • Исправлено. Просьба протестировать у кого были проблемы с производительностью.
  • Также, были сделаны не большие изменения скрипта, с целью повышения производительности.
  • Добавлены макросы:
    {{py:xvm.anglesAiming_yaw}} - угол между орудием и корпусом техники в градусах;
    {{py:xvm.anglesAiming_pitch}} - угол склонения орудия в градусах.
    

    Шапку обновил.

Вместо числа 350 (350 - это расстояние в пикселях от прицела) подберите какое вам удобно число, например 250, в параметрах "alpha" в секциях angleAimingTop и angleAimingBottom:

    "angleAimingBottom": {
      "enabled": true,
      "updateEvent": "PY(ON_ANGLES_AIMING)",
      "x": 0,
      "y": "{{py:xvm.anglesAiming_yBottom}}",
      "width": 194,
      "height": 29,
      "alpha" : "{{py:xvm.anglesAiming_yBottom<350?{{py:math.sub(350, {{py:xvm.anglesAiming_yBottom}})}}|0}}",
      "screenHAlign": "center",
      "screenVAlign": "center",
      "format": "<img src='xvm://res/Angles/Bottom.png'>"
    }, 
    "angleAimingTop": {
      "enabled": true,
      "updateEvent": "PY(ON_ANGLES_AIMING)",
      "x": 0,
      "y": "{{py:xvm.anglesAiming_yTop}}",
      "width": 194,
      "height": 29,
      "alpha" : "{{py:xvm.anglesAiming_yTop>-350?{{py:math.sum({{py:xvm.anglesAiming_yTop}}, 350)}}|0}}",
      "screenHAlign": "center",
      "screenVAlign": "center",
      "format": "<img src='xvm://res/Angles/Top.png'>"
    }, 

P.S. Как обычно забыл убрать логирование.) Перекачайте кто успел скачать.

 

Спасибо!

Share this post


Link to post

Short link
Share on other sites

 

 

  • {{py:xvm.anglesAiming_pitch}} - угол склонения орудия в градусах.
    

Кто нибудь ставил уже, а то у меня примерно вот так показывает: 4.2384748281923947567 или при отрицательных градусах: -4.23712831812456571

вот так прописал (делал под прицел от атотика)

      "enabled": true,
      "updateEvent": "PY(ON_ANGLES_AIMING)",
      "x": -70,
      "y": -36,
      "width": 200,
      "height": 35,
      "screenHAlign": "center",
      "screenVAlign": "center",
      "shadow": { "distance": 0, "angle": 0, "alpha": 100, "blur": 3, "strength": 2 },
      "textFormat": { "font": "PartnerCondensed", "size": 17, "align": "left", "color": "0x96cc29" },
      "format": "{{py:xvm.anglesAiming_pitch}} °"

может че неправильно сделал?

Share this post


Link to post

Short link
Share on other sites

, попробуйте так:

      "enabled": true,
      "updateEvent": "PY(ON_ANGLES_AIMING)",
      "x": -70,
      "y": -36,
      "width": 200,
      "height": 35,
      "screenHAlign": "center",
      "screenVAlign": "center",
      "shadow": { "distance": 0, "angle": 0, "alpha": 100, "blur": 3, "strength": 2 },
      "textFormat": { "font": "PartnerCondensed", "size": 17, "align": "left", "color": "0x96cc29" },
      "format": "{{py:xvm.anglesAiming_pitch%2.01f}} °" 

Это с точностью до одного знака после запятой.

Edited by ktulho
  • Upvote 1

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