Jump to content
Korean Random
GPCracker

Улучшенная система прицеливания / Advanced Aiming System

Recommended Posts

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

 

Ну там же есть всякие операции проецирования. Ты то лучше меня в ихнем матричном модуле Math этом разбираешься.

Share this post


Link to post

Short link
Share on other sites

Ну там же есть всякие операции проецирования. Ты то лучше меня в ихнем матричном модуле Math этом разбираешься.

1. Операции проецирования есть. Только не в модуле Math, а написаны на питоне как матричные вычисления в файле scripts/client/AvatarInputHandler/cameras.py

2. Проблема с проецированием контура. Хотя думаю вполне возможно заюзать BoundingBox, прямоугольник вокруг объекта (для тех, кто в танке). Надо будет посмотреть, можно ли определить координаты углов.

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

Share this post


Link to post

Short link
Share on other sites

Другими словами "Я тебя пну", даже если ты за камнем ))))  

 

Краткость - сестра таланта! Теперь понял, о чем речь... Вот же туплю временами....

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

Люди , человеки ! Подскажите как немного опустить надпись "Высотомер зафиксирован" ? Находится по координатам  0 0.25 1.0 . А то у меня наложение идёт на другие цифры от другого мода. Там уже некуда поднимать , и так высоковато.... Нигде не могу найти более менее понятного объяснения как это сделать...

ЗЫ И где можно увидеть таблицу цветов ? 

Edited by gergauf

Share this post


Link to post

Short link
Share on other sites

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

Собственно говоря давно рабочий мод от поляка живет себе тут на форуме евросервере.

Исходные тексты он правда в репозитарии перестал обновлять где-то с конца 2014 года, но то что это реализуемо прямое тому доказательство.

Edited by HaloGenius

Share this post


Link to post

Short link
Share on other sites

Находится по координатам  0 0.25 1.0

-1;+1 +0;+1 +1;+1

-1;+0 +0;+0 +1;+0

-1;-1 +0;-1 +1;-1

Последняя координата - уровень слоя (передний план/задний план), ЕМНИП.

Первая Х, вторая У

Цвет в формате RGBA (Red-Green-Blue-Alpha)

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

-1;+1 +0;+1 +1;+1

-1;+0 +0;+0 +1;+0

-1;-1 +0;-1 +1;-1

Последняя координата - уровень слоя (передний план/задний план), ЕМНИП.

Первая Х, вторая У

Цвет в формате RGBA (Red-Green-Blue-Alpha)

C цветами разобрался , СПС. По координатам,немного понять не могу - цифры должны быть кратными 0.5 ?  и отсчёт откуда идёт ? От маркера (то есть от центра) ?

Edited by gergauf

Share this post


Link to post

Short link
Share on other sites

По координатам,немного понять не могу - цифры должны быть кратными 0.5 ?  и отсчёт откуда идёт ? От маркера (то есть от центра) ?

Отсчет от центра, числа любые, в диапазоне от -1 до 1. Табличка показывает координаты углов и середины экрана. Координаты от центра экрана. НЕ от маркера, а от геометрического центра монитора. Первое число 0 означает что по горизонтали надпись по центру. Второе число 0,25 показывает, что надпись чуть выше центра по вертикали на 1/4 половины (1/8) высоты монитора. Координаты правого верхнего угла монитора +1;+1, левого нижнего -1;-1.
  • Upvote 2

Share this post


Link to post

Short link
Share on other sites

Отсчет от центра, числа любые, в диапазоне от -1 до 1. Табличка показывает координаты углов и середины экрана. Координаты от центра экрана. НЕ от маркера, а от геометрического центра монитора. Первое число 0 означает что по горизонтали надпись по центру. Второе число 0,25 показывает, что надпись чуть выше центра по вертикали на 1/4 половины (1/8) высоты монитора. Координаты правого верхнего угла монитора +1;+1, левого нижнего -1;-1.

Понял , большое спасибо за пояснения , Понятно и коротко.

Share this post


Link to post

Short link
Share on other sites

Hello GPCracker!
 
First, many thanks for yours mods (AASMX and also EDMX).
I use AASMX together with auto_aim. AASMX aims the target and follows it; auto_aim is adjusted (no pre-aim) to only allow me during the game to shot at the turret, the body or the lower part of the tank.
 
I read with great interest your work on https://bitbucket.org/GPCracker/advancedaimingsystem and on this blog, yours reflections and all the comments.
 
I have translated for me the messages in AdvancedAimingSystem.xml file (my mother tongue is Frensch). I compile usually your mod with its last commits.
I have allowed myself to write a little modification in your code for a more complete translation of the safeshot messages.
Maybe, this modification might interest others players.

 

--- Code modifications ---

  • In AdvancedAimingSystem.xml file:

In the 3 subsets <commonAS><safeShot><teamShot>|<deadShot>|<wasteShot>, 3 lines added:

...
+     <blockShotReason> My teamShot | deadShot | wasteShot translation </blockShotReason>
...
  • In config.py file, in defaultConfig() function:

In the 3 subsets 'commonAS'/'safeShot'/'teamShot'|'deadShot'|'wasteShot', 3 lines added.
 

...
+     'blockShotReason' : ('WideString', u'teamShot'|'deadShot'|'wasteShot'),
...
  • In Hook-PlayerAvatar.py file, in new_PlayerAvatar_shoot(self, isRepeat = False) function:

3 lines added and 4 lines replaced:

...
blockTeamShot = _config_['commonAS']['safeShot']['teamShot']['blockShot']
+ teamShotReason = _config_['commonAS']['safeShot']['teamShot']['blockShotReason']
blockBlueShot = _config_['commonAS']['safeShot']['teamShot']['blockBlueShot']
sendChatMessage = _config_['commonAS']['safeShot']['teamShot']['sendChatMessage']
chatMessage = _config_['commonAS']['safeShot']['teamShot']['chatMessage']
blockDeadShot = _config_['commonAS']['safeShot']['deadShot']['blockShot']
+ deadShotReason = _config_['commonAS']['safeShot']['deadShot']['blockShotReason']
blockTimeout = _config_['commonAS']['safeShot']['deadShot']['blockTimeout']
blockWasteShot = _config_['commonAS']['safeShot']['wasteShot']['blockShot']
+ wasteShotReason = _config_['commonAS']['safeShot']['wasteShot']['blockShotReason']
...
if blockWasteShot and BigWorld.player().inputHandler.aim.mode is 'arcade' and getGunMarkerData()[3] is None:
-  shotBlockReason = 'wasteShot'
+  shotBlockReason = wasteShotReason
elif blockTeamShot and target is not None and isVehicleAlly(target.id) and (blockBlueShot or not isVehicleTeamKiller(target.id)):
-  shotBlockReason = 'teamShot'
+  shotBlockReason = teamShotReason
elif blockDeadShot and target is not None and isVehicleEnemy(target.id) and not isVehicleAlive(target.id) and target.id in vehiclesDeathTime and vehiclesDeathTime[target.id] + blockTimeout > BigWorld.time():
-  shotBlockReason = 'deadShot'
+  shotBlockReason = deadShotReason
if shotBlockReason is not None:
  showMessageOnPanel('VehicleErrorsPanel', shotBlockReason, formatMessage(shotBlockMessage, shotBlockReason = shotBlockReason), 'red')
-  if shotBlockReason is 'teamShot':
+  if shotBlockReason is teamShotReason:
   teamChannel = getBattleChatControllers()['team'] if sendChatMessage else None
...
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

Thanks for the reply.

I have allowed myself to write a little modification in your code for a more complete translation of the safeshot messages.

You could just left a new function request here, and if function is useful and implementable, it will come soon as an update. All bugs could also be reported in this topic, in accordance with bug report rules. Here are not many users who understand python language, so you could use spoilers or PM, because it's useless information for most of topic visitors. Any way, they will wait for an update.

Your suggestion will be applied soon.

Share this post


Link to post

Short link
Share on other sites

А тем временем обратка на евросервере, создателю мода поступило предложение использовать код нашего ТС в его моде и вот он отвечает

EdgeDetect can be configured for AutoAim vehicle so I guess one can you snapping + EdgeDetect (I will give it a try) - any sense of moving it here? Frankly, I see none

 

Share this post


Link to post

Short link
Share on other sites

Hello GPCracker!

 

Thanks for the hints to write here. I did'nt understand to what were of use some tools of the editor (and I do'nt speak Russian. Thanks nevertheless for fast but rough Google's translations!).

 

Certainly sorry if I am wrong but, in the last commit ("XRay for RadialMenu added" on https://bitbucket.org/GPCracker/advancedaimingsystem), in "buildIt.cfg" file, there is made a reference to "AdvancedAimingSystem-M/Hook-RadialMenu.py" and I find nowhere such a "Hook-RadialMenu.py" file, neither in "AdvancedAimingSystem-M" directory of Source, nor in the current Download repository zipfile, nor somewhere else. Would it be a forgetting?

Edited by TinySoft
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

-Добавлена возможность настройки текста причины блокировки выстрела.

-Изменена логика работы SafeShot, исправлена блокировка стрельбы по трупу союзника, добавлена функция отслеживания наведения орудия для блокировки дружественного огня.

-Исправлена блокировка выстрелов при удерживании кнопки стрельбы.

-Частично исправлена проблема с триггерным режимом кнопки сброса автоприцела.

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

-Добавлен случайно забытый в коммите 20932e5 файл "AdvancedAimingSystem-M/Hook-RadialMenu.py" (в собранной версии коммита все ОК, проблема только с репозиторием).

79a129f.zip

Would it be a forgetting?

Yeah. I've forgot to add (stage) a new file to a commit. Fixed. Thanks.

I did'nt understand to what were of use some tools of the editor

You could change language of interface at the top of a page in left corner. Edited by GPCracker
  • Upvote 2

Share this post


Link to post

Short link
Share on other sites

Hello GPCracker!

 

 

 

You could change language of interface at the top of a page in left corner.

 

Thanks! Thanks! Thanks! It's far better already so! Oh my god, I feel so stupid not to have thought of clicking these little flags!

Share this post


Link to post

Short link
Share on other sites

Большое спасибо за обнову.

 

Плиз, добавьте параметр расстояние в блок блокировки промахов в аркадном режиме.

Т.к. блокировка нужна в основном при стрельбе с ходу по близко расположенной цели.

Расстояние ближе которого начинает работать блокировка  промаха в аркадном режиме 50

 

И проясните что учитывается при блокировке?

Интересует: простреливаемые объекты, препятствия, нехватка углов наведения, тип снаряда

Share this post


Link to post

Short link
Share on other sites

И проясните что учитывается при блокировке?

Если маркер орудия (сведение) находится на на текстурах в аркадном режиме, то выстрелы блокируются. Простреливаемость не учитывается.

В установке расстояния смысла нет.

Edited by GPCracker

Share this post


Link to post

Short link
Share on other sites

Если маркер орудия (сведение) находится на на текстурах в аркадном режиме, то выстрелы блокируются. Простреливаемость не учитывается.

В установке расстояния смысла нет.

Смысл есть, если стрелять с упреждением по дальней цели в аркадном режиме. :)

А про какие текстуры идет речь? Вражеского танка?

 

Простреливаемость не учитывается.

Если противник за домом, но орудие наведено на его контур,  выстрел будет?

Т.е. блокируется выстрел когда орудие не наведено на противника как явный промах?

Edited by Scharfhobel

Share this post


Link to post

Short link
Share on other sites

А про какие текстуры идет речь? Вражеского танка?

Текстуры окружения.

Смысл есть, если стрелять с упреждением по дальней цели в аркадном режиме. :)

Для этого есть снайперский режим.

Т.е. блокируется выстрел когда орудие не наведено на противника как явный промах?

Блокируется, когда в сведении не показана толщина брони. Т.е. между игроком и противником есть препятствия.
  • 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...