<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://hotline.ubersoft.org/Sputnik/wiki/skins/common/feed.css?301"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-gb">
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php?feed=atom&amp;target=Alexpja&amp;title=Special%3AContributions</id>
		<title>Sputnik Wiki - User contributions [en-gb]</title>
		<link rel="self" type="application/atom+xml" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php?feed=atom&amp;target=Alexpja&amp;title=Special%3AContributions"/>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Special:Contributions/Alexpja"/>
		<updated>2026-04-05T19:02:31Z</updated>
		<subtitle>From Sputnik Wiki</subtitle>
		<generator>MediaWiki 1.17.0</generator>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Goto_Label</id>
		<title>Core Function Goto Label</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Goto_Label"/>
				<updated>2011-12-11T17:24:22Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
Goto Label; &amp;amp; Label:&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Jump to another section of the script&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
This is not a universal *jump to anything you can see* it can only jump through local scopes and what not.&lt;br /&gt;
&lt;br /&gt;
Think of it as a kind of multilayer break statement.&lt;br /&gt;
&lt;br /&gt;
Note - People often avoid using &amp;quot;goto&amp;quot; statements in languages because they tend to be slow and a very poor way of solving a problem yet its here if you want it.&lt;br /&gt;
&lt;br /&gt;
If a label cannot be found an exception will occur.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
goto Begin;&lt;br /&gt;
&lt;br /&gt;
Above:&lt;br /&gt;
println(  &amp;quot;Hello Above&amp;quot;  );&lt;br /&gt;
goto Below;&lt;br /&gt;
&lt;br /&gt;
Begin:&lt;br /&gt;
println(  &amp;quot;Hello&amp;quot;  );&lt;br /&gt;
goto Above;&lt;br /&gt;
&lt;br /&gt;
Below:&lt;br /&gt;
println(  &amp;quot;Hello Below&amp;quot;  );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_MySQLConnect</id>
		<title>Core Function MySQLConnect</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_MySQLConnect"/>
				<updated>2011-12-11T06:32:59Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: /* Remarks */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
MySQLConnect( &amp;lt;ip/ip:port&amp;gt;, &amp;lt;login&amp;gt;, &amp;lt;password&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Connect to a MySQL database.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== ip/ip:port ====&lt;br /&gt;
&lt;br /&gt;
The IP example &amp;quot;127.0.0.1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
OR&lt;br /&gt;
&lt;br /&gt;
The IP and port example &amp;quot;127.0.0.1:3016&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== login ====&lt;br /&gt;
&lt;br /&gt;
The MySQL login to use for the connection.&lt;br /&gt;
&lt;br /&gt;
==== password ====&lt;br /&gt;
&lt;br /&gt;
The MySQL password to use for the connection.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns the MySQL object. &lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0. &lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
Sputnik includes an easy to use built-in MySQL support since I use SQL a lot in my scripts.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$CONN = MySQLConnect(&amp;quot;127.0.0.1&amp;quot;, &amp;quot;root&amp;quot;, &amp;quot;777&amp;quot;);&lt;br /&gt;
If($CONN)&lt;br /&gt;
{&lt;br /&gt;
	println(&amp;quot;Connected...&amp;quot;);&lt;br /&gt;
	If(MySQLSelectDB($CONN, &amp;quot;sp2&amp;quot;))&lt;br /&gt;
	{&lt;br /&gt;
		//MySQLQuery(&amp;quot;UPDATE bla bla bla....&amp;quot;);&lt;br /&gt;
		//MySQLQuery(&amp;quot;INSERT bla bla bla....&amp;quot;);&lt;br /&gt;
		println(&amp;quot;Selected db...&amp;quot;);&lt;br /&gt;
		$Data = MySQLFill($CONN, &amp;quot;SELECT * FROM players&amp;quot;);&lt;br /&gt;
		If($Data)&lt;br /&gt;
		{&lt;br /&gt;
			println(&amp;quot;Got data...&amp;quot;);&lt;br /&gt;
			$Fields = MySQLFields($Data);&lt;br /&gt;
			$Rows = MySQLRows($Data);&lt;br /&gt;
			println(&amp;quot;Data has '$Fields' Field(s) and '$Rows' Row(s)...&amp;quot;);&lt;br /&gt;
			While( $Row = MySQLFetch($Data) )&lt;br /&gt;
			{&lt;br /&gt;
				$Name = $Row[&amp;quot;Name&amp;quot;];&lt;br /&gt;
				$Pass = $Row[&amp;quot;Pass&amp;quot;];&lt;br /&gt;
				println(&amp;quot;Name '$Name' Pass '$Pass'&amp;quot;);&lt;br /&gt;
			}&lt;br /&gt;
			//MySQLFetchReset($Data); //Uncomment if you wish to loop through this table again&lt;br /&gt;
		}&lt;br /&gt;
		Else&lt;br /&gt;
		{&lt;br /&gt;
			println(&amp;quot;Failed to get data...&amp;quot;);&lt;br /&gt;
		}&lt;br /&gt;
		MySQLClose($CONN);&lt;br /&gt;
	}&lt;br /&gt;
	Else&lt;br /&gt;
	{&lt;br /&gt;
		println(&amp;quot;Failed to select db...&amp;quot;);&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
Else&lt;br /&gt;
{&lt;br /&gt;
	println(&amp;quot;Failed to connect...&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Function_Reference</id>
		<title>Function Reference</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Function_Reference"/>
				<updated>2011-12-09T23:31:36Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: /* Process Functions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Function Reference ==&lt;br /&gt;
&lt;br /&gt;
=== How to create a Function ===&lt;br /&gt;
&lt;br /&gt;
To create your own funtions see the Function page.&lt;br /&gt;
&lt;br /&gt;
* [[User Function|User Defined Functions]]&lt;br /&gt;
&lt;br /&gt;
=== Core Functions ===&lt;br /&gt;
&lt;br /&gt;
==== Language Features ====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function Regex Match|&amp;lt;Expression&amp;gt; =~ m/pattern/flags]] -- Match a string to a regular expression pattern and check if it matches and optionally return captured groups&lt;br /&gt;
* [[Core Function Regex Replace|&amp;lt;Expression&amp;gt; =~ s/pattern/replacement/flags]] -- Replace parts of a string using a regular expression pattern and optionally executing functions on the matched groups&lt;br /&gt;
* [[Core Function Goto Label|Goto Label; &amp;amp; Label:]] -- Jump to another section of the script&lt;br /&gt;
&lt;br /&gt;
==== Console Functions ====&lt;br /&gt;
* [[Core Function Print|Print( &amp;lt;expression&amp;gt; )]] -- Prints an expressions string value to the console window&lt;br /&gt;
* [[Core Function Println|Println( &amp;lt;expression&amp;gt; )]] -- Prints an expressions string value to the console window and inserts a newline charactor at the end.&lt;br /&gt;
* [[Core Function Printf|Printf( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt;... )]] -- Print a formatted string to the console window&lt;br /&gt;
* [[Core Function Input|Input( &amp;lt;expression&amp;gt; )]] -- Capture a string typed to console window&lt;br /&gt;
* [[Core Function InputC|InputC( &amp;lt;expression&amp;gt; )]] -- Capture a char typed to console window&lt;br /&gt;
* [[Core Function Cls|Cls( )]] -- Clear all text from the console window&lt;br /&gt;
* [[Core Function ConsoleHide|ConsoleHide( )]] -- Hide the console window&lt;br /&gt;
* [[Core Function ConsoleShow|ConsoleShow( )]] -- Show the console window&lt;br /&gt;
* [[Core Function ConsoleBeep|ConsoleBeep( &amp;lt;freq&amp;gt;, &amp;lt;duration&amp;gt; )]] -- Plays the sound of a beep of a specified frequency and duration through the console speaker&lt;br /&gt;
* [[Core Function ConsoleSeek|ConsoleSeek( &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt; )]] -- Set the position of the console cursor&lt;br /&gt;
* [[Core Function ConsoleBackColour|ConsoleBackColour( &amp;lt;colour&amp;gt; )]] -- Set the background (behind text) colour of the console&lt;br /&gt;
* [[Core Function ConsoleForeColour|ConsoleForeColour( &amp;lt;colour&amp;gt; )]] -- Set the foreground (text) colour of the console&lt;br /&gt;
* [[Core Function ConsoleBufferWidth|ConsoleBufferWidth( &amp;lt;newval&amp;gt; )]] -- Get or Set the buffer width of the console window&lt;br /&gt;
* [[Core Function ConsoleBufferHeight|ConsoleBufferHeight( &amp;lt;newval&amp;gt; )]] -- Get or Set the buffer height of the console window&lt;br /&gt;
* [[Core Function ConsoleWidth|ConsoleWidth( &amp;lt;newval&amp;gt; )]] -- Get or Set the width of the console window&lt;br /&gt;
* [[Core Function ConsoleHeight|ConsoleHeight( &amp;lt;newval&amp;gt; )]] -- Get or Set the height of the console window&lt;br /&gt;
* [[Core Function ConsoleTitle|ConsoleTitle( &amp;lt;newtitle&amp;gt; )]] -- Get or Set the title of the console window&lt;br /&gt;
* [[Core Function ConsoleCursorLeft|ConsoleCursorLeft( &amp;lt;newval&amp;gt; )]] -- Gets or sets the column position of the cursor within the buffer area&lt;br /&gt;
* [[Core Function ConsoleCursorTop|ConsoleCursorTop( &amp;lt;newval&amp;gt; )]] -- Gets or sets the row position of the cursor within the buffer area&lt;br /&gt;
* [[Core Function ConsoleCursorSize|ConsoleCursorSize( &amp;lt;newval&amp;gt; )]] -- Gets or sets the height of the cursor within a character cell&lt;br /&gt;
* [[Core Function ConsoleCursorVisible|ConsoleCursorVisible( &amp;lt;newval&amp;gt; )]] -- Gets or sets a value indicating whether the cursor is visible&lt;br /&gt;
&lt;br /&gt;
==== Multi-Threading Functions ====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function ThreadCreate|ThreadCreate( &amp;lt;name&amp;gt;, &amp;lt;function&amp;gt; )]] -- Create a new thread and start it off executing a function or some code&lt;br /&gt;
* [[Core Function ThreadSleep|ThreadSleep( &amp;lt;name&amp;gt; )]] -- Freeze a thread and make it sleep&lt;br /&gt;
* [[Core Function ThreadResume|ThreadResume( &amp;lt;name&amp;gt; )]] -- Unfreeze a thread and allow it to continue execution&lt;br /&gt;
* [[Core Function ThreadState|ThreadState( &amp;lt;name&amp;gt; )]] -- Returns state of a thread&lt;br /&gt;
* [[Core Function ThreadKill|ThreadKill( &amp;lt;name&amp;gt; )]] -- Terminate a thread and remove it from the script&lt;br /&gt;
* [[Core Function ThreadExists|ThreadExists( &amp;lt;name&amp;gt; )]] -- Check if a thread exists by this name&lt;br /&gt;
* [[Core Function ThreadName|ThreadName( )]] -- Returns the name of the current thread that is executing this code&lt;br /&gt;
* [[Core Function Threads|Threads( )]] -- Return an array of all threads&lt;br /&gt;
&lt;br /&gt;
==== Variable Type Conversions ====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function Char|Char( &amp;lt;expression&amp;gt; )]] -- Returns the single letter representation of an expression&lt;br /&gt;
* [[Core Function Byte|Byte( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 8-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function SByte|SByte( &amp;lt;expression&amp;gt; )]] -- Returns the signed 8-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Short|Short( &amp;lt;expression&amp;gt; )]] -- Returns the signed 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int16|Int16( &amp;lt;expression&amp;gt; )]] -- Returns the signed 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int32|Int32( &amp;lt;expression&amp;gt; )]] -- Returns the signed 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int|Int( &amp;lt;expression&amp;gt; )]] -- Returns the signed 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int64|Int64( &amp;lt;expression&amp;gt; )]] -- Returns the signed 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Long|Long( &amp;lt;expression&amp;gt; )]] -- Returns the signed 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UShort|UShort( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt16|UInt16( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt32|UInt32( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt|UInt( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt64|UInt64( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function ULong|ULong( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Float|Float( &amp;lt;expression&amp;gt; )]] -- Returns the 32-bit floating point representation of an expression&lt;br /&gt;
* [[Core Function Double|Double( &amp;lt;expression&amp;gt; )]] -- Returns the 64-bit floating point representation of an expression&lt;br /&gt;
* [[Core Function String|String( &amp;lt;expression&amp;gt; )]] -- Returns the String representation of an expression&lt;br /&gt;
&lt;br /&gt;
==== Common Variable Functions ====&lt;br /&gt;
&lt;br /&gt;
===== Misc =====&lt;br /&gt;
* [[Core Function Unset|Unset( $variable )]] -- Delete a variable&lt;br /&gt;
* [[Core Function IsDeclared|IsDeclared( &amp;lt;variable name&amp;gt; )]] -- Check if a variable has been declared&lt;br /&gt;
&lt;br /&gt;
===== Hash/Array =====&lt;br /&gt;
* [[Core Function Reset|Reset( $variable )]] -- Reset the current array pointer to the first element&lt;br /&gt;
* [[Core Function Next|Next( $variable )]] -- Set the array pointer to the next element&lt;br /&gt;
* [[Core Function Prev|Prev( $variable )]] -- Set the array pointer to the previous element&lt;br /&gt;
&lt;br /&gt;
===== Type Checking =====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function isVarChar|isVarChar( $variable )]] -- Checks if a variable is a char type&lt;br /&gt;
* [[Core Function isVarByte|isVarByte( $variable )]] -- Checks if a variable is an unsigned 8-bit integer type&lt;br /&gt;
* [[Core Function isVarSByte|isVarSByte( $variable )]] -- Checks if a variable is a signed 8-bit integer type&lt;br /&gt;
* [[Core Function isVarShort|isVarShort( $variable )]] -- Checks if a variable is a signed 16-bit integer type&lt;br /&gt;
* [[Core Function isVarInt16|isVarInt16( $variable )]] -- Checks if a variable is a signed 16-bit integer type&lt;br /&gt;
* [[Core Function isVarInt|isVarInt( $variable )]] -- Checks if a variable is a signed 32-bit integer type&lt;br /&gt;
* [[Core Function isVarInt32|isVarInt32( $variable )]] -- Checks if a variable is a signed 32-bit integer type&lt;br /&gt;
* [[Core Function isVarInt64|isVarInt64( $variable )]] -- Checks if a variable is a signed 64-bit integer type&lt;br /&gt;
* [[Core Function isVarLong|isVarLong( $variable )]] -- Checks if a variable is a signed 64-bit integer type&lt;br /&gt;
* [[Core Function isVarUShort|isVarUShort( $variable )]] -- Checks if a variable is an unsigned 16-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt16|isVarUInt16( $variable )]] -- Checks if a variable is an unsigned 16-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt|isVarUInt( $variable )]] -- Checks if a variable is an unsigned 32-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt32|isVarUInt32( $variable )]] -- Checks if a variable is an unsigned 32-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt64|isVarUInt64( $variable )]] -- Checks if a variable is an unsigned 64-bit integer type&lt;br /&gt;
* [[Core Function isVarULong|isVarULong( $variable )]] -- Checks if a variable is an unsigned 64-bit integer type&lt;br /&gt;
* [[Core Function isVarFloat|isVarFloat( $variable )]] -- Checks if a variable is a single precision floating point type&lt;br /&gt;
* [[Core Function isVarDouble|isVarDouble( $variable )]] -- Checks if a variable is a double precision floating point type&lt;br /&gt;
* [[Core Function isVarString|isVarString( $variable )]] -- Checks if a variable is a string type&lt;br /&gt;
* [[Core Function isVarNumber|isVarNumber( $variable )]] -- Checks if a variable is any integer or float/double type&lt;br /&gt;
* [[Core Function isVarBinary|isVarBinary( $variable )]] -- Checks if a variable is a binary type&lt;br /&gt;
* [[Core Function isVarRef|isVarRef( $variable )]] -- Check if a variable is an reference to another variable&lt;br /&gt;
* [[Core Function isVarArray|isVarArray( $variable )]] -- Check if a variable is an array&lt;br /&gt;
* [[Core Function isVarObj|isVarObj( $variable, &amp;lt;type&amp;gt; )]] -- Check if a variable is an object type (This includes classes, file handles etc)&lt;br /&gt;
* [[Core Function isVarClass|isVarClass( $variable, &amp;lt;type&amp;gt; )]] -- Check if a variable's object type is a class&lt;br /&gt;
* [[Core Function isVarGUI|isVarGUI( $variable )]] -- Check if a variable's object type is a GUI&lt;br /&gt;
* [[Core Function isVarGUIObject|isVarGUIObject( $variable, &amp;lt;type&amp;gt; )]] -- Check if a variable's object type is a GUI Object (Buttons etc)&lt;br /&gt;
* [[Core Function isVarDLLStruct|isVarDLLStruct( $variable )]] -- Check if a variable holds a DLLStruct&lt;br /&gt;
* [[Core Function isVarServer|isVarServer( $variable )]] -- Check if a variable holds a Server object from Listen()&lt;br /&gt;
* [[Core Function isVarClient|isVarClient( $variable )]] -- Check if a variable holds a Client object from Connect()&lt;br /&gt;
* [[Core Function isVarClientSocket|isVarClientSocket( $variable )]] -- Check if a variable holds a Client socket object&lt;br /&gt;
&lt;br /&gt;
====== Get Type Directly ======&lt;br /&gt;
* [[Core Function GetVarType|GetVarType( $variable )]] -- Get the common type of a variable&lt;br /&gt;
* [[Core Function GetVarObjType|GetVarObjType( $variable )]] -- Get the common object type of a variable (If it is an object)&lt;br /&gt;
* [[Core Function GetVarGUIObjType|GetVarGUIObjType( $variable )]] -- Get the common object type of a variable (If it is a GUI object)&lt;br /&gt;
&lt;br /&gt;
==== Binary Data Management Functions ====&lt;br /&gt;
* [[Core Function Pack|Pack( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Pack data into a binary array&lt;br /&gt;
* [[Core Function Unpack|Unpack( &amp;lt;expression&amp;gt;, &amp;lt;binary-array&amp;gt; )]] -- Unpack data from a binary array&lt;br /&gt;
* [[Core Function BinaryCreate|BinaryCreate( &amp;lt;size&amp;gt;, &amp;lt;fill&amp;gt; )]] -- Create a new binary variable and its array size and fill data type &lt;br /&gt;
* [[Core Function BinaryClone|BinaryClone( &amp;lt;binary-array&amp;gt; )]] -- Clone a binary variable 100% and return a new binary variable with exactly same data as the old one&lt;br /&gt;
* [[Core Function BinaryWipe|BinaryWipe( &amp;lt;binary-array&amp;gt; )]] -- Wipes a binary variables data 100% and sets the variable to a blank int containing just 0&lt;br /&gt;
* [[Core Function BinaryStr|BinaryStr( &amp;lt;binary-array&amp;gt;, &amp;lt;separator&amp;gt; )]] -- Create a Hex string from a binary array&lt;br /&gt;
* [[Core Function BinaryHex|BinaryHex( &amp;lt;expression&amp;gt; )]] -- Create a binary array from a hex string&lt;br /&gt;
* [[Core Function BinaryLen|BinaryLen( &amp;lt;binary-array&amp;gt; )]] -- Returns the number of bytes in a binary variable&lt;br /&gt;
* [[Core Function BinaryGet|BinaryGet( &amp;lt;binary-array&amp;gt;, &amp;lt;index&amp;gt; )]] -- Get the byte at an index of a binary variable&lt;br /&gt;
* [[Core Function BinarySet|BinarySet( &amp;lt;binary-array&amp;gt;, &amp;lt;index&amp;gt;, &amp;lt;value&amp;gt; )]] -- Set the byte at an index of a binary variable&lt;br /&gt;
* [[Core Function BinaryReverse|BinaryReverse( &amp;lt;binary-array&amp;gt;, &amp;lt;start&amp;gt;, &amp;lt;length&amp;gt; )]] -- Reverse the order bytes a binary variable&lt;br /&gt;
* [[Core Function BinaryMid|BinaryMid( &amp;lt;binary-array&amp;gt;, &amp;lt;start&amp;gt;, &amp;lt;length&amp;gt; )]] -- Create a binary variable by extracting a number of bytes from another binary variable&lt;br /&gt;
* [[Core Function BinaryAppend|BinaryAppend( &amp;lt;binary-array&amp;gt;, &amp;lt;binary-array2&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Append a binary variables data onto the end or beginning of another binary variables data&lt;br /&gt;
* [[Core Function BinaryInsert|BinaryInsert( &amp;lt;binary-array&amp;gt;, &amp;lt;binary-array2&amp;gt;, &amp;lt;index&amp;gt; )]] -- Insert a binary variables data into another binary variable at a specific location&lt;br /&gt;
* [[Core Function BinaryUnshift|BinaryUnshift( &amp;lt;binary-array&amp;gt;, &amp;lt;byte&amp;gt; )]] -- Add a byte to the beginning of a binary variable&lt;br /&gt;
* [[Core Function BinaryPush|BinaryPush( &amp;lt;binary-array&amp;gt;, &amp;lt;byte&amp;gt; )]] -- Add a byte to the end of a binary variable&lt;br /&gt;
* [[Core Function BinaryShift|BinaryShift( &amp;lt;binary-array&amp;gt; )]] -- Delete the first byte from a binary variable&lt;br /&gt;
* [[Core Function BinaryPop|BinaryPop( &amp;lt;binary-array&amp;gt; )]] -- Delete the last byte from a binary variable&lt;br /&gt;
* [[Core Function BinaryResize|BinaryResize( &amp;lt;binary-array&amp;gt;, &amp;lt;size&amp;gt;, &amp;lt;data&amp;gt; )]] -- Resize a binary variables data array&lt;br /&gt;
* [[Core Function BinaryCompress|BinaryCompress( &amp;lt;binary-array&amp;gt; )]] -- Compress a binary variables data&lt;br /&gt;
* [[Core Function BinaryUncompress|BinaryUncompress( &amp;lt;binary-array&amp;gt; )]] -- Uncompress a binary variable data&lt;br /&gt;
* [[Core Function BinarySave|BinarySave( &amp;lt;binary-array&amp;gt;, &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Save a binary variable data to file&lt;br /&gt;
* [[Core Function BinaryLoad|BinaryLoad( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Create a new binary variable by loading binary data from a file&lt;br /&gt;
&lt;br /&gt;
==== Math Functions ====&lt;br /&gt;
* [[Core Function Abs|Abs( &amp;lt;expression&amp;gt; )]] -- Calculates the absolute value of a number&lt;br /&gt;
* [[Core Function ACos|ACos( &amp;lt;expression&amp;gt; )]] -- Calculates the arcCosine of a number&lt;br /&gt;
* [[Core Function ASin|ASin( &amp;lt;expression&amp;gt; )]] -- Calculates the arcsine of a number&lt;br /&gt;
* [[Core Function ATan|ATan( &amp;lt;expression&amp;gt; )]] -- Calculates the arctangent of a number&lt;br /&gt;
* [[Core Function ATan2|ATan2( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; )]] -- Compute arc tangent with two parameters&lt;br /&gt;
* [[Core Function BitAND|BitAND( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt;, &amp;lt;n&amp;gt; )]] -- Performs a bitwise AND operation&lt;br /&gt;
* [[Core Function BitNOT|BitNOT( &amp;lt;expression&amp;gt; )]] -- Performs a bitwise NOT operation&lt;br /&gt;
* [[Core Function BitOR|BitOR( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt;, &amp;lt;n&amp;gt; )]] -- Performs a bitwise OR operation&lt;br /&gt;
* [[Core Function BitSHIFT|BitSHIFT( &amp;lt;value&amp;gt;, &amp;lt;shift&amp;gt; )]] -- Performs a bit shifting operation&lt;br /&gt;
* [[Core Function BitXOR|BitXOR( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt;, &amp;lt;n&amp;gt; )]] -- Performs a bitwise exclusive OR (XOR) operation&lt;br /&gt;
* [[Core Function Ceiling|Ceiling( &amp;lt;expression&amp;gt; )]] -- Returns a number rounded up to the next integer&lt;br /&gt;
* [[Core Function Cos|Cos( &amp;lt;expression&amp;gt; )]] -- Calculates the cosine of a number&lt;br /&gt;
* [[Core Function Cosh|Cosh( &amp;lt;expression&amp;gt; )]] -- Returns the hyperbolic cosine of the specified angle&lt;br /&gt;
* [[Core Function Exp|Exp( &amp;lt;expression&amp;gt; )]] -- Returns e raised to the specified power&lt;br /&gt;
* [[Core Function Floor|Floor( &amp;lt;expression&amp;gt; )]] -- Returns the largest integer less than or equal to the specified number&lt;br /&gt;
* [[Core Function Log|Log( &amp;lt;expression&amp;gt; )]] -- Returns the logarithm of a specified number&lt;br /&gt;
* [[Core Function Log10|Log10( &amp;lt;expression&amp;gt; )]] -- Returns the common (base-10) logarithm of a specified number&lt;br /&gt;
* [[Core Function Math|Math( &amp;lt;expression&amp;gt; )]] -- Parse a string containing mathematical equations&lt;br /&gt;
* [[Core Function Max|Max( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; )]] -- Find the greater number and return it&lt;br /&gt;
* [[Core Function Min|Min( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; )]] -- Find the lesser number and return it&lt;br /&gt;
* [[Core Function Mod|Mod( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; )]] -- Performs the modulus operation&lt;br /&gt;
* [[Core Function Pow|Pow( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; )]] -- Returns a specified number raised to the specified power&lt;br /&gt;
* [[Core Function Random|Random( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; )]] -- Get a random number from the defined area.&lt;br /&gt;
* [[Core Function Round|Round( &amp;lt;expression&amp;gt;, &amp;lt;decimalplaces&amp;gt; )]] -- Returns a number rounded to a specified number of decimal places&lt;br /&gt;
* [[Core Function Sin|Sin( &amp;lt;expression&amp;gt; )]] -- Returns the sine of the specified angle&lt;br /&gt;
* [[Core Function Sinh|Sinh( &amp;lt;expression&amp;gt; )]] -- Returns the hyperbolic sine of the specified angle&lt;br /&gt;
* [[Core Function Sqrt|Sqrt( &amp;lt;expression&amp;gt; )]] -- Returns the square root of a specified number&lt;br /&gt;
* [[Core Function Tan|Tan( &amp;lt;expression&amp;gt; )]] -- Returns the tangent of the specified angle&lt;br /&gt;
* [[Core Function Tanh|Tanh( &amp;lt;expression&amp;gt; )]] -- Returns the hyperbolic tangent of the specified angle&lt;br /&gt;
* [[Core Function Truncate|Truncate( &amp;lt;expression&amp;gt; )]] -- Calculates the integral part of a specified decimal number&lt;br /&gt;
&lt;br /&gt;
==== String Functions ====&lt;br /&gt;
* [[Core Function Asc|Asc( &amp;lt;char&amp;gt; )]] -- Returns the ASCII code of a character.&lt;br /&gt;
* [[Core Function AscW|AscW( &amp;lt;char&amp;gt; )]] -- Returns the UNICODE code of a character.&lt;br /&gt;
* [[Core Function Chr|Chr( &amp;lt;expression&amp;gt; )]] -- Returns a character corresponding to an ASCII code.&lt;br /&gt;
* [[Core Function ChrW|ChrW( &amp;lt;expression&amp;gt; )]] -- Returns a character corresponding to a UNICODE code.&lt;br /&gt;
* [[Core Function Contains|Contains( &amp;lt;srting&amp;gt;, &amp;lt;string&amp;gt;, &amp;lt;casesense&amp;gt;)]] -- Check if string contains a sub string&lt;br /&gt;
* [[Core Function CSV|CSV( &amp;lt;string&amp;gt;, &amp;lt;delim&amp;gt;, &amp;lt;quote&amp;gt;, &amp;lt;comment&amp;gt; )]] -- Split strings and parse a CSV text into an array&lt;br /&gt;
* [[Core Function Dec|Dec( &amp;lt;expression&amp;gt; )]] -- Returns a integer representation of a hexadecimal string&lt;br /&gt;
* [[Core Function FDec|FDec( &amp;lt;expression&amp;gt; )]] -- Returns a float representation of a hexadecimal string&lt;br /&gt;
* [[Core Function DDec|DDec( &amp;lt;expression&amp;gt; )]] -- Returns a double representation of a hexadecimal string&lt;br /&gt;
* [[Core Function DecPad|DecPad( &amp;lt;expression&amp;gt;, &amp;lt;count&amp;gt; )]] -- Pads numeric string to a given number of chars (Filling in the gap with zeros)&lt;br /&gt;
* [[Core Function DecryptString|DecryptString( &amp;lt;expression&amp;gt;, &amp;lt;password&amp;gt; )]] -- Decrypt a string with a given password&lt;br /&gt;
* [[Core Function EncryptString|EncryptString( &amp;lt;expression&amp;gt;, &amp;lt;password&amp;gt; )]] -- Encrypt a string with a given password&lt;br /&gt;
* [[Core Function EndsWith|EndsWith( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Check if a string ends with a substring&lt;br /&gt;
* [[Core Function Hex|Hex( &amp;lt;expression&amp;gt;, &amp;lt;length&amp;gt; )]] -- Returns a string representation of an integer type converted to hexadecimal&lt;br /&gt;
* [[Core Function FHex|FHex( &amp;lt;expression&amp;gt; )]] -- Returns a string representation of an float type converted to hexadecimal&lt;br /&gt;
* [[Core Function DHex|DHex( &amp;lt;expression&amp;gt; )]] -- Returns a string representation of an double type converted to hexadecimal&lt;br /&gt;
* [[Core Function InStr|InStr( &amp;lt;string&amp;gt;, &amp;lt;substirng&amp;gt;, &amp;lt;casesense&amp;gt;, &amp;lt;occurrence&amp;gt;, &amp;lt;start&amp;gt;, &amp;lt;count&amp;gt; )]] -- Checks if a string contains a given substring.&lt;br /&gt;
* [[Core Function isAlpha|isAlpha( &amp;lt;expression&amp;gt; )]] -- Checks if string contains only Alphabetic characters&lt;br /&gt;
* [[Core Function isAlphaNumeric|isAlphaNumeric( &amp;lt;expression&amp;gt; )]] -- Checks if string contains only AlphaNumeric(A-Z, 0-9), Characters&lt;br /&gt;
* [[Core Function isASCII|isASCII( &amp;lt;expression&amp;gt; )]] -- Check if string contains only ASCII chars&lt;br /&gt;
* [[Core Function isEmpty|isEmpty( &amp;lt;expression&amp;gt; )]] -- Checks if a string is completely empty.&lt;br /&gt;
* [[Core Function isFloat|isFloat( &amp;lt;expression&amp;gt; )]] -- Check if string contains a floating point and could be converted&lt;br /&gt;
* [[Core Function isLower|isLower( &amp;lt;expression&amp;gt; )]] -- Checks if string contains only lowercase letters&lt;br /&gt;
* [[Core Function isNumeric|isNumeric( &amp;lt;expression&amp;gt; )]] -- Checks if string only contains numbers&lt;br /&gt;
* [[Core Function isSpace|isSpace( &amp;lt;expression&amp;gt; )]] -- Check if string contains only whitespace&lt;br /&gt;
* [[Core Function isSymbol|isSymbol( &amp;lt;expression&amp;gt; )]] -- Check if string contains only symbol chars&lt;br /&gt;
* [[Core Function isUpper|isUpper( &amp;lt;expression&amp;gt; )]] -- Check if string contains only uppercase chars&lt;br /&gt;
* [[Core Function isXDigit|isXDigit( &amp;lt;expression&amp;gt; )]] -- Check if string contains only hex chars&lt;br /&gt;
* [[Core Function LC|LC( &amp;lt;expression&amp;gt; )]] -- Returns string in all lower case&lt;br /&gt;
* [[Core Function LCFirst|LCFirst( &amp;lt;expression&amp;gt; )]] -- Lower Cases first letter of string&lt;br /&gt;
* [[Core Function LCLast|LCLast( &amp;lt;expression&amp;gt; )]] -- Lower Cases last letter of string&lt;br /&gt;
* [[Core Function LCWords|LCWords( &amp;lt;expression&amp;gt; )]] -- Lower Cases first letter of each word in string&lt;br /&gt;
* [[Core Function Left|Left( &amp;lt;expression&amp;gt;, &amp;lt;count&amp;gt; )]] -- Returns a number of characters from the left-hand side of a string&lt;br /&gt;
* [[Core Function Match|Match( &amp;lt;expression&amp;gt;, &amp;lt;charset&amp;gt; )]] -- Check if a string contains only characters from a substring&lt;br /&gt;
* [[Core Function MD5|MD5( &amp;lt;expression&amp;gt; )]] -- Creates MD5 Hash of specified string&lt;br /&gt;
* [[Core Function PadLeft|PadLeft( &amp;lt;expression&amp;gt;, &amp;lt;pad&amp;gt;, &amp;lt;count&amp;gt; )]] -- Pad the left of a string a given number of times with another string&lt;br /&gt;
* [[Core Function PadRight|PadRight( &amp;lt;expression&amp;gt;, &amp;lt;pad&amp;gt;, &amp;lt;count&amp;gt; )]] -- Pad the right of a string a given number of times with another string&lt;br /&gt;
* [[Core Function RandStr|RandStr( &amp;lt;count&amp;gt; )]] -- Generate a random sequence of characters at a given length&lt;br /&gt;
* [[Core Function Repeat|Repeat( &amp;lt;expression&amp;gt;, &amp;lt;count&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Create a new string or new array containing repeats of a string provided&lt;br /&gt;
* [[Core Function Replace|Replace( &amp;lt;expression&amp;gt;, &amp;lt;find&amp;gt;, &amp;lt;replace&amp;gt;, &amp;lt;case-sensitive-flag&amp;gt; )]] -- Replace substrings within a string with other strings&lt;br /&gt;
* [[Core Function Reverse|Reverse( &amp;lt;expression&amp;gt; )]] -- Reverse all characters in a string&lt;br /&gt;
* [[Core Function Right|Right( &amp;lt;expression&amp;gt;, &amp;lt;count&amp;gt; )]] -- Returns a number of characters from the right-hand side of a string&lt;br /&gt;
* [[Core Function SHA1|SHA1( &amp;lt;expression&amp;gt; )]] -- Returns SHA1 hash of string&lt;br /&gt;
* [[Core Function Split|Split( &amp;lt;expression&amp;gt;, &amp;lt;delim/pattern&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Splits up a string into substrings depending on the given delimiters.&lt;br /&gt;
* [[Core Function SPrintf|SPrintf( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt;... )]] -- Create a formatted string&lt;br /&gt;
* [[Core Function StartsWith|StartsWith( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Check if a string starts with a substring&lt;br /&gt;
* [[Core Function StrInsert|StrInsert( &amp;lt;expression&amp;gt;, &amp;lt;index&amp;gt;, &amp;lt;expression2&amp;gt; )]] -- Insert a string at a given index of another string and return the new string&lt;br /&gt;
* [[Core Function StrIndex|StrIndex( &amp;lt;expression&amp;gt;, &amp;lt;index&amp;gt; )]] -- Get or set a char from/to a string at a specific index&lt;br /&gt;
* [[Core Function StrLen|StrLen( &amp;lt;expression&amp;gt; )]] -- Returns length of specified string&lt;br /&gt;
* [[Core Function SubStr|SubStr( &amp;lt;expression&amp;gt;, &amp;lt;start&amp;gt;, &amp;lt;end&amp;gt; )]] -- Return part of a string&lt;br /&gt;
* [[Core Function Trim|Trim( &amp;lt;expression&amp;gt;, &amp;lt;chars&amp;gt; )]] -- Removes whitespace from the beginning and end of a string&lt;br /&gt;
* [[Core Function TrimLeft|TrimLeft( &amp;lt;expression&amp;gt;, &amp;lt;chars&amp;gt; )]] -- Strip whitespace from the start of a string&lt;br /&gt;
* [[Core Function TrimRight|TrimRight( &amp;lt;expression&amp;gt;, &amp;lt;chars&amp;gt; )]] -- Strip whitespace from the end of a string&lt;br /&gt;
* [[Core Function UC|UC( &amp;lt;expression&amp;gt; )]] -- Returns string in all Upper Case&lt;br /&gt;
* [[Core Function UCFirst|UCFirst( &amp;lt;expression&amp;gt; )]] -- Upper Cases first letter of string&lt;br /&gt;
* [[Core Function UCLast|UCLast( &amp;lt;expression&amp;gt; )]] -- Upper Cases last letter of string&lt;br /&gt;
* [[Core Function UCWords|UCWords( &amp;lt;expression&amp;gt; )]] -- Upper Cases first letter of each word in string&lt;br /&gt;
&lt;br /&gt;
==== Array Functions ====&lt;br /&gt;
* [[Core Function Join|Join( &amp;lt;array&amp;gt;, &amp;lt;separator&amp;gt; )]] -- Join an array into a string with an optional separator&lt;br /&gt;
* [[Core Function UBound|UBound( &amp;lt;array/binary-array&amp;gt; )]] -- Returns the size of array (How many elements it currently has stored)&lt;br /&gt;
* [[Core Function Push|Push( &amp;lt;array&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Add items to the end of an array&lt;br /&gt;
* [[Core Function Insert|Insert( &amp;lt;array&amp;gt;, &amp;lt;id&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Add items to an array at a given location&lt;br /&gt;
* [[Core Function Unshift|Unshift( &amp;lt;array&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Add items to the beginning of an array&lt;br /&gt;
* [[Core Function Pop|Pop( &amp;lt;array&amp;gt; )]] -- Delete the first item in an array&lt;br /&gt;
* [[Core Function Shift|Shift( &amp;lt;array&amp;gt; )]] -- Delete the last item in an array&lt;br /&gt;
* [[Core Function Remove|Remove( &amp;lt;array&amp;gt;, &amp;lt;start-id&amp;gt;, &amp;lt;end-id&amp;gt; )]] -- Delete items from an array starting at a given location and stopping at a given location&lt;br /&gt;
* [[Core Function IsIndexSet|IsIndexSet( &amp;lt;array&amp;gt;, &amp;lt;index&amp;gt; )]] -- Check if an element exist at a given index ID within an array&lt;br /&gt;
&lt;br /&gt;
==== Hash (Dictionary) Functions ====&lt;br /&gt;
* [[Core Function Each|Each( &amp;lt;array&amp;gt; )]] -- Get hash key/value pair and return them as a 2 element array and each time the function is called get the next key/value pair&lt;br /&gt;
* [[Core Function IsKeySet|IsKeySet( &amp;lt;array&amp;gt;, &amp;lt;key&amp;gt; )]] -- Check if given key exists within an array (hash/dictionary)&lt;br /&gt;
&lt;br /&gt;
==== Process Functions ====&lt;br /&gt;
* [[Core Function DLLCall|DLLCall( &amp;lt;dll&amp;gt;, &amp;lt;function&amp;gt;, &amp;lt;returntype&amp;gt;, &amp;lt;paramtypes&amp;gt;, &amp;lt;params&amp;gt; )]] -- Dynamically call a function in a DLL&lt;br /&gt;
* [[Core Function DLLStructCreateDef|DLLStructCreateDef( &amp;lt;name&amp;gt;, &amp;lt;def string&amp;gt; )]] -- Creates a named C/C++ style structure definition that can be used with DLLStructCreate and can also be placed inside other DLLStructs&lt;br /&gt;
* [[Core Function DLLStructCreate|DLLStructCreate( &amp;lt;def string&amp;gt; )]] -- Creates a C/C++ style structure to be used with DLLCall&lt;br /&gt;
* [[Core Function DLLStructGetData|DLLStructGetData( &amp;lt;dllstruct&amp;gt;, &amp;lt;element&amp;gt;, &amp;lt;index&amp;gt; )]] -- Returns the data of an element of the struct&lt;br /&gt;
* [[Core Function DLLStructSetData|DLLStructSetData( &amp;lt;dllstruct&amp;gt;, &amp;lt;element&amp;gt;, &amp;lt;index&amp;gt; )]] -- Set the data of an element of the struct&lt;br /&gt;
* [[Core Function DllStructGetSize|DLLStructGetSize( &amp;lt;dllstruct&amp;gt; )]] -- Returns the size of the struct in bytes&lt;br /&gt;
* [[Core Function DllStructGetPtr|DLLStructGetPtr( &amp;lt;dllstruct&amp;gt;, &amp;lt;element&amp;gt;, &amp;lt;index&amp;gt; )]] -- Returns the pointer to the struct or an element in the struct or even a specific index of an array object within an elment&lt;br /&gt;
* [[Core Function DllStructGetVars|DLLStructGetVars( &amp;lt;dllstruct&amp;gt; )]] -- Create an array of all items and their array size with total byte size&lt;br /&gt;
* [[Core Function LoadAssembly|LoadAssembly( &amp;lt;file&amp;gt; )]] -- Load a .NET DLL into a variable&lt;br /&gt;
* [[Core Function UnloadAssembly|UnloadAssembly( &amp;lt;assembly&amp;gt; )]] -- Unload a .NET DLL from a variable&lt;br /&gt;
* [[Core Function GetMethod|GetMethod( &amp;lt;assembly&amp;gt;, &amp;lt;namespace&amp;gt;, &amp;lt;class&amp;gt;, &amp;lt;method&amp;gt;, &amp;lt;paramdefs&amp;gt;, &amp;lt;params&amp;gt; )]] -- Load an instance of a method and its container class into a variable to be able to call it&lt;br /&gt;
* [[Core Function Invoke|Invoke( &amp;lt;method&amp;gt;, &amp;lt;params&amp;gt; )]] -- Call the function obtained from GetMethod()&lt;br /&gt;
* [[Core Function Run|Run( &amp;lt;file&amp;gt;, &amp;lt;arguments&amp;gt;, &amp;lt;workdir&amp;gt;, &amp;lt;flag&amp;gt;, &amp;lt;show options&amp;gt; )]] -- Runs an external program&lt;br /&gt;
* [[Core Function RunWait|RunWait( &amp;lt;file&amp;gt;, &amp;lt;timeout&amp;gt;, &amp;lt;arguments&amp;gt;, &amp;lt;workdir&amp;gt;, &amp;lt;flag&amp;gt;, &amp;lt;show options&amp;gt; )]] -- Runs an external program and waits until the program finishes&lt;br /&gt;
* [[Core Function RunAsSet|RunAsSet( &amp;lt;user&amp;gt;, &amp;lt;domain&amp;gt;, &amp;lt;password&amp;gt;, &amp;lt;options&amp;gt; )]] -- Initialise a set of user credentials to use during Run and RunWait operations.&lt;br /&gt;
* [[Core Function ProcessClose|ProcessClose( &amp;lt;pid/name&amp;gt; )]] -- Terminates a named process&lt;br /&gt;
* [[Core Function ProcessExists|ProcessExists( &amp;lt;pid/name&amp;gt; )]] -- Checks to see if a specified process exists&lt;br /&gt;
* [[Core Function ProcessList|ProcessList( &amp;lt;name&amp;gt; )]] -- Returns an array listing the currently running processes (names and PIDs)&lt;br /&gt;
* [[Core Function ProcessSetPriority|ProcessSetPriority( &amp;lt;pid/name&amp;gt;, &amp;lt;priority&amp;gt; )]] -- Changes the priority of a process&lt;br /&gt;
* [[Core Function ProcessWait|ProcessWait( &amp;lt;pid/name&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Pauses the current thread until a given process exists or optional the timeout expires&lt;br /&gt;
* [[Core Function ProcessWaitClose|ProcessWaitClose( &amp;lt;pid/name&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Pauses the current thread until a given process no longer exists or optional the timeout expires&lt;br /&gt;
* [[Core Function Shutdown|Shutdown( &amp;lt;shutdown code&amp;gt; )]] -- Shuts down the system&lt;br /&gt;
* [[Core Function Debug|Debug( &amp;lt;flag&amp;gt; )]] -- Enter or leave debug mode in debug state the program can interact with operating system processes that run in a special mode by enabling the native property SeDebugPrivilege on the current thread&lt;br /&gt;
&lt;br /&gt;
==== Environment Management ====&lt;br /&gt;
* [[Core Function EnvExpand|EnvExpand( &amp;lt;expression&amp;gt; )]] -- Convert a string containing %name% env tags and return complete string with names resolved&lt;br /&gt;
* [[Core Function EnvGet|EnvGet( &amp;lt;tag&amp;gt; )]] -- Get the value of an environment variable&lt;br /&gt;
* [[Core Function EnvSet|EnvSet( &amp;lt;tag&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Set the value of an environment variable&lt;br /&gt;
* [[Core Function EnvUpdate|EnvUpdate( )]] -- Refreshes the OS environment&lt;br /&gt;
&lt;br /&gt;
==== File Functions ====&lt;br /&gt;
&lt;br /&gt;
===== File Create/Read/Write Functions =====&lt;br /&gt;
* [[Core Function FileOpen|FileOpen( &amp;lt;FileName&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Opens a file for reading or writing&lt;br /&gt;
* [[Core Function FileClose|FileClose( &amp;lt;file&amp;gt; )]] -- Closes a previously opened file&lt;br /&gt;
* [[Core Function FileWrite|FileWrite( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Write text to previously opened file at the current File Steam pointer location&lt;br /&gt;
* [[Core Function FileWriteBinary|FileWriteBinary( &amp;lt;file&amp;gt;, &amp;lt;binary-array&amp;gt; )]] -- Write the data from a binary variable to previously opened file at the current File Steam pointer location&lt;br /&gt;
* [[Core Function FileAppend|FileAppend( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Append a line of text to the end of a previously opened text file&lt;br /&gt;
* [[Core Function FileAppendBinary|FileAppendBinary( &amp;lt;file&amp;gt;, &amp;lt;binary-array&amp;gt; )]] -- Append the data from a binary variable to the end of a previously opened file&lt;br /&gt;
* [[Core Function FileSeek|FileSeek( &amp;lt;file&amp;gt;, &amp;lt;offset&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Change the POSITION of the File Stream pointer&lt;br /&gt;
* [[Core Function FilePos|FilePos( &amp;lt;file&amp;gt; )]] -- Get the current POSITION of the File Stream pointer&lt;br /&gt;
* [[Core Function FileRead|FileRead( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Read a number of characters from a previously opened text file starting from current File Steam pointer location&lt;br /&gt;
* [[Core Function FileReadBinary|FileReadBinary( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Read a number of bytes from a previously opened file starting from current File Steam pointer location&lt;br /&gt;
* [[Core Function FileReadLine|FileReadLine( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Read a line of text from a previously opened text file (Or specify a name of a file)&lt;br /&gt;
* [[Core Function FileReadLines|FileReadLines( &amp;lt;file&amp;gt; )]] -- Read all lines of text from a previously opened text file (Or specify a name of a file)&lt;br /&gt;
* [[Core Function FileSave|FileSave( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Save all text to a file&lt;br /&gt;
* [[Core Function FileLoad|FileLoad( &amp;lt;file&amp;gt; )]] -- Load all text from a file&lt;br /&gt;
&lt;br /&gt;
===== Misc =====&lt;br /&gt;
* [[Core Function FileCopy|FileCopy( &amp;lt;file1&amp;gt;, &amp;lt;file2&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Copy a file&lt;br /&gt;
* [[Core Function FileDelete|FileDelete( &amp;lt;file&amp;gt; )]] -- Delete a file&lt;br /&gt;
* [[Core Function FileExists|FileExists( &amp;lt;file&amp;gt; )]] -- Check if a given file exists&lt;br /&gt;
* [[Core Function FileCreationTime|FileCreationTime( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Get the creation time of a file&lt;br /&gt;
* [[Core Function FileWriteTime|FileWriteTime( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Get the last write time of a file&lt;br /&gt;
* [[Core Function FileAccessTime|FileAccessTime( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Get the last access time of a file&lt;br /&gt;
* [[Core Function FileEncrypt|FileEncrypt( &amp;lt;file&amp;gt; )]] -- Encrypt a file so only the windows account used to encrypt it can decrypt it&lt;br /&gt;
* [[Core Function FileDecrypt|FileDecrypt( &amp;lt;file&amp;gt; )]] -- Decrypt a file previously encrypted by this windows user account&lt;br /&gt;
* [[Core Function FileMD5|FileMD5( &amp;lt;file&amp;gt; )]] -- Calculate the MD5 checksum of a file&lt;br /&gt;
* [[Core Function FileSHA1|FileSHA1( &amp;lt;file&amp;gt; )]] -- Calculate the SHA1 checksum of a file&lt;br /&gt;
&lt;br /&gt;
===== Dialogs =====&lt;br /&gt;
* [[Core Function FileSaveDialog|FileSaveDialog ( &amp;lt;title&amp;gt;, &amp;lt;dir&amp;gt;, &amp;lt;filter&amp;gt;, &amp;lt;options&amp;gt;, &amp;lt;default name&amp;gt; )]] -- Initiates a Save File Dialog&lt;br /&gt;
* [[Core Function FileOpenDialog|FileOpenDialog ( &amp;lt;title&amp;gt;, &amp;lt;dir&amp;gt;, &amp;lt;filter&amp;gt;, &amp;lt;options&amp;gt;, &amp;lt;default name&amp;gt; )]] -- Initiates a Load File Dialog&lt;br /&gt;
&lt;br /&gt;
==== Directory Functions ====&lt;br /&gt;
* [[Core Function GetFiles|GetFiles ( &amp;lt;path&amp;gt;, &amp;lt;pattern&amp;gt; )]] -- Get an array of all files in a directory&lt;br /&gt;
* [[Core Function GetFolders|GetFolders ( &amp;lt;path&amp;gt;, &amp;lt;pattern&amp;gt; )]] -- Get an array of all folders in a directory&lt;br /&gt;
* [[Core Function MKDir|MKDir ( &amp;lt;path&amp;gt; )]] -- Creates all directories and subdirectories as specified by path&lt;br /&gt;
* [[Core Function RMDir|RMDir ( &amp;lt;path&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Deletes the specified directory and, if indicated, any subdirectories in the directory&lt;br /&gt;
* [[Core Function DirExists|DirExists ( &amp;lt;path&amp;gt; )]] -- Determines whether the given path refers to an existing directory on disk&lt;br /&gt;
* [[Core Function DirCopy|DirCopy ( &amp;lt;sourcepath&amp;gt;, &amp;lt;destpath&amp;gt; )]] -- Copies a directory and all sub-directories and files (Similar to xcopy)&lt;br /&gt;
&lt;br /&gt;
===== Dialogs =====&lt;br /&gt;
* [[Core Function FolderSelectDialog|FolderSelectDialog ( &amp;lt;text&amp;gt;, &amp;lt;dir&amp;gt;, &amp;lt;flag&amp;gt;, &amp;lt;init dir&amp;gt; )]] -- Initiates a Browse For Folder Dialog&lt;br /&gt;
&lt;br /&gt;
==== Path Functions ====&lt;br /&gt;
* [[Core Function HasExtension|HasExtension ( &amp;lt;path&amp;gt; )]] -- Determines whether a path includes a file name extension&lt;br /&gt;
* [[Core Function GetFullPath|GetFullPath ( &amp;lt;path&amp;gt; )]] -- Returns the absolute path for the specified path string&lt;br /&gt;
* [[Core Function GetDirectoryName|GetDirectoryName ( &amp;lt;path&amp;gt; )]] -- Returns the directory information for the specified path string&lt;br /&gt;
* [[Core Function GetExtension|GetExtension ( &amp;lt;path&amp;gt; )]] -- Returns the extension of the specified path string&lt;br /&gt;
* [[Core Function GetFileName|GetFileName ( &amp;lt;path&amp;gt; )]] -- Returns the file name and extension of the specified path string&lt;br /&gt;
* [[Core Function GetFileNameWithoutExtension|GetFileNameWithoutExtension ( &amp;lt;path&amp;gt; )]] -- Returns the file name of the specified path string without the extension&lt;br /&gt;
* [[Core Function GetPathRoot|GetPathRoot ( &amp;lt;path&amp;gt; )]] -- Gets the root directory information of the specified path&lt;br /&gt;
* [[Core Function IsPathRooted|IsPathRooted ( &amp;lt;path&amp;gt; )]] -- Gets a value indicating whether the specified path string contains absolute or relative path information&lt;br /&gt;
&lt;br /&gt;
==== Network Functions ====&lt;br /&gt;
&lt;br /&gt;
===== HTTP Functions =====&lt;br /&gt;
* [[Core Function HTTPFileExists|HTTPFileExists( &amp;lt;not available&amp;gt; )]] -- Check if a file exists at a given URL&lt;br /&gt;
* [[Core Function HTTPGetString|HTTPGetString( &amp;lt;not available&amp;gt; )]] -- Copy all text from a URL and return it as a string&lt;br /&gt;
&lt;br /&gt;
===== MySQL Functions =====&lt;br /&gt;
* [[Core Function MySQLConnect|MySQLConnect( &amp;lt;ip/ip:port&amp;gt;, &amp;lt;login&amp;gt;, &amp;lt;password&amp;gt; )]] -- Connect to a MySQL database&lt;br /&gt;
* [[Core Function MySQLSelectDB|MySQLSelectDB( &amp;lt;mysql&amp;gt;, &amp;lt;db name&amp;gt; )]] -- Select a database&lt;br /&gt;
* [[Core Function MySQLQuery|MySQLQuery( &amp;lt;mysql&amp;gt;, &amp;lt;query&amp;gt; )]] -- Execute a query&lt;br /&gt;
* [[Core Function MySQLFill|MySQLFill( &amp;lt;mysql&amp;gt;, &amp;lt;query&amp;gt; )]] -- Grab a table or parts of it from the Database&lt;br /&gt;
* [[Core Function MySQLFetch|MySQLFetch( &amp;lt;mysql data&amp;gt; )]] -- Fetch the next row from a table&lt;br /&gt;
* [[Core Function MySQLFetchReset|MySQLFetchReset( &amp;lt;mysql data&amp;gt; )]] -- Reset the current position in the table rows to 0&lt;br /&gt;
* [[Core Function MySQLFields|MySQLFields( &amp;lt;mysql data&amp;gt; )]] -- Return how many Fields are in the table&lt;br /&gt;
* [[Core Function MySQLRows|MySQLRows( &amp;lt;mysql data&amp;gt; )]] -- Return how many Rows are in the table&lt;br /&gt;
* [[Core Function MySQLClose|MySQLClose( &amp;lt;mysql&amp;gt; )]] -- Close a MySQL connection&lt;br /&gt;
&lt;br /&gt;
===== Sputnik Client/Server Functions (This is just for connecting Sputnik Clients to Sputnik Servers nothing else) =====&lt;br /&gt;
* [[Core Function SSListen|SSListen( &amp;lt;port&amp;gt;, &amp;lt;max connections&amp;gt;, &amp;lt;name&amp;gt;  )]] -- Create a server and begin listening for clients to connect&lt;br /&gt;
* [[Core Function SSConnect|SSConnect( &amp;lt;ip&amp;gt;, &amp;lt;port&amp;gt;, &amp;lt;connection string&amp;gt;, &amp;lt;name&amp;gt;  )]] -- Connect to a server&lt;br /&gt;
* [[Core Function SSApprove|SSApprove( &amp;lt;server&amp;gt;, &amp;lt;client socket&amp;gt; )]] -- Approve a client to connect to the server&lt;br /&gt;
* [[Core Function SSDisapprove|SSDisapprove( &amp;lt;server&amp;gt;, &amp;lt;client socket&amp;gt; )]] -- Disapprove a client to connect to the server&lt;br /&gt;
* [[Core Function SSClientStatus|SSClientStatus( /* depends... /* )]] -- Get the status of a client or of our client&lt;br /&gt;
* [[Core Function SSClientIP|SSClientIP( &amp;lt;server&amp;gt;, &amp;lt;client socket&amp;gt; )]] -- Get the IP of a client socket&lt;br /&gt;
* [[Core Function SSRecv|SSRecv( &amp;lt;server/client&amp;gt; )]] -- Check for a message recieved from client/server&lt;br /&gt;
* [[Core Function SSRead|SSRead( &amp;lt;message buffer&amp;gt;, &amp;lt;data type&amp;gt; )]] -- Read data from a message&lt;br /&gt;
* [[Core Function SSDrop|SSDrop( &amp;lt;server&amp;gt;, &amp;lt;client socket&amp;gt; )]] -- Kick a client off the server&lt;br /&gt;
* [[Core Function SSSendBufferCreate|SSSendBufferCreate( &amp;lt;server/client&amp;gt; )]] -- Create a new buffer to store data to send to the client/server&lt;br /&gt;
* [[Core Function SSSendBufferAppend|SSSendBufferAppend( &amp;lt;message buffer&amp;gt;, &amp;lt;type&amp;gt;, &amp;lt;data&amp;gt; )]] -- Add data to the buffer to send such as Strings etc&lt;br /&gt;
* [[Core Function SSSend|SSSend( /* depends... /* )]] -- Send data to client or server&lt;br /&gt;
&lt;br /&gt;
===== Misc Network Functions =====&lt;br /&gt;
* [[Core Function HostResolve|HostResolve( &amp;lt;host name&amp;gt; )]] -- Resolves a host name such as google.com into an IP address&lt;br /&gt;
* [[Core Function Ping|Ping( &amp;lt;ip address/host name&amp;gt; )]] -- Pings a host and returns the roundtrip-time&lt;br /&gt;
&lt;br /&gt;
==== Memory Functions ====&lt;br /&gt;
* [[Core Function WriteMem|WriteMem( &amp;lt; Caption / PID &amp;gt;, &amp;lt;Class&amp;gt;, &amp;lt;Address&amp;gt;, &amp;lt;value&amp;gt; )]] -- Write a value to an address in an application's memory (Supports multiple values and even binary variables for writing multiple bytes)&lt;br /&gt;
* [[Core Function ReadMem|ReadMem( &amp;lt; Caption / PID &amp;gt;, &amp;lt;Class&amp;gt;, &amp;lt;Address&amp;gt;, &amp;lt;defs&amp;gt;, &amp;lt;size&amp;gt; )]] -- Read bytes from an application's memory at an address and create variables using same defs and return values as Unpack()&lt;br /&gt;
* [[Core Function Alloc|Alloc( &amp;lt;size&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Allocate memory and return the pointer to it&lt;br /&gt;
* [[Core Function Free|Free( &amp;lt;ptr&amp;gt; )]] -- Deallocate memory from a pointer&lt;br /&gt;
* [[Core Function StringToPTR|StringToPTR( &amp;lt;type&amp;gt;, &amp;lt;string&amp;gt; )]] -- Allocates memory for the string and writes the string to that memory and returns the pointer for that memory&lt;br /&gt;
* [[Core Function PTRToString|PTRToString( &amp;lt;type&amp;gt;, &amp;lt;ptr&amp;gt; )]] -- Reads a string from a memory pointer&lt;br /&gt;
* [[Core Function PTRRead|PTRRead( &amp;lt;ptr&amp;gt;, &amp;lt;type&amp;gt;, &amp;lt;offset&amp;gt; )]] -- Read data from a memory pointer optionally starting from a given index&lt;br /&gt;
* [[Core Function PTRWrite|PTRWrite( &amp;lt;ptr&amp;gt;, &amp;lt;type&amp;gt;, &amp;lt;offset&amp;gt;, &amp;lt;value&amp;gt; )]] -- Write data to a memory pointer optionally starting from a given index&lt;br /&gt;
&lt;br /&gt;
==== GUI Functions ====&lt;br /&gt;
&lt;br /&gt;
===== Dialog Creation Functions =====&lt;br /&gt;
* [[Core Function GUICreate|GUICreate( &amp;lt;Title&amp;gt;, &amp;lt;Width&amp;gt;, &amp;lt;Height&amp;gt;, &amp;lt;Left&amp;gt;, &amp;lt;Top&amp;gt; )]] -- Create new GUI window&lt;br /&gt;
* [[Core Function DoEvents|DoEvents( )]] -- Keep GUI window active by dispatching all messages in the queue&lt;br /&gt;
&lt;br /&gt;
===== Dialog Properties Get/Set Functions =====&lt;br /&gt;
* [[Core Function GUIState|GUIState( &amp;lt;expression&amp;gt; )]] -- Gets current GUI state&lt;br /&gt;
* [[Core Function GUISetState|GUISetState( &amp;lt;expression&amp;gt; )]] -- Sets GUI state&lt;br /&gt;
&lt;br /&gt;
===== Control Creation Functions =====&lt;br /&gt;
* [[Core Function GUICreateButton|GUICreateButton( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a button&lt;br /&gt;
* [[Core Function GUICreateTextBox|GUICreateTextBox( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a Textbox&lt;br /&gt;
* [[Core Function GUICreateTextBoxEx|GUICreateTextBoxEx( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a multiline Textbox&lt;br /&gt;
* [[Core Function GUICreatePassword|GUICreatePassword( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a Passweord Box&lt;br /&gt;
* [[Core Function GUICreateLabel|GUICreateLabel( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a Label&lt;br /&gt;
* [[Core Function GUICreateCheckBox|GUICreateCheckBox( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a CheckBox&lt;br /&gt;
* [[Core Function GUICreateTimer|GUICreateTimer( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;interval&amp;gt; )]] -- Create a timer&lt;br /&gt;
* [[Core Function GUICreateDataGrid|GUICreateDataGrid( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a Data Grid&lt;br /&gt;
* [[Core Function GUICreateGroupBox|GUICreateGroupBox( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a GroupBox&lt;br /&gt;
* [[Core Function GUICreateTabSheet|GUICreateTabSheet( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a TabSheet&lt;br /&gt;
&lt;br /&gt;
===== Event Linking Functions =====&lt;br /&gt;
* [[Core Function GUILink|GUILink( &amp;lt;gui/guiobject&amp;gt;, &amp;lt;linktype&amp;gt; )]] -- Links an event to a GUI or GUI Object&lt;br /&gt;
&lt;br /&gt;
===== Common Dialog/Control Properties Get/Set Functions =====&lt;br /&gt;
* [[Core Function GUIGetProp|GUIGetProp( &amp;lt;gui object&amp;gt;, &amp;lt;prop&amp;gt; )]] -- Get the value of a GUI objects property&lt;br /&gt;
* [[Core Function GUISetProp|GUISetProp( &amp;lt;gui object&amp;gt;, &amp;lt;prop&amp;gt;, &amp;lt;value&amp;gt; )]] -- Set the value of a GUI objects property&lt;br /&gt;
===== Common Dialog/Control Method Functions =====&lt;br /&gt;
* [[Core Function GUIPropInvoke|GUIPropInvoke( &amp;lt;gui/gui object&amp;gt;, &amp;lt;method&amp;gt; )]] -- Invoke a method of the GUI/GUIObject such as Focus()&lt;br /&gt;
&lt;br /&gt;
===== GUIGetProp &amp;amp; GUISetProp Examples  =====&lt;br /&gt;
Here are some GUIGetProp &amp;amp; GUISetProp Examples that you might not figure out by yourself.&lt;br /&gt;
* [[GUI GetSet Prop Example Colour|Change colour of controls]] -- Shows how to change the background and foreground colour on Buttons, Windows etc.&lt;br /&gt;
&lt;br /&gt;
===== Control Properties Get/Set Functions =====&lt;br /&gt;
* [[Core Function GUITimerStart|GUITimerStart( &amp;lt;timer&amp;gt; )]] -- Starts specified timer&lt;br /&gt;
* [[Core Function GUITimerStop|GUITimerStop( &amp;lt;timer&amp;gt; )]] -- Stops specified timer&lt;br /&gt;
* [[Core Function GUIDataGrid|GUIDataGrid( &amp;lt;datagrid&amp;gt; )]] -- Properties &amp;amp; Functions specifically for Data Grid&lt;br /&gt;
* [[Core Function GUITabSheet|GUITabSheet( &amp;lt;tabsheet&amp;gt; )]] -- Properties &amp;amp; Functions specifically for Tab Sheet&lt;br /&gt;
&lt;br /&gt;
===== Other GUI Functions =====&lt;br /&gt;
* [[Core Function GUIMsgFilter|GUIMsgFilter( &amp;lt;gui&amp;gt;, &amp;lt;command&amp;gt; )]] -- Use a function to recieve all messages windows sends to the GUI window (HWND, MSG, WPARAM, LPARAM)&lt;br /&gt;
* [[Core Function GUICreateFont|GUICreateFont( &amp;lt;name&amp;gt;, &amp;lt;size&amp;gt;, &amp;lt;style&amp;gt; )]] -- Create a new font for use on buttons etc&lt;br /&gt;
* [[Core Function GUIFont|GUIFont( &amp;lt; font &amp;gt;, &amp;lt;setting&amp;gt;, &amp;lt;value&amp;gt; )]] -- Change the style, size etc on a font object&lt;br /&gt;
* [[Core Function MsgBox|MsgBox( &amp;lt;message&amp;gt;, &amp;lt;title&amp;gt;, &amp;lt;flag&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Show a message dialog&lt;br /&gt;
* [[Core Function InputBox|InputBox( &amp;lt;title&amp;gt;, &amp;lt;message&amp;gt;, &amp;lt;default text&amp;gt; )]] -- Shows a box to input text.&lt;br /&gt;
* [[Core Function ToolTip|ToolTip( &amp;lt;text&amp;gt;, &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt; )]] -- Creates a tooltip anywhere on the screen.&lt;br /&gt;
* [[Core Function ToolTipKill|ToolTipKill( &amp;lt;ToolTip&amp;gt; )]] -- Delete a tooltip that was made using ToolTip().&lt;br /&gt;
&lt;br /&gt;
==== Keyboard Control Functions ====&lt;br /&gt;
* [[Core Function HotKeySet|HotKeySet( &amp;lt;keydef&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Create a custom hotkey to run custom code or execute a function.&lt;br /&gt;
* [[Core Function SendKeys|SendKeys( &amp;lt;keydef&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Sends simulated keystrokes to the active window&lt;br /&gt;
&lt;br /&gt;
==== Mouse Control Functions ====&lt;br /&gt;
* [[Core Function MouseClick|MouseClick ( &amp;lt;button&amp;gt;, &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt;, &amp;lt;clicks&amp;gt;, &amp;lt;speed&amp;gt; )]] -- Perform a mouse click operation&lt;br /&gt;
* [[Core Function MouseClickDrag|MouseClickDrag ( &amp;lt;button&amp;gt;, &amp;lt;x1&amp;gt;, &amp;lt;y1&amp;gt;, &amp;lt;x2&amp;gt;, &amp;lt;y2&amp;gt;, &amp;lt;speed&amp;gt; )]] -- Perform a mouse click and drag operation&lt;br /&gt;
* [[Core Function MouseDown|MouseDown ( &amp;lt;button&amp;gt; )]] -- Perform a mouse down event at the current mouse position&lt;br /&gt;
* [[Core Function MouseUp|MouseUp ( &amp;lt;button&amp;gt; )]] -- Perform a mouse up event at the current mouse position&lt;br /&gt;
* [[Core Function MouseMove|MouseMove ( &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt;, &amp;lt;speed&amp;gt; )]] -- Moves the mouse pointer&lt;br /&gt;
* [[Core Function MouseGetPos|MouseGetPos ( )]] -- Retrieves the current position of the mouse cursor&lt;br /&gt;
* [[Core Function MouseWheel|MouseWheel ( &amp;lt;direction&amp;gt;, &amp;lt;clicks&amp;gt; )]] -- Moves the mouse wheel up or down&lt;br /&gt;
&lt;br /&gt;
==== Window Management Functions ====&lt;br /&gt;
(For info on using &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; See [[Window Titles and Text Advanced|Window Titles and Text (Advanced)]] )&lt;br /&gt;
&lt;br /&gt;
* [[Core Function WinActivate|WinActivate ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Activates (gives focus to) a window&lt;br /&gt;
* [[Core Function WinActive|WinActive ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Checks to see if a specified window exists and is currently active&lt;br /&gt;
* [[Core Function WinExists|WinExists ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Checks to see if a specified window exists&lt;br /&gt;
* [[Core Function WinGetClassList|WinGetClassList ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Retrieves the classes from a window&lt;br /&gt;
* [[Core Function WinGetHandle|WinGetHandle ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Retrieves the internal handle of a window&lt;br /&gt;
* [[Core Function WinGetPos|WinGetPos ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Retrieves the position and size of a given window&lt;br /&gt;
* [[Core Function WinGetCaretPos|WinGetCaretPos ( )]] -- Returns the coordinates of the caret in the foreground window&lt;br /&gt;
* [[Core Function WinGetTitle|WinGetTitle ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Retrieves the full title from a window&lt;br /&gt;
* [[Core Function WinGetText|WinGetText ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Retrieves the text from a window&lt;br /&gt;
* [[Core Function WinGetState|WinGetState ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Retrieves the state of a given window&lt;br /&gt;
* [[Core Function WinGetProcess|WinGetProcess ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Retrieves the Process ID (PID) associated with a window&lt;br /&gt;
* [[Core Function WinGetClientSize|WinGetClientSize ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Retrieves the size of a given window's client area&lt;br /&gt;
* [[Core Function WinClose|WinClose ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Closes a window&lt;br /&gt;
* [[Core Function WinKill|WinKill ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Forces a window to close&lt;br /&gt;
* [[Core Function WinMove|WinMove ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Moves and/or resizes a window&lt;br /&gt;
* [[Core Function WinWait|WinWait ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Waits until the requested window exists&lt;br /&gt;
* [[Core Function WinWaitActive|WinWaitActive ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Waits  until the requested window is active&lt;br /&gt;
* [[Core Function WinWaitNotActive|WinWaitNotActive ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Waits  until the requested window is not active&lt;br /&gt;
* [[Core Function WinWaitClose|WinWaitClose ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Waits until the requested window does not exist&lt;br /&gt;
* [[Core Function WinSetTitle|WinSetTitle ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;newtitle&amp;gt; )]] -- Changes the title of a window&lt;br /&gt;
* [[Core Function WinSetState|WinSetState ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Shows, hides, minimizes, maximizes, or restores a window&lt;br /&gt;
* [[Core Function WinSetTrans|WinSetTrans ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;transparency&amp;gt; )]] -- Sets the transparency of a window&lt;br /&gt;
* [[Core Function WinMinimizeAll|WinMinimizeAll  ( )]] -- Minimizes all windows&lt;br /&gt;
* [[Core Function WinMinimizeAllUndo|WinMinimizeAllUndo ( )]] -- Undoes a previous WinMinimizeAll function&lt;br /&gt;
* [[Core Function WinFlash|WinFlash ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;flashes&amp;gt;, &amp;lt;delay&amp;gt; )]] -- Flashes a window in the taskbar&lt;br /&gt;
* [[Core Function WinList|WinList ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Retrieves a list of windows&lt;br /&gt;
&lt;br /&gt;
===== Controls =====&lt;br /&gt;
(For info on using &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; See [[Window Titles and Text Advanced|Window Titles and Text (Advanced)]] )&lt;br /&gt;
&lt;br /&gt;
* [[Core Function ControlClick|ControlClick ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;controlID&amp;gt; )]] -- Sends a mouse click command to a given control&lt;br /&gt;
* [[Core Function ControlSend|ControlSend ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;controlID&amp;gt;, &amp;lt;string&amp;gt; &amp;lt;flag&amp;gt; )]] -- Sends a string of characters to a control&lt;br /&gt;
* [[Core Function ControlGetFocus|ControlGetFocus ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Returns the ControlRef# of the control that has keyboard focus within a specified window&lt;br /&gt;
* [[Core Function ControlGetPos|ControlGetPos ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;controlID&amp;gt; )]] -- Retrieves the position and size of a control relative to it's window&lt;br /&gt;
* [[Core Function ControlDisable|ControlDisable ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;controlID&amp;gt; )]] -- Disables a control&lt;br /&gt;
* [[Core Function ControlEnable|ControlEnable ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;controlID&amp;gt; )]] -- Enables a control&lt;br /&gt;
* [[Core Function ControlShow|ControlShow ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;controlID&amp;gt; )]] -- Shows a control that was hidden&lt;br /&gt;
* [[Core Function ControlHide|ControlHide ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;controlID&amp;gt; )]] -- Hides a control&lt;br /&gt;
&lt;br /&gt;
==== Graphics/Pixel Functions ====&lt;br /&gt;
* [[Core Function PixelGetColour|PixelGetColour ( &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt; )]] -- Returns a pixel colour according to x, y pixel coordinates&lt;br /&gt;
* [[Core Function PixelGetMouse|PixelGetMouse ( )]] -- Returns a pixel colour according to x, y position of the mouse pointer&lt;br /&gt;
* [[Core Function PixelSearch|PixelSearch ( &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;right&amp;gt;, &amp;lt;bottom&amp;gt;, &amp;lt;colour&amp;gt;, &amp;lt;shade&amp;gt;, &amp;lt;step&amp;gt;  )]] -- Searches a rectangle of pixels for the pixel colour provided&lt;br /&gt;
* [[Core Function PixelChecksum|PixelChecksum ( &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;right&amp;gt;, &amp;lt;bottom&amp;gt;, &amp;lt;step&amp;gt;  )]] -- Generates a checksum for a region of pixels&lt;br /&gt;
* [[Core Function Colour|Colour( &amp;lt;name&amp;gt; )]] -- Get the colour INT value of a given colours name&lt;br /&gt;
* [[Core Function RGB|RGB( &amp;lt;red&amp;gt;, &amp;lt;green&amp;gt;, &amp;lt;blue&amp;gt; )]] -- Get the colour INT value of given red, green and blue bytes&lt;br /&gt;
* [[Core Function GetRValue|GetRValue( &amp;lt;colour&amp;gt; )]] -- Get the red byte from a colour INT value&lt;br /&gt;
* [[Core Function GetGValue|GetGValue( &amp;lt;colour&amp;gt; )]] -- Get the green byte from a colour INT value&lt;br /&gt;
* [[Core Function GetBValue|GetBValue( &amp;lt;colour&amp;gt; )]] -- Get the blue byte from a colour INT value&lt;br /&gt;
&lt;br /&gt;
==== Misc Functions ====&lt;br /&gt;
* [[Core Function Call|Call &amp;lt;function&amp;gt;, &amp;lt;expressions&amp;gt;]] -- Calls a function contained in a string parameter&lt;br /&gt;
* [[Core Function Return|Return &amp;lt;expressions&amp;gt;]] -- Returns a result from a Function&lt;br /&gt;
* [[Core Function Throw|Throw( &amp;lt;expression&amp;gt; )]] -- Throw an exception&lt;br /&gt;
* [[Core Function Die|Die( &amp;lt;expression&amp;gt; )]] -- Gives an error and terminates the program&lt;br /&gt;
* [[Core Function Eval|Eval( &amp;lt;expression&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Evaluate a string as Sputnik code&lt;br /&gt;
* [[Core Function GC|GC( &amp;lt;flag&amp;gt; )]] -- Use the garbage collector&lt;br /&gt;
* [[Core Function Require|Require( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Add all functions etc from a file for use&lt;br /&gt;
* [[Core Function Include|Include( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Add all functions etc from a file for use and execute all expressions&lt;br /&gt;
* [[Core Function Opt|Opt( &amp;lt;option&amp;gt;, &amp;lt;value&amp;gt; )]] -- Changes the operation of various Sputnik functions/parameters&lt;br /&gt;
&lt;br /&gt;
=== User Defined Functions ===&lt;br /&gt;
&lt;br /&gt;
These functions are created using Sputnik and are not part of the Sputnik core language.&lt;br /&gt;
&lt;br /&gt;
[[Category:Language Reference]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinarySave</id>
		<title>Core Function BinarySave</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinarySave"/>
				<updated>2011-12-04T20:48:09Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
BinarySave( &amp;lt;binary-array&amp;gt;, &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Save a binary variable data to file.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;binary-array&amp;gt; ====&lt;br /&gt;
&lt;br /&gt;
The binary variable you want saving to file.&lt;br /&gt;
&lt;br /&gt;
==== file ====&lt;br /&gt;
&lt;br /&gt;
Name of file to save (Will create if it doesn't exist).&lt;br /&gt;
&lt;br /&gt;
==== flag ====&lt;br /&gt;
&lt;br /&gt;
Optional; Compression flag.&lt;br /&gt;
&lt;br /&gt;
0 = Do not compress the file&lt;br /&gt;
&lt;br /&gt;
1 = Compress the file (This will create a gzip stream then use the first 4 bytes to write the size of the binary variable array then it will write all the bytes of the array; You can load the file back into a binary variable by using BinaryLoad command with compression switch on)&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
This will even accurately save exe files without damage so they can run.&lt;br /&gt;
&lt;br /&gt;
Warning - If you use compression on a loaded exe file the newly made exe will not run.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = BinaryLoad(&amp;quot;Sputnik.exe&amp;quot;);&lt;br /&gt;
println(&amp;quot;Size is : &amp;quot; . BinaryLen($binary) );&lt;br /&gt;
BinarySave($binary, &amp;quot;SputnikTest.exe&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Example with compression&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = Pack(&amp;quot;z0&amp;quot;, &amp;quot;Hello World!\n&amp;quot; x 1_000);&lt;br /&gt;
BinarySave($binary, &amp;quot;test.txt&amp;quot;, 1);&lt;br /&gt;
$binaryLoaded = BinaryLoad(&amp;quot;test.txt&amp;quot;, 1);&lt;br /&gt;
println( Unpack(&amp;quot;z0&amp;quot;, $binaryLoaded) ); // Prints &amp;quot;Hello World!&amp;quot; 1000 times&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryResize</id>
		<title>Core Function BinaryResize</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryResize"/>
				<updated>2011-12-04T20:46:55Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
BinaryResize( &amp;lt;binary-array&amp;gt;, &amp;lt;size&amp;gt;, &amp;lt;data&amp;gt; ) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Resize a binary variables data array.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== binary-array ====&lt;br /&gt;
&lt;br /&gt;
The binary variable to use. &lt;br /&gt;
&lt;br /&gt;
==== size ====&lt;br /&gt;
&lt;br /&gt;
The new size for the binary variables data array.&lt;br /&gt;
&lt;br /&gt;
==== data ====&lt;br /&gt;
&lt;br /&gt;
Optional; The byte to place into all new slots (Assuming the new array is larger than the old).&lt;br /&gt;
&lt;br /&gt;
Default is 0&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
This modifies the original binary variable and does not return a copy.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
Resize a binary to contain just 1 word:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = Pack(&amp;quot;z0&amp;quot;, &amp;quot;Hello World!&amp;quot;);&lt;br /&gt;
BinaryResize($binary, 5);&lt;br /&gt;
$k = 0;&lt;br /&gt;
Foreach ($binary as $i)&lt;br /&gt;
{&lt;br /&gt;
	println( &amp;quot;($k) Byte: &amp;quot; . $i . &amp;quot; | Hex: &amp;quot; . Hex($i) . &amp;quot; | Char: &amp;quot; . Chr($i) );&lt;br /&gt;
	$k++;&lt;br /&gt;
}&lt;br /&gt;
println( Unpack(&amp;quot;z0&amp;quot;, $binary) ); // Prints: Hello&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Resize a binary and fill in the gaps with ! symbols :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = Pack(&amp;quot;z0&amp;quot;, &amp;quot;Hello World!&amp;quot;);&lt;br /&gt;
BinaryResize($binary, 20, Asc(&amp;quot;!&amp;quot;));&lt;br /&gt;
$k = 0;&lt;br /&gt;
Foreach ($binary as $i)&lt;br /&gt;
{&lt;br /&gt;
	println( &amp;quot;($k) Byte: &amp;quot; . $i . &amp;quot; | Hex: &amp;quot; . Hex($i) . &amp;quot; | Char: &amp;quot; . Chr($i) );&lt;br /&gt;
	$k++;&lt;br /&gt;
}&lt;br /&gt;
println( Unpack(&amp;quot;z0&amp;quot;, $binary) ); // Prints: Hello World!!!!!!!!!&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryPop</id>
		<title>Core Function BinaryPop</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryPop"/>
				<updated>2011-12-04T20:45:02Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
BinaryPop( &amp;lt;binary-array&amp;gt; ) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Delete the last byte from a binary variable.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== binary-array ====&lt;br /&gt;
&lt;br /&gt;
The binary variable to use. &lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
Binary data is not really meant to be resized like crazy, so if you have a LOT of data, it is best to avoid using this too often.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = Pack(&amp;quot;z0&amp;quot;, &amp;quot;1234&amp;quot;);&lt;br /&gt;
println( &amp;quot;'&amp;quot; . Unpack(&amp;quot;z0&amp;quot;, $binary) . &amp;quot;'&amp;quot; ); // Prints: 1234&lt;br /&gt;
BinaryPop($binary);&lt;br /&gt;
println( &amp;quot;'&amp;quot; . Unpack(&amp;quot;z0&amp;quot;, $binary) . &amp;quot;'&amp;quot; ); // Prints: 123&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryShift</id>
		<title>Core Function BinaryShift</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryShift"/>
				<updated>2011-12-04T20:44:27Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
BinaryShift( &amp;lt;binary-array&amp;gt; ) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Delete the first byte from a binary variable.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== binary-array ====&lt;br /&gt;
&lt;br /&gt;
The binary variable to use. &lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
Binary data is not really meant to be resized like crazy, so if you have a LOT of data, it is best to avoid using this too often.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = Pack(&amp;quot;z0&amp;quot;, &amp;quot;1234&amp;quot;);&lt;br /&gt;
println( &amp;quot;'&amp;quot; . Unpack(&amp;quot;z0&amp;quot;, $binary) . &amp;quot;'&amp;quot; ); // Prints: 1234&lt;br /&gt;
BinaryShift($binary);&lt;br /&gt;
println( &amp;quot;'&amp;quot; . Unpack(&amp;quot;z0&amp;quot;, $binary) . &amp;quot;'&amp;quot; ); // Prints: 234&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryPush</id>
		<title>Core Function BinaryPush</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryPush"/>
				<updated>2011-12-04T20:43:44Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
BinaryPush( &amp;lt;binary-array&amp;gt;, &amp;lt;byte&amp;gt; ) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Add a byte to the end of a binary variable.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== binary-array ====&lt;br /&gt;
&lt;br /&gt;
The binary variable to use. &lt;br /&gt;
&lt;br /&gt;
==== byte ====&lt;br /&gt;
&lt;br /&gt;
The byte to add to the end of the binary data.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
Binary data is not really meant to be resized like crazy, so if you have a LOT of data, it is best to avoid using this too often.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = Pack(&amp;quot;z0&amp;quot;, &amp;quot;One&amp;quot;);&lt;br /&gt;
BinaryPush($binary, Asc(&amp;quot; &amp;quot;));&lt;br /&gt;
BinaryPush($binary, Asc(&amp;quot;T&amp;quot;));&lt;br /&gt;
BinaryPush($binary, Asc(&amp;quot;w&amp;quot;));&lt;br /&gt;
BinaryPush($binary, Asc(&amp;quot;o&amp;quot;));&lt;br /&gt;
println( &amp;quot;'&amp;quot; . Unpack(&amp;quot;z0&amp;quot;, $binary) . &amp;quot;'&amp;quot; ); // Prints: One Two&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryUnshift</id>
		<title>Core Function BinaryUnshift</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryUnshift"/>
				<updated>2011-12-04T20:42:50Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
BinaryUnshift( &amp;lt;binary-array&amp;gt;, &amp;lt;byte&amp;gt; ) &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Add a byte to the beginning of a binary variable.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== binary-array ====&lt;br /&gt;
&lt;br /&gt;
The binary variable to use. &lt;br /&gt;
&lt;br /&gt;
==== byte ====&lt;br /&gt;
&lt;br /&gt;
The byte to add to the beginning of the binary data.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
Binary data is not really meant to be resized like crazy, so if you have a LOT of data, it is best to avoid using this too often.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = Pack(&amp;quot;z0&amp;quot;, &amp;quot;One&amp;quot;);&lt;br /&gt;
BinaryUnshift($binary, Asc(&amp;quot; &amp;quot;));&lt;br /&gt;
BinaryUnshift($binary, Asc(&amp;quot;o&amp;quot;));&lt;br /&gt;
BinaryUnshift($binary, Asc(&amp;quot;w&amp;quot;));&lt;br /&gt;
BinaryUnshift($binary, Asc(&amp;quot;T&amp;quot;));&lt;br /&gt;
println( &amp;quot;'&amp;quot; . Unpack(&amp;quot;z0&amp;quot;, $binary) . &amp;quot;'&amp;quot; ); // Prints: Two One&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryAppend</id>
		<title>Core Function BinaryAppend</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryAppend"/>
				<updated>2011-12-04T20:41:55Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
BinaryAppend( &amp;lt;binary-array&amp;gt;, &amp;lt;binary-array2&amp;gt;, &amp;lt;flag&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Append a binary variables data onto the end or beginning of another binary variables data.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== binary-array ====&lt;br /&gt;
&lt;br /&gt;
The binary variable to append to. &lt;br /&gt;
&lt;br /&gt;
==== binary-array2 ====&lt;br /&gt;
&lt;br /&gt;
The binary variable to be appended. &lt;br /&gt;
&lt;br /&gt;
==== flag ====&lt;br /&gt;
&lt;br /&gt;
Optional; Flag to choose where to append to:&lt;br /&gt;
&lt;br /&gt;
0 = Append to end&lt;br /&gt;
&lt;br /&gt;
1 = Append to beginning&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
This modifies the original variable and does not return a copy of it.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
Append data to end:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = Pack(&amp;quot;z0&amp;quot;, &amp;quot;The quick brown FoX&amp;quot;);&lt;br /&gt;
$binary2 = Pack(&amp;quot;z0&amp;quot;, &amp;quot; jumps over the lazy dog&amp;quot;);&lt;br /&gt;
BinaryAppend($binary, $binary2);&lt;br /&gt;
println( Unpack(&amp;quot;z0&amp;quot;, $binary) ); // Prints: The quick brown FoX jumps over the lazy dog&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Append data to beginning:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = Pack(&amp;quot;z0&amp;quot;, &amp;quot;The quick brown FoX&amp;quot;);&lt;br /&gt;
$binary2 = Pack(&amp;quot;z0&amp;quot;, &amp;quot; jumps over the lazy dog&amp;quot;);&lt;br /&gt;
BinaryAppend($binary, $binary2, 1);&lt;br /&gt;
println( Unpack(&amp;quot;z0&amp;quot;, $binary) ); // Prints: jumps over the lazy do gThe quick brown FoX&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryAppend</id>
		<title>Core Function BinaryAppend</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryAppend"/>
				<updated>2011-12-04T20:41:47Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
BinaryAppend( &amp;lt;binary-array&amp;gt;, &amp;lt;binary-array2&amp;gt;, &amp;lt;flag&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Append a binary variables data onto the end or beginning of another binary variables data.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== binary-array ====&lt;br /&gt;
&lt;br /&gt;
The binary variable to append to. &lt;br /&gt;
&lt;br /&gt;
==== binary-array2 ====&lt;br /&gt;
&lt;br /&gt;
The binary variable to be appended. &lt;br /&gt;
&lt;br /&gt;
==== flag ====&lt;br /&gt;
&lt;br /&gt;
Optional; Flag to choose where to append to:&lt;br /&gt;
&lt;br /&gt;
0 = Append to end&lt;br /&gt;
&lt;br /&gt;
1 = Append to beginning&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
This modifies the original variable and does not return a copy of it.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
Append data to end:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = Pack(&amp;quot;z0&amp;quot;, &amp;quot;The quick brown FoX&amp;quot;);&lt;br /&gt;
$binary2 = Pack(&amp;quot;z0&amp;quot;, &amp;quot; jumps over the lazy dog&amp;quot;);&lt;br /&gt;
BinaryAppend($binary, $binary2);&lt;br /&gt;
println( Unpack(&amp;quot;z0&amp;quot;, $binary) ); // Prints: The quick brown FoX jumps over the lazy dog&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Append data to beginning:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = Pack(&amp;quot;z0&amp;quot;, &amp;quot;The quick brown FoX&amp;quot;);&lt;br /&gt;
$binary2 = Pack(&amp;quot;z0&amp;quot;, &amp;quot; jumps over the lazy dog&amp;quot;);&lt;br /&gt;
BinaryAppend($binary, $binary2, 1);&lt;br /&gt;
println( Unpack(&amp;quot;z0&amp;quot;, $binary) ); // Prints: jumps over the lazy dogThe quick brown FoX&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryGet</id>
		<title>Core Function BinaryGet</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryGet"/>
				<updated>2011-12-04T20:37:24Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
BinaryGet( &amp;lt;binary-array&amp;gt;, &amp;lt;index&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Get the byte at an index of a binary variable.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== binary-array ====&lt;br /&gt;
&lt;br /&gt;
The binary variable to use. &lt;br /&gt;
&lt;br /&gt;
==== index ====&lt;br /&gt;
&lt;br /&gt;
Any valid numeric expression.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns the byte at the given location.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
None.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = BinaryHex(&amp;quot;48656c&amp;quot;);&lt;br /&gt;
println( &amp;quot;Binary 0: '&amp;quot; . BinaryGet($binary, 0) );&lt;br /&gt;
println( &amp;quot;Binary 1: '&amp;quot; . BinaryGet($binary, 1) );&lt;br /&gt;
println( &amp;quot;Binary 2: '&amp;quot; . BinaryGet($binary, 2) );&lt;br /&gt;
// Now show all&lt;br /&gt;
println( &amp;quot;All:&amp;quot; );&lt;br /&gt;
for( $i = 0; $i &amp;lt; BinaryLen($binary); $i++)&lt;br /&gt;
{&lt;br /&gt;
	println( &amp;quot;Binary $i: '&amp;quot; . BinaryGet($binary, $i) );&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryWipe</id>
		<title>Core Function BinaryWipe</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryWipe"/>
				<updated>2011-12-04T20:32:41Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
BinaryWipe( &amp;lt;binary-array&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Wipes a binary variables data 100% and sets the variable to a blank int containing just 0.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== binary-array ====&lt;br /&gt;
&lt;br /&gt;
The binary variable to wipe. &lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
This will only wipe this individual variable it will not wipe every variable containing a reference to this binary data.&lt;br /&gt;
&lt;br /&gt;
What this means is its quite possible you will free no memory from using this unless you also wipe all other binary variables using this data.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = Pack(&amp;quot;z0&amp;quot;, &amp;quot;Hello World!\n&amp;quot; x 1000);&lt;br /&gt;
println( &amp;quot;Before Wipe: &amp;quot; . Unpack(&amp;quot;z0&amp;quot;, $binary) );&lt;br /&gt;
BinaryWipe($binary);&lt;br /&gt;
println( &amp;quot;After Wipe: &amp;quot; . $binary );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is just as effective.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = Pack(&amp;quot;z0&amp;quot;, &amp;quot;Hello World!\n&amp;quot; x 1000);&lt;br /&gt;
println( &amp;quot;Before Wipe: &amp;quot; . Unpack(&amp;quot;z0&amp;quot;, $binary) );&lt;br /&gt;
$binary = 0;&lt;br /&gt;
println( &amp;quot;After Wipe: &amp;quot; . $binary );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Also, this is just as effective.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = Pack(&amp;quot;z0&amp;quot;, &amp;quot;Hello World!\n&amp;quot; x 1000);&lt;br /&gt;
println( &amp;quot;Before Wipe: &amp;quot; . Unpack(&amp;quot;z0&amp;quot;, $binary) );&lt;br /&gt;
unset($binary);&lt;br /&gt;
println( &amp;quot;After Wipe: &amp;quot; . $binary );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryClone</id>
		<title>Core Function BinaryClone</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_BinaryClone"/>
				<updated>2011-12-04T20:31:41Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
BinaryClone( &amp;lt;binary-array&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Clone a binary variable 100% and return a new binary variable with exactly same data as the old one.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== binary-array ====&lt;br /&gt;
&lt;br /&gt;
The binary variable to use. &lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
Contrary to what you might think simply doing&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary2 = $binary1&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
That does not *copy* the data it will simply creates a reference to it making a change at either variable will change both so if you wish to actually copy a binary variables data you will need to use BinaryClone or BinaryMid etc.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = Pack(&amp;quot;z0&amp;quot;, &amp;quot;Hello World!&amp;quot;);&lt;br /&gt;
$binary2 = BinaryClone($binary);&lt;br /&gt;
BinaryReverse($binary);&lt;br /&gt;
println(&amp;quot;b1: &amp;quot; . Unpack(&amp;quot;z0&amp;quot;, $binary));&lt;br /&gt;
println(&amp;quot;b2: &amp;quot; . Unpack(&amp;quot;z0&amp;quot;, $binary2));&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Pack</id>
		<title>Core Function Pack</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Pack"/>
				<updated>2011-12-04T20:30:02Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
Pack( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Pack data into a binary array&lt;br /&gt;
&lt;br /&gt;
==== expression ====&lt;br /&gt;
&lt;br /&gt;
The format string to use.&lt;br /&gt;
&lt;br /&gt;
==== expressions ====&lt;br /&gt;
&lt;br /&gt;
One or more expressions to convert.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns a binary variable which contains the array of bytes.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns empty array.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
To access the binary data in the variable you will need to either request elements from index id, cycle through all elements in a loop or use the Unpack function to convert the binary array into something useful.&lt;br /&gt;
&lt;br /&gt;
Its worth noting you can cycle through a Binary variable like this :&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$binary = Pack(&amp;quot;z0&amp;quot;, &amp;quot;Hello World!&amp;quot;);&lt;br /&gt;
Foreach ($binary as $i)&lt;br /&gt;
{&lt;br /&gt;
	println( &amp;quot;Byte: &amp;quot; . $i . &amp;quot; | Hex: &amp;quot; . Hex($i) . &amp;quot; | Char: &amp;quot; . Chr($i) );&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Control Specifiers ====&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|Character&lt;br /&gt;
|Description&lt;br /&gt;
|-&lt;br /&gt;
|^&lt;br /&gt;
|Switch to big endian encoding&lt;br /&gt;
|-&lt;br /&gt;
|_&lt;br /&gt;
|Switch to little endian encoding&lt;br /&gt;
|-&lt;br /&gt;
|%&lt;br /&gt;
|Switch to host (native) encoding&lt;br /&gt;
|-&lt;br /&gt;
|!&lt;br /&gt;
|Aligns the next data type to its natural boundary, for example for a double that would be 8 bytes, for a 32-bit int, that would be 4 bytes. For strings this is set to 4.&lt;br /&gt;
|-&lt;br /&gt;
|N&lt;br /&gt;
|A number between 1 and 9, indicates a repeat count (process N items with the following datatype&lt;br /&gt;
|-&lt;br /&gt;
|[N]&lt;br /&gt;
|For numbers larger than 9, use brackets, for example [20]&lt;br /&gt;
|-&lt;br /&gt;
|*&lt;br /&gt;
|Repeat the next data type until the arguments are exhausted&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Data Encoding ====&lt;br /&gt;
&lt;br /&gt;
Warning - The pack for $variables is designed to create the bytes of the arrays elements such as array of ints however it does not unpack to a $variable instead you must unpack it as the base type you packed it to such as Int32.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|Character&lt;br /&gt;
|Description&lt;br /&gt;
|-&lt;br /&gt;
|s&lt;br /&gt;
|Int16&lt;br /&gt;
|-&lt;br /&gt;
|S&lt;br /&gt;
|UInt16&lt;br /&gt;
|-&lt;br /&gt;
|i&lt;br /&gt;
|Int32&lt;br /&gt;
|-&lt;br /&gt;
|I&lt;br /&gt;
|UInt32&lt;br /&gt;
|-&lt;br /&gt;
|l&lt;br /&gt;
|Int64&lt;br /&gt;
|-&lt;br /&gt;
|L&lt;br /&gt;
|UInt64&lt;br /&gt;
|-&lt;br /&gt;
|f&lt;br /&gt;
|float&lt;br /&gt;
|-&lt;br /&gt;
|d&lt;br /&gt;
|double&lt;br /&gt;
|-&lt;br /&gt;
|b&lt;br /&gt;
||byte&lt;br /&gt;
|-&lt;br /&gt;
|c&lt;br /&gt;
|1-byte signed character&lt;br /&gt;
|-&lt;br /&gt;
|C&lt;br /&gt;
|1-byte unsigned character&lt;br /&gt;
|-&lt;br /&gt;
|h&lt;br /&gt;
|Hex string to convert to bytes (For Pack)&lt;br /&gt;
|-&lt;br /&gt;
|h&lt;br /&gt;
|2 Char Lowercase Hexstring of a byte (For Unpack)&lt;br /&gt;
|-&lt;br /&gt;
|H&lt;br /&gt;
|2 Char Uppercase Hexstring of a byte (For Unpack)&lt;br /&gt;
|-&lt;br /&gt;
|z8&lt;br /&gt;
|string encoded as UTF8 with 1-byte null terminator&lt;br /&gt;
|-&lt;br /&gt;
|z6&lt;br /&gt;
|string encoded as UTF16 with 2-byte null terminator&lt;br /&gt;
|-&lt;br /&gt;
|z7&lt;br /&gt;
|string encoded as UTF7 with 1-byte null terminator&lt;br /&gt;
|-&lt;br /&gt;
|zb&lt;br /&gt;
|string encoded as BigEndianUnicode with 2-byte null terminator&lt;br /&gt;
|-&lt;br /&gt;
|z3&lt;br /&gt;
|string encoded as UTF32 with 4-byte null terminator&lt;br /&gt;
|-&lt;br /&gt;
|z4&lt;br /&gt;
|string encoded as UTF32 big endian with 4-byte null terminator&lt;br /&gt;
|-&lt;br /&gt;
|z0&lt;br /&gt;
|ASCII string without a null terminator&lt;br /&gt;
|-&lt;br /&gt;
|z1&lt;br /&gt;
|ASCII string with 1-byte terminator&lt;br /&gt;
|-&lt;br /&gt;
|$ab&lt;br /&gt;
|A $variable containing an array of Byte values&lt;br /&gt;
|-&lt;br /&gt;
|$as&lt;br /&gt;
|A $variable containing an array of Int16 values&lt;br /&gt;
|-&lt;br /&gt;
|$aS&lt;br /&gt;
|A $variable containing an array of UInt16 values&lt;br /&gt;
|-&lt;br /&gt;
|$ai&lt;br /&gt;
|A $variable containing an array of Int32 values&lt;br /&gt;
|-&lt;br /&gt;
|$aI&lt;br /&gt;
|A $variable containing an array of UInt32 values&lt;br /&gt;
|-&lt;br /&gt;
|$al&lt;br /&gt;
|A $variable containing an array of Int64 values&lt;br /&gt;
|-&lt;br /&gt;
|$aL&lt;br /&gt;
|A $variable containing an array of UInt64 values&lt;br /&gt;
|-&lt;br /&gt;
|$af&lt;br /&gt;
|A $variable containing an array of Float values&lt;br /&gt;
|-&lt;br /&gt;
|$ad&lt;br /&gt;
|A $variable containing an array of Double values&lt;br /&gt;
|-&lt;br /&gt;
|x&lt;br /&gt;
|null byte&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
Converting an array of Ints into bytes then back into an array of ints again:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$oldArray = array(100, 200, 300, 400); // Create an array&lt;br /&gt;
// Pack the array into bytes with each element converted to Int32&lt;br /&gt;
$binary = Pack('$ai', $oldArray); // NOTICE '' was used instead of &amp;quot;&amp;quot;? This is vital when packing variables or else it will fail&lt;br /&gt;
Foreach ($binary as $i)&lt;br /&gt;
{&lt;br /&gt;
	println( &amp;quot;Byte: &amp;quot; . $i ); // Prints the bytes just for looksee&lt;br /&gt;
}&lt;br /&gt;
$newArray = Unpack('*i', $binary); // Unpack All the Int32s into an array&lt;br /&gt;
println(&amp;quot;Old Array : &amp;quot; . $oldArray);&lt;br /&gt;
println(&amp;quot;New Array : &amp;quot; . $newArray);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Same as above but this time packing a float and a double as well :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$oldArray = array(100, 200, 300, 400); // Create an array&lt;br /&gt;
// Pack the array into bytes with each element converted to Int32&lt;br /&gt;
$binary = Pack('$aifd', $oldArray, (float)777, (double)1337.42); // NOTICE '' was used instead of &amp;quot;&amp;quot;? This is vital when packing variables or else it will fail&lt;br /&gt;
Foreach ($binary as $i)&lt;br /&gt;
{&lt;br /&gt;
	println( &amp;quot;Byte: &amp;quot; . $i ); // Prints the bytes just for looksee&lt;br /&gt;
}&lt;br /&gt;
$newArray = Unpack('4ifd', $binary); // Unpack 4 Int32s, 1 float and 1 double into an array&lt;br /&gt;
println(&amp;quot;Old Array : &amp;quot; . $oldArray);&lt;br /&gt;
println(&amp;quot;New Array : &amp;quot; . $newArray);&lt;br /&gt;
foreach ($newArray as $i)&lt;br /&gt;
{&lt;br /&gt;
	println(&amp;quot;Value: &amp;quot; . $i );&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Of course we could set how many Ints to decode dynamically example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$oldArray = array(100, 200, 300, 400); // Create an array&lt;br /&gt;
// Pack the array into bytes with each element converted to Int32&lt;br /&gt;
$binary = Pack('$aifd', $oldArray, (float)777, (double)1337.42); // NOTICE '' was used instead of &amp;quot;&amp;quot;? This is vital when packing variables or else it will fail&lt;br /&gt;
Foreach ($binary as $i)&lt;br /&gt;
{&lt;br /&gt;
	println( &amp;quot;Byte: &amp;quot; . $i ); // Prints the bytes just for looksee&lt;br /&gt;
}&lt;br /&gt;
$newArray = Unpack(UBound($oldArray) . 'ifd', $binary); // Unpack 4 Int32s, 1 float and 1 double into an array&lt;br /&gt;
println(&amp;quot;Old Array : &amp;quot; . $oldArray);&lt;br /&gt;
println(&amp;quot;New Array : &amp;quot; . $newArray);&lt;br /&gt;
foreach ($newArray as $i)&lt;br /&gt;
{&lt;br /&gt;
	println(&amp;quot;Value: &amp;quot; . $i );&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Convert a string into a binary array and back again:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$arr = Pack(&amp;quot;z0&amp;quot;, &amp;quot;Hello World!&amp;quot;);&lt;br /&gt;
foreach ($arr as $i)&lt;br /&gt;
{&lt;br /&gt;
	println($i);&lt;br /&gt;
}&lt;br /&gt;
$str = Unpack(&amp;quot;z0&amp;quot;, $arr);&lt;br /&gt;
println($str);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Convert a dobule into a binary array and back again:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$arr = Pack(&amp;quot;d&amp;quot;, 777.42);&lt;br /&gt;
foreach ($arr as $i)&lt;br /&gt;
{&lt;br /&gt;
	println($i);&lt;br /&gt;
}&lt;br /&gt;
$str = Unpack(&amp;quot;d&amp;quot;, $arr);&lt;br /&gt;
println($str);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Convert a int into a binary array and back again:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$arr = Pack(&amp;quot;d&amp;quot;, (int)777);&lt;br /&gt;
foreach ($arr as $i)&lt;br /&gt;
{&lt;br /&gt;
	println($i);&lt;br /&gt;
}&lt;br /&gt;
$str = Unpack(&amp;quot;d&amp;quot;, $arr);&lt;br /&gt;
println($str);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Convert a string into a hex and back again:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$hex = Join(Unpack(&amp;quot;*H&amp;quot;, Pack(&amp;quot;z0&amp;quot;, &amp;quot;Hello World!&amp;quot;)), '');&lt;br /&gt;
println(&amp;quot;Hex String: &amp;quot; . $hex);&lt;br /&gt;
$str = Unpack(&amp;quot;z0&amp;quot;, Pack(&amp;quot;h&amp;quot;, $hex));&lt;br /&gt;
println(&amp;quot;Normal String: &amp;quot; . $str);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Convert a string into a hex and back again (alternative 1):&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$hex = Unpack(&amp;quot;*H&amp;quot;, &amp;quot;Hello World!&amp;quot;, 1);&lt;br /&gt;
println(&amp;quot;Hex String: &amp;quot; . $hex);&lt;br /&gt;
$str = Unpack(&amp;quot;z0&amp;quot;, Pack(&amp;quot;h&amp;quot;, $hex));&lt;br /&gt;
println(&amp;quot;Normal String: &amp;quot; . $str);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Convert a string into a hex and back again (alternative 2):&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$hex = Unpack(&amp;quot;*H&amp;quot;, &amp;quot;Hello World!&amp;quot;, 1);&lt;br /&gt;
println(&amp;quot;Hex String: &amp;quot; . $hex);&lt;br /&gt;
$hex =~ s/([\dA-Fa-f][\dA-Fa-f])/Chr(Dec($1))/ego;&lt;br /&gt;
println(&amp;quot;Normal String: &amp;quot; . $hex);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To pack two integers in big endian format, you would use this:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$bytes = Pack (&amp;quot;^ii&amp;quot;, 1234, 4542);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
More Examples:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
; The following means:&lt;br /&gt;
; Little endian encoding of a Int16, followed by an aligned&lt;br /&gt;
; int32 value.&lt;br /&gt;
$r = Pack(&amp;quot;_s!i&amp;quot;, 0x7b, 0x12345678);&lt;br /&gt;
foreach ($r as $i)&lt;br /&gt;
{&lt;br /&gt;
	print(Hex($i) . &amp;quot; &amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
// Prints 7B 0 0 0 80 56 34 12&lt;br /&gt;
&lt;br /&gt;
$bytes = Pack(&amp;quot;CCCC&amp;quot;, 65, 66, 67, 68);&lt;br /&gt;
foreach ($bytes as $i)&lt;br /&gt;
{&lt;br /&gt;
	print(Chr($i) . &amp;quot; &amp;quot;);&lt;br /&gt;
} // Prints 4-byte sequence for &amp;quot;ABCD&amp;quot;&lt;br /&gt;
&lt;br /&gt;
$bytes = Pack(&amp;quot;4C&amp;quot;, 65, 66, 67, 68);&lt;br /&gt;
foreach ($bytes as $i)&lt;br /&gt;
{&lt;br /&gt;
	print(Chr($i) . &amp;quot; &amp;quot;);&lt;br /&gt;
} // Prints 4-byte sequence for &amp;quot;ABCD&amp;quot;&lt;br /&gt;
&lt;br /&gt;
$bytes = Pack(&amp;quot;*C&amp;quot;, 65, 66, 67, 68);&lt;br /&gt;
foreach ($bytes as $i)&lt;br /&gt;
{&lt;br /&gt;
	print(Chr($i) . &amp;quot; &amp;quot;);&lt;br /&gt;
} // Prints 4-byte sequence for &amp;quot;ABCD&amp;quot;&lt;br /&gt;
&lt;br /&gt;
$bytes = Pack(&amp;quot;^ii&amp;quot;, 0x1234abcd, 0x7fadb007);&lt;br /&gt;
foreach ($bytes as $i)&lt;br /&gt;
{&lt;br /&gt;
	print(Hex($i) . &amp;quot; &amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
println(&amp;quot;&amp;quot;); // Result: 12 34 ab cd 7f ad b0 07&lt;br /&gt;
&lt;br /&gt;
// Encode 3 integers as big-endian, but only provides two as arguments,&lt;br /&gt;
// this defaults to zero for the last value.&lt;br /&gt;
$bytes = Pack(&amp;quot;^iii&amp;quot;, 0x1234abcd, 0x7fadb007);&lt;br /&gt;
foreach ($bytes as $i)&lt;br /&gt;
{&lt;br /&gt;
	print(Hex($i) . &amp;quot; &amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
println(&amp;quot;&amp;quot;); // Result: 12 34 ab cd 7f ad b0 07 00 00 00 00&lt;br /&gt;
&lt;br /&gt;
// Encode as little endian, pack 1 short, align, 1 int&lt;br /&gt;
$bytes = Pack(&amp;quot;_s!i&amp;quot;, 0x7b, 0x12345678);&lt;br /&gt;
foreach ($bytes as $i)&lt;br /&gt;
{&lt;br /&gt;
	print(Hex($i) . &amp;quot; &amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
println(&amp;quot;&amp;quot;); // Result: 7b 00 00 00 78 56 34 12&lt;br /&gt;
 &lt;br /&gt;
// Encode a string in utf-8 with a null terminator&lt;br /&gt;
$bytes = Pack(&amp;quot;z8&amp;quot;, &amp;quot;hello&amp;quot;);&lt;br /&gt;
foreach ($bytes as $i)&lt;br /&gt;
{&lt;br /&gt;
	print(Hex($i) . &amp;quot; &amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
println(&amp;quot;&amp;quot;); // Result: 68 65 6c 6c 6f 00 00 00 00&lt;br /&gt;
 &lt;br /&gt;
// Little endian encoding, for Int16, followed by an aligned&lt;br /&gt;
// Int32&lt;br /&gt;
$bytes = Pack(&amp;quot;_s!i&amp;quot;, 0x7b, 0x12345678);&lt;br /&gt;
foreach ($bytes as $i)&lt;br /&gt;
{&lt;br /&gt;
	print(Hex($i) . &amp;quot; &amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
println(&amp;quot;&amp;quot;); // Result: 7b 00 00 00 78 56 34 12&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_GetVarObjType</id>
		<title>Core Function GetVarObjType</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_GetVarObjType"/>
				<updated>2011-12-04T20:27:59Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
GetVarObjType( $variable )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Get the common object type of a variable (If it is an object)&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== variable ====&lt;br /&gt;
&lt;br /&gt;
The variable to check.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Returns the common object type a variable as a numeric value types are:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[CODE]		[TYPE]		[@MACRO]&lt;br /&gt;
0		CLASS		@typeCLASS&lt;br /&gt;
1		FILE		@typeFILE&lt;br /&gt;
2		BINARY		@typeBINARY&lt;br /&gt;
3		GUI		@typeGUI&lt;br /&gt;
4		GUIObject	@typeGUIObject&lt;br /&gt;
5		ASSEMBLY	@typeASSEMBLY&lt;br /&gt;
6		METHOD		@typeMETHOD&lt;br /&gt;
7		MYSQL		@typeMYSQL&lt;br /&gt;
8		MYSQLDATA	@typeMYSQLDATA&lt;br /&gt;
9		DLLSTRUCT	@typeDLLSTRUCT&lt;br /&gt;
10		OBJECT		@typeOBJECT&lt;br /&gt;
11		SERVER		@typeSERVER&lt;br /&gt;
12		CLIENT		@typeCLIENT&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
None.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
Checking as numeric&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$a = &amp;quot;My value&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
if( GetVarObjType($a) == 11 ) // Server&lt;br /&gt;
{&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
switch( GetVarObjType($a) )&lt;br /&gt;
{&lt;br /&gt;
	case 9: // DLLStruct&lt;br /&gt;
	{&lt;br /&gt;
	}&lt;br /&gt;
	break;&lt;br /&gt;
	case 10: // Object (Unknown object that doesn't have its own type in Sputnik yet most likely)&lt;br /&gt;
	{&lt;br /&gt;
	}&lt;br /&gt;
	break;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Checking using @ Macro of the numeric&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$a = &amp;quot;My value&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
if( GetVarObjType($a) == @typeCLIENT )&lt;br /&gt;
{&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
switch( GetVarObjType($a) )&lt;br /&gt;
{&lt;br /&gt;
	case @typeCLASS:&lt;br /&gt;
	{&lt;br /&gt;
	}&lt;br /&gt;
	break;&lt;br /&gt;
	case @typeMYSQLDATA:&lt;br /&gt;
	{&lt;br /&gt;
	}&lt;br /&gt;
	break;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_isVarClass</id>
		<title>Core Function isVarClass</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_isVarClass"/>
				<updated>2011-12-04T20:23:20Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
isVarClass( $variable, &amp;lt;type&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Check if a variable's object type is a class.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== variable ====&lt;br /&gt;
&lt;br /&gt;
The variable to check.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0 if parameter is not an array variable.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
Can be useful to validate array/non-array parameters to user-defined functions.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
A simple example to see if a variable is a class variable :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
Class Vec3&lt;br /&gt;
{&lt;br /&gt;
	my $x = 0;&lt;br /&gt;
	my $y = 0;&lt;br /&gt;
	my $z = 0;&lt;br /&gt;
	Function Vec3($x1 = 0, $y1 = 0, $z1 = 0)&lt;br /&gt;
	{&lt;br /&gt;
		$this-&amp;gt;$x = (double)$x1;&lt;br /&gt;
		$this-&amp;gt;$y = (double)$y1;&lt;br /&gt;
		$this-&amp;gt;$z = (double)$z1;&lt;br /&gt;
	}&lt;br /&gt;
};&lt;br /&gt;
$cat1 = new Vec3(10, 20, 30);&lt;br /&gt;
println( isVarClass($cat1) ? &amp;quot;TRUE&amp;quot; : &amp;quot;FALSE&amp;quot; );&lt;br /&gt;
println( isVarClass($moo) ? &amp;quot;TRUE&amp;quot; : &amp;quot;FALSE&amp;quot; );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Same example but this time making sure the class is a vec3 and nothing else:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
Class Vec3&lt;br /&gt;
{&lt;br /&gt;
	my $x = 0;&lt;br /&gt;
	my $y = 0;&lt;br /&gt;
	my $z = 0;&lt;br /&gt;
	Function Vec3($x1 = 0, $y1 = 0, $z1 = 0)&lt;br /&gt;
	{&lt;br /&gt;
		$this-&amp;gt;$x = (double)$x1;&lt;br /&gt;
		$this-&amp;gt;$y = (double)$y1;&lt;br /&gt;
		$this-&amp;gt;$z = (double)$z1;&lt;br /&gt;
	}&lt;br /&gt;
};&lt;br /&gt;
$cat1 = new Vec3(10, 20, 30);&lt;br /&gt;
println( isVarClass($cat1, &amp;quot;vec3&amp;quot;) ? &amp;quot;TRUE&amp;quot; : &amp;quot;FALSE&amp;quot; );&lt;br /&gt;
println( isVarClass($moo, &amp;quot;vec3&amp;quot;) ? &amp;quot;TRUE&amp;quot; : &amp;quot;FALSE&amp;quot; );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_isVarByte</id>
		<title>Core Function isVarByte</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_isVarByte"/>
				<updated>2011-12-04T20:14:31Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
isVarByte( $variable )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Checks if a variable is a unsigned 8-bit integer type.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== variable ====&lt;br /&gt;
&lt;br /&gt;
The variable to check.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
None.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$var1 = &amp;quot;check me&amp;quot;;&lt;br /&gt;
println( &amp;quot;Is it?: &amp;quot; . isVarByte($var1) );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_isVarSByte</id>
		<title>Core Function isVarSByte</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_isVarSByte"/>
				<updated>2011-12-04T20:04:48Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
isVarSByte( $variable )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Checks if a variable is a signed 8-bit integer type.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== variable ====&lt;br /&gt;
&lt;br /&gt;
The variable to check.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
None.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$var1 = &amp;quot;check me&amp;quot;;&lt;br /&gt;
println( &amp;quot;Is it?: &amp;quot; . sVarSByte($var1) );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_isVarByte</id>
		<title>Core Function isVarByte</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_isVarByte"/>
				<updated>2011-12-04T20:04:28Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
isVarByte( $variable )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Checks if a variable is a unsigned 8-bit integer type.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== variable ====&lt;br /&gt;
&lt;br /&gt;
The variable to check.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
None.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$var1 = &amp;quot;check me&amp;quot;;&lt;br /&gt;
println( &amp;quot;Is it?: &amp;quot; . sVarByte($var1) );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_IsDeclared</id>
		<title>Core Function IsDeclared</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_IsDeclared"/>
				<updated>2011-12-04T20:00:42Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
IsDeclared( &amp;lt;variable name&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Check if a variable has been declared&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== Expression ====&lt;br /&gt;
&lt;br /&gt;
String representing name of the variable to be checked.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1 if variable has been assigned.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0 if variable doesn't exist yet.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
If (!IsDeclared(&amp;quot;a&amp;quot;))&lt;br /&gt;
    MsgBox('$a is NOT declared');     // $a has never been assigned&lt;br /&gt;
&lt;br /&gt;
$a=1;&lt;br /&gt;
&lt;br /&gt;
If (IsDeclared (&amp;quot;a&amp;quot;))&lt;br /&gt;
    MsgBox('$a IS declared');      //due to previous $a=1 assignment&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Window_Titles_and_Text_Advanced</id>
		<title>Window Titles and Text Advanced</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Window_Titles_and_Text_Advanced"/>
				<updated>2011-12-04T19:57:12Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Description ===&lt;br /&gt;
&lt;br /&gt;
Sputnik operates in one of five &amp;quot;Window matching&amp;quot; modes.&lt;br /&gt;
&lt;br /&gt;
The modes are set with the Opt() function using the WinTitleMatchMode and WinTextMatchMode option.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
'''Mode 1 (default)'''&lt;br /&gt;
&lt;br /&gt;
Matches partial titles from the start.&lt;br /&gt;
&lt;br /&gt;
In this mode the a window titled Untitled - Notepad would be matched by &amp;quot;Untitled - Notepad&amp;quot;, &amp;quot;Untitled&amp;quot;, &amp;quot;Un&amp;quot;, etc.  &lt;br /&gt;
&lt;br /&gt;
e.g.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
WinWait(&amp;quot;Untitled&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Mode 2'''&lt;br /&gt;
&lt;br /&gt;
Matches partial titles from the end.&lt;br /&gt;
&lt;br /&gt;
In this mode the a window titled Untitled - Notepad would be matched by &amp;quot;Untitled - Notepad&amp;quot;, &amp;quot;Notepad&amp;quot;, &amp;quot;pad&amp;quot;, etc.  &lt;br /&gt;
&lt;br /&gt;
e.g.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
WinWait(&amp;quot;pad&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Mode 3'''&lt;br /&gt;
&lt;br /&gt;
Matches any sub-string in the title.&lt;br /&gt;
&lt;br /&gt;
In this mode a window titled Untitled - Notepad would be matched by &amp;quot;Untitled - Notepad&amp;quot;, &amp;quot;Untitled&amp;quot;, &amp;quot;Notepad&amp;quot;, &amp;quot;pad&amp;quot;, &amp;quot;d - N&amp;quot;, etc.&lt;br /&gt;
&lt;br /&gt;
e.g.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
WinWait(&amp;quot;Notepad&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Mode 4'''&lt;br /&gt;
&lt;br /&gt;
Exact title match.&lt;br /&gt;
&lt;br /&gt;
In this mode a window titled Untitled - Notepad would only be matched by &amp;quot;Untitled - Notepad&amp;quot;&lt;br /&gt;
&lt;br /&gt;
e.g.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
WinWait(&amp;quot;Untitled - Notepad&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Mode 5'''&lt;br /&gt;
&lt;br /&gt;
Advanced mode.&lt;br /&gt;
&lt;br /&gt;
Must be replaced with Advanced Window Descriptions which does not need any mode to be set.&lt;br /&gt;
&lt;br /&gt;
'''Advanced Window Descriptions'''&lt;br /&gt;
&lt;br /&gt;
A special description can be used as the window title parameter.&lt;br /&gt;
&lt;br /&gt;
This description can be used to identify a window by the following properties:&lt;br /&gt;
&lt;br /&gt;
* TITLE - Window title (If used on Title param however if used on Text param it will match against the found text rather than the title)&lt;br /&gt;
* CLASS - The internal window class name &lt;br /&gt;
* ACTIVE - Currently active window&lt;br /&gt;
* NOTACTIVE - This will not count the current active window in the search&lt;br /&gt;
* CLASSRX - Match class using a regular expression (Can be used on Title or Text params or both params to match the the given text of each param)&lt;br /&gt;
* REGEX - Match title or text using a regular expression (Can be used on Title or Text params or both params to match the the given text of each param)&lt;br /&gt;
* INSTANCE - The 1-based instance when all given properties match &lt;br /&gt;
&lt;br /&gt;
One or more properties are used in the title parameter of a window command in the format:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
[PROPERTY1=Value1; PROPERTY2=Value2]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e.g. Wait a window of classname &amp;quot;Notepad&amp;quot; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
WinWaitActive(&amp;quot;[CLASS=Notepad]&amp;quot;, &amp;quot;&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e.g. Close the currently active window &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
WinClose(&amp;quot;[ACTIVE]&amp;quot;, &amp;quot;&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e.g. Wait for the 2nd instance of a window with title &amp;quot;My Window&amp;quot; and classname &amp;quot;My Class&amp;quot; &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
WinWait(&amp;quot;[TITLE=My Window; CLASS=My Class; INSTANCE=2]&amp;quot;, &amp;quot;&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e.g. Wait for the 2nd instance of a notepad&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
WinWait(&amp;quot;[class=Notepad;INSTANCE=3]&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
e.g. List windows matching a classname defined by a regular expression&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
WinList(&amp;quot;[CLASSRX=#\d+]&amp;quot;)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_ThreadCreate</id>
		<title>Core Function ThreadCreate</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_ThreadCreate"/>
				<updated>2011-12-04T19:53:21Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
ThreadCreate( &amp;lt;name&amp;gt;, &amp;lt;function&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Create a new thread and start it off executing a function or some code&lt;br /&gt;
&lt;br /&gt;
Sputnik supports multi-threading and you can create threads in your code to assist you.&lt;br /&gt;
&lt;br /&gt;
Threads work best if you use them as *worker threads*.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== name ====&lt;br /&gt;
&lt;br /&gt;
Name of a thread to create.&lt;br /&gt;
&lt;br /&gt;
==== function ====&lt;br /&gt;
&lt;br /&gt;
Either a function to call or a string to execute similar to Eval()&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
You can spawn as many threads as you wish however there are a few important things to consider with threads.&lt;br /&gt;
&lt;br /&gt;
* Threads can cause problems and even crash if used improperly.&lt;br /&gt;
&lt;br /&gt;
* A thread works best if it's like a worker thread that is designed to get/set global variables and do its own thing and call functions here and there. Threads don't like to mess with every piece of code that you are messing with.&lt;br /&gt;
&lt;br /&gt;
* Threads have their own stack and local variable that is independent from everything else they can however access global variables and functions etc.&lt;br /&gt;
&lt;br /&gt;
* Threads don't like GUI stuff since most GUI functions are to be edited by the thread that created them therefore other threads aren't too happy if you make them mess with GUI of the main thread etc.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
ThreadCreate(&amp;quot;th1&amp;quot;, &amp;quot;Thread1Func();&amp;quot;); // This thread will execute a function&lt;br /&gt;
ThreadCreate(&amp;quot;th2&amp;quot;, &amp;quot;Thread2Func();&amp;quot;); // This thread will execute a function&lt;br /&gt;
ThreadCreate(&amp;quot;th3&amp;quot;, 'println(&amp;quot;Thread 3 says hi&amp;quot;);'); // This thread will execute code&lt;br /&gt;
&lt;br /&gt;
inputc();&lt;br /&gt;
&lt;br /&gt;
Function Thread1Func()&lt;br /&gt;
{&lt;br /&gt;
	while(true)&lt;br /&gt;
	{&lt;br /&gt;
		println(&amp;quot;Hello from thread '&amp;quot; . ThreadName() . &amp;quot;'&amp;quot;);&lt;br /&gt;
		sleep(500);&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
Function Thread2Func()&lt;br /&gt;
{&lt;br /&gt;
	while(true)&lt;br /&gt;
	{&lt;br /&gt;
		println(&amp;quot;Heya from thread '&amp;quot; . ThreadName() . &amp;quot;'&amp;quot;);&lt;br /&gt;
		sleep(500);&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Printf</id>
		<title>Core Function Printf</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Printf"/>
				<updated>2011-12-04T19:51:21Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
SPrintf( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt;... )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Create a formatted string.&lt;br /&gt;
&lt;br /&gt;
=== expression ===&lt;br /&gt;
&lt;br /&gt;
The format string and flags to use (see Remarks).&lt;br /&gt;
&lt;br /&gt;
==== expressions ====&lt;br /&gt;
&lt;br /&gt;
Variables that will be output according to the &amp;quot;Format Control&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns the formatted string. &lt;br /&gt;
&lt;br /&gt;
Failure: Returns an empty string.&lt;br /&gt;
&lt;br /&gt;
=== Format Control ===&lt;br /&gt;
&lt;br /&gt;
Something to note is that params are counted from 0 for example&lt;br /&gt;
&lt;br /&gt;
Printf(&amp;quot;format string&amp;quot;, &amp;quot;param0&amp;quot;, &amp;quot;param1&amp;quot;, &amp;quot;param2&amp;quot;, &amp;quot;param3&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
And so on so to use param0 in the format string&lt;br /&gt;
&lt;br /&gt;
&amp;quot;format {0}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
To use param 1&lt;br /&gt;
&lt;br /&gt;
&amp;quot;format {1}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
To use param 0 and 3&lt;br /&gt;
&lt;br /&gt;
&amp;quot;format {0} {3}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Now after you enter the param number you can a place a : then special formats as shown below for example to print a hex number&lt;br /&gt;
&lt;br /&gt;
Printf(&amp;quot;{0:x4}\n&amp;quot;, (int)1337)&lt;br /&gt;
&lt;br /&gt;
See its using param 0 then : which means we want a special format then x to say we want to use a hex format then 4 to say we want the hex to be 4 chars long.&lt;br /&gt;
&lt;br /&gt;
==== Strings ====&lt;br /&gt;
&lt;br /&gt;
There really isn’t any formatting within a string, beyond it’s alignment. Alignment works for any argument being printed.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
Printf(&amp;quot;-&amp;gt;{0,10}&amp;lt;-\n&amp;quot;, &amp;quot;Hello&amp;quot;)&lt;br /&gt;
Printf(&amp;quot;-&amp;gt;{0,-10}&amp;lt;-\n&amp;quot;, &amp;quot;Hello&amp;quot;)&lt;br /&gt;
; Generates&lt;br /&gt;
; -&amp;gt;     Hello&amp;lt;-&lt;br /&gt;
; -&amp;gt;Hello     &amp;lt;-&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Numbers ====&lt;br /&gt;
&lt;br /&gt;
Basic number formatting specifiers:&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|Specifier&lt;br /&gt;
|Type&lt;br /&gt;
|Format&lt;br /&gt;
|Output with (double)1.42&lt;br /&gt;
|Output with (int)1337&lt;br /&gt;
|Output with (int)-12400&lt;br /&gt;
|-&lt;br /&gt;
|c&lt;br /&gt;
|Currency&lt;br /&gt;
|{0:c}&lt;br /&gt;
|$1.42&lt;br /&gt;
|$1,337&lt;br /&gt;
| -$12,400&lt;br /&gt;
|-&lt;br /&gt;
|d&lt;br /&gt;
|Decimal (Whole number)&lt;br /&gt;
|{0:d}&lt;br /&gt;
|&lt;br /&gt;
|1337&lt;br /&gt;
| -12400&lt;br /&gt;
|-&lt;br /&gt;
|e&lt;br /&gt;
|Scientific&lt;br /&gt;
|{0:e}&lt;br /&gt;
|1.420000e+000&lt;br /&gt;
|1.337000e+003&lt;br /&gt;
| -1.240000e+004&lt;br /&gt;
|-&lt;br /&gt;
|f&lt;br /&gt;
|Fixed point&lt;br /&gt;
|{0:f}&lt;br /&gt;
|1.42&lt;br /&gt;
|1337.00&lt;br /&gt;
| -12400.00&lt;br /&gt;
|-&lt;br /&gt;
|g&lt;br /&gt;
|General&lt;br /&gt;
|{0:g}&lt;br /&gt;
|1.42&lt;br /&gt;
|1337&lt;br /&gt;
| -12400&lt;br /&gt;
|-&lt;br /&gt;
|n&lt;br /&gt;
|Number with commas for thousands&lt;br /&gt;
|{0:n}&lt;br /&gt;
|1.42&lt;br /&gt;
|1,337&lt;br /&gt;
| -12,400&lt;br /&gt;
|-&lt;br /&gt;
|r&lt;br /&gt;
|Round trippable&lt;br /&gt;
|{0:r}&lt;br /&gt;
|1.42&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|x&lt;br /&gt;
|Hexadecimal&lt;br /&gt;
|{0:x4}&lt;br /&gt;
|1.42&lt;br /&gt;
|0539&lt;br /&gt;
|cf90&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Custom number formatting:&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|Specifier&lt;br /&gt;
|Type&lt;br /&gt;
|Example&lt;br /&gt;
|Output with (double)1500.42&lt;br /&gt;
|Note&lt;br /&gt;
|-&lt;br /&gt;
|0&lt;br /&gt;
|Zero placeholder&lt;br /&gt;
|{0:00.0000}&lt;br /&gt;
|1500.4200&lt;br /&gt;
|Pads with zeroes.&lt;br /&gt;
|-&lt;br /&gt;
|#&lt;br /&gt;
|Digit placeholder&lt;br /&gt;
|{0:(#).##}&lt;br /&gt;
|(1500).42&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|.&lt;br /&gt;
|Decimal point&lt;br /&gt;
|{0:0.0}&lt;br /&gt;
|1500.4&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|,&lt;br /&gt;
|Thousand separator&lt;br /&gt;
|{0:0,0}&lt;br /&gt;
|1,500&lt;br /&gt;
|Must be between two zeroes.&lt;br /&gt;
|-&lt;br /&gt;
|,.&lt;br /&gt;
|Number scaling&lt;br /&gt;
|{0:0,.}&lt;br /&gt;
|2&lt;br /&gt;
|Comma adjacent to Period scales by 1000.&lt;br /&gt;
|-&lt;br /&gt;
|%&lt;br /&gt;
|Percent&lt;br /&gt;
|{0:0%}&lt;br /&gt;
|150042%&lt;br /&gt;
|Multiplies by 100, adds % sign.&lt;br /&gt;
|-&lt;br /&gt;
|e&lt;br /&gt;
|Exponent placeholder&lt;br /&gt;
|{0:00e+0}&lt;br /&gt;
|15e+2&lt;br /&gt;
|Many exponent formats available.&lt;br /&gt;
|-&lt;br /&gt;
|;&lt;br /&gt;
|Group separator&lt;br /&gt;
|see below&lt;br /&gt;
|see below&lt;br /&gt;
|see below&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The group separator is especially useful for formatting currency values which require that negative values be enclosed in parentheses. This currency formatting example at the bottom of this document makes it obvious:&lt;br /&gt;
&lt;br /&gt;
==== Dates ====&lt;br /&gt;
&lt;br /&gt;
Note that date formatting is especially dependent on the system’s regional settings; the example strings here are from my local locale.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|Specifier&lt;br /&gt;
|Type&lt;br /&gt;
|Example (Passed @DateTimeNow)&lt;br /&gt;
|-&lt;br /&gt;
|d&lt;br /&gt;
|Short date&lt;br /&gt;
|10/12/2002&lt;br /&gt;
|-&lt;br /&gt;
|D&lt;br /&gt;
|Long date&lt;br /&gt;
|December 10, 2002&lt;br /&gt;
|-&lt;br /&gt;
|t&lt;br /&gt;
|Short time&lt;br /&gt;
|10:11 PM&lt;br /&gt;
|-&lt;br /&gt;
|T&lt;br /&gt;
|Long time&lt;br /&gt;
|10:11:29 PM&lt;br /&gt;
|-&lt;br /&gt;
|f&lt;br /&gt;
|Full date &amp;amp; time&lt;br /&gt;
|December 10, 2002 10:11 PM&lt;br /&gt;
|-&lt;br /&gt;
|F&lt;br /&gt;
|Full date &amp;amp; time (long)&lt;br /&gt;
|December 10, 2002 10:11:29 PM&lt;br /&gt;
|-&lt;br /&gt;
|g&lt;br /&gt;
|Default date &amp;amp; time&lt;br /&gt;
|10/12/2002 10:11 PM&lt;br /&gt;
|-&lt;br /&gt;
|G&lt;br /&gt;
|Default date &amp;amp; time (long)&lt;br /&gt;
|10/12/2002 10:11:29 PM&lt;br /&gt;
|-&lt;br /&gt;
|M&lt;br /&gt;
|Month day pattern&lt;br /&gt;
|December 10&lt;br /&gt;
|-&lt;br /&gt;
|r&lt;br /&gt;
|RFC1123 date string&lt;br /&gt;
|Tue, 10 Dec 2002 22:11:29 GMT&lt;br /&gt;
|-&lt;br /&gt;
|s&lt;br /&gt;
|Sortable date string&lt;br /&gt;
|2002-12-10T22:11:29&lt;br /&gt;
|-&lt;br /&gt;
|u&lt;br /&gt;
|Universal sortable, local time&lt;br /&gt;
|2002-12-10 22:13:50Z&lt;br /&gt;
|-&lt;br /&gt;
|U&lt;br /&gt;
|Universal sortable, GMT&lt;br /&gt;
|December 11, 2002 3:13:50 AM&lt;br /&gt;
|-&lt;br /&gt;
|Y&lt;br /&gt;
|Year month pattern&lt;br /&gt;
|December, 2002&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ‘U’ specifier seems broken; that string certainly isn’t sortable.&lt;br /&gt;
&lt;br /&gt;
==== Custom date formatting: ====&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|Specifier&lt;br /&gt;
|Type&lt;br /&gt;
|Example&lt;br /&gt;
|Example Output&lt;br /&gt;
|-&lt;br /&gt;
|dd&lt;br /&gt;
|Day&lt;br /&gt;
|{0:dd}&lt;br /&gt;
|10&lt;br /&gt;
|-&lt;br /&gt;
|ddd&lt;br /&gt;
|Day name&lt;br /&gt;
|{0:ddd}&lt;br /&gt;
|Tue&lt;br /&gt;
|-&lt;br /&gt;
|dddd&lt;br /&gt;
|Full day name&lt;br /&gt;
|{0:dddd}&lt;br /&gt;
|Tuesday&lt;br /&gt;
|-&lt;br /&gt;
|f, ff, …&lt;br /&gt;
|Second fractions&lt;br /&gt;
|{0:fff}&lt;br /&gt;
|932&lt;br /&gt;
|-&lt;br /&gt;
|gg, ...&lt;br /&gt;
|Era&lt;br /&gt;
|{0:gg}&lt;br /&gt;
|A.D.&lt;br /&gt;
|-&lt;br /&gt;
|hh&lt;br /&gt;
|2 digit hour&lt;br /&gt;
|{0:hh}&lt;br /&gt;
|10&lt;br /&gt;
|-&lt;br /&gt;
|HH&lt;br /&gt;
|2 digit hour, 24hr format&lt;br /&gt;
|{0:HH}&lt;br /&gt;
|22&lt;br /&gt;
|-&lt;br /&gt;
|mm&lt;br /&gt;
|Minute 00-59&lt;br /&gt;
|{0:mm}&lt;br /&gt;
|38&lt;br /&gt;
|-&lt;br /&gt;
|MM&lt;br /&gt;
|Month 01-12&lt;br /&gt;
|{0:MM}&lt;br /&gt;
|12&lt;br /&gt;
|-&lt;br /&gt;
|MMM&lt;br /&gt;
|Month abbreviation&lt;br /&gt;
|{0:MMM}&lt;br /&gt;
|Dec&lt;br /&gt;
|-&lt;br /&gt;
|MMMM&lt;br /&gt;
|Full month name&lt;br /&gt;
|{0:MMMM}&lt;br /&gt;
|December&lt;br /&gt;
|-&lt;br /&gt;
|ss&lt;br /&gt;
|Seconds 00-59&lt;br /&gt;
|{0:ss}&lt;br /&gt;
|46&lt;br /&gt;
|-&lt;br /&gt;
|tt&lt;br /&gt;
|AM or PM&lt;br /&gt;
|{0:tt}&lt;br /&gt;
|PM&lt;br /&gt;
|-&lt;br /&gt;
|yy&lt;br /&gt;
|Year, 2 digits&lt;br /&gt;
|{0:yy}&lt;br /&gt;
|02&lt;br /&gt;
|-&lt;br /&gt;
|yyyy&lt;br /&gt;
|Year&lt;br /&gt;
|{0:yyyy}&lt;br /&gt;
|2002&lt;br /&gt;
|-&lt;br /&gt;
|zz&lt;br /&gt;
|Timezone offset, 2 digits&lt;br /&gt;
|{0:zz}&lt;br /&gt;
|-05&lt;br /&gt;
|-&lt;br /&gt;
|zzz&lt;br /&gt;
|Full timezone offset&lt;br /&gt;
|{0:zzz}&lt;br /&gt;
|-05:00&lt;br /&gt;
|-&lt;br /&gt;
|:&lt;br /&gt;
|Separator&lt;br /&gt;
|{0:hh:mm:ss}&lt;br /&gt;
|10:43:20&lt;br /&gt;
|-&lt;br /&gt;
|/&lt;br /&gt;
|Separator&lt;br /&gt;
|{0:dd/MM/yyyy}&lt;br /&gt;
|10/12/2002&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Enumerations ====&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;left&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|Specifier&lt;br /&gt;
|Type&lt;br /&gt;
|-&lt;br /&gt;
|g&lt;br /&gt;
|Default (Flag names if available, otherwise decimal)&lt;br /&gt;
|-&lt;br /&gt;
|f&lt;br /&gt;
|Flags always&lt;br /&gt;
|-&lt;br /&gt;
|d&lt;br /&gt;
|Integer always&lt;br /&gt;
|-&lt;br /&gt;
|x&lt;br /&gt;
|Eight digit hex.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Some Examples ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
Printf(&amp;quot;{0:$#,##0.00;($#,##0.00);Zero}&amp;quot;, 1243.50); // prints 1,243.50&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
Printf(&amp;quot;{0:(###) ###-####}&amp;quot;, 8005551212); // prints (800) 555-1212&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== How do I show numbers with 5 fixed digits with leading zeroes =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$num1 = 123;&lt;br /&gt;
$num2 = 45;&lt;br /&gt;
$num3 = 123456;&lt;br /&gt;
&lt;br /&gt;
Printf(&amp;quot;{0:00000}\n&amp;quot;, (int)$num1); // &amp;quot;00123&amp;quot;&lt;br /&gt;
Printf(&amp;quot;{0:00000}\n&amp;quot;, (int)$num2); // &amp;quot;00045&amp;quot;&lt;br /&gt;
Printf(&amp;quot;{0:00000}\n&amp;quot;, (int)$num3); // &amp;quot;123456&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
Printf(&amp;quot;{0:d5}\n&amp;quot;, (int)$num1); // &amp;quot;00123&amp;quot;&lt;br /&gt;
Printf(&amp;quot;{0:d5}\n&amp;quot;, (int)$num2); // &amp;quot;00045&amp;quot;&lt;br /&gt;
Printf(&amp;quot;{0:d5}\n&amp;quot;, (int)$num3); // &amp;quot;123456&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Substitute a string for a value =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
Printf(&amp;quot;{0:yes;;no}\n&amp;quot;, (int)1); // This will print &amp;quot;no&amp;quot; if value is 0, &amp;quot;yes&amp;quot; if value is 1.&lt;br /&gt;
Printf(&amp;quot;{0:yes;;no}\n&amp;quot;, (int)0); // This will print &amp;quot;no&amp;quot; if value is 0, &amp;quot;yes&amp;quot; if value is 1.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== How to format as percentage without having the number multiplied by 100 =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
Printf(&amp;quot;{0:##.00'%}\n&amp;quot;, 1.23); // This will yield &amp;quot;1.23%&amp;quot;.&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== How to use curly brackets within a formatted number =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
// Doubling them escapes them. For example:&lt;br /&gt;
Printf(&amp;quot;{{SomeString}}={0}&amp;quot;,&amp;quot;Hello&amp;quot;); // will produce: &amp;quot;{SomeString}=Hellow&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== What’s a good way to format currency =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$val = 4219.6;&lt;br /&gt;
Printf(&amp;quot;{0:$#,#.00;Call Us;Call Us}&amp;quot;, $val);&lt;br /&gt;
// This will return &amp;quot;$4,219.60&amp;quot;. The .00 will force 2 decimals and the “;Call Us;Call Us” to show the text “Call Us” in place of negative and null values respectively. (Just in case)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== How to format an integer, with commas for thousands =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
Printf(&amp;quot;{0:#,0}&amp;quot;, (int)7770000); // 7,770,000&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== How to format a phone number to look like 800.555.1212 =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$tmp = SPrintf(&amp;quot;{0:###-###-####}&amp;quot;, &amp;quot;8005551212&amp;quot;);&lt;br /&gt;
$result = Replace($tmp, &amp;quot;-&amp;quot;,&amp;quot;.&amp;quot;);&lt;br /&gt;
println($result); // Prints 800.555.1212&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You could do it in one go example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
println(Replace(SPrintf(&amp;quot;{0:###-###-####}&amp;quot;, &amp;quot;8005551212&amp;quot;), &amp;quot;-&amp;quot;,&amp;quot;.&amp;quot;)); // Prints 800.555.1212&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Convert a number with a thousand separator to an int =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$num = &amp;quot;1,000,000&amp;quot;;&lt;br /&gt;
$val = (int)Replace($num, &amp;quot;,&amp;quot;, &amp;quot;&amp;quot;);&lt;br /&gt;
println($val); // Prints 1000000 and $val is now an int&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
===== Convert a number with a thousand separator to a double =====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$num = &amp;quot;1,000,000&amp;quot;;&lt;br /&gt;
$val = (double)Replace($num, &amp;quot;,&amp;quot;, &amp;quot;&amp;quot;);&lt;br /&gt;
println($val); // Prints 1000000 and $val is now an double&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== How to convert from currency back to a number =====&lt;br /&gt;
&lt;br /&gt;
This is not the best way to do it but i suppose it will do for now&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$currency = 1337;&lt;br /&gt;
$str = SPrintf(&amp;quot;{0:c}&amp;quot;, $currency); // Currency converted to string&lt;br /&gt;
$back = Replace(Replace(Replace($str, @CURRENCY, &amp;quot;&amp;quot;), &amp;quot;,&amp;quot;, &amp;quot;&amp;quot;), &amp;quot;.&amp;quot;, &amp;quot;&amp;quot;); // Currency converted back to string&lt;br /&gt;
println($str); // Print the currency&lt;br /&gt;
println($back); // Print the currency converted back to string&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
The console supports printing unicode however it's also possible that your choice of Console font does not support that particular character. Click on the Windows Toolbar Menu (icon like C:.) and select Properties -&amp;gt; Font. Try some other fonts to see if they display your character properly.&lt;br /&gt;
&lt;br /&gt;
Warning: If you expect to use int, byte, float etc in the params then you must cast it as such for example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$myint = 100;&lt;br /&gt;
$val = SPrintf(&amp;quot;Value is 0x'{0:x}'&amp;quot;, (int)$myint); // The (int) will only take in $myint&lt;br /&gt;
&lt;br /&gt;
$myint = 100;&lt;br /&gt;
$myint2 = 100;&lt;br /&gt;
$val = SPrintf(&amp;quot;Value is 0x'{0:x}'&amp;quot;, (int)($myint + $myint2)); // The (int) will now take in $myint AND $myint2&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Note how $myint was cast as an int? using (int)$myint this is vital since if you dont do that it might send a string or a float you never really know with $variables so its best to cast it.&lt;br /&gt;
&lt;br /&gt;
There is an alternative method example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$myint = 100;&lt;br /&gt;
$val = SPrintf(&amp;quot;Value is 0x'{0:x}'&amp;quot;, int($myint));&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Its up to you to decide which one to use.&lt;br /&gt;
&lt;br /&gt;
If you wish to capture the output of Printf to create strings:&lt;br /&gt;
&lt;br /&gt;
Go see [[Core Function SPrintf|SPrintf( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt;... )]] to Printf to strings.&lt;br /&gt;
&lt;br /&gt;
Anything thats valid for Printf to print to console window is also valid for SPrintf to use to create strings.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
Printf(&amp;quot;Value is 0x'{0:x}'&amp;quot;, (int)100) ; Prints 0x64 since the {0:x} is telling it to place param 0 as :x meaning hex&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Println</id>
		<title>Core Function Println</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Println"/>
				<updated>2011-12-04T19:50:25Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
Println( &amp;lt;expression&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Prints an expressions string value to the console window and inserts a newline character at the end&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== Expression ====&lt;br /&gt;
&lt;br /&gt;
The expression to print.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
None&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
The console supports printing Unicode however it's also possible that your choice of Console font does not support that particular character. Click on the Windows Toolbar Menu (icon like C:.) and select Properties -&amp;gt; Font. Try some other fonts to see if they display your character properly.&lt;br /&gt;
&lt;br /&gt;
All values including Ints will be printed as if it was a string.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
println(&amp;quot;Line 1&amp;quot;);&lt;br /&gt;
println(&amp;quot;Line 2&amp;quot;);&lt;br /&gt;
println(&amp;quot;Line 3&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Print</id>
		<title>Core Function Print</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Print"/>
				<updated>2011-12-04T19:49:52Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
Print( &amp;lt;expression&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Prints an expressions string value to the console window&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== Expression ====&lt;br /&gt;
&lt;br /&gt;
The expression to print.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
None&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
The console supports printing Unicode however it's also possible that your choice of Console font does not support that particular character. Click on the Windows Toolbar Menu (icon like C:.) and select Properties -&amp;gt; Font. Try some other fonts to see if they display your character properly.&lt;br /&gt;
&lt;br /&gt;
All values including Ints will be printed as if it was a string.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
print(&amp;quot;Testy&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Regex_Match</id>
		<title>Core Function Regex Match</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Regex_Match"/>
				<updated>2011-12-04T19:49:16Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Expression&amp;gt; =~ m/pattern/flags&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Match a string to a regular expression pattern and check if it matches and optionally return captured groups&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== Expression ====&lt;br /&gt;
&lt;br /&gt;
Any valid expression that is a string.&lt;br /&gt;
&lt;br /&gt;
==== pattern ====&lt;br /&gt;
&lt;br /&gt;
The regular expression pattern to match.&lt;br /&gt;
&lt;br /&gt;
==== flags ====&lt;br /&gt;
&lt;br /&gt;
Optional; The flags to use in the pattern.&lt;br /&gt;
&lt;br /&gt;
i = Ignore case.&lt;br /&gt;
&lt;br /&gt;
m = Treat the string as multiple lines.&lt;br /&gt;
&lt;br /&gt;
s = Treat the string as a single line.&lt;br /&gt;
&lt;br /&gt;
o = Do not recompile the regular expression after the first compile (Improves speed of your matches if you run the pattern many times).&lt;br /&gt;
&lt;br /&gt;
g = Match all occurrences of the pattern in the string (Default is only match the first).&lt;br /&gt;
&lt;br /&gt;
d = Return a single dimension array when using flag &amp;quot;g&amp;quot; (Default is to return a multidimensional array).&lt;br /&gt;
&lt;br /&gt;
Note - If flag &amp;quot;g&amp;quot; is used the $_rg array will contain all matches from first to last it will not contain the text it matched it will only contain the matches, However if &amp;quot;g&amp;quot; is not used then the first element will be the matched text followed by all the matched groups 1 2 3 4 etc.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns 1 if the match was successful.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns 0.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
Note - The below is only for single matches not flag &amp;quot;g&amp;quot; matches.&lt;br /&gt;
&lt;br /&gt;
If a regular expression pattern is matched correctly and it has capture groups in the pattern the groups will be set to local variables for example:&lt;br /&gt;
&lt;br /&gt;
Group 0 will be $0.&lt;br /&gt;
&lt;br /&gt;
Group 1 will be $1.&lt;br /&gt;
&lt;br /&gt;
Group 2 will be $2.&lt;br /&gt;
&lt;br /&gt;
And so on.&lt;br /&gt;
&lt;br /&gt;
Of course captured NAMED groups will also be returned as follows:&lt;br /&gt;
&lt;br /&gt;
Named group &amp;quot;Test&amp;quot; will be $_rg[&amp;quot;Test&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
Named group &amp;quot;Moo&amp;quot; will be $_rg[&amp;quot;Moo&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
Named group &amp;quot;Cat&amp;quot; will be $_rg[&amp;quot;Cat&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
And so on.&lt;br /&gt;
&lt;br /&gt;
After each regular expression match all capture groups from the previous match will be deleted so its best to copy them if you intend to keep using them.&lt;br /&gt;
&lt;br /&gt;
==== Regular expressions ====&lt;br /&gt;
&lt;br /&gt;
Regular expression notation is a compact way of specifying a pattern for strings that can be searched. Regular expressions are character strings in which plain text characters indicate what text should exist in the target string, and a some characters are given special meanings to indicate what variability is allowed in the target string. AutoIt regular expressions are normally case-sensitive.&lt;br /&gt;
&lt;br /&gt;
Regular expressions are constructed of one or more of the following simple regular expression specifiers. If the character is not in the following table, then it will match only itself.&lt;br /&gt;
&lt;br /&gt;
Repeating characters (*, +, ?, {...} ) will try to match the largest set possible, which allows the following characters to match as well, unless followed immediately by a question mark; then it will find the smallest pattern that allows the following characters to match as well.&lt;br /&gt;
&lt;br /&gt;
Nested groups are allowed, but keep in mind that all the groups, except non-capturing groups, assign to the returned array, with the outer groups assigning after the inner groups.&lt;br /&gt;
&lt;br /&gt;
===== Matching Characters =====&lt;br /&gt;
&lt;br /&gt;
* [ ... ] &lt;br /&gt;
Match any character in the set. e.g. [aeiou] matches any lower-case vowel. A contiguous set can be defined using a dash between the starting and ending characters. e.g. [a-z] matches any lower case character. To include a dash (-) in a set, use it as the first or last character of the set. To include a closing bracket in a set, use it as the first character of the set. e.g. [][] will match either [ or ]. Note that special characters do not retain their special meanings inside a set, with the exception of \\, \^, \-,\[ and \] match the escaped character inside a set. &lt;br /&gt;
* [^ ... ] &lt;br /&gt;
Match any character not in the set. e.g. [^0-9] matches any non-digit. To include a caret (^) in a set, put it after the beginning of the set or escape it (\^). &lt;br /&gt;
* [:class:]&lt;br /&gt;
Match a character in the given class of characters. Valid classes are: alpha (any alphabetic character), alnum (any alphanumeric character), lower (any lower-case letter), upper (any upper-case letter), digit (any decimal digit 0-9), xdigit (any hexadecimal digit, 0-9, A-F, a-f), space (any white space character), blank (only a space or tab), print (any printable character), graph (any printable character except spaces), cntrl (any control character [ascii 127 or &amp;lt;32]) or punct (any punctuation character). So [0-9] is equivalent to [:digit:]. &lt;br /&gt;
* [^:class:]&lt;br /&gt;
Match any character not in the class, but only if the first character. &lt;br /&gt;
* ( ... )&lt;br /&gt;
Group. The elements in the group are treated in order and can be repeated together. e.g. (ab)+ will match &amp;quot;ab&amp;quot; or &amp;quot;abab&amp;quot;, but not &amp;quot;aba&amp;quot;. A group will also store the text matched for use in back-references and in the array returned by the function, depending on flag value. &lt;br /&gt;
* (?i)&lt;br /&gt;
Case-insensitivity flag. This does not operate as a group. It tells the regular expression engine to do case-insensitive matching from that point on. &lt;br /&gt;
* (?-i) (default)&lt;br /&gt;
Case-sensitivity flag. This does not operate as a group. It tells the regular expression engine to do case-sensitive matching from that point on. &lt;br /&gt;
* (?i ... )&lt;br /&gt;
Case-insensitive group. Behaves just like a normal group, but performs case-insensitive matches within the group. &lt;br /&gt;
* (?-i ... )&lt;br /&gt;
Case-sensitive group. Behaves just like a normal group, but performs case-sensitive matches within the group. Primarily for use after (-i) flag or inside a case-insensitive group. &lt;br /&gt;
* (?: ... )&lt;br /&gt;
Non-capturing group. Behaves just like a normal group, but does not record the matching characters in the array nor can the matched text be used for back-referencing. &lt;br /&gt;
* (?i: ... )&lt;br /&gt;
Case-insensitive non-capturing group. Behaves just like a non-capturing group, but performs case-insensitive matches within the group. &lt;br /&gt;
* (?-i: ... )&lt;br /&gt;
Case-sensitive non-capturing group. Behaves just like a non-capturing group, but performs case-sensitive matches within the group. &lt;br /&gt;
* (?m)&lt;br /&gt;
^ and $ match newlines within data. &lt;br /&gt;
* (?s)&lt;br /&gt;
. matches anything including newline. (by default &amp;quot;.&amp;quot; don't match newline) &lt;br /&gt;
* (?x)&lt;br /&gt;
Ignore white space and # comments. &lt;br /&gt;
* (?U)&lt;br /&gt;
Invert greediness of quantifiers. &lt;br /&gt;
* .&lt;br /&gt;
Match any single character (except newline). &lt;br /&gt;
* |&lt;br /&gt;
Or. The expression on one side or the other can be matched. &lt;br /&gt;
* \&lt;br /&gt;
Escape a special character (have it match the actual character) or introduce a special character type (see below). &lt;br /&gt;
* \\&lt;br /&gt;
Match an actual backslash (\). &lt;br /&gt;
* \a&lt;br /&gt;
Alarm, that is, the BEL character (chr(7)). &lt;br /&gt;
* \A&lt;br /&gt;
Match only at beginning of string. &lt;br /&gt;
* \b&lt;br /&gt;
Matches at a word boundary. &lt;br /&gt;
* \B&lt;br /&gt;
Matches when not at a word boundary. &lt;br /&gt;
* \c&lt;br /&gt;
Match a control character, based on the next character. For example, \cM matches ctrl-M. &lt;br /&gt;
* \d&lt;br /&gt;
Match any digit (0-9). &lt;br /&gt;
* \D&lt;br /&gt;
Match any non-digit. &lt;br /&gt;
* \e&lt;br /&gt;
Match an escape character (chr(27)). &lt;br /&gt;
* \E&lt;br /&gt;
end case modification. &lt;br /&gt;
* \f&lt;br /&gt;
Match an form feed character (chr(12)). &lt;br /&gt;
* \h&lt;br /&gt;
any horizontal white space character. &lt;br /&gt;
* \H&lt;br /&gt;
any character that is not a horizontal white space character. &lt;br /&gt;
* \n&lt;br /&gt;
Match a linefeed (@LF, chr(10)). &lt;br /&gt;
* \Q&lt;br /&gt;
quote (disable) pattern meta characters till \E. &lt;br /&gt;
* \r&lt;br /&gt;
Match a carriage return (@CR, chr(13)). &lt;br /&gt;
* \s&lt;br /&gt;
Match any white space character: Chr(9) through Chr(13) which are Horizontal Tab, Line Feed, Vertical Tab, Form Feed, and Carriage Return, and the standard space ( Chr(32) ). &lt;br /&gt;
* \S&lt;br /&gt;
Match any non-white space character. &lt;br /&gt;
* \t&lt;br /&gt;
Match a tab character (chr(9)). &lt;br /&gt;
* \v&lt;br /&gt;
any vertical white space character. &lt;br /&gt;
* \V&lt;br /&gt;
any character that is not a vertical white space character. &lt;br /&gt;
* \w&lt;br /&gt;
Match any &amp;quot;word&amp;quot; character: a-z, A-Z, 0-9 or underscore (_). &lt;br /&gt;
* \W&lt;br /&gt;
Match any non-word character. &lt;br /&gt;
* \###&lt;br /&gt;
Match the ascii character whose code is given or back-reference. Can be up to 3 octal digits.&lt;br /&gt;
Match back-reference if found. Match the prior group number given exactly. For example, ([:alpha:])\1 would match a double letter. &lt;br /&gt;
* \x##&lt;br /&gt;
Match the ascii character whose code is given in hexadecimal. Can be up to 2 digits. &lt;br /&gt;
* \z&lt;br /&gt;
Match only at end of string. &lt;br /&gt;
* \Z&lt;br /&gt;
Match only at end of string, or before newline at the end.&lt;br /&gt;
&lt;br /&gt;
===== Repeating Characters =====&lt;br /&gt;
&lt;br /&gt;
* {x}&lt;br /&gt;
Repeat the previous character, set or group exactly x times. &lt;br /&gt;
* {x,}&lt;br /&gt;
Repeat the previous character, set or group at least x times. &lt;br /&gt;
* {0,x}&lt;br /&gt;
Repeat the previous character, set or group at most x times. &lt;br /&gt;
* {x, y}&lt;br /&gt;
Repeat the previous character, set or group between x and y times, inclusive. &lt;br /&gt;
* *&lt;br /&gt;
Repeat the previous character, set or group 0 or more times. Equivalent to {0,} &lt;br /&gt;
* +&lt;br /&gt;
Repeat the previous character, set or group 1 or more times. Equivalent to {1,} &lt;br /&gt;
* ?&lt;br /&gt;
The previous character, set or group may or may not appear. Equivalent to {0, 1} &lt;br /&gt;
* ?&lt;br /&gt;
(after a repeating character) Find the smallest match instead of the largest.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
Check if a string matches a given pattern :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
// Set a string to parse&lt;br /&gt;
$str = &amp;quot;Hello, World!&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
if( $str =~ m/\w+,\s+\w+!/ )&lt;br /&gt;
{&lt;br /&gt;
	println(&amp;quot;True&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
	println(&amp;quot;False&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Check if a string matches a given pattern case insensitive :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
// Set a string to parse&lt;br /&gt;
$str = &amp;quot;Hello, World!&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
if( $str =~ m/hello,\s+WORLD!/i )&lt;br /&gt;
{&lt;br /&gt;
	println(&amp;quot;True&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
	println(&amp;quot;False&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Simple matching a string and returning 2 captured groups :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
// Set a string to parse&lt;br /&gt;
$str = 'Account Test Credits 777';&lt;br /&gt;
&lt;br /&gt;
// Do the regex match&lt;br /&gt;
$str =~ m/Account\s+(\w+)\s+\w+\s+(\d+)/i;&lt;br /&gt;
&lt;br /&gt;
println(&amp;quot;Account '$1' Credits '$2'&amp;quot;);&lt;br /&gt;
// Prints&lt;br /&gt;
// Account 'Test' Credits '777'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Simple matching a string and returning 2 captured groups and saving the variables:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
// Set a string to parse&lt;br /&gt;
$str = 'Account Test Credits 777';&lt;br /&gt;
&lt;br /&gt;
// Do the regex match&lt;br /&gt;
$str =~ m/Account\s+(\w+)\s+\w+\s+(\d+)/i;&lt;br /&gt;
&lt;br /&gt;
$Account = $1;&lt;br /&gt;
$Credits = $2;&lt;br /&gt;
&lt;br /&gt;
println(&amp;quot;Account '$Account' Credits '$Credits'&amp;quot;);&lt;br /&gt;
// Prints&lt;br /&gt;
// Account 'Test' Credits '777'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Same thing but this time parsing multiple lines of accounts :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
// Set a string to parse&lt;br /&gt;
$str = 'Account Test Credits 777' . @CRLF;&lt;br /&gt;
$str .= 'Account FoX Credits 1337' . @CRLF;&lt;br /&gt;
$str .= 'Account Cat Credits 100' . @CRLF;&lt;br /&gt;
$str .= 'Account Dog Credits 50' . @CRLF;&lt;br /&gt;
&lt;br /&gt;
// Do the regex match&lt;br /&gt;
$str =~ m/Account\s+(\w+)\s+\w+\s+(\d+)/ig;&lt;br /&gt;
&lt;br /&gt;
// Print them all&lt;br /&gt;
for($i = 0; $i &amp;lt; @Groups; $i++)&lt;br /&gt;
{&lt;br /&gt;
	$Account = $_rg[$i, 1];&lt;br /&gt;
	$Credits = $_rg[$i, 2];&lt;br /&gt;
	println(&amp;quot;Match ($i) |  Account '&amp;quot; . $Account . &amp;quot;' | Credits '&amp;quot; . $Credits . &amp;quot;'&amp;quot; );&lt;br /&gt;
}&lt;br /&gt;
// Prints&lt;br /&gt;
// Match (0) |  Account 'Test' | Credits '777'&lt;br /&gt;
// Match (1) |  Account 'FoX' | Credits '1337'&lt;br /&gt;
// Match (2) |  Account 'Cat' | Credits '100'&lt;br /&gt;
// Match (3) |  Account 'Dog' | Credits '50'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Case insensitive match on a string to capture all possible matches and return them as a multi-dimensional array :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
// Set a string to parse&lt;br /&gt;
$str = '&amp;lt;test&amp;gt;a&amp;lt;/test&amp;gt; &amp;lt;test&amp;gt;b&amp;lt;/test&amp;gt; &amp;lt;test&amp;gt;c&amp;lt;/Test&amp;gt;';&lt;br /&gt;
&lt;br /&gt;
// Do the regex match&lt;br /&gt;
$str =~ m/&amp;lt;(?i)test&amp;gt;(.*?)&amp;lt;\/(?i)test&amp;gt;/ig;&lt;br /&gt;
&lt;br /&gt;
// How many groups did we find?&lt;br /&gt;
println(&amp;quot;Found groups: &amp;quot; . @Groups);&lt;br /&gt;
&lt;br /&gt;
// Print them all&lt;br /&gt;
for($i = 0; $i &amp;lt; @Groups; $i++)&lt;br /&gt;
{&lt;br /&gt;
	$match = $_rg[$i];&lt;br /&gt;
	println(&amp;quot;Match ($i) |  Text '&amp;quot; . $match[0] . &amp;quot;' | Group text '&amp;quot; . $match[1] . &amp;quot;'&amp;quot; );&lt;br /&gt;
}&lt;br /&gt;
// Prints&lt;br /&gt;
// Found groups: 3&lt;br /&gt;
// Match (0) |  Text '&amp;lt;test&amp;gt;a&amp;lt;/test&amp;gt;' | Group text 'a'&lt;br /&gt;
// Match (1) |  Text '&amp;lt;test&amp;gt;b&amp;lt;/test&amp;gt;' | Group text 'b'&lt;br /&gt;
// Match (2) |  Text '&amp;lt;test&amp;gt;c&amp;lt;/Test&amp;gt;' | Group text 'c'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Case insensitive match on a string to capture all possible matches and return them as a single dimension array :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
// Set a string to parse&lt;br /&gt;
$str = '&amp;lt;test&amp;gt;a&amp;lt;\/test&amp;gt; &amp;lt;test&amp;gt;b&amp;lt;/test&amp;gt; &amp;lt;test&amp;gt;c&amp;lt;/Test&amp;gt;';&lt;br /&gt;
&lt;br /&gt;
// Do the regex match&lt;br /&gt;
$str =~ m/&amp;lt;(?i)test&amp;gt;(.*?)&amp;lt;/(?i)test&amp;gt;/igd;&lt;br /&gt;
&lt;br /&gt;
// How many groups did we find?&lt;br /&gt;
println(&amp;quot;Found groups: &amp;quot; . @Groups);&lt;br /&gt;
&lt;br /&gt;
// Print them all&lt;br /&gt;
for($i = 0; $i &amp;lt; @Groups; $i++)&lt;br /&gt;
{&lt;br /&gt;
	println(&amp;quot;Match ($i) |  Group text '&amp;quot; . $_rg[$i] . &amp;quot;'&amp;quot; );&lt;br /&gt;
}&lt;br /&gt;
// Prints&lt;br /&gt;
// Found groups: 3&lt;br /&gt;
// Match (0) |  Group text 'a'&lt;br /&gt;
// Match (1) |  Group text 'b'&lt;br /&gt;
// Match (2) |  Group text 'c'&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Regex_Replace</id>
		<title>Core Function Regex Replace</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Regex_Replace"/>
				<updated>2011-12-04T19:48:05Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;Expression&amp;gt; =~ s/pattern/replacement/flags&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Replace parts of a string using a regular expression pattern and optionally executing functions on the matched groups&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== Expression ====&lt;br /&gt;
&lt;br /&gt;
Any valid expression that is a string.&lt;br /&gt;
&lt;br /&gt;
==== pattern ====&lt;br /&gt;
&lt;br /&gt;
The regular expression pattern to match.&lt;br /&gt;
&lt;br /&gt;
==== pattern ====&lt;br /&gt;
&lt;br /&gt;
A string to replace the match(es) with.&lt;br /&gt;
&lt;br /&gt;
==== flags ====&lt;br /&gt;
&lt;br /&gt;
Optional; The flags to use in the pattern.&lt;br /&gt;
&lt;br /&gt;
i = Ignore case.&lt;br /&gt;
&lt;br /&gt;
m = Treat the string as multiple lines.&lt;br /&gt;
&lt;br /&gt;
s = Treat the string as a single line.&lt;br /&gt;
&lt;br /&gt;
o = Do not recompile the regular expression after the first compile (Improves speed of your matches if you run the pattern many times).&lt;br /&gt;
&lt;br /&gt;
g = Match all occurrences of the pattern in the string (Default is only match the first).&lt;br /&gt;
&lt;br /&gt;
e = Treat the replace string as actual Sputnik code similar to Eval().&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns the modified string.&lt;br /&gt;
&lt;br /&gt;
Failure: Returns an empty string.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
See regex match for details on regex.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
A simple search replace&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
// A string to use&lt;br /&gt;
$var = &amp;quot;That cat is cute but this cat is not&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// Replace cat with dog&lt;br /&gt;
$var =~ s/cat/dog/;&lt;br /&gt;
&lt;br /&gt;
println( $var );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Same again but this time replace all using the &amp;quot;g&amp;quot; switch&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
// A string to use&lt;br /&gt;
$var = &amp;quot;That cat is cute but this cat is not&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// Replace cat with dog&lt;br /&gt;
$var =~ s/cat/dog/g;&lt;br /&gt;
&lt;br /&gt;
println( $var );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Same again but this time ignore case using the &amp;quot;i&amp;quot; switch&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
// A string to use&lt;br /&gt;
$var = &amp;quot;That cat is cute but this Cat is not&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// Replace cat with dog&lt;br /&gt;
$var =~ s/cat/dog/gi;&lt;br /&gt;
&lt;br /&gt;
println( $var );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Search the string and reverse the order so stuff after the = now comes before it&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
// A string to use&lt;br /&gt;
$var =  &amp;quot;One=100\n&amp;quot;;&lt;br /&gt;
$var .= &amp;quot;Two=200\n&amp;quot;;&lt;br /&gt;
$var .= &amp;quot;Three=300\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
$var =~ s/(\w+)=(\w+)/$2=$1/gi;&lt;br /&gt;
&lt;br /&gt;
println( $var );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Execute the replace as a function using the &amp;quot;e&amp;quot; switch and increase all numbers in the string by 1&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
// A string to use&lt;br /&gt;
$var =  &amp;quot;10 20 30 40 50 60 70 80 90 100&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
$var =~ s/(\d+)/$1++/egi;&lt;br /&gt;
&lt;br /&gt;
println( $var ); // Prints 11 21 31 41 51 61 71 81 91 101&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Take a string containing floating point numbers and convert them to integers using floor()&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
// A string to use&lt;br /&gt;
$var =  &amp;quot;10.2 300.45 133.77&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
$var =~ s/(\d+\.\d*)/floor($1)/egi; // Prints 10 300 133&lt;br /&gt;
&lt;br /&gt;
println( $var );&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Convert a string to hex and back again using switch &amp;quot;e&amp;quot; on a regex to decode the hex&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$hex = Unpack(&amp;quot;*H&amp;quot;, &amp;quot;Hello World!&amp;quot;, 1);&lt;br /&gt;
println(&amp;quot;Hex String: &amp;quot; . $hex);&lt;br /&gt;
$hex =~ s/([\dA-Fa-f][\dA-Fa-f])/Chr(Dec($1))/ego;&lt;br /&gt;
println(&amp;quot;Normal String: &amp;quot; . $hex);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here we use regex to decode a QUERY_STRING and resolve the key, values into a hashmap Request[] &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
Glob $Request = array();&lt;br /&gt;
{&lt;br /&gt;
	$QueryString = EnvGet(&amp;quot;QUERY_STRING&amp;quot;);&lt;br /&gt;
	$QueryList = Split($QueryString, '&amp;amp;');&lt;br /&gt;
	Foreach($QueryList as $i)&lt;br /&gt;
	{&lt;br /&gt;
		List ( $Key, $Value ) = Split($i, '=');&lt;br /&gt;
		$Value =~ s/%([a-fA-F0-9][a-fA-F0-9])/Chr(Dec($1))/ego;&lt;br /&gt;
		$Value =~ s/\+/ /gi; &lt;br /&gt;
		$Value =~ s/\&amp;lt;/&amp;amp;lt;/gi; &lt;br /&gt;
		$Value =~ s/\&amp;gt;/&amp;amp;gt;/gi; &lt;br /&gt;
		$Request[$Key] = $Value;&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/What_is_Sputnik</id>
		<title>What is Sputnik</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/What_is_Sputnik"/>
				<updated>2011-11-30T04:25:47Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sputnik is a somewhat new programming language I (UberFoX) made to bridge the gap between having to use 3 languages (AutoIt, PHP, Perl) it was intended to be just used by me to do some scripting but i see no reason not to share if others want to try it too.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
The idea was to get all macro functionality of AutoIt with ease and what not of Perl with the easier syntax of PHP and its' nice built-in functions.&lt;br /&gt;
&lt;br /&gt;
Obviously, making a programming language or even a small scripting language is a great effort and forever ongoing!&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
The result so far, is Sputnik: a language with a pseudo Perl/PHP syntax with macro/keyboard/mouse/hotkey functionality of AutoIt, regexes similar to Perl, classes similar to C++, yet simplified and still pretty powerful (supporting multiple inheritance and every operator overload and casting overload), multi-threading, and ability to make GUI programs.&lt;br /&gt;
&lt;br /&gt;
There is still mountains to go, and we are only barely starting with Sputnik.&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
Currently, Sputnik is a bit messy, disorganized, and far from being a 1.0 final version. Sputnik has been developed to around 7% of the final product, and at the moment, there is a long way to go! But, it is useable and if you find any bugs, let us know.&lt;br /&gt;
&lt;br /&gt;
Also, if you like Sputnik and want to know more, let us know.&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_FileOpenDialog</id>
		<title>Core Function FileOpenDialog</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_FileOpenDialog"/>
				<updated>2011-11-28T12:44:48Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: /* options */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
FileOpenDialog ( &amp;lt;title&amp;gt;, &amp;lt;dir&amp;gt;, &amp;lt;filter&amp;gt;, &amp;lt;options&amp;gt;, &amp;lt;default name&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Initiates a Load File Dialog.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== title ====&lt;br /&gt;
&lt;br /&gt;
Title text of the Dialog GUI.&lt;br /&gt;
&lt;br /&gt;
==== dir ====&lt;br /&gt;
&lt;br /&gt;
Initial directory selected in the GUI file tree.&lt;br /&gt;
&lt;br /&gt;
==== filter ====&lt;br /&gt;
&lt;br /&gt;
File type filter such as &amp;quot;All (*.*)&amp;quot; or &amp;quot;Text files (*.txt)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== options ====&lt;br /&gt;
&lt;br /&gt;
Optional;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[optional] Dialog Options: To use more than one option, use a + sign to separate them (eg: 1 + 4).&lt;br /&gt;
  1 = File Must Exist (if user types a filename)&lt;br /&gt;
  2 = Path Must Exist (if user types a path)&lt;br /&gt;
  4 = Allow MultiSelect&lt;br /&gt;
  8 = Prompt to Create New File (if does not exist)&lt;br /&gt;
 16 = Prompt to OverWrite File (see FileSaveDialog)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== default name ====&lt;br /&gt;
&lt;br /&gt;
Optional; File name to suggest to the user to save the file with.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns the full path of the file(s) chosen. Results for multiple selections are &amp;quot;Directory|file1|file2|...&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Failure: Returns empty string. &lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
Separate the file filters with a semicolon as shown in the example.&lt;br /&gt;
&lt;br /&gt;
Note: At this time, multiple groups of filters are not supported.&lt;br /&gt;
&lt;br /&gt;
If default name is given, options must also be given. If none of the options are wanted, use 0 for options.&lt;br /&gt;
&lt;br /&gt;
Special Windows folders (such as &amp;quot;My Documents&amp;quot;) can be sometimes be set as the init dir.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$message = &amp;quot;Hold down Ctrl or Shift to choose multiple files.&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
$var = FileOpenDialog($message, @WinDir, &amp;quot;Images (*.jpg;*.bmp)&amp;quot;, 1 + 4 );&lt;br /&gt;
&lt;br /&gt;
If (!$var)&lt;br /&gt;
{&lt;br /&gt;
    MsgBox(&amp;quot;No File(s) chosen&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
Else&lt;br /&gt;
{&lt;br /&gt;
    $var = Replace($var, &amp;quot;|&amp;quot;, @CRLF);&lt;br /&gt;
    MsgBox(&amp;quot;You chose $var&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_WinKill</id>
		<title>Core Function WinKill</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_WinKill"/>
				<updated>2011-11-28T12:39:34Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: /* Remarks */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
WinKill ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Forces a window to close.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== Title ====&lt;br /&gt;
&lt;br /&gt;
The title of the window.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
None.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
The difference between this function and WinClose is that WinKill will forcibly terminate the window if it doesn't close quickly enough. Consequently, a user might not have time to respond to dialogs prompting the user to save data.&lt;br /&gt;
&lt;br /&gt;
Although WinKill can work on both minimized and hidden windows, some windows (notably Windows Explorer) can only be terminated using WinClose.&lt;br /&gt;
&lt;br /&gt;
See &amp;quot;WinTitleMatchMode&amp;quot; in [[Core Function Opt|Opt]].&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
WinKill(&amp;quot;Untitled - Notepad&amp;quot;, &amp;quot;&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Function_Reference</id>
		<title>Function Reference</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Function_Reference"/>
				<updated>2011-11-28T00:45:46Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: /* Math Functions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Function Reference ==&lt;br /&gt;
&lt;br /&gt;
=== How to create a Function ===&lt;br /&gt;
&lt;br /&gt;
To create your own funtions see the Function page.&lt;br /&gt;
&lt;br /&gt;
* [[User Function|User Defined Functions]]&lt;br /&gt;
&lt;br /&gt;
=== Core Functions ===&lt;br /&gt;
&lt;br /&gt;
==== Language Features ====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function Regex Match|&amp;lt;Expression&amp;gt; =~ m/pattern/flags]] -- Match a string to a regular expression pattern and check if it matches and optionally return captured groups&lt;br /&gt;
* [[Core Function Regex Replace|&amp;lt;Expression&amp;gt; =~ s/pattern/replacement/flags]] -- Replace parts of a string using a regular expression pattern and optionally executing functions on the matched groups&lt;br /&gt;
&lt;br /&gt;
==== Console Functions ====&lt;br /&gt;
* [[Core Function Print|Print( &amp;lt;expression&amp;gt; )]] -- Prints an expressions string value to the console window&lt;br /&gt;
* [[Core Function Println|Println( &amp;lt;expression&amp;gt; )]] -- Prints an expressions string value to the console window and inserts a newline charactor at the end.&lt;br /&gt;
* [[Core Function Printf|Printf( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt;... )]] -- Print a formatted string to the console window&lt;br /&gt;
* [[Core Function Input|Input( &amp;lt;expression&amp;gt; )]] -- Capture a string typed to console window&lt;br /&gt;
* [[Core Function InputC|InputC( &amp;lt;expression&amp;gt; )]] -- Capture a char typed to console window&lt;br /&gt;
* [[Core Function Cls|Cls( )]] -- Clear all text from the console window&lt;br /&gt;
&lt;br /&gt;
==== Multithreading Functions ====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function ThreadCreate|ThreadCreate( &amp;lt;name&amp;gt;, &amp;lt;function&amp;gt; )]] -- Create a new thread and start it off executing a function or some code&lt;br /&gt;
* [[Core Function ThreadSleep|ThreadSleep( &amp;lt;name&amp;gt; )]] -- Freeze a thread and make it sleep&lt;br /&gt;
* [[Core Function ThreadResume|ThreadResume( &amp;lt;name&amp;gt; )]] -- Unfreeze a thread and allow it to continue execution&lt;br /&gt;
* [[Core Function ThreadState|ThreadState( &amp;lt;name&amp;gt; )]] -- Returns state of a thread&lt;br /&gt;
* [[Core Function ThreadKill|ThreadKill( &amp;lt;name&amp;gt; )]] -- Terminate a thread and remove it from the script&lt;br /&gt;
* [[Core Function ThreadExists|ThreadExists( &amp;lt;name&amp;gt; )]] -- Check if a thread exists by this name&lt;br /&gt;
* [[Core Function ThreadName|ThreadName( )]] -- Returns the name of the current thread that is executing this code&lt;br /&gt;
* [[Core Function Threads|Threads( )]] -- Return an array of all threads&lt;br /&gt;
&lt;br /&gt;
==== Variable Type Conversions ====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function Char|Char( &amp;lt;expression&amp;gt; )]] -- Returns the single letter representation of an expression&lt;br /&gt;
* [[Core Function Byte|Byte( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 8-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function SByte|SByte( &amp;lt;expression&amp;gt; )]] -- Returns the signed 8-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Short|Short( &amp;lt;expression&amp;gt; )]] -- Returns the signed 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int16|Int16( &amp;lt;expression&amp;gt; )]] -- Returns the signed 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int32|Int32( &amp;lt;expression&amp;gt; )]] -- Returns the signed 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int|Int( &amp;lt;expression&amp;gt; )]] -- Returns the signed 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int64|Int64( &amp;lt;expression&amp;gt; )]] -- Returns the signed 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Long|Long( &amp;lt;expression&amp;gt; )]] -- Returns the signed 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UShort|UShort( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt16|UInt16( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt32|UInt32( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt|UInt( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt64|UInt64( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function ULong|ULong( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Float|Float( &amp;lt;expression&amp;gt; )]] -- Returns the 32-bit floating point representation of an expression&lt;br /&gt;
* [[Core Function Double|Double( &amp;lt;expression&amp;gt; )]] -- Returns the 64-bit floating point representation of an expression&lt;br /&gt;
* [[Core Function String|String( &amp;lt;expression&amp;gt; )]] -- Returns the String representation of an expression&lt;br /&gt;
&lt;br /&gt;
==== Common Variable Functions ====&lt;br /&gt;
&lt;br /&gt;
===== Misc =====&lt;br /&gt;
* [[Core Function Unset|Unset( $variable )]] -- Delete a variable&lt;br /&gt;
&lt;br /&gt;
===== Hash/Array =====&lt;br /&gt;
* [[Core Function Reset|Reset( $variable )]] -- Reset the current array pointer to the first element&lt;br /&gt;
* [[Core Function Next|Next( $variable )]] -- Set the array pointer to the next element&lt;br /&gt;
* [[Core Function Prev|Prev( $variable )]] -- Set the array pointer to the previous element&lt;br /&gt;
&lt;br /&gt;
===== Type Checking =====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function isVarChar|isVarChar( $variable )]] -- Checks if a variable is a char type&lt;br /&gt;
* [[Core Function isVarByte|isVarByte( $variable )]] -- Checks if a variable is an unsigned 8-bit integer type&lt;br /&gt;
* [[Core Function isVarSByte|isVarSByte( $variable )]] -- Checks if a variable is a signed 8-bit integer type&lt;br /&gt;
* [[Core Function isVarShort|isVarShort( $variable )]] -- Checks if a variable is a signed 16-bit integer type&lt;br /&gt;
* [[Core Function isVarInt16|isVarInt16( $variable )]] -- Checks if a variable is a signed 16-bit integer type&lt;br /&gt;
* [[Core Function isVarInt|isVarInt( $variable )]] -- Checks if a variable is a signed 32-bit integer type&lt;br /&gt;
* [[Core Function isVarInt32|isVarInt32( $variable )]] -- Checks if a variable is a signed 32-bit integer type&lt;br /&gt;
* [[Core Function isVarInt64|isVarInt64( $variable )]] -- Checks if a variable is a signed 64-bit integer type&lt;br /&gt;
* [[Core Function isVarLong|isVarLong( $variable )]] -- Checks if a variable is a signed 64-bit integer type&lt;br /&gt;
* [[Core Function isVarUShort|isVarUShort( $variable )]] -- Checks if a variable is an unsigned 16-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt16|isVarUInt16( $variable )]] -- Checks if a variable is an unsigned 16-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt|isVarUInt( $variable )]] -- Checks if a variable is an unsigned 32-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt32|isVarUInt32( $variable )]] -- Checks if a variable is an unsigned 32-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt64|isVarUInt64( $variable )]] -- Checks if a variable is an unsigned 64-bit integer type&lt;br /&gt;
* [[Core Function isVarULong|isVarULong( $variable )]] -- Checks if a variable is an unsigned 64-bit integer type&lt;br /&gt;
* [[Core Function isVarFloat|isVarFloat( $variable )]] -- Checks if a variable is a single precision floating point type&lt;br /&gt;
* [[Core Function isVarDouble|isVarDouble( $variable )]] -- Checks if a variable is a double precision floating point type&lt;br /&gt;
* [[Core Function isVarString|isVarString( $variable )]] -- Checks if a variable is a string type&lt;br /&gt;
* [[Core Function isVarNumber|isVarNumber( $variable )]] -- Checks if a variable is any integer or float/double type&lt;br /&gt;
* [[Core Function isVarBinary|isVarBinary( $variable )]] -- Checks if a variable is a binary type&lt;br /&gt;
* [[Core Function isVarRef|isVarRef( $variable )]] -- Check if a variable is an reference to another variable&lt;br /&gt;
* [[Core Function isVarArray|isVarArray( $variable )]] -- Check if a variable is an array&lt;br /&gt;
* [[Core Function isVarObj|isVarObj( $variable, &amp;lt;type&amp;gt; )]] -- Check if a variable is an object type (This includes classes, file handles etc)&lt;br /&gt;
* [[Core Function isVarClass|isVarClass( $variable, &amp;lt;type&amp;gt; )]] -- Check if a variable's object type is a class&lt;br /&gt;
* [[Core Function isVarGUI|isVarGUI( $variable )]] -- Check if a variable's object type is a GUI&lt;br /&gt;
* [[Core Function isVarGUIObject|isVarGUIObject( $variable, &amp;lt;type&amp;gt; )]] -- Check if a variable's object type is a GUI Object (Buttons etc)&lt;br /&gt;
&lt;br /&gt;
====== Get Type Directly ======&lt;br /&gt;
* [[Core Function GetVarType|GetVarType( $variable )]] -- Get the common type of a variable&lt;br /&gt;
* [[Core Function GetVarObjType|GetVarObjType( $variable )]] -- Get the common object type of a variable (If it is an object)&lt;br /&gt;
* [[Core Function GetVarGUIObjType|GetVarGUIObjType( $variable )]] -- Get the common object type of a variable (If it is a GUI object)&lt;br /&gt;
&lt;br /&gt;
==== Binary Data Management Functions ====&lt;br /&gt;
* [[Core Function Pack|Pack( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Pack data into a binary array&lt;br /&gt;
* [[Core Function Unpack|Unpack( &amp;lt;expression&amp;gt;, &amp;lt;binary-array&amp;gt; )]] -- Unpack data from a binary array&lt;br /&gt;
* [[Core Function BinaryCreate|BinaryCreate( &amp;lt;size&amp;gt;, &amp;lt;fill&amp;gt; )]] -- Create a new binary variable and its array size and fill data type &lt;br /&gt;
* [[Core Function BinaryClone|BinaryClone( &amp;lt;binary-array&amp;gt; )]] -- Clone a binary variable 100% and return a new binary variable with exactly same data as the old one&lt;br /&gt;
* [[Core Function BinaryWipe|BinaryWipe( &amp;lt;binary-array&amp;gt; )]] -- Wipes a binary variables data 100% and sets the variable to a blank int containing just 0&lt;br /&gt;
* [[Core Function BinaryStr|BinaryStr( &amp;lt;binary-array&amp;gt;, &amp;lt;separator&amp;gt; )]] -- Create a Hex string from a binary array&lt;br /&gt;
* [[Core Function BinaryHex|BinaryHex( &amp;lt;expression&amp;gt; )]] -- Create a binary array from a hex string&lt;br /&gt;
* [[Core Function BinaryLen|BinaryLen( &amp;lt;binary-array&amp;gt; )]] -- Returns the number of bytes in a binary variable&lt;br /&gt;
* [[Core Function BinaryGet|BinaryGet( &amp;lt;binary-array&amp;gt;, &amp;lt;index&amp;gt; )]] -- Get the byte at an index of a binary variable&lt;br /&gt;
* [[Core Function BinarySet|BinarySet( &amp;lt;binary-array&amp;gt;, &amp;lt;index&amp;gt;, &amp;lt;value&amp;gt; )]] -- Set the byte at an index of a binary variable&lt;br /&gt;
* [[Core Function BinaryReverse|BinaryReverse( &amp;lt;binary-array&amp;gt;, &amp;lt;start&amp;gt;, &amp;lt;length&amp;gt; )]] -- Reverse the order bytes a binary variable&lt;br /&gt;
* [[Core Function BinaryMid|BinaryMid( &amp;lt;binary-array&amp;gt;, &amp;lt;start&amp;gt;, &amp;lt;length&amp;gt; )]] -- Create a binary variable by extracting a number of bytes from another binary variable&lt;br /&gt;
* [[Core Function BinaryAppend|BinaryAppend( &amp;lt;binary-array&amp;gt;, &amp;lt;binary-array2&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Append a binary variables data onto the end or beginning of another binary variables data&lt;br /&gt;
* [[Core Function BinaryInsert|BinaryInsert( &amp;lt;binary-array&amp;gt;, &amp;lt;binary-array2&amp;gt;, &amp;lt;index&amp;gt; )]] -- Insert a binary variables data into another binary variable at a specific location&lt;br /&gt;
* [[Core Function BinaryUnshift|BinaryUnshift( &amp;lt;binary-array&amp;gt;, &amp;lt;byte&amp;gt; )]] -- Add a byte to the beginning of a binary variable&lt;br /&gt;
* [[Core Function BinaryPush|BinaryPush( &amp;lt;binary-array&amp;gt;, &amp;lt;byte&amp;gt; )]] -- Add a byte to the end of a binary variable&lt;br /&gt;
* [[Core Function BinaryShift|BinaryShift( &amp;lt;binary-array&amp;gt; )]] -- Delete the first byte from a binary variable&lt;br /&gt;
* [[Core Function BinaryPop|BinaryPop( &amp;lt;binary-array&amp;gt; )]] -- Delete the last byte from a binary variable&lt;br /&gt;
* [[Core Function BinaryResize|BinaryResize( &amp;lt;binary-array&amp;gt;, &amp;lt;size&amp;gt;, &amp;lt;data&amp;gt; )]] -- Resize a binary variables data array&lt;br /&gt;
* [[Core Function BinaryCompress|BinaryCompress( &amp;lt;binary-array&amp;gt; )]] -- Compress a binary variables data&lt;br /&gt;
* [[Core Function BinaryUncompress|BinaryUncompress( &amp;lt;binary-array&amp;gt; )]] -- Uncompress a binary variable data&lt;br /&gt;
* [[Core Function BinarySave|BinarySave( &amp;lt;binary-array&amp;gt;, &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Save a binary variable data to file&lt;br /&gt;
* [[Core Function BinaryLoad|BinaryLoad( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Create a new binary variable by loading binary data from a file&lt;br /&gt;
&lt;br /&gt;
==== Math Functions ====&lt;br /&gt;
* [[Core Function Abs|Abs( &amp;lt;expression&amp;gt; )]] -- Calculates the absolute value of a number&lt;br /&gt;
* [[Core Function ACos|ACos( &amp;lt;expression&amp;gt; )]] -- Calculates the arcCosine of a number&lt;br /&gt;
* [[Core Function ASin|ASin( &amp;lt;expression&amp;gt; )]] -- Calculates the arcsine of a number&lt;br /&gt;
* [[Core Function ATan|ATan( &amp;lt;expression&amp;gt; )]] -- Calculates the arctangent of a number&lt;br /&gt;
* [[Core Function BitAND|BitAND( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt;, &amp;lt;n&amp;gt; )]] -- Performs a bitwise AND operation&lt;br /&gt;
* [[Core Function BitNOT|BitNOT( &amp;lt;expression&amp;gt; )]] -- Performs a bitwise NOT operation&lt;br /&gt;
* [[Core Function BitOR|BitOR( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt;, &amp;lt;n&amp;gt; )]] -- Performs a bitwise OR operation&lt;br /&gt;
* [[Core Function BitROTATE|BitROTATE( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function BitSHIFT|BitSHIFT( &amp;lt;value&amp;gt;, &amp;lt;shift&amp;gt; )]] -- Performs a bit shifting operation&lt;br /&gt;
* [[Core Function BitXOR|BitXOR( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt;, &amp;lt;n&amp;gt; )]] -- Performs a bitwise exclusive OR (XOR) operation&lt;br /&gt;
* [[Core Function Ceiling|Ceiling( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Cos|Cos( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Cosh|Cosh( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Exp|Exp( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Floor|Floor( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Log|Log( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Math|Math( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Max|Max( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; )]] -- Find the greater number and return it&lt;br /&gt;
* [[Core Function Min|Min( &amp;lt;expression&amp;gt; )]] -- Find the lesser number and return it&lt;br /&gt;
* [[Core Function Mod|Mod( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Pow|Pow( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Random|Random( &amp;lt;expression&amp;gt; )]] -- Get a random number from the defined area.&lt;br /&gt;
* [[Core Function Round|Round( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Sin|Sin( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Sinh|Sinh( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Sqrt|Sqrt( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Tan|Tan( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Tanh|Tanh( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Turncate|Turncate( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
==== String Functions ====&lt;br /&gt;
* [[Core Function Asc|Asc( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function AscW|AscW( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Chr|Chr( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function ChrW|ChrW( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Contains|Contains( &amp;lt;sting&amp;gt;, &amp;lt;string&amp;gt;, &amp;lt;casesense&amp;gt;)]] -- Check is string contains sub string&lt;br /&gt;
* [[Core Function Compare|Compare( &amp;lt;string&amp;gt;, &amp;lt;string&amp;gt; )]] -- Compare two strings to each other&lt;br /&gt;
* [[Core Function Dec|Dec( &amp;lt;expression&amp;gt; )]] -- Returns a integer representation of a hexadecimal string&lt;br /&gt;
* [[Core Function FDec|FDec( &amp;lt;expression&amp;gt; )]] -- Returns a float representation of a hexadecimal string&lt;br /&gt;
* [[Core Function DDec|DDec( &amp;lt;expression&amp;gt; )]] -- Returns a double representation of a hexadecimal string&lt;br /&gt;
* [[Core Function DecPad|DecPad( &amp;lt;expression&amp;gt;, &amp;lt;count&amp;gt; )]] -- Pads numeric string to a given number of chars (Filling in the gap with zeros)&lt;br /&gt;
* [[Core Function EndsWith|EndsWith( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Hex|Hex( &amp;lt;expression&amp;gt;, &amp;lt;length&amp;gt; )]] -- Returns a string representation of an integer type converted to hexadecimal&lt;br /&gt;
* [[Core Function FHex|FHex( &amp;lt;expression&amp;gt; )]] -- Returns a string representation of an float type converted to hexadecimal&lt;br /&gt;
* [[Core Function DHex|DHex( &amp;lt;expression&amp;gt; )]] -- Returns a string representation of an double type converted to hexadecimal&lt;br /&gt;
* [[Core Function InStr|InStr( &amp;lt;string&amp;gt;, &amp;lt;substirng&amp;gt;, &amp;lt;casesense&amp;gt;, &amp;lt;occurrence&amp;gt;, &amp;lt;start&amp;gt;, &amp;lt;count&amp;gt; )]] -- Checks if a string contains a given substring.&lt;br /&gt;
* [[Core Function isAlpha|isAlpha( &amp;lt;expression&amp;gt; )]] -- Checks if string contains only Alphabetic characters&lt;br /&gt;
* [[Core Function isAlphaNumeric|isAlphaNumeric( &amp;lt;expression&amp;gt; )]] -- Checks if string contains only AlphaNumeric(A-Z, 0-9), Characters&lt;br /&gt;
* [[Core Function isASCII|isASCII( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isEmpty|isEmpty( &amp;lt;expression&amp;gt; )]] -- Checks if a string is completely empty.&lt;br /&gt;
* [[Core Function isFloat|isFloat( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isLower|isLower( &amp;lt;expression&amp;gt; )]] -- Checks if string contains only lowercase letters&lt;br /&gt;
* [[Core Function isNumeric|isNumeric( &amp;lt;expression&amp;gt; )]] -- Checks if string only contains numbers&lt;br /&gt;
* [[Core Function isSpace|isSpace( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isSymbol|isSymbol( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isUpper|isUpper( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isXDigit|isXDigit( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function LC|LC( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function LCFirst|LCFirst( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function LCWords|LCWords( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Left|Left( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Match|Match( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function MD5|MD5( &amp;lt;expression&amp;gt; )]] -- Creates MD5 Hash of specified string&lt;br /&gt;
* [[Core Function PadLeft|PadLeft( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function PadRight|PadRight( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function RandStr|RandStr( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Repeat|Repeat( &amp;lt;expression&amp;gt;, &amp;lt;count&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Create a new string or new array containing repeats of a string provided&lt;br /&gt;
* [[Core Function Replace|Replace( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Reverse|Reverse( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Right|Right( &amp;lt;expression&amp;gt;, &amp;lt;count&amp;gt; )]] -- Returns a number of characters from the right-hand side of a string.&lt;br /&gt;
* [[Core Function SHA1|SHA1( &amp;lt;expression&amp;gt; )]] -- Returns SHA1 hash of string&lt;br /&gt;
* [[Core Function Split|Split( &amp;lt;expression&amp;gt;, &amp;lt;delim/pattern&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Splits up a string into substrings depending on the given delimiters.&lt;br /&gt;
* [[Core Function SPrintf|SPrintf( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt;... )]] -- Create a formatted string&lt;br /&gt;
* [[Core Function StartsWith|StartsWith( &amp;lt;expression&amp;gt; )]] -- Checks if string starts with specified string&lt;br /&gt;
* [[Core Function StrLen|StrLen( &amp;lt;expression&amp;gt; )]] -- Returns length of specified string&lt;br /&gt;
* [[Core Function SubStr|SubStr( &amp;lt;expression&amp;gt; )]] -- Return part of a string&lt;br /&gt;
* [[Core Function Trim|Trim( &amp;lt;expression&amp;gt; )]] -- Removes whitespace from the beginning and end of a string&lt;br /&gt;
* [[Core Function TrimLeft|TrimLeft( &amp;lt;expression&amp;gt; )]] --Strip whitespace from the start of a string&lt;br /&gt;
* [[Core Function TrimRight|TrimRight( &amp;lt;expression&amp;gt; )]] -- Strip whitespace from the end of a string&lt;br /&gt;
* [[Core Function UC|UC( &amp;lt;expression&amp;gt; )]] -- Returns string in all Upper Case&lt;br /&gt;
* [[Core Function UCFirst|UCFirst( &amp;lt;expression&amp;gt; )]] -- Upper Cases first letter of string&lt;br /&gt;
* [[Core Function UCWords|UCWords( &amp;lt;expression&amp;gt; )]] -- Upper Cases first letter of each word in string&lt;br /&gt;
&lt;br /&gt;
==== Array Functions ====&lt;br /&gt;
* [[Core Function Join|Join( &amp;lt;array&amp;gt;, &amp;lt;separator&amp;gt; )]] -- Join an array into a string with an optional separator&lt;br /&gt;
* [[Core Function UBound|UBound( &amp;lt;array/binary-array&amp;gt; )]] -- Returns the size of array (How many elements it currently has stored)&lt;br /&gt;
* [[Core Function Push|Push( &amp;lt;array&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Add items to the end of an array&lt;br /&gt;
* [[Core Function Insert|Insert( &amp;lt;array&amp;gt;, &amp;lt;id&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Add items to an array at a given location&lt;br /&gt;
* [[Core Function Unshift|Unshift( &amp;lt;array&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Add items to the beginning of an array&lt;br /&gt;
* [[Core Function Pop|Pop( &amp;lt;array&amp;gt; )]] -- Delete the first item in an array&lt;br /&gt;
* [[Core Function Shift|Shift( &amp;lt;array&amp;gt; )]] -- Delete the last item in an array&lt;br /&gt;
* [[Core Function Remove|Remove( &amp;lt;array&amp;gt;, &amp;lt;start-id&amp;gt;, &amp;lt;end-id&amp;gt; )]] -- Delete items from an array starting at a given location and stopping at a given location&lt;br /&gt;
&lt;br /&gt;
==== Hash (Dictionary) Functions ====&lt;br /&gt;
&lt;br /&gt;
==== Process Functions ====&lt;br /&gt;
* [[Core Function DLLCall|DLLCall( &amp;lt;dll&amp;gt;, &amp;lt;function&amp;gt;, &amp;lt;returntype&amp;gt;, &amp;lt;paramtypes&amp;gt;, &amp;lt;params&amp;gt; )]] -- Dynamically call a function in a DLL&lt;br /&gt;
* [[Core Function Run|Run( &amp;lt;file&amp;gt;, &amp;lt;workdir&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Runs an external program&lt;br /&gt;
* [[Core Function RunWait|RunWait( &amp;lt;file&amp;gt;, &amp;lt;workdir&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Runs an external program and waits until the program finishes&lt;br /&gt;
* [[Core Function ProcessClose|ProcessClose( &amp;lt;pid/name&amp;gt; )]] -- Terminates a named process&lt;br /&gt;
* [[Core Function ProcessExists|ProcessExists( &amp;lt;pid/name&amp;gt; )]] -- Checks to see if a specified process exists&lt;br /&gt;
* [[Core Function ProcessList|ProcessList( &amp;lt;name&amp;gt; )]] -- Returns an array listing the currently running processes (names and PIDs)&lt;br /&gt;
* [[Core Function ProcessSetPriority|ProcessSetPriority( &amp;lt;name&amp;gt;, &amp;lt;priority&amp;gt; )]] -- Changes the priority of a process&lt;br /&gt;
* [[Core Function ProcessWait|ProcessWait( &amp;lt;name&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Pauses the current thread until a given process exists or optional the timeout expires&lt;br /&gt;
* [[Core Function ProcessWaitClose|ProcessWaitClose( &amp;lt;name&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Pauses the current thread until a given process no longer exists or optional the timeout expires&lt;br /&gt;
* [[Core Function Shutdown|Shutdown( &amp;lt;shutdown code&amp;gt; )]] -- Shuts down the system&lt;br /&gt;
&lt;br /&gt;
==== Environment Management ====&lt;br /&gt;
* [[Core Function EnvExpand|EnvExpand( &amp;lt;expression&amp;gt; )]] -- Convert a string containing %name% env tags and return complete string with names resolved&lt;br /&gt;
* [[Core Function EnvGet|EnvGet( &amp;lt;tag&amp;gt; )]] -- Get the value of an environment variable&lt;br /&gt;
* [[Core Function EnvSet|EnvSet( &amp;lt;tag&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Set the value of an environment variable&lt;br /&gt;
* [[Core Function EnvUpdate|EnvUpdate( &amp;lt;tag&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Refreshes the OS environment&lt;br /&gt;
&lt;br /&gt;
==== File Functions ====&lt;br /&gt;
&lt;br /&gt;
===== File Create/Read/Write Functions =====&lt;br /&gt;
* [[Core Function FileOpen|FileOpen( &amp;lt;FileName&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Opens a file for reading or writing&lt;br /&gt;
* [[Core Function FileClose|FileClose( &amp;lt;file&amp;gt; )]] -- Closes a previously opened file&lt;br /&gt;
* [[Core Function FileWrite|FileWrite( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Write text to previously opened file at the current File Steam pointer location&lt;br /&gt;
* [[Core Function FileWriteBinary|FileWriteBinary( &amp;lt;file&amp;gt;, &amp;lt;binary-array&amp;gt; )]] -- Write the data from a binary variable to previously opened file at the current File Steam pointer location&lt;br /&gt;
* [[Core Function FileAppend|FileAppend( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Append a line of text to the end of a previously opened text file&lt;br /&gt;
* [[Core Function FileAppendBinary|FileAppendBinary( &amp;lt;file&amp;gt;, &amp;lt;binary-array&amp;gt; )]] -- Append the data from a binary variable to the end of a previously opened file&lt;br /&gt;
* [[Core Function FileSeek|FileSeek( &amp;lt;file&amp;gt;, &amp;lt;offset&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Change the POSITION of the File Stream pointer&lt;br /&gt;
* [[Core Function FilePos|FilePos( &amp;lt;file&amp;gt; )]] -- Get the current POSITION of the File Stream pointer&lt;br /&gt;
* [[Core Function FileRead|FileRead( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Read a number of characters from a previously opened text file starting from current File Steam pointer location&lt;br /&gt;
* [[Core Function FileReadBinary|FileReadBinary( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Read a number of bytes from a previously opened file starting from current File Steam pointer location&lt;br /&gt;
* [[Core Function FileReadLine|FileReadLine( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Read a line of text from a previously opened text file (Or specify a name of a file)&lt;br /&gt;
* [[Core Function FileReadLines|FileReadLines( &amp;lt;file&amp;gt; )]] -- Read all lines of text from a previously opened text file (Or specify a name of a file)&lt;br /&gt;
* [[Core Function FileSave|FileSave( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Save all text to a file&lt;br /&gt;
* [[Core Function FileLoad|FileLoad( &amp;lt;file&amp;gt; )]] -- Load all text from a file&lt;br /&gt;
&lt;br /&gt;
===== Dialogs =====&lt;br /&gt;
* [[Core Function FileSaveDialog|FileSaveDialog ( &amp;lt;title&amp;gt;, &amp;lt;dir&amp;gt;, &amp;lt;filter&amp;gt;, &amp;lt;options&amp;gt;, &amp;lt;default name&amp;gt; )]] -- Initiates a Save File Dialog&lt;br /&gt;
* [[Core Function FileOpenDialog|FileOpenDialog ( &amp;lt;title&amp;gt;, &amp;lt;dir&amp;gt;, &amp;lt;filter&amp;gt;, &amp;lt;options&amp;gt;, &amp;lt;default name&amp;gt; )]] -- Initiates a Load File Dialog&lt;br /&gt;
* [[Core Function FolderSelectDialog|FolderSelectDialog ( &amp;lt;text&amp;gt;, &amp;lt;dir&amp;gt;, &amp;lt;flag&amp;gt;, &amp;lt;dir&amp;gt; )]] -- Initiates a Browse For Folder Dialog&lt;br /&gt;
&lt;br /&gt;
==== GUI Functions ====&lt;br /&gt;
&lt;br /&gt;
===== Dialog Creation Functions =====&lt;br /&gt;
* [[Core Function GUICreate|GUICreate( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function DoEvents|DoEvents( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Dialog Properties Get/Set Functions =====&lt;br /&gt;
* [[Core Function GUIState|GUIState( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function GUISetState|GUISetState( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Control Creation Functions =====&lt;br /&gt;
* [[Core Function GUICreateButton|GUICreateButton( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a button&lt;br /&gt;
* [[Core Function GUICreateTextBox|GUICreateTextBox( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a Textbox&lt;br /&gt;
* [[Core Function GUICreateTextBoxEx|GUICreateTextBoxEx( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a multiline Textbox&lt;br /&gt;
* [[Core Function GUICreateLabel|GUICreateLabel( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a Label&lt;br /&gt;
* [[Core Function GUICreateCheckBox|GUICreateCheckBox( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a CheckBox&lt;br /&gt;
* [[Core Function GUICreateTimer|GUICreateTimer( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;interval&amp;gt; )]] -- Create a timer&lt;br /&gt;
* [[Core Function GUICreateDataGrid|GUICreateDataGrid( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a Data Grid control.&lt;br /&gt;
&lt;br /&gt;
===== Event Linking Functions =====&lt;br /&gt;
* [[Core Function GUILink|GUILink( &amp;lt;gui/guiobject&amp;gt;, &amp;lt;linktype&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Common Dialog/Control Properties Get/Set Functions =====&lt;br /&gt;
* [[Core Function GUIGetProp|GUIGetProp( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function GUISetProp|GUISetProp( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Control Properties Get/Set Functions =====&lt;br /&gt;
* [[Core Function GUITimerStart|GUITimerStart( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function GUITimerStop|GUITimerStop( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function GUIDataGrid|GUIDataGrid( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Other GUI Functions =====&lt;br /&gt;
* [[Core Function MsgBox|MsgBox( &amp;lt;message&amp;gt;, &amp;lt;title&amp;gt;, &amp;lt;flag&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Show a message dialog&lt;br /&gt;
* [[Core Function InputBox|InputBox( &amp;lt;title&amp;gt;, &amp;lt;message&amp;gt;, &amp;lt;default text&amp;gt; )]] -- Shows a box to input text.&lt;br /&gt;
&lt;br /&gt;
==== Keyboard Control Functions ====&lt;br /&gt;
* [[Core Function HotKeySet|HotKeySet( &amp;lt;keydef&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Create a custom hotkey to run custom code or execute a function.&lt;br /&gt;
* [[Core Function SendKeys|SendKeys( &amp;lt;keydef&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Sends simulated keystrokes to the active window&lt;br /&gt;
&lt;br /&gt;
==== Mouse Control Functions ====&lt;br /&gt;
* [[Core Function MouseClick|MouseClick ( &amp;lt;button&amp;gt;, &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt;, &amp;lt;clicks&amp;gt;, &amp;lt;speed&amp;gt; )]] -- Perform a mouse click operation&lt;br /&gt;
* [[Core Function MouseClickDrag|MouseClickDrag ( &amp;lt;button&amp;gt;, &amp;lt;x1&amp;gt;, &amp;lt;y1&amp;gt;, &amp;lt;x2&amp;gt;, &amp;lt;y21&amp;gt;, &amp;lt;speed&amp;gt; )]] -- Perform a mouse click and drag operation&lt;br /&gt;
* [[Core Function MouseDown|MouseDown ( &amp;lt;button&amp;gt; )]] -- Perform a mouse down event at the current mouse position&lt;br /&gt;
* [[Core Function MouseUp|MouseUp ( &amp;lt;button&amp;gt; )]] -- Perform a mouse up event at the current mouse position&lt;br /&gt;
* [[Core Function MouseMove|MouseMove ( &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt;, &amp;lt;speed&amp;gt; )]] -- Moves the mouse pointer&lt;br /&gt;
* [[Core Function MouseGetPos|MouseGetPos ( )]] -- Retrieves the current position of the mouse cursor&lt;br /&gt;
* [[Core Function MouseGetCursor|MouseGetCursor ( )]] -- Returns a cursor ID Number of the current Mouse Cursor&lt;br /&gt;
* [[Core Function MouseWheel|MouseWheel ( &amp;lt;direction&amp;gt;, &amp;lt;clicks&amp;gt; )]] -- Moves the mouse wheel up or down.&lt;br /&gt;
&lt;br /&gt;
==== Window Management Functions ====&lt;br /&gt;
* [[Core Function WinActivate|WinActivate ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Activates (gives focus to) a window&lt;br /&gt;
* [[Core Function WinActive|WinActive ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Checks to see if a specified window exists and is currently active&lt;br /&gt;
* [[Core Function WinExists|WinExists ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Checks to see if a specified window exists&lt;br /&gt;
* [[Core Function WinGetHandle|WinGetHandle ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Retrieves the internal handle of a window&lt;br /&gt;
* [[Core Function WinGetPos|WinGetPos ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Retrieves the position and size of a given window&lt;br /&gt;
* [[Core Function WinGetCaretPos|WinGetCaretPos ( )]] -- Returns the coordinates of the caret in the foreground window&lt;br /&gt;
&lt;br /&gt;
===== Controls =====&lt;br /&gt;
* [[Core Function ControlSend|ControlSend ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;controlID&amp;gt;, &amp;lt;string&amp;gt; &amp;lt;flag&amp;gt; )]] -- Sends a string of characters to a control&lt;br /&gt;
* [[Core Function ControlGetFocus|ControlGetFocus ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Returns the ControlRef# of the control that has keyboard focus within a specified window.&lt;br /&gt;
* [[Core Function ControlGetPos|ControlGetPos ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;controlID&amp;gt; )]] -- Retrieves the position and size of a control relative to it's window.&lt;br /&gt;
&lt;br /&gt;
==== Misc Functions ====&lt;br /&gt;
* [[Core Function Return|Return &amp;lt;expressions&amp;gt;]] -- Returns a result from a Function.&lt;br /&gt;
* [[Core Function Throw|Throw( &amp;lt;expression&amp;gt; )]] -- Throw an exception.&lt;br /&gt;
* [[Core Function Eval|Eval( &amp;lt;expression&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Evaluate a string as Sputnik code.&lt;br /&gt;
* [[Core Function GC|GC( &amp;lt;flag&amp;gt; )]] -- Use the garbage collector.&lt;br /&gt;
* [[Core Function Require|Require( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Add all functions etc from a file for use.&lt;br /&gt;
* [[Core Function Include|Include( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Add all functions etc from a file for use and execute all expressions.&lt;br /&gt;
* [[Core Function PixelGetColor |PixelGetColor ( &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt; )]] -- Returns a pixel color according to x, y pixel coordinates.&lt;br /&gt;
* [[Core Function Opt|Opt( &amp;lt;option&amp;gt;, &amp;lt;value&amp;gt; )]] -- Changes the operation of various Sputnik functions/parameters&lt;br /&gt;
* [[Core Function ToolTip|ToolTip( &amp;lt;text&amp;gt;, &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt; )]] -- Creates a tooltip anywhere on the screen.&lt;br /&gt;
&lt;br /&gt;
=== User Defined Functions ===&lt;br /&gt;
&lt;br /&gt;
These functions are created using Sputnik and are not part of the Sputnik core language.&lt;br /&gt;
&lt;br /&gt;
[[Category:Language Reference]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Min</id>
		<title>Core Function Min</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Min"/>
				<updated>2011-11-28T00:45:25Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
Min( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Find the lesser number and return it&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== expression ====&lt;br /&gt;
&lt;br /&gt;
Any valid numeric expression.&lt;br /&gt;
&lt;br /&gt;
==== expression2 ====&lt;br /&gt;
&lt;br /&gt;
Any valid numeric expression.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Compares 2 numbers and returns the lowest number.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
None.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$y = min(50, 100);&lt;br /&gt;
println( &amp;quot;Value is: $y &amp;quot; ); //prints 50&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Function_Reference</id>
		<title>Function Reference</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Function_Reference"/>
				<updated>2011-11-28T00:15:50Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: /* Math Functions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Function Reference ==&lt;br /&gt;
&lt;br /&gt;
=== How to create a Function ===&lt;br /&gt;
&lt;br /&gt;
To create your own funtions see the Function page.&lt;br /&gt;
&lt;br /&gt;
* [[User Function|User Defined Functions]]&lt;br /&gt;
&lt;br /&gt;
=== Core Functions ===&lt;br /&gt;
&lt;br /&gt;
==== Language Features ====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function Regex Match|&amp;lt;Expression&amp;gt; =~ m/pattern/flags]] -- Match a string to a regular expression pattern and check if it matches and optionally return captured groups&lt;br /&gt;
* [[Core Function Regex Replace|&amp;lt;Expression&amp;gt; =~ s/pattern/replacement/flags]] -- Replace parts of a string using a regular expression pattern and optionally executing functions on the matched groups&lt;br /&gt;
&lt;br /&gt;
==== Console Functions ====&lt;br /&gt;
* [[Core Function Print|Print( &amp;lt;expression&amp;gt; )]] -- Prints an expressions string value to the console window&lt;br /&gt;
* [[Core Function Println|Println( &amp;lt;expression&amp;gt; )]] -- Prints an expressions string value to the console window and inserts a newline charactor at the end.&lt;br /&gt;
* [[Core Function Printf|Printf( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt;... )]] -- Print a formatted string to the console window&lt;br /&gt;
* [[Core Function Input|Input( &amp;lt;expression&amp;gt; )]] -- Capture a string typed to console window&lt;br /&gt;
* [[Core Function InputC|InputC( &amp;lt;expression&amp;gt; )]] -- Capture a char typed to console window&lt;br /&gt;
* [[Core Function Cls|Cls( )]] -- Clear all text from the console window&lt;br /&gt;
&lt;br /&gt;
==== Multithreading Functions ====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function ThreadCreate|ThreadCreate( &amp;lt;name&amp;gt;, &amp;lt;function&amp;gt; )]] -- Create a new thread and start it off executing a function or some code&lt;br /&gt;
* [[Core Function ThreadSleep|ThreadSleep( &amp;lt;name&amp;gt; )]] -- Freeze a thread and make it sleep&lt;br /&gt;
* [[Core Function ThreadResume|ThreadResume( &amp;lt;name&amp;gt; )]] -- Unfreeze a thread and allow it to continue execution&lt;br /&gt;
* [[Core Function ThreadState|ThreadState( &amp;lt;name&amp;gt; )]] -- Returns state of a thread&lt;br /&gt;
* [[Core Function ThreadKill|ThreadKill( &amp;lt;name&amp;gt; )]] -- Terminate a thread and remove it from the script&lt;br /&gt;
* [[Core Function ThreadExists|ThreadExists( &amp;lt;name&amp;gt; )]] -- Check if a thread exists by this name&lt;br /&gt;
* [[Core Function ThreadName|ThreadName( )]] -- Returns the name of the current thread that is executing this code&lt;br /&gt;
* [[Core Function Threads|Threads( )]] -- Return an array of all threads&lt;br /&gt;
&lt;br /&gt;
==== Variable Type Conversions ====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function Char|Char( &amp;lt;expression&amp;gt; )]] -- Returns the single letter representation of an expression&lt;br /&gt;
* [[Core Function Byte|Byte( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 8-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function SByte|SByte( &amp;lt;expression&amp;gt; )]] -- Returns the signed 8-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Short|Short( &amp;lt;expression&amp;gt; )]] -- Returns the signed 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int16|Int16( &amp;lt;expression&amp;gt; )]] -- Returns the signed 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int32|Int32( &amp;lt;expression&amp;gt; )]] -- Returns the signed 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int|Int( &amp;lt;expression&amp;gt; )]] -- Returns the signed 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int64|Int64( &amp;lt;expression&amp;gt; )]] -- Returns the signed 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Long|Long( &amp;lt;expression&amp;gt; )]] -- Returns the signed 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UShort|UShort( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt16|UInt16( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt32|UInt32( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt|UInt( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt64|UInt64( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function ULong|ULong( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Float|Float( &amp;lt;expression&amp;gt; )]] -- Returns the 32-bit floating point representation of an expression&lt;br /&gt;
* [[Core Function Double|Double( &amp;lt;expression&amp;gt; )]] -- Returns the 64-bit floating point representation of an expression&lt;br /&gt;
* [[Core Function String|String( &amp;lt;expression&amp;gt; )]] -- Returns the String representation of an expression&lt;br /&gt;
&lt;br /&gt;
==== Common Variable Functions ====&lt;br /&gt;
&lt;br /&gt;
===== Misc =====&lt;br /&gt;
* [[Core Function Unset|Unset( $variable )]] -- Delete a variable&lt;br /&gt;
&lt;br /&gt;
===== Hash/Array =====&lt;br /&gt;
* [[Core Function Reset|Reset( $variable )]] -- Reset the current array pointer to the first element&lt;br /&gt;
* [[Core Function Next|Next( $variable )]] -- Set the array pointer to the next element&lt;br /&gt;
* [[Core Function Prev|Prev( $variable )]] -- Set the array pointer to the previous element&lt;br /&gt;
&lt;br /&gt;
===== Type Checking =====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function isVarChar|isVarChar( $variable )]] -- Checks if a variable is a char type&lt;br /&gt;
* [[Core Function isVarByte|isVarByte( $variable )]] -- Checks if a variable is an unsigned 8-bit integer type&lt;br /&gt;
* [[Core Function isVarSByte|isVarSByte( $variable )]] -- Checks if a variable is a signed 8-bit integer type&lt;br /&gt;
* [[Core Function isVarShort|isVarShort( $variable )]] -- Checks if a variable is a signed 16-bit integer type&lt;br /&gt;
* [[Core Function isVarInt16|isVarInt16( $variable )]] -- Checks if a variable is a signed 16-bit integer type&lt;br /&gt;
* [[Core Function isVarInt|isVarInt( $variable )]] -- Checks if a variable is a signed 32-bit integer type&lt;br /&gt;
* [[Core Function isVarInt32|isVarInt32( $variable )]] -- Checks if a variable is a signed 32-bit integer type&lt;br /&gt;
* [[Core Function isVarInt64|isVarInt64( $variable )]] -- Checks if a variable is a signed 64-bit integer type&lt;br /&gt;
* [[Core Function isVarLong|isVarLong( $variable )]] -- Checks if a variable is a signed 64-bit integer type&lt;br /&gt;
* [[Core Function isVarUShort|isVarUShort( $variable )]] -- Checks if a variable is an unsigned 16-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt16|isVarUInt16( $variable )]] -- Checks if a variable is an unsigned 16-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt|isVarUInt( $variable )]] -- Checks if a variable is an unsigned 32-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt32|isVarUInt32( $variable )]] -- Checks if a variable is an unsigned 32-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt64|isVarUInt64( $variable )]] -- Checks if a variable is an unsigned 64-bit integer type&lt;br /&gt;
* [[Core Function isVarULong|isVarULong( $variable )]] -- Checks if a variable is an unsigned 64-bit integer type&lt;br /&gt;
* [[Core Function isVarFloat|isVarFloat( $variable )]] -- Checks if a variable is a single precision floating point type&lt;br /&gt;
* [[Core Function isVarDouble|isVarDouble( $variable )]] -- Checks if a variable is a double precision floating point type&lt;br /&gt;
* [[Core Function isVarString|isVarString( $variable )]] -- Checks if a variable is a string type&lt;br /&gt;
* [[Core Function isVarNumber|isVarNumber( $variable )]] -- Checks if a variable is any integer or float/double type&lt;br /&gt;
* [[Core Function isVarBinary|isVarBinary( $variable )]] -- Checks if a variable is a binary type&lt;br /&gt;
* [[Core Function isVarRef|isVarRef( $variable )]] -- Check if a variable is an reference to another variable&lt;br /&gt;
* [[Core Function isVarArray|isVarArray( $variable )]] -- Check if a variable is an array&lt;br /&gt;
* [[Core Function isVarObj|isVarObj( $variable, &amp;lt;type&amp;gt; )]] -- Check if a variable is an object type (This includes classes, file handles etc)&lt;br /&gt;
* [[Core Function isVarClass|isVarClass( $variable, &amp;lt;type&amp;gt; )]] -- Check if a variable's object type is a class&lt;br /&gt;
* [[Core Function isVarGUI|isVarGUI( $variable )]] -- Check if a variable's object type is a GUI&lt;br /&gt;
* [[Core Function isVarGUIObject|isVarGUIObject( $variable, &amp;lt;type&amp;gt; )]] -- Check if a variable's object type is a GUI Object (Buttons etc)&lt;br /&gt;
&lt;br /&gt;
====== Get Type Directly ======&lt;br /&gt;
* [[Core Function GetVarType|GetVarType( $variable )]] -- Get the common type of a variable&lt;br /&gt;
* [[Core Function GetVarObjType|GetVarObjType( $variable )]] -- Get the common object type of a variable (If it is an object)&lt;br /&gt;
* [[Core Function GetVarGUIObjType|GetVarGUIObjType( $variable )]] -- Get the common object type of a variable (If it is a GUI object)&lt;br /&gt;
&lt;br /&gt;
==== Binary Data Management Functions ====&lt;br /&gt;
* [[Core Function Pack|Pack( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Pack data into a binary array&lt;br /&gt;
* [[Core Function Unpack|Unpack( &amp;lt;expression&amp;gt;, &amp;lt;binary-array&amp;gt; )]] -- Unpack data from a binary array&lt;br /&gt;
* [[Core Function BinaryCreate|BinaryCreate( &amp;lt;size&amp;gt;, &amp;lt;fill&amp;gt; )]] -- Create a new binary variable and its array size and fill data type &lt;br /&gt;
* [[Core Function BinaryClone|BinaryClone( &amp;lt;binary-array&amp;gt; )]] -- Clone a binary variable 100% and return a new binary variable with exactly same data as the old one&lt;br /&gt;
* [[Core Function BinaryWipe|BinaryWipe( &amp;lt;binary-array&amp;gt; )]] -- Wipes a binary variables data 100% and sets the variable to a blank int containing just 0&lt;br /&gt;
* [[Core Function BinaryStr|BinaryStr( &amp;lt;binary-array&amp;gt;, &amp;lt;separator&amp;gt; )]] -- Create a Hex string from a binary array&lt;br /&gt;
* [[Core Function BinaryHex|BinaryHex( &amp;lt;expression&amp;gt; )]] -- Create a binary array from a hex string&lt;br /&gt;
* [[Core Function BinaryLen|BinaryLen( &amp;lt;binary-array&amp;gt; )]] -- Returns the number of bytes in a binary variable&lt;br /&gt;
* [[Core Function BinaryGet|BinaryGet( &amp;lt;binary-array&amp;gt;, &amp;lt;index&amp;gt; )]] -- Get the byte at an index of a binary variable&lt;br /&gt;
* [[Core Function BinarySet|BinarySet( &amp;lt;binary-array&amp;gt;, &amp;lt;index&amp;gt;, &amp;lt;value&amp;gt; )]] -- Set the byte at an index of a binary variable&lt;br /&gt;
* [[Core Function BinaryReverse|BinaryReverse( &amp;lt;binary-array&amp;gt;, &amp;lt;start&amp;gt;, &amp;lt;length&amp;gt; )]] -- Reverse the order bytes a binary variable&lt;br /&gt;
* [[Core Function BinaryMid|BinaryMid( &amp;lt;binary-array&amp;gt;, &amp;lt;start&amp;gt;, &amp;lt;length&amp;gt; )]] -- Create a binary variable by extracting a number of bytes from another binary variable&lt;br /&gt;
* [[Core Function BinaryAppend|BinaryAppend( &amp;lt;binary-array&amp;gt;, &amp;lt;binary-array2&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Append a binary variables data onto the end or beginning of another binary variables data&lt;br /&gt;
* [[Core Function BinaryInsert|BinaryInsert( &amp;lt;binary-array&amp;gt;, &amp;lt;binary-array2&amp;gt;, &amp;lt;index&amp;gt; )]] -- Insert a binary variables data into another binary variable at a specific location&lt;br /&gt;
* [[Core Function BinaryUnshift|BinaryUnshift( &amp;lt;binary-array&amp;gt;, &amp;lt;byte&amp;gt; )]] -- Add a byte to the beginning of a binary variable&lt;br /&gt;
* [[Core Function BinaryPush|BinaryPush( &amp;lt;binary-array&amp;gt;, &amp;lt;byte&amp;gt; )]] -- Add a byte to the end of a binary variable&lt;br /&gt;
* [[Core Function BinaryShift|BinaryShift( &amp;lt;binary-array&amp;gt; )]] -- Delete the first byte from a binary variable&lt;br /&gt;
* [[Core Function BinaryPop|BinaryPop( &amp;lt;binary-array&amp;gt; )]] -- Delete the last byte from a binary variable&lt;br /&gt;
* [[Core Function BinaryResize|BinaryResize( &amp;lt;binary-array&amp;gt;, &amp;lt;size&amp;gt;, &amp;lt;data&amp;gt; )]] -- Resize a binary variables data array&lt;br /&gt;
* [[Core Function BinaryCompress|BinaryCompress( &amp;lt;binary-array&amp;gt; )]] -- Compress a binary variables data&lt;br /&gt;
* [[Core Function BinaryUncompress|BinaryUncompress( &amp;lt;binary-array&amp;gt; )]] -- Uncompress a binary variable data&lt;br /&gt;
* [[Core Function BinarySave|BinarySave( &amp;lt;binary-array&amp;gt;, &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Save a binary variable data to file&lt;br /&gt;
* [[Core Function BinaryLoad|BinaryLoad( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Create a new binary variable by loading binary data from a file&lt;br /&gt;
&lt;br /&gt;
==== Math Functions ====&lt;br /&gt;
* [[Core Function Abs|Abs( &amp;lt;expression&amp;gt; )]] -- Calculates the absolute value of a number&lt;br /&gt;
* [[Core Function ACos|ACos( &amp;lt;expression&amp;gt; )]] -- Calculates the arcCosine of a number&lt;br /&gt;
* [[Core Function ASin|ASin( &amp;lt;expression&amp;gt; )]] -- Calculates the arcsine of a number&lt;br /&gt;
* [[Core Function ATan|ATan( &amp;lt;expression&amp;gt; )]] -- Calculates the arctangent of a number&lt;br /&gt;
* [[Core Function BitAND|BitAND( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt;, &amp;lt;n&amp;gt; )]] -- Performs a bitwise AND operation&lt;br /&gt;
* [[Core Function BitNOT|BitNOT( &amp;lt;expression&amp;gt; )]] -- Performs a bitwise NOT operation&lt;br /&gt;
* [[Core Function BitOR|BitOR( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt;, &amp;lt;n&amp;gt; )]] -- Performs a bitwise OR operation&lt;br /&gt;
* [[Core Function BitROTATE|BitROTATE( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function BitSHIFT|BitSHIFT( &amp;lt;value&amp;gt;, &amp;lt;shift&amp;gt; )]] -- Performs a bit shifting operation&lt;br /&gt;
* [[Core Function BitXOR|BitXOR( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Ceiling|Ceiling( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Cos|Cos( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Cosh|Cosh( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Exp|Exp( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Floor|Floor( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Log|Log( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Math|Math( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Max|Max( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; )]] -- Find the greater number and return it&lt;br /&gt;
* [[Core Function Min|Min( &amp;lt;expression&amp;gt; )]] -- Find the lowest number and return it&lt;br /&gt;
* [[Core Function Mod|Mod( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Pow|Pow( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Random|Random( &amp;lt;expression&amp;gt; )]] -- Get a random number from the defined area.&lt;br /&gt;
* [[Core Function Round|Round( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Sin|Sin( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Sinh|Sinh( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Sqrt|Sqrt( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Tan|Tan( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Tanh|Tanh( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Turncate|Turncate( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
==== String Functions ====&lt;br /&gt;
* [[Core Function Asc|Asc( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function AscW|AscW( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Chr|Chr( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function ChrW|ChrW( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Contains|Contains( &amp;lt;sting&amp;gt;, &amp;lt;string&amp;gt;, &amp;lt;casesense&amp;gt;)]] -- Check is string contains sub string&lt;br /&gt;
* [[Core Function Compare|Compare( &amp;lt;string&amp;gt;, &amp;lt;string&amp;gt; )]] -- Compare two strings to each other&lt;br /&gt;
* [[Core Function Dec|Dec( &amp;lt;expression&amp;gt; )]] -- Returns a integer representation of a hexadecimal string&lt;br /&gt;
* [[Core Function FDec|FDec( &amp;lt;expression&amp;gt; )]] -- Returns a float representation of a hexadecimal string&lt;br /&gt;
* [[Core Function DDec|DDec( &amp;lt;expression&amp;gt; )]] -- Returns a double representation of a hexadecimal string&lt;br /&gt;
* [[Core Function DecPad|DecPad( &amp;lt;expression&amp;gt;, &amp;lt;count&amp;gt; )]] -- Pads numeric string to a given number of chars (Filling in the gap with zeros)&lt;br /&gt;
* [[Core Function EndsWith|EndsWith( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Hex|Hex( &amp;lt;expression&amp;gt;, &amp;lt;length&amp;gt; )]] -- Returns a string representation of an integer type converted to hexadecimal&lt;br /&gt;
* [[Core Function FHex|FHex( &amp;lt;expression&amp;gt; )]] -- Returns a string representation of an float type converted to hexadecimal&lt;br /&gt;
* [[Core Function DHex|DHex( &amp;lt;expression&amp;gt; )]] -- Returns a string representation of an double type converted to hexadecimal&lt;br /&gt;
* [[Core Function InStr|InStr( &amp;lt;string&amp;gt;, &amp;lt;substirng&amp;gt;, &amp;lt;casesense&amp;gt;, &amp;lt;occurrence&amp;gt;, &amp;lt;start&amp;gt;, &amp;lt;count&amp;gt; )]] -- Checks if a string contains a given substring.&lt;br /&gt;
* [[Core Function isAlpha|isAlpha( &amp;lt;expression&amp;gt; )]] -- Checks if string contains only Alphabetic characters&lt;br /&gt;
* [[Core Function isAlphaNumeric|isAlphaNumeric( &amp;lt;expression&amp;gt; )]] -- Checks if string contains only AlphaNumeric(A-Z, 0-9), Characters&lt;br /&gt;
* [[Core Function isASCII|isASCII( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isEmpty|isEmpty( &amp;lt;expression&amp;gt; )]] -- Checks if a string is completely empty.&lt;br /&gt;
* [[Core Function isFloat|isFloat( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isLower|isLower( &amp;lt;expression&amp;gt; )]] -- Checks if string contains only lowercase letters&lt;br /&gt;
* [[Core Function isNumeric|isNumeric( &amp;lt;expression&amp;gt; )]] -- Checks if string only contains numbers&lt;br /&gt;
* [[Core Function isSpace|isSpace( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isSymbol|isSymbol( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isUpper|isUpper( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isXDigit|isXDigit( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function LC|LC( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function LCFirst|LCFirst( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function LCWords|LCWords( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Left|Left( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Match|Match( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function MD5|MD5( &amp;lt;expression&amp;gt; )]] -- Creates MD5 Hash of specified string&lt;br /&gt;
* [[Core Function PadLeft|PadLeft( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function PadRight|PadRight( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function RandStr|RandStr( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Repeat|Repeat( &amp;lt;expression&amp;gt;, &amp;lt;count&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Create a new string or new array containing repeats of a string provided&lt;br /&gt;
* [[Core Function Replace|Replace( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Reverse|Reverse( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Right|Right( &amp;lt;expression&amp;gt;, &amp;lt;count&amp;gt; )]] -- Returns a number of characters from the right-hand side of a string.&lt;br /&gt;
* [[Core Function SHA1|SHA1( &amp;lt;expression&amp;gt; )]] -- Returns SHA1 hash of string&lt;br /&gt;
* [[Core Function Split|Split( &amp;lt;expression&amp;gt;, &amp;lt;delim/pattern&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Splits up a string into substrings depending on the given delimiters.&lt;br /&gt;
* [[Core Function SPrintf|SPrintf( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt;... )]] -- Create a formatted string&lt;br /&gt;
* [[Core Function StartsWith|StartsWith( &amp;lt;expression&amp;gt; )]] -- Checks if string starts with specified string&lt;br /&gt;
* [[Core Function StrLen|StrLen( &amp;lt;expression&amp;gt; )]] -- Returns length of specified string&lt;br /&gt;
* [[Core Function SubStr|SubStr( &amp;lt;expression&amp;gt; )]] -- Return part of a string&lt;br /&gt;
* [[Core Function Trim|Trim( &amp;lt;expression&amp;gt; )]] -- Removes whitespace from the beginning and end of a string&lt;br /&gt;
* [[Core Function TrimLeft|TrimLeft( &amp;lt;expression&amp;gt; )]] --Strip whitespace from the start of a string&lt;br /&gt;
* [[Core Function TrimRight|TrimRight( &amp;lt;expression&amp;gt; )]] -- Strip whitespace from the end of a string&lt;br /&gt;
* [[Core Function UC|UC( &amp;lt;expression&amp;gt; )]] -- Returns string in all Upper Case&lt;br /&gt;
* [[Core Function UCFirst|UCFirst( &amp;lt;expression&amp;gt; )]] -- Upper Cases first letter of string&lt;br /&gt;
* [[Core Function UCWords|UCWords( &amp;lt;expression&amp;gt; )]] -- Upper Cases first letter of each word in string&lt;br /&gt;
&lt;br /&gt;
==== Array Functions ====&lt;br /&gt;
* [[Core Function Join|Join( &amp;lt;array&amp;gt;, &amp;lt;separator&amp;gt; )]] -- Join an array into a string with an optional separator&lt;br /&gt;
* [[Core Function UBound|UBound( &amp;lt;array/binary-array&amp;gt; )]] -- Returns the size of array (How many elements it currently has stored)&lt;br /&gt;
* [[Core Function Push|Push( &amp;lt;array&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Add items to the end of an array&lt;br /&gt;
* [[Core Function Insert|Insert( &amp;lt;array&amp;gt;, &amp;lt;id&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Add items to an array at a given location&lt;br /&gt;
* [[Core Function Unshift|Unshift( &amp;lt;array&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Add items to the beginning of an array&lt;br /&gt;
* [[Core Function Pop|Pop( &amp;lt;array&amp;gt; )]] -- Delete the first item in an array&lt;br /&gt;
* [[Core Function Shift|Shift( &amp;lt;array&amp;gt; )]] -- Delete the last item in an array&lt;br /&gt;
* [[Core Function Remove|Remove( &amp;lt;array&amp;gt;, &amp;lt;start-id&amp;gt;, &amp;lt;end-id&amp;gt; )]] -- Delete items from an array starting at a given location and stopping at a given location&lt;br /&gt;
&lt;br /&gt;
==== Hash (Dictionary) Functions ====&lt;br /&gt;
&lt;br /&gt;
==== Process Functions ====&lt;br /&gt;
* [[Core Function DLLCall|DLLCall( &amp;lt;dll&amp;gt;, &amp;lt;function&amp;gt;, &amp;lt;returntype&amp;gt;, &amp;lt;paramtypes&amp;gt;, &amp;lt;params&amp;gt; )]] -- Dynamically call a function in a DLL&lt;br /&gt;
* [[Core Function Run|Run( &amp;lt;file&amp;gt;, &amp;lt;workdir&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Runs an external program&lt;br /&gt;
* [[Core Function RunWait|RunWait( &amp;lt;file&amp;gt;, &amp;lt;workdir&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Runs an external program and waits until the program finishes&lt;br /&gt;
* [[Core Function ProcessClose|ProcessClose( &amp;lt;pid/name&amp;gt; )]] -- Terminates a named process&lt;br /&gt;
* [[Core Function ProcessExists|ProcessExists( &amp;lt;pid/name&amp;gt; )]] -- Checks to see if a specified process exists&lt;br /&gt;
* [[Core Function ProcessList|ProcessList( &amp;lt;name&amp;gt; )]] -- Returns an array listing the currently running processes (names and PIDs)&lt;br /&gt;
* [[Core Function ProcessSetPriority|ProcessSetPriority( &amp;lt;name&amp;gt;, &amp;lt;priority&amp;gt; )]] -- Changes the priority of a process&lt;br /&gt;
* [[Core Function ProcessWait|ProcessWait( &amp;lt;name&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Pauses the current thread until a given process exists or optional the timeout expires&lt;br /&gt;
* [[Core Function ProcessWaitClose|ProcessWaitClose( &amp;lt;name&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Pauses the current thread until a given process no longer exists or optional the timeout expires&lt;br /&gt;
* [[Core Function Shutdown|Shutdown( &amp;lt;shutdown code&amp;gt; )]] -- Shuts down the system&lt;br /&gt;
&lt;br /&gt;
==== Environment Management ====&lt;br /&gt;
* [[Core Function EnvExpand|EnvExpand( &amp;lt;expression&amp;gt; )]] -- Convert a string containing %name% env tags and return complete string with names resolved&lt;br /&gt;
* [[Core Function EnvGet|EnvGet( &amp;lt;tag&amp;gt; )]] -- Get the value of an environment variable&lt;br /&gt;
* [[Core Function EnvSet|EnvSet( &amp;lt;tag&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Set the value of an environment variable&lt;br /&gt;
* [[Core Function EnvUpdate|EnvUpdate( &amp;lt;tag&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Refreshes the OS environment&lt;br /&gt;
&lt;br /&gt;
==== File Functions ====&lt;br /&gt;
&lt;br /&gt;
===== File Create/Read/Write Functions =====&lt;br /&gt;
* [[Core Function FileOpen|FileOpen( &amp;lt;FileName&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Opens a file for reading or writing&lt;br /&gt;
* [[Core Function FileClose|FileClose( &amp;lt;file&amp;gt; )]] -- Closes a previously opened file&lt;br /&gt;
* [[Core Function FileWrite|FileWrite( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Write text to previously opened file at the current File Steam pointer location&lt;br /&gt;
* [[Core Function FileWriteBinary|FileWriteBinary( &amp;lt;file&amp;gt;, &amp;lt;binary-array&amp;gt; )]] -- Write the data from a binary variable to previously opened file at the current File Steam pointer location&lt;br /&gt;
* [[Core Function FileAppend|FileAppend( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Append a line of text to the end of a previously opened text file&lt;br /&gt;
* [[Core Function FileAppendBinary|FileAppendBinary( &amp;lt;file&amp;gt;, &amp;lt;binary-array&amp;gt; )]] -- Append the data from a binary variable to the end of a previously opened file&lt;br /&gt;
* [[Core Function FileSeek|FileSeek( &amp;lt;file&amp;gt;, &amp;lt;offset&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Change the POSITION of the File Stream pointer&lt;br /&gt;
* [[Core Function FilePos|FilePos( &amp;lt;file&amp;gt; )]] -- Get the current POSITION of the File Stream pointer&lt;br /&gt;
* [[Core Function FileRead|FileRead( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Read a number of characters from a previously opened text file starting from current File Steam pointer location&lt;br /&gt;
* [[Core Function FileReadBinary|FileReadBinary( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Read a number of bytes from a previously opened file starting from current File Steam pointer location&lt;br /&gt;
* [[Core Function FileReadLine|FileReadLine( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Read a line of text from a previously opened text file (Or specify a name of a file)&lt;br /&gt;
* [[Core Function FileReadLines|FileReadLines( &amp;lt;file&amp;gt; )]] -- Read all lines of text from a previously opened text file (Or specify a name of a file)&lt;br /&gt;
* [[Core Function FileSave|FileSave( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Save all text to a file&lt;br /&gt;
* [[Core Function FileLoad|FileLoad( &amp;lt;file&amp;gt; )]] -- Load all text from a file&lt;br /&gt;
&lt;br /&gt;
===== Dialogs =====&lt;br /&gt;
* [[Core Function FileSaveDialog|FileSaveDialog ( &amp;lt;title&amp;gt;, &amp;lt;dir&amp;gt;, &amp;lt;filter&amp;gt;, &amp;lt;options&amp;gt;, &amp;lt;default name&amp;gt; )]] -- Initiates a Save File Dialog&lt;br /&gt;
* [[Core Function FileOpenDialog|FileOpenDialog ( &amp;lt;title&amp;gt;, &amp;lt;dir&amp;gt;, &amp;lt;filter&amp;gt;, &amp;lt;options&amp;gt;, &amp;lt;default name&amp;gt; )]] -- Initiates a Load File Dialog&lt;br /&gt;
* [[Core Function FolderSelectDialog|FolderSelectDialog ( &amp;lt;text&amp;gt;, &amp;lt;dir&amp;gt;, &amp;lt;flag&amp;gt;, &amp;lt;dir&amp;gt; )]] -- Initiates a Browse For Folder Dialog&lt;br /&gt;
&lt;br /&gt;
==== GUI Functions ====&lt;br /&gt;
&lt;br /&gt;
===== Dialog Creation Functions =====&lt;br /&gt;
* [[Core Function GUICreate|GUICreate( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function DoEvents|DoEvents( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Dialog Properties Get/Set Functions =====&lt;br /&gt;
* [[Core Function GUIState|GUIState( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function GUISetState|GUISetState( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Control Creation Functions =====&lt;br /&gt;
* [[Core Function GUICreateButton|GUICreateButton( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a button&lt;br /&gt;
* [[Core Function GUICreateTextBox|GUICreateTextBox( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a Textbox&lt;br /&gt;
* [[Core Function GUICreateTextBoxEx|GUICreateTextBoxEx( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a multiline Textbox&lt;br /&gt;
* [[Core Function GUICreateLabel|GUICreateLabel( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a Label&lt;br /&gt;
* [[Core Function GUICreateCheckBox|GUICreateCheckBox( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a CheckBox&lt;br /&gt;
* [[Core Function GUICreateTimer|GUICreateTimer( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;interval&amp;gt; )]] -- Create a timer&lt;br /&gt;
* [[Core Function GUICreateDataGrid|GUICreateDataGrid( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a Data Grid control.&lt;br /&gt;
&lt;br /&gt;
===== Event Linking Functions =====&lt;br /&gt;
* [[Core Function GUILink|GUILink( &amp;lt;gui/guiobject&amp;gt;, &amp;lt;linktype&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Common Dialog/Control Properties Get/Set Functions =====&lt;br /&gt;
* [[Core Function GUIGetProp|GUIGetProp( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function GUISetProp|GUISetProp( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Control Properties Get/Set Functions =====&lt;br /&gt;
* [[Core Function GUITimerStart|GUITimerStart( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function GUITimerStop|GUITimerStop( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function GUIDataGrid|GUIDataGrid( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Other GUI Functions =====&lt;br /&gt;
* [[Core Function MsgBox|MsgBox( &amp;lt;message&amp;gt;, &amp;lt;title&amp;gt;, &amp;lt;flag&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Show a message dialog&lt;br /&gt;
* [[Core Function InputBox|InputBox( &amp;lt;title&amp;gt;, &amp;lt;message&amp;gt;, &amp;lt;default text&amp;gt; )]] -- Shows a box to input text.&lt;br /&gt;
&lt;br /&gt;
==== Keyboard Control Functions ====&lt;br /&gt;
* [[Core Function HotKeySet|HotKeySet( &amp;lt;keydef&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Create a custom hotkey to run custom code or execute a function.&lt;br /&gt;
* [[Core Function SendKeys|SendKeys( &amp;lt;keydef&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Sends simulated keystrokes to the active window&lt;br /&gt;
&lt;br /&gt;
==== Mouse Control Functions ====&lt;br /&gt;
* [[Core Function MouseClick|MouseClick ( &amp;lt;button&amp;gt;, &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt;, &amp;lt;clicks&amp;gt;, &amp;lt;speed&amp;gt; )]] -- Perform a mouse click operation&lt;br /&gt;
* [[Core Function MouseClickDrag|MouseClickDrag ( &amp;lt;button&amp;gt;, &amp;lt;x1&amp;gt;, &amp;lt;y1&amp;gt;, &amp;lt;x2&amp;gt;, &amp;lt;y21&amp;gt;, &amp;lt;speed&amp;gt; )]] -- Perform a mouse click and drag operation&lt;br /&gt;
* [[Core Function MouseDown|MouseDown ( &amp;lt;button&amp;gt; )]] -- Perform a mouse down event at the current mouse position&lt;br /&gt;
* [[Core Function MouseUp|MouseUp ( &amp;lt;button&amp;gt; )]] -- Perform a mouse up event at the current mouse position&lt;br /&gt;
* [[Core Function MouseMove|MouseMove ( &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt;, &amp;lt;speed&amp;gt; )]] -- Moves the mouse pointer&lt;br /&gt;
* [[Core Function MouseGetPos|MouseGetPos ( )]] -- Retrieves the current position of the mouse cursor&lt;br /&gt;
* [[Core Function MouseGetCursor|MouseGetCursor ( )]] -- Returns a cursor ID Number of the current Mouse Cursor&lt;br /&gt;
* [[Core Function MouseWheel|MouseWheel ( &amp;lt;direction&amp;gt;, &amp;lt;clicks&amp;gt; )]] -- Moves the mouse wheel up or down.&lt;br /&gt;
&lt;br /&gt;
==== Window Management Functions ====&lt;br /&gt;
* [[Core Function WinActivate|WinActivate ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Activates (gives focus to) a window&lt;br /&gt;
* [[Core Function WinActive|WinActive ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Checks to see if a specified window exists and is currently active&lt;br /&gt;
* [[Core Function WinExists|WinExists ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Checks to see if a specified window exists&lt;br /&gt;
* [[Core Function WinGetHandle|WinGetHandle ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Retrieves the internal handle of a window&lt;br /&gt;
* [[Core Function WinGetPos|WinGetPos ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Retrieves the position and size of a given window&lt;br /&gt;
* [[Core Function WinGetCaretPos|WinGetCaretPos ( )]] -- Returns the coordinates of the caret in the foreground window&lt;br /&gt;
&lt;br /&gt;
===== Controls =====&lt;br /&gt;
* [[Core Function ControlSend|ControlSend ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;controlID&amp;gt;, &amp;lt;string&amp;gt; &amp;lt;flag&amp;gt; )]] -- Sends a string of characters to a control&lt;br /&gt;
* [[Core Function ControlGetFocus|ControlGetFocus ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Returns the ControlRef# of the control that has keyboard focus within a specified window.&lt;br /&gt;
* [[Core Function ControlGetPos|ControlGetPos ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;controlID&amp;gt; )]] -- Retrieves the position and size of a control relative to it's window.&lt;br /&gt;
&lt;br /&gt;
==== Misc Functions ====&lt;br /&gt;
* [[Core Function Return|Return &amp;lt;expressions&amp;gt;]] -- Returns a result from a Function.&lt;br /&gt;
* [[Core Function Throw|Throw( &amp;lt;expression&amp;gt; )]] -- Throw an exception.&lt;br /&gt;
* [[Core Function Eval|Eval( &amp;lt;expression&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Evaluate a string as Sputnik code.&lt;br /&gt;
* [[Core Function GC|GC( &amp;lt;flag&amp;gt; )]] -- Use the garbage collector.&lt;br /&gt;
* [[Core Function Require|Require( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Add all functions etc from a file for use.&lt;br /&gt;
* [[Core Function Include|Include( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Add all functions etc from a file for use and execute all expressions.&lt;br /&gt;
* [[Core Function PixelGetColor |PixelGetColor ( &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt; )]] -- Returns a pixel color according to x, y pixel coordinates.&lt;br /&gt;
* [[Core Function Opt|Opt( &amp;lt;option&amp;gt;, &amp;lt;value&amp;gt; )]] -- Changes the operation of various Sputnik functions/parameters&lt;br /&gt;
* [[Core Function ToolTip|ToolTip( &amp;lt;text&amp;gt;, &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt; )]] -- Creates a tooltip anywhere on the screen.&lt;br /&gt;
&lt;br /&gt;
=== User Defined Functions ===&lt;br /&gt;
&lt;br /&gt;
These functions are created using Sputnik and are not part of the Sputnik core language.&lt;br /&gt;
&lt;br /&gt;
[[Category:Language Reference]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Min</id>
		<title>Core Function Min</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Min"/>
				<updated>2011-11-28T00:14:57Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: Created page with &amp;quot;&amp;lt;pre&amp;gt; Min( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; ) &amp;lt;/pre&amp;gt;  === Description ===  Find the lowest number and return it  === Parameters ===  ==== expression ====  Any valid numeric expression...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
Min( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Find the lowest number and return it&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== expression ====&lt;br /&gt;
&lt;br /&gt;
Any valid numeric expression.&lt;br /&gt;
&lt;br /&gt;
==== expression2 ====&lt;br /&gt;
&lt;br /&gt;
Any valid numeric expression.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Compares 2 numbers and returns the lowest number.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
None.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$y = min(50, 100);&lt;br /&gt;
println( &amp;quot;Value is: $y &amp;quot; ); //prints 50&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Split</id>
		<title>Core Function Split</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Split"/>
				<updated>2011-11-27T19:21:40Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
Split( &amp;lt;expression&amp;gt;, &amp;lt;delim/pattern&amp;gt;, &amp;lt;flag&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Splits up a string into substrings depending on the given delimiters.&lt;br /&gt;
&lt;br /&gt;
OR&lt;br /&gt;
&lt;br /&gt;
Splits up a string into substrings depending on the given RegExp pattern.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== expression ====&lt;br /&gt;
&lt;br /&gt;
The string to evaluate.&lt;br /&gt;
&lt;br /&gt;
==== delim/pattern ====&lt;br /&gt;
&lt;br /&gt;
One or more characters to use as delimiters (case sensitive).&lt;br /&gt;
&lt;br /&gt;
OR&lt;br /&gt;
&lt;br /&gt;
A RegExp match pattern (The pattern is very similar to perl and layed out the same way).&lt;br /&gt;
&lt;br /&gt;
==== flag ====&lt;br /&gt;
&lt;br /&gt;
Warning: You can only use the flag if you are NOT using a RegExp pattern as the Delim.&lt;br /&gt;
&lt;br /&gt;
Optional; Changes how the string split works:&lt;br /&gt;
flag = 0 (default), each character in the delimiter string will mark where to split the string.&lt;br /&gt;
flag = 1, entire delimiter string is needed to mark where to split the string.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Returns an array with each elment ($array[0], $array[1], etc.) contain the delimited strings.&lt;br /&gt;
&lt;br /&gt;
If no delimiters were found an empty array will be returned.&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
If you use a blank string &amp;quot;&amp;quot; for the delimiters, each character will be returned as an element.&lt;br /&gt;
&lt;br /&gt;
If you use a blank RegExp m// for the delim, each character will be returned as an element.&lt;br /&gt;
&lt;br /&gt;
If the delimiter you wish to use is a substring instead of individual single characters, see the example below.&lt;br /&gt;
&lt;br /&gt;
Split is very useful as an alternative to InStr and as a means to populate an array.&lt;br /&gt;
&lt;br /&gt;
Caution if you use the macro @CRLF you are referring to a 2 character string so you will generate extra blanks lines.&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
To split a string at each , example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$days = Split(&amp;quot;Sun,Mon,Tue,Wed,Thu,Fri,Sat&amp;quot;, &amp;quot;,&amp;quot;);&lt;br /&gt;
Foreach( $days as $day )&lt;br /&gt;
{&lt;br /&gt;
	println(&amp;quot;Element is: &amp;quot; . $day);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To split a string at each letter example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$letters = Split(&amp;quot;The quick brown FoX&amp;quot;, &amp;quot;&amp;quot;);&lt;br /&gt;
Foreach ( $letters as  $letter )&lt;br /&gt;
{&lt;br /&gt;
	println(&amp;quot;Element is: &amp;quot; . $letter);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To split a string every time it finds the word &amp;quot;moo&amp;quot; example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$array = Split(&amp;quot;This moo is a string moo ok&amp;quot;, &amp;quot;moo&amp;quot;, 1);&lt;br /&gt;
Foreach ( $array as $elem )&lt;br /&gt;
{&lt;br /&gt;
	println(&amp;quot;Element is: &amp;quot; . $elem);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can place the Split directly in the For loop example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
Foreach ( Split(&amp;quot;This moo is a string moo ok&amp;quot;, &amp;quot;moo&amp;quot;, 1) as $elem )&lt;br /&gt;
{&lt;br /&gt;
	println(&amp;quot;Element is: &amp;quot; . $elem);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To split the string each time a &amp;quot;&amp;lt;&amp;quot; followed by digits followed by a &amp;quot;&amp;gt;&amp;quot; is found using a RegExp pattern example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$str = Split(&amp;quot;The&amp;lt;12&amp;gt;quick&amp;lt;46&amp;gt;brown&amp;lt;68&amp;gt;fox....&amp;quot;, m/&amp;lt;\d+&amp;gt;/);&lt;br /&gt;
Foreach ( $str as $elem )&lt;br /&gt;
{&lt;br /&gt;
	println(&amp;quot;Element is: &amp;quot; . $elem);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Of course you can place the split in the For example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
Foreach ( Split(&amp;quot;The&amp;lt;12&amp;gt;quick&amp;lt;46&amp;gt;brown&amp;lt;68&amp;gt;fox....&amp;quot;, m/&amp;lt;\d+&amp;gt;/) as $elem )&lt;br /&gt;
{&lt;br /&gt;
	println(&amp;quot;Element is: &amp;quot; . $elem);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To see what more patterns you can match go see Regex Match or RegExp functions and read the Remarks.&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_MsgBox</id>
		<title>Core Function MsgBox</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_MsgBox"/>
				<updated>2011-11-27T06:46:49Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: /* Remarks */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
MsgBox( &amp;lt;message&amp;gt;, &amp;lt;title&amp;gt;, &amp;lt;flag&amp;gt;, &amp;lt;timeout&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Returns a string representation of an integer type converted to hexadecimal.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== message ====&lt;br /&gt;
&lt;br /&gt;
The text of the message box.&lt;br /&gt;
&lt;br /&gt;
==== title ====&lt;br /&gt;
&lt;br /&gt;
The title of the message box.&lt;br /&gt;
&lt;br /&gt;
The default title is &amp;quot;MessageBox&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==== flag ====&lt;br /&gt;
&lt;br /&gt;
Optional; The flag indicates the type of message box and the possible button combinations. See remarks.&lt;br /&gt;
&lt;br /&gt;
Default 64 (Information).&lt;br /&gt;
&lt;br /&gt;
==== timeout ====&lt;br /&gt;
&lt;br /&gt;
Optional; Timeout in seconds. After the timeout has elapsed the message box will be automatically closed.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns the ID of the button pressed. &lt;br /&gt;
&lt;br /&gt;
Failure: Returns -1 if the message box timed out. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Button Pressed 		Return Value  &lt;br /&gt;
OK 			1 &lt;br /&gt;
CANCEL 			2 &lt;br /&gt;
ABORT 			3 &lt;br /&gt;
RETRY 			4 &lt;br /&gt;
IGNORE 			5 &lt;br /&gt;
YES 			6 &lt;br /&gt;
NO 			7 &lt;br /&gt;
TRY AGAIN 		10 &lt;br /&gt;
CONTINUE 		11 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
The flag parameter can be a combination of the following values:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
decimal flag 	Button-related Result			Hexadecimal flag &lt;br /&gt;
0		OK button 				0x0 &lt;br /&gt;
1 		OK and Cancel 				0x1 &lt;br /&gt;
2 		Abort, Retry, and Ignore 		0x2 &lt;br /&gt;
3 		Yes, No, and Cancel 			0x3 &lt;br /&gt;
4 		Yes and No 				0x4 &lt;br /&gt;
5 		Retry and Cancel 			0x5 &lt;br /&gt;
6 		Cancel, Try Again, Continue 		0x6 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Icon-related Result 			Hexadecimal flag &lt;br /&gt;
0 		(No icon) 				0x0 &lt;br /&gt;
16 		Stop-sign icon 				0x10 &lt;br /&gt;
32		Question-mark icon 			0x20 &lt;br /&gt;
48 		Exclamation-point icon 			0x30 &lt;br /&gt;
64		Icon consisting of an 'i' in a circle	0x40 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Default-related Result 			Hexadecimal flag &lt;br /&gt;
0 		First button is default button 		0x0 &lt;br /&gt;
256 		Second button is default button 		0x100 &lt;br /&gt;
512 		Third button is default button 		0x200 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Modality-related Result 			Hexadecimal flag &lt;br /&gt;
0		Application  				0x0 &lt;br /&gt;
4096 		System modal (dialog has an icon) 	0x1000 &lt;br /&gt;
8192 		Task modal 				0x2000 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Miscellaneous-related Result 		Hexadecimal flag &lt;br /&gt;
0 		(nothing else special) 			0x0 &lt;br /&gt;
262144 		MsgBox has top-most attribute set 	0x40000 &lt;br /&gt;
524288 		title and text are right-justified	0x80000 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;);&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;);&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;, 32);&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;, 32, 3);&lt;br /&gt;
&lt;br /&gt;
// Example making a messagebox with question message and a yes no then get the result&lt;br /&gt;
$Result = MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;, 32 | 4); // Binary operator&lt;br /&gt;
If ( $Result == 6 ) // Yes&lt;br /&gt;
{&lt;br /&gt;
	MsgBox(&amp;quot;You pressed yes&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
Else If ( $Result == 7 ) // No&lt;br /&gt;
{&lt;br /&gt;
	MsgBox(&amp;quot;You pressed no&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
	MsgBox(&amp;quot;Im not sure what you pressed....&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_MsgBox</id>
		<title>Core Function MsgBox</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_MsgBox"/>
				<updated>2011-11-27T06:11:46Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: /* Remarks */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
MsgBox( &amp;lt;message&amp;gt;, &amp;lt;title&amp;gt;, &amp;lt;flag&amp;gt;, &amp;lt;timeout&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Returns a string representation of an integer type converted to hexadecimal.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== message ====&lt;br /&gt;
&lt;br /&gt;
The text of the message box.&lt;br /&gt;
&lt;br /&gt;
==== title ====&lt;br /&gt;
&lt;br /&gt;
The title of the message box.&lt;br /&gt;
&lt;br /&gt;
The default title is &amp;quot;MessageBox&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==== flag ====&lt;br /&gt;
&lt;br /&gt;
Optional; The flag indicates the type of message box and the possible button combinations. See remarks.&lt;br /&gt;
&lt;br /&gt;
Default 64 (Information).&lt;br /&gt;
&lt;br /&gt;
==== timeout ====&lt;br /&gt;
&lt;br /&gt;
Optional; Timeout in seconds. After the timeout has elapsed the message box will be automatically closed.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns the ID of the button pressed. &lt;br /&gt;
&lt;br /&gt;
Failure: Returns -1 if the message box timed out. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Button Pressed 		Return Value  &lt;br /&gt;
OK 			1 &lt;br /&gt;
CANCEL 			2 &lt;br /&gt;
ABORT 			3 &lt;br /&gt;
RETRY 			4 &lt;br /&gt;
IGNORE 			5 &lt;br /&gt;
YES 			6 &lt;br /&gt;
NO 			7 &lt;br /&gt;
TRY AGAIN 		10 &lt;br /&gt;
CONTINUE 		11 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
The flag parameter can be a combination of the following values:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
decimal flag 	Button-related Result			Hexadecimal flag &lt;br /&gt;
0		OK button 				0x0 &lt;br /&gt;
1 		OK and Cancel 				0x1 &lt;br /&gt;
2 		Abort, Retry, and Ignore 		0x2 &lt;br /&gt;
3 		Yes, No, and Cancel 			0x3 &lt;br /&gt;
4 		Yes and No 				0x4 &lt;br /&gt;
5 		Retry and Cancel 			0x5 &lt;br /&gt;
6 		Cancel, Try Again, Continue 		0x6 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Icon-related Result 			Hexadecimal flag &lt;br /&gt;
0 		(No icon) 				0x0 &lt;br /&gt;
16 		Stop-sign icon 				0x10 &lt;br /&gt;
32		Question-mark icon 			0x20 &lt;br /&gt;
48 		Exclamation-point icon 			0x30 &lt;br /&gt;
64		Icon consisting of an 'i' in a circle	0x40 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Default-related Result 			Hexadecimal flag &lt;br /&gt;
0 		First button is default button 		0x0 &lt;br /&gt;
256 		Second button is default button 	0x100 &lt;br /&gt;
512 		Third button is default button 		0x200 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Modality-related Result 			Hexadecimal flag &lt;br /&gt;
0		Application  				0x0 &lt;br /&gt;
4096 		System modal (dialog has an icon) 	0x1000 &lt;br /&gt;
8192 		Task modal 				0x2000 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Miscellaneous-related Result 		Hexadecimal flag &lt;br /&gt;
0 		(nothing else special) 			0x0 &lt;br /&gt;
262144 		MsgBox has top-most attribute set 	0x40000 &lt;br /&gt;
524288 		title and text are right-justified	0x80000 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;);&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;);&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;, 32);&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;, 32, 3);&lt;br /&gt;
&lt;br /&gt;
// Example making a messagebox with question message and a yes no then get the result&lt;br /&gt;
$Result = MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;, 32 | 4); // Binary operator&lt;br /&gt;
If ( $Result == 6 ) // Yes&lt;br /&gt;
{&lt;br /&gt;
	MsgBox(&amp;quot;You pressed yes&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
Else If ( $Result == 7 ) // No&lt;br /&gt;
{&lt;br /&gt;
	MsgBox(&amp;quot;You pressed no&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
	MsgBox(&amp;quot;Im not sure what you pressed....&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Function_Reference</id>
		<title>Function Reference</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Function_Reference"/>
				<updated>2011-11-27T01:10:27Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: /* Other GUI Functions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Function Reference ==&lt;br /&gt;
&lt;br /&gt;
=== How to create a Function ===&lt;br /&gt;
&lt;br /&gt;
To create your own funtions see the Function page.&lt;br /&gt;
&lt;br /&gt;
* [[User Function|User Defined Functions]]&lt;br /&gt;
&lt;br /&gt;
=== Core Functions ===&lt;br /&gt;
&lt;br /&gt;
==== Language Features ====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function Regex Match|&amp;lt;Expression&amp;gt; =~ m/pattern/flags]] -- Match a string to a regular expression pattern and check if it matches and optionally return captured groups&lt;br /&gt;
* [[Core Function Regex Replace|&amp;lt;Expression&amp;gt; =~ s/pattern/replacement/flags]] -- Replace parts of a string using a regular expression pattern and optionally executing functions on the matched groups&lt;br /&gt;
&lt;br /&gt;
==== Console Functions ====&lt;br /&gt;
* [[Core Function Print|Print( &amp;lt;expression&amp;gt; )]] -- Prints an expressions string value to the console window&lt;br /&gt;
* [[Core Function Println|Println( &amp;lt;expression&amp;gt; )]] -- Prints an expressions string value to the console window and inserts a newline charactor at the end.&lt;br /&gt;
* [[Core Function Printf|Printf( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt;... )]] -- Print a formatted string to the console window&lt;br /&gt;
* [[Core Function Input|Input( &amp;lt;expression&amp;gt; )]] -- Capture a string typed to console window&lt;br /&gt;
* [[Core Function InputC|InputC( &amp;lt;expression&amp;gt; )]] -- Capture a char typed to console window&lt;br /&gt;
* [[Core Function Cls|Cls( )]] -- Clear all text from the console window&lt;br /&gt;
&lt;br /&gt;
==== Multithreading Functions ====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function ThreadCreate|ThreadCreate( &amp;lt;name&amp;gt;, &amp;lt;function&amp;gt; )]] -- Create a new thread and start it off executing a function or some code&lt;br /&gt;
* [[Core Function ThreadSleep|ThreadSleep( &amp;lt;name&amp;gt; )]] -- Freeze a thread and make it sleep&lt;br /&gt;
* [[Core Function ThreadResume|ThreadResume( &amp;lt;name&amp;gt; )]] -- Unfreeze a thread and allow it to continue execution&lt;br /&gt;
* [[Core Function ThreadState|ThreadState( &amp;lt;name&amp;gt; )]] -- Returns state of a thread&lt;br /&gt;
* [[Core Function ThreadKill|ThreadKill( &amp;lt;name&amp;gt; )]] -- Terminate a thread and remove it from the script&lt;br /&gt;
* [[Core Function ThreadExists|ThreadExists( &amp;lt;name&amp;gt; )]] -- Check if a thread exists by this name&lt;br /&gt;
* [[Core Function ThreadName|ThreadName( )]] -- Returns the name of the current thread that is executing this code&lt;br /&gt;
* [[Core Function Threads|Threads( )]] -- Return an array of all threads&lt;br /&gt;
&lt;br /&gt;
==== Variable Type Conversions ====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function Char|Char( &amp;lt;expression&amp;gt; )]] -- Returns the single letter representation of an expression&lt;br /&gt;
* [[Core Function Byte|Byte( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 8-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function SByte|SByte( &amp;lt;expression&amp;gt; )]] -- Returns the signed 8-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Short|Short( &amp;lt;expression&amp;gt; )]] -- Returns the signed 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int16|Int16( &amp;lt;expression&amp;gt; )]] -- Returns the signed 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int32|Int32( &amp;lt;expression&amp;gt; )]] -- Returns the signed 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int|Int( &amp;lt;expression&amp;gt; )]] -- Returns the signed 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int64|Int64( &amp;lt;expression&amp;gt; )]] -- Returns the signed 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Long|Long( &amp;lt;expression&amp;gt; )]] -- Returns the signed 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UShort|UShort( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt16|UInt16( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt32|UInt32( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt|UInt( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt64|UInt64( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function ULong|ULong( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Float|Float( &amp;lt;expression&amp;gt; )]] -- Returns the 32-bit floating point representation of an expression&lt;br /&gt;
* [[Core Function Double|Double( &amp;lt;expression&amp;gt; )]] -- Returns the 64-bit floating point representation of an expression&lt;br /&gt;
* [[Core Function String|String( &amp;lt;expression&amp;gt; )]] -- Returns the String representation of an expression&lt;br /&gt;
&lt;br /&gt;
==== Common Variable Functions ====&lt;br /&gt;
&lt;br /&gt;
===== Misc =====&lt;br /&gt;
* [[Core Function Unset|Unset( $variable )]] -- Delete a variable&lt;br /&gt;
&lt;br /&gt;
===== Hash/Array =====&lt;br /&gt;
* [[Core Function Reset|Reset( $variable )]] -- Reset the current array pointer to the first element&lt;br /&gt;
* [[Core Function Next|Next( $variable )]] -- Set the array pointer to the next element&lt;br /&gt;
* [[Core Function Prev|Prev( $variable )]] -- Set the array pointer to the previous element&lt;br /&gt;
&lt;br /&gt;
===== Type Checking =====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function isVarChar|isVarChar( $variable )]] -- Checks if a variable is a char type&lt;br /&gt;
* [[Core Function isVarByte|isVarByte( $variable )]] -- Checks if a variable is an unsigned 8-bit integer type&lt;br /&gt;
* [[Core Function isVarSByte|isVarSByte( $variable )]] -- Checks if a variable is a signed 8-bit integer type&lt;br /&gt;
* [[Core Function isVarShort|isVarShort( $variable )]] -- Checks if a variable is a signed 16-bit integer type&lt;br /&gt;
* [[Core Function isVarInt16|isVarInt16( $variable )]] -- Checks if a variable is a signed 16-bit integer type&lt;br /&gt;
* [[Core Function isVarInt|isVarInt( $variable )]] -- Checks if a variable is a signed 32-bit integer type&lt;br /&gt;
* [[Core Function isVarInt32|isVarInt32( $variable )]] -- Checks if a variable is a signed 32-bit integer type&lt;br /&gt;
* [[Core Function isVarInt64|isVarInt64( $variable )]] -- Checks if a variable is a signed 64-bit integer type&lt;br /&gt;
* [[Core Function isVarLong|isVarLong( $variable )]] -- Checks if a variable is a signed 64-bit integer type&lt;br /&gt;
* [[Core Function isVarUShort|isVarUShort( $variable )]] -- Checks if a variable is an unsigned 16-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt16|isVarUInt16( $variable )]] -- Checks if a variable is an unsigned 16-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt|isVarUInt( $variable )]] -- Checks if a variable is an unsigned 32-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt32|isVarUInt32( $variable )]] -- Checks if a variable is an unsigned 32-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt64|isVarUInt64( $variable )]] -- Checks if a variable is an unsigned 64-bit integer type&lt;br /&gt;
* [[Core Function isVarULong|isVarULong( $variable )]] -- Checks if a variable is an unsigned 64-bit integer type&lt;br /&gt;
* [[Core Function isVarFloat|isVarFloat( $variable )]] -- Checks if a variable is a single precision floating point type&lt;br /&gt;
* [[Core Function isVarDouble|isVarDouble( $variable )]] -- Checks if a variable is a double precision floating point type&lt;br /&gt;
* [[Core Function isVarString|isVarString( $variable )]] -- Checks if a variable is a string type&lt;br /&gt;
* [[Core Function isVarNumber|isVarNumber( $variable )]] -- Checks if a variable is any integer or float/double type&lt;br /&gt;
* [[Core Function isVarBinary|isVarBinary( $variable )]] -- Checks if a variable is a binary type&lt;br /&gt;
* [[Core Function isVarRef|isVarRef( $variable )]] -- Check if a variable is an reference to another variable&lt;br /&gt;
* [[Core Function isVarArray|isVarArray( $variable )]] -- Check if a variable is an array&lt;br /&gt;
* [[Core Function isVarObj|isVarObj( $variable, &amp;lt;type&amp;gt; )]] -- Check if a variable is an object type (This includes classes, file handles etc)&lt;br /&gt;
* [[Core Function isVarClass|isVarClass( $variable, &amp;lt;type&amp;gt; )]] -- Check if a variable's object type is a class&lt;br /&gt;
* [[Core Function isVarGUI|isVarGUI( $variable )]] -- Check if a variable's object type is a GUI&lt;br /&gt;
* [[Core Function isVarGUIObject|isVarGUIObject( $variable )]] -- Check if a variable's object type is a GUI Object (Buttons etc)&lt;br /&gt;
&lt;br /&gt;
==== Binary Data Management Functions ====&lt;br /&gt;
* [[Core Function Pack|Pack( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Pack data into a binary array&lt;br /&gt;
* [[Core Function Unpack|Unpack( &amp;lt;expression&amp;gt;, &amp;lt;binary-array&amp;gt; )]] -- Unpack data from a binary array&lt;br /&gt;
* [[Core Function BinaryCreate|BinaryCreate( &amp;lt;size&amp;gt;, &amp;lt;fill&amp;gt; )]] -- Create a new binary variable and its array size and fill data type &lt;br /&gt;
* [[Core Function BinaryClone|BinaryClone( &amp;lt;binary-array&amp;gt; )]] -- Clone a binary variable 100% and return a new binary variable with exactly same data as the old one&lt;br /&gt;
* [[Core Function BinaryWipe|BinaryWipe( &amp;lt;binary-array&amp;gt; )]] -- Wipes a binary variables data 100% and sets the variable to a blank int containing just 0&lt;br /&gt;
* [[Core Function BinaryStr|BinaryStr( &amp;lt;binary-array&amp;gt;, &amp;lt;separator&amp;gt; )]] -- Create a Hex string from a binary array&lt;br /&gt;
* [[Core Function BinaryHex|BinaryHex( &amp;lt;expression&amp;gt; )]] -- Create a binary array from a hex string&lt;br /&gt;
* [[Core Function BinaryLen|BinaryLen( &amp;lt;binary-array&amp;gt; )]] -- Returns the number of bytes in a binary variable&lt;br /&gt;
* [[Core Function BinaryGet|BinaryGet( &amp;lt;binary-array&amp;gt;, &amp;lt;index&amp;gt; )]] -- Get the byte at an index of a binary variable&lt;br /&gt;
* [[Core Function BinarySet|BinarySet( &amp;lt;binary-array&amp;gt;, &amp;lt;index&amp;gt;, &amp;lt;value&amp;gt; )]] -- Set the byte at an index of a binary variable&lt;br /&gt;
* [[Core Function BinaryReverse|BinaryReverse( &amp;lt;binary-array&amp;gt;, &amp;lt;start&amp;gt;, &amp;lt;length&amp;gt; )]] -- Reverse the order bytes a binary variable&lt;br /&gt;
* [[Core Function BinaryMid|BinaryMid( &amp;lt;binary-array&amp;gt;, &amp;lt;start&amp;gt;, &amp;lt;length&amp;gt; )]] -- Create a binary variable by extracting a number of bytes from another binary variable&lt;br /&gt;
* [[Core Function BinaryAppend|BinaryAppend( &amp;lt;binary-array&amp;gt;, &amp;lt;binary-array2&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Append a binary variables data onto the end or beginning of another binary variables data&lt;br /&gt;
* [[Core Function BinaryInsert|BinaryInsert( &amp;lt;binary-array&amp;gt;, &amp;lt;binary-array2&amp;gt;, &amp;lt;index&amp;gt; )]] -- Insert a binary variables data into another binary variable at a specific location&lt;br /&gt;
* [[Core Function BinaryUnshift|BinaryUnshift( &amp;lt;binary-array&amp;gt;, &amp;lt;byte&amp;gt; )]] -- Add a byte to the beginning of a binary variable&lt;br /&gt;
* [[Core Function BinaryPush|BinaryPush( &amp;lt;binary-array&amp;gt;, &amp;lt;byte&amp;gt; )]] -- Add a byte to the end of a binary variable&lt;br /&gt;
* [[Core Function BinaryShift|BinaryShift( &amp;lt;binary-array&amp;gt; )]] -- Delete the first byte from a binary variable&lt;br /&gt;
* [[Core Function BinaryPop|BinaryPop( &amp;lt;binary-array&amp;gt; )]] -- Delete the last byte from a binary variable&lt;br /&gt;
* [[Core Function BinaryResize|BinaryResize( &amp;lt;binary-array&amp;gt;, &amp;lt;size&amp;gt;, &amp;lt;data&amp;gt; )]] -- Resize a binary variables data array&lt;br /&gt;
* [[Core Function BinaryCompress|BinaryCompress( &amp;lt;binary-array&amp;gt; )]] -- Compress a binary variables data&lt;br /&gt;
* [[Core Function BinaryUncompress|BinaryUncompress( &amp;lt;binary-array&amp;gt; )]] -- Uncompress a binary variable data&lt;br /&gt;
* [[Core Function BinarySave|BinarySave( &amp;lt;binary-array&amp;gt;, &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Save a binary variable data to file&lt;br /&gt;
* [[Core Function BinaryLoad|BinaryLoad( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Create a new binary variable by loading binary data from a file&lt;br /&gt;
&lt;br /&gt;
==== Math Functions ====&lt;br /&gt;
* [[Core Function Abs|Abs( &amp;lt;expression&amp;gt; )]] -- Calculates the absolute value of a number&lt;br /&gt;
* [[Core Function ACos|ACos( &amp;lt;expression&amp;gt; )]] -- Calculates the arcCosine of a number&lt;br /&gt;
* [[Core Function ASin|ASin( &amp;lt;expression&amp;gt; )]] -- Calculates the arcsine of a number&lt;br /&gt;
* [[Core Function ATan|ATan( &amp;lt;expression&amp;gt; )]] -- Calculates the arctangent of a number&lt;br /&gt;
* [[Core Function BitAND|BitAND( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function BitNOT|BitNOT( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function BitOR|BitOR( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function BitROTATE|BitROTATE( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function BitSHIFT|BitSHIFT( &amp;lt;value&amp;gt;, &amp;lt;shift&amp;gt; )]] -- Performs a bit shifting operation&lt;br /&gt;
* [[Core Function BitXOR|BitXOR( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Ceiling|Ceiling( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Cos|Cos( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Cosh|Cosh( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Exp|Exp( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Floor|Floor( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Log|Log( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Math|Math( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Max|Max( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; )]] -- Find the greater number and return it&lt;br /&gt;
* [[Core Function Min|Min( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Mod|Mod( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Pow|Pow( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Random|Random( &amp;lt;expression&amp;gt; )]] -- Get a random number from the defined area.&lt;br /&gt;
* [[Core Function Round|Round( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Sin|Sin( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Sinh|Sinh( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Sqrt|Sqrt( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Tan|Tan( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Tanh|Tanh( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Turncate|Turncate( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
==== String Functions ====&lt;br /&gt;
* [[Core Function Asc|Asc( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function AscW|AscW( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Chr|Chr( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function ChrW|ChrW( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Contains|Contains( &amp;lt;sting&amp;gt;, &amp;lt;string&amp;gt;, &amp;lt;casesense&amp;gt;)]] -- Check is string contains sub string&lt;br /&gt;
* [[Core Function Compare|Compare( &amp;lt;string&amp;gt;, &amp;lt;string&amp;gt; )]] -- Compare two strings to each other&lt;br /&gt;
* [[Core Function Dec|Dec( &amp;lt;expression&amp;gt; )]] -- Returns a integer representation of a hexadecimal string&lt;br /&gt;
* [[Core Function FDec|FDec( &amp;lt;expression&amp;gt; )]] -- Returns a float representation of a hexadecimal string&lt;br /&gt;
* [[Core Function DDec|DDec( &amp;lt;expression&amp;gt; )]] -- Returns a double representation of a hexadecimal string&lt;br /&gt;
* [[Core Function DecPad|DecPad( &amp;lt;expression&amp;gt;, &amp;lt;count&amp;gt; )]] -- Pads numeric string to a given number of chars (Filling in the gap with zeros)&lt;br /&gt;
* [[Core Function EndsWith|EndsWith( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Hex|Hex( &amp;lt;expression&amp;gt;, &amp;lt;length&amp;gt; )]] -- Returns a string representation of an integer type converted to hexadecimal&lt;br /&gt;
* [[Core Function FHex|FHex( &amp;lt;expression&amp;gt; )]] -- Returns a string representation of an float type converted to hexadecimal&lt;br /&gt;
* [[Core Function DHex|DHex( &amp;lt;expression&amp;gt; )]] -- Returns a string representation of an double type converted to hexadecimal&lt;br /&gt;
* [[Core Function InStr|InStr( &amp;lt;string&amp;gt;, &amp;lt;substirng&amp;gt;, &amp;lt;casesense&amp;gt;, &amp;lt;occurrence&amp;gt;, &amp;lt;start&amp;gt;, &amp;lt;count&amp;gt; )]] -- Checks if a string contains a given substring.&lt;br /&gt;
* [[Core Function isAlpha|isAlpha( &amp;lt;expression&amp;gt; )]] -- Checks if string contains only Alphabetic characters&lt;br /&gt;
* [[Core Function isAlphaNumeric|isAlphaNumeric( &amp;lt;expression&amp;gt; )]] -- Checks if string contains only AlphaNumeric(A-Z, 0-9), Characters&lt;br /&gt;
* [[Core Function isASCII|isASCII( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isEmpty|isEmpty( &amp;lt;expression&amp;gt; )]] -- Checks if a string is completely empty.&lt;br /&gt;
* [[Core Function isFloat|isFloat( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isLower|isLower( &amp;lt;expression&amp;gt; )]] -- Checks if string contains only lowercase letters&lt;br /&gt;
* [[Core Function isNumeric|isNumeric( &amp;lt;expression&amp;gt; )]] -- Checks if string only contains numbers&lt;br /&gt;
* [[Core Function isSpace|isSpace( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isSymbol|isSymbol( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isUpper|isUpper( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isXDigit|isXDigit( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function LC|LC( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function LCFirst|LCFirst( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function LCWords|LCWords( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Left|Left( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Match|Match( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function MD5|MD5( &amp;lt;expression&amp;gt; )]] -- Creates MD5 Hash of specified string&lt;br /&gt;
* [[Core Function PadLeft|PadLeft( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function PadRight|PadRight( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function RandStr|RandStr( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Repeat|Repeat( &amp;lt;expression&amp;gt;, &amp;lt;count&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Create a new string or new array containing repeats of a string provided&lt;br /&gt;
* [[Core Function Replace|Replace( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Reverse|Reverse( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Right|Right( &amp;lt;expression&amp;gt;, &amp;lt;count&amp;gt; )]] -- Returns a number of characters from the right-hand side of a string.&lt;br /&gt;
* [[Core Function SHA1|SHA1( &amp;lt;expression&amp;gt; )]] -- Returns SHA1 hash of string&lt;br /&gt;
* [[Core Function Split|Split( &amp;lt;expression&amp;gt;, &amp;lt;delim/pattern&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Splits up a string into substrings depending on the given delimiters.&lt;br /&gt;
* [[Core Function SPrintf|SPrintf( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt;... )]] -- Create a formatted string&lt;br /&gt;
* [[Core Function StartsWith|StartsWith( &amp;lt;expression&amp;gt; )]] -- Checks if string starts with specified string&lt;br /&gt;
* [[Core Function StrLen|StrLen( &amp;lt;expression&amp;gt; )]] -- Returns length of specified string&lt;br /&gt;
* [[Core Function SubStr|SubStr( &amp;lt;expression&amp;gt; )]] -- Return part of a string&lt;br /&gt;
* [[Core Function Trim|Trim( &amp;lt;expression&amp;gt; )]] -- Removes whitespace from the beginning and end of a string&lt;br /&gt;
* [[Core Function TrimLeft|TrimLeft( &amp;lt;expression&amp;gt; )]] --Strip whitespace from the start of a string&lt;br /&gt;
* [[Core Function TrimRight|TrimRight( &amp;lt;expression&amp;gt; )]] -- Strip whitespace from the end of a string&lt;br /&gt;
* [[Core Function UC|UC( &amp;lt;expression&amp;gt; )]] -- Returns string in all Upper Case&lt;br /&gt;
* [[Core Function UCFirst|UCFirst( &amp;lt;expression&amp;gt; )]] -- Upper Cases first letter of string&lt;br /&gt;
* [[Core Function UCWords|UCWords( &amp;lt;expression&amp;gt; )]] -- Upper Cases first letter of each word in string&lt;br /&gt;
&lt;br /&gt;
==== Array Functions ====&lt;br /&gt;
* [[Core Function Join|Join( &amp;lt;array&amp;gt;, &amp;lt;separator&amp;gt; )]] -- Join an array into a string with an optional separator&lt;br /&gt;
* [[Core Function UBound|UBound( &amp;lt;array/binary-array&amp;gt; )]] -- Returns the size of array (How many elements it currently has stored)&lt;br /&gt;
* [[Core Function Push|Push( &amp;lt;array&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Add items to the end of an array&lt;br /&gt;
* [[Core Function Insert|Insert( &amp;lt;array&amp;gt;, &amp;lt;id&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Add items to an array at a given location&lt;br /&gt;
* [[Core Function Unshift|Unshift( &amp;lt;array&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Add items to the beginning of an array&lt;br /&gt;
* [[Core Function Pop|Pop( &amp;lt;array&amp;gt; )]] -- Delete the first item in an array&lt;br /&gt;
* [[Core Function Shift|Shift( &amp;lt;array&amp;gt; )]] -- Delete the last item in an array&lt;br /&gt;
* [[Core Function Remove|Remove( &amp;lt;array&amp;gt;, &amp;lt;start-id&amp;gt;, &amp;lt;end-id&amp;gt; )]] -- Delete items from an array starting at a given location and stopping at a given location&lt;br /&gt;
* [[Core Function Delete|Delete( &amp;lt;array&amp;gt;, &amp;lt;expresions&amp;gt; )]] -- Delete items from an array that match regex patterns, number patterns, or contain specific text etc&lt;br /&gt;
&lt;br /&gt;
==== Hash (Dictionary) Functions ====&lt;br /&gt;
&lt;br /&gt;
==== Process Functions ====&lt;br /&gt;
* [[Core Function DLLCall|DLLCall( &amp;lt;dll&amp;gt;, &amp;lt;function&amp;gt;, &amp;lt;returntype&amp;gt;, &amp;lt;paramtypes&amp;gt;, &amp;lt;params&amp;gt; )]] -- Dynamically call a function in a DLL&lt;br /&gt;
* [[Core Function Run|Run( &amp;lt;file&amp;gt;, &amp;lt;workdir&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Runs an external program&lt;br /&gt;
* [[Core Function RunWait|RunWait( &amp;lt;file&amp;gt;, &amp;lt;workdir&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Runs an external program and waits until the program finishes&lt;br /&gt;
* [[Core Function ProcessClose|ProcessClose( &amp;lt;pid/name&amp;gt; )]] -- Terminates a named process&lt;br /&gt;
* [[Core Function ProcessExists|ProcessExists( &amp;lt;pid/name&amp;gt; )]] -- Checks to see if a specified process exists&lt;br /&gt;
* [[Core Function ProcessList|ProcessList( &amp;lt;name&amp;gt; )]] -- Returns an array listing the currently running processes (names and PIDs)&lt;br /&gt;
* [[Core Function ProcessSetPriority|ProcessSetPriority( &amp;lt;name&amp;gt;, &amp;lt;priority&amp;gt; )]] -- Changes the priority of a process&lt;br /&gt;
* [[Core Function ProcessWait|ProcessWait( &amp;lt;name&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Pauses the current thread until a given process exists or optional the timeout expires&lt;br /&gt;
* [[Core Function ProcessWaitClose|ProcessWaitClose( &amp;lt;name&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Pauses the current thread until a given process no longer exists or optional the timeout expires&lt;br /&gt;
* [[Core Function Shutdown|Shutdown( &amp;lt;shutdown code&amp;gt; )]] -- Shuts down the system&lt;br /&gt;
&lt;br /&gt;
==== Environment Management ====&lt;br /&gt;
* [[Core Function EnvExpand|EnvExpand( &amp;lt;expression&amp;gt; )]] -- Convert a string containing %name% env tags and return complete string with names resolved&lt;br /&gt;
* [[Core Function EnvGet|EnvGet( &amp;lt;tag&amp;gt; )]] -- Get the value of an environment variable&lt;br /&gt;
* [[Core Function EnvSet|EnvSet( &amp;lt;tag&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Set the value of an environment variable&lt;br /&gt;
* [[Core Function EnvUpdate|EnvUpdate( &amp;lt;tag&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Refreshes the OS environment&lt;br /&gt;
&lt;br /&gt;
==== File Functions ====&lt;br /&gt;
&lt;br /&gt;
===== File Create/Read/Write Functions =====&lt;br /&gt;
* [[Core Function FileOpen|FileOpen( &amp;lt;FileName&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Opens a file for reading or writing&lt;br /&gt;
* [[Core Function FileClose|FileClose( &amp;lt;file&amp;gt; )]] -- Closes a previously opened file&lt;br /&gt;
* [[Core Function FileWrite|FileWrite( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Write text to previously opened file at the current File Steam pointer location&lt;br /&gt;
* [[Core Function FileWriteBinary|FileWriteBinary( &amp;lt;file&amp;gt;, &amp;lt;binary-array&amp;gt; )]] -- Write the data from a binary variable to previously opened file at the current File Steam pointer location&lt;br /&gt;
* [[Core Function FileAppend|FileAppend( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Append a line of text to the end of a previously opened text file&lt;br /&gt;
* [[Core Function FileAppendBinary|FileAppendBinary( &amp;lt;file&amp;gt;, &amp;lt;binary-array&amp;gt; )]] -- Append the data from a binary variable to the end of a previously opened file&lt;br /&gt;
* [[Core Function FileSeek|FileSeek( &amp;lt;file&amp;gt;, &amp;lt;offset&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Change the POSITION of the File Stream pointer&lt;br /&gt;
* [[Core Function FilePos|FilePos( &amp;lt;file&amp;gt; )]] -- Get the current POSITION of the File Stream pointer&lt;br /&gt;
* [[Core Function FileRead|FileRead( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Read a number of characters from a previously opened text file starting from current File Steam pointer location&lt;br /&gt;
* [[Core Function FileReadBinary|FileReadBinary( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Read a number of bytes from a previously opened file starting from current File Steam pointer location&lt;br /&gt;
* [[Core Function FileReadLine|FileReadLine( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Read a line of text from a previously opened text file (Or specify a name of a file)&lt;br /&gt;
* [[Core Function FileReadLines|FileReadLines( &amp;lt;file&amp;gt; )]] -- Read all lines of text from a previously opened text file (Or specify a name of a file)&lt;br /&gt;
* [[Core Function FileSave|FileSave( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Save all text to a file&lt;br /&gt;
* [[Core Function FileLoad|FileLoad( &amp;lt;file&amp;gt; )]] -- Load all text from a file&lt;br /&gt;
&lt;br /&gt;
==== GUI Functions ====&lt;br /&gt;
&lt;br /&gt;
===== Dialog Creation Functions =====&lt;br /&gt;
* [[Core Function GUICreate|GUICreate( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function DoEvents|DoEvents( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Dialog Properties Get/Set Functions =====&lt;br /&gt;
* [[Core Function GUIState|GUIState( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function GUISetState|GUISetState( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Control Creation Functions =====&lt;br /&gt;
* [[Core Function GUICreateButton|GUICreateButton( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a button&lt;br /&gt;
* [[Core Function GUICreateTextBox|GUICreateTextBox( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a Textbox&lt;br /&gt;
* [[Core Function GUICreateTextBoxEx|GUICreateTextBoxEx( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a multiline Textbox&lt;br /&gt;
* [[Core Function GUICreateTimer|GUICreateTimer( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;interval&amp;gt; )]] -- Create a timer&lt;br /&gt;
* [[Core Function GUICreateDataGrid|GUICreateDataGrid( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a Data Grid control.&lt;br /&gt;
&lt;br /&gt;
===== Event Linking Functions =====&lt;br /&gt;
* [[Core Function GUILink|GUILink( &amp;lt;gui/guiobject&amp;gt;, &amp;lt;linktype&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Dialog/Control Properties Get/Set Functions =====&lt;br /&gt;
* [[Core Function GUIGetData|GUIGetData( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function GUISetData|GUISetData( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Control Properties Get/Set Functions =====&lt;br /&gt;
* [[Core Function GUITimerStart|GUITimerStart( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function GUITimerStop|GUITimerStop( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Other GUI Functions =====&lt;br /&gt;
* [[Core Function MsgBox|MsgBox( &amp;lt;message&amp;gt;, &amp;lt;title&amp;gt;, &amp;lt;flag&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Show a message dialog&lt;br /&gt;
* [[Core Function InputBox|InputBox( &amp;lt;title&amp;gt;, &amp;lt;message&amp;gt;, &amp;lt;default text&amp;gt; )]] -- Shows a box to input text.&lt;br /&gt;
&lt;br /&gt;
==== Keyboard Control Functions ====&lt;br /&gt;
* [[Core Function HotKeySet|HotKeySet( &amp;lt;keydef&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Create a custom hotkey to run custom code or execute a function.&lt;br /&gt;
* [[Core Function SendKeys|SendKeys( &amp;lt;keydef&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Sends simulated keystrokes to the active window&lt;br /&gt;
&lt;br /&gt;
==== Mouse Control Functions ====&lt;br /&gt;
* [[Core Function MouseClick|MouseClick ( &amp;lt;button&amp;gt;, &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt;, &amp;lt;clicks&amp;gt;, &amp;lt;speed&amp;gt; )]] -- Perform a mouse click operation&lt;br /&gt;
* [[Core Function MouseClickDrag|MouseClickDrag ( &amp;lt;button&amp;gt;, &amp;lt;x1&amp;gt;, &amp;lt;y1&amp;gt;, &amp;lt;x2&amp;gt;, &amp;lt;y21&amp;gt;, &amp;lt;speed&amp;gt; )]] -- Perform a mouse click and drag operation&lt;br /&gt;
* [[Core Function MouseDown|MouseDown ( &amp;lt;button&amp;gt; )]] -- Perform a mouse down event at the current mouse position&lt;br /&gt;
* [[Core Function MouseUp|MouseUp ( &amp;lt;button&amp;gt; )]] -- Perform a mouse up event at the current mouse position&lt;br /&gt;
* [[Core Function MouseMove|MouseMove ( &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt;, &amp;lt;speed&amp;gt; )]] -- Moves the mouse pointer&lt;br /&gt;
* [[Core Function MouseGetPos|MouseGetPos ( )]] -- Retrieves the current position of the mouse cursor&lt;br /&gt;
* [[Core Function MouseGetCursor|MouseGetCursor ( )]] -- Returns a cursor ID Number of the current Mouse Cursor&lt;br /&gt;
* [[Core Function MouseWheel|MouseWheel ( &amp;lt;direction&amp;gt;, &amp;lt;clicks&amp;gt; )]] -- Moves the mouse wheel up or down.&lt;br /&gt;
&lt;br /&gt;
==== Window Management Functions ====&lt;br /&gt;
* [[Core Function WinActivate|WinActivate ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Activates (gives focus to) a window&lt;br /&gt;
* [[Core Function WinActive|WinActive ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Checks to see if a specified window exists and is currently active&lt;br /&gt;
* [[Core Function WinExists|WinExists ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Checks to see if a specified window exists&lt;br /&gt;
* [[Core Function WinGetHandle|WinGetHandle ( &amp;lt;title&amp;gt;, &amp;lt;text&amp;gt; )]] -- Retrieves the internal handle of a window&lt;br /&gt;
&lt;br /&gt;
==== Misc Functions ====&lt;br /&gt;
* [[Core Function Return|Return &amp;lt;expressions&amp;gt;]] -- Returns a result from a Function.&lt;br /&gt;
* [[Core Function Throw|Throw( &amp;lt;expression&amp;gt; )]] -- Throw an exception.&lt;br /&gt;
* [[Core Function Eval|Eval( &amp;lt;expression&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Evaluate a string as Sputnik code.&lt;br /&gt;
* [[Core Function GC|GC( &amp;lt;flag&amp;gt; )]] -- Use the garbage collector.&lt;br /&gt;
* [[Core Function Require|Require( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Add all functions etc from a file for use.&lt;br /&gt;
* [[Core Function Include|Include( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Add all functions etc from a file for use and execute all expressions.&lt;br /&gt;
* [[Core Function PixelGetColor |PixelGetColor ( &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt; )]] -- Returns a pixel color according to x, y pixel coordinates.&lt;br /&gt;
* [[Core Function Opt|Opt( &amp;lt;option&amp;gt;, &amp;lt;value&amp;gt; )]] -- Changes the operation of various Sputnik functions/parameters&lt;br /&gt;
&lt;br /&gt;
=== User Defined Functions ===&lt;br /&gt;
&lt;br /&gt;
These functions are created using Sputnik and are not part of the Sputnik core language.&lt;br /&gt;
&lt;br /&gt;
[[Category:Language Reference]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Random</id>
		<title>Core Function Random</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Random"/>
				<updated>2011-11-27T01:08:52Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
Random( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Get a random number from the defined area.&lt;br /&gt;
&lt;br /&gt;
=== expression ===&lt;br /&gt;
&lt;br /&gt;
A number, or a variable containing a number.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$var = 5;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== expression2 ===&lt;br /&gt;
&lt;br /&gt;
A number, or a variable containing a number.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$var2 = 33;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Return Value === &lt;br /&gt;
&lt;br /&gt;
Success: Returns a random number.&lt;br /&gt;
Failure: Does not return a random number (if an expression is not properly defined).&lt;br /&gt;
&lt;br /&gt;
==== Some Examples ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$var = 5; // first expression&lt;br /&gt;
$var2 = 33; // second expression&lt;br /&gt;
$ran = Random($var, $var2); // function in variable&lt;br /&gt;
printf($ran); // print a random number from $ran&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_InputBox</id>
		<title>Core Function InputBox</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_InputBox"/>
				<updated>2011-11-27T01:08:34Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
InputBox( &amp;lt;title&amp;gt;, &amp;lt;message&amp;gt;, &amp;lt;default text&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Shows a box to input text.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== title ====&lt;br /&gt;
&lt;br /&gt;
The title of the input box.&lt;br /&gt;
&lt;br /&gt;
==== message ====&lt;br /&gt;
&lt;br /&gt;
The message asking the user in the input box.&lt;br /&gt;
&lt;br /&gt;
==== default text ====&lt;br /&gt;
&lt;br /&gt;
The default text that appears in the text box of the input box.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns the text inputted in the text box.&lt;br /&gt;
Failure: Returns blank.&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$Form = InputBox(&amp;quot;Hello!&amp;quot;, &amp;quot;What is your name?&amp;quot;, &amp;quot;&amp;quot;);&lt;br /&gt;
MsgBox(&amp;quot;Your name is &amp;quot;.$Form.&amp;quot;!&amp;quot;, &amp;quot;Hello!&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_InputBox</id>
		<title>Core Function InputBox</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_InputBox"/>
				<updated>2011-11-27T01:08:21Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: Created page with &amp;quot;&amp;lt;pre&amp;gt; InputBox( &amp;lt;title&amp;gt;, &amp;lt;message&amp;gt;, &amp;lt;default text&amp;gt; ) &amp;lt;/pre&amp;gt;  === Description ===  Shows a box to input text.  === Parameters ===  ==== title ====  The title of the input box.  ==...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
InputBox( &amp;lt;title&amp;gt;, &amp;lt;message&amp;gt;, &amp;lt;default text&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Shows a box to input text.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== title ====&lt;br /&gt;
&lt;br /&gt;
The title of the input box.&lt;br /&gt;
&lt;br /&gt;
==== message ====&lt;br /&gt;
&lt;br /&gt;
The message asking the user in the input box.&lt;br /&gt;
&lt;br /&gt;
==== default text ====&lt;br /&gt;
&lt;br /&gt;
The default text that appears in the text box of the input box.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns the text inputted in the text box.&lt;br /&gt;
Failure: Returns blank.&lt;br /&gt;
&lt;br /&gt;
=== Examples ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$Form = InputBox(&amp;quot;Hello!&amp;quot;, &amp;quot;What is your name?&amp;quot;, &amp;quot;&amp;quot;);&lt;br /&gt;
MsgBox(&amp;quot;Your name is &amp;quot;.$Form.&amp;quot;!&amp;quot;, &amp;quot;Hello!&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/The_Team</id>
		<title>The Team</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/The_Team"/>
				<updated>2011-11-27T00:31:56Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* UberFox &lt;br /&gt;
** Head Developer&lt;br /&gt;
&lt;br /&gt;
* T3charmy&lt;br /&gt;
** Side Developer&lt;br /&gt;
** Wiki Editor&lt;br /&gt;
&lt;br /&gt;
* Alexpja&lt;br /&gt;
** Wiki Editor&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_MsgBox</id>
		<title>Core Function MsgBox</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_MsgBox"/>
				<updated>2011-11-26T23:16:48Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
MsgBox( &amp;lt;message&amp;gt;, &amp;lt;title&amp;gt;, &amp;lt;flag&amp;gt;, &amp;lt;timeout&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Returns a string representation of an integer type converted to hexadecimal.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== message ====&lt;br /&gt;
&lt;br /&gt;
The text of the message box.&lt;br /&gt;
&lt;br /&gt;
==== title ====&lt;br /&gt;
&lt;br /&gt;
The title of the message box.&lt;br /&gt;
&lt;br /&gt;
The default title is &amp;quot;MessageBox&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==== flag ====&lt;br /&gt;
&lt;br /&gt;
Optional; The flag indicates the type of message box and the possible button combinations. See remarks.&lt;br /&gt;
&lt;br /&gt;
Default 64 (Information).&lt;br /&gt;
&lt;br /&gt;
==== timeout ====&lt;br /&gt;
&lt;br /&gt;
Optional; Timeout in seconds. After the timeout has elapsed the message box will be automatically closed.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns the ID of the button pressed. &lt;br /&gt;
&lt;br /&gt;
Failure: Returns -1 if the message box timed out. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Button Pressed 		Return Value  &lt;br /&gt;
OK 			1 &lt;br /&gt;
CANCEL 			2 &lt;br /&gt;
ABORT 			3 &lt;br /&gt;
RETRY 			4 &lt;br /&gt;
IGNORE 			5 &lt;br /&gt;
YES 			6 &lt;br /&gt;
NO 			7 &lt;br /&gt;
TRY AGAIN 		10 &lt;br /&gt;
CONTINUE 		11 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
The flag parameter can be a combination of the following values:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
decimal flag 	Button-related Result			Hexadecimal flag &lt;br /&gt;
0		OK button 				0x0 &lt;br /&gt;
1 		OK and Cancel 				0x1 &lt;br /&gt;
2 		Abort, Retry, and Ignore 		0x2 &lt;br /&gt;
3 		Yes, No, and Cancel 			0x3 &lt;br /&gt;
4 		Yes and No 				0x4 &lt;br /&gt;
5 		Retry and Cancel 			0x5 &lt;br /&gt;
6 		Cancel, Try Again, Continue 		0x6 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Icon-related Result 			Hexadecimal flag &lt;br /&gt;
0 		(No icon) 				0x0 &lt;br /&gt;
16 		Stop-sign icon 				0x10 &lt;br /&gt;
32		Question-mark icon 			0x20 &lt;br /&gt;
48 		Exclamation-point icon 			0x30 &lt;br /&gt;
64		Icon consisting of an 'i' in a circle 0x40 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Default-related Result 			Hexadecimal flag &lt;br /&gt;
0 		First button is default button 		0x0 &lt;br /&gt;
256 		Second button is default button 	0x100 &lt;br /&gt;
512 		Third button is default button 		0x200 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Modality-related Result 		Hexadecimal flag &lt;br /&gt;
0		Application  				0x0 &lt;br /&gt;
4096 		System modal (dialog has an icon) 	0x1000 &lt;br /&gt;
8192 		Task modal 				0x2000 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Miscellaneous-related Result 		Hexadecimal flag &lt;br /&gt;
0 		(nothing else special) 			0x0 &lt;br /&gt;
262144 		MsgBox has top-most attribute set 	0x40000 &lt;br /&gt;
524288 		title and text are right-justified	0x80000 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;);&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;);&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;, 32);&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;, 32, 3);&lt;br /&gt;
&lt;br /&gt;
// Example making a messagebox with question message and a yes no then get the result&lt;br /&gt;
$Result = MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;, 32 | 4); // Binary operator&lt;br /&gt;
If ( $Result == 6 ) // Yes&lt;br /&gt;
{&lt;br /&gt;
	MsgBox(&amp;quot;You pressed yes&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
Else If ( $Result == 7 ) // No&lt;br /&gt;
{&lt;br /&gt;
	MsgBox(&amp;quot;You pressed no&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
	MsgBox(&amp;quot;Im not sure what you pressed....&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_MsgBox</id>
		<title>Core Function MsgBox</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_MsgBox"/>
				<updated>2011-11-26T22:52:59Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
MsgBox( &amp;lt;message&amp;gt;, &amp;lt;title&amp;gt;, &amp;lt;flag&amp;gt;, &amp;lt;timeout&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Returns a string representation of an integer type converted to hexadecimal.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== message ====&lt;br /&gt;
&lt;br /&gt;
The text of the message box.&lt;br /&gt;
&lt;br /&gt;
==== title ====&lt;br /&gt;
&lt;br /&gt;
The title of the message box.&lt;br /&gt;
&lt;br /&gt;
Default &amp;quot;MessageBox&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==== flag ====&lt;br /&gt;
&lt;br /&gt;
Optional; The flag indicates the type of message box and the possible button combinations. See remarks.&lt;br /&gt;
&lt;br /&gt;
Default 0.&lt;br /&gt;
&lt;br /&gt;
==== timeout ====&lt;br /&gt;
&lt;br /&gt;
Optional; Timeout in seconds. After the timeout has elapsed the message box will be automatically closed.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns the ID of the button pressed. &lt;br /&gt;
&lt;br /&gt;
Failure: Returns -1 if the message box timed out. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Button Pressed 		Return Value  &lt;br /&gt;
OK 			1 &lt;br /&gt;
CANCEL 			2 &lt;br /&gt;
ABORT 			3 &lt;br /&gt;
RETRY 			4 &lt;br /&gt;
IGNORE 			5 &lt;br /&gt;
YES 			6 &lt;br /&gt;
NO 			7 &lt;br /&gt;
TRY AGAIN 		10 &lt;br /&gt;
CONTINUE 		11 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
The flag parameter can be a combination of the following values:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
decimal flag 	Button-related Result			Hexadecimal flag &lt;br /&gt;
0		OK button 				0x0 &lt;br /&gt;
1 		OK and Cancel 				0x1 &lt;br /&gt;
2 		Abort, Retry, and Ignore 		0x2 &lt;br /&gt;
3 		Yes, No, and Cancel 			0x3 &lt;br /&gt;
4 		Yes and No 				0x4 &lt;br /&gt;
5 		Retry and Cancel 			0x5 &lt;br /&gt;
6 		Cancel, Try Again, Continue 		0x6 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Icon-related Result 			Hexadecimal flag &lt;br /&gt;
0 		(No icon) 				0x0 &lt;br /&gt;
16 		Stop-sign icon 				0x10 &lt;br /&gt;
32		Question-mark icon 			0x20 &lt;br /&gt;
48 		Exclamation-point icon 			0x30 &lt;br /&gt;
64		Icon consisting of an 'i' in a circle 0x40 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Default-related Result 			Hexadecimal flag &lt;br /&gt;
0 		First button is default button 		0x0 &lt;br /&gt;
256 		Second button is default button 	0x100 &lt;br /&gt;
512 		Third button is default button 		0x200 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Modality-related Result 		Hexadecimal flag &lt;br /&gt;
0		Application  				0x0 &lt;br /&gt;
4096 		System modal (dialog has an icon) 	0x1000 &lt;br /&gt;
8192 		Task modal 				0x2000 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Miscellaneous-related Result 		Hexadecimal flag &lt;br /&gt;
0 		(nothing else special) 			0x0 &lt;br /&gt;
262144 		MsgBox has top-most attribute set 	0x40000 &lt;br /&gt;
524288 		title and text are right-justified	0x80000 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;);&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;);&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;, 32);&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;, 32, 3);&lt;br /&gt;
&lt;br /&gt;
// Example making a messagebox with question message and a yes no then get the result&lt;br /&gt;
$Result = MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;, 32 | 4); // Binary operator&lt;br /&gt;
If ( $Result == 6 ) // Yes&lt;br /&gt;
{&lt;br /&gt;
	MsgBox(&amp;quot;You pressed yes&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
Else If ( $Result == 7 ) // No&lt;br /&gt;
{&lt;br /&gt;
	MsgBox(&amp;quot;You pressed no&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
	MsgBox(&amp;quot;Im not sure what you pressed....&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_MsgBox</id>
		<title>Core Function MsgBox</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_MsgBox"/>
				<updated>2011-11-26T22:52:09Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
MsgBox( &amp;lt;message&amp;gt;, &amp;lt;title&amp;gt;, &amp;lt;flag&amp;gt;, &amp;lt;timeout&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Returns a string representation of an integer type converted to hexadecimal.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
&lt;br /&gt;
==== message ====&lt;br /&gt;
&lt;br /&gt;
The text of the message box.&lt;br /&gt;
&lt;br /&gt;
==== title ====&lt;br /&gt;
&lt;br /&gt;
The title of the message box.&lt;br /&gt;
&lt;br /&gt;
Default &amp;quot;MessageBox&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==== flag ====&lt;br /&gt;
&lt;br /&gt;
Optional; The flag indicates the type of message box and the possible button combinations. See remarks.&lt;br /&gt;
&lt;br /&gt;
Default 0.&lt;br /&gt;
&lt;br /&gt;
==== timeout ===&lt;br /&gt;
&lt;br /&gt;
Optional; Timeout in seconds. After the timeout has elapsed the message box will be automatically closed.&lt;br /&gt;
&lt;br /&gt;
=== Return Value ===&lt;br /&gt;
&lt;br /&gt;
Success: Returns the ID of the button pressed. &lt;br /&gt;
&lt;br /&gt;
Failure: Returns -1 if the message box timed out. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Button Pressed 		Return Value  &lt;br /&gt;
OK 			1 &lt;br /&gt;
CANCEL 			2 &lt;br /&gt;
ABORT 			3 &lt;br /&gt;
RETRY 			4 &lt;br /&gt;
IGNORE 			5 &lt;br /&gt;
YES 			6 &lt;br /&gt;
NO 			7 &lt;br /&gt;
TRY AGAIN 		10 &lt;br /&gt;
CONTINUE 		11 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Remarks ===&lt;br /&gt;
&lt;br /&gt;
The flag parameter can be a combination of the following values:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
decimal flag 	Button-related Result			Hexadecimal flag &lt;br /&gt;
0		OK button 				0x0 &lt;br /&gt;
1 		OK and Cancel 				0x1 &lt;br /&gt;
2 		Abort, Retry, and Ignore 		0x2 &lt;br /&gt;
3 		Yes, No, and Cancel 			0x3 &lt;br /&gt;
4 		Yes and No 				0x4 &lt;br /&gt;
5 		Retry and Cancel 			0x5 &lt;br /&gt;
6 		Cancel, Try Again, Continue 		0x6 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Icon-related Result 			Hexadecimal flag &lt;br /&gt;
0 		(No icon) 				0x0 &lt;br /&gt;
16 		Stop-sign icon 				0x10 &lt;br /&gt;
32		Question-mark icon 			0x20 &lt;br /&gt;
48 		Exclamation-point icon 			0x30 &lt;br /&gt;
64		Icon consisting of an 'i' in a circle 0x40 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Default-related Result 			Hexadecimal flag &lt;br /&gt;
0 		First button is default button 		0x0 &lt;br /&gt;
256 		Second button is default button 	0x100 &lt;br /&gt;
512 		Third button is default button 		0x200 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Modality-related Result 		Hexadecimal flag &lt;br /&gt;
0		Application  				0x0 &lt;br /&gt;
4096 		System modal (dialog has an icon) 	0x1000 &lt;br /&gt;
8192 		Task modal 				0x2000 &lt;br /&gt;
&lt;br /&gt;
decimal flag 	Miscellaneous-related Result 		Hexadecimal flag &lt;br /&gt;
0 		(nothing else special) 			0x0 &lt;br /&gt;
262144 		MsgBox has top-most attribute set 	0x40000 &lt;br /&gt;
524288 		title and text are right-justified	0x80000 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Example ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;);&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;);&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;, 32);&lt;br /&gt;
MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;, 32, 3);&lt;br /&gt;
&lt;br /&gt;
// Example making a messagebox with question message and a yes no then get the result&lt;br /&gt;
$Result = MsgBox(&amp;quot;My Message&amp;quot;, &amp;quot;My Title&amp;quot;, 32 | 4); // Binary operator&lt;br /&gt;
If ( $Result == 6 ) // Yes&lt;br /&gt;
{&lt;br /&gt;
	MsgBox(&amp;quot;You pressed yes&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
Else If ( $Result == 7 ) // No&lt;br /&gt;
{&lt;br /&gt;
	MsgBox(&amp;quot;You pressed no&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
else&lt;br /&gt;
{&lt;br /&gt;
	MsgBox(&amp;quot;Im not sure what you pressed....&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Core Function]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_MsgBox</id>
		<title>Core Function MsgBox</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_MsgBox"/>
				<updated>2011-11-26T22:40:13Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
MsgBox( &amp;lt;expression&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Show a message dialog.&lt;br /&gt;
&lt;br /&gt;
=== expression  ===&lt;br /&gt;
&lt;br /&gt;
With a string:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
MsgBox(&amp;quot;Hello.&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
With a variable:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$testing = &amp;quot;Kittens&amp;quot;;&lt;br /&gt;
MsgBox($testing);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Some Examples ====&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_MsgBox</id>
		<title>Core Function MsgBox</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_MsgBox"/>
				<updated>2011-11-26T22:38:58Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: Created page with &amp;quot;&amp;lt;pre&amp;gt; MsgBox( &amp;lt;expression&amp;gt; ) &amp;lt;/pre&amp;gt;  === Description ===  Show a message dialog.  === Usage ===  With a string:  &amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt; MsgBox(&amp;quot;Hello.&amp;quot;); &amp;lt;/syntaxhighli...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
MsgBox( &amp;lt;expression&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Show a message dialog.&lt;br /&gt;
&lt;br /&gt;
=== Usage ===&lt;br /&gt;
&lt;br /&gt;
With a string:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
MsgBox(&amp;quot;Hello.&amp;quot;);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
With a variable:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$testing = &amp;quot;Kittens&amp;quot;;&lt;br /&gt;
MsgBox($testing);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Some Examples ====&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Random</id>
		<title>Core Function Random</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Random"/>
				<updated>2011-11-26T22:18:43Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: /* Some Examples */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
Random( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Get a random number from the defined area.&lt;br /&gt;
&lt;br /&gt;
=== expression ===&lt;br /&gt;
&lt;br /&gt;
A number, or a variable containing a number.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$var = 5;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== expression2 ===&lt;br /&gt;
&lt;br /&gt;
A number, or a variable containing a number.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$var2 = 33;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Return Value === &lt;br /&gt;
&lt;br /&gt;
Success: Returns a random number.&lt;br /&gt;
Failure: Does not return a random number (if an expression is not properly defined).&lt;br /&gt;
&lt;br /&gt;
==== Some Examples ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$var = 5; // first expression&lt;br /&gt;
$var2 = 33; // second expression&lt;br /&gt;
$ran = Random($var, $var2); // function in variable&lt;br /&gt;
printf($ran); // print a random number from $ran&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Function_Reference</id>
		<title>Function Reference</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Function_Reference"/>
				<updated>2011-11-26T22:18:21Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: /* Math Functions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Function Reference ==&lt;br /&gt;
&lt;br /&gt;
=== How to create a Function ===&lt;br /&gt;
&lt;br /&gt;
To create your own funtions see the Function page.&lt;br /&gt;
&lt;br /&gt;
* [[User Function|User Defined Functions]]&lt;br /&gt;
&lt;br /&gt;
=== Core Functions ===&lt;br /&gt;
&lt;br /&gt;
==== Language Features ====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function Regex Match|&amp;lt;Expression&amp;gt; =~ m/pattern/flags]] -- Match a string to a regular expression pattern and check if it matches and optionally return captured groups&lt;br /&gt;
* [[Core Function Regex Replace|&amp;lt;Expression&amp;gt; =~ s/pattern/replacement/flags]] -- Replace parts of a string using a regular expression pattern and optionally executing functions on the matched groups&lt;br /&gt;
&lt;br /&gt;
==== Console Functions ====&lt;br /&gt;
* [[Core Function Print|Print( &amp;lt;expression&amp;gt; )]] -- Prints an expressions string value to the console window&lt;br /&gt;
* [[Core Function Println|Println( &amp;lt;expression&amp;gt; )]] -- Prints an expressions string value to the console window and inserts a newline charactor at the end.&lt;br /&gt;
* [[Core Function Printf|Printf( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt;... )]] -- Print a formatted string to the console window&lt;br /&gt;
* [[Core Function Input|Input( &amp;lt;expression&amp;gt; )]] -- Capture a string typed to console window&lt;br /&gt;
* [[Core Function InputC|InputC( &amp;lt;expression&amp;gt; )]] -- Capture a char typed to console window&lt;br /&gt;
* [[Core Function Cls|Cls( )]] -- Clear all text from the console window&lt;br /&gt;
&lt;br /&gt;
==== Multithreading Functions ====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function ThreadCreate|ThreadCreate( &amp;lt;name&amp;gt;, &amp;lt;function&amp;gt; )]] -- Create a new thread and start it off executing a function or some code&lt;br /&gt;
* [[Core Function ThreadSleep|ThreadSleep( &amp;lt;name&amp;gt; )]] -- Freeze a thread and make it sleep&lt;br /&gt;
* [[Core Function ThreadResume|ThreadResume( &amp;lt;name&amp;gt; )]] -- Unfreeze a thread and allow it to continue execution&lt;br /&gt;
* [[Core Function ThreadState|ThreadState( &amp;lt;name&amp;gt; )]] -- Returns state of a thread&lt;br /&gt;
* [[Core Function ThreadKill|ThreadKill( &amp;lt;name&amp;gt; )]] -- Terminate a thread and remove it from the script&lt;br /&gt;
* [[Core Function ThreadExists|ThreadExists( &amp;lt;name&amp;gt; )]] -- Check if a thread exists by this name&lt;br /&gt;
* [[Core Function ThreadName|ThreadName( )]] -- Returns the name of the current thread that is executing this code&lt;br /&gt;
* [[Core Function Threads|Threads( )]] -- Return an array of all threads&lt;br /&gt;
&lt;br /&gt;
==== Variable Type Conversions ====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function Char|Char( &amp;lt;expression&amp;gt; )]] -- Returns the single letter representation of an expression&lt;br /&gt;
* [[Core Function Byte|Byte( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 8-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function SByte|SByte( &amp;lt;expression&amp;gt; )]] -- Returns the signed 8-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Short|Short( &amp;lt;expression&amp;gt; )]] -- Returns the signed 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int16|Int16( &amp;lt;expression&amp;gt; )]] -- Returns the signed 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int32|Int32( &amp;lt;expression&amp;gt; )]] -- Returns the signed 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int|Int( &amp;lt;expression&amp;gt; )]] -- Returns the signed 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Int64|Int64( &amp;lt;expression&amp;gt; )]] -- Returns the signed 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Long|Long( &amp;lt;expression&amp;gt; )]] -- Returns the signed 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UShort|UShort( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt16|UInt16( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 16-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt32|UInt32( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt|UInt( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 32-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function UInt64|UInt64( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function ULong|ULong( &amp;lt;expression&amp;gt; )]] -- Returns the unsigned 64-bit integer (whole number) representation of an expression&lt;br /&gt;
* [[Core Function Float|Float( &amp;lt;expression&amp;gt; )]] -- Returns the 32-bit floating point representation of an expression&lt;br /&gt;
* [[Core Function Double|Double( &amp;lt;expression&amp;gt; )]] -- Returns the 64-bit floating point representation of an expression&lt;br /&gt;
* [[Core Function String|String( &amp;lt;expression&amp;gt; )]] -- Returns the String representation of an expression&lt;br /&gt;
&lt;br /&gt;
==== Common Variable Functions ====&lt;br /&gt;
&lt;br /&gt;
===== Misc =====&lt;br /&gt;
* [[Core Function Unset|Unset( $variable )]] -- Delete a variable&lt;br /&gt;
&lt;br /&gt;
===== Hash/Array =====&lt;br /&gt;
* [[Core Function Reset|Reset( $variable )]] -- Reset the current array pointer to the first element&lt;br /&gt;
* [[Core Function Next|Next( $variable )]] -- Set the array pointer to the next element&lt;br /&gt;
* [[Core Function Prev|Prev( $variable )]] -- Set the array pointer to the previous element&lt;br /&gt;
&lt;br /&gt;
===== Type Checking =====&lt;br /&gt;
&lt;br /&gt;
* [[Core Function isVarChar|isVarChar( $variable )]] -- Checks if a variable is a char type&lt;br /&gt;
* [[Core Function isVarByte|isVarByte( $variable )]] -- Checks if a variable is an unsigned 8-bit integer type&lt;br /&gt;
* [[Core Function isVarSByte|isVarSByte( $variable )]] -- Checks if a variable is a signed 8-bit integer type&lt;br /&gt;
* [[Core Function isVarShort|isVarShort( $variable )]] -- Checks if a variable is a signed 16-bit integer type&lt;br /&gt;
* [[Core Function isVarInt16|isVarInt16( $variable )]] -- Checks if a variable is a signed 16-bit integer type&lt;br /&gt;
* [[Core Function isVarInt|isVarInt( $variable )]] -- Checks if a variable is a signed 32-bit integer type&lt;br /&gt;
* [[Core Function isVarInt32|isVarInt32( $variable )]] -- Checks if a variable is a signed 32-bit integer type&lt;br /&gt;
* [[Core Function isVarInt64|isVarInt64( $variable )]] -- Checks if a variable is a signed 64-bit integer type&lt;br /&gt;
* [[Core Function isVarLong|isVarLong( $variable )]] -- Checks if a variable is a signed 64-bit integer type&lt;br /&gt;
* [[Core Function isVarUShort|isVarUShort( $variable )]] -- Checks if a variable is an unsigned 16-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt16|isVarUInt16( $variable )]] -- Checks if a variable is an unsigned 16-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt|isVarUInt( $variable )]] -- Checks if a variable is an unsigned 32-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt32|isVarUInt32( $variable )]] -- Checks if a variable is an unsigned 32-bit integer type&lt;br /&gt;
* [[Core Function isVarUInt64|isVarUInt64( $variable )]] -- Checks if a variable is an unsigned 64-bit integer type&lt;br /&gt;
* [[Core Function isVarULong|isVarULong( $variable )]] -- Checks if a variable is an unsigned 64-bit integer type&lt;br /&gt;
* [[Core Function isVarFloat|isVarFloat( $variable )]] -- Checks if a variable is a single precision floating point type&lt;br /&gt;
* [[Core Function isVarDouble|isVarDouble( $variable )]] -- Checks if a variable is a double precision floating point type&lt;br /&gt;
* [[Core Function isVarString|isVarString( $variable )]] -- Checks if a variable is a string type&lt;br /&gt;
* [[Core Function isVarNumber|isVarNumber( $variable )]] -- Checks if a variable is any integer or float/double type&lt;br /&gt;
* [[Core Function isVarBinary|isVarBinary( $variable )]] -- Checks if a variable is a binary type&lt;br /&gt;
* [[Core Function isVarRef|isVarRef( $variable )]] -- Check if a variable is an reference to another variable&lt;br /&gt;
* [[Core Function isVarArray|isVarArray( $variable )]] -- Check if a variable is an array&lt;br /&gt;
* [[Core Function isVarObj|isVarObj( $variable, &amp;lt;type&amp;gt; )]] -- Check if a variable is an object type (This includes classes, file handles etc)&lt;br /&gt;
* [[Core Function isVarClass|isVarClass( $variable, &amp;lt;type&amp;gt; )]] -- Check if a variable's object type is a class&lt;br /&gt;
* [[Core Function isVarGUI|isVarGUI( $variable )]] -- Check if a variable's object type is a GUI&lt;br /&gt;
* [[Core Function isVarGUIObject|isVarGUIObject( $variable )]] -- Check if a variable's object type is a GUI Object (Buttons etc)&lt;br /&gt;
&lt;br /&gt;
==== Binary Data Management Functions ====&lt;br /&gt;
* [[Core Function Pack|Pack( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Pack data into a binary array&lt;br /&gt;
* [[Core Function Unpack|Unpack( &amp;lt;expression&amp;gt;, &amp;lt;binary-array&amp;gt; )]] -- Unpack data from a binary array&lt;br /&gt;
* [[Core Function BinaryCreate|BinaryCreate( &amp;lt;size&amp;gt;, &amp;lt;fill&amp;gt; )]] -- Create a new binary variable and its array size and fill data type &lt;br /&gt;
* [[Core Function BinaryClone|BinaryClone( &amp;lt;binary-array&amp;gt; )]] -- Clone a binary variable 100% and return a new binary variable with exactly same data as the old one&lt;br /&gt;
* [[Core Function BinaryWipe|BinaryWipe( &amp;lt;binary-array&amp;gt; )]] -- Wipes a binary variables data 100% and sets the variable to a blank int containing just 0&lt;br /&gt;
* [[Core Function BinaryStr|BinaryStr( &amp;lt;binary-array&amp;gt;, &amp;lt;separator&amp;gt; )]] -- Create a Hex string from a binary array&lt;br /&gt;
* [[Core Function BinaryHex|BinaryHex( &amp;lt;expression&amp;gt; )]] -- Create a binary array from a hex string&lt;br /&gt;
* [[Core Function BinaryLen|BinaryLen( &amp;lt;binary-array&amp;gt; )]] -- Returns the number of bytes in a binary variable&lt;br /&gt;
* [[Core Function BinaryGet|BinaryGet( &amp;lt;binary-array&amp;gt;, &amp;lt;index&amp;gt; )]] -- Get the byte at an index of a binary variable&lt;br /&gt;
* [[Core Function BinarySet|BinarySet( &amp;lt;binary-array&amp;gt;, &amp;lt;index&amp;gt;, &amp;lt;value&amp;gt; )]] -- Set the byte at an index of a binary variable&lt;br /&gt;
* [[Core Function BinaryReverse|BinaryReverse( &amp;lt;binary-array&amp;gt;, &amp;lt;start&amp;gt;, &amp;lt;length&amp;gt; )]] -- Reverse the order bytes a binary variable&lt;br /&gt;
* [[Core Function BinaryMid|BinaryMid( &amp;lt;binary-array&amp;gt;, &amp;lt;start&amp;gt;, &amp;lt;length&amp;gt; )]] -- Create a binary variable by extracting a number of bytes from another binary variable&lt;br /&gt;
* [[Core Function BinaryAppend|BinaryAppend( &amp;lt;binary-array&amp;gt;, &amp;lt;binary-array2&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Append a binary variables data onto the end or beginning of another binary variables data&lt;br /&gt;
* [[Core Function BinaryInsert|BinaryInsert( &amp;lt;binary-array&amp;gt;, &amp;lt;binary-array2&amp;gt;, &amp;lt;index&amp;gt; )]] -- Insert a binary variables data into another binary variable at a specific location&lt;br /&gt;
* [[Core Function BinaryUnshift|BinaryUnshift( &amp;lt;binary-array&amp;gt;, &amp;lt;byte&amp;gt; )]] -- Add a byte to the beginning of a binary variable&lt;br /&gt;
* [[Core Function BinaryPush|BinaryPush( &amp;lt;binary-array&amp;gt;, &amp;lt;byte&amp;gt; )]] -- Add a byte to the end of a binary variable&lt;br /&gt;
* [[Core Function BinaryShift|BinaryShift( &amp;lt;binary-array&amp;gt; )]] -- Delete the first byte from a binary variable&lt;br /&gt;
* [[Core Function BinaryPop|BinaryPop( &amp;lt;binary-array&amp;gt; )]] -- Delete the last byte from a binary variable&lt;br /&gt;
* [[Core Function BinaryResize|BinaryResize( &amp;lt;binary-array&amp;gt;, &amp;lt;size&amp;gt;, &amp;lt;data&amp;gt; )]] -- Resize a binary variables data array&lt;br /&gt;
* [[Core Function BinaryCompress|BinaryCompress( &amp;lt;binary-array&amp;gt; )]] -- Compress a binary variables data&lt;br /&gt;
* [[Core Function BinaryUncompress|BinaryUncompress( &amp;lt;binary-array&amp;gt; )]] -- Uncompress a binary variable data&lt;br /&gt;
* [[Core Function BinarySave|BinarySave( &amp;lt;binary-array&amp;gt;, &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Save a binary variable data to file&lt;br /&gt;
* [[Core Function BinaryLoad|BinaryLoad( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Create a new binary variable by loading binary data from a file&lt;br /&gt;
&lt;br /&gt;
==== Math Functions ====&lt;br /&gt;
* [[Core Function Abs|Abs( &amp;lt;expression&amp;gt; )]] -- Calculates the absolute value of a number&lt;br /&gt;
* [[Core Function ACos|ACos( &amp;lt;expression&amp;gt; )]] -- Calculates the arcCosine of a number&lt;br /&gt;
* [[Core Function ASin|ASin( &amp;lt;expression&amp;gt; )]] -- Calculates the arcsine of a number&lt;br /&gt;
* [[Core Function ATan|ATan( &amp;lt;expression&amp;gt; )]] -- Calculates the arctangent of a number&lt;br /&gt;
* [[Core Function BitAND|BitAND( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function BitNOT|BitNOT( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function BitOR|BitOR( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function BitROTATE|BitROTATE( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function BitSHIFT|BitSHIFT( &amp;lt;value&amp;gt;, &amp;lt;shift&amp;gt; )]] -- Performs a bit shifting operation&lt;br /&gt;
* [[Core Function BitXOR|BitXOR( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Ceiling|Ceiling( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Cos|Cos( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Cosh|Cosh( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Exp|Exp( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Floor|Floor( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Log|Log( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Math|Math( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Max|Max( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; )]] -- Find the greater number and return it&lt;br /&gt;
* [[Core Function Min|Min( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Mod|Mod( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Pow|Pow( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Random|Random( &amp;lt;expression&amp;gt; )]] -- Get a random number from the defined area.&lt;br /&gt;
* [[Core Function Round|Round( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Sin|Sin( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Sinh|Sinh( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Sqrt|Sqrt( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Tan|Tan( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Tanh|Tanh( &amp;lt;expression&amp;gt; )]] -- &lt;br /&gt;
* [[Core Function Turncate|Turncate( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
==== String Functions ====&lt;br /&gt;
* [[Core Function Asc|Asc( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function AscW|AscW( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Chr|Chr( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function ChrW|ChrW( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Contains|Contains( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Compare|Compare( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Dec|Dec( &amp;lt;expression&amp;gt; )]] -- Returns a integer representation of a hexadecimal string&lt;br /&gt;
* [[Core Function FDec|FDec( &amp;lt;expression&amp;gt; )]] -- Returns a float representation of a hexadecimal string&lt;br /&gt;
* [[Core Function DDec|DDec( &amp;lt;expression&amp;gt; )]] -- Returns a double representation of a hexadecimal string&lt;br /&gt;
* [[Core Function DecPad|DecPad( &amp;lt;expression&amp;gt;, &amp;lt;count&amp;gt; )]] -- Pads numeric string to a given number of chars (Filling in the gap with zeros)&lt;br /&gt;
* [[Core Function EndsWith|EndsWith( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Hex|Hex( &amp;lt;expression&amp;gt;, &amp;lt;length&amp;gt; )]] -- Returns a string representation of an integer type converted to hexadecimal&lt;br /&gt;
* [[Core Function FHex|FHex( &amp;lt;expression&amp;gt; )]] -- Returns a string representation of an float type converted to hexadecimal&lt;br /&gt;
* [[Core Function DHex|DHex( &amp;lt;expression&amp;gt; )]] -- Returns a string representation of an double type converted to hexadecimal&lt;br /&gt;
* [[Core Function InStr|InStr( &amp;lt;string&amp;gt;, &amp;lt;substirng&amp;gt;, &amp;lt;casesense&amp;gt;, &amp;lt;occurrence&amp;gt;, &amp;lt;start&amp;gt;, &amp;lt;count&amp;gt; )]] -- Checks if a string contains a given substring.&lt;br /&gt;
* [[Core Function isAlpha|isAlpha( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isAlphaNumeric|isAlphaNumeric( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isASCII|isASCII( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isEmpty|isEmpty( &amp;lt;expression&amp;gt; )]] -- Checks if a string is completely empty.&lt;br /&gt;
* [[Core Function isFloat|isFloat( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isLower|isLower( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isNumeric|isNumeric( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isSpace|isSpace( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isSymbol|isSymbol( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isUpper|isUpper( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function isXDigit|isXDigit( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function LC|LC( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function LCFirst|LCFirst( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function LCWords|LCWords( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Left|Left( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Match|Match( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function MD5|MD5( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function PadLeft|PadLeft( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function PadRight|PadRight( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function RandStr|RandStr( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Repeat|Repeat( &amp;lt;expression&amp;gt;, &amp;lt;count&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Create a new string or new array containing repeats of a string provided&lt;br /&gt;
* [[Core Function Replace|Replace( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Reverse|Reverse( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Right|Right( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function SHA1|SHA1( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Split|Split( &amp;lt;expression&amp;gt;, &amp;lt;delim/pattern&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Splits up a string into substrings depending on the given delimiters.&lt;br /&gt;
* [[Core Function SPrintf|SPrintf( &amp;lt;expression&amp;gt;, &amp;lt;expressions&amp;gt;... )]] -- Create a formatted string&lt;br /&gt;
* [[Core Function StartsWith|StartsWith( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function StrLen|StrLen( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function SubStr|SubStr( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function Trim|Trim( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function TrimLeft|TrimLeft( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function TrimRight|TrimRight( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function UC|UC( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function UCFirst|UCFirst( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function UCWords|UCWords( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
==== Array Functions ====&lt;br /&gt;
* [[Core Function Join|Join( &amp;lt;array&amp;gt;, &amp;lt;separator&amp;gt; )]] -- Join an array into a string with an optional separator&lt;br /&gt;
* [[Core Function UBound|UBound( &amp;lt;array/binary-array&amp;gt; )]] -- Returns the size of array (How many elements it currently has stored)&lt;br /&gt;
* [[Core Function Push|Push( &amp;lt;array&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Add items to the end of an array&lt;br /&gt;
* [[Core Function Insert|Insert( &amp;lt;array&amp;gt;, &amp;lt;id&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Add items to an array at a given location&lt;br /&gt;
* [[Core Function Unshift|Unshift( &amp;lt;array&amp;gt;, &amp;lt;expressions&amp;gt; )]] -- Add items to the beginning of an array&lt;br /&gt;
* [[Core Function Pop|Pop( &amp;lt;array&amp;gt; )]] -- Delete the first item in an array&lt;br /&gt;
* [[Core Function Shift|Shift( &amp;lt;array&amp;gt; )]] -- Delete the last item in an array&lt;br /&gt;
* [[Core Function Remove|Remove( &amp;lt;array&amp;gt;, &amp;lt;start-id&amp;gt;, &amp;lt;end-id&amp;gt; )]] -- Delete items from an array starting at a given location and stopping at a given location&lt;br /&gt;
* [[Core Function Delete|Delete( &amp;lt;array&amp;gt;, &amp;lt;expresions&amp;gt; )]] -- Delete items from an array that match regex patterns, number patterns, or contain specific text etc&lt;br /&gt;
&lt;br /&gt;
==== Hash (Dictionary) Functions ====&lt;br /&gt;
&lt;br /&gt;
==== Process Functions ====&lt;br /&gt;
* [[Core Function DLLCall|DLLCall( &amp;lt;dll&amp;gt;, &amp;lt;function&amp;gt;, &amp;lt;returntype&amp;gt;, &amp;lt;paramtypes&amp;gt;, &amp;lt;params&amp;gt; )]] -- Dynamically call a function in a DLL&lt;br /&gt;
* [[Core Function Run|Run( &amp;lt;file&amp;gt;, &amp;lt;workdir&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Runs an external program&lt;br /&gt;
* [[Core Function RunWait|RunWait( &amp;lt;file&amp;gt;, &amp;lt;workdir&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Runs an external program and waits until the program finishes&lt;br /&gt;
* [[Core Function ProcessClose|ProcessClose( &amp;lt;pid/name&amp;gt; )]] -- Terminates a named process&lt;br /&gt;
* [[Core Function ProcessExists|ProcessExists( &amp;lt;pid/name&amp;gt; )]] -- Checks to see if a specified process exists&lt;br /&gt;
* [[Core Function ProcessList|ProcessList( &amp;lt;name&amp;gt; )]] -- Returns an array listing the currently running processes (names and PIDs)&lt;br /&gt;
* [[Core Function ProcessSetPriority|ProcessSetPriority( &amp;lt;name&amp;gt;, &amp;lt;priority&amp;gt; )]] -- Changes the priority of a process&lt;br /&gt;
* [[Core Function ProcessWait|ProcessWait( &amp;lt;name&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Pauses the current thread until a given process exists or optional the timeout expires&lt;br /&gt;
* [[Core Function ProcessWaitClose|ProcessWaitClose( &amp;lt;name&amp;gt;, &amp;lt;timeout&amp;gt; )]] -- Pauses the current thread until a given process no longer exists or optional the timeout expires&lt;br /&gt;
* [[Core Function Shutdown|Shutdown( &amp;lt;shutdown code&amp;gt; )]] -- Shuts down the system&lt;br /&gt;
&lt;br /&gt;
==== Environment Management ====&lt;br /&gt;
* [[Core Function EnvExpand|EnvExpand( &amp;lt;expression&amp;gt; )]] -- Convert a string containing %name% env tags and return complete string with names resolved&lt;br /&gt;
* [[Core Function EnvGet|EnvGet( &amp;lt;tag&amp;gt; )]] -- Get the value of an environment variable&lt;br /&gt;
* [[Core Function EnvSet|EnvSet( &amp;lt;tag&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Set the value of an environment variable&lt;br /&gt;
* [[Core Function EnvUpdate|EnvUpdate( &amp;lt;tag&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Refreshes the OS environment&lt;br /&gt;
&lt;br /&gt;
==== File Functions ====&lt;br /&gt;
&lt;br /&gt;
===== File Create/Read/Write Functions =====&lt;br /&gt;
* [[Core Function FileOpen|FileOpen( &amp;lt;FileName&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Opens a file for reading or writing&lt;br /&gt;
* [[Core Function FileClose|FileClose( &amp;lt;file&amp;gt; )]] -- Closes a previously opened file&lt;br /&gt;
* [[Core Function FileWrite|FileWrite( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Write text to previously opened file at the current File Steam pointer location&lt;br /&gt;
* [[Core Function FileWriteBinary|FileWriteBinary( &amp;lt;file&amp;gt;, &amp;lt;binary-array&amp;gt; )]] -- Write the data from a binary variable to previously opened file at the current File Steam pointer location&lt;br /&gt;
* [[Core Function FileAppend|FileAppend( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Append a line of text to the end of a previously opened text file&lt;br /&gt;
* [[Core Function FileAppendBinary|FileAppendBinary( &amp;lt;file&amp;gt;, &amp;lt;binary-array&amp;gt; )]] -- Append the data from a binary variable to the end of a previously opened file&lt;br /&gt;
* [[Core Function FileSeek|FileSeek( &amp;lt;file&amp;gt;, &amp;lt;offset&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Change the POSITION of the File Stream pointer&lt;br /&gt;
* [[Core Function FilePos|FilePos( &amp;lt;file&amp;gt; )]] -- Get the current POSITION of the File Stream pointer&lt;br /&gt;
* [[Core Function FileRead|FileRead( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Read a number of characters from a previously opened text file starting from current File Steam pointer location&lt;br /&gt;
* [[Core Function FileReadBinary|FileReadBinary( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Read a number of bytes from a previously opened file starting from current File Steam pointer location&lt;br /&gt;
* [[Core Function FileReadLine|FileReadLine( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Read a line of text from a previously opened text file (Or specify a name of a file)&lt;br /&gt;
* [[Core Function FileReadLines|FileReadLines( &amp;lt;file&amp;gt; )]] -- Read all lines of text from a previously opened text file (Or specify a name of a file)&lt;br /&gt;
* [[Core Function FileSave|FileSave( &amp;lt;file&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Save all text to a file&lt;br /&gt;
* [[Core Function FileLoad|FileLoad( &amp;lt;file&amp;gt; )]] -- Load all text from a file&lt;br /&gt;
&lt;br /&gt;
==== GUI Functions ====&lt;br /&gt;
&lt;br /&gt;
===== Dialog Creation Functions =====&lt;br /&gt;
* [[Core Function GUICreate|GUICreate( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function DoEvents|DoEvents( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Dialog Properties Get/Set Functions =====&lt;br /&gt;
* [[Core Function GUIState|GUIState( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function GUISetState|GUISetState( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Control Creation Functions =====&lt;br /&gt;
* [[Core Function GUICreateButton|GUICreateButton( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a button&lt;br /&gt;
* [[Core Function GUICreateTextBox|GUICreateTextBox( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a Textbox&lt;br /&gt;
* [[Core Function GUICreateTextBoxEx|GUICreateTextBoxEx( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;text&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a multiline Textbox&lt;br /&gt;
* [[Core Function GUICreateTimer|GUICreateTimer( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;interval&amp;gt; )]] -- Create a timer&lt;br /&gt;
* [[Core Function GUICreateDataGrid|GUICreateDataGrid( &amp;lt;gui/container&amp;gt;, &amp;lt;name&amp;gt;, &amp;lt;left&amp;gt;, &amp;lt;top&amp;gt;, &amp;lt;width&amp;gt;, &amp;lt;height&amp;gt; )]] -- Create a Data Grid control.&lt;br /&gt;
&lt;br /&gt;
===== Event Linking Functions =====&lt;br /&gt;
* [[Core Function GUILink|GUILink( &amp;lt;gui/guiobject&amp;gt;, &amp;lt;linktype&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Dialog/Control Properties Get/Set Functions =====&lt;br /&gt;
* [[Core Function GUIGetData|GUIGetData( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function GUISetData|GUISetData( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Control Properties Get/Set Functions =====&lt;br /&gt;
* [[Core Function GUITimerStart|GUITimerStart( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
* [[Core Function GUITimerStop|GUITimerStop( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
===== Other GUI Functions =====&lt;br /&gt;
* [[Core Function MsgBox|MsgBox( &amp;lt;expression&amp;gt; )]] -- Show a message dialog&lt;br /&gt;
* [[Core Function InputBox|InputBox( &amp;lt;expression&amp;gt; )]] --&lt;br /&gt;
&lt;br /&gt;
==== Keyboard Control Functions ====&lt;br /&gt;
* [[Core Function HotKeySet|HotKeySet( &amp;lt;keydef&amp;gt;, &amp;lt;expression&amp;gt; )]] -- Create a custom hotkey to run custom code or execute a function.&lt;br /&gt;
* [[Core Function SendKeys|SendKeys( &amp;lt;keydef&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Sends simulated keystrokes to the active window&lt;br /&gt;
&lt;br /&gt;
==== Mouse Control Functions ====&lt;br /&gt;
* [[Core Function MouseClick|MouseClick ( &amp;lt;button&amp;gt;, &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt;, &amp;lt;clicks&amp;gt;, &amp;lt;speed&amp;gt; )]] -- Perform a mouse click operation&lt;br /&gt;
* [[Core Function MouseClickDrag|MouseClickDrag ( &amp;lt;button&amp;gt;, &amp;lt;x1&amp;gt;, &amp;lt;y1&amp;gt;, &amp;lt;x2&amp;gt;, &amp;lt;y21&amp;gt;, &amp;lt;speed&amp;gt; )]] -- Perform a mouse click and drag operation&lt;br /&gt;
* [[Core Function MouseDown|MouseDown ( &amp;lt;button&amp;gt; )]] -- Perform a mouse down event at the current mouse position&lt;br /&gt;
* [[Core Function MouseUp|MouseUp ( &amp;lt;button&amp;gt; )]] -- Perform a mouse up event at the current mouse position&lt;br /&gt;
* [[Core Function MouseMove|MouseMove ( &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt;, &amp;lt;speed&amp;gt; )]] -- Moves the mouse pointer&lt;br /&gt;
* [[Core Function MouseGetPos|MouseGetPos ( )]] -- Retrieves the current position of the mouse cursor&lt;br /&gt;
* [[Core Function MouseGetCursor|MouseGetCursor ( )]] -- Returns a cursor ID Number of the current Mouse Cursor&lt;br /&gt;
* [[Core Function MouseWheel|MouseWheel ( &amp;lt;direction&amp;gt;, &amp;lt;clicks&amp;gt; )]] -- Moves the mouse wheel up or down.&lt;br /&gt;
&lt;br /&gt;
==== Window Management Functions ====&lt;br /&gt;
* [[Core Function WinActivate|WinActivate( &amp;lt;expression&amp;gt; )]] -- Focus on a window that is already open.&lt;br /&gt;
==== Misc Functions ====&lt;br /&gt;
* [[Core Function Return|Return &amp;lt;expressions&amp;gt;]] -- Returns a result from a Function.&lt;br /&gt;
* [[Core Function Throw|Throw( &amp;lt;expression&amp;gt; )]] -- Throw an exception.&lt;br /&gt;
* [[Core Function Eval|Eval( &amp;lt;expression&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Evaluate a string as Sputnik code.&lt;br /&gt;
* [[Core Function GC|GC( &amp;lt;flag&amp;gt; )]] -- Use the garbage collector.&lt;br /&gt;
* [[Core Function Require|Require( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Add all functions etc from a file for use.&lt;br /&gt;
* [[Core Function Include|Include( &amp;lt;file&amp;gt;, &amp;lt;flag&amp;gt; )]] -- Add all functions etc from a file for use and execute all expressions.&lt;br /&gt;
* [[Core Function PixelGetColor |PixelGetColor ( &amp;lt;x&amp;gt;, &amp;lt;y&amp;gt; )]] -- Returns a pixel color according to x, y pixel coordinates.&lt;br /&gt;
* [[Core Function Opt|Opt( &amp;lt;option&amp;gt;, &amp;lt;value&amp;gt; )]] -- Changes the operation of various Sputnik functions/parameters&lt;br /&gt;
&lt;br /&gt;
=== User Defined Functions ===&lt;br /&gt;
&lt;br /&gt;
These functions are created using Sputnik and are not part of the Sputnik core language.&lt;br /&gt;
&lt;br /&gt;
[[Category:Language Reference]]&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	<entry>
		<id>http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Random</id>
		<title>Core Function Random</title>
		<link rel="alternate" type="text/html" href="http://hotline.ubersoft.org/Sputnik/wiki/index.php/Core_Function_Random"/>
				<updated>2011-11-26T22:17:41Z</updated>
		
		<summary type="html">&lt;p&gt;Alexpja: Created page with &amp;quot;&amp;lt;pre&amp;gt; Random( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; ) &amp;lt;/pre&amp;gt;  === Description ===  Get a random number from the defined area.  === expression ===  A number, or a variable containing a numb...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
Random( &amp;lt;expression&amp;gt;, &amp;lt;expression2&amp;gt; )&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Description ===&lt;br /&gt;
&lt;br /&gt;
Get a random number from the defined area.&lt;br /&gt;
&lt;br /&gt;
=== expression ===&lt;br /&gt;
&lt;br /&gt;
A number, or a variable containing a number.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$var = 5;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== expression2 ===&lt;br /&gt;
&lt;br /&gt;
A number, or a variable containing a number.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$var2 = 33;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Return Value === &lt;br /&gt;
&lt;br /&gt;
Success: Returns a random number.&lt;br /&gt;
Failure: Does not return a random number (if an expression is not properly defined).&lt;br /&gt;
&lt;br /&gt;
==== Some Examples ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhiglight lang=&amp;quot;sputnik&amp;quot;&amp;gt;&lt;br /&gt;
$var = 5; // first expression&lt;br /&gt;
$var2 = 33; // second expression&lt;br /&gt;
$ran = Random($var, $var2); // function in variable&lt;br /&gt;
printf($ran); // print a random number from $ran&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Alexpja</name></author>	</entry>

	</feed>