Как определить чего не хватает моду?

Discussion in 'Russian - русский' started by eldalex, Mar 21, 2024.

  1. eldalex

    eldalex
    Expand Collapse

    Joined:
    Apr 17, 2023
    Messages:
    2
    Всем привет! вопрос к мододелам. как понять чего не хватает моду, если авто при загрузке улетает?
    По всей видимости не хватает основного jbeam файла. но как проверить его наличие без загрузки игры?
    хочу попробовать написать python скрипт валидирующий моды.
    принцип работы такой, указываем на zip файл мода.
    скрипт открывает/распаковывает, пробегается по файлам внутри, и если видит что основного jbeam файла нет, рапортует о том что мод при загрузке улетит. опционально рапортует о том что нет других jbeam файлов например колёс и дверей, что мол авто не улетит но будет без колёс и дверей или без каких либо других частей.
    Основная проблема в том что я не понимаю к чему прицепиться. вот я открываю к примеру pigeonTurbo.zip
    в нем:
    два .json с описанием модели
    четыре изображения
    два .pc файла с описанием частей и еще какими то переменными.
    "parts":{
    "paint_design":"pigeon_skin_flames",
    "gps":"none",
    "pigeon_bumper_F":"pigeon_bumper_F",
    "pigeon_brake_R":"pigeon_brake_R",
    ....
    ...
    вот эти части pigeon_bumper_F, pigeon_brake_R и другие я вижу в виде jbeam файлов в основном моде pigeon.zip.
    Но я не могу понять как игра понимает что надо взять именно эти файлы, каким образом она связывает pigeonTurbo.zip с pigeon.zip, что мы загружаем какую то машину с мода pigeonTurbo.zip, а игра такая О! это мне надо сходить в pigeon.zip, взять оттуда pigeon.jbeam чтоб машина не улетела, ну и остальные части если повезёт захватим там же. где в pigeonTurbo.zip ссылка на pigeon.zip
    Буду благодарен если подскажете механизм. в игру играет мой мелкий, 5 лет, ставит все моды что видит и расстраивается когда машины улетают вдаль. причину то я выяснил, а как исправить или хотя бы выявить все косячные моды чтобы вычистить их я не могу догнать:(
     
  2. Bekwennn:)

    Bekwennn:)
    Expand Collapse

    Joined:
    Oct 9, 2019
    Messages:
    278
    Точно как работает я объяснить не смогу так как самоучка, но принцип работы такой, у основной машины т.е от разработчиков есть корневая отдельная папка каждого авто (вот именно это объяснить я не могу как это работает ведь авто от разработчиков не разархивируется а храниться в архиве и работает.), " \0.31\temp\vehicles\ . Думаю кешированные данные храняться тут, но кешируюся в основном модификации и в основном там лежат файлы формата .cdae".

    По поводу как понимает игра откуда взять файлы. Как я написал ранее у каждого авто есть свой путь. При создании модификации путь точно такой же как и у автомобиля от разрабочитков. тобишь в вашей ситуации " vehicles\pigeon\ " это корневая папка авто назовём её так. В этом и состоит смысл что бы дать понять игре вот тут ищи!.
    В вашем случае файл формата .json это описание конфигурации которая будет показыватся в селекторе выбора автомобиля а не описание модели.
    Файл формата .pc это именно конфигурация автомобиля из каких частей он состоит. Принцип закалючается в том что это обычная иерархия: в структуре есть тип "slotType": ей присвается название к примеру "pigeon_bumper_F". Далее идёт тоже название "pigeon_bumper_F" но это название именно детали. Название детали может быть разным к примеру pigeon_bumper_F_ttSport или pigeon_bumper_F_блаблабла. То есть бамперов как запчастей может быть много, но "slotType" он один для определенной части автомобиля.
    Короче говоря вам нужно понять принцип модостроения что бы создать то что вы хотите, я постарался показать на диагремме принцип иерархии строения авто. На самом деле не представляю как сделать то что вы хотите, так как это будет очень сложно. Есть еще такой момент по поводу колес, колеса не все храняться внутри каждого авто. На данный момент они хранятся в архиве common.zip это что то вроде ядро деталей для многих авто.

    Могу ошибаться по некоторым моментам, кто разбирается можете поправить.
    OrgchartDiagram12_2.png
     
  3. eldalex

    eldalex
    Expand Collapse

    Joined:
    Apr 17, 2023
    Messages:
    2
    Ого! Спасибо за ответ!:) попробую разобраться)
     
  4. Bekwennn:)

    Bekwennn:)
    Expand Collapse

    Joined:
    Oct 9, 2019
    Messages:
    278
    Вы так же можете обращать внимание на косноль. Там обычно пишутся какие либо ошибки. Если к примеру в jbeam и конфигурации прописана какая либо деталь. Например игра обновилась и были внесены изменения конкретно с названием каких либо Mesh 3d деталей. То при загрузке вы видете что нет колес или другой части кузова. И если в консоле написано Failed to get render mesh pegion_bumper_F ( это ошибка именно 3d mesh которая храниться в .dae файле не путайте с jbeam, mesh прописываются в разделе flexbodies). Обычно это значит что он не может загрузить именно часть 3d модели из .dae файла либо неправильное название(из ошибки при переименовании или после обновлении игры) либо детали просто несущестует.
     
    • Like Like x 1
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice