Jump to content
Korean Random

GPCracker

User
  • Posts

    2,827
  • Joined

  • Last visited

  • Days Won

    62

Everything posted by GPCracker

  1. Спасибо, гляну на досуге.
  2. Вот тоже хотел спросить))) Ничего не понял. Что с этими танками не так? AAS НЯЗ на всех танках норм работает, точнее она никак не привязана к какой-либо конкретной машине. Вопрос тут скорее не в том что я не могу сделать хоткей, просто мне нужна достаточная причина для каких-либо изменений. Просто так я ничего не патчу. Постарайся описать подробно, что конкретно на этих танках происходит не так и что "не айс". Что касаемо 140, вафлепазика и иных танков с хорошей настильностью стрельбы, AAS там не особо то и нужна. А вот на танках типа КВ2, 268, СУ-152, Хетцер, и т.д. у кого фугасницы и "навесные" стволы - вот там без подобных вещей сложно стрелять на упреждение.
  3. Чтобы такое замутить, нужно через DAAPI вызывать питон, он грузит что надо, и результат либо сохраняет на диск (не есть хорошо), либо возвращает результатом функции.
  4. Они не сами это рисовали, графвиз. Я сам подобное одно время делал, ну не так красиво правда. Диаграммы джампов. Скрипты сливают инфу в файл, графвиз строит.
  5. @ванючка, в этом разделе есть правила. Оформите тему как положено, иначе модераторы ее просто удалят или закроют.
  6. Если этот метод напрямую управляет GUI - то да, все должно быть ок. Я не использовал его пока, но смысл в принципе понятен. Но лично я повесил бы куда-нибудь на gui.Scaleform.Battle.Battle.afterCreate пост-скриптом (в смысле сначала оригинал, потом мой код). По крайней мере, это первое место, куда я попробовал бы запихнуть инициализацию GUI.
  7. Вобщем-то прикольное решение) Но оно "локально применимо", т.е. не является универсальным. А тут нужно универсальное - во всех модах этот кусок одинаковый. Не хочется "здесь так, там так", ибо путаница будет. Хотя мод сделан так, что переименовывать и перемещать файл ты можешь сам как угодно, главное - не забудь про конфиг. У него должно быть такое же имя и локация, но расширение *.xml. Решения есть, решений достаточно, но все они из разряда костылей в той или иной степени. А костыли обладают особенностью иногда "творить чудеса", да и временами не очень-то и удобны в использовании. Нужно нормально сделать, чтобы потом лишний раз не переделывать и не натыкаться на те же грабли. В любом случае, проблема на текущий момент решаема на стороне пользователей, и по сути критической не является, хотя "приоритет высокий", как говорится.
  8. Ну тоже как вариант. Покопаюсь, посмотрю, может найду чего поинтереснее. Было бы неплохо в дебаг режиме + сплит скрин запустить, и логи параллельно помониторить. Ты не поверишь, но не менялось практически ничего. А то что клиент ругается на память - позакрывай все, что не нужно на компе, отключи все ненужные службы и т.д. Гайдов в инете хватает. Или просто докинь планку)) Желательно бы. По крайней мере после тех, кто "вандализмом" занимается)))
  9. Возможно, какие-то другие корректирующие скрипты. Мододелы друг друга не отслеживают, моды делаются под чистый клиент обычно. Нужно смотреть список модов-скриптов или лог питона. Это по-русски называется "костыль". Тогда уж проще сам скрипт переименовать и конфиг вместе с ним. Нужно по-нормальному делать как-то. Как - пока не ясно, копать код загрузчиков надо, смотреть порядок импорта модулей. Кстати, если запустить принт-класс в meta_paths (ЕМНИП)... М.б. сработает, в чистом питоне норм фурычит. Буду на винде, попробую что-нибудь нацарапать.)
  10. Конкретно, пожалуйста, где не хватает хоткеев? Вроде везде, где они реально нужны, их уже давно впилили. Вобщем, походу нужно будет как-то по-другому это делать... слишком частые фейлы и большая разница в значениях у всех. Как бы отловить момент, когда все моды будут прогружены и стартануть свое сразу после этого... Выставляйте значение примерно равное времени загрузки игры (от двойного клика по ярлыку до появления полей логин-пароль). Думаю, в режиме игры (не реплей) все должно быть ок. В крайнем случае можно несколько сек подождать перед кликом Войти... или просто забить на сообщение в ангаре, выставив значение побольше. Как-то так. Придумаю, как грамотно впилить патч - запилю обнову.
  11. @Megagrob, , У класса PlayerAvatar и PlayerAccount есть одинаковые методы. __init__ - инициализация классов. Тут все понятно. Если включить лог в дебаг-режим, там будет сообщение. onBecomePlayer - скорее всего выполняется когда экземпляр класса (объект) становится значением BigWorld.player(). Это событие, ЕМНИП и НЯП, происходит еще до начала загрузки соответствующего спейса или одновременно с ним. onBecomeNonPlayer - обратное событие. PlayerAvatar.onEnterWorld - игрок попал в "мир". Техника ЕМНИП прогружается позже. Это можно посмотреть в логе в дебаг-режиме. PlayerAvatar.onLeaveWorld - обратное событие. Часть методов классов PlayerAvatar и PlayerAccount вызываются из С, НЯП, поскольку их вызовов в питоне не находил. Вешать на эти методы отображение GUI не стоит. Его лучше вешать на загрузку боевого/ангарного интерфейса, точнее на его показ (populate). Так сказать "подобное к подобному". Одна из ключевых оптимизаций картохи за последнее время - они ускорили загрузку боя и интерфейса ... путем того что он стал грузиться не полностью сразу, а поэтапно. А загрузочный экран, как я понял, пропадает, когда загрузится боевая флешка, ему на замену. Ну все заметили, что иногда компоненты на экране появляются не сразу, а поочередно. Тут хрен разберешься, если честно, столько ненужного кода наворотили... Как будто платят разрабам "построчно".
  12. WoTScriptTerminal - этот проект лежит в разделе для разработчиков (по крайней мере там в основном сидят либо разработчики модов, либо те кто пытается научиться их писать) ActionScript & Python (он соседний кстати), искать долго не придется, тема закреплена)) Смысл - пишешь в редакторе скрипт, коннектишься к танкам или просто к питон-среде, тыкаешь хоткей или менюшку и вуаля - он выполняется в удаленной среде. Инструмент для отладки кусков кода модов, тестирования классов и т.д. Без подобных инструментов придется дохрена раз перезапускать клиент, ... ну ты понял. То же самое умеет делать и Орион - только Орион - это отдельная приложуха, а у меня плагин для SublimeText3. Соответственно, ты работаешь в редакторе как обычно, только можно сразу из него запускать код. Ну а поскольку ST кроссплатформенный (запускается и на винде, и на линуксе, на последнем кстати стабильнее работает, на первом немного графика покрасивше), то в принципе никаких "костылей" и т.д. типо Wine (при работе на линуксе) не требуется. Можно вообще коннектиться к другому компу и удаленно выполнять скрипты (ну или даже через nc или telnet просто логи смотреть), правда только по безопасной локалке, т.к. протокол открытый. Короче, это очень нужная в процессе разработки штука (по крайней мере для меня). MGM - Minimap Gun Markers - маркеры орудий на миникарте, ссылка у меня в подписи есть.
  13. Если честно, мне не особо хочется напрягаться с флешками, хотя я в принципе и знаю, как их собирать. Есть правда некоторые вопросы по созданию нужных кнопок в ангаре. Если удастся придумать что-то стабильное, без тонны неудобного кода и "без мусора" в репо (а он там нафиг не нужен) - может и сделаю что-то. Хотя конечно маловероятно, параметров многовато, логика "настройщика" будет как половина мода, если не столько же кода. В любом случае, я с флешками особо не работал, так что неприоритетно пока. Есть задачи более важные - нужно собрать остальные моды... Да и на ту же AAS накопилось уже задач на реализацию. То что там апдейт недавно был - так это всего лишь фикс совместимости, чтобы AAS и новый ED вместе работать могли, ибо либа у них общая. То, что там добавлено - это фичи новой версии либы, либо порт (перенос) нововведений базового кода в ED. На текущий момент есть задача по выводу в релиз WoTScriptTerminal, и оптимизация MGM.
  14. Этот параметр имеет весьма прозрачный смысл. Моды грузятся по порядку. Значение - время в секундах, которое пройдет от момента загрузки мода до установки хуков. За это время должны прогрузиться все остальные моды. Значение может быть любым, и зависит от мощности твоей машины. Но хуки должны установиться ДО входа в бой (реплей) или в ангар, иначе мод будет работать некорректно. Причина переделки - некорректная работа ED в реплеях. Там хуки ставятся по колобку через 3 сек, а отсчет начинается после входа в бой. А хук ставится на метод входа в бой. Короче, хук ставится после вызова метода, т.е. опаздывает. Как результат - не выставлялись цвета контуров и не стартовал менеджер техники (ну это топовый класс, который отвечает за проведение техники по фильтрам, и т.д.). Теперь отсчет 3 сек начинается сразу после импорта модуля (раньше), поэтому значение нужно увеличивать. Какое среднее оптимальное значение я пока не знаю, со временем соберется фидбек - обновлю конфиг в репо. Отсутствие надписей и пустая инфо-панель скорее всего связана с полной перегрузкой метода Aim._update(), и виноват скорее всего прицельный скрипт. Все эти танцы с бубном задержкой появились в свое время из-за файла MS.pyc - прицельного скрипта, еще очень старые версии. Сомневаюсь, что кто-то менял там что-то с тех пор в плане хуков. Тогда еще кто-то кажется с 4ки пересобирал скрипт, делал название ZAASMX.py ему, чтобы поставить его последним на загрузку. Ну как и предполагал, сразу не увидел))
  15. Абсолютно неактуально. Все, что можно было сделать раньше, можно сделать и сейчас, только придется немного подумать, не совсем все так прозрачно и очевидно. Но и вариативности с настройками тоже неслабо прибавилось.
  16. Попробуй выставить hookInjectTimeout поболе. М.б. поможет. Если у тебя слабая машина, то некоторые моды могут воткнуть свой хук после моего (потому что все вместе долго грузится), и мое может не работать (потому что не все мододелы умеют нормально ставить хуки). Для этого и задержка. Из-за проблем с реплеями я перенес задержку с колобка в тред, потому что первый стартует на реплее уже после старта спейса, что не есть хорошо в некоторых случаях.
  17. Вот из-за такой вот шляпы, когда какой-то Васян делает тебе полную перегрузку метода после того как ты на него хук поставил (иными словами, своими нубо-действиями неосознанно выпиливает твой хук нафиг) и приходится извращаться различным образом, чтобы ставить хук после этого Васи. Уважайте других мододелов, не делайте полную перегрузку методов вместо хуков, если без этого можно обойтись!
  18. 0.1.1 Release [29.01.2015] - обновление совместимости под новую версию библиотеки X-Mod. - добавлена возможность инверсии нажатия клавиш (обработчик клавиатуры). - унифицированы некоторые моменты при обработке клавиатуры, упрощена структура конечного кода. - упрощены и унифицированы некоторые моменты на уровне установки хуков. - задержка при установке хуков больше не использует BigWorld.callback(). - добавлен контроль версий библиотеки X-Mod. Мод будет загружаться только на поддерживаемых версиях библиотеки. Ссылки на файлы опубликованы в шапке темы. Автор выражает благодарность за помощь в тестировании и отладке релиза 0.1.1: @vasbelous, @snechinskij, @Scharfhobel, @refaol
  19. 0.1.0 Release [29.01.2016] - мод полностью переписан, перенесен на новую версию X-Mod. - библиотека X-Mod теперь является необходимым внешним модулем, а не интегрируется в мод (по техническим причинам). - полностью переработана система сборки и архитектура мода. - миграция репозитория (обновление является созданием репозитория "с нуля", а не изменениями к предыдущему, это обусловлено слишком большой разницей между версиями). - полностью заменены все ключевые алгоритмы работы мода. - полностью переработан файл конфигурации. Ссылки на файлы опубликованы в шапке темы. Автор выражает благодарность за помощь в тестировании и отладке релиза 0.1.0: @vasbelous, @snechinskij, @Scharfhobel, @refaol
  20. PNG нельзя. Только текстуры. Максимум BMP и то не факт, что прокатит. Так что придется ручками DDS делать или конвертер толковый юзать. Да, и как выше писали, есть еще вопрос с тайлингами. Насчет разработки - пока ничего сказать не могу, чего пилить и так хватает, можно сказать даже очередь. А так тема интересная.
  21. Ну можно и в одну-две написать. В режиме кнопки (switch = False) хоткей работает на удерживание, в режиме переключателя (switch = True) на нажатие. В режиме без инверсии (invert = False) активация/переключение при нажатии, в инвертированном режиме (invert = True) - при отпускании. Выше я подробно рассказал, откуда такое берется и почему, и с примерами. На самом деле все реально просто))
  22. Интересно, как? Если инфу о противниках тебе отправляет сервер? Если он не считает танк видимым для твоей команды, то он тебе про него ничего и не скажет. Если это хак сервера, так его залатают первым же микропатчем, ибо буча на оф. форуме неслабая будет. Ну если этот "мод" в паблик выйдет, конечно.
  23. Примерно так и подумал.)) Что-то уж больно знакомая кнопка)) До них я уже тоже докопался, скажем так "обратил внимание на XML с подозрительно знакомым названием и локацией". Но это не такая большая проблема, есть некоторые соображения по поводу (точнее даже готовые способы) ее решения. Правда походу придется глубоковато закопаться для решения этого вопроса без прямой модификации файлов игры... В принципе, если это дело впилить на нормальные рельсы, может довольно неплохо получиться)) З.Ы. Наверняка многие подумали, что неплохо бы запилить розовый камуфляж... для артоб*****:)) З.Ы.Ы. И всем ракам ярко-красный)
×
×
  • Create New...