Режимы редактирования
Sanny Builder поддерживает разные игры и платформы в серии Grand Theft Auto. Для этого в его состав входит конфигурация для каждой поддерживаемой игры, которая называется режимом редактирования.
Режим редактирования определяет следующую информацию:
целевая игра
пути к игровым файлам
пути к файлам со вспомогательной информацией (имена меток, переменных, констант)
Sanny Builder хранит настройки режимов в папке data
. Если любая из папок в этой директории содержит файл mode.xml
, этот файл автоматически загружается как новый режим редактирования.
Версии Sanny Builder до 3.9 хранили настройки режимов редактирования в файле data\modes.xml
. Начиная с версии 3.9 этот файл был разделен на отдельные XML файлы для каждого режима.
Режимы редактирования загружаются автоматически при старте Sanny Builder. В случае необходимости, они могут быть перезагружены путем запуска Sanny Builder с опцией -x
.
Допускается изменение и расширение существующих режимов, а также создание новых.
Формат файла
mode.xml
- документ в формате XML
, который может редактироваться в любом текстовом редакторе.
Файл начинается с объявления
После него должен идти корневой элемент <mode>
. В файле может быть только один корневой элемент.
<mode>
имеет как обязательные, так и необязательные атрибуты, описанные ниже. Содержимое <mode>
представляет собой набор различных тэгов (элементов), определяющих пути к папкам и файлам.
Атрибуты режима
id
id
- это обязательный и неповторяющийся идентификатор режима. Sanny Builder использует его для сохранения некоторых пользовательских настроек режима, например выбранной директории игры.
Допустимым значением атрибута является последовательность символов, которая не используется как идентификатор другого режима редактирования.
extends
Режим может наследовать свойства другого режима (родительский режим), чтобы уменьшить число повторяющихся параметров. Это полезно для разных версий одной игры, где большая часть конфигурации одинакова, за исключением некоторых параметров. Родительский режим может наследовать свойства другого режима.
Если в конфигурации режима отсутствует какой-то параметр, Sanny Builder рекурсивно проходит по всем родительским режимам, чтобы найти его значение.
Допустимым значением атрибута является идентификатор другого режима редактирования, описанного в этом же файле.
title
title
задает отображаемое имя режима. Из-за ограничений интерфейса избегайте длинных имен и используйте имена короче 24
символов.
game
Атрибут game
определяет целевую игру для данного режима. Допустимыми значениями являются:
gta3
vc
sa
lcs
vcs
vc_mobile
sa_mobile
Перед началом работы со скриптом, убедитесь что выбран правильный режим редактирования. Каждая игра имеет свой собственный формат скриптов, который несовместим с другими играми. Даже если компиляция прошла без ошибок, в игре может возникнуть ошибка при попытке чтения скрипта в неизвестном ей формате.
В скомпилированном файле может храниться информация о целевой игре для данного скрипта. Перед началом дизассемблирования такого скрипта Sanny Builder предлагает переключить режим редактирования на нужный. Игнорирование такого предложения может привести к ошибке, т.к. формат скрипта может отличаться от того, что ожидает дизассемблер.
Для удобства пользователей Sanny Builder отображает иконку целевой игры напротив имени режима.
type
Один из режимов для каждой целевой игры должен быть режимом по умолчанию. Это означает, что Sanny Builder использует его при запуске с опцией --game
.
Допустимым значением атрибута является default.
Не указывайте этот атрибут для остальных режимов.
Параметры режима
arrays
путь к CustomArrays.ini
classes
путь к classes.db
constants
путь кconstants.txt
copy-directory
путь к директории, в которую нужно скопировать скрипт при запуске Компилировать и сделать копию
:
Имеет обязательный атрибут type
:
type="scm"
- применяется к обычным .scm
скриптам
type="cleo"
- применяется к скриптам с директивой {$CLEO}
data
путь к директории режима редактирования
enums
путь к enums.txt
ide
путь к .ide
или .dat
файлу:
.ide
файлы содержат имена моделей и их характеристики
.dat
файлы содержат пути к другим .ide
файлам
Элемент ide
имеет необязательный атрибут base
, который задает папку, относительно которой расчитываются пути, определенные внутри .dat
файла:
Без base
все пути расчитываются относительно папки с .dat
файлом.
Режим редактирования может иметь несколько элементов <ide>
.
keywords
путь к файлу со списком ключевых слов
labels
путь к CustomLabels.ini
missions
путь к missions.txt
library
library
путь к JSON файлу с определениями скриптовых команд, используемых в целевой игре. доступен для скачивания в Sanny Builder Library,
opcodes
путь к файлу со списком опкодов. может использоваться неоднократно для подключения нескольких файлов. является необязательным параметром, если используется library (см. выше).
templates
путь к файлу с эксклюзивными шаблонами
Имеет обязательный атрибут type
:
type="default"
- путь к файлу с шаблонами, включенными в состав Sanny Builder
type="custom"
- путь к файлу с пользовательскими шаблонами, добавленными из редактора
text
путь к .gxt
файлу
<text>
имеет обязательный атрибут: format
. Допустимыми значениями являются:
gta3
: .gxt
с одной таблицей, текстовыми ключами, кодировкой ANSI
vc
: .gxt
с несколькими таблицами, текстовыми ключами, кодировкой ANSI
sa
: .gxt
с несколькими таблицами, зашифрованными ключами, кодировкой ANSI
sa_mobile
: .gxt
с несколькими таблицами, зашифрованными ключами, кодировкой UTF-16
variables
путь к CustomVariables.ini
examples
путь к opcodes.txt
Доступные переменные
Sanny предоставляет несколько переменных, которые могут использоваться в параметрах и атрибутах (там, где это применимо).
@game:
- путь к папке с игрой, которая выбрана в настройках
@sb:
- путь к папке Sanny Builder (где находится sanny.exe
)
Оба пути не включают в себя завершающий слеш (/
).
Список режимов
Sanny Builder предлагает много различных режимов, их количество может меняться от версии к версии:
Название | Id | Имена опкодов | Порядок параметров | Игра |
GTA III | gta3 | сообщество | измененный | все версии GTA III |
GTA VC (SBL) | vc_sbl | Rockstar | первоначальный | все версии Vice City |
|
|
|
| все версии Vice City режим устарел, начиная с версии 4.0, используйте новый режим VC SBL |
GTA SA (v1.0 - SBL) | sa_sbl | Rockstar | первоначальный | SA версия 1.0 |
|
|
|
| SA версия 1.0; режим устарел, начиная с версии 4.0, используйте новый режим SA SBL |
GTA SA v2.0 | sa_v2 | сообщество | измененный | SA версия 2.0 |
|
|
|
| SA версия 1.0; режим удален в версии 4.0, используйте новый режим SA SBL |
GTA LCS | lcs | Rockstar | первоначальный | все версии Liberty City Stories |
GTA VCS (PSP) | vcs_psp | Rockstar | первоначальный | VCS для PSP |
GTA VCS (PS2) | vcs_ps2 | Rockstar | первоначальный | VCS для PS2 |
VC Mobile | vc_mobile | сообщество | измененный | версия для Android и iOS |
SA Mobile | sa_mobile | сообщество | измененный | версия для Android и iOS |
Колонка Имена опкодов
определяет способ именования опкодов. Первые имена неизвестным опкодам были даны в результате анализа игрового кода, проводимого сообществом скриптеров в течение многих лет. Так появились такие термины как "актёр" ("actor") или "поток" ("thread"). Альтернативой является оригинальная терминология, использованная разработчиками игры (соответственно, "персонаж" ("char") или "скрипт" ("script")). Эта терминология вместе со списком оригинальных названий всех опкодов оказались доступны в коде игры GTA SA: Mobile.
Порядок параметров
определяет как расположены параметры опкода относительно друг друга. В первоначальном порядке все параметры находятся в той последовательности, как было задумано разработчиками игры, от параметра с наименьшим индексом к параметру с наибольшим индексом. Измененный порядок подразумевает, что в некоторых опкодах параметры переставлены местами для повышения читаемости кода или по иным причинам.
Сочетание оригинальной терминологии и сохранение порядка следования параметров обеспечивает максимальное сходство скриптов с тем языком, который использовали разработчики игры.
Переключение режимов
Чтобы переключить режим редактирования, кликните в правом нижнем углу программы. Появится список доступных режимов. Выберите нужный и кликните по нему. Sanny Builder загрузит все требуемые файлы и вы сразу можете продолжить работу.
Выбрать режим через командную строку можно с опцией --mode
. Чтобы выбрать режим по умолчанию для какой-либо игры, используйте опцию --game
.
Запуск Sanny Builder с опцией -x
перезагружает режимы редактирования и обновляет список доступных режимов.
Вы можете зарегистрировать новое сочетание клавиш для быстрого обновления режимов редактирования без необходимости перезапуска Sanny Builder. Добавьте новый элемент в меню внешних приложений:
Путь: sanny.exe
Параметры: -x --no-splash
Shortcut: <any combo of your choice>
Last updated