A console-program for comparing Defs folder with DefInjected folder.

Started by KviEt, September 01, 2016, 05:48:33 AM

Previous topic - Next topic

KviEt

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

Ivanzyfer

Немного не так. У каждого мода есть папка Defs. Но в этой папке могут быть Defname, которые есть и в Core.
То есть мод берёт оригинальный defname, который есть в Core и изменяет его свойства(ресурсы для постройки, стоимость, количество здоровья и прочее)

Если добавлять перевод этого Defname и в Core и в моде, то будет ошибка о дубликате перевода.

KviEt

Но программа не создает перевод если в свойствах defname нету описания, которое показывается в игре, она игнорирует такие свойства как (ресурсы для постройки, стоимость, количество здоровья и прочее)
Поэтому если использовать Defs мода отдельно от основного Defs дубликатов быть не должно... да даже теоретически если их использовать вместе дубликаты не появятся...
Может все же мод не только изменяет свойства у defname но и изменяет описание перезаписывая основное? Тогда проблема мне понятна...

Ivanzyfer

изменяет описание перезаписывая основное
Именно так и происходит.
Берётся полностью defname и перезаписывается с другими параметрами.

KviEt

Хорошо, базовая проблема ясна.
Что относительно модов? Они могут перезаписывать значения друг у друга? У них есть какой-то порядок чтения?

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

Ivanzyfer

Такой проблемы как отсутствие перевода после удаления мода не будет - весь перевод дефов, которые есть в Core находится в Core.
Просто не нужно в модах добавлять перевод дефов, которые есть в Core.
С разработчиком бесполезно говорить. Он даже перевод бэкстори не может организовать.

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

KviEt

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

Ivanzyfer

Плохо я объяснил. Попробую на примере. Допустим есть мод, которые берет дефнэйм bed и изменяет ресурсы, необходимые для постройки. Этот дефнэйм оказывается в папке defa мода. Но этот же дефнэйм остаётся в папке defs Core. Если добавить перевод дефнэйма bed в мод, то будет ошибка о дубликате перевода.( Потому что перевод уже есть в Core)

Выходит что значения мод перезаписывают, а перевод не может переписать.