Jump to content
Korean Random

[0.9.4] изменение координат автоприцела


yaotzinv

Recommended Posts

https://www.youtube.com/watch?feature=player_embedded&v=aL5hP0XJmRk

https://www.youtube.com/watch?feature=player_embedded&v=Nbu82XbikdU

 

Мод даёт возможность изменить координаты точки - автоприцела.

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

Мод имеет 2 режима прицеливания:

-------------------------------

1й РЕЖИМ - заранее выставленная точкой прицела (цифровой клавиатурой)

Изменить можно при помощи цифровой клавиатуры:

8 - поднять точку автоприцела выше

2 - опустить точку автоприцела

4,6 - изменить точку автоприцела по горизонтали

3,9 - координаты автоприцела внутрь/наружу танка

2й РЕЖИМ - привязка прицела к той точке танка на которой вы нажали правой кнопкой мыши.

----------------------------------------------------------------

Переключение режимов автоприцела - кнопка 0 на цифровой клавиатуре.

11_11_2014_autoTarget_XYZ.zip

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

Идея супер!

Вот только имхо менять координаты нумпадом в бою некогда.

Я автоприцелом пользуюсь в двух случаях:

  1. стрельба из фугасницы с большого расстояния - нужен автоприцел в центр цели, что бы увеличить шанс попадания.
  2. на ст/лт - каруселю противника. нужен автоприцел в указанную правой кнопкой точку.

Можно было бы сделать смарт версию автоприцела: если противник далеко (дальше 50 - 100м) - то целимся в центр, а если близко, то в заданную точку.

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

  • 2 weeks later...

А можно сделать кнопки включения и отключения автоприцела на разные клавиши?

в самой игре предусмотрена такая опция и давно уже привык делать это разными кнопками.

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

  • 2 weeks later...

По приколу раскопал немного код. Есть некоторые пожелания, информация:

 

1. Использование способа "замены" оригинальных файлов не есть хорошо, приводит к конфликтам, когда два мододела используют один файл, например, данный мод не получится использовать с серверным прицелом от koshnaranek (а его используют очень многие). Самый хороший вариант - использовать хуки и закидывать свои файлы (скрипты) в /scripts/client/mods, эта папка специально создана для скриптовых модов.

 

2. Реализация (общий алгоритм) выбран не просто неверно, а очень плохо... Использовать BigWorld.callback() - самый плохой способ оптимизации кода. По сути образуется вечный цикл. Код, основной принцип работы которого строится на вечном цикле - всегда самый плохой. Этого вечного цикла следует максимальным образом избегать, поскольку вечные циклы приводят к сильным просадкам FPS (проверено и доказано неоднократно). Конечно, существуют задачи, где это нельзя обойти, например, обновление данных на экране. Но по крайней мере расчет координат для автоприцела не относится к таким задачам, ибо координаты автоприцела вычисляются специальной функцией predictLockedTargetShotPoint, модуль scripts/client/VehicleGunRotator.py. На нее ставится хук, он смещает точку куда надо, просто к координатам танка (BigWorld.player().autoAimVehicle.position) добавляется твой вектор смещения. Для перехвата клавиши захвата цели - тоже хук, только уже на функцию handleKeyEvent в классах ArcadeControlMode и SniperControlMode, модуль control_modes.py.

 

Как ставить хуки на методы

Вторая часть гайда

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

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

 

Там даже не просто цикл а вызов рекурсивно метода BigWorld.callback() ;)

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

Link to comment
Short link
Share on other sites

  • 2 weeks later...

похоже мод добавили в список запрещенных?

 

12. Модификация, изменяющая алгоритм работы автоприцела
 
Данная модификация меняет поведение автоприцела, меняя как точку прицеливания, так и/или сам алгоритм выбора точки прицеливания.
Преимущества игроков, у которых стоит данная модификация:
Упрощает ведение огня по определённым модулям;
В некоторых случаях уменьшает сложность выбора упреждения.

Link to comment
Short link
Share on other sites

похоже мод добавили в список запрещенных?

 

12. Модификация, изменяющая алгоритм работы автоприцела

 

Данная модификация меняет поведение автоприцела, меняя как точку прицеливания, так и/или сам алгоритм выбора точки прицеливания.

Преимущества игроков, у которых стоит данная модификация:

Упрощает ведение огня по определённым модулям;

В некоторых случаях уменьшает сложность выбора упреждения.

да :'(

Link to comment
Short link
Share on other sites

  • 2 weeks later...

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