Jump to content
Korean Random
Dark__Messiah

[1.11.Х] Модифицированный артиллерийский прицел на миникарте

Recommended Posts

@maxim23rus , ну и славно. Заодно случайно выяснилось, что 20 пикселей картинки в масштабе флешки, это примерно 1 квадрат сетки в масштабе миникарты.

Share this post


Link to post

Short link
Share on other sites
24 минуты назад, sergbodr сказал:

@beb К сожалению, с XVM не работает!

с чего бы?флешка удали и всё

Share this post


Link to post

Short link
Share on other sites
1 hour ago, sergbodr said:

К сожалению, с XVM не работает!

Я не использую XVM, и не могу проверить. Однако, в этой сборке я использовал оригинальную флешку официального клиента, в которой заменена всего лишь одна векторная картинка, поэтому едва ли оно как-то критично может влиять на клиент в целом.

 

Попробуйте два варианта:

 

1. Если используете готовый .wotmod из моего набора, то необходимо удалить прежнюю, утратившую совместимость флешку из res_mods\x.x.x.x\gui\flash\minimapEntriesLibrary.swf

2. Если принципиально не используете .wotmod, а только неупакованные моды в res_mods\, то распакуйте .wotmod (а это обычный .zip архив, без сжатия), - если нет специальных сторонних утилит - переименуйте .wotmod в .zip, и зайдите в архив в проводнике как в папку (такой способ обращения с .zip кажется нативно поддерживают все более или менее актуальные версии винды), найдите там актуальную флешку eMinimapAC**.wotmod\res\gui\flash\minimapEntriesLibrary.swf, и замените ею прежнюю, утратившую совместимость флешку, в res_mods\x.x.x.x\gui\flash\minimapEntriesLibrary.swf.

 

По идее, после удаления, тем или иным способом, прежней, утратившей совместимость, флешки, и замены ее на актуальную, клиент потеряет эту причину кочевряжиться. 

Edited by beb

Share this post


Link to post

Short link
Share on other sites

@beb твои варианты не по мне,мне другой нужен-все махинации делал через Flash Decompiler?

не играл ещё,жду монеты пятый эпизод и начну

Edited by Prosubaru

Share this post


Link to post

Short link
Share on other sites

 

On 8/10/2020 at 11:56 PM, Prosubaru said:

делал через Flash Decompiler?

 

  1. Берем JPEXS Free Flash Decompiler (GitHub)
  2. Берем любой вариант Minimap*.zip из этой темы по своему вкусу.
  3. Из архива Minimap*.zip достаем minimapEntriesLibrary.swf
  4. Открываем minimapEntriesLibrary.swf в JPEXS (при открытии на запрос о зависимостях - ответ [No to all]) и экспортируем оттуда желанную картинку в .svg (ранее это была картинка minimapEntriesLibrary.swf\shapes\DefineShape3(201)):
    Из меню по правой кнопке мыши на DefineShape3(201) выбираем Export selection и сохраняем где угодно.
    По желанию редактируем (я это делаю в текстовом редакторе, можно использовать что-то из онлайн наподобие https://svg-edit.github.io/svgedit/; прямая ссылка на редактор: https://svg-edit.github.io/svgedit/src/editor/svg-editor.html), или оставляем как есть (важное замечание о размерах фигуры прицела).
  5. Из текущего клиента достаем актуальный флеш. Сейчас это: res\packages\gui-part1.pkg\gui\flash\minimapEntriesLibrary.swf (файл gui-part1.pkg - по сути обычный зип-архив, открываем чем угодно).
    Открываем клиентский minimapEntriesLibrary.swf в JPEXS и находим там картинку прицела, которая сейчас:  minimapEntriesLibrary.swf\shapes\DefineShape4(269) (в клиентском флеше это сейчас выглядит как зеленый, или какой-там, квадрат).
  6. Из меню по правой мыши на DefineShape4(269) выбираем заменить (Replace; но поскольку размер желанной картинки на ~100% не совпадет с клиентским, то скорее выбираешь Replace - update bounds) (исходные bounds прописаны на видном месте в интерфейсе) (важное замечание о размерах фигуры прицела), и меняем DefineShape4(269) на .svg (из п. 4). Сохраняем обновленный флеш.
  7. Компонуем свой вариант мода:

    7.1 размещая флеш из п.6 и скрипт антизума, если нужен (из архива в п.3), в пакете .wotmod (zip архив без сжатия!*), с сохранением путей по образу и подобию какого-либо из моих .wotmod:
    .wotmod\res\scripts\client\gui\mods\mod_minimap_not_zoom_strategic.pyc
    .wotmod\res\gui\flash\minimapEntriesLibrary.swf

    7.2 располагая флеш из п.6 и антизум, если нужен (из архива в п.3), для размещения в структуре res_mods, по образу и подобию архива из п.3 (см. титульное сообщение данной темы).
  8. Готово.

 

Если не редактировать .svg и работать только с одной версией, то всех делов - на минуту с перекурами, или кто там чем увлекается.

 

* На всякий случай, я для упаковки использую 7-zip с ключами (главный и обязательный: -mx0, возможно еще обязателен -ssw, но это не точно, - я уже не помню, а остальное по вкусу) (кусок моего пакетного файла, для упаковки серии версий мода):

 

for /d %%j in (*) do 7z.exe a %mods%\%%j.wotmod .\%%j\* -tzip -mx0 -aoa -ssw -mmt -stl -y
:: -tzip   Use the switch after "a" command or specify "name.zip" to create zip archive
:: -mx0    Archive without compression
:: -ao     Overwrite mode
:: -aoa    Overwrite All existing files without prompt
:: -stl    Set archive timestamp from the most recently modified file
:: -ssw    Compress files open for writing by another apps
:: -mmt    Compression will use multi-threading optimization.
:: -y      Assume "Yes" on all Queries

 

Edited by beb
formatting
  • Upvote 3

Share this post


Link to post

Short link
Share on other sites
On 8/16/2020 at 9:38 AM, evdok9 said:

Мини не корректно отображает. Есть решение? 

В чем именно некорректность, в какой версии?

Share this post


Link to post

Short link
Share on other sites
8 часов назад, beb сказал:

В чем именно некорректность, в какой версии?

eMinimapACCL_min Сбит прицел. Танки остаются левее. Наводишь на танк на миникарте, а на экране танк гораздо левее. 

Как вот вернуть прежний размер, с сохранением масштаба. 60х60 корректно работает. С XVM работает. Заменил в minimapEntriesLibrary. (269) на пустую картину и всё поехало. А вот без XVM прежний размер подогнать не могу. Конвертеры файла SVG помогли. пытался сделать 60х60 сохранив прежний масштаб. Вот флешка для XVM, кому надо. Работает. Вылетов нет. 

minimapEntriesLibrary.swf

Конвертеры файла SVG НЕ помогли. 

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

@evdok9 , ясно.

Я этого в тайне опасался. Выходит, при радикальном отличии размера новой картинки от вытекающего из bounds в клиентском swf (если точно, то габаритный размер поля картинки в клиенте сейчас 60.60 x 60.60 пикселей), - замена картинки с обновлением bounds приводит к ощутимому относительному смещению графического объекта и, в конечном итоге, к наблюдаемому в игре негативному эффекту.

Я уже примерно представляю, как с этим можно будет справиться с минимальными затратами труда и времени. Чуть позже сделаю тестовый вариант.

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites
31 минуту назад, beb сказал:

@evdok9 , ясно.

Я этого в тайне опасался. Выходит, при радикальном отличии размера новой картинки от вытекающего из bounds в клиентском swf (если точно, то габаритный размер поля картинки в клиенте сейчас 60.60 x 60.60 пикселей), - замена картинки с обновлением bounds приводит к ощутимому относительному смещению графического объекта и, в конечном итоге, к наблюдаемому в игре негативному эффекту.

Я уже примерно представляю, как с этим можно будет справиться с минимальными затратами труда и времени. Чуть позже сделаю тестовый вариант.

Спасибо! Буду ждать. 

Share this post


Link to post

Short link
Share on other sites
21 минуту назад, beb сказал:

Если не сложно, проверьте, пожалуйста:minimapEntriesLibrary.swf.zipeMinimapACCL_mini_test.wotmod.zip

eMinimapACCL_mini_test.wotmod.zip проверил, работает нормально, рассинхрона нет, цель по центру круга мишени на миникарте также в круге прицела арты на поле боя:biggrin:

Share this post


Link to post

Short link
Share on other sites
1 hour ago, maxim23rus said:

цель по центру круга мишени на миникарте

Ясно, спасибо. Значит, рецепт работает. Это хорошо, иначе пришлось бы расчитывать все bounds, чего крайне не хотелось бы.

 

Суть рецепта:

- берем любую понравившуюся версию прицела и достаем .svg в размере до 60.6 x 60.6 пикселей (а они сейчас все такие, во всех версиях из этой темы, с целым зоопарком размеров);

- задаем в .svg размер поля (полотна) картинки в эти самые 60.6 x 60.6 пикселей (например, в текстовом редакторе, первая же строка:  <svg width="60.6" height="60.6" ...);

- теперь без .svg редактора уже не обойтись, берем, например, https://svg-edit.github.io/svgedit/src/editor/svg-editor.html (мне он нравится тем, что он-лайн и не оставляет никакого лишнего мусора в коде), выделяем все фрагменты фигуры прицела, группируем их, центрируем относительно полотна (по горизонтали и вертикали), - все, основное сделано, картинка соответствует клиентским запросам;

- берем клиентский флеш, засовываем туда новую правильную картинку, - теперь уже только Replace! (Replace - update bounds при правильно размеренной картинке не требуется), сохраняем, и т.д. и т.п.

 

P.S. Ближе к концу недели постараюсь переделать все имеющиеся прицелы (включая Minimap_Clear_#1-10.zip) с учетом выявившихся обстоятельств.

 

 

Для справки:

На прилагаемой картинке наглядно показаны bounds фигуры, а есть еще bounds of origin.

В клиентском флеше сейчас эта цифирь выглядит примерно так:

 

Bounds:
(-1.30, -1.30)[60.60 x 60.60]

Edge Bounds:
Xmin:    0 nbits
Xmax: 1160 nbits
Ymin:    0 nbits
Ymax: 1160 nbits

Shape Bounds:
Xmin:  -26 nbits
Xmax: 1186 nbits
Ymin:  -26 nbits
Ymax: 1186 nbits

Очевидные Relations:

1px = 20 nbits

   0 nbits/20 =  0.00 px
1160 nbits/20 = 58.00 px
   0 nbits/20 =  0.00 px
1160 nbits/20 = 58.00 px
0.00 px + 58.00 px = 58.00 px

 -26/20 nbits = -1.30 px
1186/20 nbits = 59.30 px
 -26/20 nbits = -1.30 px
1186/20 nbits = 59.30 px

1.30 px + 59.30 px = 60.60 px ' внешний габарит картинки
1186 nbits + 26 nbits - 1160 nbits = 52 nbits
60.60 px - 58.00 px = 52 nbits/20 = 2.6 px
2.6 px / 2 = 1.30 px ' толщина габаритной линии родного прицела

 

 

Спецификация:
https://www.adobe.com/content/dam/acom/en/devnet/pdf/swf-file-format-spec.pdf

 

swf-file-format-spec.png

Edited by beb

Share this post


Link to post

Short link
Share on other sites
03.06.2020 в 20:21, beb сказал:

Предыдущий мой опыт по модификации прицела признаю не удачным. Прицел на мини карте в оригинальном цвете очень плохо виден, что особенно критически проявлялось  в режиме Линии фронта.

Переделал в более яркие цвета, Lime и Aqua. При этом окружный прицел мне уже разонравился, сделал новые прямоугольные на свой вкус.

 

В итоге получились версии:

Окружные:
eMinimapACCL: CircusLime; в цвете Lime  #00ff00 
eMinimapACCA: CircusAqua; в цвете Aqua  #00ffff 

Прямоугольные:
eMinimapACQL: QuadroLime; в цвете Lime  #00ff00 
eMinimapACQA: QuadroAqua; в цвете Aqua  #00ffff 

Прямоугольно-окружные:
eMinimapACXL: XcrossLime; в цвете Lime  #00ff00 
eMinimapACXA: XcrossAqua; в цвете Aqua   #00ffff 

 

Отличие от авторской сборки:

Картинка "res\packages\gui-part1.pkg\gui\flash\minimapEntriesLibrary.swf\shapes\DefineShape4 (269)" заменена на мою.

Картинка "minimapEntriesLibrary.swf\shapes\DefineShape3 (201)" заменена на мои.

Кроме того, модификации собраны в пакеты .wotmod, соответственно для использования требуется поместить в актуальную папку mods\x.x.x.x\

 

Иллюстрация и архивы прилагаются.

 

Примечания:

1. Основано на  авторской сборке: Minimap_Clear_#1-10.zip
    noXVM - Вариант без использования XVM - измененная "флешка" плюс антизум-скрипт от Ekspoint

2. Как и в авторской сборке прицелы по умолчанию идут с отключенным зумом (eMinimapACxy.wotmod)

    Зум убирается скриптом .wotmod\res\scripts\client\gui\mods\mod_minimap_not_zoom_strategic.pyc

    В свою очередь, чтобы вернуть зум необходимо удалить указанный скрипт из .wotmod

    В файлах eMinimapACxy_zoon.wotmod идут модификации, где зум включен.*

* Так то оно так, да не так. При включенном зуме изображение прицела начинает масштабироваться (похоже) корреспондентно разрешению (соотношению сторон) монитора, и, если оно при этом критически пропорциезависимо, то получаемое искажение катастрофично. Ради интереса я специально попробовал построить картинку исходно с учетом данного эффекта, - результат настолько неудовлетворителен, что я убираю все версии с включенным зумом.

 

Статус: обновлено для клиента WorldOfTanks 1.10.0.0

 ACCL-ACQL-ACXL_ACCA-ACQA-ACXA_labeled.thumb.png.5e2f10519e8374eb0bc41e371a5bfd6e.png

 

 

 

 

 

 

 

 

 

 

 

eMinimapACCL.wotmod.zip 464 kB · 5 скачиваний eMinimapACCA.wotmod.zip 464 kB · 4 скачивания eMinimapACQA.wotmod.zip 464 kB · 1 скачивание eMinimapACQL.wotmod.zip 464 kB · 1 скачивание eMinimapACXA.wotmod.zip 464 kB · 1 скачивание eMinimapACXL.wotmod.zip 464 kB · 1 скачивание

eMinimapACCA_mini.wotmod.zip 464 kB · 4 скачивания eMinimapACCL_mini.wotmod.zip 464 kB · 5 скачиваний

Что качать, чтоб просто убрать квадрат вгшный с миникарты ? 

Share this post


Link to post

Short link
Share on other sites
  1. Обновил свою сборку для клиента WorldOfTanks 1.10.0.1 (все версии):
    учтены выявившиеся нюансы в отношении размеров фигуры прицела;
    названия изменены на eMinimapACxx_xxx, где 2x2, 3x3 примерно соответствует размеру прицела в квадратах миникарты;
    все версии собраны в одном .zip архиве, там же скриншот с визуализацией версий.

  2. Пока @Dark__Messiah находится в творческом отпуске, обновил все прицелы из архива Minimap_Clear_#1-10.zip, что в титульном сообщении темы:
    учтены выявившиеся нюансы в отношении размеров фигуры прицела;
    использованы пакеты .wotmod; все собраны в одном .zip архиве, там же скриншот с визуализацией версий;

  3. Ссылки на загрузку:
    см. в сообщении выше.

1 hour ago, _RALFS_ said:

Что качать, чтоб просто убрать квадрат вгшный с миникарты ? 

Пока качайте архивы из моего сообщения по ссылке выше. Выбирайте версию по вашему вкусу, ориентируясь на скриншоты. Используете. Не понравилось - меняете на что-то другое по вашему же вкусу.  

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites
23 часа назад, beb сказал:
  1. Обновил свою сборку для клиента WorldOfTanks 1.10.0.1 (все версии):
    учтены выявившиеся нюансы в отношении размеров фигуры прицела;
    названия изменены на eMinimapACxx_xxx, где 2x2, 3x3 примерно соответствует размеру прицела в квадратах миникарты;
    все версии собраны в одном .zip архиве, там же скриншот с визуализацией версий.

  2. Пока @Dark__Messiah находится в творческом отпуске, обновил все прицелы из архива Minimap_Clear_#1-10.zip, что в титульном сообщении темы:
    учтены выявившиеся нюансы в отношении размеров фигуры прицела;
    использованы пакеты .wotmod; все собраны в одном .zip архиве, там же скриншот с визуализацией версий;

  3. Ссылки на загрузку:
    см. в сообщении выше.

Пока качайте архивы из моего сообщения по ссылке выше. Выбирайте версию по вашему вкусу, ориентируясь на скриншоты. Используете. Не понравилось - меняете на что-то другое по вашему же вкусу.  

Думаю, вы меня не поняли... У меня есть файл .png c прицелом в папке с ХВМ. Мне нужна просто флэшка , убирающая квадрат  с миникарты . Пустая, безо всего. Как раньше было. Теперь у меня с вашими файлами получается 2-а прицела. При чём круглый, превращается в овальный.

PS Ну и на счёт "Собирайте по своему вкусу..." Я понимаю вас, но в этом то и состоит проблема, если бы я мог собирать, я бы у вас не спрашивал...

Edited by _RALFS_

Share this post


Link to post

Short link
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...