Jump to content
Korean Random
Polyacov_Yury

Центр управления танковыми моделями: Ремодомод и Шкуродёр

Recommended Posts

5 часов назад, tricsi сказал:

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

 

5 часов назад, tricsi сказал:

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

 

Код абсолютно идентичен. Я просто вынес его в отдельный файл.

Суть в том, что у Шкуродёра другая папка конфигов. Если конкретнее - другой файл кеша скинов и другой файл настроек. Они лежат в mods/configs/PYmods/Skinner. Попробуй конфиги свои скопировать из папки Ремодомода в папку Шкуродёра.

 

5 часов назад, tricsi сказал:

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

 

Это у тебя кеш настроек грохнулся почему-то. Я тут ни при чём.

 

Интересно. У меня сброшенный Трикси реплей тоже рушится.

Я НЕ понимаю, почему версия от 7 числа работает, а от 15 - уже нет. Единственное, что я там сделал - это исправил работу окна Внешнего вида (я криво совал emblemSlot'ы в дескриптор модуля танка при применении на него ремоделинга), добавил изменение моделей для всех modelsSets'ов - что должно было изменить рендеринг только машин с активной трёхмерной кастомизацией - и добавил текстуры в папке _skins в список того, что мод считывает во время проверки текстур.

 

Я попробую откатить код применятора статических шкурок на состояние 7 октября и стартануть реплей. Если это поможет - так тому и быть.

 

Да, сработало. Теперь главный вопрос сегодняшнего вечера.

 

modelsSets - это тупо dict. Тупо словарь. В котором для всех машин, кроме Caernarvon AX, КВ-2, BDR G1B и Т-34Э один ключ - 'default'.

ModelStatesPaths - это namedtuple. Состоит из трёх путей - к обычной модели, модели подбитого танка и модели с сорванной башней.

vDesc - это дескриптор модели. Достаточно знать, что у него 4 атрибута (на самом деле больше) - chassis, hull, gun и turret.

TankPartNames.ALL - это кортеж, в котором, собственно, и лежат строки, по которым можно получить нужные нам атрибуты из vDesc.

(BigWorld.curCV = './res_mods/1.2.0.1')

 

Почему вот так работает:

    for partName in TankPartNames.ALL:
        for descr in (vDesc,) if not isinstance(vDesc, CompositeVehicleDescriptor) else (
                vDesc._CompositeVehicleDescriptor__vehicleDescr, vDesc._CompositeVehicleDescriptor__siegeDescr):
            part = getattr(descr, partName)
            path = part.modelsSets['default'].undamaged.replace('vehicles/', 'vehicles/skins/models/%s/vehicles/' % sname)
            if os.path.isfile(BigWorld.curCV + '/' + path):
                models = part.modelsSets['default']
                part.modelsSets['default'] = ModelStatesPaths(path, models.destroyed, models.exploded)
            else:
                print g_config.ID + ': skin model not found:', path
            part.models = part.modelsSets['default']

а вот так крашится без логов?

    for partName in TankPartNames.ALL:
        for descr in (vDesc,) if not isinstance(vDesc, CompositeVehicleDescriptor) else (
                vDesc._CompositeVehicleDescriptor__vehicleDescr, vDesc._CompositeVehicleDescriptor__siegeDescr):
            part = getattr(descr, partName)
            for setName in part.modelsSets:
                models = part.modelsSets[setName]
                path = models.undamaged.replace('vehicles/', 'vehicles/skins/models/%s/vehicles/' % sname)
                if os.path.isfile(BigWorld.curCV + '/' + path):
                    part.modelsSets[setName] = ModelStatesPaths(path, models.destroyed, models.exploded)
                else:
                    print g_config.ID + ': skin model not found:', path
            part.models = part.modelsSets['default']

Хотя, я, похоже, понял, почему. Модифицировать словарь во время итерации по нему - это вин. Но почему вместо нормального понятного RuntimeError оно крашится на уровне движка с access violation'ом?!

Причём копирование списка ключей не помогло, что характерно.

 

Больше скажу. Даже вот так крашится:

    for partName in TankPartNames.ALL:
        for descr in (vDesc,) if not isinstance(vDesc, CompositeVehicleDescriptor) else (
                vDesc._CompositeVehicleDescriptor__vehicleDescr, vDesc._CompositeVehicleDescriptor__siegeDescr):
            part = getattr(descr, partName)
            new_modelsSets = {}
            for setName, models in part.modelsSets.items():
                path = models.undamaged.replace('vehicles/', 'vehicles/skins/models/%s/vehicles/' % sname)
                if os.path.isfile(BigWorld.curCV + '/' + path):
                    new_modelsSets[setName] = ModelStatesPaths(path, models.destroyed, models.exploded)
                else:
                    new_modelsSets[setName] = models
                    print g_config.ID + ': skin model not found:', path
            part.modelsSets = new_modelsSets
            part.models = part.modelsSets['default']

 

А, ну понятно. Access violation происходит не из-за того, что я dict редактирую, а где-то дальше в картошкином коде. Что-то им не по нраву в том, как я модели редактирую...

 

Похоже, остаёмся мы зимовать без шкурок и ремодов на 3D-кастомизированных моделях. @O6opMoT, если хочешь отредактировать обмазанную кастомизацией тридцатьчетвёрку - придётся тебе текстуры из папки _skins для неё в res_mods кидать.

 

Распаковку моделей из папки _skins я пока оставлю - for testing purposes - но применяться они не будут. Залил обнову.

Edited by Polyacov_Yury

Share this post


Link to post

Short link
Share on other sites

@Polyacov_Yury 

всё работает (и настройки не сломал)

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

код картошки, даже не пытайся осознать, себе дороже

следующий СТ, а затем и релиз уже не за горами

 

 

Share this post


Link to post

Short link
Share on other sites

@Polyacov_Yury 

Привет!

Юра, проверь что лежит у тебя на раздаче мода

скачал, поставил на тест 1.3 и тишина, от слова совсем...и скрипты аж от середины 2017 года  - не туда посмотрел, сори

установил скинер от 29.10, всё заработало, только управления нет, вручную настраивал

вроде всё работает

Edited by tricsi

Share this post


Link to post

Short link
Share on other sites

@tricsi я тоже использую Skinner.wotmod от 29.10.18, а версия от 06.11.18 там есть баг после перезапуска клиента настройки с конфига не читает и грузится дефолтный конфиг из пакета Skinner.wotmod. Пока играю на Skinner.wotmod от 29.10.18 - это все на релизе, на тесте 1.3.0.0 СТ я не проверял еще.

Share this post


Link to post

Short link
Share on other sites

@Xotabych 

у меня на раздаче до сих пор  RemodEnabler  07.10.2018, поэтому и не пишут

он тоже работает на СТ, и тоже без управления

Share this post


Link to post

Short link
Share on other sites

@Xotabych 

почти такой же как и  29.10

только глючный, и зачем он мне ? мне не нужен сброс конфы после перезапуска клиента

и после установки он мне подломил окно клиента, поэтому только 29.10

а ты ещё и на всеобщее обозрение кинул ссылку....

Edited by tricsi

Share this post


Link to post

Short link
Share on other sites

Прошу извинить, на ЯД случайно улетели прототипы новых настроечных меню. Откатил Ремодомод и Шкуродёр на последнюю рабочую конфигурацию, заодно просьба проверить их работоспособность на тесте 1.3.

 

У Ремодомода на 1.3, после того, как зачёты сдам, починю совместимость шасси. Как выяснилось, ещё в 1.1 добавили отвечающий за траки блок параметров, о котором я не был в курсе, без которого всё ломается и который невозможно сдампить в конфиг не через жопу - конструктор сидит в Vehicular (часть exeшника), и ему скармливается тупо DataSection - то есть, ссылка на кусок сырого (ни каким образом не парсенного) xml-конфига. И, помимо этого, переделали практически все остальные параметры, так что сделать обратную совместимость конфигов - будет та ещё задачка.

Share this post


Link to post

Short link
Share on other sites
В 26.11.2018 в 15:45, Polyacov_Yury сказал:

.... работоспособность на тесте 1.3.

RemodEnabler

нет

python_RemodEnabler_26.11.log

да

python_RemodEnabler_07.10.log

----

Skinner

да

python_Skinner_26.11.log

да

python_Skinner_29.10.log

===

рабочий  кулькулятор,  XP_sp3

 

 

Share this post


Link to post

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

RemodEnabler

нет

python_RemodEnabler_26.11.log

да

python_RemodEnabler_07.10.log

----

Skinner

да

python_Skinner_26.11.log

да

python_Skinner_29.10.log

===

рабочий  кулькулятор,  XP_sp3

 

 

 

Большое спасибо. Версия Ремодомода от 26.11 и на нынешнем релизе не работает по нескольким причинам. В том числе из-за изменений в микропатче.

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

 

Покопался в скриптах после микропатча. Про legacy support они, видимо, не слышали.

Поддержка Ремодомода приостановлена до выхода 1.3 на релиз. Я не могу поддерживать три разные версии кода для чтения конфигов.

Шкуродёр должен работать в полном объёме.

Share this post


Link to post

Short link
Share on other sites

@Polyacov_Yury 

что 1.3, что 1.2, на текущий момент, оба клиента кривые....

ВГ будут править, забей и спокойно сдавай зачёты

 

@Polyacov_Yury 

Юра, архив от клиента 1.2.0.2  нужен ?

кстати на обновлённом клиенте  версия  Ремодомода  07.10  прекрасно работает, даже реплей запустился (тот который крашил), правда предупредил о не совпадении версии

 

python.log

-----

1.2.0.2

Updates.rar

 

Share this post


Link to post

Short link
Share on other sites

Привет, народ. Хочу Скиннер пощупать, отсюда вопрос - свои шкурки куда пихать? Сюда, нет - Skinner.wotmod\res\vehicles...?

И гусли, трупы он тоже подхватит или их отдельно в res_mods придется закидывать?

Share this post


Link to post

Short link
Share on other sites

Нет, не туда. Напомни, каким местом шапку читаешь?
Несмотря на то, что Ремодомод и Скиннер - это две отдельные сущности - принцип работы все еще тот же.

Share this post


Link to post

Short link
Share on other sites

@Polyacov_Yury 

RE не детектит, похоже не видит шкуры

Skiner  детектит, камо снимает, на NYst  шкур не видит (в папке  _skins),  можно удалить все скиновские папки из архивов и всё будет хорошо

при наведении, двойные катки у всех

Edited by tricsi

Share this post


Link to post

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

RE не детектит, похоже не видит шкуры

Он с ними больше не работает. Писал же.

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

камо снимает

Ась? Ты про динамические?

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

на NYst  шкур не видит (в папке  _skins)

И не должен. Он вообще их трогать не должен.

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

при наведении, двойные катки у всех 

А так и задумано же. Разве нет?

Share this post


Link to post

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

А так и задумано же. Разве нет?

первые три пункта пропускаем, там нормально всё

а про катки опешил просто, камера приближает ...и увидев поперёк

1610824745_2018-12-30_20-23-39_953.jpg.c9489b8b7b81d8af67b2c2f7b0294d9f.jpg

1131996250_2018-12-30_20-23-57_703.thumb.jpg.47f383675b527570671ad68863b94463.jpg

986667069_2018-12-30_20-24-24_718.thumb.jpg.7fc8c082da52aaa3c32a1491c02dd006.jpg

----

можно забить, вдоль всё хорошо

===

шкуры без мапов, жатые тоже будет отображать корректно

....

XP_sp3

только завтра буду дома (W10 и W7)

 

 

 

Edited by tricsi

Share this post


Link to post

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

а про катки опешил просто, камера приближает ...и увидев поперёк

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

Опять гусеницы отключить?

Share this post


Link to post

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

Опять гусеницы отключить?

не, не

на отдалении и вдоль танка нормально всё, не отключай

----

буду удалять из архивов технику, которая имеет папки   _skins

хочу посмотреть как будут работать из штатных папок

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