История изменений

v. 3.9.1 - 18.09.2023

  • имя массива в выражениях без опкодов может быть константой #250

  • декомпилятор использует Alloc для глобальных переменных, если они отличаются от CustomVariables.ini #251

  • опция "Регистр букв" по умолчанию установлена в "Как есть" #256

  • исправлена ошибка, возникающая при компиляции опкода 0B17 #254

  • исправлена ошибка, из-за которой редактор не предлагал использовать исходный код скрипта #258

  • исправлены некоторые проблемы, связанные с объявлением строковых переменных #259, #265

v. 3.9.0 - 09.09.2023

👏 Спасибо всем, кто помогал и участвовал в этом релизе, а так же большое спасибо тем, кто поддерживает меня на Patreon.

Некоторый ошибочный код, который компилировался в предыдущих версиях, теперь будет вызывать ошибку. См. примеры такого кода тут.

Полный список изменений

v. 3.8.5 - 22.02.2023

  • исправлен баг #216

v. 3.8.4 - 17.02.2023

  • при запуске программы с файлом (опция Открыть с помощью...) ранее открытые файлы должны быть доступны #151

  • новая опция командной строки --decompile

  • исправлены баги #212, #213, #180

  • исправлены некоторые проблемы компиляции классов с аргументами в виде строковых литералов

v. 3.8.3 - 08.01.2023

  • исправлены баги #210, #204, #168

  • исправлен баг в поиске моделей

  • плагин CLEO+ обновлен до 1.1.3

v. 3.8.2 - 08.09.2022

  • исправлены баги #200, #187

v. 3.8.1 - 01.09.2022

  • добавлена поддержка большего количества команд, завершающих выражение с несколькими условиями #133

    if and
        0AB0: is_key_pressed 9
	0AB0: is_key_pressed 10
    0AA0: gosub_if_false @label // раньше не работало, теперь компилируется

👏 Спасибо тем, кто участвовал в создании этой версии: NicusorN5, Junior_Djjr, wmysterio, MatiDragon, DanielSant0s, JaggerJam69, Vital, Sdas50, nick7

Полный список изменений

v. 3.8.0 - 04.08.2021

👏 Спасибо тем, кто помогал с этим релизом: forms55, MatiDragon, Vital, wmysterio, XMDS

Полный список изменений

v. 3.7.0 - 30.01.2021

  • объявленные константы теперь подсвечиваются (#28)

  • список автодополнения показывает объявленные константы (#40)

  • для каждой вкладки в редакторе можно выбирать свой режим редактирования (#87)

  • новый режим VC Mobile с опкодами CLEO Android (sannybuilder/data#11)

  • в режим VC PC добавлены опкоды из Opcode Restoration project (автор spaceeinstein)

  • сообщения об ошибке теперь содержат ссылку на переведенную документацию, если таковая имеется (#101)

  • конфигурация внешних приложений поддерживает переменные @sb: и @game: (#72)

  • плагин CLEO+ обновлен до версии 1.0.7

  • исправлены баги: #103 #114 #120

Узнать больше о подсветке констант можно в статье Языковая служба.

Полный список изменений

👏 Спасибо XMDS за вклад в этот релиз.

v. 3.6.2 - 29.11.2020

  • исправлен баг с метками, отсутствующими в дизассемблированных CLEO скриптах #99

v. 3.6.1 - 27.11.2020

  • обновлен перевод на украинский язык

  • обновлен плагин CLEO+ до версии 1.0.4

  • обновлены описания и ключевые слова для CLEO опкодов #95

  • исправлены баги в компиляторе #96, #98

  • небольшие изменения и исправления (см. полный список)

👏 Спасибо wmysterio и XMDS за их вклад в это обновление.

v. 3.6.0 - 11.11.2020

  • поддержка перечисляемых типов в классах

  • новые типы параметров опкодов: m% and k%

  • начальная поддержка расширений

  • улучшена интеграция с библиотекой CLEO:

    • обновлены пакеты в папке tools:

      • CLEO v4.4

      • SCRLog v2020.2

      • добавлен плагин CLEO+ для GTA SA с 250+ новыми опкодами

    • скомпилированные скрипты для CLEO Android (*.csa, *.csi) теперь распознаются

    • компилятор использует CLEO опкоды 0A9E, 0A9F, 0A90, 0A91 в определенных выражениях без опкода

    • унифицированы описания и кейворды для CLEO опкодов среди различных режимов редактирования

  • добавлены кейворды для всех опкодов в режиме GTA SA SCR

  • слово thread было заменено на script в описаниях опкодов и кейвордах (см. почему)

  • обновления IDE:

    • директория игры теперь не является обязательной для запуска компиляции (#48)

    • папка для "Компилировать и сделать копию" теперь конфигурируется (#9)

    • обновлены переводы на испанский и итальянский языки

    • добавлена возможность ассоциировать Sanny Builder с расширениями *.csa и *.csi (скрипты для CLEO Android).

Полный список изменений и исправлений

👏 Спасибо MatiDragon и Wesser за обновленные переводы.

v. 3.5.1 - 21.08.2020

  • исправлен баг с компиляцией скриптов LCS и VCS (#56)

  • массивы в LCS and VCS теперь получают собственные имена из файлов CustomVariables.ini и CustomArrays.ini (#53)

👏 Спасибо darkdraggy за обнаружение первого бага и помощь в тестировании.

v. 3.5.0 - 18.08.2020

Новые описания опкодов для GTA LCS и GTA VCS несовместимы с предыдущими версиями. Вы должны заново дизассемблировать main.scm этих игр прежде чем делать какие-то изменения.

👏 Спасибо marcelo_20xx и fastman92 за их вклад в этот релиз.

v. 3.4.1 - 06.08.2020

  • исправлено неверное количество параметров у опкода 04E3 в VCSSCM.INI

  • исправлена проблема в дизассемблере, которая приводила к игнорированию опции "Писать опкоды" и генерации невалидного кода

v. 3.4.0 - 04.08.2020

  • добавлена поддержка компиляции SCM в GTA: Vice City Stories (#2)

  • добавлена возможность объявлять локальные переменные с собственными именами (#32)

  • добавлен упрощенный синтаксис для вызова подпрограмм, используя имя метки: если после имени метки стоит () это представляет командуgosub

  • больше конфигураций для режимов редактирования:

    • путь к GXT файлу, который использует дизассемблер (#7)

    • путь к opcodes.txt (#5)

    • эксклюзивные шаблоны кода

  • добавлен новый туториал о высокоуровневых конструкциях в языке Sanny Builder (на английском), лежит в папке help\examples

  • обновления IDE:

    • Запуск San Andreas из меню теперь проверяет наличие файла gta-sa.exe (Steam)

    • новый пункт меню для быстрого создания CLEO скрипта (см. примечание внизу статьи Шаблоны кода)

    • ссылки на новый портал с документацией в меню и сообщениях об ошибках

  • небольшие изменения:

    • обновлены определения некоторых опкодов (player money += в SA, award_achievement в SA Mobile, 0479 в VCS)

    • в файле CustomVariables.ini для GTA III переменные script_controlled_player и flag_player_on_mission переименованы в PLAYER_ACTOR и ONMISSION соответственно (#3)

    • возвращена старая версия файлов в папке help\GXT Strings (#25)

    • файл macroes.txt переименован templates.txt

👏 Спасибо OrionSR, ZAZ, XMDS, и Wesser за их вклад в этот релиз.

v. 3.3.3 - 20.10.2019

  • исправлен баг, вызывавший неправильную компиляцию внешних скриптов

v. 3.3.2 - 19.10.2019

  • исправлены баги #0036, #0050

  • исправлен опкод 059C в режиме Vice City

v. 3.3.1 - 14.09.2019

  • исправлен баг #0048

  • добавлен файл constants.txt, который отсутствовал для режима GTA SA

v. 3.3.0 - 08.09.2019

v. 3.2.4 - 04.08.2019

  • исправлены баги #0031, #0032, #0033, #0040, #0044

  • исправлен дефект предыдущей версии, когда CHM справка не открывалась

  • обновлены описания опкодов для GTA 3 и Vice City

  • в IDE добавлена поддержка CLEO 2.0 для III и VC

v. 3.2.3 - 07.07.2019

  • улучшена поддержка версии GTA San Andreas для WinStore, Xbox 360 и PS3

  • исправлена ошибка с неправильной декомпиляцией опкодов 09A4 и 0A18 в режиме SA_Mobile

v. 3.2.2 - 05.07.2014

  • добавлен перевод на корейский язык (спасибо MINE)

  • улучшена работа конструкции HEX..END

  • исправлен баг #0000028

v. 3.2.1 - 04.05.2014

  • добавлен перевод на индонезийский язык (спасибо IMasterFX)

  • обновлены CLEO для GTA III и CLEO для Vice City (спасибо Silent)

  • исправлены баги #0000026, #0000027

v. 3.2.0 - 22.03.2014

  • добавление собственных режимов редактирования возможно путем изменения файла games.xml

  • новый режим редактирования GTA SA SCR

  • переменные могут быть объявлены при помощи указания типа перед именем переменной

  • CLEO обновлена до версии 4.3.16

  • добавлен моментальный поиск в тексте (ранее эта возможность называлась "переход к метке")

  • оригинальные названия миссий могут быть изменены через файл missions.txt

  • улучшена ассоциация расширений скриптовых файлов с Sanny Builder

  • при указании директории игры Sanny Builder проверяет только существование этой директории и не проверяет наличие дополнительных файлов в ней

  • небольшие улучшения в функции проверки обновлений

  • изменена иконка Sanny Builder и иконки в меню

  • исправлен баг #0000024

v. 3.1.4 - 22.02.2014

  • CLEO обновлена до версии 4.3.14

  • исправлены некоторые ошибки в интерфейсе на высоких разрешениях экрана

  • обновлены переводы на немецкий, польский, китайский, украинский языки

v. 3.1.3 - 22.12.2013

  • добавлена поддержка iOS и Android версий GTA: San Andreas

  • значение глубины просмотра теперь используется при построении списка констант

  • обновлены переводы на китайский и немецкий языки

v. 3.1.2 - 06.10.2013

  • добавлен перевод на чешкий язык

  • добавлены опции ассоциации файлов .cs и .cm с Sanny Builder.

  • исправлены баги #0000011, #0000020

v. 3.1.1 - 22.09.2013

  • добавлена новая директива $OPCODE для регистрации нового опкода через скрипт

  • скорректировано поведение директивы $INCLUDE при поиске файла

  • исправлены баги #0000005, #0000019

v. 3.1.0 - 14.09.2013

  • в VCSCM.ini добавлены опкоды из мобильной версии GTA VC и отмечены неподдерживаемые опкоды

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

  • при включенной опции Добавлять доп. информацию в SCM, Sanny Builder добавляет исходный код в тело скрипта (только при наличии директивы $EXTERNAL или $CLEO)

  • добавлена новая директива $NOSOURCE, чтобы запретить добавление исходного кода в тело скрипта

  • некоторые горячие клавиши могут быть изменены в опциях

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

  • директивы $VERSION и $VERSION_RESTORE устарели (компилируются, но не имеют эффекта)

  • обновлены перевод на испанский и китайский языки

  • Менеджер координат может изменять угол поворота игрока в GTA VC

  • в комплектацию Sanny Builder добавлен CLEO плагин SCRLog от LINK/2012 (можно найти в папке tools)

  • исправлены баги #0000010, #0000014, #0000015, #0000016

v. 3.09 - 28.07.2013

  • в Sanny Builder добавлено лицензионное соглашение вида Freeware/Donationware

  • добавлена возможность сообщать о найденных багах в официальный баг-трекер

  • добавлена возможность проверять наличие обновления для Sanny Builder

  • Менеджер координат теперь поддерживает все известные версии GTA3, VC и SA (спасибо Silent)

  • добавлена обновленная версия перевода на китайский язык

  • исправлены баги #0000002, #0000003, #0000004, #0000006, #0000009

  • небольшие изменения дизайна

v. 3.08 - 05.07.2013

  • добавлен Silent's ASI Loader v1.1 для CLEO 3 и CLEO 4

  • добавлен перевод на китайский язык

  • добавлены классы File и Audiostream для обратной совместимости с CLEO 4 от Alien

File.Open, Audiostream.Load, Audiostream.Load3D были методами в CLEO 4. Теперь они свойства. Это означает, что если вы получаете ошибку при компиляции старых скриптов, где использовались эти команды, измените их синтаксис следующим образом:

переменная = File.Open(имя_файла, режим_открытия)
переменная = Audiostream.Load(имя_файла)
переменная = Audiostream.Load3D(имя_файла)
  • компилятор теперь может принимать строковую константу в качестве параметра в свойстве класса

Существует ограничение на использование пробелов в таком параметре.

  • компилятор больше не компилирует строки без начальной кавычки, например text1"text2" или text1'text2'

  • компилятор может компилировать символы комментария внутри строки "{text1}text2"

  • точка с запятой ; больше не может использоваться для закомментирования строки

  • изменен синтаксис параметра \debug

  • добавлены иконки флагов для доступных языков перевода в опциях

  • исправлены некоторые ошибки в декомпиляции для VCS

v. 3.06 - 17.06.2013

  • добавлена поддержка блочных комментариев /* */

  • SASCM.INI обновлен при помощи базы GTAG

  • свойства Actor.Armour и Actor.Car заменены на корректные версии Actor.AddArmour, Actor.MissionCar

  • добавлено новое свойство Actor.CurrentCar для опкода 03C0 в скриптовых классах для игр SA и VC

  • добавлены новые комбинации клавиш Ctrl+Num+ и Ctrl+Num- для быстрого изменения размера шрифта в редакторе

  • Sanny Builder запоминает число закрытых файлов для опции Открывать все закрытые файлы

  • исправлена ошибка при компиляции скрипта с большим числом вставок HEX..END

  • исправлена ошибка версии 3.05, когда программа зависала при запуске, пытаясь открыть файл, переданный в качестве параметра

v. 3.05 - 05.06.2013

  • добавлены новые языки перевода (финский, польский, венгерский, украинский, турецкий)

  • библиотека CLEO обновлена до версии 4.1.1.30f (CLEO 4 от Alien)

  • добавлена возможность установить CLEO для GTA III и для Vice City (автор - Alien)

  • файлы опкодов (**SCM.ini, opcodes.txt) замененены на файлы из комплекта CLEO 4.

  • добавлен новый параметр запуска программы \nosplash

v. 3.04 - 04.08.2008

  • в редактор кода добавлены возможности конвертации чисел из 16-чной системы счисления в 10-чную и наоборот (Ctrl+H), а также конвертировать имя модели в ID и обратно (Ctrl+Alt+H)

  • убрано сообщение о невозможности изменить script.img при компиляции CLEO-скриптов

  • отчет о компиляции показывает размер CLEO-скрипта (пункт Largest Script)

  • исправлена ошибка при компиляции массива с числовыми индексами

  • инсталлятор не требует прав администратора

v. 3.03 - 17.11.2007

  • предыдущая версия CLEO была с ошибкой

  • мелкие исправления (положение панели инструментов теперь сохраняется)

v. 3.02 - 16.11.2007

  • новая версия CLEO

  • панель инструментов можно передвигать

  • F7 при компиляции SCM без заголовка (c директивами $E, $CLEO) не делает копию

  • при компиляции файла с директивой $CLEO нажатием F6 файл создается в той же папке, нажатием F7 дополнительно создается копия в папке CLEO (по аналогии с компиляцией main.scm)

  • новый язык перевода - итальянский, португальский

v. 3.01 - 06.08.2007

  • обновление, исправляющее некоторые ошибки

v. 3.00 - 04.08.2007

v. 2.99e - 01.01.2007

  • справлена ошибка с пропаданием части кода при декомпиляции в режиме отладки внутри конструкции HEX..END

  • конструкция HEX..END может принимать тип aDMA для записи чисел и строки

  • к цикле FOR можно использовать имена моделей в качестве значений счетчика

v. 2.99d - 03.12.2006

v. 2.99c - 30.11.2006

  • добавлен плагин Memory Hacker

  • возможность декомпиляции main.scm Liberty City Stories

  • поддержка числовых констант в качестве индекса глобального массива

  • при декомпиляции переменные заменяются на тип ADMA, если не делятся на 4

  • при компиляции при отсутствии заголовка выставляются значения по умолчанию

  • возможность открывать файлы в редакторе методом Drag&Drop

  • новые препроцессорные директивы: {$VERSION}, {$VERSION_RESTORE}

Если при компиляции вы получаете сообщение об ошибке в заголовке (Неизвестная команда DEFINE OBJECTS) переместите строку {$VERSION xxxx} в любое место после заголовка, например перед комментарием //-------------MAIN---------------

v. 2.99 - 27.09.2006

  • добавлены две новые команды WriteMem и ReadMem

  • поддержка чисел в шестнадцатиричном формате

  • конструкция HEX..END может принимать значения меток и глобальных переменных

  • поддержка типа данных & для массивов, а также в выражениях без опкодов: &57 += &120(&231,4i)

  • возможность давать собственные имена меткам

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

  • добавлена консоль для специальных опций SB

  • поддержка GXT файлов GTA III, GTA VC

  • информация об авторе и версии INI файла

  • поддержка классами INI с оригинальным порядком следования параметров (как SASCM.INI от PLPynton)

  • опция подтверждения выхода

  • возможность быстро переключать режим редактирования

  • конвертация отдельного, выделенного участка кода

  • возможность передавать во внешнее приложение в качестве параметра имя текущего открытого файла

  • исправлены некоторые ошибки в конфигурационных файлах

  • убрана автоматическая конвертация числа в тип Float, если переменная была объявлена как Float, а в нее записывалось целое число. Теперь опкод выбирается только в зависимости от типа числа

  • чтение/изменение Z_angle игрока в Coord Manager; возможность вставки значения угла в скрипт нажатием Ctrl+Shift+E (для SA)

v. 2.98 - 04.08.2006

  • Sanny Builder полностью русифицирован

  • в SB встроена специальная версия Opcode Search Tool

  • проверка математических выражений при декомпиляции с выключенной опцией Писать опкоды

  • возможность выбирать IMG файл самостоятельно, если таковой не найден в папке с main.scm(опция Ручной выбор IMG-файла)

  • возможность добавлять новые фрагменты кода прямо из редактора; добавлены описания макросов

  • список моделей можно сортировать по алфавиту/по значению (Alt+S, когда активен список)

  • минорные исправления и изменения

v. 2.97 - 11.06.2006

v. 2.96 - 01.04.2006

v. 2.9f - 18.02.2006

  • новые модели автоматически добавляются в список DEFINE OBJECTS (этот список можно вообще не использовать)

  • добавлены блочные комментарии: {}

  • добавлена запись макросов

  • минорные исправления и добавления

v. 2.9 - 15.12.2005

  • добавлен оператор IN

  • добавлена конструкция IF..THEN..ELSE..END

  • добавлены циклы WHILE, REPEAT; добавлена возможность использования вложенных циклов

  • добавлена команда ALLOC

  • новый стиль комментариев: //

  • позиции маркеров и курсора запоминаются для закрытых файлов

v. 2.6 - 05.11.2005

  • добавлена поддержка форматов Vice City и GTA3

  • добавлена возможность объявления переменных и массивов как экземпляров класса

  • добавлен показ списка переменных и меток

  • добавлена поддержка циклов ( оператор FOR )

  • миссии можно запускать по их имени (start_mission MYMISSION), где MYMISSION - это имя стартовой метки (DEFINE MISSION 100 at @MYMISSION )

  • доступен список импортируемых моделей (DEFINE OBJECTS) по Ctrl+пробел

  • новый оператор <>

  • если при декомпиляции не найден script.img, используется оригинальный файл

  • для массивов добавлен тип handle

  • возможность отключения предупреждения об использовании IMG игрой

v. 2.5 - 10.10.2005

  • добавлена поддержка свойств классов

  • добавлена поддержка фрагментов кода

  • добавлена конструкция VAR..END для эффективного управления переменными

  • описаны все возможные математические опкоды: 0004..008B

  • новые операторы < и <=

  • добавлена возможность автоподбора необходимого значения для оператора IF

  • добавлена поддержка текстовых названий параметров

  • добавлен показ списка моделей

  • минорные добавления и исправления

v. 2.0 - 18.09.2005

  • добавлена поддержка классов

  • добавлена поддержка ключевых слов

  • добавлена возможность писать некоторые математические команды без опкодов

  • для опкода 00D6 по умолчанию устанавливается параметр 0, если иное не установлено (if = if 0)

  • добавлена опция выбора различных видов меток

  • добавлены константы True и False, которые обозначают 1 и 0 соответственно

  • добавлена конструкция HEX..END для записи шестнадцатиричных значений прямо в SCM

v. 1.1 - 07.09.2005

  • добавлен Coord Manager

  • исправлены некоторые ошибки

v. 1.0 - 04.09.2005

  • новый формат меток

  • добавлен конвертор из синтаксиса BW's SA Mission Builder

  • при декомпиляции в исходник добавляются названия моделей и содержимое american.gxt

  • добавлены новые опции

  • пофиксены некоторые ошибки

v. 0.8 - 20.08.2005

  • добавлена возможность ассоциировать SCM файлы с программой

  • теперь при декомпиляции имя выходного файла изменяется, если такой файл уже существует (например, если уже существует main.scm.txt, то имя нового файла будет main.scm[0].txt)

  • сообщения об ошибках стали более информативными

  • добавлена проверка на дублирование меток

  • пофиксены некоторые ошибки

v. 0.7 - 10.08.2005

  • увеличено число опций для работы с текстом

  • добавлена возможность работать с несколькими файлами одновременно

  • добавлена функция поиска опкодов через F1 (beta)

v. 0.6 - 04.08.2005

  • полная декомпиляция SCM файлов San Andreas

  • компиляция скриптов в SCM файл (SA) и IMGфайл

  • доступны минимальные опции работы с текстом

Last updated