|
|
|
Канал X4: Foundations »
Модовый и скриптовый отсек X4: Foundations: «Ковыряем движок и всё такое» |
|
|
Shadowman 265 EGP
Рейтинг канала: 3(31) Репутация: 42 Сообщения: 1392 Откуда: Альфа Центавра Зарегистрирован: 03.12.2003 |
|
Точно! <stat id="ships_owned" value="-203"/>
Это и показывает в общей статистике. Причем, цифра все время в минуса углубляется, и даже не зависимо от того, кораблей больше становится или нет.
В другом месте показывает верно: "Собственные корабли: 52"
(где в сейве - хз, таких записей - миллион).
А по секторам - так и есть.
Вот такие записи:
Cкрытый текст (кликните здесь для просмотра)
<component class="sector" macro="cluster_43_sector001_macro" connection="cluster" code="LEB-384" owner="teladi" knownto="player" id="[0xfb1]">
...
и далее по тексту:
<discovered>
<sector id="[0xfb1]">
<boundary x="23705.363" y="-137795.172" size="400000"/>
<quadtree depth="9" x="-66" y="-149">
<node>
<node/>
<node/>
|
|
|
|
Shadowman 265 EGP
Рейтинг канала: 3(31) Репутация: 42 Сообщения: 1392 Откуда: Альфа Центавра Зарегистрирован: 03.12.2003 |
|
w31 : |
при описании корабля в xml сначала идёт список всей команды, а в конце описания отдельно вынесен пилот и его навыки.
|
Да, это - общий случай. Но если сейв сделан где-то в окружении, где есть неписи, гуляющие по палубе, например, то полное описание персонажа (с характеристиками) может присутствовать, например, и в описании корабля и где-то дальше - видимо, где бродящие на станции описаны, и в тэге person тогда м.б еще что-то типа:
Код: |
<person macro="character_argon_female_pilot_02_macro" flags="skillsvisible|intransit|temporary" role="marine"> |
Отлавливал это когда сейвился на Одиссее и смотрел его команду.
Из 45 чел. примерно 10-15 имели в сейве по две записи с полным описанием скиллов и назначенной тушки.
|
|
|
Spiny_Ewg 60 EGP Рейтинг канала: 1(1) Репутация: 2 Сообщения: 149
Зарегистрирован: 11.12.2018 |
|
Какой файл XML отвечает за взрывы кораблей?
|
|
|
Andy_MB 130 EGP
Рейтинг канала: 4(89) Репутация: 10 Сообщения: 572 Откуда: Край вселенной, Квазар-1 Зарегистрирован: 13.07.2015 |
|
Spiny_Ewg : |
Какой файл XML отвечает за взрывы кораблей?
|
Не совсем корректно.
Скажу так: Взрывы (уничтожение) кораблей прописываются во многих скриптах.
Например поиском можно найти по слову "explosion" или "destroy_object"
в файле: lib.request.orders.xml или masstraffic.police.xml
Код: |
destroy_object object="this.controlled" explosion="true" |
explosion="false" прописывают, чтобы не анимировать взрыв когда, например, игрок вне зоны взрыва и не надо ресурсы тратить на анимацию.
|
|
|
Spiny_Ewg 60 EGP Рейтинг канала: 1(1) Репутация: 2 Сообщения: 149
Зарегистрирован: 11.12.2018 |
|
Andy_MB : |
Spiny_Ewg : |
Какой файл XML отвечает за взрывы кораблей?
|
Не совсем корректно.
Скажу так: Взрывы (уничтожение) кораблей прописываются во многих скриптах.
Например поиском можно найти по слову "explosion" или "destroy_object"
в файле: lib.request.orders.xml или masstraffic.police.xml
Код: |
destroy_object object="this.controlled" explosion="true" |
explosion="false" прописывают, чтобы не анимировать взрыв когда, например, игрок вне зоны взрыва и не надо ресурсы тратить на анимацию.
|
Вот именно в этих "explosion" запутался. Хотел найти именно тот конечный взрыв или вспышку огня после которого корабль превращается в хлам.
В папке \assets\legacy\fx\explosionfx их целая куча, меняю содержимое что-бы вычислить и никак не получается, никаких изменений не видно хотя игра видит этот эксперементальный мод.
|
|
|
Andy_MB 130 EGP
Рейтинг канала: 4(89) Репутация: 10 Сообщения: 572 Откуда: Край вселенной, Квазар-1 Зарегистрирован: 13.07.2015 |
|
Spiny_Ewg : |
Хотел найти именно тот конечный взрыв или вспышку огня после которого корабль превращается в хлам.
|
Это явно уже не xml. Надо обращаться к Питеру Абелю. Ну или наверняка есть софт разбирает экзэшник на язык повыше ассемблера.
|
|
|
Spiny_Ewg 60 EGP Рейтинг канала: 1(1) Репутация: 2 Сообщения: 149
Зарегистрирован: 11.12.2018 |
|
Andy_MB : |
Spiny_Ewg : |
Хотел найти именно тот конечный взрыв или вспышку огня после которого корабль превращается в хлам.
|
Это явно уже не xml. Надо обращаться к Питеру Абелю. Ну или наверняка есть софт разбирает экзэшник на язык повыше ассемблера.
|
В Ил-2 графические эффекты делались в текстовых файлах. Думал и тут так же.
|
|
|
earthman 125 EGP
Репутация: 10 Сообщения: 248 Откуда: Zaporizhzhya, Ukraine Зарегистрирован: 12.02.2002 |
|
клепаю мод по мотивам https://www.nexusmods.com/x4foundations/mods/27 - пытаюсь добавить не тупых десантников в народ, который шляется по станциям.
Если кто в курсе, подскажите где ошибка:
файл мода - characters.xml
Код: |
<?xml version="1.0" encoding="utf-8"?>
<diff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<replace sell="characters/character[@group='argon.marine']/skills">
<skills>
<skill type="boarding" min="1" max="6"/>
<skill type="morale" min="1" max="6"/>
<skill type="engineering" exact="1"/>
<skill type="piloting" max="0"/>
<skill type="management" exact="0"/>
</skills>
</replace>
</diff> |
В игре так:
Код: |
<characters>
...
<character id="marine_argon_random_rookie" group="argon.marine">
<category tags="[crew, marine, rookie]" faction="[argon, antigone, scaleplate, hatikvah, alliance, faction.player]" race="argon"/>
<owner list="[argon, antigone]"/>
<skills>
<skill type="boarding" min="1" max="2"/>
<skill type="morale" max="3"/>
<skill type="engineering" exact="0"/>
<skill type="piloting" max="1"/>
<skill type="management" exact="0"/>
</skills>
</character>
...
</characters> |
|
|
|
Andy_MB 130 EGP
Рейтинг канала: 4(89) Репутация: 10 Сообщения: 572 Откуда: Край вселенной, Квазар-1 Зарегистрирован: 13.07.2015 |
|
Я бы так попробовал:
Код: |
<?xml version="1.0" encoding="utf-8"?>
<diff>
<replace sell="/characters/character[@group='argon.marine']/skills">
<skills>
<skill type="boarding" min="1" max="6"/>
<skill type="morale" min="1" max="6"/>
<skill type="engineering" exact="1"/>
<skill type="piloting" max="0"/>
<skill type="management" exact="0"/>
</skills>
</replace>
</diff>
|
насчет в diff указывать расположение схемы - тут без разницы, а вот слэша не хватает перед /characters
|
|
|
eliseeff 268 EGP
Рейтинг канала: 2(21) Репутация: 5 Сообщения: 932
Зарегистрирован: 07.03.2015 |
|
earthman : |
клепаю мод по мотивам https://www.nexusmods.com/x4foundations/mods/27 - пытаюсь добавить не тупых десантников в народ, который шляется по станциям.
Если кто в курсе, подскажите где ошибка:
файл мода - characters.xml
Код: |
<?xml version="1.0" encoding="utf-8"?>
<diff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<replace sell="characters/character[@group='argon.marine']/skills">
<skills>
<skill type="boarding" min="1" max="6"/>
<skill type="morale" min="1" max="6"/>
<skill type="engineering" exact="1"/>
<skill type="piloting" max="0"/>
<skill type="management" exact="0"/>
</skills>
</replace>
</diff> |
|
replace sell ==> replace sel
Перед путем отсутствует слэш. Учитывая, что вы отталкиваетесь не от корневой ноды - их требуется два. А тогда и указание ноды characters можно убрать.
Если снижаете навык пилотажа до нуля - не надо указывать максимум, а указывайте точное значение.
Токен @group='argon.marine' в данном случае лично я бы не использовал. Он может дублироваться. Лучше привязаться к ид. Это - гарантированно...
Попробуйте так:
Код: |
<?xml version="1.0" encoding="utf-8"?>
<diff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
<replace sel="//character[@id='marine_argon_random_rookie']/skills">
<skills>
<skill type="boarding" min="1" max="6"/>
<skill type="morale" min="1" max="6"/>
<skill type="engineering" exact="1"/>
<skill type="piloting" exact="0"/>
<skill type="management" exact="0"/>
</skills>
</replace>
</diff> |
Последний раз редактировалось: eliseeff (17:37 05-01-2019), всего редактировалось 1 раз |
|
|
earthman 125 EGP
Репутация: 10 Сообщения: 248 Откуда: Zaporizhzhya, Ukraine Зарегистрирован: 12.02.2002 |
|
Спасибо огромное, допишу - выложу)))
Выложил - распаковать в .../{number}/Extensions две папки. Проверил на 1.5 работает. Сильно умных десов не делал, чтоб поинтереснее
З.Ы.: Советую искать сплитов - у них скрытые навыки хорошие.
Последний раз редактировалось: earthman (21:06 05-01-2019), всего редактировалось 2 раз(а) |
|
|
alexalsp 513 EGP
Рейтинг канала: 5(206) Репутация: 54 Сообщения: 4235
Зарегистрирован: 12.08.2014 |
|
Как сообщить игре, что некую турель, например при постройке капшипа, можно воткнуть в слот L, S и тд
где прописано ?
Вариант скилов
Код: |
<pilot>
<select race="[race.argon, race.paranid, race.teladi]" tags="tag.aipilot"/>
<skills>
<skill type="piloting" exact="15" />
<skill type="morale" exact="15" />
<skill type="engineering" exact="15" />
<skill type="management" exact="15" />
<skill type="boarding" exact="15" />
</skills>
</pilot>
<people>
<person role="service" weight="100">
<select race="[race.argon, race.paranid, race.teladi]" tags="tag.crew"/>
<skills>
<skill type="piloting" exact="15" />
<skill type="morale" exact="15" />
<skill type="engineering" exact="15" />
<skill type="management" exact="15" />
<skill type="boarding" exact="15" />
</skills>
</person>
<person role="marine" weight="100">
<select race="[race.argon, race.paranid, race.teladi]" tags="tag.marine"/>
<skills>
<skill type="piloting" exact="15" />
<skill type="morale" exact="15" />
<skill type="engineering" exact="15" />
<skill type="management" exact="15" />
<skill type="boarding" exact="15" />
</skills>
</person>
</people>
|
_________________ CMDR: Fallout(EG)
ED - если застряли: https://discord.gg/w56kPWH
Последний раз редактировалось: alexalsp (21:51 09-01-2019), всего редактировалось 1 раз |
|
|
Spiny_Ewg 60 EGP Рейтинг канала: 1(1) Репутация: 2 Сообщения: 149
Зарегистрирован: 11.12.2018 |
|
Как правильно прописать замену файла новым?
в новом:
<diff>
<replace sel="/имя файла">
...
...содержимое файла
...
</replace>
</diff>
Правильно?
|
|
|
Andy_MB 130 EGP
Рейтинг канала: 4(89) Репутация: 10 Сообщения: 572 Откуда: Край вселенной, Квазар-1 Зарегистрирован: 13.07.2015 |
|
Spiny_Ewg : |
Как правильно прописать замену файла новым?
в новом:
<diff>
<replace sel="/имя файла">
...
...содержимое файла
...
</replace>
</diff>
Правильно?
|
Нет!
Нода <diff> предназначена не для замены файлов, а для внесения изменений в существующий скрипт.
К примеру есть скрипт, который запускает автоторговца по всей вселенной. Вам не нравится алгоритм работы этого скрипта. Вы пишете свой скрипт. Но для того, чтобы теперь все кораблики, которым отдавался такой приказ , летали не по ванильному скрипту, а по вашему, нужно с помощью <diff> в ванильном (вызывающем) скрипте заменить этот вызов ванильного ai скрипта на вызов вашего ai скрипта.
Примеры выше описывались.
|
|
|
alexalsp 513 EGP
Рейтинг канала: 5(206) Репутация: 54 Сообщения: 4235
Зарегистрирован: 12.08.2014 |
|
Spiny_Ewg : |
Как правильно прописать замену файла новым?
в новом:
<diff>
<replace sel="/имя файла">
...
...содержимое файла
...
</replace>
</diff>
Правильно?
|
Код: |
<?xml version="1.0" encoding="utf-8"?>
<diff>
<replace sel="//mdscript">
<mdscript name="vasa pilil mashy" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="md.xsd">
********************
</mdscript>
</replace>
</diff>
|
Можно и текущий заменить полностью, не обязательно что либо прописывать .
_________________ CMDR: Fallout(EG)
ED - если застряли: https://discord.gg/w56kPWH
Последний раз редактировалось: alexalsp (23:47 09-01-2019), всего редактировалось 2 раз(а) |
|
|
Spiny_Ewg 60 EGP Рейтинг канала: 1(1) Репутация: 2 Сообщения: 149
Зарегистрирован: 11.12.2018 |
|
Andy_MB,alexalsp, Спасибо.
Но у меня все равно что-то не получается, не заменяется файл, то что изменил того нет в игре.
Вот допустим есть ванильный файл: shipgroups
Я сделал копию и назвал shipgroupsq и что-то изменил.
Что я должен прописать в копии файла что бы заменить содержимое ванильного файла shipgroups ?
Прописал как советовали
<?xml version="1.0" encoding="utf-8"?>
<diff>
<replace sel="//mdscript">
<mdscript name="shipgroups" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="md.xsd">
********************
</mdscript>
</replace>
</diff>
Или я что-то не то делаю?
|
|
|
alexalsp 513 EGP
Рейтинг канала: 5(206) Репутация: 54 Сообщения: 4235
Зарегистрирован: 12.08.2014 |
|
Зависит от того что ты меняешь и где
Дай кусок который ты меняешь
shipgroups это не md
там вообще все просто
замена
Код: |
<?xml version="1.0" encoding="utf-8"?>
<diff>
<replace sel="/groups/group[@name='shipyard_arg']/select">
<select constructionplan="arg_shipyard" />
</replace>
</diff>
|
или так
Код: |
<?xml version="1.0" encoding="utf-8"?>
<diff>
<replace sel="/groups/group[@name='shipyard_arg']/select/@constructionplan">arg_petrovich</replace>
</diff>
|
если добавить то
Код: |
<?xml version="1.0" encoding="utf-8"?>
<diff>
<add sel="/groups">
<group name="shipyard_arg">
<select constructionplan="arg_shipyard" />
</group>
</add>
</diff>
|
_________________ CMDR: Fallout(EG)
ED - если застряли: https://discord.gg/w56kPWH
Последний раз редактировалось: alexalsp (02:39 10-01-2019), всего редактировалось 7 раз(а) |
|
|
Spiny_Ewg 60 EGP Рейтинг канала: 1(1) Репутация: 2 Сообщения: 149
Зарегистрирован: 11.12.2018 |
|
например добавить корабль:
<group name="xen_carrier_xl">
<select macro="ship_xen_xl_carrier_01_a_macro"/>
<select macro="ship_arg_m_frigate_01_a_macro"/>
а вообще хотелось бы научиться заменять полностью какой нибудь файл из папки libraries если изменений много.
|
|
|
alexalsp 513 EGP
Рейтинг канала: 5(206) Репутация: 54 Сообщения: 4235
Зарегистрирован: 12.08.2014 |
|
Spiny_Ewg : |
например добавить корабль:
<group name="xen_carrier_xl">
<select macro="ship_xen_xl_carrier_01_a_macro"/>
<select macro="ship_arg_m_frigate_01_a_macro"/>
а вообще хотелось бы научиться заменять полностью какой нибудь файл из папки libraries если изменений много.
|
Код: |
<?xml version="1.0" encoding="utf-8"?>
<diff>
<add sel="/groups/group[@name='xen_carrier_xl']">
<select macro="ship_arg_m_frigate_01_a_macro"/>
</add>
</diff> |
не всегда полезно заменять весь файл, это делается в 1 % случаев когда изменения касается больше 60 , а то и более процентов документа .
опять же весь документ заменить
Код: |
<?xml version="1.0" encoding="utf-8"?>
<diff>
<replace sel="//groups">
<groups>
********************
</groups>
</replace>
</diff>
|
_________________ CMDR: Fallout(EG)
ED - если застряли: https://discord.gg/w56kPWH
Последний раз редактировалось: alexalsp (03:32 10-01-2019), всего редактировалось 2 раз(а) |
|
|
Spiny_Ewg 60 EGP Рейтинг канала: 1(1) Репутация: 2 Сообщения: 149
Зарегистрирован: 11.12.2018 |
|
Спасибо!
|
|
|
|
|
|
Канал X4: Foundations ->
Модовый и скриптовый отсек X4: Foundations: «Ковыряем движок и всё такое» |
|