Jump to content
Korean Random

GPCracker

User
  • Posts

    2,827
  • Joined

  • Last visited

  • Days Won

    62

Everything posted by GPCracker

  1. Обычный - прямое наведение на видимый участок танка противника, при этом на ванильке подсвечивается контур. Рентген - то же самое, только срабатывает и для танка за текстурами/стеной/горой и т.д., но нужно навестись именно на танк. Если включить "контуры" - в пределах контура. BoundingBox - самое сложное и самое интересное. У танка есть bounds - границы, определенные как рассчитанная по мин-макс по координатам в СК танка Граничная Коробка - если переводить дословно - составленная из граничных коробок компонентов (шасси, корпус, башня, пушка). Подробно можно посмотреть на скринах, если отмотать страниц так 10-20 назад, ну или загуглить "Bounding Box", кого там не забанили. Эта коробка увеличивается относительно центра в scale раз (этот параметр есть в конфиге), после чего выполняется коллижн (та тема с лазерным лучом) по этой увеличенной коробке. Методика позволяет определять танк даже без прямого наведения на него, достаточно навести прицел рядом с целью, попасть прицелом в эту коробку. Само собой, как и с рентгеном, текстуры не считаются. BoundingEllipse - то же самое, что и BoundingBox, почти, только если в случае с BoundingBox происходит матричная трансформация единичного кубика до коробки, то в случае с BoundingEllipse - сферы, описанной вокруг такого единичного куба. Но поскольку сфера при скейле в разное количество раз по разным осям перестает быть сферой - получается эллипсоид или что-то типа того. Эллипсоид чуть больше коробки, и у него само собой "немного" отличается геометрия, но в принципе там точность не нужна, при "неточном наведении", но зато сложность вычислений при определении коллижна по такому эллипсоиду в несколько раз меньше, а значит и ресурсов жрет тоже меньше, чем коробка. Последние два самые нагруженные (хотя в принципе там все достаточно оптимизировано), поэтому не рекомендую использовать их на старых ПК... Хотя все решается практическим тестированием в принципе. Ручной оверрайд цели (manual override) - это более приоритетный "импульс сканирования" (в авторежиме сканирование выполняется "импульсами" с некоторым интервалом) - цель, захваченная таким образом не "устаревает", и может быть сброшена только вручную, т.е. "импульсом" в пустое место или сбросом. И отдельно для тех, кто думает что он особо умный и хочет побомбить в комментах - "захват цели" (TargetLock), он же "сканер"(TargetScanner/TargetInfo) - это внутренний модуль модификации, к автоприцелу отношения не имеет, работает по дефолту только в обычном режиме, и применяется только для корректировки дальномера, и все действия по активации остальных модулей сканера производятся пользователями самостоятельно. И наличие или отсутствие текстур никак не влияет на отображение ванильного маркера техники, так что я не вижу в "сканере" и всем, для чего его можно применить, ничего "читерского", если так выразиться - маркер-то у противника через стену видно :)
  2. А ты поставь себя на его (автора) место. Если тебе предложат работать ударными темпами в праздники да еще и забесплатно... - ну думаю ответ предсказуем - не согласишься. А почему вы тогда требуете от человека мод, как будто он у вас техзадание подписал и сроки не выполняет? По части сроков, для ЛЮБОГО БЕСПЛАТНОГО мода действует срок КТТС. Как Только Так Сразу. Учитесь ждать господа... Или самостоятельно разрабатывать моды. З.Ы. Красная репутация говорит сама за себя :)
  3. В арт отключена корректировка по цели, чтобы не сбивать новичков с толку. В аркадном - еще на стадии тестирования.
  4. Смотри примеры, думай, что и зачем нужно, дописывай, чего у тебя не хватает.
  5. Автоматический режим дальномера использует сканер, который ориентируется на танки. Нет танков (не светятся) - соответственно и скорректироваться не по чему. Ручной режим может брать расстояние до текущей точки прицеливания... ему танки пофигу, и он может работать и без светящихся танков противника.
  6. Есть уже. Давно. Очень давно. КТТС. Немного изменена логика. Зеленая надпись ЕМНИП работает только при активации ручного режима дальномера. Оранжевая - управляется сканером цели, и прямого отношения к дальномеру не имеет... хотя дальномер может использовать данные о цели. Надо чекнуть будет код, но вроде как-то так было. С прицеливанием никогда просто не было. Неспроста снайперы и инженеры это элита вооруженных сил, в плане образования. Тут сильно сказывается "специфика задачи", так сказать. Я так понимаю, это из блока хоткея? Там параметры сгруппированы и вложенность тегов есть такое понятие. Параметр инвертирует восприятие хоткея, нажатие воспринимается как отпускание и наоборот. Остальное зависит от комбинации параметров.
  7. По дефолту работает в дефолтном режиме. Конкретность ответа прямо пропорциональна конкретности вопроса, гы :) Это есть такой модуль, называется сканер целей, он же проходит под именем TargetScanner. Несложно догадаться, что он сканирует окружающее пространство... "невидимым лазером прицела" (у тебя перекрестие прицела по центру монитора, вот представь там лазерную точку, как от прицела на автомате). Вот попадает эта невидимая точка лазера на вражеский танк, и мод подхватывает его как цель. Там тоже есть ручной и автоматический режимы. В ручном работает - навел-нажал-захват, в автоматическом достаточно просто навести перекрестием на танк. Я просто привел аналогию, чтобы было понятно, на деле там просто матан и коллижн-тесты по математическим объектам. То, что там считается, еще не каждый мододел поймет хотя бы наполовину, поэтому объяснять подробности реализации смысла особого не вижу. Еще там есть различные сканеры, они определяют, как происходит обнаружение "попадания лазера на танк противника". Но вопрос-то был про корректировку? Да, TargetScanner отдает данные о цели в специальный объект TargetInfo. Соответственно, корректировщик дальномера берет эти данные и определяет дистанцию до цели, выставляет по ним дальномер. Собственно, у корректировщика дальномера есть еще ручной режим - при зажатии кнопки он блокирует изменение дистанции дальномера (причем берется не расстояние до текстур, а расстояние до текущей точки прицеливания). Отпускаешь - блокировка сбрасывается, дальномер нормализуется по текущей обстановке. По дефолту альт. Имеет смысл использовать когда нужно обстрелять какой-нить куст (в котором предположительно кто-то заныкался), когда противник не светится, соответственно захват цели невозможен (захватываем расстояние до земли под кустом)... или для удержания расстояния дольше времени сброса цели, если успеть нажать до того, как цель будет считаться "устаревшей" и будет сброшена.
  8. Контроль версии это фича, которая раньше блокировала запуск мода, если ставишь старый мод на новый клиент или что-то в этом духе. Вообще-то дальномер активен в полной комплектации для снайперского, отключен для аркадного, для артиллерийского отключена со старта автокорректировка высоты цели. Как и любой другой мод, модификация нагружает процессор. Но ощутимого влияния на FPS замечено не было.
  9. Ну это как минимум, по идее должно помочь... Возможно еще какая-то проблема с загрузчиком.
  10. @andron-1202, нет начала лога, невозможно определить, что спровоцировало ошибку. Видно только что BigWorld.player() почему-то равен None (вывод из ошибки и трейсов), что само по себе явление из ряда вон выходящее.
  11. Тут такой момент есть, как неровность рельефа. Т.е. посчитать точки проекции обзора в принципе не сложно, вопрос в том, что там будет далеко не прямоугольник обзора. Но в принципе этот момент решается с некоторой погрешностью расчетом по высоте рельефа в центральной точке. Это к вопросу про соответствие прямоугольника на миникарте обзору. Только для ровной поверхности без наклона. Что касается отрисовки на миникарте этого прямоугольника, я еще не до конца разобрался в том, какая матрица туда отправляется, точнее MP. Хотя тоже одно время копал все это дело. Чтобы делать такие вещи нужно изначально раскапывать как передаваемый MP из питона конвертится в матрикс сущности на миникарте. Это все обрабатывается на С, и так просто туда не подлезть. Если учитывать то, что я сказал выше, то в BA и других подобных модах прямоугольник превращается в трапецию. Вот примеры результатов матричного преобразования квадрата. Трапеции лично я там не увидел. Может конечно ты сможешь предложить вариант последовательного применения преобразований для превращения квадрата в трапецию :) Я такого варианта не знаю, по крайней мере для двухмерного преобразования. А трехмерное миникарта вряд ли потянет (читай про WG-C-код выше). Т.е. такое можно сделать только путем интервального контроля за камерой и ручного трансформирования объекта "прямоугольник", а это уже положит на дно FPS, или будут некоторые заметные задержки. Метка в центре является частью прямоугольника и скейлится вместе с ним. Для того, чтобы она была правильной можно попробовать подогнать саму картинку под соотношение сторон твоего монитора, если конечно там это допустимо сделать. Либо менять класс этого маркера, разделяя графику прямоугольника и метки по разным спрайтам и прописывая грамотно обработку скейла... технически сделать можно, практически - тот еще геморрой. Тем более согласовать все с XVM (чтобы его наличие/отсутствие не влияло на работу мода), потому что они тоже патчат подобным образом часть маркеров, а держать две версии весьма непростого для среднестатистического мододела кода - весьма таки затратно. Поменять картинку на флешке по сравнению с тем, что я описал - это как два пальца по сравнению со сборкой танка :) Если сильно интересно, о чем я говорю, можешь зайти сюда - это проект новых маркеров орудий на миникарте. К сожалению из-за вышедшего патча релиз сорвался, но в принципе там довольно понятно представлены технологии подобных вещей. Не сказать, что код особо сложный, но на AS делать что-то в реалтайме намного сложнее, чем на питоне, и "заборов" и ограничений в разы больше.
  12. Не совсем. Некоторые вещи по тем или иным причинам отключены. Основной функционал само собой работает "из коробки".
  13. Координаты пока не сохраняются. Используй конфиг.
  14. Симптомы обновления картохой ключевых классов. Доработаю как доберусь до AAS, пока копаюсь в либе. То, что скинул пару дней назад - сыроватый немного хотфикс.
  15. Конфиг, файл gui.xml. Выставить visible = False для всех режимов, где она не нужна. Потому что конфиг не нужно редактировать стандартным блокнотом. Он ломает кодировку. Notepad++/SublimeText в помощь. И не нужно менять там код блоками, если не понимаешь, что делаешь. Находишь нужные секции, переносишь параметры.
  16. Никуда. Он нужен при сборке флешки AAS, иными словами, при установке мода из готовых бинарников он не требуется. Там в комментах в архиве это написано, на инглише правда. И за поиск по теме еще никого не банили :)
  17. В общем, есть тестовый вариант, но еще пока довольно сырой, т.к. ничего пока не проверял толком, но на реплее вроде как ок. XModLib.zip AdvancedAimingSystem.zip
  18. Ну так в случае каждого конкретного файла прописать путь почти всегда можно константой... только идея в том, чтобы код загрузки не зависел от того, в каком файле его используешь.
  19. Обнова будет КТТС, просто очень большой завал IRL, а поздно вечером уже как-то вообще не идет. А сегодня уже больше идет что покрепче :) В особенности под шашлычок, картошку и салаты. Пользуясь случаем, поздравляю всех с наступающим (или уже наступившим)!
  20. Наверное после того, как была проблема с детектом в Орионе Странника. Чтобы поисковики на файлы не агрились возможно. Хотя м.б. изначально было. Не обращал внимания, ибо всегда сижу на форуме залогиненным :) Если уж на то пошло, надо хоть картинки видимыми сделать.
  21. @spoter, я ставил в свое время студию... с ней столько говна на систему накатывается... ИМХО, чем проще (и чем меньше зависимостей), тем лучше, но в разумной мере естественно.
  22. Мне одному кажется, что что-то тут не так?
  23. Твое предложение как из __file__ и __name__ получить корректную базу пути к файлу, типа тех, что лежат в sys.path? Только там их много (еще и левые быть могут), а нужна конкретная. Иными словами, получить заюзанную при импорте файла запись из sys.path? Есть еще вариант через коммонпрефиксы, но это строковая операция и там в итоге гемороя намного больше получается, а нормальная версия (commonpath) - спрашивайте в питоне 3.х.
  24. Если речь идет не об описанных мной ситуациях, когда перехват невозможен, значит нужен пример, что где и в какой конфигурации не хавается. В текущей реализации есть fetch_logs - при коннекте ты получаешь все, что было перехвачено до твоего подключения. Получение данных из файла python.log - задача абсолютно нетривиальная. Ибо опять напомню что flush python.log дело такое... Без подкопа под C-часть игры /костылей вряд ли получится. А под C копать... Так это по сути сразу перехват туда переводить. В такие дела я пока точно не полезу, ибо это надо очень много манов и примеров скурить, чтобы понять что куда и зачем. Вообще вывод логов у картофана вещь такая... странная малость. Зачем-то часть логов выводят из питона через сишный интерфейс.
  25. Не ну я не Ванга, так что давай пример, что отваливается, будем смотреть. И еще. Если ошибку дает C-код, то перехват на уровне питона невозможен. А хавать лог-файл бесполезно - он флашится с определенным интервалом, и получается местами довольно существенная задержка между событием и логом. Несколько первых сообщений чисто технически съесть нельзя - они выводятся до запуска питона C-ной частью.
×
×
  • Create New...