Jump to content
Korean Random
SerVB

Мод для разрешения конфликтов атласов

Recommended Posts

5 минут назад, BuSH сказал:

Проблема была в количестве файлов

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

Share this post


Link to post

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

грубо говоря архиватор работает быстрее или какой то другой принцип?

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

У pkg кстаа такой же тип "сжатия" совершенно не требующий процессорного времени.

 

Впервые такую фичу применили в q3 это году в 99 +- но там емнип было сжатие простенькое. Всякие half-life и культовая CS уже так грузились. Тогда в 2010-11 смотря на эти 20-30к файлов танков и их загрузку, уставал фэйспалмить: почему все игры ускорились в разы 10 лет назад а танки тормозят, ну и потом с годик и в танки пришло.

 

upd q3 = quake 3 на движке которого были почти все тогда шутеры, всякие вульфенштайны и многое другое.

upd.. епт, в q2 это было, half-life же на движке q2 основан а q3 был просто вылизан и делать игру не на q3 было гиблой затеей.

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites
3 hours ago, Kapany3uk said:

 

выкладываю/меняю/удаляю файлы атласа (dds + xml) в папке C:\Games\World_of_Tanks_RU\res_mods\1.10.0.0\gui\flash\atlases\ (никаким боком не .wotmod)

при отсутствии файлов атласа подхватываются дефолтные-клиентские, при наличии - пользовательские.

 

Класс, спасибо за уточнение, что экспериментировать надо с res_mods!

 

Я перепроверил такие поведения:

 

  1. В res_mods при загрузке клиента пусто: загружаемся в ангар, кладем в res_mods свой атлас, идем в бой – загружается измененный атлас – успех.
  2. В res_mods при загрузке клиента лежит атлас: загружаемся в ангар, заменяем атлас на свой (операция успешно выполняется), идем в бой – загружается только что положеный атлас – опять успех.

 

Получается, мод вполне сможет работать, манипулируя файлами в папке res_mods. Еще одна причина просить разрабов не убирать эту папку)

 

Моду быть! Как я вижу первоначальную логику его работы:

  1. Он предоставляет переменную-список subtextures_to_change, куда другие моды при первом запуске добавляют словари вида {"atlasName": "название-путь целевого атласа", "subTextureName": "имя подтекстуры, которую надо заменить", "subTextureWotmodName": "название wotmod файла, где искать новую подтекстуру – то есть мод, который хочет внести изменения в атлас", "newTexturePath": "путь в wotmod к подтекстуре, которую надо поставить – png файл"}.
  2. Когда все моды загрузились, мод вытаскивает атласы из клиента, отрисовывает на них нужные изменения (я в своем моде сейчас это делаю с помощью библиотеки PIL, видимо придется поставлять эту или подобную библиотеку в составе мода, можно внутри его же wotmod), сохраняет DDS картинки в папке res_mods (DDS я в своем моде сейчас генерирую с помощью утилиты imagemagick, видимо придется поставлять эту или подобную утилиту в составе мода, можно внутри его же wotmod).
  3. Ура, клиент видит в res_mods файлы (сгенерированные и помещенные туда модом) и показывает модифицированные атласы.

Видете ли возможные проблемы или звучит рабоче? Нужен ли мод, работающий по такой схеме, кому-то еще или только мне? Желает ли кто-то этим заняться опенсорсно на ГитХабе? Я бы присоединился. Либо если никто не начнет, я сам когда-нибудь начну потихоньку)

 

Есть вопросы к более опытным мододелам, возможно, кто-то знает, расскажет и избавит от исследований клиента:

  1. Можно ли как-то подписаться на событие "все моды загрузились"? Если нет, можно ли на "ангар загружается"?
  2. Как принято узнавать текущую версию игры, чтобы находить правильные папки mods/версия и res_mods/версия?
  3. Что кроме battleAtlas стоит поддержать?
  4. Можно ли в рантайме узнать пути пакетов, или только хардкодить? Например, сейчас вижу, что battleAtlas лежит в res/packages/gui-part1.pkg, но помню, что когда-то был просто gui.pkg, то есть изменения могут быть, и хардкодить не хочется. Можно конечно сканировать все 150 pkg файлов на наличие нужных атласов, это недолго, но если можно прям из мода узнать путь к нужному атласу, то это еще лучше.

 

2 hours ago, StranikS_Scan said:

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

 

Окей. Возможно, можно влезть в этот файл с помощью WinAPI. Но эти исследования можно оставить на крайний случай, раз мы пока увидели более легкий способ.

 

2 hours ago, StranikS_Scan said:

А чего не устраивает перезапуск клиента игры командой в пайтоне?

 

Ну, если других вариантов нету, то можно было бы потерпеть перезапуск клиента. Но если можно без перезапуска, зачем терпеть?

Share this post


Link to post

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

Он предоставляет переменную-список subtextures_to_change, куда другие моды при первом запуске добавляют словари вида {"atlasName": "название-путь целевого атласа", "subTextureName": "имя подтекстуры, которую надо заменить", "subTextureWotmodName": "название wotmod файла, где искать новую подтекстуру – то есть мод, который хочет внести изменения в атлас", "newTexturePath": "путь в wotmod к подтекстуре, которую надо поставить – png файл"}.

 

Нэээ. Должно быть что-то типа такого:

 

import AtlasManager

AtlasManager.addTexture(arg1=str, arg2=str, ...)
AtlasManager.addTextures(arg=[{arg1: str, arg2: str, ...}, ...])
AtlasManager.Textures -> property

 

Что касается аргументов, то ни каких названий wotmod-файлов. Эти названия не статичны, т.к. содержат версию в имени и внутри самого себя моду совершенно не нужно знать в каком он там wotmod-файле. Нужно оперировать внутренними путями в пайтоне, он видит смонтированную ФС, где все внутренности всех wotmod-файлов объединены в виртуальные каталоги. Доступ к виртуальной ФС идет через ResMgr. Ниже коленочный пример, как это всё может выглядеть

#Пусть есть пакет с такой картинкой
#VasyIconMod_1.0.0001.wotmod\res\MyTex\Black\battleLoadingFormBgTable.png

#Регистрация картинки
import AtlasManager
AtlasManager.addTexture(textureName='battleLoadingFormBgTable',                  #Это имя иконки в файле battleAtlas.xml
                        textureFile='MyTex/Black/battleLoadingFormBgTable.png',  #Это относительный пукт к картинке в виртуальной ФС
                        replaceOnMatch=True)

#Чтение картинки из виртуальной ФС
import ResMgr
dataSection = ResMgr.openSection('MyTex/Black/battleLoadingFormBgTable.png')
bFile = dataSection.asBinary #\x01\x01\x03\x01\x0e\x01\x0....

#Чтение атласа из виртуальной ФС (приоритет поиска источника тут такой: сначала res_mods\, затем mods\ и только после этого res\, так что можно прочитать и не оригинал)
dataSection = ResMgr.openSection('gui/flash/atlases/battleAtlas.xml')
for item in dataSection.items():    #<SubTexture>
    name = item[1]['name'].asString #<name> battleLoadingFormBgTable </name>
    x = item[1]['x'].asInt          #<x> 0 </x>
    ...
    
dataSection = ResMgr.openSection('gui/flash/atlases/battleAtlas.dds')
bFile = dataSection.asBinary #\x01\x01\x03\x01\x0e\x01\x0....

#Чтение атласа из res\ напрямую
import os
import ResMgr
from zipfile import ZipFile

def getPkgFile(pkgNamePart, fileNamePart):
    def getPkgNames(namePart):
        pkgNames = []
        pathsXML = ResMgr.openSection('../paths.xml')
        for path in pathsXML['Paths/Packages'].values():
            name = path.asString
            if namePart in name:
                pkgNames.append(os.path.basename(name))
        return pkgNames

    pathRes = ResMgr.resolveToAbsolutePath('')
    pathRes = os.path.dirname(os.path.dirname(pathRes)) + '/res/packages/'
    for pkgName in getPkgNames(pkgNamePart): 
        with ZipFile(pathRes + pkgName, 'r') as z:
            for name in z.namelist():
                if fileNamePart in name:
                    with z.open(name) as f:
                        return f.read()

xmlFile = getPkgFile('/gui-', 'flash/atlases/battleAtlas.xml') #<root>     <SubTexture>  <name> battleLoadingFormBgTable....
bFile = getPkgFile('/gui-', 'flash/atlases/battleAtlas.dds') #\x01\x01\x03\x01\x0e\x01\x0....

Как-то так надо.

Edited by StranikS_Scan
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

@StranikS_Scan , спасибо! Синглтон (или как это называется) AtlasManager выглядит действительно удобнее.

 

Упоминание ResMgr бесценно! А можно ли где-нибудь о нем поподробнее почитать, например увидеть список доступных методов, описания? Примеры полезные, но хотелось бы и самому посмотреть.

Edited by SerVB

Share this post


Link to post

Short link
Share on other sites
2 часа назад, StranikS_Scan сказал:

Нэээ. Должно быть что-то типа такого

правильно ли я понял, что таким образом можно генерить не весь атлас со всеми картинками, а только "податлас" с нужными (измененными)?!

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

Share this post


Link to post

Short link
Share on other sites
1 minute ago, Kapany3uk said:

правильно ли я понял, что таким образом можно генерить не весь атлас со всеми картинками, а только "податлас" с нужными (измененными)?!

 

Ну, в первоначальном варианте нужно будет вообще иметь по png картинке на каждую изменяемую иконку, но и "податласы" потом вполне можно будет поддержать.

 

3 minutes ago, Kapany3uk said:

при наличии сегрегации по типу боя

 

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

Share this post


Link to post

Short link
Share on other sites
3 часа назад, SerVB сказал:

А можно ли где-нибудь о нем поподробнее почитать, например увидеть список доступных методов, описания?

 

Чего там читать-то. Примеры см. в коде клиента игры. А свойства увидеть и опробовать можно через Орион.

spacer.png

spacer.png

 

 

Share this post


Link to post

Short link
Share on other sites
9 hours ago, StranikS_Scan said:

Чего там читать-то

 

OMG. Ну хочется. Почему сразу надо так рубить? Если это закрытый код, можно было бы прямо сказать. За примеры спасибо в любом случае.

 

Тем временем я почитал про imagemagick и понял, что оно само умеет рисовать. Это еще сильнее облегчает задачу: не надо тащить питоновские библиотеки с собой, только один бинарник остается.

 

Выглядеть последовательность команд будет как-то так:

convert sourceBattleAtlas.dds \
-alpha set -region 20x20+5+5 -alpha transparent -draw 'image srcOver 0,0 20,20 pathToTexture1.png' \
-alpha set -region 20x20+5+25 -alpha transparent -draw 'image srcOver 0,0 20,20 pathToTextrure2.png' \
battleAtlas.dds

Для каждой подтекстуры ее область сначала заполняется прозрачным, потом туда рисуется кастомная подтекстура. Возможно, можно как-то более коротко эти команды записать...

 

Получается, процентов 80 задачи уже понятно, как делать. Но еще остаются некоторые вопросы вот отсюда:

 

 

Ха! Сам бинарник-то imagemagick в районе 100 МБ весит. Не очень приятно... Может быть, потом найдется подходящий инструмент попроще.

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

  • Upvote 1

Share this post


Link to post

Short link
Share on other sites
4 часа назад, SerVB сказал:

Если это закрытый код, можно было бы прямо сказать.

 

О чем вы? Это всем известный нативный класс из клиента игры, все мододелы про него знают. Что вам Странник должен был сказать?

4 часа назад, SerVB сказал:

только один бинарник остается.

 

Бинарник это exe? Если да, то тогда не пойдет - ни каких exe в модах быть не должно. Это потенциальный источник ложных срабатываний антивирусов.

4 часа назад, SerVB сказал:

а просто его скачать при первом запуске.

 

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

Share this post


Link to post

Short link
Share on other sites
3 hours ago, 7-zip said:

Это всем известный нативный класс из клиента игры, все мододелы про него знают

 

Я мододел? Вроде да. Я про него знал? Вроде нет. Так что это заблуждение, будьте терпимее, пожалуйста.

 

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

 

3 hours ago, 7-zip said:

 

Бинарник это exe? Если да, то тогда не пойдет - ни каких exe в модах быть не должно. Это потенциальный источник ложных срабатываний антивирусов.

 

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

 

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

 

Скачать можно вот здесь: https://imagemagick.org/script/download.php#windows. Сайт вроде бы не самопальный, а вполне официальный. Exe подписанные. Программа известная, если речь идет о рисовании картинок с помощью консольных команд. Думаю, что из-за известности с антивирусами проблем не будет. А Вы считаете иначе? Аргументируйте, пожалуйста, что значит "exe в модах быть не должно" – чье это требование – и предложите еще варианты.

  • Upvote 1

Share this post


Link to post

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

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

https://github.com/Monstrofil/bigworld_docs

 

 

  • Upvote 1

Share this post


Link to post

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

Я мододел? Вроде да. Я про него знал? Вроде нет. Так что это заблуждение, будьте терпимее, пожалуйста.

 

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

 

8 часов назад, SerVB сказал:

Думаю, что из-за известности с антивирусами проблем не будет. А Вы считаете иначе? Аргументируйте, пожалуйста, что значит "exe в модах быть не должно" – чье это требование – и предложите еще варианты.

 

Что тут аргументировать? То вы вдруг мододел, а оказывается даже азов клиента игры не знаете. Сейчас скажу, что "все программисты сталкивались с этой проблемой, скачивания по сети exe всяких прогамм и их запуском у юзвера и постоянно случались казусы с тем, что антивирусы могут блочить", а вы вдруг себя объявите программистом?

 

Даже у XWF периодически проблемы с антивирусами, иногда они некоторые pyd и dll ложно считают вредоносными. Последней раз в этом году было. Загуглите тему на этом форуме.

8 часов назад, ktulho сказал:

 

Еще тут есть python_client_15.3.1.chm. Но надо понимать, что ВГ там все переписывает под себя с годами. Потому шукание по декомпилам клиента игры - куда полезнее.

Edited by 7-zip
  • Downvote 3

Share this post


Link to post

Short link
Share on other sites

Сколько токсичности и злости от Вас( Отвечу только по делу, на остальное не буду отвечать, так как не вижу смысла. Не хотите отвечать по делу, а хотите заводить срач – что ж, лучше вообще не пишите...

 

Напомню, что я хочу узнать "по делу":

 

11 hours ago, SerVB said:

Аргументируйте, пожалуйста, что значит "exe в модах быть не должно" – чье это требование – и предложите еще варианты.

 

Идея мода в том, чтобы модифицировать атлас на устройстве пользователя. Была предложена идея использовать для этого утилиту imagemagick, которая по-видимому является единственной популярной консольной программой, поддерживающую манипуляцию DDS картинками. Вы высказались, что exe утилиту использовать нельзя. И я хочу знать причину.

 

 2 hours ago, 7-zip said:

Даже у XWF периодически проблемы с антивирусами, иногда они некоторые pyd и dll ложно считают вредоносными

 

Если я правильно понял, речь про XFW/XVM. Никого не хочу обидеть, но XVM – довольно неизвестное ПО.

 

2 hours ago, 7-zip said:

скачивания по сети exe всяких прогамм и их запуском у юзвера и постоянно случались казусы с тем, что антивирусы могут блочить

 

Есть ли еще примеры, кроме XVM? Желательно более известных программ.

 

Также я попросил предложить варианты, как обойтись без exe. Вы не ответили. Надо ли это понимать так, что Вы не знаете других вариантов, а значит мод вообще не стоит делать?

Share this post


Link to post

Short link
Share on other sites
1 час назад, SerVB сказал:

Сколько токсичности и злости от Вас( Отвечу только по делу, на остальное не буду отвечать, так как не вижу смысла. Не хотите отвечать по делу, а хотите заводить срач – что ж, лучше вообще не пишите...

 

Умерьте свои фантазии и избавьте всех читающих от ваших извращенных измышлений. Это ни кому не интересно в данном разделе.

 

1 час назад, SerVB сказал:

Если я правильно понял, речь про XFW/XVM. Никого не хочу обидеть, но XVM – довольно неизвестное ПО.

 

Ложно детектился не сам XVM, а дебаг-модуль от  Microsoft, который используется везде и в XWF сейчас тоже, чтоб краши игры перехватывать. Он стандартный и везде есть, даже в VS тоже.

 

1 час назад, SerVB сказал:

Также я попросил предложить варианты, как обойтись без exe. Вы не ответили. Надо ли это понимать так, что Вы не знаете других вариантов, а значит мод вообще не стоит делать?

 

Вы сами то что-то делать можете/умете/будете? А то Странник вам написал как надо реализовать. От меня хотите чтоб я вам нашел вариант работы с ддс без exe. Прям какой-то инфантильный мододел. 

  • Downvote 3

Share this post


Link to post

Short link
Share on other sites
58 minutes ago, 7-zip said:

Ложно детектился не сам XVM, а дебаг-модуль от  Microsoft, который используется везде и в XWF сейчас тоже, чтоб краши игры перехватывать. Он стандартный и везде есть, даже в VS тоже.

 

Пример с блокированием модуля от Microsoft конечно настораживает, но за неимением альнернатив придется рискнуть и бандлить бинарник. Но спасибо за предупреждение, морально можно уже готовиться.

 

1 hour ago, 7-zip said:

От меня хотите чтоб я вам нашел вариант работы с ддс без exe.

 

Тут на самом деле не было требования. Вот Вы говорите, что бинарники не стоит использовать. С учетом того, что не известно, как еще можно работать с DDS, вытекает, что мод вообще не стоит делать. Получается, что это Ваша позиция. В своем вопросе я только попробовал ее уточнить, но опять не услышал прямого ответа, но очень много хамства.

 

1 hour ago, 7-zip said:

Вы сами то что-то делать можете/умете/будете?

 

Рискну сказать, что что-то могу. Если интересно, полюбопытствуйте темы в моем профиле. Насчет "буду ли я заниматься конкретно этим модом" – не могу обещать. Как уже говорил выше, мне бы больше понравился вариант присоединиться к чьим-то наработкам, особенно если там будет нужна помощь. Но если довольно долго никто не будет начинать, я начну сам, потому что для моего основного мода такая возможность динамической генерации атласа была бы полезна и я бы хотел перевести свой мод полностью на нее.

 

Встречный вопрос, чтобы лучше узнать сообщество: а у Вас какой опыт? Не нашел Ваших тем на форуме...

Share this post


Link to post

Short link
Share on other sites

И вот опять Черный Плащ спешит на помощь - https://github.com/dph119/PyDDS. Cможешь разобраться как пользоваться? Там примеры есть png -> dds и обратно.

 

Не знаю какой там у кого опыт, однако.... ты как собирался юзать exe? Наверно положить в wotmod, затем при запуске игры его извлечь в какую папочку и запустить? Это увы типичное поведение, на которое сегодня агрятся многое дешевые антивирусы, когда одна программа достает из-за пазухи exe и его запускает. Далеко тут ходить не нужно. Где-то лет 5 назад в Орионе был вариант протектора pyc файлов с инжектором. Работал он по описанной выше схеме - инжектор был exe и прятался внутри pyc. Закончилось это начинание быстро - через полгода все антивирусы с вирусостотала начали блочить и Орион и инжектор. Даже Mr13 тогда обнаружил, что из-за выложенного в теме Ориона форум попал в лист опасных сайтов. Такие вот дела с этими exe.

 

PS: Еще одна подсказка, потом поймешь зачем нужна - png.py

Edited by StranikS_Scan
  • Upvote 2
  • Downvote 1

Share this post


Link to post

Short link
Share on other sites
55 minutes ago, StranikS_Scan said:

Где-то лет 5 назад в Орионе

 

Много времени прошло)

 

1 hour ago, StranikS_Scan said:

с инжектором

 

Таки инжектор действительно сомнительное ПО. Или нет?

 

56 minutes ago, StranikS_Scan said:

 

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

 

57 minutes ago, StranikS_Scan said:

Наверно положить в wotmod, затем при запуске игры его извлечь в какую папочку и запустить?

 

Класть в wotmod не хочется, потому что как раз хочется сократить размер модов с атласами, а размер той проги перебивает размер атласа. Идея грузить по прямой ссылке мне нравится пока больше. Положить в папку mods/imagemagisk и оттуда запускать после этого всегда.

Share this post


Link to post

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

аки инжектор действительно сомнительное ПО. Или нет?

 

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

 

38 минут назад, SerVB сказал:

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

 

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

 

38 минут назад, SerVB сказал:

Идея грузить по прямой ссылке мне нравится пока больше. Положить в папку mods/imagemagisk и оттуда запускать после этого всегда.

 

Два нюанса, первый - ВГ не шибко радуется таким манипуляциям в их клиенте игры, если собираешься этот мод позиционировать как "разрешенный ВГ", то тебе стоит в саппорте спросить об этом. Второе - если класть туда, то качаться будет каждый микропатч и каждый раз как юзвер снесет моды. Однако хотелось бы чтоб наоборот - качнулось один раз и пусть себе лежит на компе до очередной переустановки винды. Отсюда лучше скачать в c:\Users\.....\AppData\Roaming\Wargaming.net\WorldOfTanks\ и дальше твоя подпапка. Путь туда можно получить через BigWorld.wg_xxx и там есть атрибут нужный, не помню как называется.

Edited by StranikS_Scan
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites
52 minutes ago, StranikS_Scan said:

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

 

К сожалению, заблуждаетесь. Все ссылки по теме "публикация на гитхабе без лицензии" говорят, что публикация без лицензии ничего не разрешает. Как бы смешно не звучало, но даже читать не разрешено по умолчанию. Вот например про это спрашивают и отвечают: https://qna.habr.com/q/639129

 

52 minutes ago, StranikS_Scan said:

c:\Users\.....\AppData\Roaming\Wargaming.net\WorldOfTanks\

 

Пока что я не вижу преимуществ, ведь предложенная мной папка mods/imagemagisk не лежит внутри папок микропатчей, а лежит рядом с ними. Насколько я понимаю, такая папка будет вполне нормально жить вместе с игрой. Когда я использовал XVM, у него вроде тоже папка типа mods/xvm была, которая не привязывалась к патчу.

 

52 minutes ago, StranikS_Scan said:

первый - ВГ не шибко радуется таким манипуляциям в их клиенте игры, если собираешься этот мод позиционировать как "разрешенный ВГ", то тебе стоит в саппорте спросить об этом

 

Окей, спрошу, но когда уже будет рабочая версия. А если ВГ не понравится, буду уже думать. Может, к тому моменту выяснится что-то про лицензию pydds. По крайней мере, изменения в этом случае затронут только реализацию, а для внешних модов публичный интерфейс останется тот же и им ничего переделывать не придется.

Edited by SerVB
Читать на самом GH все же можно
  • Upvote 1

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.

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