S.T.A.L.K.E.R. Object Editor

Материал из xrWiki
Перейти к: навигация, поиск

S.T.A.L.K.E.R. Object Editor


STLKObjectMan-v2.0.1-ui.png
Тип Редактор конфигов
Автор frags
Последняя версия 3.0.0 (27 декабря 2014)
Обратная связь AMK форум

Программа позволяет просматривать и редактировать все (ну или почти все) параметры игровых объектов (оружие, патроны, артефакты, монстры, ГГ и т.п.) находящиеся в папке gamedata\config(s)\.
Для полноценного функционирования нужна полностью распакованная папка gamedata\config(s)\ и файл gamedata\textures\ui\ui_icon_equipment.dds (наличие этого файла позволит просматривать и редактировать иконки инвентаря).

Особенности программы[править]

  1. Построение дерева связей родитель-потомок для наследованных объектов и связанных объектов (оружие-патроны).
  2. Отдельное редактирование секций параметров для каждого объекта.
  3. Графическое выделение и назначение иконок инвентаря (два клика на требуемую картинку в общей карте иконок и перетаскивание выделенного на требуемый объект или из меню по правому клику мышки на выделенном изображении).
  4. Сортировка объектов по их характеристикам (убойность, защита и т.п.)
  5. Опции фильтрация для показа только наиболее важных параметров объектов.
  6. Чтение и редактирование комментариев для параметров из ltx-файлов.
  7. И многое другое — см. историю версий.

Многие функции доступны по клику правой кнопкой мышки.
При сохранении изменений программа меняет только строку с отредактированным параметром и не трогает остальной текст в файле.
Программа не требует каких-либо сторонних компонентов для работы.

История версий[править]

Версия 3.0.0[править]

STLKObjectMan-v3.0.0-ui.png
  • Добавлен редактор диалогов. Ниже приведена краткая инструкция к редактору диалогов.
  • Добавлено разделение папок с "gamedata" на Рабочую и Оригинал. Теперь программа будет запрашивать две папки при открытии "gamedata" (меню Файл|Открыть):
    • Оригинал — папка, в которой содержатся исходные распакованные файлы gamedata.
    • Рабочая папка (выбирается первой) — сюда будут сохранятся все изменения при редактировании методом копирование-на-запись из папки Оригинал(copy-on-write). Таким образом Оригинал остается нетронутым, а все изменения попадут в копию соответствующего файла из Рабочей папки. Можно отказаться от выбора папки Оригинала или выбрать ту же папку что и Рабочая — тогда программа будет работать по-старому, с одной папкой.
  • Для артефактов добавлена панелька с визуализацией свойств как в самой игре (Кровотечение, Ожог, Радиоактивность и т.п.).
  • Добавлена возможность просматривать/редактировать иконки из других ui_icon_equipment.dds файлов (меню Файл|Открыть файл иконок). Это легко позволяет, например, вставлять иконки в ваш мод из других модов.
  • Добавлен флаг Резервное сохранение (в левой нижней части экрана) — создавать или нет резервные файлы (*.bak).
  • Теперь резервные файлы создаются на сессию программы, а не на каждое сохранение.

Краткая инструкция к редактору диалогов[править]

STLKObjectMan-v3.0.0-dialog.png

В дереве объектов слева выбираем персонаж в ветке Диалоги Квестовые или Диалоги Общие. В меню по правой кнопке мышки выбираем Новый диалог для нового диалога или Добавить диалог для добавления этому персонажу любого существующего диалога. Для редактирования существующего диалога просто кликаем на него в дереве.

Справа появится редактор на закладке "Редактор диалога <id диалога>".

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

Слева дерево фраз построенное согласно связям между фразами. Справа расположена таблица фраз, где все фразы показаны просто списком.

Фразы можно таскать мышкой в дереве или из таблицы в дерево. Перетаскивание фразы из дерева в таблицу - отсоединяет её от родительской фразы.

Дерево имеет всплывающее меню с разными действиями по правой кнопке мышки. Кнопка или меню Удалить удаляют выбранную фразу из диалога.

Созданный или отредактированный диалог можно сразу протестировать на закладке Тест.

Сохранение изменений как обычно - меню Файл|Сохранить.

Версия 2.0.1[править]

  • Исправлен косяк с перезагрузкой диалогов (не перезагружались диалоги/фразы из #include файлов).
  • Добавил копирование ID диалогов и персонажей в дереве по правой кнопке мыши.

Версия 2.0.0[править]

  • Добавлен инструмент для тестирования диалогов. Он позволяет протестировать диалоги без необходимости запуска игры и создания соответствующей ситуации в игре.
  • В дереве слева появились две дополнительных ветки "Диалоги Квестовые" и "Диалоги Общие". Каждая ветка диалогов содержит подсветки групп (Одиночка, Военный, Бандит и т.п.), которые в свою очередь содержат имена персонажей (Сидорович, Волк и т.п.). Далее для каждого персонажа есть подсветки с диалогами. "Диалоги Общие" содержит диалоги для персонажей с генерируемыми именами (GENERATE_NAME).
  • Можно тестировать все диалоги вместе для определенного персонажа (т.е. так как они появляются в игре) или каждый диалог в отдельности.
  • Для тестирования всех диалогов вместе нужно выбрать персонаж в дереве. Для тестирования индивидульного диалога — выбрать собственно диалог.
  • После выбора персонажа или диалога, слева на закладке "Свойства" появится инструмент тестирования выбранного диалога (диалогов). Инструмент поддерживает списки условий (precodition) и инфопорций (infoportions). Их можно установить перед запускам диалога с персонажем.
  • Запуск диалога с персонажем осуществляется кнопкой "Старт". Если тестируется индивидуальный диалог, то необходимые условия для его активации будут установлены автоматически.
  • На списке фраз Главного Героя нужно делать двойной щелчок левой кнопки мышки для их использования.
  • По мере продвижения по диалогу включаются/выключаются инфопорции, прописанные во фразах. Список активных условий и инфопорций глобальный и сохраняется при переходе от одного диалога к другому, это позволяет тестировать связанные диалоги для разных персонажей. В окне диалога выводятся как фразы участников диалога так и его результат (Give Info, Disable Info, Actions), а также сообщения об ошибках при неправильно сконфигурированном диалоге.
  • Кнопка "Очистить" очищает текущее окно диалога. Кнопка "Сбросить" прекращает текущий диалог, очищает окно диалога и сбрасывает ВСЕ условия и инфопоршны.
  • Кнопка "Перезагрузить" перечитывает текущий диалог (диалоги) и фразы из исходных файлов. Таким образом можно отредактировать диалог во внешнем текстовом редакторе и сразу его протестировать.
  • Кнопка "Установить" устанавливает начальные условия для активации выбранного индивидуального диалога.
  • Диалоги в дереве помечаются значками следующий цветов:
  1. Красный — стартовый диалог (start_dialog).
  2. Синий — диалог с актером (actor_dialog).
  3. Серый — диалог не активен из-за текущих условий (precondition)/инфопорций (infoportion).
  • Перезагружать профили персонажей и диалогов можно также в дереве из меню по правой кнопке мышки. Также в этом меню доступен пункт "Открыть Файл" который открывает во внешнем редакторе файл с профилем персонажа или файл диалога с файлом русского текста соответственно.

Версия 1.9.4[править]

  • Исправил вылет при составлении списка аддонов, если объект аддона отсутствует.
  • Подправил определение аддонов для ЗП.

Версия 1.9.3[править]

  • Исправил сохранение переноса строки в описаниях объектов (\n в xml-файлах).
  • Добавил аддоны оружия (прицелы, глушители и подствольники) отдельным узлом в дереве с подсписком оружия для которого можно вешать аддон.
  • Улучшил алгоритм получения типа объекта (в ранних версиях РПГ-7, например, не показывался).
  • Переименовал узел "Еда/Напитки/Медикаменты" в "Используемые вещи" — фактически там показываются вещи которые можно использовать.

Версия 1.9.2[править]

  • Добавил опции поиска объекта. Искать можно по имени секции или названию, точной фразе или частичной (Ctrl+F).
  • Добавил возможность продолжить поиск следующего объекта (клавиша F3).
  • Добавил поиск объекта, соответствующего выбранной иконке (выделить иконку и кликнуть "Найти Объект" в меню по правой кнопке мыши).
  • Улучшил алгоритм определения типа объекта (артефакт, вещь и т.п., наиболее актуально для Зова Припяти).
  • Исправил расчет повреждений для ЗП и ЧН.

Версия 1.9[править]

  • Добавлена возможность прописывать предметы (оружие, патроны, еда, костюмы и т.п.) в списках buy_condition и sell_condition схем торговли. Для этого нужно в дереве выбрать предмет, который хотите прописать и в меню по правому клику мышки выбрать "Добавить в торговлю" — предмет будет добавлен во все секции торговли, если его там еще не было.
  • Добавлена возможность удалять наследованные и клонированные объекты (меню "Удалить" с помощью ПКМ в дереве). При удалении объекта он будет отписан из всех секций торговли. Удаление работает только для вновь созданных объектов — после сохранения их уже нельзя удалить.
  • Добавлена прокрутка изображений иконок инвентаря колесиком мышки по вертикали, и с зажатой клавишей Ctrl по горизонтали.
  • Добавлена возможность вставки иконки из буфера обмена по правому клику мышки в любом месте, начиная с того квадрата, где был сделан клик (необязательно выделять область вставки рамкой).
  • Другие мелкие исправления и улучшения.

Версия 1.8[править]

  • Добавлена возможность редактировать (добавлять/удалять/копировать и т.д.) иконки инвентаря. Полностью поддерживаются 32-битовые изображения с альфа-каналом.
  • Добавлена возможность просматривать прозрачность иконок (альфа-канал). Чекбокс "Показать прозрачность". Чтобы редактировать иконку, выделите небходимую область с помощью двух левых кликов мышки — появится зеленая рамочка выделенной области. В меню по правому клику мышки доступно следующее:
  1. "Копировать" — копирует содержимое выделенной области в буфер обмена как 32бит Windows Bitmap (формат CF_DIBV5). После этого содержимое буфера обмена можно использовать в любом графическом редакторе (желательно в таких, которые поддерживают канал прозрачности).
  2. "Вставить" — вставляет содержимое буфера обмена в выделенную область с масштабированием (используется Pixel Averaging алгоритм для более высокого качества смасштабированного изображения). Здесь также поддерживается формат CF_DIBV5. Если вставляемое изображение 32-битное, то канал прозрачности будет взят как есть. Если изображение не 32-битное (24 бита, 16 бит и т.п.), то все пикселы с цветом как у самого левого-нижнего пиксела будут определены как прозрачные.
  3. "Сохранить в файл" — то же, что и копировать, только во внешний 32-битный BMP-файл.
  4. "Импорт из файла" — то же, что и вставить, только из внешнего BMP-файла.
  5. "Очистить" — очищает выделенную область и делает ее прозрачной.

Сохранение измененных иконок выполняется вместе с другими изменениями через меню "Файл -> Сохранить".

Версия 1.7[править]

  • Добавлен инструмент для анализа уязвимости НПС/ГГ от оружия в зависимости от надетой брони (закладка Оружие-Броня). Выбирайте в дереве оружие, патроны и костюм (или бронезащиту) которые хотите анализировать в инструменте.
  • Добавлен инструмент для анализа уязвимости монстров от оружия (закладка Оружие-Монстры). Выбирайте в дереве оружие, патроны и монстров которые хотите анализировать в инструменте. Таблицы уязвимостей показывают процент урона от одного выстрела и количество выстрелов для убийства при каждой выбранной комбинации оружие-патрон и костюм (бронезащита)/монстр. Алгоритм расчета также учитывает уязвимость по костям (bip01*), fire_wound_immunity и health_hit_part.

Значения убойных параметров оружия и патронов можно редактировать непосредственно в таблицах.
Значения бронезащиты, уязвимости по костям и иммунитет к огнестрелу (для монстров) можно редактировать выбрав поле в таблице для соответствующей колонки и нажав Enter, или через меню по правому клику мышки — появится всплывающая панелька с параметрами, которые можно редактировать. Чтобы подтвердить параметры, измененные в панельке, нажмите Enter. Чтобы спрятать панельку нажмите Esc.

  • Добавлен селектор уровня Мастер, Ветеран, Сталкер и Новичок (в главном меню) — влияет на вышеуказанные инструменты.

Версия 1.6[править]

  1. Добавлено редактирование схем торговли. Секции покупки, продажи и наличия товаров доступны при включении опции "Включить секции".
  2. Исправлена ошибка, при которой, если отредактировать параметр, а затем сразу создать новый, то отредактированный параметр может быть утерян.

Версия 1.5[править]

  1. Добавлена настройка названий и важности параметров (меню "Файл -> Настройка параметров").
  2. Теперь построение дерева объектов работает намного быстрее.
  3. Мелкие исправления.

Версия 1.4[править]

  1. Исправлена сортировка в таблице сравнения.
  2. Добавлена возможность создавать новые названия и описания объектов. Для этого нужно назначить новые значения параметрам inv_name и/или description, написать текстовые описания в полях "Название" и/или "Описание", при сохранении код создаст новые секции в xml файлах из text\rus.
  3. Добавлена возможность построить дерево секций на которые ссылаются объекты (контрол "Включить секции" под деревом).
  4. Добавлен поиск объектов по имени секции (Ctrl+F).

Версия 1.3[править]

  1. Добавлены параметры погоды.
  2. Добавлена возможность редактирования названия и описания объекта, если они присутствуют в xml-файлах из папки config\text\rus.
  3. Добавлен экспорт и импорт в/из CSV-файл(а) для таблицы сравнения (кнопки внизу).

Версия 1.2[править]

Добавлен механизм анализа и сравнения полезности свойств объектов, который может быть использован при настройке баланса.
Работает это так:

  • На закладке "Сравнение" есть таблица в котороую можно выбирать исследуемые объекты и их параметры.
  • Выбор объектов осуществляется в дереве пометкой галочками требуемых объектов (возможен множественный выбор объектов с помощью Ctrl+LMB или Shifе+LMB и меню "Выбрать" по правому клику мышки).
  • Выбор параметров осуществляется из таблицы на закладке "Свойства" по двойному клику или через меню "Выбрать" по правому клику мышки.
  • Далее на закладке "Сравнение" в поле "Формула" пишем формулу вычисления полезности, наример, для еды — eat_satiety/(cost*inv_weight) и нажимаем Enter или кнопку справа — в таблице будет посчитаны коэффициенты полезности включенных объектов (выше — лучше).

Формула поддерживает sin(), cos(), tan(), exp(), степень (^) и логарифмы (ln(), log10(), log2()).
Значения параметров объектов в таблице сравнения можно редактировать. Для использования параметра в формуле его необязательно добавлять в таблицу сравнения. Также доступны меню для удаления параметров из таблицы сравнения по правому клику мышки.

  • Для некоторых объектов поддерживаются ссылочные параметры которые преобразуются в число при сравнении:
  1. Для оружия ammo_class — возвращает k_hit самого мощного патрона.
  2. Для костюмов bones_koeff_protection — возвращает усредненный коэффициент бронезащиты.
  3. Для артефактов параметры из hit_absorbation_sect (burn_immunity, stike__immunity и т.п.) — возвращает значения этих параметров.
  4. Для монстров attack_params возвращает значение наносимого повреждения при максимальной атаке; immunities_sect возвращает значение усредненной уязвимости.

Если после вычисления полезности, значения в таблице пустые, то в формуле есть ошибка или какие-то параметры отсутствуют для некоторых объектов.

Еще было сделано и исправлено в версии 1.2:

  1. Починена поддержка названий и описаний объектов для ЧН и ЗП.
  2. Добавлено сохранение пути к последней папке с конфигами игры (gamedata).
  3. Добавлено сохранение состояния кнопок Список/Дерево.
  4. Добавлена кнопка "Только выбранные", которая показывает в дереве только объекты помеченные галочкой.

Версия 1.1[править]

  1. Создание новых объектов через наследование или клонирование (меню по правому клику мышки на объекте в дереве).
  2. Сортировки по различным характеристикам объектов (меню по правому клику на группе в дереве).
  3. Добавление и удаление параметров объектов (меню по правому клику в таблице параметров).
  4. Возможность открыть для редактирования любую секцию на которую указывает параметр (меню по правому клику в таблице параметров).