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

v. 4.0.0 - 04.08.2024

See the complete list of changes. Visit SannyBuilder Discord for additional information and support.

This release won't be possible without great feedback and testing from Sanny Builder community as well as support from my Patreon.

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