Jump to content
Korean Random
Zelenogorec

[0.9.0] XVM Tank Minimap Ranges, забугорный мод.

Recommended Posts

Zelenogorec, я прошу прощения, обновить шапку ты обновил, но я не уверен, что ничего не перепуталось в ней...

Файл брался currentvehicle с tankrange.xc. Хотя если сравнивать эти 2 файла для разных названий конфига, то они идентичны по содержимому, а должны быть разными, ибо в них прописаны пути и названий файлов  к которым они идут.

У меня вот путь e:\GameS\World of Tanks\res_mods\xvm\tankrange.xc

Может я не прав, уточните тогда, что я не так делаю.

 

 

мог и я ошибиться при заливке файло.

на всякий пожарный перезалил currentvehicle_tankrange.rar

 

 

 

Отличие архивов - только в наличии загрузчиков CameraNode.pyc и __init__.pyc, почему-то включенных в "currentvehicle с tankrange.xc".

Что это за CameraNode, и чем он отличается от традиционного, понять не могу - не получается декомпилировать.

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

 

Какую версию currentvehicle взять за основу?

берите вариант Yusha  http://www.koreanrandom.com/forum/index.php?app=core&module=attach&section=attach&attach_rel_module=post&attach_id=40248

Edited by evil_rrock

Share this post


Link to post

Short link
Share on other sites

Zelenogorec, я прошу прощения, обновить шапку ты обновил, но я не уверен, что ничего не перепуталось в ней...

Файл брался currentvehicle с tankrange.xc. Хотя если сравнивать эти 2 файла для разных названий конфига, то они идентичны по содержимому, а должны быть разными, ибо в них прописаны пути и названий файлов  к которым они идут.

У меня вот путь e:\GameS\World of Tanks\res_mods\xvm\tankrange.xc

Может я не прав, уточните тогда, что я не так делаю.

Изиняюсь, я действительно скачал файл по ссылке от evil_rrock и не проверил его. Понадеялся....

Но с кем не бывает.... 

 

 

evil_rrock, on 19 Feb 2014 - 22:53, said:

мог и я ошибиться при заливке файло.

на всякий пожарный перезалил currentvehicle_tankrange.rar

 

 

evil_rrock спасибо, файл заменил, предварительно проверив, остальные ссылки тоже исправлю.

Edited by Zelenogorec

Share this post


Link to post

Short link
Share on other sites

В файле XML будет, например, такое содержимое:





<currentvehicle.xml>
  <ConfigPath>../xvm/tankrange.xc</ConfigPath>
</currentvehicle.xml>

Скрипт будет работать так:

- если есть файл XML, берем путь из него

- проверяем: если по этому пути есть файл конфига, работаем с этим путем

- в ином случае работаем с путем по умолчанию (xvm\tankrange.xc)

- дальше - без изменений

 

В принципе, это напоминает загрузку конфига самим XVM, что вполне логично смотрится и в моде. Такой вопрос: <ConfigPath>../xvm/tankrange.xc</ConfigPath> - если вместо tankrange.xc прописать minimapCircles.xc, будет брать конфиг из него? Просто такой вариант (если он возможен) вообще бы удовлетворил всех.

Share this post


Link to post

Short link
Share on other sites

Народ, нужна помощь.

Обратите внимание на два последних сполера в шапке.

Как только я открываю шапку для правки, то в этих сполерах автоматически добавляется по строчке и чем больше я открываю, тем больше строчек появляется.

НО... удалить я их не могу, хотя... я их уже как то удалял. Так и не понял, как получилось. Просто выделил пустые строчки и удалил их. А сейчас там просто нет курсора.....

Edited by Zelenogorec

Share this post


Link to post

Short link
Share on other sites

Народ, нужна помощь.

Обратите внимание на два последних сполера в шапке.

Как только я открываю шапку для правки, то в этих сполерах автоматически добавляется по строчке и чем больше я открываю, тем больше строчек появляется.

НО... удалить я их не могу, хотя... я их уже как то удалял. Так и не понял, как получилось. Просто выделил пустые строчки и удалил их. А сейчас там просто нет курсора.....

при редактировании, после внесения изменений, где требуется бб меню, отключи бб меню, всё будет ввиде текста.

нашодишь тэг

и вырезаешь пустые строки

и тэг

 там у тебя тоже пустые строки после него
Edited by evil_rrock

Share this post


Link to post

Short link
Share on other sites

В принципе, это напоминает загрузку конфига самим XVM, что вполне логично смотрится и в моде. Такой вопрос:

 

<ConfigPath>../xvm/tankrange.xc</ConfigPath>

если вместо tankrange.xc прописать minimapCircles.xc, будет брать конфиг из него? Просто такой вариант (если он возможен) вообще бы удовлетворил всех.

 

Конечно же. Для этого и будет существовать XML.

Можно будет задавать любое имя и путь.

 

Кстати, откуда лучше начинать путь (для удобства пользователей)?

 

В оригинальном скрипте абсолютный путь к конфигу строится следующим образом:

xvm_configuration_file = os.getcwd() + os.sep + 'res_mods' + os.sep + 'xvm' + os.sep + 'configs' + os.sep + 'minimapCircles.xc'

Т.е. начинается все с корневого каталога игры (например, C:\Games\World_of_Tanks\),

к которому добавляется относительный путь (в данном случае: res_mods\xvm\configs\minimapCircles.xc)

 

Я предлагаю в XML начинать путь с папки \res_mods\xvm\.

 

Тоесть на примере существующих версий мода это могут быть такие строчки в XML:

<ConfigPath>tankrange.xc</ConfigPath>
  или
<ConfigPath>configs/minimapCircles.xc</ConfigPath>
  или даже внутри какого-то пользовательского конфига:
<ConfigPath>configs/Meddio/minimapCircles.xc</ConfigPath>

Так подходит?

 

Или все же брать уровень выше (от \res_mods\), чтоб пользователи могли хранить конфиг где-то в дебрях \res_mods\0.8.11\?

Такой вариант мне не очень нравится (т.к. нужно редактировать файл XML при смене версии клиента).

 

С другой стороны, если начинать путь с папки игры, путь будет более полным и понятным. Примеры:

<ConfigPath>res_mods/xvm/tankrange.xc</ConfigPath>
<ConfigPath>res_mods/xvm/configs/minimapCircles.xc</ConfigPath>

При такой схеме будет возникать меньше вопросов, и построение пути не будет нуждаться в комментариях.

Edited by Meddio
  • Upvote 2

Share this post


Link to post

Short link
Share on other sites

 

 

мог и я ошибиться при заливке файло.

на всякий пожарный перезалил currentvehicle_tankrange.rar

 

Изиняюсь, я действительно скачал файл по ссылке от evil_rrock и не проверил его. Понадеялся....

Но с кем не бывает.... 

 

evil_rrock, on 19 Feb 2014 - 22:53, said:

мог и я ошибиться при заливке файло.

на всякий пожарный перезалил currentvehicle_tankrange.rar

 

evil_rrock спасибо, файл заменил, предварительно проверив, остальные ссылки тоже исправлю.

Благодарю вас, господа)

Share this post


Link to post

Short link
Share on other sites

Какую версию currentvehicle взять за основу?

 

Вот эту. Самый что ни есть оригинальный исходник. Качай zip,переводи правь. Только желательно использовать всю папку мастер (не придется править compiler.py для компиляции)

Только не качай из релизов, там скрипт currentvehicle.py без последних правок.

Edited by NickVor

Share this post


Link to post

Short link
Share on other sites

С другой стороны, если начинать путь с папки игры, путь будет более полным и понятным. Примеры:



<ConfigPath>res_mods/xvm/tankrange.xc</ConfigPath>
<ConfigPath>res_mods/xvm/configs/minimapCircles.xc</ConfigPath>

При такой схеме будет возникать меньше вопросов, и построение пути не будет нуждаться в комментариях.

На мой взгляд, самый оптимальный вариант: в нем отображена папка res_mods, а к ней уже все привыкли, знают где она лежит, и большинство с минимальными вопросами смогут правильно расположить и прописать свой конфиг.

Share this post


Link to post

Short link
Share on other sites

Кстати, откуда лучше начинать путь (для удобства пользователей)?

При такой схеме будет возникать меньше вопросов, и построение пути не будет нуждаться в комментариях.

А что тут думать и гадать, путь должен быть как в дефолтном XVM...

res_mods/xvm/configs/@Default/minimapCircles.xc

Edited by Dakasik

Share this post


Link to post

Short link
Share on other sites

Готово. Постарался максимально сократить код, сделав его при этом легко читаемым.

 

Распространять можно в виде трех файлов:

0.8.11\scripts\client\currentvehicle.pyc
0.8.11\scripts\client\currentvehicle.xml
xvm\tankrange.xc

"Из коробки" работает обычным образом. При необходимости перемещения/переименования файла XC

нужно сделать соответствующие правки в файле currentvehicle.xml и в конфиге XVM (ссылка "circles").

Никакая декомпиляция, правка исходного кода и повторная компиляция больше не требуется.

 

Логика такая:

- ЕСЛИ рядом с файлом currentvehicle.pyc есть currentvehicle.xml

- И в файле currentvehicle.xml есть секция ConfigPath (открывающий и закрывающий тег)

- И в качестве значения ConfigPath указан путь реально существующего файла

Значит, в качестве конфига мод будет использовать этот файл.

 

Во всех остальных случаях мод будет пытаться использовать жестко прописанный файл по адресу xvm\tankrange.xc (т.е. работать как раньше).

 

Дальше все работает так, как задумал автор мода: если жестко прописанного файла нет, выдается ошибка.

 

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

Т.е. все следующие записи будут приведены к одному формату:

<ConfigPath>\res_mods\xvm\tankrange.xc</ConfigPath>
<ConfigPath>     res_mods\xvm\tankrange.xc     </ConfigPath>
<ConfigPath>res_mods/xvm/tankrange.xc</ConfigPath>

В XML можно добавить любые комментарии, переименовать корневой элемент.

 

 

Путь в XML задается относительно папки клиента (например: C:\Games\World_of_Tanks\). Все следующие варианты работают:

res_mods\xvm\tankrange.xc
res_mods\xvm\configs\minimapCircles.xc
res_mods\xvm\configs\Meddio\minimapCircles.xc
res_mods\tankrange.xc
res_mods\0.8.11\tankrange.xc

Целесообразны только первые три. Но тем не менее.

 

Изменения внесены в версию от Yusha, предложенную выше evil_rrock (сравнение - во вложении).

 

Блок кода специально сделал таким, чтоб можно было легко вставлять в любую версию скрипта при обновлении.

 

'Для этого нужно'

в конец любой строчки, начинающейся со слова "Import" в начале файла, добавить:

, ResMgr

И сразу после строчки:

xvm_configuration_file = os.getcwd() + os.sep + 'res_mods' + os.sep + 'xvm' + ....................

добавить вот этот код:

xml = ResMgr.openSection('scripts/client/currentvehicle.xml')
if xml is not None:
    xml_userpath = xml.readString('ConfigPath')
    if xml_userpath:
        xml_fullpath = os.path.normpath(os.getcwd() + os.sep + xml_userpath)
        if os.path.exists(xml_fullpath):
            xvm_configuration_file = xml_fullpath

 

Сообщения (в системный канал) об отсутствии файлов и ошибках чтения XML (и прочую отладочную информацию) я решил убрать (из моего кода). Будет спрос - верну.

 

Разумеется, этот вариант мода не претендует на замену оригинального.

Это просто небольшая альтернатива, позволяющая менять расположение/имя файла конфигурации,

не редактируя скомпилированный питоновский скрипт.

XVM Tank Minimap Ranges v1.9 XML.zip

Comparison_Yusha_Meddio.htm

Edited by Meddio
  • Upvote 4

Share this post


Link to post

Short link
Share on other sites

Готово. Постарался максимально сократить код, сделав его при этом легко читаемым.

 

Распространять можно в виде трех файлов:

0.8.11\scripts\client\currentvehicle.pyc
0.8.11\scripts\client\currentvehicle.xml
xvm\tankrange.xc
"Из коробки" работает обычным образом. При необходимости перемещение/переименования файла XC нужно сделать соответствующие правки в файле currentvehicle.xml и в конфиге XVM (ссылка "circles"). Никакая декомпиляция, правка исходного кода и повторная компиляция больше не требуется.

 

Логика такая:

- ЕСЛИ рядом с файлом currentvehicle.pyc есть currentvehicle.xml

- И в файле currentvehicle.xml есть секция ConfigPath (открывающий и закрывающий тег)

- И в качестве значения ConfigPath указан путь реально существующего файла

Значит, в качестве конфига мод будет использовать этот файл.

 

Во всех остальных случаях мод будет пытаться использовать жестко прописанный файл по адресу xvm\tankrange.xc (т.е. работать как раньше).

 

Дальше все работает так, как задумал автор мода: если жестко прописанного файла нет, выдается ошибка.

 

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

Т.е. все следующие записи будут приведены к одному формату:

<ConfigPath>\res_mods\xvm\tankrange.xc</ConfigPath>
<ConfigPath>     res_mods\xvm\tankrange.xc     </ConfigPath>
<ConfigPath>res_mods/xvm/tankrange.xc</ConfigPath>
В XML можно добавить любые комментарии, переименовать корневой элемент.

 

 

Путь в XML задается относительно папки клиента. Все следующие варианты работают:

res_mods\xvm\tankrange.xc
res_mods\xvm\configs\minimapCircles.xc
res_mods\xvm\configs\Meddio\minimapCircles.xc
res_mods\tankrange.xc
tankrange.xc
res_mods\0.8.11\tankrange.xc
Целесообразны только первые три. Но тем не менее.

 

Изменения внесены в версию от Yusha, предложенную выше evil_rrock (сравнение - во вложении).

 

Блок кода специально сделал таким, чтоб можно было легко вставлять в любую версию скрипта при обновлении.

 

"Для этого нужно"

в конец любой строчки, начинающейся со слова "Import" в начале файла, добавить:

, ResMgr
И сразу после строчки:

xvm_configuration_file = os.getcwd() + os.sep + 'res_mods' + os.sep + 'xvm' + ....................
добавить вот этот код:

xml = ResMgr.openSection('scripts/client/currentvehicle.xml')
if xml is not None:
    xml_userpath = xml.readString('ConfigPath')
    if xml_userpath:
        xml_fullpath = os.path.normpath(os.getcwd() + os.sep + xml_userpath)
        if os.path.exists(xml_fullpath):
            xvm_configuration_file = xml_fullpath

 

Сообщения (в системный канал) об отсутствии файлов и ошибках чтения XML (и прочую отладочную информацию) я решил убрать (из моего кода). Будет спрос - верну.

 

Разумеется этот вариант мода не претендует на замену оригинального. Это просто небольшая альтернатива. позволяющая менять расположение/имя файла конфигурации, не редактируя скомпилированный питоновский скрипт.

 

грандиозно! Edited by evil_rrock
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

грандиозно!

 

Когда несколько опытных пользователей проверят, и все будет работать без ошибок, будет грандиозно. А пока - скромный AS IS :dots:

 

При проверке:

- отключить (переместив в другую папку) свою версию мода

- закинуть в папку res_mods содержимое архива

(кстати, надо было наверное включить ее в архив, но это косметические мелочи - потом исправлю)

- убедиться, что Ваш конфиг XVM ссылается на этот файл (исправить ссылку при необходимости)

- запустить клиент, пощелкать танки в карусели (должно появляться сообщение с дальностью обзора/стрельбы справа)

- зайти в бой

- если все работает как раньше, переименовать/переместить файл XC, исправить ссылку на него в XML и в конфиге XVM, протестировать снова.

Edited by Meddio
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

Когда несколько опытных пользователей проверят, и все будет работать без ошибок, будет грандиозно. А пока - скромный AS IS :dots:

проверю, но уже завтра.

 

P.S. владельцам однофайлового конфига один чёрт лезть конфиг :gg:

Edited by evil_rrock

Share this post


Link to post

Short link
Share on other sites

P.S. владельцам однофайлового конфига один чёрт лезть конфиг :gg:

 

Ну в данном случае владельцы однофайловых ничуть не отличаются от владельцев многофайловых.

 

И у тех, и у других мод работает с отдельным файлом, на который нужно поставить ссылку (у первых - в общем файле, у вторых - в minimap.xc)

 

"Несправедливость" будет только когда/если StranikS_Scan займется модом и сделает, чтоб он работал напрямую с конфигом XVM.

 

Владельцам однофайловых конфигов в этом случае придется мириться либо с дополнительным файлом, либо с длинной простыней танков прямо в однофайловом конфиге.

Edited by Meddio

Share this post


Link to post

Short link
Share on other sites

Когда несколько опытных пользователей проверят, и все будет работать без ошибок, будет грандиозно. А пока - скромный AS IS :dots:

 

При проверке:

- отключить (переместив в другую папку) свою версию мода

- закинуть в папку res_mods содержимое архива

(кстати, надо было наверное включить ее в архив, но это косметические мелочи - потом исправлю)

- убедиться, что Ваш конфиг XVM ссылается на этот файл (исправить ссылку при необходимости)

- запустить клиент, пощелкать танки в карусели (должно появляться сообщение с дальностью обзора/стрельбы справа)

- зайти в бой

- если все работает как раньше, переименовать/переместить файл XC, исправить ссылку на него в XML и в конфиге XVM, протестировать снова.

Дело мастера боится!!! Больше разговоров было...

Потестил, все работает как раньше, багов замечено не было.

Спасибо огромное за труд!!! Все просто супер!!!

Share this post


Link to post

Short link
Share on other sites

"Несправедливость" будет только когда/если StranikS_Scan займется модом и сделает, чтоб он работал напрямую с конфигом XVM.

:gg:

ну тем и отличаются сообщества, от компаний разработчиков, что прислушиваются к гласу народа.

продукт выходит не только какчественным, но и удобным

Share this post


Link to post

Short link
Share on other sites

Дело мастера боится!!! Больше разговоров было...

Потестил, все работает как раньше, багов замечено не было.

Спасибо огромное за труд!!! Все просто супер!!!

 

А конфиг перемещали/переименовывали?

ну тем и отличаются сообщества, от компаний разработчиков, что прислушиваются к гласу народа.

продукт выходит не только какчественным, но и удобным

 

или перегруженным всем, что нужно и ненужно. есть такой опыт ))

 

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

Share this post


Link to post

Short link
Share on other sites

А конфиг перемещали/переименовывали?

Да перемещал и переименовывал...

Edited by Dakasik

Share this post


Link to post

Short link
Share on other sites

Ну, будем надеяться, что у всех будет работать хорошо.

 

Потенциальные проблемные варианты:

- точно возникает ошибка, если нахимичить в имени ConfigPath

(его обрабатывает специальный парсер, который такого не прощает, да и не должен)

- если переместить файл XC, но не обновить ссылку в конфиге XVM, всеми любимый комплексный мод

не будет работать (весь или частично), так как секция "circles" будет ссылаться в никуда.

- если файла XC нет ни по адресу, указанному в файле XML, ни по стандартному адресу "xvm\tankrange.xc",

конфиг не загрузится (загружаться ведь нечему)

 

Перечисленные проблемы очевидны и могут произойти только по вине невнимательного пользователя,

легко исправляются при изучении его папки xvm и двух файлов currentvehicle (PYC и XML)

Edited by Meddio

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...