Sanny Builder
На русском (не обновляется)
На русском (не обновляется)
  • Введение
  • Благодарности
  • История изменений
  • Синтаксис
    • Типы данных
    • Константы
    • Переменные
    • Массивы
    • Операторы
    • Условия
    • Циклы
    • Классы
    • Ключевые слова
    • Дополнительные команды
    • HEX..END
    • Директивы
    • Комментарии
  • Редактор
    • Возможности
    • Опции программы
      • Общие настройки
      • Форматирование
      • Редактор
      • Редактор тем оформления
      • Горячие клавиши
    • Консоль
    • Горячие клавиши
    • Поиск опкодов
    • Интерфейс командной строки
    • Языковая служба
  • Режимы редактирования
    • CustomLabels.ini
    • Enums.txt
    • Расширения
    • Список опкодов (SCM.INI)
    • Шаблоны кода
  • Документация по SCM
    • Скриптовые лимиты
    • GTA III
      • Иконки радара
      • Типы пешеходов
    • Vice City
      • Банды
      • Гаражи
      • Иконки радара
      • Интерьеры
      • Номера кнопок
      • Типы оружия
      • Типы пешеходов
    • San Andreas
      • Банды
      • Варианты изменения авто
      • Гаражи
      • Зоны
      • Интерьеры
      • Номера клавиш
      • Одежда
      • Оружие
      • Персонажи
      • Погода
      • Прически
      • Системы частиц
      • Статистика
      • Татуировки
      • Типы пешеходов
      • Типы поездов
      • Части тела игрока
    • Liberty City Stories
      • Банды
      • Модели
      • Одежда
      • Оружие
      • Персонажи
      • Погода
    • Vice City Stories
      • Банды
      • Одежда
      • Погода
  • Исправление проблем
    • Сообщения об ошибках
      • 0001: INI файл не найден
      • 0002: Неизвестный тип массива
      • 0003: Ошибка чтения script.img
      • 0004: Неизвестный тип параметра
      • 0005: Неправильный режим редактирования
      • 0006: Неверный заголовок файла
      • 0007: Файл не найден
      • 0008: Ошибка чтения списка опкодов
      • 0009: Список опкодов не найден
      • 0010: Неизвестный опкод
      • 0011: Неизвестный опкод
      • 0012: Переход за границы файла
      • 0013: Неизвестная команда
      • 0014: Неверное выражение
      • 0016: Скрипт не найден
      • 0017: Переменная не объявлена
      • 0018: Неверный размер массива
      • 0019: Неизвестный тип массива
      • 0020: Переменная не объявлена как массив
      • 0021: Неверное значение в имени переменной
      • 0022: Cчетчик итераций не является переменной
      • 0023: Неверный синтаксис
      • 0024: Ожидалось целочисленное значение
      • 0025: Неверный цикл
      • 0026: Неверное число с плавающей точкой
      • 0027: Слишком длинная строка
      • 0028: Незавершенная строка
      • 0029: Неверный ID отладочного скрипта
      • 0031: Неверное количество элементов
      • 0032: Неверное значение элемента в заголовке
      • 0033: Неверное имя локальной переменной
      • 0034: Локальная переменная вне допустимых границ
      • 0035: Ожидалось слово
      • 0036: Локальная переменная миссии вне допустимых границ
      • 0037: Отладочный скрипт не найден
      • 0038: Неизвестный тип массива
      • 0039: Неверное определение элемента
      • 0040: Имя или значение константы не определено
      • 0041: Неверный ID миссии
      • 0042: Дублирование имени внешнего скрипта
      • 0043: Неверный индекс массива
      • 0044: Неверное имя массива
      • 0045: Неверный синтаксис массива: пропущено имя переменной
      • 0046: Неверный синтаксис массива
      • 0047: Неверный размер массива
      • 0048: Ошибка чтения размера массива
      • 0049: Недостаточно параметров для опкода
      • 0050: Недостаточно параметров для команды
      • 0051: Ошибка записи заголовка script.img
      • 0052: Ошибка записи script.img
      • 0053: Рекурсивное подключение файла
      • 0054: Метка не найдена
      • 0055: Идентификатор не найден
      • 0056: Метка переобьявлена
      • 0057: Внутренная метка не найдена
      • 0058: Недопустимый параметр
      • 0059: Неверное определение опкода
      • 0060: Нет исходного файла
      • 0061: Пустой исходный файл
      • 0062: IDE файл не найден
      • 0063: Ожидалась метка миссии
      • 0064: Метка миссии не найдена
      • 0065: Метка внешнего скрипта не найдена
      • 0067: Недопустимый символ в имени внешнего скрипта
      • 0068: Неверный символ в идентификаторе
      • 0069: Неверный символ в имени объекта
      • 0071: Неверное число условий
      • 0072: Логический оператор пропущен
      • 0073: Лишний логический оператор
      • 0074: Опция отключена
      • 0075: Неверное 16-ричное значение
      • 0076: Ожидалось условие
      • 0079: Недопустимый параметр в команде Alloc
      • 0080: Ожидалось неотрицательное число
      • 0081: Слишком много параметров
      • 0082: Неверный синтаксис
      • 0083: Неизвестный ID модели
      • 0084: Переход на оффсет 0
      • 0086: Неверный индекс массива
      • 0087: Недопустимая переменная
      • 0088: Глобальная переменная вне допустимых границ
      • 0089: Опкод не найден
      • 0090: Константа переобъявлена
      • 0091: Недостаточно памяти для переменной
Powered by GitBook
On this page
  • Формат файла
  • Атрибуты режима
  • Параметры режима
  • Доступные переменные
  • Список режимов
  • Переключение режимов

Режимы редактирования

PreviousЯзыковая службаNextCustomLabels.ini

Last updated 1 year ago

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, который может редактироваться в любом текстовом редакторе.

Файл начинается с объявления

<?xml version="1.0" encoding="UTF-8"?>

После него должен идти корневой элемент <mode>. В файле может быть только один корневой элемент.

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

Атрибуты режима

id

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

extends

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

Если в конфигурации режима отсутствует какой-то параметр, Sanny Builder рекурсивно проходит по всем родительским режимам, чтобы найти его значение.

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

title

title задает отображаемое имя режима. Из-за ограничений интерфейса избегайте длинных имен и используйте имена короче 24 символов.

game

Атрибут game определяет целевую игру для данного режима. Допустимыми значениями являются:

  • gta3

  • vc

  • sa

  • lcs

  • vcs

  • vc_mobile

  • sa_mobile

Перед началом работы со скриптом, убедитесь что выбран правильный режим редактирования. Каждая игра имеет свой собственный формат скриптов, который несовместим с другими играми. Даже если компиляция прошла без ошибок, в игре может возникнуть ошибка при попытке чтения скрипта в неизвестном ей формате.

Для удобства пользователей Sanny Builder отображает иконку целевой игры напротив имени режима.

type

Допустимым значением атрибута является default. Не указывайте этот атрибут для остальных режимов.

Параметры режима

arrays

classes

constants

copy-directory

путь к директории, в которую нужно скопировать скрипт при запуске Компилировать и сделать копию:

data

путь к директории режима редактирования

enums

ide

Элемент ide имеет необязательный атрибут base, который задает папку, относительно которой расчитываются пути, определенные внутри .dat файла:

<ide base="@game:\">default.dat</ide>

Без base все пути расчитываются относительно папки с .dat файлом.

Режим редактирования может иметь несколько элементов <ide>.

keywords

labels

missions

library

opcodes

templates

text

путь к .gxt файлу

<text> имеет обязательный атрибут: format. Допустимыми значениями являются:

gta3: .gxt с одной таблицей, текстовыми ключами, кодировкой ANSI vc: .gxt с несколькими таблицами, текстовыми ключами, кодировкой ANSI sa: .gxt с несколькими таблицами, зашифрованными ключами, кодировкой ANSI sa_mobile: .gxt с несколькими таблицами, зашифрованными ключами, кодировкой UTF-16

variables

examples

Доступные переменные

Sanny предоставляет несколько переменных, которые могут использоваться в параметрах и атрибутах (там, где это применимо).

Оба пути не включают в себя завершающий слеш (/).

Список режимов

Sanny Builder предлагает много различных режимов, их количество может меняться от версии к версии:

Название

Id

Имена опкодов

Порядок параметров

Игра

GTA III

gta3

сообщество

измененный

все версии GTA III

GTA VC (SBL)

vc_sbl

Rockstar

первоначальный

все версии Vice City

GTA VC

vc

сообщество

измененный

все версии Vice City режим устарел, начиная с версии 4.0, используйте новый режим VC SBL

GTA SA (v1.0 - SBL)

sa_sbl

Rockstar

первоначальный

SA версия 1.0

GTA SA v1.0

sa

сообщество

измененный

SA версия 1.0; режим устарел, начиная с версии 4.0, используйте новый режим SA SBL

GTA SA v2.0

sa_v2

сообщество

измененный

SA версия 2.0

GTA SA (v1.0 - SCR)

sa_scr

Rockstar

первоначальный

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 загрузит все требуемые файлы и вы сразу можете продолжить работу.

Путь: sanny.exe Параметры: -x --no-splash Shortcut: <any combo of your choice>

id - это обязательный и неповторяющийся идентификатор режима. Sanny Builder использует его для сохранения некоторых пользовательских настроек режима, например выбранной .

В скомпилированном файле может о целевой игре для данного скрипта. Перед началом дизассемблирования такого скрипта Sanny Builder предлагает переключить режим редактирования на нужный. Игнорирование такого предложения может привести к ошибке, т.к. формат скрипта может отличаться от того, что ожидает дизассемблер.

Один из режимов для каждой целевой игры должен быть режимом по умолчанию. Это означает, что Sanny Builder использует его при запуске с --game.

путь к

путь к

путь к

Имеет обязательный атрибут type: type="scm" - применяется к обычным .scm скриптам type="cleo" - применяется к скриптам с {$CLEO}

путь к

путь к .ide или .dat файлу: .ide файлы содержат и их характеристики .dat файлы содержат пути к другим .ide файлам

путь к файлу со списком

путь к

путь к

путь к JSON файлу с определениями скриптовых команд, используемых в целевой . доступен для скачивания в ,

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

путь к файлу с

Имеет обязательный атрибут type: type="default" - путь к файлу с шаблонами, включенными в состав Sanny Builder type="custom" - путь к файлу с пользовательскими шаблонами, из редактора

путь к

путь к

@game: - путь к , которая выбрана в настройках @sb: - путь к папке Sanny Builder (где находится sanny.exe)

Выбрать режим через командную строку можно с --mode. Чтобы выбрать режим по умолчанию для какой-либо игры, используйте --game.

Запуск Sanny Builder с -x перезагружает режимы редактирования и обновляет список доступных режимов.

Вы можете зарегистрировать новое сочетание клавиш для быстрого обновления режимов редактирования без необходимости перезапуска Sanny Builder. Добавьте новый элемент в :

CustomArrays.ini
classes.db
constants.txt
enums.txt
ключевых слов
CustomLabels.ini
списком опкодов
эксклюзивными шаблонами
CustomVariables.ini
opcodes.txt
меток
переменных
констант
игре
директории игры
храниться информация
папке с игрой
директивой
missions.txt
Sanny Builder Library
меню внешних приложений
добавленными
имена моделей
опцией
опцией
опцией
опцию
опцией