Показано с 1 по 20 из 24

Тема: Редактор Компонентов (ВДК) для мода RedForce.SB

Древовидный режим

  1. #1
    идейный враг всяких трансформероB

    Аватар для Snake_B


    Регистрация
    14.09.2007
    Адрес
    Донецк-Камчатка....
    Сообщений
    13,314

    Редактор Компонентов (ВДК) для мода RedForce.SB

    Цитата Сообщение от Snake_B Посмотреть сообщение
    сама идея таких компонентов в том, чтобы игроки (т.е. вы) могли бы делать не большие изменения для мода сами для других игроков, без моего участия...
    добавление дополнений в патчи будет сделано для увеличения количества игроков которые этим будут пользоваться...
    проверку и решение использовать конкретное дополнительнение пусть принимает конечный игрок... ну и плюс обсуждение на форуме...

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

    Доступная версия EXACT Editor 1.1.5-1.5.7

    Внешний вид:


    СКАЧАТЬ: Ссылка для скачивания >>>
    Размер: 836 Кб

    Совместимость: Не ниже версии мода 1.5.5.update

    ***

    Пример создания компонента >>>


    Руководство по установке

    1. Содержимое архива скопировать в папку программы RedForce.SB.

    2. Если все сделано правильно, при запуске редактора ("EXACT Editor\EXACTEditor.exe"), текст "Программа должна находиться в папке программы генератора" будет неактивным (серого цвета).


    ***

    Руководство по работе с редактором компонентов


    1. Вкладка приветствия

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


    2. Вкладка выбора компонента (только если нажата "Выбрать компонент для редактирования").



    3. Вкладка редактирования данных компонента

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


    4. ВАЖНО: При нажатии "Дальше" на предыдущей вкладке будет показано диалоговое окно "Создать новый внешний компонент?"
    Если нажать "Да", будет создан новый, если "Нет", то изменения будут внесены в выбранный компонент.


    5. Вкладка "Редактор элементов"
    • Слева-вверху дерево выбора элемента
    • Слева-внизу кнопки действий с элементом (активны только те действия, которые можно выполнить для выбранного элемента)
    • Справа-вверху предварительный просмотр компонента
    Сохранение на этой вкладке происходит после нажатия "дальше", тогда же создаются и удаляются папки для элементов


    6. Вкладка "Работа с папками элементов" (в данный момент только разрабатывается)
    Интерфейс такой же как на предыдущей вкладке, плюс кнопки открытия папок для выбранного элемента. И краткое описание работы с папками.
    Файлы с текстами:
    1. Русский язык в текстовых файлах надо писать специальным кодом, вот тут можно скачать программу для конвертации в код и обратно.
    2. И в русских и в английских текстовых файлах обязательно должны быть 6 тегов
    В русском варинате обязательно заполнять 1 и 6 теги, но можно заполнить и остальные, хуже точно не будет
    В английском варианте надо заполнять новым текстом все 6 (!) тегов, можно так:
    Код:
    		<English>[TAB]Fighting elephants not</English>
    		<English>[TAB]Fighting elephants not</English>
    		<English>[TAB]Fighting elephants not</English>
    		<English>[TAB]Fighting elephants not</English>
    		<English>[TAB]Fighting elephants not</English>
    		<English>[TAB]Fighting elephants not</English>
    ! - игре без разницы как называются теги
    Почему? Чтобы игроки могли включить свой язык (французский какой-нибудь), тогда у них будут оригинальные тексты на их языке, а добавленное в моде на английском.
    !!! И ещё, если хотя бы у одного тега в текстовом xml будет 1 язык, то при выборе любого языка кроме первого все надиписи в игре будут пустыми!


    7. Вкладка "Внесение изменений в XML-файлы" - эта вкладка ещё не рабочая, в данный момент разрабатывается

    Дальнейшие изменения (пока) можно внести вручную

    7.1 Внесение изменений в XML-файлы

    Папка "XML" - должна содержать под папки как в оригинальной игре и файлы с изменениями которые будут внесены в xml файлы
    (т.е. если вам нужно внести изменение в файл "XML\Units\CIV4UnitInfos.xml", то в папке "\ID_"+ID+"\XML\Units" создается файл изменений).

    Наименование файлов:

    "Оригинальное название файла" + "_" + "Режим чтения файлов" + ".ini"
    "CIV4UnitInfos_0.ini" - изменения для файла "CIV4UnitInfos.xml".

    Режимы чтения файлов (по какому тегу следует производить поиск):
    0 - class
    1 - type
    2 - buildingclass
    3 - scriptid
    4 - Tag
    5 - definename
    6 - ModelFile

    Заполнение файла:

    Пример (название файла: "\XML\Units\CIV4UnitInfos_0.ini"):
    Код:
    <Class>UNITCLASS_BATTLESHIP</Class> 
    <iCombat>
    {
                    <iCombat>50</iCombat>
    }
    Изменит силу линкора на 50.

    Разбор значений:
    Код:
    <Class>UNITCLASS_BATTLESHIP</Class>
    Тег юнита (здания, объекта) для которого будут применены изменения

    Разный в зависимости от выбранного режима чтения
    Если надо внести изменения для всех подобных юнитов (например рыцарей - "UNITCLASS_KNIGHT", изменения будут внесены для рыцарей, арабских верблюжьих лучников, византийских катафрактов), то лучше использовать "class", если для какого-то конкретного, то "type". Зависит от файла в который планируется внесение изменений.


    Код:
    <iCombat>
    Элемент который должен быть в строке, если он есть, значит строка будет заменена

    Перед требуемым тегом удалите все пробелы и сдвиги строки!
    Код:
    // так НЕЛЬЗЯ:
                    <iCombat>
    // так МОЖНО:
    <iCombat>
    Если требуется изменить конкретное значение, то можно писать тег полностью:
    Код:
    <iCombat>50</iCombat>
    Изменит силу только если она равна 50.

    Также имеются расширенные условия поиска:
    1) [MULTIMODE] - несколько строк для замены, заменяем все строки
    Код:
    [MULTIMODE]
    <UnitCombat>
    <UnitCombatType>UNITCOMBAT_ARMOR</UnitCombatType>
    <bUnitCombat>
    </UnitCombat>
    2) Условие из нескольких строк - несколько строк для поиска, но заменяем только последнюю строку.
    Код:
    <UnitCombatType>UNITCOMBAT_MARINE</UnitCombatType>
    <bUnitCombat>


    "{" и "}" - начало и конец новых строк, обязательно с новой строки, в начале строки.

    Код:
                    <iCombat>50</iCombat>
    Новая строка (или несколько строк)

    Строка которая будет вставлена вместо старой строки (можно добавлять несколько строк).
    Новым строкам не надо убирать отступы в начале строки.


    Если какие-то строки должны быть добавлены только при включении определенного юнита из мода или ВДК, то нужно использовать условия:
    Код:
    [if exists]<Type>UNIT_EARTANK</Type>
    	<UnitClassDefenseMod>
    		<UnitClassType>UNITCLASS_EARTANK</UnitClassType>
    		<iUnitClassMod>50</iUnitClassMod>
    	</UnitClassDefenseMod>
    [else]
    [end]
    • Вместо такого "<UnitClassDefenseMods/>" закрытия тегов можно писать так (а с условиями даже не можно, а нужно):
      Код:
      	<UnitClassDefenseMods>
      	</UnitClassDefenseMods>
    • [if exists]<Type>UNIT_EARTANK</Type>
      • эта конструкция должна быть в одной строке, БЕЗ ПЕРЕНОСОВ
      • условие задается в зависимости от режима чтения файла (если _1.ini, то Type, если _0, то Class и т.д.)
      • проверка производится по уже добавленным при генерации юнитам, т.е. если юнит добаляется в ВДК который расположен ниже, программа его не найдет!
      • Проверка производится по тому файлу, в который вносятся изменения + по файлу CIV4UnitInfos.xml (с версии 1.5.5)
    • Защиты от "дурака" у функции нет, один пробел после условия - условие не сработает (сработает [else])


    Также при добавлении строк можно проверять включение галочек (checkbox) в программе генераторе мода (не в ВДК),
    например, проверяем включение галочки "добавить дополнительные ресурсы" и если она включена, прописываем юниту требование ресурса "верблюды", а если отключена, то "лошади" :
    Код:
    [if checked]<|CheckBox55|>
    	<BonusType>BONUS_CAMEL</BonusType>
    [else]
    	<BonusType>BONUS_HORSE</BonusType>
    [end]
    • Список галочек программы в файле "Список галочек программы.txt" (в установочном пакете EXACT Editor'а)
    • Защиты от "дурака" у функции нет, один пробел после условия - условие не сработает (сработает [else])


    Новая строка (или несколько строк) для элемента Редактор значений (ValueEditor)

    Код:
                    <iCombat>[VALUE]</iCombat>
    "[VALUE]" - вместо "[VALUE]" программа подставит значение выбранное в редакторе.
    Можно добавлять несколько строк и вставлять [VALUE] в нескольких местах (в том числе несколько раз в одной строке).
    Новым строкам не надо убирать отступы в начале строки



    Описание значений в XML файлах: XML в Civilization 4


    Добавление нового блока (например юнита)

    Если нужно добавить новый блок, то в классе писать блок после которого нужно вставить, а в строке для замены, последнюю строку того блока после которого вставляется. При этом следует учитывать, что строку для замены программа, как это не странно, меняет, поэтому нужно делать как в примере:
    Код:
    <Type>UNIT_MAYA_HOLKAN</Type>
    </UnitInfo>
    {
            </UnitInfo>
                    ДАННЫЕ НОВОГО ЮНИТА
    }
    ДОБАВЛЕНИЕ НОВЫХ ЮНИТОВ НАДО ПРОПИСЫВАТЬ ТОЛЬКО ПОСЛЕ ЮНИТОВ ИЗ ОРИГИНАЛЬНОЙ ИГРЫ, только если не предусмотрено, что юнит нельзя добавить без юнита добавляемого модом.

    Юнитам пехотинцам, для срабатывания настройки "Пешие войска могут создавать форты (в 2 раза медленнее рабочих)" надо прописывать вместо:
    Код:
    			<Builds/>
    такую команду:
    Код:
    [BUILD_FORT]



    Возможность удалять блоками "от class до class" (например юнита целиком)

    Пишем тег который нужно найти и команду [DELETE_FULLY], блок будет удален целиком.
    Пример:
    Код:
    <Type>UNIT_MAYA_HOLKAN</Type>
    [DELETE_FULLY]



    В папку "\DATA\EXACT\Common XML source" необходимо положить оригинальный xml файл из папки цивилизации (не из папок других модов!), в первую очередь из папки "игра\Beyond the Sword", если там нет нужного файла, то из "игра\Warlords", ну, а если и там нет, то тогда из папки "игра\assets".
    Если он там уже есть, значит ничего менять/добавлять не надо.
    Для изменения ниже перечисленных файлов ложить оригинальный xml файл не нужно:
    CIV4ArtDefines_Civilization.xml; CIV4ArtDefines_Unit.xml; CIV4UnitCombatInfos.xml; CIV4BuildingInfos.xml; CIV4SpecialBuildingInfos.xml; CIV4CivilizationInfos.xml; CIV4LeaderHeadInfos.xml; CIV4CivicInfos.xml; CIV4GameSpeedInfo.xml; CIV4HandicapInfo.xml; CIV4ProjectInfo.xml; CIV4ReligionInfo.xml; CIV4VictoryInfo.xml; CIV4RouteInfos.xml; CIV4TechInfos.xml; CIV4FeatureInfos.xml; CIV4ImprovementInfos.xml; CIV4BuildInfos.xml; CIV4UnitClassInfos.xml; CIV4UnitInfos.xml; CIV4BonusInfos.xml; CIV4ProcessInfo.xml; CIV4MainMenus.xml; CIV4SpecialUnitInfos.xml

    8 Работа с файлом "Check.ini"

    В этом файле должны быть прописаны необходимые компоненту файлы.
    Пример:
    "\EXACT\1_3_SBGames_Change of battleship force\ID_2\XML\Units\CIV4UnitInfos_0.ini"
    или
    "\EXACT\4_2_Vovan66_External_changes\ID_1\Files for copy\Beyond the Sword\Assets\Art\Terrain\water\water.dds"
    Если в файле не будет прописан ни один путь, компонент будет отключен.


    9. Примечания:
    • Что будет если прописаны изменения для нового юнита, а новый юнит не был выбран для установки?
      Программа не найдет необходимого ей тега "UNITCLASS_"+Новый юнит+"" и не внесет изменений. Ошибок не будет.
      Тоже самое со зданиями, и т.д и т.п.
    • В программе встроена система защиты от ошибок в файлах компонентов, если в компоненте есть ошибки он будет отключен при запуске программы и будет выведено окно в каком файле ошибки. Но защиты от ошибок в файлах изменений xml файлов нет, поэтому проверяйте компоненты генерацией и загрузкой мода.


    10. Тесты ВДК
    0. Если у вас русификация от 1С, то обязательно установите русификацию наш-фанатиков >>> (чтобы проверять полное заполнение текстовых файлов)
    1. Отключите в программе все новые возможности (Файл - Загрузить конфигурацию - Config[Standart_BtS 3.19].rfm)
    2. Включите все элементы тестируемого компонента, в программе генерации выберите русский язык, произведите генерацию, запустите мод.
    3. Включите все новые возможности, в т.ч. все другие компоненты, включите элементы тестируемого компонента, в программе генерации выберите английский язык, произведите генерацию, запустите мод.


    ***

    Дальше буду делать

    1. обработка XML - какой именно вариант будет реализован пока не решил
    Цитата Сообщение от Snake_B Посмотреть сообщение
    вариант 1.
    - выбирать два файла, один оригинальный, второй с внесенными изменениями...
    - программа их сравнит
    - выбор какие именно изменения надо вносить (т.е. если в измененном файле есть изменения для танка и мотоцикла, программа спросит какие именно изменения использовать в скрипте
    - и создаст скрипт..
    вариант 2.
    в программе выбирает оригинальный файл, потом выбирается юнит (или что там конкретно в этом xml), потом выбирается строка (одна или несколько) которые надо заменить/изменить и вводится новая, измененная строка...
    2. Создание файла Check.ini

    3. создание пакета с AutoInstaller.SB


    ***

    Список изменений 1.1.5-1.5.7
    • Выстраивание элементов в две колонки (для сокращения прокрутки экрана)


    Список изменений 1.1.5-1.5.6
    • При ошибках в EXACT.ini выводится ID элемента в котором обнаружена ошибка


    Список изменений 1.1.4-1.5.5

    + Добавлены
    • Раздел компонента - "Карты и сценари
    • Подразделы - "Карты" и "Сценарии"


    Список изменений 1.1.2-1.5.2

    + Доработки
    • Описание checkbox'ов добавленных/измененных в версии 1.5.2
    • Исправлено - "удалить скриншот" - не показывались кнопки
    • Отдельный пункт для демонстрационных компонентов (7_4)
    • Прокрутка панели предварительного просмотра колесом мыши на вкладке работа с папками/xml
    • Добавлены кнопки "Свернуть всё", "Развернуть всё"
    • Максимальная ширина скришотов при показе 1000 пкс.


    Список изменений 1.1.1-1.5.1

    + Доработки
    • Текстовое описание для новых/изменяемых юнитов
      • Пример - ранние войска - страшный слон (в патче 1.5.1)
      • Кнопка возле "редактировать элемент" - выпадающее меню
      • Файл "Стандартные строки.txt" в папке редактора
        • Можно добавлять свои строки (в блокноте), добавлять по ДВЕ строки, первая на русском, вторая на английском
        • Первые две строки не менять
    + Совместим с версией 1.5.0 (но информация о юните там показываться не будет)


    Список изменений 1.1.0-1.5.0.final

    + Доработки
    • Добавлены хинты (всплывающие подсказки) для "галочек" и "редакторов значений"
    • Добавлено выравнивание для "надписей"
    • Обработка XML
      • Обработка вложенных условий (пример - "\7_3_SBGames_Demonstration_EXACT\ID_1\XML\Units\CIV4UnitInfos_1.ini")
      • Обработка нескольких тегов для поиска (пример - "\7_3_SBGames_Demonstration_EXACT\ID_14\XML\Units\CIV4UnitInfos_1.ini")
    • На вкладках "работа с папками" и "работа с XML" добавлены кнопки с рисунками, вместо текстовых
    + Новые возможности
    • Переключатель (RadioButton) - для выбора одного варианта из нескольких (пример - компонент изменения ландшафта)
    • Выпадающий список - визуальная надстройка - группировка нескольких переключателей


    Список изменений 1.1.0-1.5.0
    • Исправления
      • переименование элементов, изменение значений у Редактора значений
    • Доработки
      • увеличена высота окна
      • добавлен файл указывающий минимальную требуемую версию RedForce.SB (Version_requires.ini)
      • добавлены закладки с руководствами (описания пока минимальные)
        • вкладки:
          • редактор элементов
          • работа с папками элементов
          • работа с XML-файлами
      • добавлен пример элемента на вкладку добавления элемента
        • можно было сделать там же и выбор, но мороки много, а толку мало
      • добавлены подразделы для всех разделов (вкладка "Основные настройки компонента")
    • Новые возможности
      • Добавлена возможность "Добавить английский скриншот", который будет показан в программе RedForce.SB, если в ней выбран английский язык
      • Галочка (CheckBox)
        • Для этого элемента требуется установленный DLL-компонент (не влияет на дочерние элементы !!!)
        • Добавлены групповые зависимости для галочек второго уровня (как в настройках дистанционной артиллерии в dll-компоненте RevolutionDCM)
      • Файлы для копирования
        • папка "\Files for copy\Req_dll"
          • "\Standart dll" - файлы из папки копируются, только если выбрана страндартная dll
          • "\RevDCM" - файлы из папки копируются, только если выбрана dll RevolutionDCM
          • "\EoW" - файлы из папки копируются, только если выбрана dll Evolution of War
          • у всех подпапки:
            • "\Common" - копируется всегда
            • "\Eng" - копируется, если выбран английский язык
            • "\Rus" - копируется, если выбран русский язык
          • в остальном принцип работы точно такой же, как и у обычной папки "Files for copy\Beyond the Sword"
      • Обработка XML
        • папка "\XML Req_dll"
          • "\Standart dll" - файлы из папки копируются, только если выбрана страндартная dll
          • "\RevDCM" - файлы из папки копируются, только если выбрана dll RevolutionDCM
          • "\EoW" - файлы из папки копируются, только если выбрана dll Evolution of War
          • в остальном принцип работы точно такой же, как и у обычной папки "XML"
        • Добавлена папка "\DATA\EXACT\Common XML source"
          • Оригинальные файлы xml теперь надо ложить туда, если он там уже есть, значит ничего менять/добавлять не надо
      • XML
        • возможность удалять блоками "от class до class" (например юнита целиком)
          • [DELETE_FULLY] - подробности в руководстве по работе с XML
        • команда [BUILD_FORT]
          • В новой версии юнитам пехотинцам не надо прописывать
            Код:
            		<Builds>
            			<Build>
            				<BuildType>BUILD_FORT</BuildType>
            				<bBuild>1</bBuild>
            			</Build>
            		</Builds>
          • Вместо этого надо написать "[BUILD_FORT]", программа в зависимости от настройки "Пешие войска могут создавать форты (в 2 раза медленнее рабочих)" заменит на
            Код:
            		<Builds>
            			<Build>
            			<BuildType>BUILD_FORT</BuildType>
            				<bBuild>1</bBuild>
            			</Build>
            		</Builds>
            или на
            Код:
            		<Builds/>
        • Добавлены условия для проверки включения юнитов
          • Код:
            [if exists]<Type>UNIT_EARTANK</Type>
            		<UnitClassDefenseMod>
            			<UnitClassType>UNITCLASS_EARTANK</UnitClassType>
            			<iUnitClassMod>50</iUnitClassMod>
            		</UnitClassDefenseMod>
            [else]
            [end]
          • Вместо такого "<UnitClassDefenseMods/>" закрытия тегов можно писать так:
            Код:
            		<UnitClassDefenseMods>
            		</UnitClassDefenseMods>
            а с условиями даже не можно, а нужно.
          • [if exists]<Type>UNIT_EARTANK</Type>
            • эта конструкция должна быть в одной строке, БЕЗ ПЕРЕНОСОВ
            • условие задается в зависимости от режима чтения файла (если _1.ini, то Type, если _0, то Class и т.д.)
            • проверка производится по уже добавленным при генерации юнитам, т.е. если юнит добаляется в ВДК который расположен ниже, программа его не найдет!
          • Защиты от "дурака" у функции нет, один пробел после условия - условие не сработает (сработает [else])
        • Добавлена проверка включения галочек (checkbox) в программе (не в ВДК)
          • Код:
            [if checked]<|CheckBox55|>
            		<BonusType>BONUS_CAMEL</BonusType>
            [else]
            		<BonusType>BONUS_HORSE</BonusType>
            [end]
          • Список галочек программы в файле "Список галочек программы.txt"
          • Защиты от "дурака" у функции нет, один пробел после условия - условие не сработает (сработает [else])
        • Редактор значений
          • Добавлено поле для установки шага изменения значения (при нажатии кнопок вверх-вниз)
    продвинь это сообщение в соцсеть:  
    Последний раз редактировалось Snake_B; 20.07.2019 в 18:18.

Похожие темы

  1. Пожелания по развитию мода RedForce.SB
    от Snake_B в разделе RedForce.SB
    Ответов: 2301
    Новое: 29.03.2023, 11:02
  2. Новости мода RedForce.SB
    от Snake_B в разделе RedForce.SB
    Ответов: 44
    Новое: 08.06.2021, 15:26
  3. Сценарий Земля, 26 цив, для мода RedForce.SB
    от ЯQR в разделе Карты и сценарии для мода RedForce.SB
    Ответов: 3
    Новое: 06.08.2015, 09:26
  4. Карты от neitron777 для мода RedForce.SB
    от neitron777 в разделе Карты и сценарии для мода RedForce.SB
    Ответов: 15
    Новое: 30.03.2014, 22:11

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
Рейтинг@Mail.ru

free counters