Sanny Builder
In English
Search
K

Extensions

An extension is a set of new instructions added to the vanilla game. The CLEO library and its plugins is the most known way of adding those.
To make Sanny Builder aware of the custom instructions and explicitly signal their intentional usage, a script must have {$USE} directive. The {$USE} directive enables a particular set of instructions (see below the list of extensions).
{$USE CLEO}
{$USE ini}
{$USE CLEO+}
Each opcode included in Sanny Builder's INI files has been categorized to belong to some extension. Currently it is done via the file extensions.txt.
See #74 for more information on how this feature is expected to function in the future.

Implicit Extensions

Standard game opcodes have been included in the default extension that is implicitly available in any script. {$USE default} is possible but redundant.
Using {$CLEO} directive also implies {$USE CLEO} so standard CLEO opcodes are available to the compiler already.

Extensions List

Sanny Builder ships some common and recognized extensions for different edit modes:
Extension Name
Source
Edit Modes where available
CLEO
{$USE CLEO}
CLEO for GTA III CLEO for Vice City
CLEO 4.4
CLEO Android
GTA III
Vice City
GTA SA v1.0, v2.0, (v1.0 - SCR)
SA Mobile
VC Mobile
ini
{$USE ini}
IniFiles.cleo plugin (ships with CLEO)
GTA III Vice City
GTA SA v1.0, v2.0, (v1.0 - SCR)
file
{$USE file}
FileSystemOperations plugin (ships with CLEO)
GTA III Vice City
GTA SA v1.0, v2.0, (v1.0 - SCR)
bitwise
{$USE bitwise}
IntOperations plugin (ships with CLEO4)
GTA III Vice City
GTA SA v1.0, v2.0, (v1.0 - SCR)
clipboard
{$USE clipboard}
ClipboardControl plugin
GTA III Vice City
GTA SA v1.0, v2.0, (v1.0 - SCR)
memory
{$USE memory}
MemoryModule plugin
GTA III Vice City
CLEO+
{$USE CLEO+}
CLEO+ plugin
GTA SA v1.0, v2.0, (v1.0 - SCR)
newOpcodes
{$USE newOpcodes}
newOpcodes plugin
GTA SA v1.0, v2.0
Restoration
{$USE Restoration}
Vice City
Using opcodes from the third-party libraries not listed there is possible, the compiler will not require the {$USE} directive.