Jump to content
Korean Random

StranikS_Scan

Premium Member
  • Content Count

    7,407
  • Joined

  • Last visited

  • Days Won

    166

Everything posted by StranikS_Scan

  1. Там не совсем так. Вот эти 52% у игорька с 10к - это единственные "близкие к реальности" данные. Это самые точные и достоверные, почему? Потому что если все то, что творит в игре этот игорёк взять за случайный хаос, то единственным достоверным интегральным показателем, описывающим какую-то закономерность в этом хаосе - будет вот эта цифра, 52% на победу этого игорька в следующем бою после 10000 проведенных боев.... А фокус в том, что это совершенно не означает, что из 100 ближайших боев он выиграет 52, т.к. игровые процессы в тынках нельзя сводить к простым вероятностным моделям. Но интегральные показатели при этом никуда не деваются. И когда их пытаются прикрутить к оценка шансов на победу в конкретном бою - то неопытные в этом деле товарищи получают коллизию и мозговой диссонанс)))) Кстати, если есть желание интеллектуально поугорать, то можешь почитать вот тут на досуге. Там можно и вверх посты читать и вниз их читать ))))
  2. А что там может еще использоваться. Только это - статка игорьков. Ну математика не врёт. Если у игрока за 10к боев например 52% побед. То каков шанс, что следующий его бой закончится победой? 52%. И это следует из 10 000 опытов ))))
  3. Нативно делается, т.е. внешняя программа кибер-танка находит в памяти игры нужны байты и патчит их.
  4. Они все одинаковые внутри, так что юзайте спокойно.
  5. И что из себя представляет "Отключение графики в игре"?
  6. Моды ищите, которые показывают "процент побед". Например - тыц
  7. Есть моды, которые тягают статистику с сервера ВГ, по аналогии как это делает XVM, через открытый API. Если не ошибаюсь BattleOserver один из них. Еще пример мод от Ekspoint - тыц. Ссылка старая. Последнюю версию найдете сами.
  8. Для "входа" и "выхода" предусмотрены события onBecomePlayer и onBecomeNonPlayer. Они есть в классе аккаунта PlayerAccount https://github.com/StranikS-Scan/WorldOfTanks-Decompiled/blob/0e3bdba56ecac655dfefaeb409bc33fbdbbad492/source/res/scripts/client/Account.py#L218 https://github.com/StranikS-Scan/WorldOfTanks-Decompiled/blob/0e3bdba56ecac655dfefaeb409bc33fbdbbad492/source/res/scripts/client/Account.py#L259 а есть в классе игрока в бою Avatar https://github.com/StranikS-Scan/WorldOfTanks-Decompiled/blob/0e3bdba56ecac655dfefaeb409bc33fbdbbad492/source/res/scripts/client/Avatar.py#L275 https://github.com/StranikS-Scan/WorldOfTanks-Decompiled/blob/0e3bdba56ecac655dfefaeb409bc33fbdbbad492/source/res/scripts/client/Avatar.py#L387 А ангаре АФК можно реализовать только путем хука перемещения курсора мышки и нажатий клавиш на клавиатуры. Если изменений нет в течении определенного промежутка времени - то юзвер АФК. Поищите в исходниках слово LOBBY_VIEW_MOUSE_MOVE. Что касается нажатия клавиш то юзаем InputHandler.g_instance.onKeyDown. https://github.com/StranikS-Scan/WorldOfTanks-Decompiled/blob/0e3bdba56ecac655dfefaeb409bc33fbdbbad492/source/res/scripts/client/Avatar.py#L288 https://github.com/StranikS-Scan/WorldOfTanks-Decompiled/blob/0e3bdba56ecac655dfefaeb409bc33fbdbbad492/source/res/scripts/client/Avatar.py#L2296 https://github.com/StranikS-Scan/WorldOfTanks-Decompiled/blob/0e3bdba56ecac655dfefaeb409bc33fbdbbad492/source/res/scripts/client/Avatar.py#L2492 https://github.com/StranikS-Scan/WorldOfTanks-Decompiled/blob/0e3bdba56ecac655dfefaeb409bc33fbdbbad492/source/res/scripts/client/Avatar.py#L529 Получение cообщения с результатами с сервера тут https://github.com/StranikS-Scan/WorldOfTanks-Decompiled/blob/0e3bdba56ecac655dfefaeb409bc33fbdbbad492/source/res/scripts/client/Avatar.py#L2151 Объект ниже по ссылке отвечает за реплеи. Изучаем его. https://github.com/StranikS-Scan/WorldOfTanks-Decompiled/blob/0e3bdba56ecac655dfefaeb409bc33fbdbbad492/source/res/scripts/client/game.py#L82
  9. Понятия не имею. Зачем ты это у меня спрашиваешь?
  10. Можно изложить свою благодарность в форме сообщения.
  11. Новички не сразу могут получать и проставлять репутацию в постах, это сделано чтоб накруток не было.
  12. Пауль, че там с твоими опытами спустя три года? Вот такую красивую изотерму можно найти в тырнете. На её основе можно попробовать посинтезировать формулу для расчета Тпс как ты там хотел в том же маткаде.
  13. Поправлю. Там нет исходников, а декомпилировать его версию и копаться в декомпилированном коде я не буду, это долго. Исправил, перезалил - тыц.
  14. А забыл, там же дополнительные круги есть. Тогда смотри как нужно: 1. Добавляем два новых параметра в конфиг - коэф. видимости игрока стоя и в движении, например, PlayerVisibilityStill и PlayerVisibilityMoving 2. В конфиг пользователь вставляет один круг или два круга, как ему хочется, вот с такими макросами (синтаксис макросов XVM я не знаю, потому напишу свободно): "distance": {50 + (400 - 50)*PlayerVisibilityMoving}, где 50 это радиус круга рентгена, 400 - это обзор танка врага, вводимый пользователем "distance": {50 + (400 - 50)*PlayerVisibilityStill} 3. При входе в бой считаешь коэф. видимости для танка игрока. Это можно сделать через __getInvisibilityValues. Там на выходе будет вот такая штука (А, B), где A.current и A.atShot - это коэф. незаметности в % для движущегося танка: текущая незаметность и в момент выстрела, ну а B.current и B.atShot - для стоячего танка. В данном случае получается PlayerVisibilityMoving = 1 - A.current/100 и PlayerVisibilityStill = 1 - B.current/100 В результате получаем модификацию, которая позволяет вывести круг засвета своего танка либо стоячего, либо движущегося, либо оба круга вместе вывести, при статически заданном обзоре танка противника. А так как сей расчет - крайне приближенный из-за того, что обзор задаем вручную статически, то можно использовать приближенную, но более простую в записи, формулу: "distance": {50 + 400*PlayerVisibilityMoving} "distance": {50 + 400*PlayerVisibilityStill} С ней даже лучше станет, т.к. она дает загрубление в сторону раннего оповещения.
  15. Если мне не изменяет память, картошка использует до 32 слоев, то есть индексация 1...32. Вроде для корпуса до 32 слоев, а для башни до 16 слоев. Но могу соврать, так как не помню точно.
  16. Там не с формулами беда. Беда с флэшкой XVM. Как я понял в XVM во флэшку передаются не радиусы кругов, а аргументы для их расчета. А расчеты делаются уже внутри флэшки. Это значит, что написать скрипт, который что-то меняет - не получится. Нужно править флэшку для миникарты или свою делать.
  17. Да, такая броня есть и пердически встречается, т.к. без неё не всегда можно сделать целостное заброневое пространство. Что касается слоев в коллижене, то у них есть набор свойств, относящихся к механике снарядов. Например у каждого слоя есть вот такие свойства: <materials> <armor_1> <vehicleDamageFactor> 1.0 </vehicleDamageFactor> <useArmorHomogenization> true </useArmorHomogenization> <useHitAngle> true </useHitAngle> <useAntifragmentationLining> true </useAntifragmentationLining> <mayRicochet> true </mayRicochet> <collideOnceOnly> false </collideOnceOnly> <checkCaliberForRichet> true </checkCaliberForRichet> <checkCaliberForHitAngleNorm> true </checkCaliberForHitAngleNorm> </armor_1> Обращаем внимание на первый параметр vehicleDamageFactor - это и есть атрибут заброневого пространства. Все слои у кого он равен 1.0 - это слои образующие заброневое пространство. Их пробитие приводит к расчету урона по танку. Все эти свойства доступны и через пайтон. Поискать код с ними может так - тыц. Это кстати позволяет пилить моды на анализ бронепробития, например для аимов. Вполне может быть. Либо это косячок у Мастера Моделей в его коде расшифровке havok-файлов, либо именно так ВГ и задумано. Скажу по своему опыту многолетнего изучения механики игры, что там таких "странных" на первый взгляд коллиженов не мало. Ну в этом и разница между игроком, который лупит по визуальной модели, думая что она и есть настоящая и игроком, который изучил коллижены и потому стреляет согласно им )))) Напиши Мастеру Моделей, спроси. Может даст бесплатно доступ, как коллеге-мододелу, чтоб взнос не платить. Что касается вопроса - есть ли различие между havok-коллиженами в клиенте и ими же на сервере - то я склонен думать, что либо нет, либо эти различия не относятся к рассматриваемой механике, а касаются только программной реализации. Почему? Ну потому что у танков клиент-серверная технология. Нет ни какого смысла делать расчеты точнее или подробнее той инфы, которая будет отправлена игроку. В противном случае либо игрок начнет видеть, что его мир отличается мира сервера, либо сервер будет попусту загружен ненужными объёмами данных или ненужными вычислениями, результаты которых будут просто нивелироваться при отправке данных игроку. Вот например кодирование точки попадания. Вот тут я разбирался с координатами попадания. Это номера сегментов модели, коих берется 256 по ширине и по высоте. Такое кодирование означает округление до 1/256. Возникает сразу вопрос, нужно ли на сервере делать расчеты с большей точностью, если игрок в итоге увидит результат с таким округлением? Тут еще стоит поспрашивать Мастера Моделей какие он вносит правки в их отображение. Он ведь может при раскодировки немного вносить свои правки чтоб сделать красивую и понятную визуализацию.
  18. Коллижены можешь посмотреть - тут. Там хорошо виден принцип реализации у картошки. Про механику пробития у картошки можешь почитать - тут (устарело немного) и еще тут в первом посте. Отвечая на твой вопрос о рубках и уроне - у картошки есть слои, которые помечены как слои контроля попадания снаряды в заброневое пространство. Если снаряд такой слой пробивает, то срабатывает флаг попадания в заброневое пространство и включается расчет урона по танку. Чтобы не было "дырок" в танках картошка часто примеяет слои мембраны с толщиной 0 мм, задача которых исключительно контролировать попадание снаряды в заброневое пространство. Например такой слой часто присутствует в башне танка, где закрывает пространство между орудием и краями отверстия башни. Если интересует кодовая часть, то в клиенте игры есть код работы с коллиженами, он в некотором малом роде дублирует серверную часть, т.к. часть неважных проверок и перерасчетов клиент делает сам простреливая коллижены через Collide модели. Ты можешь для начала глянуть вот это. Сам мод вот тут.
  19. Коллижены бронирования и механика их пробития и урона снарядами разных типов.
  20. Что мешает использовать механику пробитий ВГ?
  21. Мы тут тоже не приглашали тебя клоунские темы создавать. Но как видишь никто не против и тебя никуда не гоним. Наоборот даже. Готовы тебе помочь за скромное вознаграждение )))) Ну ОК, удачи в поисках ))))
×
×
  • Create New...