Jump to content
Korean Random

Leaderboard


Popular Content

Showing content with the highest reputation on 10/07/2019 in Posts

  1. 3 points
    Обновлено под WoT 1.6.1 Updated for WoT 1.6.1 https://bitbucket.org/openwg/wot.wwise/downloads/ WoT_sound_mod_1.6.1_ru.zipWoT_sound_mod_1.6.1_en.zip
  2. 1 point
    Итак, товарищи пользователи. Спустя два дня интенсивного кодинга и два вечера не менее интенсивной мигрени (вчера и сегодня) я переписал весь код мода практически с нуля. Ужался он всего на 25 строк, но это не отменяет того факта, что всякие нелогичности были из него вышлифованы. Оставался маленький проблема - почему-то после переписывания не хотели работать команды по горячей клавише (как выяснилось, я в одном месте тупо получал BigWorld.target().id, не проверив сначала, а не None ли мне вернули). Ради отладки я натыкал принтов в код и пошёл в очередной бой на общем тесте. И почти тут же словил нехилые фризы. Бой и без меня его турбослили со счётом 2:11 ко второй минуте, так что я даже не переживаю. Полез смотреть. Увидел кучу-кучу-кучу по кругу выводящихся одних и тех же объектов и фалломорфировал. Полез снова в код. И что же я вижу в обработчике горячих клавиш? commandsList = self.selectedCommands.get('hotkeyOnly', []) # получить список команд из блока hotkeyOnly menuConf, _ = self.findBestFitConf() # найти подходящую к текущей ситуации конфигурацию самого меню if menuConf is not None: # если такая есть: commandsList.extend(menuConf.get(state, [])) # в зависимости от state, определяемого тем, на что я смотрю, добавить к этому списку остальные команды for command in commandsList: # для каждой команды в получившемся списке if command and command.handleKeys(command.hotKeys, event.key): # если команда не пустая и были прожаты соответствующие ей клавиши command.onCustomAction(target.id if target is not None else None, True) # пнуть команду, мол, работай. Подвох не видно на первый взгляд, да? Вот и я его не видел несколько патчей. А подвох заключается в том, что при каждом нажатии любой клавиши в список hotkeyOnly складывался текущий список команд радиалки. Сколько примерно раз за бой ты нажимаешь на клавиатуру за бой, анон? Вот. Каждое нажатие - плюс минимум 6 объектов, которые надо проверить. За несколько боёв их набиралось достаточное количество, чтобы начать вызывать проблемы. Фикс вышел на три символа. Приписать "[:]" к первой строке в приведённом кусочке. То есть - создавать копию списка hotkeyOnly, которая автоматически удалится после завершения работы обработчика, вместо того, чтобы в памяти висеть и разрастаться. Энивей. Завтра патч выходит. Вот завтра новую версию вам и выкачу. Я, кстати, перепилил структуру работы мода в плане очереди выполнения команд, так что теперь ошибок типа "слишком часто тыкаете команды", если разными командами начать спамить, быть не должно. P.S. Посмотрел git blame по строкам, отвечавшим за обработку горячих клавиш. Они были неизменными с момента изначального написания мода. По крайней мере, в моём гит-репозитории, созданном 11.12.2016 года, код "в начале времён" уже лежит с багом. Так что утечка памяти и производительности при нажатии клавиш была в моде в течение почти 3 (ТРЁХ) лет. Но почему-то узнал я о ней относительно недавно... P.P.S. Перезагрузка конфига (достаточно было просто открыть окно настроек) помогала, потому что при перезагрузке "память" мода - а вместе с ней - и блок hotkeyOnly - полностью очищается и считывается из конфиг-файлов заново. Список с кучей копий одних и тех же команд тупо удаляло, поэтому производительность возвращалась.
  3. 1 point
    Обновление 1.2.3 1. Добавлена поддержка клиента 1.6.1 с новой структурой папок 2. Добавлено сообщение о неполном сканировании, если не удалось подключиться к серверу обновлений игры 3. Добавлены ссылки на скачивание WOTLauncher и WG_Check для ASIA-региона. ЗЫ: Проверить полноценную работу программы с 1.6.1 можно будет только когда выйдет релиз клиента игры. Так как WMCleaner не может загружать данные с сервера обновлений CT-клиента, ибо этого сервера просто нет. Потому СТ-клиенте 1.6.1 он сейчас чистит, но глубокое его сканирование делать не может.
  4. 1 point
  5. 1 point
    Обновление будет, не беспокойтесь. Я, на самом деле, уже его сделал, но чтобы его починить, пришлось малость переорганизовать то, что там в коде творилось. Теперь я хотя бы быстро могу найти ту часть, в которой происходит то, что мне нужно, ага. А вообще совет. Заглядывайте на https://github.com/PolyacovYury/PYmods/network и проверяйте названия коммитов. Если что-то требовало ремонта и уже починено под патч - оно всегда будет в ветке develop_CT.
  6. 1 point
    @OveRSeeD реплей остался? там их вообще отключить нужно, как по мне. ---- реплей не надо - нашёл. ---- такс, со дня изготовления конфига для маркеров много утекло воды. Нужно подумать, как получше для ГС сделать
  7. 1 point
    так это тебе ещё нужно иконки с статистике подвинуть. Укаказать дефолтные значения: "vehicleIconOffsetXLeft" 0, "vehicleIconOffsetXRight" 0, статистику тоже можно подвигать (поля statistics..., bgLeft, bgRight), но лучше не лезть - там всё настроено. "x" // положение поля по горизонтали (ось X)
  8. 1 point
    шапка темы -> опции -> "если в ушах свои иконки" так как отключалок поля "enabled" я не делал, просто закомментируй лишние ссылки: battleLoading.xc, battleLoadingTips.xc, statisticForm.xc "extraFieldsLeft": [ //${ "def.vehicleNameLeft" }, //${ "def.vehicleType" }, или в лишние поля можешь сам отлючалку дописать: "vehicleNameLeft": { "enabled": false, // false - поле отключено
  9. 1 point
    Добавление альтернативных и исторических флагов, а также флагов непризнанных государств не планируется.
  10. -1 points
    Блокировщик рекламы не пускает по этим ссылкам. Можете описать, что там? Случайно не цыганско-виндовые заклинания?
×
×
  • Create New...