Перейти к содержимому
Korean Random

ktulho

Премиум пользователь
  • Публикации

    6 830
  • Зарегистрирован

  • Посещение

  • Дней в лидерах

    177

Все публикации пользователя ktulho

  1. Программа позволяет разрезать Atlas на отдельные файлы, и соединять отдельный файлы в Atlas. Для разрезания Atlas необходимо: 1) На панели "Разделить" нажать кнопку "Обзор..."; 2) В появившемся диалоге выбрать файл изображения атласа (xml файл должен находиться в этой же папке); 3) Затем нажать кнопку "Разрезать". После этого, в каталоге с атласом, создастся каталог с названием атласа, в котором будут находиться полученные файлы. Для создания атласа из отдельных файлов необходимо: 1) На панели "Соединить" нажать кнопку "Обзор..."; 2) В появившемся диалоге выбрать каталог с изображениями; 3) Затем нажать кнопку "Создать". После этого, в выбранном каталоге, создастся папка с названием "Atlas", в котором и будут находиться файлы атласа. Имя созданных файлов атласа, такое же, как у выбранного каталога. В патче 0.9.23.0 Wargaming решила перевести атласы с формата PNG в DDS c сжатием DXT5. Формат сжатия DXT5 подразумевает сжатие с потерями, то есть ухудшение качества изображения. В связи с этим рекомендую сохранить ваши атласы из патча 0.9.22.0 и создавать новые из них путем добавления недостающих картинок. Версия: 1.0.2.7 Исправлено: размеры подизображений. Скачать: Программа CCAtlas_1.0.2.7.zip Атласы патча 0.9.22.0 Atlases_0.9.22.0.rar Атлас (без потери качества) и инструкция от @night_dragon_on. Выложил на BitBucket.
  2. Цветные иконки танков в дереве исследований, результатах боя и в окне взвода. Подсмотрено у Aslain. '1 Вариант.' '7 Вариант.' 'Коричневая САУ' Автор идеи золотых иконок JimKazama
  3. Данную программу создал Romkyns, за что ему большое спасибо. Также, в расширении функционала и поддержки работоспособности были замечены @BufferOverflow, @Lesic, @seriych, @uMKa_13 (если кого не заметил, извеняйте). На официальном сайте программы можно познакомиться с основными возможностями программы, а также скачать последний релиз программы. Тестовую версию программы можно скачать отсюда. Ниже я рассмотрю некоторые возможности данной программы на конкретных примерах. Пример 1. Создание стиля иконок для панели игроков, экрана загрузки и панели статистики вызываемой по клавише TAB. Пример 2. Создание камуфлированных иконок техники для карусели. Сохранение иконок в файлы и атласы. Отключение зеркальности. В этом сообщении от @BufferOverflow рассмотрено несколько нестандартных эффектов (эффект прозрачность, эффект слой-маска, эффект Размер/положение). Еще одна инструкция от @BufferOverflow. Сохранение и массовое сохранение. Как сохранять иконки в полном и укороченном названии техники вместо идентификатора от @BufferOverflow. Системные требования: .NET Framework версии 4.0 или выше. Visual C++ 2012 Redistributable. Visual C++ 2013 Redistributable.
  4. Данная модификация позволяет отображать статистику выбранной техники с помощью виджетов. Макросы статистики: {{py:vs.armorEfficiency(typeStats)}} - эффективность использования брони. {{py:vs.avgDamage(typeStats)}} - средний урон за бой. {{py:vs.avgDamageAssistedStun(typeStats)}} - средний урон по оглушенной вами технике за бой. {{py:vs.avgDamageBlocked(typeStats)}} - средний заблокированный урон за бой. {{py:vs.avgDamageReceived(typeStats)}} - средний полученный урон за бой. {{py:vs.avgEnemiesSpotted(typeStats)}} - среднее количество обнаруженной техники за бой. {{py:vs.avgFrags(typeStats)}} - среднее количество уничтоженной вами техники за бой. {{py:vs.avgStunNumber(typeStats)}} - среднее количество оглушений за бой. {{py:vs.avgXP(typeStats)}} - среднее количество опыта за бой. {{py:vs.battlesCount(typeStats)}} - количество боев. {{py:vs.battlesCountVer2(typeStats)}} - ? {{py:vs.battlesCountVer3(typeStats)}} - ? {{py:vs.battlesCountWithStun(typeStats)}} - количество боев после патча 0.9.18? {{py:vs.capturePoints(typeStats)}} - количество очков захвата. {{py:vs.damageAssistedEfficiency(typeStats)}} - урон нанесенный с вашей помощью. {{py:vs.damageAssistedRadio(typeStats)}} - урон нанесенный по засвеченной вами технике. {{py:vs.damageAssistedTrack(typeStats)}} - урон нанесенный по технике, у которой вы сбили гуслю. {{py:vs.damageBlockedByArmor(typeStats)}} - количество заблокированного урона. {{py:vs.damageDealt(typeStats)}} - нанесено урона. {{py:vs.damageEfficiency(typeStats)}} - коэффициент урона. {{py:vs.damageReceived(typeStats)}} - получено урона. {{py:vs.deathsCount(typeStats)}} - количество смертей. {{py:vs.drawsCount(typeStats)}} - ? {{py:vs.droppedCapturePoints(typeStats)}} - количество сбитых очков захвата. {{py:vs.frags8p(typeStats)}} - ? {{py:vs.fragsCount(typeStats)}} - количество уничтоженной техники. {{py:vs.fragsEfficiency(typeStats)}} - отношение уничтоженной техники к количеству смертей? {{py:vs.heHits(typeStats)}} - количество попаданий осколочными снарядами. {{py:vs.heHitsReceived(typeStats)}} - количество полученный попаданий осколочными снарядами. {{py:vs.hitsCount(typeStats)}} - количество попаданий. {{py:vs.hitsEfficiency(typeStats)}} - точность. {{py:vs.lossesCount(typeStats)}} - количество промахов. {{py:vs.lossesEfficiency(typeStats)}} - ? {{py:vs.noDamageShotsReceived(typeStats)}} - получено попаданий без урона. {{py:vs.originalXP(typeStats)}} - чистый опыт? {{py:vs.pierced(typeStats)}} - количество пробитий. {{py:vs.piercedReceived(typeStats)}} - количество полученных пробитий. {{py:vs.potentialDamageReceived(typeStats)}} - ? {{py:vs.record(typeStats)}} - ? {{py:vs.shotsCount(typeStats)}} - количество выстрелов. {{py:vs.shotsReceived(typeStats)}} - количество полученных выстрелов. {{py:vs.spottedEnemiesCount(typeStats)}} - количество обнаруженных противников. {{py:vs.stunNumber(typeStats)}} - количество оглушений. {{py:vs.survivalEfficiency(typeStats)}} - выживаемость. {{py:vs.survivedBattlesCount(typeStats)}} - количество боев в которых вы выжили. {{py:vs.winAndSurvived(typeStats)}} - ? {{py:vs.winsCount(typeStats)}} - количество побед. {{py:vs.winsEfficiency(typeStats)}} - отношение количества побед к количеству боев. {{py:vs.XP(typeStats)}} - опыт. Макросы: {{py:vs.highlight(typeStats)}} - возвращает "highlight", если курсор находится над полем, иначе пусто. В поле должны быть описаны события "mouseOver" и "mouseOut". {{py:vs.selected(typeStats)}} - возвращает "selected", если над полем была нажата ЛКМ, иначе пусто. В поле должны быть описаны события "mouseDown" . Обработчики событий мыши: Для события "mouseDown" - "XXX_Down". Для события "mouseOver" - "XXX_Over". Для события "mouseOut" - "XXX_Out". Вместо XXX необходимо подставить одно из следующих значений: clan, company, epicRandomn, fallout, fortBattles, fortSorties, globalMap, random, ranked, rated7x7, team7x7, total, minimize. Параметр typeStats может принимать следующие значения: 'Clan' - клановая статистика ?, 'Company' - статистика ротные бои, 'EpicRandom' - статистика генеральных сражений, 'Fallout', 'FortBattles' - статистика наступлений в укрепрайонах, 'FortSorties' - статистика вылазок в укрепрайонах, 'GlobalMap' - статистика боев на глобальной карте, 'Random' - статистика случайных боев, 'Ranked' - статистика ранговых боев, 'Rated7x7' - статистика командных боев в Ладдере, 'Team7x7' - командные бои, 'Total' - общая статистика 'Minimize' - свернуть. Событие для обновления виджета: PY(ON_SELECTED_VEHICLE) - вызывается при выборе техники в каруселе; PY(ON_CLAN) PY(ON_COMPANY) PY(ON_EPIC_RANDOM) PY(ON_FALLOUT) PY(ON_FORT_BATTLES) PY(ON_FORT_SORTIES) PY(ON_GLOBAL_MAP) PY(ON_RANDOM) PY(ON_RANKED) PY(ON_RATED7X7) PY(ON_TEAM7X7) PY(ON_TOTAL) PY(ON_MINIMIZE) Пример использования: 1) Добавить в файл widgets.xc в секцию "lobby" следующий текст: ${ "widgetVehStats.xc":"vehicleStats" } 2) Скопировать файл widgetVehStats.xc в папку с вашим конфигом widgetVehStats.xc 3) Скрипт vechicleStats.py скопировать в папку \res_mods\configs\xvm\py_macro\ 4) Результат: Скрипт: vechicleStats.py
  5. ktulho

    DamageIndicator средствами XVM

    Обновил battleDamageIndicatorApp.swf в шапке.
  6. Я уже выкладывал данную модификацию в теме "Динамические макросы в Python". Немного доработал ее и решил оформить в отдельную тему. Данная модификация позволяет выводить картинку, в тот момент когда отображаются индикаторы урона, а также увеличивает время отображения индикатора повреждения до 12 секунд. 'Изображения' Описание: данная модификация добавляет два макроса: {{py:xvm.damageIndicator}} - возвращает 100, если в данный момент отображается индикатор урона, иначе - 0; {{py:xvm.damageIndicator_aim}} - возвращает "aim", если в данный момент индикатор урона находится по центру, иначе - пусто. Установка: 1) В файле battleLabelsTemplates.xc добавляем: "damageIndicator": { "enabled": true, "updateEvent": "PY(ON_DAMAGE_INDICATOR)", "x": 0, "y": 65, "width": 363, "height": 90, "alpha": "{{py:xvm.damageIndicator}}", "screenHAlign": "center", "format": "<img src='xvm://res/{{py:xvm.damageIndicator_aim|CentrDI}}.png'>" }, 2) В файле battleLabels.xc добавляем: ${ "battleLabelsTemplates.xc":"def.damageIndicator" }, 3) Файл damage_indicator.py копируем в папку \res_mods\configs\xvm\py_macro\. damage_indicator.py 4) Файлы CentrDI.png и aim.png копируем в папку \res_mods\mods\shared_resources\xvm\res\ CentrDI.rar 5) К сожалению, только питоном, не увеличить время отображения индикатора. Поэтому копируем файл battleDamageIndicatorApp.swf в \res_mods\Х.Х.Х.Х\gui\flash\ battleDamageIndicatorApp.swf Подобрать атлас damageIndicator вы можете в этой теме.
  7. Данное дополнение позволяет выводить информацию об активных личных резервах в ангаре и в бою. Макросы: {{py:bst.leftTime(index)}} - оставшееся время действия активного резерва. {{py:bst.leftTimeMin(index, norm)}} - оставшееся время действия активного резерва в минутах. Если параметр norm не задан, то возвращаются оставшееся время в минутах. {{py:bst.name(index)}} - название активного резерва. {{py:bst.countBoosters}} - количество активных резервов. {{py:bst.type(index)}} - тип активных резервов. Может возвращать одно из следующих значений: booster_gold, booster_credits, booster_xp, booster_crew_xp, booster_free_xp. Параметр index - номер активного резерва от 1 до 3. Если значение index равно 0, то возвращается значения для резерва, время действия которого наименьшее. Установка: В файле @xvm.xc добавить: "boosters": ${"boosters.xc":"boosters"}, Файл boosters.xc скопировать в папку с вашим кофигом (например в \res_mods\configs\xvm\default\). Файл boosters.py скопировать в \res_mods\configs\xvm\py_macro\ Пример использования в ангаре (разрешение 1920х1200). В файле widgets.xc в секцию "lobby" добавить: ${ "widgetsTemplates.xc":"booster" } В файле widgetsTemplates.xc добавить: "booster": { "enabled": true, "layer": "top", "type": "extrafield", "formats": [ { "updateEvent": "ON_EVERY_SECOND", "x": 430, "y": 0, "width": 400, "height": 80, "textFormat": { "color": "0xA8A888", "size": 12}, "format": "<textformat tabstops='[50]'>{{py:bst.leftTime(1)}}<tab>{{py:bst.name(1)}}</textformat>\n<textformat tabstops='[50]'>{{py:bst.leftTime(2)}}<tab>{{py:bst.name(2)}}</textformat>\n<textformat tabstops='[50]'>{{py:bst.leftTime(3)}}<tab>{{py:bst.name(3)}}</textformat>" } ] } В файл hangar.xc в секцию "hangar" добавить: //true - скрыть иконку и время активных резервов "hideActiveBooster": false, Результат (вверху посередине картинки): Скачать: Скрипт: boosters.py Конфиг: boosters.xc
  8. Данная тема предназначена для обсуждения лога повреждений, входящего в состав XVM. Часто задаваемые вопросы: В) Как отключить лог повреждений? О) В файле battleLabelsTemplates.xc установить параметр "enabled" значение false: В) Как включить стандартный (WG) детальный и суммарный урон? О) В файле damageLog.xc указанным ниже параметрам присвоить значение false: Тема с конфигурациями для damageLog.
  9. ktulho

    Активация нового акк

    Сначала разлогиньтесь на сайте WorldOfTanks, затем активируйте на сайте XVM.
  10. ktulho

    Активация нового акк

    @Butik вы не можете активировать XVM? Или зайти в игру?
  11. ktulho

    damageLog средствами XVM.

    Нажимаете ctrl, перемещаете указатель мыши на damageLog и крутите колесо мышки. P.S. должен быть установлен XVM build 8709 или выше.
  12. ktulho

    Добавьте флаг СССР

    Ответ.
  13. Приступаем к тестированию hitLog созданного с помощью py_macro. Самое время предложить свои хотелки. Подключение: Поддерживаемые макросы перечислены в файл py_hitLog.xc. Если кто хочет, то отредактируйте описание. Скачать: hit_log.py hitLog.py py_hitLog.xc
  14. ktulho

    hitLog (py_macro)

    Можно. Только не уверен, что все криты будут отображаться. Добавил: {{critical-hit}} - TO DO / возвращает 'crit', если было нанесено критическое повреждение, иначе пусто. Обновил в шапке темы скрипт hitLog.py.
  15. ktulho

    hitLog (py_macro)

    @Sergei Nik никаких новых секций добавлять не надо, они ни на что не будут влиять. Вам надо в нужном месте в параметре "formatHistory" добавить: <img src='cfg://Chesss/img/DamageLog/{{splash-hit?осколки|1}}.png' width='20' height='20' align='baseline' vspace='-14'>
  16. ktulho

    hitLog (py_macro)

    Покажите что написали.
  17. ktulho

    damageLog средствами XVM.

    Запулил. Для включения данной функции, необходимо в файле battleLabelsTemplates.xc в секции "damageLog"->"mouseEvents" добавить: "mouseWheel": "dLog_mouseWheel"
  18. ktulho

    Problem with XVM error #1009

    Перед тем как прикрепить логи, нужно выйти из игры.
  19. ktulho

    [Карусель танков / Tank carousel]

    Да, xTE. Это не XVM. Добавить в файл carouselNormal.xc в секцию "extraFields", поле. Например: { "enabled": true, "x": 17, "y": 95, "format": "<b><font face='$FieldFont' size='12' color='{{v.c_xte|#CFCFCF}}'>{{v.xte%d}}</font></b>" }, Координаты x и y подберите сами.
  20. ktulho

    [Карусель танков / Tank carousel]

    В XVM нет рейтинга WN8 по танку.
  21. Скрипте sight.py обеспечивает: отображение сферы разлета осколков фугасных снарядов; скрытие\отображение стандартных элементов прицела,на данный момент; макросы: {{py:sight.distance}} - дальность полета снаряда (в метрах); {{py:sight.timeFlight}} - время полета снарядов (в секундах); {{py:sight.timeAIM}} - время до полного сведения (в секундах); {{py:sight.cameraHeight}} - высота камеры относительно точки прицеливания; PY(ON_MARKER_POSITION) - событие для перечисленных выше макросов. Макросы плавного перехода цветов: {{sight.dynamic_colorRGB(color_100, color_0, percent, maximum)}} {{sight.dynamic_colorRBG(color_100, color_0, percent, maximum)}} {{sight.dynamic_colorGRB(color_100, color_0, percent, maximum)}} {{sight.dynamic_colorGBR(color_100, color_0, percent, maximum)}} {{sight.dynamic_colorBRG(color_100, color_0, percent, maximum)}} {{sight.dynamic_colorBGR(color_100, color_0, percent, maximum)}} Если параметр maximum не задан, то считается что он равен 100. Программа для облегчения выбора нужного вам макроса: Color.rar Скрипт: sight.py Файл конфига: sight.xc Информация о захваченной цели: {{py:sight.autoAimName}} - никнейм игрока находящегося в автоприцеле; {{py:sight.autoAimVehicle}} - название техники находящейся в автоприцеле; {{py:sight.autoAimHealth}} - количество очков прочности техники находящейся в автоприцеле. PY(ON_AUTO_AIM) - событие срабатывает при захвате техники в автоприцел. Выделение техники находящейся в автозахвате. Для подключение данного функционала необходимо скопировать содержимое архива markers.zip скопировать в папку res_mods\mods\shared_resources\xvm\res\ Архив с маркером: markers.zip Скрипт: infoAutoAim.py Информация о технике в прицеле: {{py:sight.nameTarget}} - никнейм игрока находящегося в прицеле; {{py:sight.vehicleTarget}} - название техники находящейся в прицеле; {{py:sight.vehNameTarget}} - название техники находящейся в прицеле в системе (usa-M24_Chaffee); {{py:sight.vtypeTarget}} - тип техники находящейся в прицеле (текстовые подстановки из секции vtype файла texts.xc); {{py:sight.c_vtypeTarget}} - цвет по типу техники находящейся в прицеле (текстовые подстановки из секции vtype файла colors.xc); {{py:sight.reloadTarget}} - время перезарядки техники находящейся в прицеле; {{py:sight.visionRadiusTarget}} - обзор техники находящейся в прицеле; {{py:sight.distanceTarget}} - расстояние до цели. PY(ON_TARGET) - событие срабатывает при наведении на цель. Скрипт: targetInfo.py Информация о текущем снаряде: {{py:sight.shellType}} - тип заряженного снаряда; {{py:sight.goldShell}} - возвращает 'gold' если снаряд можно купить за золото, иначе - пусто; {{py:sight.shellSpeed}} - скорость полета снаряда; {{py:sight.piercingShell}} - бронепробиваемость снаряда; {{py:sight.explosionRadiusShell}} - радиус разлета осколков снаряда; {{py:sight.damageShell}} - урон снарядом; {{py:sight.caliberShell}} - калибр снаряда. PY(ON_AMMO_CHANGED) - событие срабатывает при смене слота снарядов. Скрипт: infoChargedShell.py Режим прицела: {{py:sight.cameraMode}} - возвращает 'arc' - в аркадном , 'sn' - в снайперском, 'str' - в стратегическом (артиллерийском) режиме прицела; {{py:sight.sight_y(shift)}} - координата y, в зависимости от режима прицела, параметр 'shift' задает смещение от центра прицела. {{py:sight.siegeMode}} - возвращает 'siege' если техника находится в осадном режиме, иначе пусто; PY(ON_CAMERA_MODE) - событие срабатывает при смене режима прицела. Скрипт: aimingSystem.py Количество снарядов: {{py:sight.quantityShells}} - количество оставшихся снарядов; {{py:sight.quantityInClipShells}} - количество оставшихся снарядов в барабане; {{py:sight.quantityInClipShellsMax}} - максимальное количество снарядов в барабане; {{py:sight.burst}} - количество снарядов, выстреливаемых за одну очередь; PY(ON_AMMO_COUNT) - при изменении количества снарядов в активном слоте. Скрипт: quantityShells.py Перезарядка орудия: {{py:sight.leftTime(norm)}} - если параметр 'norm' не задан, то возвращается время оставшееся до конца перезарядки (в секундах). Иначе возвращается нормализованное значение. Для техники с механизмом дозарядки снаряда, возвращается время (нормализованное значение) оставшееся до конца перезарядки текущего снаряда. {{py:sight.reloadTime}} - время перезарядки (в секундах) Для техники с механизмом дозарядки снаряда, возвращается время перезарядки текущего снаряда. {{py:sight.reloadTimeClip}} - время перезарядки между снарядами в барабане (в секундах). {{py:sight.isIncreasedReload}} - возвращает #FF0000, если увеличено время перезарядки орудия (крит боеукладки, заряжающего и т.д.), иначе пусто. {{py:sight.isAutoReload}} - возвращает 'auto' для техники с механизмом дозарядки, иначе пусто. {{py:sight.aLeftTime(norm)}} - если параметр 'norm' не задан, то возвращается время оставшееся до конца перезарядки всего барабана (в секундах). Иначе возвращается нормализованное значение. Макрос возвращает значение только для техники с механизмом дозарядки, для остальной техники возвращает пусто.{{py:sight.aReloadTime}} - время перезарядки всего барабана (в секундах). Макрос возвращает значение только для техники с механизмом дозарядки, для остальной техники возвращает пусто. {{py:sight.leftTimeShot}} - время, через которое орудие будет готово к выстрелу (в секундах). Макрос возвращает значение только для техники с механизмом дозарядки, для остальной техники возвращает пусто. PY(ON_RELOAD) - пока орудие перезаряжается срабатывает с частотой 10 раз в секунду. Скрипт: reloading.py Вероятность пробития: {{py:sight.piercingActual}} - пробивающая способность снаряда при подлете к цели; {{py:sight.armorActual}} - приведенная броня в точке прицеливания; {{py:sight.piercingChance(norm)}} - если 'norm' не задан, то возвращается вероятность пробития в процентах. Иначе возвращается нормализованное значение; {{py:sight.c_piercingChance}} - цвет связанный с шансом на пробитие. Цвета задаются в sight.xc; {{py:sight.hitAngle}} - угол вхождение снаряда в броню в точке прицеливания (в градусах); {{py:sight.normHitAngle}} - нормализованный угол вхождение снаряда в броню в точке прицеливания (в градусах). Если будет рикошет, то возвращает -1.0 ; PY(ON_CALC_ARMOR) - срабатывает, если в прицел наведен на противника. Скрипт: chancePenetration.py Пример использования (у меня хватило сил сделать только аркадный режим))): Конфигурация прицела от @fgcwsxjegcbk2014. Конфигурация прицела от @WarDogs_Alex.
×