<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.multitheftauto.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Wielebny</id>
	<title>Multi Theft Auto: Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.multitheftauto.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Wielebny"/>
	<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/wiki/Special:Contributions/Wielebny"/>
	<updated>2026-04-27T13:25:59Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.3</generator>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=PL/getAccountsBySerial&amp;diff=46819</id>
		<title>PL/getAccountsBySerial</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=PL/getAccountsBySerial&amp;diff=46819"/>
		<updated>2016-03-06T09:01:23Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: passing empty string as an argument / przekazywanie pustego stringu jako argument&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Server function}}&lt;br /&gt;
{{New items|3.014|1.4|&lt;br /&gt;
Funkcja ta zwraca tabelę [[table]] zawierającą wszystkie konta [[account]] które zalogowały się na dany [[serial]]. Jeżeli serial jest pustym stringiem, zwrócone zostaną wszystkie konta na które nie logowano się nigdy.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Składnia== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
table getAccountsBySerial ( string serial )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
{{OOP|This function is a static function underneath the Account class.|Account.getAllBySerial||}}&lt;br /&gt;
===Wymagane argumenty=== &lt;br /&gt;
*'''serial:''' [[serial]] z którego chcemy pobrać konta&lt;br /&gt;
&lt;br /&gt;
===Zwracana wartość===&lt;br /&gt;
Funkcja ta zwraca tabelę ''[[table]]'' zawierającą konta powiązane z tym serialem. ''Fałsz'' jeżeli podaliśmy zły [[serial]] w argumencie.&lt;br /&gt;
&lt;br /&gt;
==Przykład== &lt;br /&gt;
Przykład ten dodaje komendę ''getAccounts'' która wyświetla ilość kont powiązaną z naszym serialem.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
addCommandHandler(&amp;quot;getAccounts&amp;quot;, &lt;br /&gt;
	function (player, cmd)&lt;br /&gt;
		local serial = getPlayerSerial(player)&lt;br /&gt;
		local accounts = getAccountsBySerial(serial)&lt;br /&gt;
		outputChatBox(&amp;quot;You have &amp;quot; .. #accounts .. &amp;quot; accounts.&amp;quot;, player)&lt;br /&gt;
	end)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Zobacz również==&lt;br /&gt;
{{Account_functions}}&lt;br /&gt;
&lt;br /&gt;
[[en:getAccountsBySerial]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Client_on_Linux_Manual&amp;diff=46104</id>
		<title>Client on Linux Manual</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Client_on_Linux_Manual&amp;diff=46104"/>
		<updated>2015-11-13T19:18:02Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: notes about basswma crashes&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Needs Checking|MTA: SA 1.5 and greater versions seem to have problems when launching under Wine. Please consider rewriting this manual to point people to use an alternative (like VMWare) instead.}}&lt;br /&gt;
{{Warning|This page is for Linux players '''ONLY''', for Windows go [[Client Manual|here]].|true}}&lt;br /&gt;
==Before you start==&lt;br /&gt;
&lt;br /&gt;
First of all, please ensure your computer fits the requirements needed.&lt;br /&gt;
Read the [[Client_Manual|Client Manual]] page for further informations, or join us on IRC @ irc://irc.multitheftauto.com/mta&lt;br /&gt;
&lt;br /&gt;
===Requirements===&lt;br /&gt;
The hardware requirements for Multi Theft Auto: San Andreas are the same than on Windows.&lt;br /&gt;
For software requirements, you need:&lt;br /&gt;
* Wine (get it on your package manager (synaptic, apt, pacman, yum etc.); follow instructions [https://www.winehq.org/download/ubuntu here] if you're using Ubuntu&lt;br /&gt;
(as of MTA 1.4.1 Ubuntu's default Wine package seems to be incompatible with Visual C++, which is required to install MTA)&lt;br /&gt;
* Windows fonts installed:&lt;br /&gt;
** tahoma.ttf&lt;br /&gt;
** tahomabd.ttf&lt;br /&gt;
** verdana.ttf&lt;br /&gt;
Get them on the Internet, e.g. [http://fontonic.com/ fontonic.com]&lt;br /&gt;
&lt;br /&gt;
Or get the zip archive with the 3 fonts here: [http://www.4shared.com/zip/IsErUbQAba/wine_mta_fonts.html wine_mta_fonts.zip]&lt;br /&gt;
&lt;br /&gt;
Install them in: &amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;~/.wine/dosdevices/c:/windows/Fonts/&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
(~/ points to your user home folder on Linux, .wine is the default wineprefix)&lt;br /&gt;
&lt;br /&gt;
==Installing the game==&lt;br /&gt;
Download the MTA installer from [http://www.mtasa.com mtasa.com], ensure you can launch it (chmod +x) then install it when you want.&lt;br /&gt;
&lt;br /&gt;
==Running the game==&lt;br /&gt;
Once installed, double-clicking on the Multi Theft Auto.exe should work. If not, try in a terminal the following command: &amp;quot;wine Multi Theft Auto.exe&amp;quot; in the directory you installed Multi Theft Auto to.&lt;br /&gt;
If it doesn't work, check the contents of the file c:/Program_Files/Multi Theft Auto/MTA/CEGUI.log, which may contain useful information.&lt;br /&gt;
&lt;br /&gt;
==Known issues==&lt;br /&gt;
===Specific issues===&lt;br /&gt;
* Impossible connection through the server browser [Fixed in the [http://bugs.mtasa.com/view.php?id=5084 5084 bug] ]&lt;br /&gt;
&lt;br /&gt;
* MTA won't start on Ubuntu 12.04 LTS [Temporary fix is available [http://forum.mtasa.com/viewtopic.php?p=434011#p434011 here] ]&lt;br /&gt;
&lt;br /&gt;
===Other issues===&lt;br /&gt;
* MTA isn't starting (even with fonts installed)&lt;br /&gt;
#Try to start MTA:SA in a virtual desktop&lt;br /&gt;
#:Go to WineConfig, choose the tab &amp;quot;Graphics&amp;quot; and select &amp;quot;Emulate a virtual desktop&amp;quot;.&amp;lt;br&amp;gt;&lt;br /&gt;
#Try to delete your gta_sa.set file&lt;br /&gt;
#:which is located in the &amp;quot;GTA San Andreas User Files&amp;quot; folder, which can be found in your home directory.&amp;lt;br&amp;gt;'''(Remember to create a copy, if you're playing San Andreas in singleplayer)'''&lt;br /&gt;
#Try to delete your MTA config file&lt;br /&gt;
#:which is: &amp;quot;MTA San Andreas 1.3/MTA/coreconfig.xml&amp;quot;&amp;lt;br&amp;gt;'''(Also remember to create a copy, if you don't want to lose your edited MTA configuration)'''&lt;br /&gt;
&lt;br /&gt;
* Crash when connecting&lt;br /&gt;
*:Sometimes the audio-server makes problems (could be related to pulseaudio), in this case you've to go to WineConfig and choose the tab Audio, then deselect &amp;quot;ALSA&amp;quot; and select &amp;quot;EsoundD&amp;quot;. Save the settings and restart MTA.&lt;br /&gt;
* Crash in basswma.dll module while streaming audio&lt;br /&gt;
*:Install Windows Media Player 10&lt;br /&gt;
*:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
winetricks wmp10&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* Special Detections (SD)&lt;br /&gt;
*:If you are using a 64 wine version you may have problems with [http://wiki.multitheftauto.com/wiki/Anti-cheat_guide#.3Cenablesd.3E.3C.2Fenablesd.3E Special Detections]. If the server you are trying to connect keeps showing something like [http://i.imgur.com/33T8a82.jpg this], then you should make a [http://wiki.archlinux.org/index.php/Wine#Using_WINEARCH 32 bit wine prefix] (or bottle).&lt;br /&gt;
*:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;export WINEARCH=win32 WINEPREFIX=~/.winegta&lt;br /&gt;
winecfg&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Change Windows version on bottom to Windows 7 and press OK. Now you have a 32 bit wine prefix on ~/.winegta.&lt;br /&gt;
Install GTA:SA and them MTA.&lt;br /&gt;
After this, MTA and GTA have been installed within ~/.winegta prefix which is a 32 bit wine environment.&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
* [http://nightly.mtasa.com/ nightly.mtasa.com] - For nightly builds.&lt;br /&gt;
&lt;br /&gt;
[[Category:Support]]&lt;br /&gt;
[[ru:Client on Linux Manual]]&lt;br /&gt;
[[hu:Client on Linux Manual]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Upgrade_list&amp;diff=46096</id>
		<title>Upgrade list</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Upgrade_list&amp;diff=46096"/>
		<updated>2015-11-06T10:35:20Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of upgrades that correspond to [[getVehicleUpgradeOnSlot]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|  class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width:10%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! ID || Upgrade Type&lt;br /&gt;
|-&lt;br /&gt;
| '''0''' || Hood&lt;br /&gt;
|-&lt;br /&gt;
| '''1''' || Vent&lt;br /&gt;
|-&lt;br /&gt;
| '''2''' || Spoiler&lt;br /&gt;
|-&lt;br /&gt;
| '''3''' || Sideskirt&lt;br /&gt;
|-&lt;br /&gt;
| '''4''' || Front Bullbar&lt;br /&gt;
|-&lt;br /&gt;
| '''5''' || Rear Bullbar&lt;br /&gt;
|-&lt;br /&gt;
| '''6''' || Headlights&lt;br /&gt;
|-&lt;br /&gt;
| '''7''' || Roof&lt;br /&gt;
|-&lt;br /&gt;
| '''8''' || Nitrous&lt;br /&gt;
|-&lt;br /&gt;
| '''9''' || Hydraulics&lt;br /&gt;
|-&lt;br /&gt;
| '''10''' || Stereo&lt;br /&gt;
|-&lt;br /&gt;
| '''11''' || Unknown&lt;br /&gt;
|-&lt;br /&gt;
| '''12''' || Wheels&lt;br /&gt;
|-&lt;br /&gt;
| '''13''' || Exhaust&lt;br /&gt;
|-&lt;br /&gt;
| '''14''' || Front Bumper&lt;br /&gt;
|-&lt;br /&gt;
| '''15''' || Rear Bumper&lt;br /&gt;
|-&lt;br /&gt;
| '''16''' || Misc.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[it:Cris G. / Morelli]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Talk:Predefined_variables_list&amp;diff=45342</id>
		<title>Talk:Predefined variables list</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Talk:Predefined_variables_list&amp;diff=45342"/>
		<updated>2015-06-17T11:19:54Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Two variables that probably don't have to be hidden anymore&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== sourceResource &amp;amp;&amp;amp; sourceResourceRoot ==&lt;br /&gt;
&lt;br /&gt;
Are sourceResource and sourceResourceRoot really still broken? --[[User:Wielebny|Wielebny]] ([[User talk:Wielebny|talk]]) 11:19, 17 June 2015 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Garages&amp;diff=45304</id>
		<title>Template:Garages</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Garages&amp;diff=45304"/>
		<updated>2015-06-09T15:08:27Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: garage location&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width: auto; text-align: center; table-layout: fixed;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!ID&lt;br /&gt;
!Name/Description&lt;br /&gt;
!Approximate location (x,y,z)&lt;br /&gt;
|-&lt;br /&gt;
|'''0'''&lt;br /&gt;
|Commerce Region, Loading Bay Garage (Life's a Beach)&lt;br /&gt;
|-&lt;br /&gt;
|'''1'''&lt;br /&gt;
|LSPD Police Impound Garage&lt;br /&gt;
|-&lt;br /&gt;
|'''2'''&lt;br /&gt;
|Mission Garage near El Corona (Los Desperados)&lt;br /&gt;
|1873,-2101,14&lt;br /&gt;
|-&lt;br /&gt;
|'''3'''&lt;br /&gt;
|Eight Ball Autos near El Corona&lt;br /&gt;
|1836,-1860,14&lt;br /&gt;
|-&lt;br /&gt;
|'''4'''&lt;br /&gt;
|Mission Garage near El Corona (Cesar Vialpando)&lt;br /&gt;
|1793,-2141,14&lt;br /&gt;
|-&lt;br /&gt;
|'''5'''&lt;br /&gt;
|Player Garage: El Corona&lt;br /&gt;
|-&lt;br /&gt;
|'''6'''&lt;br /&gt;
|LS Burglary Garage near Playe del Seville&lt;br /&gt;
|2743,-2000,14&lt;br /&gt;
|-&lt;br /&gt;
|'''7'''&lt;br /&gt;
|LowRider Tuning Garage in Willowfield&lt;br /&gt;
|2645,-2033,14&lt;br /&gt;
|-&lt;br /&gt;
|'''8'''&lt;br /&gt;
|Pay 'n' Spray in Idlewood&lt;br /&gt;
|-&lt;br /&gt;
|'''9'''&lt;br /&gt;
|Player Garage: Johnson House&lt;br /&gt;
|2502,-1685,14&lt;br /&gt;
|-&lt;br /&gt;
|'''10'''&lt;br /&gt;
|Transfender in Temple&lt;br /&gt;
|1047,-1032,32&lt;br /&gt;
|-&lt;br /&gt;
|'''11'''&lt;br /&gt;
|Pay 'n' Spray in Temple&lt;br /&gt;
|1028,-1034,32&lt;br /&gt;
|-&lt;br /&gt;
|'''12'''&lt;br /&gt;
|Pay 'n' Spray in Santa Maria Beach&lt;br /&gt;
|484,-1726,11&lt;br /&gt;
|-&lt;br /&gt;
|'''13'''&lt;br /&gt;
|Player Garage: Santa Maria Beach&lt;br /&gt;
|318,-1772,5&lt;br /&gt;
|-&lt;br /&gt;
|'''14'''&lt;br /&gt;
|Player Garage: Mulholland&lt;br /&gt;
|1351,-619,109&lt;br /&gt;
|-&lt;br /&gt;
|'''15'''&lt;br /&gt;
|Wheel Archangels in Ocean Flats&lt;br /&gt;
| -2708,211,4&lt;br /&gt;
|-&lt;br /&gt;
|'''16'''&lt;br /&gt;
|Mission Garage in Ocean Flats (T-Bone Mendez)&lt;br /&gt;
|-&lt;br /&gt;
|'''17'''&lt;br /&gt;
|Player Garage: Hashbury&lt;br /&gt;
|-&lt;br /&gt;
|'''18'''&lt;br /&gt;
|Transfender near Wang Cars in Doherty&lt;br /&gt;
|-1924,221,35&lt;br /&gt;
|-&lt;br /&gt;
|'''19'''&lt;br /&gt;
|Pay 'n' Spray near Wang Cars in Doherty&lt;br /&gt;
| -1913,263,40&lt;br /&gt;
|-&lt;br /&gt;
|'''20'''&lt;br /&gt;
|SF Burglary Garage, Loading Bay near Doherty &lt;br /&gt;
|-&lt;br /&gt;
|'''21'''&lt;br /&gt;
|Player Garage: Doherty&lt;br /&gt;
| -2029,140,29&lt;br /&gt;
|-&lt;br /&gt;
|'''22'''&lt;br /&gt;
|Mission Garage in Doherty Garage&lt;br /&gt;
|-&lt;br /&gt;
|'''23'''&lt;br /&gt;
|Woozie's Mission Garage in Chinatown (Ran Fa Li)&lt;br /&gt;
|-&lt;br /&gt;
|'''24'''&lt;br /&gt;
|Michelle's Pay 'n' Spray in Downtown&lt;br /&gt;
| -1786,1202,26&lt;br /&gt;
|-&lt;br /&gt;
|'''25'''&lt;br /&gt;
|Player Garage: Calton Heights&lt;br /&gt;
|-&lt;br /&gt;
|'''26'''&lt;br /&gt;
|SFPD Police Impound Garage&lt;br /&gt;
|-&lt;br /&gt;
|'''27'''&lt;br /&gt;
|Pay 'n' Spray in Juniper Hollow&lt;br /&gt;
| -2424,1037,50&lt;br /&gt;
|-&lt;br /&gt;
|'''28'''&lt;br /&gt;
|Player Garage: Paradiso&lt;br /&gt;
|-&lt;br /&gt;
|'''29'''&lt;br /&gt;
|LVPD Police Impound Garage&lt;br /&gt;
|-&lt;br /&gt;
|'''30'''&lt;br /&gt;
|Airport Plane Garage in Las Venturas&lt;br /&gt;
|1578,1242,11&lt;br /&gt;
|-&lt;br /&gt;
|'''31'''&lt;br /&gt;
|LV Burglary Garage near Camel's Toe&lt;br /&gt;
|-&lt;br /&gt;
|'''32'''&lt;br /&gt;
|Pay 'n' Spray near Royal Casino&lt;br /&gt;
|-&lt;br /&gt;
|'''33'''&lt;br /&gt;
|Transfender in come-a-lot&lt;br /&gt;
|-&lt;br /&gt;
|'''34'''&lt;br /&gt;
|Player Garage: Rockshore West&lt;br /&gt;
|-&lt;br /&gt;
|'''35'''&lt;br /&gt;
|Welding Wedding Bomb-workshop in Emerald Isle&lt;br /&gt;
|-&lt;br /&gt;
|'''36'''&lt;br /&gt;
|Pay 'n' Spray in Redsands East&lt;br /&gt;
|-&lt;br /&gt;
|'''37'''&lt;br /&gt;
|Player Garage: Redsands West&lt;br /&gt;
|-&lt;br /&gt;
|'''38'''&lt;br /&gt;
|Player Garage: Prickle Pine &lt;br /&gt;
|-&lt;br /&gt;
|'''39'''&lt;br /&gt;
|Player Garage: Whitewood Estates&lt;br /&gt;
|-&lt;br /&gt;
|'''40'''&lt;br /&gt;
|Pay 'n' Spray in El Quebrados&lt;br /&gt;
| -1411,2599,56&lt;br /&gt;
|-&lt;br /&gt;
|'''41'''&lt;br /&gt;
|Pay 'n' Spray in Fort Carson&lt;br /&gt;
|-&lt;br /&gt;
|'''42'''&lt;br /&gt;
|Player Garage: Fort Carson&lt;br /&gt;
|-&lt;br /&gt;
|'''43'''&lt;br /&gt;
|Player Garage: Verdant Meadows&lt;br /&gt;
|-&lt;br /&gt;
|'''44'''&lt;br /&gt;
|Mission Garage in El Castillo del Diablo (Interdiction)&lt;br /&gt;
| -385,2230,42&lt;br /&gt;
|-&lt;br /&gt;
|'''45'''&lt;br /&gt;
|Airport Garage in Verdant Meadows&lt;br /&gt;
|-&lt;br /&gt;
|'''46'''&lt;br /&gt;
|Mission Garage in Angel Pine (Puncture Wounds) &lt;br /&gt;
|-&lt;br /&gt;
|'''47'''&lt;br /&gt;
|Pay 'n' Spray in Dillimore &lt;br /&gt;
|-&lt;br /&gt;
|'''48'''&lt;br /&gt;
|Player Garage: Palomino Creek&lt;br /&gt;
|-&lt;br /&gt;
|'''49'''&lt;br /&gt;
|Player Garage: Dillimore&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=GuiSetAlpha&amp;diff=45298</id>
		<title>GuiSetAlpha</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=GuiSetAlpha&amp;diff=45298"/>
		<updated>2015-06-07T05:27:48Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: note about default value&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This changes the alpha level (the visibleness/transparency) of a GUI element&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;!-- NOTE: don't use 'special' names for variable names, e.g. you shouldn't be writing things like 'player player, vehicle vehicle', instead write something like 'player thePlayer, vehicle vehicleToGetInto'. This is less confusing and prevents the syntax highlighting being odd --&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool guiSetAlpha ( element guielement, float alpha )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''guiElement:''' the GUI element whose visibility is to be changed&lt;br /&gt;
*'''alpha:''' The visibility/transparency of the GUI element. Ranges from 0 (fully transparent) to 1 (fully opaque). Default value is 0.80.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the gui element's alpha was successfully changed, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
This creates a GUI window and allows a player to change it's alpha (the visibleness/transparency) value with a command.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;--Create a gridlist&lt;br /&gt;
myWindow = guiCreateWindow ( 0.30, 0.10, 0.5, 0.60, &amp;quot;GUI window title&amp;quot;, true )&lt;br /&gt;
&lt;br /&gt;
--Add a command handler to change the alpha of the GUI window.&lt;br /&gt;
--Usage example: '/alpha 0.8', where 0.8 is stored as alphaAmount&lt;br /&gt;
function changeAlpha ( commandName, alphaAmount )&lt;br /&gt;
		alphaAmount = tonumber(alphaAmount)&lt;br /&gt;
		guiSetAlpha ( myWindow, alphaAmount )&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;alpha&amp;quot;, changeAlpha )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{GUI functions}}&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=OutputChatBox&amp;diff=45221</id>
		<title>OutputChatBox</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=OutputChatBox&amp;diff=45221"/>
		<updated>2015-05-23T00:23:43Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Informational change: default RGB value in hex&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Server client function}}&lt;br /&gt;
{{Note_box|Avoid outputting text to the chatbox that isn't actually chat, as this can be annoying for players. Output information and status messages to the HUD.}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This outputs the specified text string to the chatbox. It can be specified as a message to certain player(s) or all players.&lt;br /&gt;
&lt;br /&gt;
It can optionally allow you to embed color changes into the string by setting the colorCoded boolean to true. This allows: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
outputChatBox ( &amp;quot;#FF0000Hello #00FF00World&amp;quot;, getRootElement(), 255, 255, 255, true )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This will display as: '''&amp;lt;span style='color:red;'&amp;gt;Hello&amp;lt;/span&amp;gt; &amp;lt;span style='color:green'&amp;gt;World&amp;lt;/span&amp;gt; '''&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;bool outputChatBox ( string text [, element visibleTo=getRootElement(), int r=231, int g=217, int b=176, bool colorCoded=false ] )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
{{OOP||[[player]]:outputChat}}&lt;br /&gt;
==Required Arguments==&lt;br /&gt;
*'''text:''' The text string that you wish to send to the chat window. If more than 128 characters it will not be showed in chat.&lt;br /&gt;
&lt;br /&gt;
==Optional Arguments==&lt;br /&gt;
{{OptionalArg}}&lt;br /&gt;
*'''visibleTo:''' This specifies who the chat is visible to. Any players in this element will see the chat message. See [[visibility]].&lt;br /&gt;
*'''r:''' The amount of red in the color of the text. Default value is 231.&lt;br /&gt;
*'''g:''' The amount of green in the color of the text. Default value is 217.&lt;br /&gt;
*'''b:''' The amount of blue in the color of the text. Default value is 176.&lt;br /&gt;
*'''colorCoded:''' A boolean value determining whether or not '#RRGGBB' tags should be used.&lt;br /&gt;
Note: The #RRGGBB format must contain capital letters a-f is not acceptable but A-F is. Default RGB values in this format are: '#E7D9B0'.&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;bool outputChatBox ( string text [, int r=231, int g=217, int b=176, bool colorCoded=false ] )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Required Arguments==&lt;br /&gt;
*'''text:''' The text string that you wish to send to the chat window. If more than 128 characters it will not be showed in chat.&lt;br /&gt;
&lt;br /&gt;
==Optional Arguments==&lt;br /&gt;
{{OptionalArg}}&lt;br /&gt;
*'''r:''' The amount of red in the color of the text. Default value is 231.&lt;br /&gt;
*'''g:''' The amount of green in the color of the text. Default value is 217.&lt;br /&gt;
*'''b:''' The amount of blue in the color of the text. Default value is 176.&lt;br /&gt;
*'''colorCoded:''' A boolean value determining whether or not '#RRGGBB' tags should be used.&lt;br /&gt;
Note: The #RRGGBB format must contain capital letters a-f is not acceptable but A-F is. Default RGB values in this format are: '#E7D9B0'.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Returns==&lt;br /&gt;
Returns ''true'' if the message was displayed successfully. Returns ''false'' if invalid arguments are specified.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
'''Example 1:''' This example displays a chat message to all users.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
x = 5&lt;br /&gt;
y = 10  &lt;br /&gt;
-- Displays the message&lt;br /&gt;
outputChatBox ( &amp;quot;I have &amp;quot; .. x .. &amp;quot; apples and &amp;quot; .. y .. &amp;quot; oranges.&amp;quot; )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Example 2:''' This example outputs a simple colour coded message, &amp;quot;Red White&amp;quot;, where the 'White' is in white colour, and 'Red' is in a red colour.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
 outputChatBox ( &amp;quot;Red #FFFFFFWhite&amp;quot;, getRootElement(), 255, 0, 0, true )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Example 3:''' This example allows for coloured chat, according to a player's nametag.  This makes use of colour coded outputs.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function colouredChat ( message, theType )&lt;br /&gt;
	if theType == 0 then --if its normal chat (not /me or teamchat) then&lt;br /&gt;
		cancelEvent() --prevent MTA from outputting chat&lt;br /&gt;
		message = string.gsub(message, &amp;quot;#%x%x%x%x%x%x&amp;quot;, &amp;quot;&amp;quot;) --remove any hex tags in a player's chat to prevent custom colours by using lua's string.gsub&lt;br /&gt;
		local r,g,b = getPlayerNametagColor ( source ) --get the player's nametag colour&lt;br /&gt;
		local chatterName = getPlayerName ( source ) --get his name&lt;br /&gt;
		--output a message with the name as his nametag colour, and the rest in white.&lt;br /&gt;
		outputChatBox ( chatterName..&amp;quot;:#FFFFFF &amp;quot;..message, getRootElement(), r, g, b, true )&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
addEventHandler(&amp;quot;onPlayerChat&amp;quot;, getRootElement(), colouredChat)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Example 4:''' This example displays a chat message to a single user called ''someguy''.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
-- Find the player element for the player called 'someguy'&lt;br /&gt;
myPlayer = getPlayerFromName ( &amp;quot;someguy&amp;quot; )&lt;br /&gt;
-- If a player was found called 'someguy' then...&lt;br /&gt;
if ( myPlayer ~= false ) then&lt;br /&gt;
    x = 5&lt;br /&gt;
    y = 10&lt;br /&gt;
    -- Display the message&lt;br /&gt;
    outputChatBox ( &amp;quot;I have &amp;quot; .. x .. &amp;quot; apples and &amp;quot; .. y .. &amp;quot; oranges.&amp;quot;, myPlayer )&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Example 5:''' These two functions can speed up typing, and display a message when a player Joins.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local msg_red,msg_green,msg_blue = 255,255,0&lt;br /&gt;
&lt;br /&gt;
function servertalkprivate(message, sendto)&lt;br /&gt;
        --Talk to one client only&lt;br /&gt;
	outputChatBox(tostring(message), sendto, msg_red, msg_green, msg_blue, true)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function servertalk(message)&lt;br /&gt;
        --Talk to everyone&lt;br /&gt;
	servertalkprivate(message, getRootElement())&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function onJoin()&lt;br /&gt;
	servertalkprivate(&amp;quot;Welcome to My Server&amp;quot;, source)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
addEventHandler(&amp;quot;onPlayerJoin&amp;quot;,getRootElement(),onJoin)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Example 6:''' This can be used to display a message when the player joins and sets its armor to 100. '''(By Bilal135)''' &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function onJoin()&lt;br /&gt;
         setPedArmor(source, 100)&lt;br /&gt;
         outputChatBox(&amp;quot;Welcome To The Server&amp;quot;, source, 255, 0, 0)&lt;br /&gt;
end&lt;br /&gt;
addEventHandler(&amp;quot;onPlayerJoin&amp;quot;, root, onJoin)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
         &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Server functions}}&lt;br /&gt;
[[cs:outputChatBox]]&lt;br /&gt;
[[ru:outputChatBox]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Vehicle_variants&amp;diff=44232</id>
		<title>Vehicle variants</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Vehicle_variants&amp;diff=44232"/>
		<updated>2015-02-03T01:41:43Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: additional variant for sadler&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Custom Variants ==&lt;br /&gt;
With the introduction of vehicle variants we now have the ability to add custom variants using custom models. Variants can be anything from different adverts to additional parts of the model..&lt;br /&gt;
[[Image:Infernus.png|200px|thumb|left|Custom Infernus Variant]]&lt;br /&gt;
&lt;br /&gt;
==How to Add Variants==&lt;br /&gt;
Adding variants requires modifying your DFF by adding a part of the model you wish to be a variant and naming it extra1, extra2, extra3, extra4 or extra5 then setting it's parent to the chassis_dummy this tells GTA it has variant information and after this your variant will work in MTA.&lt;br /&gt;
&lt;br /&gt;
==Spawning Custom Variants==&lt;br /&gt;
Spawning custom variants is more complicated as we do not know the variants are there so the random variant spawner (TM) will not spawn the added variant.&lt;br /&gt;
&lt;br /&gt;
A way around this is to implicitly specify which variant you require in createVehicle this will bypass our random variant spawner (TM) and allow you to spawn it.&lt;br /&gt;
&lt;br /&gt;
Any invalid variant will show up as the default model with no variation.&lt;br /&gt;
 &lt;br /&gt;
==GTA Variants==&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: auto; table-layout: fixed;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Vehicle Name&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Vehicle ID&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; class=&amp;quot;unsortable&amp;quot; | Variants&lt;br /&gt;
|-&lt;br /&gt;
| Ambulance&lt;br /&gt;
| 416&lt;br /&gt;
| Numbers: 0 = 37, 1 = 71&lt;br /&gt;
|-&lt;br /&gt;
| Trailer 1&lt;br /&gt;
| 435&lt;br /&gt;
| Side Ads: 0 = Cok-o-Pops, 1 = Munky Juice, 2 = Hinterland, 3 = Zip, 4 = RS Haul, 5 = Ranch&lt;br /&gt;
|-&lt;br /&gt;
| Trailer 2&lt;br /&gt;
| 450&lt;br /&gt;
| Contents: 0 = Filled with gravel/coal/stone&lt;br /&gt;
|-&lt;br /&gt;
| Bagboxb&lt;br /&gt;
| 607&lt;br /&gt;
| Contents: 0,1,2 = Various distributions of loose baggage&lt;br /&gt;
|-&lt;br /&gt;
| Baggage&lt;br /&gt;
| 485&lt;br /&gt;
| Rear Cargo Items: 0 = Earmuffs, 1 = Small Case, 2 = Large Case&lt;br /&gt;
|-&lt;br /&gt;
| Barracks&lt;br /&gt;
| 433&lt;br /&gt;
| Bed Covering: 0 = Opaque Fabric, 1 = Camo Netting&lt;br /&gt;
|-&lt;br /&gt;
| Benson&lt;br /&gt;
| 499&lt;br /&gt;
| Side Ads: 0 = Shady Industries, 1 = LSD, 2 = The Uphill Gardener, 3 = Discount Furniture&lt;br /&gt;
|-&lt;br /&gt;
| BF-400&lt;br /&gt;
| 581&lt;br /&gt;
| Exhausts: 0 = Single Type1, 1 = Single Type2, 2 = Dual Type3 - Fairings (with Windshields): 3 = Half-size, 4 = Full-size&lt;br /&gt;
|-&lt;br /&gt;
| BF Injection&lt;br /&gt;
| 424&lt;br /&gt;
| Body: 0 = Side Panels&lt;br /&gt;
|-&lt;br /&gt;
| Bloodring Banger&lt;br /&gt;
| 504&lt;br /&gt;
| Numbers/Roof Color: 0 = 328/White, 1 = 464/Check, 2 = 172/Check, 3 = 100/White, 4 = 284/White, 5 = 505/Check&lt;br /&gt;
|-&lt;br /&gt;
| Bobcat&lt;br /&gt;
| 422&lt;br /&gt;
| Bed Items: 0 = Spare Tire, 1 = Sprunk Cans&lt;br /&gt;
|-&lt;br /&gt;
| Burrito&lt;br /&gt;
| 482&lt;br /&gt;
| Roof Items: 0 = Roof Lights + Spoiler&lt;br /&gt;
|-&lt;br /&gt;
| Caddy&lt;br /&gt;
| 457&lt;br /&gt;
| Rear Cargo (Driver Side): 0 = Golfbag1, 1 = Satchel1, 2 = Golfbag2, Rear Cargo (Pass Side): 3 = Satchel2, 4 = Golfbag3, 5 = Golfbag4&lt;br /&gt;
|-&lt;br /&gt;
| Camper&lt;br /&gt;
| 483&lt;br /&gt;
| 0 = Open Curtains &amp;amp; Second Bench Seat, 1 = Open Roof Vent, Closed Curtains, Bed in Back, Peace Sign&lt;br /&gt;
|-&lt;br /&gt;
| Cheetah&lt;br /&gt;
| 415&lt;br /&gt;
| Side Mirrors: 0 = Single, Placed High, 1 = Dual, Placed Normally&lt;br /&gt;
|-&lt;br /&gt;
| Coach&lt;br /&gt;
| 437&lt;br /&gt;
| Name on Side: 0 = Big O Tours, 1 = Bikini Line&lt;br /&gt;
|-&lt;br /&gt;
| Coastguard&lt;br /&gt;
| 472&lt;br /&gt;
| Various Items 0 = Items all Over, 1 = Items Grouped in Back, 2 = Items all Over + 2 Oars in Front&lt;br /&gt;
|-&lt;br /&gt;
| FCR-900&lt;br /&gt;
| 521&lt;br /&gt;
| Exhausts: 0 = Single Type1, 1 = Dual Type1, 2 = Dual Type2, Fairings (with Windshields): 3 = Half-size, 4 = Full-size&lt;br /&gt;
|-&lt;br /&gt;
| Fire Truck&lt;br /&gt;
| 407&lt;br /&gt;
| Numbers: 0 = 64, 1 = 16, 2 = 47&lt;br /&gt;
|-&lt;br /&gt;
| Flatbed&lt;br /&gt;
| 455&lt;br /&gt;
| Numbers: 0 = 64, 1 = 16, 2 = 47&lt;br /&gt;
|-&lt;br /&gt;
| Hotknife&lt;br /&gt;
| 434&lt;br /&gt;
| 0 = Partial Engine Cover&lt;br /&gt;
|-&lt;br /&gt;
| Hotring Racer 2&lt;br /&gt;
| 502&lt;br /&gt;
| Numbers: 0 = 96, 1 = 67, 2 = 73, 3 = 52, 4 = 45, 5 = 14&lt;br /&gt;
|-&lt;br /&gt;
| Hotring Racer 3&lt;br /&gt;
| 503&lt;br /&gt;
| Numbers: 0 = 82, 1 = 26, 2 = 65, 3 = 07, 4 = 36, 5 = 60&lt;br /&gt;
|-&lt;br /&gt;
| Kart&lt;br /&gt;
| 571&lt;br /&gt;
| Body Panels: 0 = Both Sides, 1 = Steering Column&lt;br /&gt;
|-&lt;br /&gt;
| Launch&lt;br /&gt;
| 595&lt;br /&gt;
| Roofs: 0 = Over passenger section, 1 = Over driver section&lt;br /&gt;
|-&lt;br /&gt;
| Marquis&lt;br /&gt;
| 484&lt;br /&gt;
| 0 = Windshield over Cabin Entrance&lt;br /&gt;
|-&lt;br /&gt;
| Mesa&lt;br /&gt;
| 500&lt;br /&gt;
| 0 = Roof Over Back, 1 = Roll Bar in Back&lt;br /&gt;
|-&lt;br /&gt;
| Monster 2&lt;br /&gt;
| 556&lt;br /&gt;
| 0 = Roof Spoiler, 1 = Roof Lights, 2 = Roll Bar with Lights&lt;br /&gt;
|-&lt;br /&gt;
| Monster 3&lt;br /&gt;
| 557&lt;br /&gt;
| 0 = Couldn't Determine 1 = Roof Lights&lt;br /&gt;
|-&lt;br /&gt;
| Mr. Whoopee&lt;br /&gt;
| 423&lt;br /&gt;
| Rear Sign: 0 = Cherry Popping Good, 1 = Slow Children Ahead&lt;br /&gt;
|-&lt;br /&gt;
| Mule&lt;br /&gt;
| 414&lt;br /&gt;
| Side Ads: 0 = Toy Corner, 1 = Binco, 2 = Semi, 3 = Shafted Appliances&lt;br /&gt;
|-&lt;br /&gt;
| NRG-500&lt;br /&gt;
| 522&lt;br /&gt;
| Exhausts: 0 = Single Pair1, 1 = Single Pair2, 2 = Dual Pair2 - Fairings (with Windshields): 3 = Smooth, 4 = With Side Cutouts&lt;br /&gt;
|-&lt;br /&gt;
| Patriot&lt;br /&gt;
| 470&lt;br /&gt;
| Cargo Area 0 = Low Cover, 1 = Roof/High Cover, 2 = Roll Bar&lt;br /&gt;
|-&lt;br /&gt;
| Perennial&lt;br /&gt;
| 404&lt;br /&gt;
| Cargo Area 0 = Low Cover, 1 = Roof/High Cover, 2 = Roll Bar&lt;br /&gt;
|-&lt;br /&gt;
| Picador&lt;br /&gt;
| 600&lt;br /&gt;
| Items in Bed: 0 = Planks, 1 = Sprunk Cans&lt;br /&gt;
|-&lt;br /&gt;
| Pony&lt;br /&gt;
| 413&lt;br /&gt;
| 0 = Sound System in Back&lt;br /&gt;
|-&lt;br /&gt;
| Reefer&lt;br /&gt;
| 453&lt;br /&gt;
| Items in Back: 0 = Boxes of Fish, 1 = Bench&lt;br /&gt;
|-&lt;br /&gt;
| Romero&lt;br /&gt;
| 442&lt;br /&gt;
| Coffins: 0 = Brown Style1, 1 = Black Style2, 2 = Brown Style3&lt;br /&gt;
|-&lt;br /&gt;
| Rumpo&lt;br /&gt;
| 440&lt;br /&gt;
| Side Ads: 0 = Cok-o-Pops, 1 = Harry Plums, 2 = Dick Goblin's, 3 = Final Build, 4 = Transfender, 5 = Wheel Arch Angels&lt;br /&gt;
|-&lt;br /&gt;
| Sadler&lt;br /&gt;
| 543&lt;br /&gt;
| Items in Bed: 0 = Two Propane Tanks &amp;amp; Crate, 1 = Two Barrels, 2 = Sprunk Cans, 3 = Open Crates, 4+ = Empty bed&lt;br /&gt;
|-&lt;br /&gt;
| Damaged Sadler&lt;br /&gt;
| 605&lt;br /&gt;
| Items in Bed: 0 = Two Propane Tanks &amp;amp; Crate, 1 = Two Barrels, 2 = Sprunk Cans, 3 = Open Crates, 4+ = Empty bed&lt;br /&gt;
|-&lt;br /&gt;
| Securicar&lt;br /&gt;
| 428&lt;br /&gt;
| Side Logo: 0 = Chuff, 1 = Lock&amp;amp;Load&lt;br /&gt;
|-&lt;br /&gt;
| Slamvan&lt;br /&gt;
| 535&lt;br /&gt;
| Steering Wheel: 0 = Normal, 1 = Chain (Default has none!)&lt;br /&gt;
|-&lt;br /&gt;
| Stallion&lt;br /&gt;
| 439&lt;br /&gt;
| Roof: 0 = Hardtop, 1 = Softtop (up), 2 = Softtop (folded)&lt;br /&gt;
|-&lt;br /&gt;
| Super GT&lt;br /&gt;
| 506&lt;br /&gt;
| 0 = Full Roof&lt;br /&gt;
|-&lt;br /&gt;
| S.W.A.T.&lt;br /&gt;
| 601&lt;br /&gt;
| Number: 0 = 1, 1 = 9, 2 = 6, 3 = 7&lt;br /&gt;
|-&lt;br /&gt;
| Berkley's RC Van&lt;br /&gt;
| 459&lt;br /&gt;
| 0 = Boxes of Toys in Back&lt;br /&gt;
|-&lt;br /&gt;
| Tram&lt;br /&gt;
| 449&lt;br /&gt;
| 0,1,2,3 = (4 defined extras, but I don't know what they are)&lt;br /&gt;
|-&lt;br /&gt;
| Trashmaster&lt;br /&gt;
| 408&lt;br /&gt;
| 0 = Some bits of trash sticking out of the back&lt;br /&gt;
|-&lt;br /&gt;
| Tug&lt;br /&gt;
| 583&lt;br /&gt;
| Case in Back: 0 = Red Case, 1 = Green Case&lt;br /&gt;
|-&lt;br /&gt;
| Utility Van&lt;br /&gt;
| 552&lt;br /&gt;
| 0 = Cones, Barrel in back + Cone lying on passenger side rail, 1 = Cones, Barrel in back + Cone lying on driver side rail&lt;br /&gt;
|-&lt;br /&gt;
| Walton&lt;br /&gt;
| 478&lt;br /&gt;
| Items in Bed: 0 = Two Propane Tanks, 1 = Open Crates, 2 = Propane Tank and Barrel&lt;br /&gt;
|-&lt;br /&gt;
| Windsor&lt;br /&gt;
| 555&lt;br /&gt;
| 0 = Roof, 1 = No Roof&lt;br /&gt;
|-&lt;br /&gt;
| Yankee&lt;br /&gt;
| 456&lt;br /&gt;
| Side Ads: 0 = Big Gas, 1 = RS Haul, 2 = Star Balls, 3 = Flower Power&lt;br /&gt;
|-&lt;br /&gt;
| ZR-350&lt;br /&gt;
| 477&lt;br /&gt;
| 0 = Rear Spoiler&lt;br /&gt;
|- class=&amp;quot;sortbottom&amp;quot;&lt;br /&gt;
! Vehicle Name&lt;br /&gt;
! Vehicle ID&lt;br /&gt;
! Variants&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Above table serialized in Lua:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local vehicleModelVariants={&lt;br /&gt;
  [404]={0,1,2},&lt;br /&gt;
  [407]={0,1,2},&lt;br /&gt;
  [408]={0},&lt;br /&gt;
  [413]={0},&lt;br /&gt;
  [414]={0,1,2,3},&lt;br /&gt;
  [415]={0,1},&lt;br /&gt;
  [416]={0,1},&lt;br /&gt;
  [422]={0,1},&lt;br /&gt;
  [423]={0,1},&lt;br /&gt;
  [424]={0},&lt;br /&gt;
  [428]={0,1},&lt;br /&gt;
  [433]={0,1},                                                                                                                                         &lt;br /&gt;
  [434]={0},                                                                                                                                           &lt;br /&gt;
  [435]={0,1,2,3,4,5},                                                                                                                                 &lt;br /&gt;
  [437]={0,1},                                                                                                                                         &lt;br /&gt;
  [439]={0,1,2},                                                                                                                                       &lt;br /&gt;
  [440]={0,1,2,3,4,5},                                                                                                                                 &lt;br /&gt;
  [442]={0,1,2},                                                                                                                                       &lt;br /&gt;
  [449]={0,1,2,3,4},                                                                                                                                   &lt;br /&gt;
  [450]={0},                                                                                                                                           &lt;br /&gt;
  [453]={0,1},                                                                                                                                         &lt;br /&gt;
  [455]={0,1,2},                                                                                                                                       &lt;br /&gt;
  [456]={0,1,2,3},                                                                                                                                     &lt;br /&gt;
  [457]={0,1,2,3,4,5},                                                                                                                                 &lt;br /&gt;
  [459]={0},                                                                                                                                           &lt;br /&gt;
  [470]={0,1,2},                                                                                                                                       &lt;br /&gt;
  [472]={0,1,2},                                                                                                                                       &lt;br /&gt;
  [477]={0},                                                                                                                                           &lt;br /&gt;
  [478]={0,1,2},                                                                                                                                       &lt;br /&gt;
  [482]={0},                                                                                                                                           &lt;br /&gt;
  [483]={0,1},                                                                                                                                         &lt;br /&gt;
  [484]={0},                                                                                                                                           &lt;br /&gt;
  [485]={0,1,2},                                                                                                                                       &lt;br /&gt;
  [499]={0,1,2,3},                                                                                                                                     &lt;br /&gt;
  [500]={0,1},                                                                                                                                         &lt;br /&gt;
  [502]={0,1,2,3,4,5},                                                                                                                                 &lt;br /&gt;
  [503]={0,1,2,3,4,5},                                                                                                                                 &lt;br /&gt;
  [504]={0,1,2,3,4,5},                                                                                                                                 &lt;br /&gt;
  [506]={0},                                                                                                                                           &lt;br /&gt;
  [521]={0,1,2,3,4},                                                                                                                                   &lt;br /&gt;
  [522]={0,1,2,3,4},                                                                                                                                   &lt;br /&gt;
  [535]={0,1},  &lt;br /&gt;
  [543]={0,1,2,3,4},                                                                                                                                       &lt;br /&gt;
  [552]={0,1},                                                                                                                                         &lt;br /&gt;
  [555]={0,1},                                                                                                                                         &lt;br /&gt;
  [556]={0,1,2},                                                                                                                                       &lt;br /&gt;
  [557]={0,1},                                                                                                                                         &lt;br /&gt;
  [571]={0,1},                                                                                                                                         &lt;br /&gt;
  [581]={0,1,2,3,4},                                                                                                                                   &lt;br /&gt;
  [583]={0,1},                                                                                                                                         &lt;br /&gt;
  [595]={0,1},                                                                                                                                         &lt;br /&gt;
  [600]={0,1},                                                                                                                                         &lt;br /&gt;
  [601]={0,1,2,3},                                                                                                                                     &lt;br /&gt;
  [605]={0,1,2,3,4},                                                                                                                                     &lt;br /&gt;
  [607]={0,1,2},                                                                                                                                       &lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:ID Lists]]&lt;br /&gt;
[[ru:Vehicle variants]]&lt;br /&gt;
[[de:Fahrzeug Varianten]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Id&amp;diff=39367</id>
		<title>Id</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Id&amp;diff=39367"/>
		<updated>2014-04-15T17:20:17Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Link to paintjob list&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;ID stands for identification. It is a whole-number integer that refers to many mechanics of San Andreas.&lt;br /&gt;
----&lt;br /&gt;
Game elements using IDs:&lt;br /&gt;
''Note: does not include small ID lists related to specific functions or IDs created by MTA''&lt;br /&gt;
*[[Animations|Animations]]&lt;br /&gt;
*[[Character Skins]]&lt;br /&gt;
*[[CJ_Clothes|Clothing styles]]&lt;br /&gt;
*[[Death Reasons]]&lt;br /&gt;
*[[Garage|Garage IDs]]&lt;br /&gt;
*[[Interior IDs]]&lt;br /&gt;
*[[Material IDs]]&lt;br /&gt;
*[[Paintjob|Paintjobs]]&lt;br /&gt;
*[[Projectiles]]&lt;br /&gt;
*[[Radar Blips]]&lt;br /&gt;
*[[Sounds]]&lt;br /&gt;
*[[Vehicle IDs]]&lt;br /&gt;
*[[Vehicle Colors]]&lt;br /&gt;
*[[Vehicle Upgrades]]&lt;br /&gt;
*[[Weapons|Weapons]]&lt;br /&gt;
*[[Weather]] ''Note: blended weather allows for many more undocumented effects''&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
*[[Vending|List of San Andreas Vending machine locations]]&lt;br /&gt;
*[[IDE_List|San Andreas IDE List]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Credits==&lt;br /&gt;
{{IDs}}&lt;br /&gt;
;Credit for information contained in the pages:&lt;br /&gt;
:Ransom (initial creation, formatting, and all lists not credited to others)&lt;br /&gt;
:eAi (vehicle colors list)&lt;br /&gt;
:erorr404/Talidan/Brophy (sound list)&lt;br /&gt;
:Talidan (radar blip pictures/vehicle list)&lt;br /&gt;
:Hellfish (skin pictures [http://www.gtaforums.com/index.php?showtopic=205220 SOURCE])&lt;br /&gt;
:Brophy/Ratt/Panther/Twig (lots of inital ID data)&lt;br /&gt;
:GTAForums (Allowing Ransom to find IDs for lists)&lt;br /&gt;
&lt;br /&gt;
[[de:Id]]&lt;br /&gt;
[[ru:Id]]&lt;br /&gt;
[[zh-cn:ID 列表]]&lt;br /&gt;
&lt;br /&gt;
[[Category:ID Lists]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Paintjob&amp;diff=39366</id>
		<title>Paintjob</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Paintjob&amp;diff=39366"/>
		<updated>2014-04-15T17:19:40Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: +see also&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Paintjobs can be applied on a vehicle using [[setVehiclePaintjob]].&lt;br /&gt;
&lt;br /&gt;
To remove a paintjob from a vehicle, apply paintjob number 3 to it.&lt;br /&gt;
&lt;br /&gt;
==Supported vehicles==&lt;br /&gt;
* Blade: 0,1,2&lt;br /&gt;
* Broadway: 0,1&lt;br /&gt;
* Camper: 0&lt;br /&gt;
* Elegy: 0,1,2&lt;br /&gt;
* Flash: 0,1,2&lt;br /&gt;
* Jester: 0,1,2&lt;br /&gt;
* Remington: 0,1,2&lt;br /&gt;
* Savanna: 0,1,2&lt;br /&gt;
* Slamvan: 0,1,2&lt;br /&gt;
* Sultan: 0,1,2&lt;br /&gt;
* Tornado: 0,1,2&lt;br /&gt;
* Uranus: 0,1,2&lt;br /&gt;
&lt;br /&gt;
==Serialized table of supported vehicles==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local supported_vehicles={&lt;br /&gt;
    [483]={0},        -- camper&lt;br /&gt;
    [534]={0,1,2},    -- remington&lt;br /&gt;
    [535]={0,1,2},    -- slamvan&lt;br /&gt;
    [536]={0,1,2},    -- blade&lt;br /&gt;
    [558]={0,1,2},    -- uranus&lt;br /&gt;
    [559]={0,1,2},    -- jester&lt;br /&gt;
    [560]={0,1,2},    -- sultan&lt;br /&gt;
    [561]={0,1,2},    -- stratum&lt;br /&gt;
    [562]={0,1,2},    -- elegy&lt;br /&gt;
    [565]={0,1,2},    -- flash&lt;br /&gt;
    [567]={0,1,2},    -- savanna&lt;br /&gt;
    [575]={0,1},      -- broadway&lt;br /&gt;
    [576]={0,1,2},    -- tornado&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
[[id|ID Lists]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Paintjob&amp;diff=39365</id>
		<title>Paintjob</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Paintjob&amp;diff=39365"/>
		<updated>2014-04-15T17:18:06Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Paintjob list&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Paintjobs can be applied on a vehicle using [[setVehiclePaintjob]].&lt;br /&gt;
&lt;br /&gt;
To remove a paintjob from a vehicle, apply paintjob number 3 to it.&lt;br /&gt;
&lt;br /&gt;
==Supported vehicles==&lt;br /&gt;
* Blade: 0,1,2&lt;br /&gt;
* Broadway: 0,1&lt;br /&gt;
* Camper: 0&lt;br /&gt;
* Elegy: 0,1,2&lt;br /&gt;
* Flash: 0,1,2&lt;br /&gt;
* Jester: 0,1,2&lt;br /&gt;
* Remington: 0,1,2&lt;br /&gt;
* Savanna: 0,1,2&lt;br /&gt;
* Slamvan: 0,1,2&lt;br /&gt;
* Sultan: 0,1,2&lt;br /&gt;
* Tornado: 0,1,2&lt;br /&gt;
* Uranus: 0,1,2&lt;br /&gt;
&lt;br /&gt;
==Serialized table of supported vehicles==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local supported_vehicles={&lt;br /&gt;
    [483]={0},        -- camper&lt;br /&gt;
    [534]={0,1,2},    -- remington&lt;br /&gt;
    [535]={0,1,2},    -- slamvan&lt;br /&gt;
    [536]={0,1,2},    -- blade&lt;br /&gt;
    [558]={0,1,2},    -- uranus&lt;br /&gt;
    [559]={0,1,2},    -- jester&lt;br /&gt;
    [560]={0,1,2},    -- sultan&lt;br /&gt;
    [561]={0,1,2},    -- stratum&lt;br /&gt;
    [562]={0,1,2},    -- elegy&lt;br /&gt;
    [565]={0,1,2},    -- flash&lt;br /&gt;
    [567]={0,1,2},    -- savanna&lt;br /&gt;
    [575]={0,1},      -- broadway&lt;br /&gt;
    [576]={0,1,2},    -- tornado&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=SetVehiclePaintjob&amp;diff=39364</id>
		<title>SetVehiclePaintjob</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=SetVehiclePaintjob&amp;diff=39364"/>
		<updated>2014-04-15T17:13:47Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Link to paintjob list&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Server client function}}&lt;br /&gt;
This function changes the paintjob on the specified vehicle. &amp;lt;br/&amp;gt;&lt;br /&gt;
See [[Paintjob|paintjob]] for list of supported vehicles.&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;bool setVehiclePaintjob ( vehicle theVehicle, int value )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Arguments===&lt;br /&gt;
*'''theVehicle''': The [[vehicle]] you wish to change the paintjob of.&lt;br /&gt;
*'''value''': A whole number representing the new paintjob id. Ranges from 0 up to 3.&lt;br /&gt;
&lt;br /&gt;
==Returns==&lt;br /&gt;
Returns ''true'' if the vehicle's paintjob was changed. Otherwise ''false''.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This example will set the paintjob of a new sultan to '2'.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
newvehicle = createVehicle ( 560, 100, 100, 40 )  -- create the sultan&lt;br /&gt;
setVehiclePaintjob ( newvehicle, 2 )              -- change the paintjob&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Vehicle functions}}&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Vehicle_variants&amp;diff=38896</id>
		<title>Vehicle variants</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Vehicle_variants&amp;diff=38896"/>
		<updated>2014-02-18T05:35:05Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: some scripting help - serialized table of vehicle model variants&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Custom Variants ==&lt;br /&gt;
With the introduction of vehicle variants we now have the ability to add custom variants using custom models. Variants can be anything from different adverts to additional parts of the model..&lt;br /&gt;
[[Image:Infernus.png|200px|thumb|left|Custom Infernus Variant]]&lt;br /&gt;
&lt;br /&gt;
==How to Add Variants==&lt;br /&gt;
Adding variants requires modifying your DFF by adding a part of the model you wish to be a variant and naming it extra1, extra2, extra3, extra4 or extra5 then setting it's parent to the chassis_dummy this tells GTA it has variant information and after this your variant will work in MTA.&lt;br /&gt;
&lt;br /&gt;
==Spawning Custom Variants==&lt;br /&gt;
Spawning custom variants is more complicated as we do not know the variants are there so the random variant spawner (TM) will not spawn the added variant.&lt;br /&gt;
&lt;br /&gt;
A way around this is to implicitly specify which variant you require in createVehicle this will bypass our random variant spawner (TM) and allow you to spawn it.&lt;br /&gt;
&lt;br /&gt;
Any invalid variant will show up as the default model with no variation.&lt;br /&gt;
 &lt;br /&gt;
==GTA Variants==&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; style=&amp;quot;width: auto; table-layout: fixed;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Vehicle Name&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; | Vehicle ID&lt;br /&gt;
! scope=&amp;quot;col&amp;quot; class=&amp;quot;unsortable&amp;quot; | Variants&lt;br /&gt;
|-&lt;br /&gt;
| Ambulance&lt;br /&gt;
| 416&lt;br /&gt;
| Numbers: 0 = 37, 1 = 71&lt;br /&gt;
|-&lt;br /&gt;
| Trailer 1&lt;br /&gt;
| 435&lt;br /&gt;
| Side Ads: 0 = Cok-o-Pops, 1 = Munky Juice, 2 = Hinterland, 3 = Zip, 4 = RS Haul, 5 = Ranch&lt;br /&gt;
|-&lt;br /&gt;
| Trailer 2&lt;br /&gt;
| 450&lt;br /&gt;
| Contents: 0 = Filled with gravel/coal/stone&lt;br /&gt;
|-&lt;br /&gt;
| Bagboxb&lt;br /&gt;
| 607&lt;br /&gt;
| Contents: 0,1,2 = Various distributions of loose baggage&lt;br /&gt;
|-&lt;br /&gt;
| Baggage&lt;br /&gt;
| 485&lt;br /&gt;
| Rear Cargo Items: 0 = Earmuffs, 1 = Small Case, 2 = Large Case&lt;br /&gt;
|-&lt;br /&gt;
| Barracks&lt;br /&gt;
| 433&lt;br /&gt;
| Bed Covering: 0 = Opaque Fabric, 1 = Camo Netting&lt;br /&gt;
|-&lt;br /&gt;
| Benson&lt;br /&gt;
| 499&lt;br /&gt;
| Side Ads: 0 = Shady Industries, 1 = LSD, 2 = The Uphill Gardener, 3 = Discount Furniture&lt;br /&gt;
|-&lt;br /&gt;
| BF-400&lt;br /&gt;
| 581&lt;br /&gt;
| Exhausts: 0 = Single Type1, 1 = Single Type2, 2 = Dual Type3 - Fairings (with Windshields): 3 = Half-size, 4 = Full-size&lt;br /&gt;
|-&lt;br /&gt;
| BF Injection&lt;br /&gt;
| 424&lt;br /&gt;
| Body: 0 = Side Panels&lt;br /&gt;
|-&lt;br /&gt;
| Bloodring Banger&lt;br /&gt;
| 504&lt;br /&gt;
| Numbers/Roof Color: 0 = 328/White, 1 = 464/Check, 2 = 172/Check, 3 = 100/White, 4 = 284/White, 5 = 505/Check&lt;br /&gt;
|-&lt;br /&gt;
| Bobcat&lt;br /&gt;
| 422&lt;br /&gt;
| Bed Items: 0 = Spare Tire, 1 = Sprunk Cans&lt;br /&gt;
|-&lt;br /&gt;
| Burrito&lt;br /&gt;
| 482&lt;br /&gt;
| Roof Items: 0 = Roof Lights + Spoiler&lt;br /&gt;
|-&lt;br /&gt;
| Caddy&lt;br /&gt;
| 457&lt;br /&gt;
| Rear Cargo (Driver Side): 0 = Golfbag1, 1 = Satchel1, 2 = Golfbag2, Rear Cargo (Pass Side): 3 = Satchel2, 4 = Golfbag3, 5 = Golfbag4&lt;br /&gt;
|-&lt;br /&gt;
| Camper&lt;br /&gt;
| 483&lt;br /&gt;
| 0 = Open Curtains &amp;amp; Second Bench Seat, 1 = Open Roof Vent, Closed Curtains, Bed in Back, Peace Sign&lt;br /&gt;
|-&lt;br /&gt;
| Cheetah&lt;br /&gt;
| 415&lt;br /&gt;
| Side Mirrors: 0 = Single, Placed High, 1 = Dual, Placed Normally&lt;br /&gt;
|-&lt;br /&gt;
| Coach&lt;br /&gt;
| 437&lt;br /&gt;
| Name on Side: 0 = Big O Tours, 1 = Bikini Line&lt;br /&gt;
|-&lt;br /&gt;
| Coastguard&lt;br /&gt;
| 472&lt;br /&gt;
| Various Items 0 = Items all Over, 1 = Items Grouped in Back, 2 = Items all Over + 2 Oars in Front&lt;br /&gt;
|-&lt;br /&gt;
| FCR-900&lt;br /&gt;
| 521&lt;br /&gt;
| Exhausts: 0 = Single Type1, 1 = Dual Type1, 2 = Dual Type2, Fairings (with Windshields): 3 = Half-size, 4 = Full-size&lt;br /&gt;
|-&lt;br /&gt;
| Fire Truck&lt;br /&gt;
| 407&lt;br /&gt;
| Numbers: 0 = 64, 1 = 16, 2 = 47&lt;br /&gt;
|-&lt;br /&gt;
| Flatbed&lt;br /&gt;
| 455&lt;br /&gt;
| Numbers: 0 = 64, 1 = 16, 2 = 47&lt;br /&gt;
|-&lt;br /&gt;
| Hotknife&lt;br /&gt;
| 434&lt;br /&gt;
| 0 = Partial Engine Cover&lt;br /&gt;
|-&lt;br /&gt;
| Hotring Racer 2&lt;br /&gt;
| 502&lt;br /&gt;
| Numbers: 0 = 96, 1 = 67, 2 = 73, 3 = 52, 4 = 45, 5 = 14&lt;br /&gt;
|-&lt;br /&gt;
| Hotring Racer 3&lt;br /&gt;
| 503&lt;br /&gt;
| Numbers: 0 = 82, 1 = 26, 2 = 65, 3 = 07, 4 = 36, 5 = 60&lt;br /&gt;
|-&lt;br /&gt;
| Kart&lt;br /&gt;
| 571&lt;br /&gt;
| Body Panels: 0 = Both Sides, 1 = Steering Column&lt;br /&gt;
|-&lt;br /&gt;
| Launch&lt;br /&gt;
| 595&lt;br /&gt;
| Roofs: 0 = Over passenger section, 1 = Over driver section&lt;br /&gt;
|-&lt;br /&gt;
| Marquis&lt;br /&gt;
| 484&lt;br /&gt;
| 0 = Windshield over Cabin Entrance&lt;br /&gt;
|-&lt;br /&gt;
| Mesa&lt;br /&gt;
| 500&lt;br /&gt;
| 0 = Roof Over Back, 1 = Roll Bar in Back&lt;br /&gt;
|-&lt;br /&gt;
| Monster 2&lt;br /&gt;
| 556&lt;br /&gt;
| 0 = Roof Spoiler, 1 = Roof Lights, 2 = Roll Bar with Lights&lt;br /&gt;
|-&lt;br /&gt;
| Monster 3&lt;br /&gt;
| 557&lt;br /&gt;
| 0 = Couldn't Determine 1 = Roof Lights&lt;br /&gt;
|-&lt;br /&gt;
| Mr. Whoopee&lt;br /&gt;
| 423&lt;br /&gt;
| Rear Sign: 0 = Cherry Popping Good, 1 = Slow Children Ahead&lt;br /&gt;
|-&lt;br /&gt;
| Mule&lt;br /&gt;
| 414&lt;br /&gt;
| Side Ads: 0 = Toy Corner, 1 = Binco, 2 = Semi, 3 = Shafted Appliances&lt;br /&gt;
|-&lt;br /&gt;
| NRG-500&lt;br /&gt;
| 522&lt;br /&gt;
| Exhausts: 0 = Single Pair1, 1 = Single Pair2, 2 = Dual Pair2 - Fairings (with Windshields): 3 = Smooth, 4 = With Side Cutouts&lt;br /&gt;
|-&lt;br /&gt;
| Patriot&lt;br /&gt;
| 470&lt;br /&gt;
| Cargo Area 0 = Low Cover, 1 = Roof/High Cover, 2 = Roll Bar&lt;br /&gt;
|-&lt;br /&gt;
| Peren&lt;br /&gt;
| 404&lt;br /&gt;
| Cargo Area 0 = Low Cover, 1 = Roof/High Cover, 2 = Roll Bar&lt;br /&gt;
|-&lt;br /&gt;
| Picador&lt;br /&gt;
| 600&lt;br /&gt;
| Items in Bed: 0 = Planks, 1 = Sprunk Cans&lt;br /&gt;
|-&lt;br /&gt;
| Pony&lt;br /&gt;
| 413&lt;br /&gt;
| 0 = Sound System in Back&lt;br /&gt;
|-&lt;br /&gt;
| Reefer&lt;br /&gt;
| 453&lt;br /&gt;
| Items in Back: 0 = Boxes of Fish, 1 = Bench&lt;br /&gt;
|-&lt;br /&gt;
| Romero&lt;br /&gt;
| 442&lt;br /&gt;
| Coffins: 0 = Brown Style1, 1 = Black Style2, 2 = Brown Style3&lt;br /&gt;
|-&lt;br /&gt;
| Rumpo&lt;br /&gt;
| 440&lt;br /&gt;
| Side Ads: 0 = Cok-o-Pops, 1 = Harry Plums, 2 = Dick Goblin's, 3 = Final Build, 4 = Transfender, 5 = Wheel Arch Angels&lt;br /&gt;
|-&lt;br /&gt;
| Sadler&lt;br /&gt;
| 543&lt;br /&gt;
| Items in Bed: 0 = Two Propane Tanks &amp;amp; Crate, 1 = Two Barrels, 2 = Sprunk Cans, 3 = Open Crates&lt;br /&gt;
|-&lt;br /&gt;
| Damaged Sadler&lt;br /&gt;
| 605&lt;br /&gt;
| Items in Bed: 0 = Two Propane Tanks &amp;amp; Crate, 1 = Two Barrels, 2 = Sprunk Cans, 3 = Open Crates&lt;br /&gt;
|-&lt;br /&gt;
| Securicar&lt;br /&gt;
| 428&lt;br /&gt;
| Side Logo: 0 = Chuff, 1 = Lock&amp;amp;Load&lt;br /&gt;
|-&lt;br /&gt;
| Slamvan&lt;br /&gt;
| 535&lt;br /&gt;
| Steering Wheel: 0 = Normal, 1 = Chain (Default has none!)&lt;br /&gt;
|-&lt;br /&gt;
| Stallion&lt;br /&gt;
| 439&lt;br /&gt;
| Roof: 0 = Hardtop, 1 = Softtop (up), 2 = Softtop (folded)&lt;br /&gt;
|-&lt;br /&gt;
| Super GT&lt;br /&gt;
| 506&lt;br /&gt;
| 0 = Full Roof&lt;br /&gt;
|-&lt;br /&gt;
| S.W.A.T.&lt;br /&gt;
| 601&lt;br /&gt;
| Number: 0 = 1, 1 = 9, 2 = 6, 3 = 7&lt;br /&gt;
|-&lt;br /&gt;
| Berkley's RC Van&lt;br /&gt;
| 459&lt;br /&gt;
| 0 = Boxes of Toys in Back&lt;br /&gt;
|-&lt;br /&gt;
| Tram&lt;br /&gt;
| 449&lt;br /&gt;
| 0,1,2,3 = (4 defined extras, but I don't know what they are)&lt;br /&gt;
|-&lt;br /&gt;
| Trashmaster&lt;br /&gt;
| 408&lt;br /&gt;
| 0 = Some bits of trash sticking out of the back&lt;br /&gt;
|-&lt;br /&gt;
| Tug&lt;br /&gt;
| 583&lt;br /&gt;
| Case in Back: 0 = Red Case, 1 = Green Case&lt;br /&gt;
|-&lt;br /&gt;
| Utility Van&lt;br /&gt;
| 552&lt;br /&gt;
| 0 = Cones, Barrel in back + Cone lying on passenger side rail, 1 = Cones, Barrel in back + Cone lying on driver side rail&lt;br /&gt;
|-&lt;br /&gt;
| Walton&lt;br /&gt;
| 478&lt;br /&gt;
| Items in Bed: 0 = Two Propane Tanks, 1 = Open Crates, 2 = Propane Tank and Barrel&lt;br /&gt;
|-&lt;br /&gt;
| Windsor&lt;br /&gt;
| 555&lt;br /&gt;
| 0 = Roof, 1 = No Roof&lt;br /&gt;
|-&lt;br /&gt;
| Yankee&lt;br /&gt;
| 456&lt;br /&gt;
| Side Ads: 0 = Big Gas, 1 = RS Haul, 2 = Star Balls, 3 = Flower Power&lt;br /&gt;
|-&lt;br /&gt;
| ZR-350&lt;br /&gt;
| 477&lt;br /&gt;
| 0 = Rear Spoiler&lt;br /&gt;
|- class=&amp;quot;sortbottom&amp;quot;&lt;br /&gt;
! Vehicle Name&lt;br /&gt;
! Vehicle ID&lt;br /&gt;
! Variants&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Above table serialized in Lua:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local vehicleModelVariants={&lt;br /&gt;
  [404]={0,1,2},&lt;br /&gt;
  [407]={0,1,2},&lt;br /&gt;
  [408]={0},&lt;br /&gt;
  [413]={0},&lt;br /&gt;
  [414]={0,1,2,3},&lt;br /&gt;
  [415]={0,1},&lt;br /&gt;
  [416]={0,1},&lt;br /&gt;
  [422]={0,1},&lt;br /&gt;
  [423]={0,1},&lt;br /&gt;
  [424]={0},&lt;br /&gt;
  [428]={0,1},&lt;br /&gt;
  [433]={0,1},                                                                                                                                         &lt;br /&gt;
  [434]={0},                                                                                                                                           &lt;br /&gt;
  [435]={0,1,2,3,4,5},                                                                                                                                 &lt;br /&gt;
  [437]={0,1},                                                                                                                                         &lt;br /&gt;
  [439]={0,1,2},                                                                                                                                       &lt;br /&gt;
  [440]={0,1,2,3,4,5},                                                                                                                                 &lt;br /&gt;
  [442]={0,1,2},                                                                                                                                       &lt;br /&gt;
  [449]={0,1,2,3,4},                                                                                                                                   &lt;br /&gt;
  [450]={0},                                                                                                                                           &lt;br /&gt;
  [453]={0,1},                                                                                                                                         &lt;br /&gt;
  [455]={0,1,2},                                                                                                                                       &lt;br /&gt;
  [456]={0,1,2,3},                                                                                                                                     &lt;br /&gt;
  [457]={0,1,2,3,4,5},                                                                                                                                 &lt;br /&gt;
  [459]={0},                                                                                                                                           &lt;br /&gt;
  [470]={0,1,2},                                                                                                                                       &lt;br /&gt;
  [472]={0,1,2},                                                                                                                                       &lt;br /&gt;
  [477]={0},                                                                                                                                           &lt;br /&gt;
  [478]={0,1,2},                                                                                                                                       &lt;br /&gt;
  [482]={0},                                                                                                                                           &lt;br /&gt;
  [483]={0,1},                                                                                                                                         &lt;br /&gt;
  [484]={0},                                                                                                                                           &lt;br /&gt;
  [485]={0,1,2},                                                                                                                                       &lt;br /&gt;
  [499]={0,1,2,3},                                                                                                                                     &lt;br /&gt;
  [500]={0,1},                                                                                                                                         &lt;br /&gt;
  [502]={0,1,2,3,4,5},                                                                                                                                 &lt;br /&gt;
  [503]={0,1,2,3,4,5},                                                                                                                                 &lt;br /&gt;
  [504]={0,1,2,3,4,5},                                                                                                                                 &lt;br /&gt;
  [506]={0},                                                                                                                                           &lt;br /&gt;
  [521]={0,1,2,3,4},                                                                                                                                   &lt;br /&gt;
  [522]={0,1,2,3,4},                                                                                                                                   &lt;br /&gt;
  [535]={0,1},                                                                                                                                         &lt;br /&gt;
  [552]={0,1},                                                                                                                                         &lt;br /&gt;
  [555]={0,1},                                                                                                                                         &lt;br /&gt;
  [556]={0,1,2},                                                                                                                                       &lt;br /&gt;
  [557]={0,1},                                                                                                                                         &lt;br /&gt;
  [571]={0,1},                                                                                                                                         &lt;br /&gt;
  [581]={0,1,2,3,4},                                                                                                                                   &lt;br /&gt;
  [583]={0,1},                                                                                                                                         &lt;br /&gt;
  [595]={0,1},                                                                                                                                         &lt;br /&gt;
  [600]={0,1},                                                                                                                                         &lt;br /&gt;
  [601]={0,1,2,3},                                                                                                                                     &lt;br /&gt;
  [605]={0,1,2,3},                                                                                                                                     &lt;br /&gt;
  [607]={0,1,2},                                                                                                                                       &lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:ID Lists]]&lt;br /&gt;
[[ru:Vehicle variants]]&lt;br /&gt;
[[de:Fahrzeug Varianten]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Garages&amp;diff=37308</id>
		<title>Template:Garages</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Garages&amp;diff=37308"/>
		<updated>2013-10-14T19:03:19Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: juniper hollow garage location&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width: auto; text-align: center; table-layout: fixed;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!ID&lt;br /&gt;
!Name/Description&lt;br /&gt;
!Approximate location (x,y,z)&lt;br /&gt;
|-&lt;br /&gt;
|'''0'''&lt;br /&gt;
|Commerce Region, Loading Bay Garage (Life's a Beach)&lt;br /&gt;
|-&lt;br /&gt;
|'''1'''&lt;br /&gt;
|LSPD Police Impound Garage&lt;br /&gt;
|-&lt;br /&gt;
|'''2'''&lt;br /&gt;
|Mission Garage near El Corona (Los Desperados)&lt;br /&gt;
|1873,-2101,14&lt;br /&gt;
|-&lt;br /&gt;
|'''3'''&lt;br /&gt;
|Eight Ball Autos near El Corona&lt;br /&gt;
|1836,-1860,14&lt;br /&gt;
|-&lt;br /&gt;
|'''4'''&lt;br /&gt;
|Mission Garage near El Corona (Cesar Vialpando)&lt;br /&gt;
|1793,-2141,14&lt;br /&gt;
|-&lt;br /&gt;
|'''5'''&lt;br /&gt;
|Player Garage: El Corona&lt;br /&gt;
|-&lt;br /&gt;
|'''6'''&lt;br /&gt;
|LS Burglary Garage near Playe del Seville&lt;br /&gt;
|2743,-2000,14&lt;br /&gt;
|-&lt;br /&gt;
|'''7'''&lt;br /&gt;
|LowRider Tuning Garage in Willowfield&lt;br /&gt;
|2645,-2033,14&lt;br /&gt;
|-&lt;br /&gt;
|'''8'''&lt;br /&gt;
|Pay 'n' Spray in Idlewood&lt;br /&gt;
|-&lt;br /&gt;
|'''9'''&lt;br /&gt;
|Player Garage: Johnson House&lt;br /&gt;
|2502,-1685,14&lt;br /&gt;
|-&lt;br /&gt;
|'''10'''&lt;br /&gt;
|Transfender in Temple&lt;br /&gt;
|1047,-1032,32&lt;br /&gt;
|-&lt;br /&gt;
|'''11'''&lt;br /&gt;
|Pay 'n' Spray in Temple&lt;br /&gt;
|1028,-1034,32&lt;br /&gt;
|-&lt;br /&gt;
|'''12'''&lt;br /&gt;
|Pay 'n' Spray in Santa Maria Beach&lt;br /&gt;
|484,-1726,11&lt;br /&gt;
|-&lt;br /&gt;
|'''13'''&lt;br /&gt;
|Player Garage: Santa Maria Beach&lt;br /&gt;
|318,-1772,5&lt;br /&gt;
|-&lt;br /&gt;
|'''14'''&lt;br /&gt;
|Player Garage: Mulholland&lt;br /&gt;
|1351,-619,109&lt;br /&gt;
|-&lt;br /&gt;
|'''15'''&lt;br /&gt;
|Wheel Archangels in Ocean Flats&lt;br /&gt;
| -2708,211,4&lt;br /&gt;
|-&lt;br /&gt;
|'''16'''&lt;br /&gt;
|Mission Garage in Ocean Flats (T-Bone Mendez)&lt;br /&gt;
|-&lt;br /&gt;
|'''17'''&lt;br /&gt;
|Player Garage: Hashbury&lt;br /&gt;
|-&lt;br /&gt;
|'''18'''&lt;br /&gt;
|Transfender near Wang Cars in Doherty&lt;br /&gt;
|-1924,221,35&lt;br /&gt;
|-&lt;br /&gt;
|'''19'''&lt;br /&gt;
|Pay 'n' Spray near Wang Cars in Doherty&lt;br /&gt;
| -1913,263,40&lt;br /&gt;
|-&lt;br /&gt;
|'''20'''&lt;br /&gt;
|SF Burglary Garage, Loading Bay near Doherty &lt;br /&gt;
|-&lt;br /&gt;
|'''21'''&lt;br /&gt;
|Player Garage: Doherty&lt;br /&gt;
| -2029,140,29&lt;br /&gt;
|-&lt;br /&gt;
|'''22'''&lt;br /&gt;
|Mission Garage in Doherty Garage&lt;br /&gt;
|-&lt;br /&gt;
|'''23'''&lt;br /&gt;
|Woozie's Mission Garage in Chinatown (Ran Fa Li)&lt;br /&gt;
|-&lt;br /&gt;
|'''24'''&lt;br /&gt;
|Michelle's Pay 'n' Spray in Downtown&lt;br /&gt;
|-&lt;br /&gt;
|'''25'''&lt;br /&gt;
|Player Garage: Calton Heights&lt;br /&gt;
|-&lt;br /&gt;
|'''26'''&lt;br /&gt;
|SFPD Police Impound Garage&lt;br /&gt;
|-&lt;br /&gt;
|'''27'''&lt;br /&gt;
|Pay 'n' Spray in Juniper Hollow&lt;br /&gt;
| -2424,1037,50&lt;br /&gt;
|-&lt;br /&gt;
|'''28'''&lt;br /&gt;
|Player Garage: Paradiso&lt;br /&gt;
|-&lt;br /&gt;
|'''29'''&lt;br /&gt;
|LVPD Police Impound Garage&lt;br /&gt;
|-&lt;br /&gt;
|'''30'''&lt;br /&gt;
|Airport Plane Garage in Las Venturas&lt;br /&gt;
|1578,1242,11&lt;br /&gt;
|-&lt;br /&gt;
|'''31'''&lt;br /&gt;
|LV Burglary Garage near Camel's Toe&lt;br /&gt;
|-&lt;br /&gt;
|'''32'''&lt;br /&gt;
|Pay 'n' Spray near Royal Casino&lt;br /&gt;
|-&lt;br /&gt;
|'''33'''&lt;br /&gt;
|Transfender in come-a-lot&lt;br /&gt;
|-&lt;br /&gt;
|'''34'''&lt;br /&gt;
|Player Garage: Rockshore West&lt;br /&gt;
|-&lt;br /&gt;
|'''35'''&lt;br /&gt;
|Welding Wedding Bomb-workshop in Emerald Isle&lt;br /&gt;
|-&lt;br /&gt;
|'''36'''&lt;br /&gt;
|Pay 'n' Spray in Redsands East&lt;br /&gt;
|-&lt;br /&gt;
|'''37'''&lt;br /&gt;
|Player Garage: Redsands West&lt;br /&gt;
|-&lt;br /&gt;
|'''38'''&lt;br /&gt;
|Player Garage: Prickle Pine &lt;br /&gt;
|-&lt;br /&gt;
|'''39'''&lt;br /&gt;
|Player Garage: Whitewood Estates&lt;br /&gt;
|-&lt;br /&gt;
|'''40'''&lt;br /&gt;
|Pay 'n' Spray in El Quebrados&lt;br /&gt;
| -1411,2599,56&lt;br /&gt;
|-&lt;br /&gt;
|'''41'''&lt;br /&gt;
|Pay 'n' Spray in Fort Carson&lt;br /&gt;
|-&lt;br /&gt;
|'''42'''&lt;br /&gt;
|Player Garage: Fort Carson&lt;br /&gt;
|-&lt;br /&gt;
|'''43'''&lt;br /&gt;
|Player Garage: Verdant Meadows&lt;br /&gt;
|-&lt;br /&gt;
|'''44'''&lt;br /&gt;
|Mission Garage in El Castillo del Diablo (Interdiction)&lt;br /&gt;
| -385,2230,42&lt;br /&gt;
|-&lt;br /&gt;
|'''45'''&lt;br /&gt;
|Airport Garage in Verdant Meadows&lt;br /&gt;
|-&lt;br /&gt;
|'''46'''&lt;br /&gt;
|Mission Garage in Angel Pine (Puncture Wounds) &lt;br /&gt;
|-&lt;br /&gt;
|'''47'''&lt;br /&gt;
|Pay 'n' Spray in Dillimore &lt;br /&gt;
|-&lt;br /&gt;
|'''48'''&lt;br /&gt;
|Player Garage: Palomino Creek&lt;br /&gt;
|-&lt;br /&gt;
|'''49'''&lt;br /&gt;
|Player Garage: Dillimore&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=PlaySound&amp;diff=37035</id>
		<title>PlaySound</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=PlaySound&amp;diff=37035"/>
		<updated>2013-09-05T11:52:17Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Client function}}&lt;br /&gt;
Creates a [[sound]] element and plays it immediately after creation for the local player.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
'''Note:''' The only supported audio formats are MP3, WAV, OGG, RIFF, MOD, XM, IT, S3M and PLS(e.g. Webstream).&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;element playSound ( string soundPath, [ bool looped = false ] )&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''soundPath:''' The [[filepath]] or URL of the sound file you want to play. (Sound specified by filepath has to be predefined in the [[meta.xml]] file with &amp;lt;file /&amp;gt; tag.)&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments=== &lt;br /&gt;
{{OptionalArg}} &lt;br /&gt;
*'''looped:''' A [[boolean]] representing whether the sound will be looped. To loop the sound, use ''true''. Loop is not available for streaming sounds, only for sound files.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns a [[sound]] element if the sound was successfully created, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function wasted (killer, weapon, bodypart) &lt;br /&gt;
	local sound = playSound(&amp;quot;sounds/wasted.mp3&amp;quot;) --Play wasted.mp3 from the sounds folder&lt;br /&gt;
	setSoundVolume(sound, 0.5) -- set the sound volume to 50%&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
addEventHandler(&amp;quot;onClientPlayerWasted&amp;quot;, getLocalPlayer(), wasted) --add the event handler&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Client_audio_functions}}&lt;br /&gt;
[[AR:playSound]]&lt;br /&gt;
[[DE:playSound]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=RemovePedFromVehicle&amp;diff=36975</id>
		<title>RemovePedFromVehicle</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=RemovePedFromVehicle&amp;diff=36975"/>
		<updated>2013-08-26T19:02:54Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: server -&amp;gt; server&amp;amp;client function&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Server client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This function removes a ped from a vehicle immediately. This works for drivers and passengers. Note that this removes the ped from the vehicle and puts him in the exact position where the command was initiated.&lt;br /&gt;
&lt;br /&gt;
'''Available client side from 1.3.1''' (It will only work with client side vehicles and peds)&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool removePedFromVehicle ( ped thePed )           &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''thePed:''' The ped you wish to remove from a vehicle&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the operation was successful, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
Small example to show how to remove a ped from any vehicle it's in.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function setupForRace ( )&lt;br /&gt;
    RacerPed = createPed ( 252, 0, 0, 3 )                         -- create a ped called &amp;quot;RacerPed&amp;quot;.&lt;br /&gt;
    local RaceVehicle = createVehicle ( 411, 4, 0, 3 )            -- create a vehicle.&lt;br /&gt;
    warpPedIntoVehicle ( RacerPed, RaceVehicle )                  -- warp the ped straight into the vehicle&lt;br /&gt;
    setTimer(removeThePed, 5000, 1)                               -- Setup a timer which will remove the ped from the vehicle after 5 seconds.&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;startrace&amp;quot;, setupForRace )                   -- add a command to start race&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function removeThePed ( )&lt;br /&gt;
removePedFromVehicle ( RacerPed )                                 -- Removes the ped from any vehicle. &lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Ped functions}}&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=User:Wielebny&amp;diff=36947</id>
		<title>User:Wielebny</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=User:Wielebny&amp;diff=36947"/>
		<updated>2013-08-21T09:28:18Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: formatting&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Also known as W.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== My community scripts ==&lt;br /&gt;
* mta-billiard [http://community.mtasa.com/index.php?p=resources&amp;amp;s=details&amp;amp;id=5307 community] [https://github.com/lpiob/mta-billiard github repo]&lt;br /&gt;
&lt;br /&gt;
== My gamemodes ==&lt;br /&gt;
* [http://github.com/lpiob/MTA-XyzzyRP MTA-XyzzyRP] - complete, open-sourced, polish RP gamemode, developed originally for lss-rp.pl&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=User:Wielebny&amp;diff=36946</id>
		<title>User:Wielebny</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=User:Wielebny&amp;diff=36946"/>
		<updated>2013-08-21T09:28:02Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: contributions&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Also known as W.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== My community scripts ==&lt;br /&gt;
* mta-billiard [http://community.mtasa.com/index.php?p=resources&amp;amp;s=details&amp;amp;id=5307 community] [https://github.com/lpiob/mta-billiard github repo]&lt;br /&gt;
&lt;br /&gt;
== My gamemodes ==&lt;br /&gt;
* [github.com/lpiob/MTA-XyzzyRP MTA-XyzzyRP] - complete, open-sourced, polish RP gamemode, developed originally for lss-rp.pl&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=DxDrawLinedRectangle&amp;diff=36824</id>
		<title>DxDrawLinedRectangle</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=DxDrawLinedRectangle&amp;diff=36824"/>
		<updated>2013-08-04T07:14:15Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: fixed few typos&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Useful Function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This is a function that will create a rectangle outline with dx lines.&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;bool dxDrawLinedRectangle( float x, float y, float width, float height, int color [int width=1, bool postGUI=false ] )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
* '''x:''' An integer representing the absolute start X position of the line, represented by pixels on the screen.&lt;br /&gt;
* '''y:''' An integer representing the absolute start Y position of the line, represented by pixels on the screen.&lt;br /&gt;
* '''width:''' An float representing the width of the area, drawn in a right direction from the origin.&lt;br /&gt;
* '''height:''' An float representing the height of the rectangle, drawn in a downwards direction from the origin.&lt;br /&gt;
* '''color:''' the hex color of the rectangle, produced using tocolor or 0xAARRGGBB (AA = alpha, RR = red, GG = green, BB = blue).&lt;br /&gt;
&lt;br /&gt;
==Optional Arguments==&lt;br /&gt;
{{OptionalArg}}&lt;br /&gt;
* '''width:''' An integer representing how thick the lines will be.&lt;br /&gt;
* '''postGUI:''' A bool representing whether the line should be drawn on top of or behind any ingame GUI.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns a ''true'' if the operation was successful, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;section name=&amp;quot;Clientside script&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function dxDrawLinedRectangle( x, y, width, height, color, _width, postGUI )&lt;br /&gt;
	local _width = _width or 1&lt;br /&gt;
	dxDrawLine ( x, y, x+width, y, color, _width, postGUI ) -- Top&lt;br /&gt;
	dxDrawLine ( x, y, x, y+height, color, _width, postGUI ) -- Left&lt;br /&gt;
	dxDrawLine ( x, y+height, x+width, y+height, color, _width, postGUI ) -- Bottom&lt;br /&gt;
	return dxDrawLine ( x+width, y, x+width, y+height, color, _width, postGUI ) -- Right&lt;br /&gt;
end&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This draws a green rectangle:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local sx, sy = guiGetScreenSize ( )&lt;br /&gt;
addEventHandler(&amp;quot;onClientRender&amp;quot;, root,&lt;br /&gt;
    function()&lt;br /&gt;
        dxDrawLinedRectangle( 5, 5, sx/2, sy/2, tocolor ( 0, 255, 0, 255 ), 3, true )&lt;br /&gt;
    end&lt;br /&gt;
)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Author: xXMADEXx&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Useful_Functions}}&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=IsElementWithinColShape&amp;diff=36443</id>
		<title>IsElementWithinColShape</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=IsElementWithinColShape&amp;diff=36443"/>
		<updated>2013-06-24T18:46:35Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Server client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This function is used to determine if an element is within a collision shape. Please note that for legacy reasons, a colshape created on the client does not collide with elements already existing at that location until they first move. Please also note that before 1.0.3, this did not function correctly when moving a colshape.&lt;br /&gt;
&lt;br /&gt;
Please note that this function doesn't verify whether element is in the same dimension and interior, additional checks could be implemented manually if they are needed.&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;bool isElementWithinColShape ( element theElement, colshape theShape )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Arguments===&lt;br /&gt;
*'''theElement:''' The [[element]] you're checking.&lt;br /&gt;
*'''theShape:''' The [[colshape]] you're checking&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the element is within the colshape, ''false'' otherwise&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
This small script is an example of detecting if a player is within a certain defined colshape. This could serve as a base to perform many functions, rather than just an output.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local circlearea = createColCircle ( 0, 0, 10 )&lt;br /&gt;
&lt;br /&gt;
function ColShapeHit ( thePlayer, matchingDimension )&lt;br /&gt;
	local detection = isElementWithinColShape ( thePlayer, circlearea )&lt;br /&gt;
	--A variable called 'detection' stores the result of asking if the player&lt;br /&gt;
	--who entered a colshape is within the specific colshape called 'circlearea'.&lt;br /&gt;
	--The result is either true or false.&lt;br /&gt;
	detection = detection and getElementDimension( thePlayer ) == getElementDimension( circlearea )&lt;br /&gt;
	--Let's additionally check element dimensions.&lt;br /&gt;
	if detection then&lt;br /&gt;
		outputChatBox ( getPlayerName(thePlayer)..&amp;quot; is in the 'circle area' col shape&amp;quot; )&lt;br /&gt;
	end&lt;br /&gt;
	--if detection was true then the player is in the col shape. Output a&lt;br /&gt;
	--message to confirm this&lt;br /&gt;
end&lt;br /&gt;
addEventHandler ( &amp;quot;onColShapeHit&amp;quot;, getRootElement(), ColShapeHit )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{element functions}}&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Talk:IsElementWithinAColShape&amp;diff=36442</id>
		<title>Talk:IsElementWithinAColShape</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Talk:IsElementWithinAColShape&amp;diff=36442"/>
		<updated>2013-06-24T18:44:32Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Y U NO USE builtin functions?&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I don't consider this example very well written. In case that player element enters the colshape, and then disconnects, the inColShape[player_element] will never be freed, resulting in memory leak.&lt;br /&gt;
&lt;br /&gt;
Besides, this code isn't restart-proof and can't handle more than one colshape.&lt;br /&gt;
&lt;br /&gt;
Also, why not [[IsElementWithinColShape]]? --[[User:Wielebny|Wielebny]] 18:44, 24 June 2013 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=User_talk:MrSecond&amp;diff=34993</id>
		<title>User talk:MrSecond</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=User_talk:MrSecond&amp;diff=34993"/>
		<updated>2013-02-19T20:16:19Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: note about last edits&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;http://wiki.multitheftauto.com/index.php?title=Scripting_Introduction&amp;amp;action=history&lt;br /&gt;
Your edits have been reverted more than once. Don't replace english pages with your translation - instead create a new page, according to this wiki structure. --[[User:Wielebny|Wielebny]] 20:16, 19 February 2013 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Scripting_Introduction&amp;diff=34992</id>
		<title>Scripting Introduction</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Scripting_Introduction&amp;diff=34992"/>
		<updated>2013-02-19T20:14:18Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: undone changes by MrSecond&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Resources are a key part of MTA. A resource is essentially a folder or zip file that contains a collection of files, plus a meta file that describes to the server how the resource should be loaded and what files it does contain. A resource can be seen as being partly equivalent to a program running in an operating system - it can be started and stopped, and multiple resources can run at once.&lt;br /&gt;
&lt;br /&gt;
Everything that has to do with scripting happens in resources, what a resource does defines if it is a gamemode, a map or anything else. MTA comes with resources that you can optionally use in your gamemodes, such as maplimits to keep playings within a playing area or deathpickups to create weapon pickups.&lt;br /&gt;
{{tip|Your first step to begin Lua scripting should be using an Lua editor. This makes scripting much easier. We recommend [http://notepad-plus.sourceforge.net/uk/site.htm Notepad++] or [http://luaedit.sourceforge.net/ LuaEdit]. There is also an unofficial [[MTASE|MTA Script Editor]] (in work-in-progress state) that you can test out.}}&lt;br /&gt;
&lt;br /&gt;
==Creating a working script==&lt;br /&gt;
We will first learn how to make a basic script that lets the player walk around in the city, step by step.&lt;br /&gt;
===Where are all the scripts?===&lt;br /&gt;
Let's take a look at the script's file structure. Go to your MTA Server folder, and follow the path below:&lt;br /&gt;
&lt;br /&gt;
	server/mods/deathmatch/resources/&lt;br /&gt;
&lt;br /&gt;
You will see a lot of .zip files, which are the packaged sample scripts shipped with MTA. Each file is a &amp;quot;resource&amp;quot;, and they will all be unzipped and loaded by the server when it starts. To create your own resource, simply make a folder with your preferred name. We'll use &amp;quot;myserver&amp;quot; for this tutorial.&lt;br /&gt;
&lt;br /&gt;
Now you should be under this directory: &lt;br /&gt;
&lt;br /&gt;
	server/mods/deathmatch/resources/myserver/&lt;br /&gt;
&lt;br /&gt;
===Identifying your resource===&lt;br /&gt;
In order to let the server know what's in the resource, a ''meta.xml'' file must be created to list the resource's content. It must be located in the resource's root directory, which is the &amp;quot;myserver&amp;quot; folder in our case. So create a text file and name it &amp;quot;meta.xml&amp;quot;, and open it with notepad.&lt;br /&gt;
&lt;br /&gt;
Enter the following codes in the ''meta.xml'' file:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;meta&amp;gt;&lt;br /&gt;
     &amp;lt;info author=&amp;quot;YourName&amp;quot; type=&amp;quot;gamemode&amp;quot; name=&amp;quot;My Server&amp;quot; description=&amp;quot;My first MTA server&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;script src=&amp;quot;script.lua&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/meta&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
In the ''&amp;lt;info /&amp;gt;'' tag, there's a &amp;quot;type&amp;quot; field which indicates that the resource is a ''gamemode'' instead of a regular include or a ''map'', which will be explained later. A gamemode is what you need to make a stand-alone server. &lt;br /&gt;
&lt;br /&gt;
The ''&amp;lt;script /&amp;gt;'' tag indicates the script files contained in the resource, which we will create next.&lt;br /&gt;
===Creating a simple script===&lt;br /&gt;
Note that in the ''&amp;lt;script /&amp;gt;'' tag above, the .lua file is not under another directory. Therefore we'll create the file in the same folder as meta.xml. Now you can copy and paste the following code into script.lua:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local spawnX, spawnY, spawnZ = 1959.55, -1714.46, 10&lt;br /&gt;
function joinHandler()&lt;br /&gt;
	spawnPlayer(source, spawnX, spawnY, spawnZ)&lt;br /&gt;
	fadeCamera(source, true)&lt;br /&gt;
	setCameraTarget(source, source)&lt;br /&gt;
	outputChatBox(&amp;quot;Welcome to My Server&amp;quot;, source)&lt;br /&gt;
end&lt;br /&gt;
addEventHandler(&amp;quot;onPlayerJoin&amp;quot;, getRootElement(), joinHandler)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The script will spawn you at the coordinate (x, y, z) specified above, when you join the game. Note that the ''fadeCamera'' function must be used or the screen will be black. Also, in releases after DP2, you need to set the camera target (otherwise all the player will see is blue sky).&lt;br /&gt;
&lt;br /&gt;
The '''source''' variable indicates who triggered the event. Since a player has joined when the code is triggered, you use this variable to look which has joined. So it'll spawn that player instead of everyone or a random person.&lt;br /&gt;
&lt;br /&gt;
If we have a closer look on [[addEventHandler]], you can see 3 things: 'onPlayerJoin', which indicates when it's triggered. getRootElement(), which shows by what/who it can be triggered. (getRootElement() is everything/everyone) And joinHandler, which indicates the function that has to be triggered after the event is triggered. Other details will be explained later in another example, now let's just run the server and try it out!&lt;br /&gt;
&lt;br /&gt;
===Running the script===&lt;br /&gt;
To get the server started, simply run the executable under the server/ directory. A list of server stats will be shown first; note the port number, which you'll need when joining the game. Then the server loads all the resources under the mods/deathmatch/resources/ directory, and then &amp;quot;ready to accept connections!&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Before you connect to the server, you must run the gamemode. Type &amp;quot;start myserver&amp;quot; and press Enter. The server will start the gamemode you just created, and will also show any errors and warnings from this point on. Now you can start the MTA client, and &amp;quot;Quick Connect&amp;quot; using the IP address of your server and the port number you saw earlier. If all goes well, after a few seconds your character will be walking on the streets of Los Santos.&lt;br /&gt;
&lt;br /&gt;
Next we'll add a command to your script that players can use to spawn a vehicle beside their position. You may skip it and check out more advanced scripting with the [[Map manager|Map Manager]], which continues this tutorial. Another branch from this tutorial is [[Introduction to Scripting GUI]], you may follow it to see how Graphical User Interface in MTA is drawn and scripted.&lt;br /&gt;
&lt;br /&gt;
==Creating a simple command==&lt;br /&gt;
Let's go back to the content of the ''script.lua'' file. As mentioned above, we want to provide a command to create a vehicle beside your current position in the game. Firstly we need to create a function we want to call and a command handler that creates the command the player will be able to enter in the console.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
-- create the function the command handler calls, with the arguments: thePlayer, command, vehicleModel&lt;br /&gt;
function createVehicleForPlayer(thePlayer, command, vehicleModel)&lt;br /&gt;
   -- create a vehicle and stuff&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- create a command handler&lt;br /&gt;
addCommandHandler(&amp;quot;createvehicle&amp;quot;, createVehicleForPlayer)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
''Note: Function names are clickable in code examples on the wiki and linked to the functions' documentation.''&lt;br /&gt;
&lt;br /&gt;
====About command handlers====&lt;br /&gt;
The first argument of [[addCommandHandler]] is the name of the command the player will be able to enter, the second argument is the function this will call, in this case ''createVehicleForPlayer''.&lt;br /&gt;
&lt;br /&gt;
If you have already experience in scripting, you will know that you call a function like this:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
functionName(argument1, argument2, argument3, ..)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
functionName(thePlayer, commandName, argument3, ..)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
If we have a closer look on the lower example above, we can see argument1 is thePlayer and argument2 the commandName. thePlayer is simply the one who typed the command, so whatever you call it, the variable will contain the player who activated the command. commandName is simply the command they typed. So if they typed &amp;quot;/greet&amp;quot;, this argument will contain &amp;quot;greet&amp;quot;. Argument 3 is something extra the player typed, you'll learn it a little bit further in the tutorial. Never forget that the first 2 arguments are standard arguments, but you can name them to anything you want.&lt;br /&gt;
&lt;br /&gt;
We called the [[addCommandHandler]] function this way already and since ''createVehicleForPlayer'' is a function too, it can be called that way as well. But we are using a command handler for that, which calls it in a similiar manner, internally.&lt;br /&gt;
&lt;br /&gt;
For example: Someone types &amp;quot;createvehicle 468&amp;quot; ingame in the console to spawn a Sanchez, the command handler calls the createVehicleForPlayer function, as '''if''' we would have this line of code in the script:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
createVehicleForPlayer(thePlayer,&amp;quot;createvehicle&amp;quot;,&amp;quot;468&amp;quot;) -- thePlayer is the player element of the player who entered the command&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
As we can see, it provides several parameters: the player who called the command, the command he entered and whatever text he had after that, in this case &amp;quot;468&amp;quot; as vehicle id for the Sanchez. The first two parameters are the same with all command handlers, which you can read on the [[addEventHandler]] page. For this fact, you always have to define at least those two parameters to use any after that (for example to process text that was entered after the command, like in our example the vehicle model id).&lt;br /&gt;
&lt;br /&gt;
''Note: You have to add the command handler AFTER you defined the handler function, else it can't find it. The order of execution matters.''&lt;br /&gt;
&lt;br /&gt;
====Writing the function====&lt;br /&gt;
In order to fill the function we created, we need to think about what we have to do:&lt;br /&gt;
* Get the players position, so we know where to spawn the vehicle (we want it to appear right beside the player)&lt;br /&gt;
* Calculate the position we want to spawn the vehicle at (we don't want it to appear in the player)&lt;br /&gt;
* Spawn the vehicle&lt;br /&gt;
* Check if it has been spawned successfully, or output a message&lt;br /&gt;
&lt;br /&gt;
In order to achieve our goals, we have to use several functions. To find function we need to use, we should visit the [[Scripting Functions|Server Functions List]]. First we need a function to get the players position. Since players are Elements, we first jump to the '''Element functions''' where we find the [[getElementPosition]] function. By clicking on the function name in the list, you get to the function description. There we can see the syntax, what it returns and usually an example. The syntax shows us what arguments we can or have to submit.&lt;br /&gt;
&lt;br /&gt;
For [[getElementPosition]], the syntax is:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
float, float, float getElementPosition ( element theElement )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The three ''float'' in front of the function name are the return type. In this case it means the function returns three floating point numbers. (x, y and z) Within the parentheses, you can see what arguments you have to submit. In this case only the element whose position you want to get, which is the player in our example.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function createVehicleForPlayer(thePlayer, command, vehicleModel)&lt;br /&gt;
	-- get the position and put it in the x,y,z variables&lt;br /&gt;
	-- (local means, the variables only exist in the current scope, in this case, the function)&lt;br /&gt;
	local x,y,z = getElementPosition(thePlayer)&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Next we want to ensure that the vehicle won't spawn directly in the player, so we add a few units to the ''x'' variable, which will make it spawn east from the player.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function createVehicleForPlayer(thePlayer, command, vehicleModel)&lt;br /&gt;
	local x,y,z = getElementPosition(thePlayer) -- get the position of the player&lt;br /&gt;
	x = x + 5 -- add 5 units to the x position&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we need another function, one to spawn a vehicle. We once again search for it on the [[Scripting Functions|Server Functions List]], this time - since we are talking about vehicles - in the '''Vehicle functions''' section, where we will choose [[createVehicle]]. In this function's syntax, we only have one return type (which is more common), a vehicle element that points to the vehicle we just created. Also, we see that some arguments are enclosed within [ ] which means that those are optional.&lt;br /&gt;
&lt;br /&gt;
We already have all arguments we need for [[createVehicle]] in our function: The position we just calculated in the ''x,y,z'' variables and the model id that we provided through the command (&amp;quot;createvehicle 468&amp;quot;) and can access in the function as ''vehicleModel'' variable.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function createVehicleForPlayer(thePlayer, command, vehicleModel)&lt;br /&gt;
	local x,y,z = getElementPosition(thePlayer) -- get the position of the player&lt;br /&gt;
	x = x + 5 -- add 5 units to the x position&lt;br /&gt;
	-- create the vehicle and store the returned vehicle element in the ''createdVehicle'' variable&lt;br /&gt;
	local createdVehicle = createVehicle(tonumber(vehicleModel),x,y,z)&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Of course this code can be improved in many ways, but at least we want to add a check whether the vehicle was created successfully or not. As we can read on the [[createVehicle]] page under '''Returns''', the function returns ''false'' when it was unable to create the vehicle. Thus, we check the value of the ''createVehicle'' variable.&lt;br /&gt;
&lt;br /&gt;
Now we have our complete script:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function createVehicleForPlayer(thePlayer, command, vehicleModel)&lt;br /&gt;
	local x,y,z = getElementPosition(thePlayer) -- get the position of the player&lt;br /&gt;
	x = x + 5 -- add 5 units to the x position&lt;br /&gt;
	local createdVehicle = createVehicle(tonumber(vehicleModel),x,y,z)&lt;br /&gt;
	-- check if the return value was ''false''&lt;br /&gt;
	if (createdVehicle == false) then&lt;br /&gt;
		-- if so, output a message to the chatbox, but only to this player.&lt;br /&gt;
		outputChatBox(&amp;quot;Failed to create vehicle.&amp;quot;,thePlayer)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler(&amp;quot;createvehicle&amp;quot;, createVehicleForPlayer)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can see, we introduced another function with [[outputChatBox]]. By now, you should be able to explore the function's documentation page yourself. For more advanced scripting, please check out the [[Map manager|Map Manager]].&lt;br /&gt;
&lt;br /&gt;
==What you need to know==&lt;br /&gt;
You already read some things about resources, command handlers and finding functions in the documentation in the first paragraph, but there is much more to learn. This section will give you a rather short overview over some of these things, while linking to related pages if possible.&lt;br /&gt;
===Clientside and Serverside scripts===&lt;br /&gt;
You may have already noticed these or similiar terms (Server/Client) somewhere on this wiki, mostly in conjunction with functions. MTA not only supports scripts that run on the server and provide commands (like the one we wrote above) or other features, but also scripts that run on the MTA client the players use to connect to the server. The reason for this is, that some features MTA provides have to be clientside (like a GUI - Graphical User Interface), others should be because they work better and still others are better off to be serverside or just don't work clientside.&lt;br /&gt;
&lt;br /&gt;
Most scripts you will make (gamemodes, maps) will probably be serverside, like the one we wrote in the first section. If you run into something that can't be solved serverside, you will probably have to make it clientside. For a clientside script for example, you would create a ordinary script file (for example called ''client.lua'') and specify it in the meta.xml, like this:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;script src=&amp;quot;client.lua&amp;quot; type=&amp;quot;client&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
The ''type'' attribute defaults to 'server', so you only need to specify it for clientside scripts. When you do this, the clientside script will be downloaded to the player's computer once he connects to the server. Read more about [[Client side scripts]].&lt;br /&gt;
&lt;br /&gt;
===More complex resources===&lt;br /&gt;
The previous section showed briefly how to add clientside scripts to the resource, but there is also much more possible. As mentioned at the very top of this page, resources can be pretty much everything. Their purpose is defined by what they do. Let's have some theoretical resources, by looking at the files it contains, the ''meta.xml'' and what they might do:&lt;br /&gt;
&lt;br /&gt;
====First example - A utility script====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
/admin_commands&lt;br /&gt;
	/meta.xml&lt;br /&gt;
	/commands.lua&lt;br /&gt;
	/client.lua&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;meta&amp;gt;&lt;br /&gt;
	&amp;lt;info author=&amp;quot;Someguy&amp;quot; description=&amp;quot;admin commands&amp;quot; /&amp;gt;&lt;br /&gt;
	&amp;lt;script src=&amp;quot;commands.lua&amp;quot; /&amp;gt;&lt;br /&gt;
	&amp;lt;script src=&amp;quot;client.lua&amp;quot; type=&amp;quot;client&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/meta&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The ''commands.lua'' provides some admin commands, like banning a player, muting or something else that can be used to admin the server&lt;br /&gt;
* The ''client.lua'' provides a GUI to be able to perform the mentioned actions easily&lt;br /&gt;
&lt;br /&gt;
This example might be running all the time (maybe even auto-started when the server starts) as it's useful during the whole gaming experience and also wont interfere with the gameplay, unless an admin decides to take some action of course.&lt;br /&gt;
&lt;br /&gt;
====Second example - A gamemode====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
/counterstrike&lt;br /&gt;
	/meta.xml&lt;br /&gt;
	/counterstrike.lua&lt;br /&gt;
	/buymenu.lua&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;meta&amp;gt;&lt;br /&gt;
	&amp;lt;info author=&amp;quot;Someguy&amp;quot; description=&amp;quot;Counterstrike remake&amp;quot; type=&amp;quot;gamemode&amp;quot; /&amp;gt;&lt;br /&gt;
	&amp;lt;script src=&amp;quot;counterstrike.lua&amp;quot; /&amp;gt;&lt;br /&gt;
	&amp;lt;script src=&amp;quot;buymenu.lua&amp;quot; type=&amp;quot;client&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/meta&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The ''counterstrike.lua'' contains similiar to the following features:&lt;br /&gt;
** Let players choose their team and spawn them&lt;br /&gt;
** Provide them with weapons, targets and instructions (maybe read from a Map, see below)&lt;br /&gt;
** Define the game's rules, e.g. when does the round end, what happens when a player dies&lt;br /&gt;
** .. and maybe some more&lt;br /&gt;
* The ''buymenu.lua'' is a clientside script and creates a menu to buy weapons&lt;br /&gt;
&lt;br /&gt;
This example can be called a gamemode, since it not only intereferes with the gameplay, but actually defines the rules of it. The ''type'' attribute indicates that this example works with the [[Map manager]], yet another resource that was written by the QA Team to manage gamemodes and map loading. It is highly recommended that you base your gamemodes on the techniques it provides.&lt;br /&gt;
&lt;br /&gt;
This also means that the gamemode probably won't run without a map. Gamemodes should always be as generic as possible. An example for a map is stated in the next example.&lt;br /&gt;
&lt;br /&gt;
====Third example - A Map====&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
/cs-airport&lt;br /&gt;
	/meta.xml&lt;br /&gt;
	/airport.map&lt;br /&gt;
	/airport.lua&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;meta&amp;gt;&lt;br /&gt;
	&amp;lt;info author=&amp;quot;Someguy&amp;quot; description=&amp;quot;Counterstrike airport map&amp;quot; type=&amp;quot;map&amp;quot; gamemodes=&amp;quot;counterstrike&amp;quot; /&amp;gt;&lt;br /&gt;
	&amp;lt;map src=&amp;quot;airport.map&amp;quot; /&amp;gt;&lt;br /&gt;
	&amp;lt;script src=&amp;quot;airport.lua&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;/meta&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* The ''airport.map'' in a XML file that provides information about the map to the gamemode, these may include:&lt;br /&gt;
** Where the players should spawn, with what weapons, what teams there are&lt;br /&gt;
** What the targets are&lt;br /&gt;
** Weather, World Time, Timelimit&lt;br /&gt;
** Provide vehicles&lt;br /&gt;
* The ''airport.lua'' might contain map-specific features, that may include:&lt;br /&gt;
** Opening some door/make something explode when something specific happens&lt;br /&gt;
** Create or move some custom objects, or manipulate objects that are created through the .map file&lt;br /&gt;
** .. anything else map-specific you can think of&lt;br /&gt;
&lt;br /&gt;
As you can see, the ''type'' attribute changed to 'map', telling the [[Map manager]] that this resource is a map, while the ''gamemodes'' attribute tells it for which gamemodes this map is valid, in this case the gamemode from the above example.&lt;br /&gt;
What may come as a surprise is that there is also a script in the Map resource. Of course this is not necessarily needed in a map, but opens a wide range of possibilities for map makers to create their own world within the rules of the gamemode they create it for.&lt;br /&gt;
&lt;br /&gt;
The ''airport.map'' file might look similiar to this:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;map mode=&amp;quot;deathmatch&amp;quot; version=&amp;quot;1.0&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;terrorists&amp;gt;&lt;br /&gt;
		&amp;lt;spawnpoint posX=&amp;quot;2332.23&amp;quot; posY=&amp;quot;-12232.33&amp;quot; posZ=&amp;quot;4.42223&amp;quot; skins=&amp;quot;23-40&amp;quot; /&amp;gt;&lt;br /&gt;
	&amp;lt;/terrorists&amp;gt;&lt;br /&gt;
	&amp;lt;counterterrorists&amp;gt;&lt;br /&gt;
		&amp;lt;spawnpoint posX=&amp;quot;2334.23443&amp;quot; posY=&amp;quot;-12300.233&amp;quot; posZ=&amp;quot;10.2344&amp;quot; skins=&amp;quot;40-50&amp;quot; /&amp;gt;&lt;br /&gt;
	&amp;lt;/counterterrorists&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	&amp;lt;bomb posX=&amp;quot;23342.23&amp;quot; posY=&amp;quot;&amp;quot; posZ=&amp;quot;&amp;quot; /&amp;gt;&lt;br /&gt;
	&lt;br /&gt;
	&amp;lt;vehicle posX=&amp;quot;&amp;quot; posY=&amp;quot;&amp;quot; posZ=&amp;quot;&amp;quot; model=&amp;quot;602&amp;quot; /&amp;gt;	&lt;br /&gt;
	&amp;lt;vehicle posX=&amp;quot;&amp;quot; posY=&amp;quot;&amp;quot; posZ=&amp;quot;&amp;quot; model=&amp;quot;603&amp;quot; /&amp;gt;	&lt;br /&gt;
&amp;lt;/map&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When a gamemode is started with a map, the map resources is automatically started by the mapmanager and the information it contains can be read by the gamemode resource. When the map changes, the current map resource is stopped and the next map resource is started. For a more in-depth explanation and examples of how map resources are utilized in the main script, please visit the [[Writing Gamemodes]] page.&lt;br /&gt;
&lt;br /&gt;
===Events===&lt;br /&gt;
Events are the way MTA tells scripts about things that happen. For example when a player dies, the [[onPlayerWasted]] event is triggered. In order to perform any actions when a player dies, you have to prepare yourself similiar to adding a command handler, as shown in [[#Writing_the_script|the first chapter]].&lt;br /&gt;
&lt;br /&gt;
This example will output a message with the name of the player who died:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function playerDied(totalAmmo, killer, killerWeapon, bodypart)&lt;br /&gt;
	outputChatBox(getPlayerName(source)..&amp;quot; died!&amp;quot;)&lt;br /&gt;
end&lt;br /&gt;
addEventHandler(&amp;quot;onPlayerWasted&amp;quot;,getRootElement(),playerDied)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Instead of showing what arguments are needed, the documentation page for Events shows what parameters are passed to the handler function, similiar to the way a [[#About_command_handlers|command handler]] does, just that it is different from event to event. Another important point is the ''source'' variable, that exists in handler functions. It doesn't have to be added to the parameter list of the function, but it still exists. It has a different value from event to event, for player events (as in the example above) it is the player element. As another example, you can take a look at the basic spawning player script in the first section to get an idea how ''source'' is used.&lt;br /&gt;
&lt;br /&gt;
==Where to go from here==&lt;br /&gt;
You should now be familiar with the most basic aspects of MTA scripting and also a bit with the documentation. The [[Main Page]] provides you with links to more information, Tutorials and References that allow a deeper look into the topics you desire to learn about.&lt;br /&gt;
{{note|From here we recommend reading the [[debugging]] tutorial. Good debugging skills are an absolute necessity when you are making scripts. We also recommend you to use the [[predefined variables list]] to help you with certain tasks and make scripting easier and faster.}}&lt;br /&gt;
'''See also:'''&lt;br /&gt;
* [[Advanced Topics]]&lt;br /&gt;
[[ru:Scripting Introduction]]&lt;br /&gt;
[[it:Introduzione allo scripting]]&lt;br /&gt;
[[es:Introducción a la Programación]]&lt;br /&gt;
[[nl:Scripting_introductie]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=User_talk:Guix&amp;diff=34652</id>
		<title>User talk:Guix</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=User_talk:Guix&amp;diff=34652"/>
		<updated>2013-01-27T15:58:04Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I think that your recent contributions are pretty useless. Why do you post functions that do nothing else than return some other functions? Functions like [[getColorBlue]], [[getColorRed]], ... provide no usefulness and should not be used by anyone. They are really bad examples. Please refrain from adding such things. --[[User:Wielebny|Wielebny]] 13:47, 26 January 2013 (UTC)&lt;br /&gt;
&lt;br /&gt;
Just because you have no use for these functions doesn't mean it is useless. Actually I needed them so I made them, it was useful for me so it will be for someone else.&lt;br /&gt;
--[[User:Guix|Guix]] 20:41, 26 January 2013 (UTC)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;function a(x) return b(x) end&amp;lt;/pre&amp;gt; do you still stand that this is a useful function? It's a programming antipattern and should never be used! --[[User:Wielebny|Wielebny]] 15:56, 27 January 2013 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=User_talk:Guix&amp;diff=34651</id>
		<title>User talk:Guix</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=User_talk:Guix&amp;diff=34651"/>
		<updated>2013-01-27T15:56:40Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I think that your recent contributions are pretty useless. Why do you post functions that do nothing else than return some other functions? Functions like [[getColorBlue]], [[getColorRed]], ... provide no usefulness and should not be used by anyone. They are really bad examples. Please refrain from adding such things. --[[User:Wielebny|Wielebny]] 13:47, 26 January 2013 (UTC)&lt;br /&gt;
&lt;br /&gt;
Just because you have no use for these functions doesn't mean it is useless. Actually I needed them so I made them, it was useful for me so it will be for someone else.&lt;br /&gt;
--[[User:Guix|Guix]] 20:41, 26 January 2013 (UTC)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;function a(x) return b(x) end&amp;lt;/pre&amp;gt; do you still stand that this is a useful function? It's a programming pattern that should never be used! --[[User:Wielebny|Wielebny]] 15:56, 27 January 2013 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Talk:GetResultingColor&amp;diff=34643</id>
		<title>Talk:GetResultingColor</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Talk:GetResultingColor&amp;diff=34643"/>
		<updated>2013-01-26T14:01:33Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Created page with &amp;quot;This function is wrong. Mixing (0,0,0,255) with (255,255,255,128) would obviously result in (64,64,64,255), not the values that your function returns. --~~~~&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This function is wrong. Mixing (0,0,0,255) with (255,255,255,128) would obviously result in (64,64,64,255), not the values that your function returns. --[[User:Wielebny|Wielebny]] 14:01, 26 January 2013 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=User_talk:Guix&amp;diff=34642</id>
		<title>User talk:Guix</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=User_talk:Guix&amp;diff=34642"/>
		<updated>2013-01-26T13:47:58Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: notes about users last contributions&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I think that your recent contributions are pretty useless. Why do you post functions that do nothing else than return some other functions? Functions like [[getColorBlue]], [[getColorRed]], ... provide no usefulness and should not be used by anyone. They are really bad examples. Please refrain from adding such things. --[[User:Wielebny|Wielebny]] 13:47, 26 January 2013 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=GetAccountName&amp;diff=34268</id>
		<title>GetAccountName</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=GetAccountName&amp;diff=34268"/>
		<updated>2012-12-17T21:32:07Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Revert: I don't think that this was a good example of getAccountName&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Server function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This function retrieves the name of an account.&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
string getAccountName ( account theAccount )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''theAccount:''' The account you wish to get the name of&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns a string containing the account's name, ''false'' if the account does not exist or an invalid argument was passed to the function.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
This example announces into the console when a player logs into his account.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function outputOnLogin ( previous_account, current_account, auto_login ) --when a player logs in&lt;br /&gt;
	outputConsole(getAccountName(previous_account)..&amp;quot; Logged into &amp;quot;..getAccountName(current_account)) -- announce it into the console&lt;br /&gt;
end&lt;br /&gt;
addEventHandler(&amp;quot;onPlayerLogin&amp;quot;,getRootElement(),outputOnLogin ) --add an event handler&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Account_functions}}&lt;br /&gt;
&lt;br /&gt;
[[es:getAccountName]]&lt;br /&gt;
[[ar:getAccountName]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=OnPlayerLogin&amp;diff=34250</id>
		<title>OnPlayerLogin</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=OnPlayerLogin&amp;diff=34250"/>
		<updated>2012-12-15T09:21:05Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Changed spelling and example code&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Server event}}&lt;br /&gt;
__NOTOC__ &lt;br /&gt;
This event is triggered when a player logs into their account in-game.&lt;br /&gt;
&lt;br /&gt;
==Parameters==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
account thePreviousAccount, account theCurrentAccount, bool autoLogin&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*'''thePreviousAccount''': The account the player was logged into before&lt;br /&gt;
*'''theCurrentAccount''': The account the player logged into just now&lt;br /&gt;
*'''autoLogin''': Whether this login was a result of an autologin&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
The [[event system#Event source|source]] of this event is the player [[element]] that just logged in.&lt;br /&gt;
&lt;br /&gt;
==Cancel effect==&lt;br /&gt;
If this event is canceled the player will not be logged in.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
This example just outputs to the player console that a player in one account logged into an another account:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
-- root = getElementRoot()&lt;br /&gt;
addEventHandler(&amp;quot;onPlayerLogin&amp;quot;, root,&lt;br /&gt;
  function()&lt;br /&gt;
    outputChatBox(getPlayerName(source)..&amp;quot; has logged in!&amp;quot;, root)&lt;br /&gt;
  end&lt;br /&gt;
)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This example allows only hardcoded serials to access given accounts.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
Firewall = &lt;br /&gt;
{&lt;br /&gt;
--  [ 'accountName' ] = 'playerSerial',&lt;br /&gt;
    [ '3ash8' ] = '9C9F3B55D9D7BB7135FF274D3BF444E4',&lt;br /&gt;
    [ 'test5' ] = '1D6F76CF8D7193792D13789849498452',&lt;br /&gt;
}&lt;br /&gt;
 &lt;br /&gt;
addEventHandler ( 'onPlayerLogin', getRootElement ( ),&lt;br /&gt;
    function ( _, theCurrentAccount )&lt;br /&gt;
    local Serial = Firewall[getAccountName(theCurrentAccount)]&lt;br /&gt;
        if ( Serial ) then&lt;br /&gt;
            if Serial ~= getPlayerSerial ( source ) then&lt;br /&gt;
                outputChatBox( &amp;quot;Sorry, you're not allowed to access this account.&amp;quot;, source)&lt;br /&gt;
                cancelEvent( true )&lt;br /&gt;
            end&lt;br /&gt;
        end&lt;br /&gt;
    end&lt;br /&gt;
)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
{{See also/Server event|Player events}}&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Talk:SetModelHandling&amp;diff=34176</id>
		<title>Talk:SetModelHandling</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Talk:SetModelHandling&amp;diff=34176"/>
		<updated>2012-12-03T17:23:53Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;It works for sure, I use it, here's an working example: http://lss-rp.pl/_/handling82379.lua --[[User:Wielebny|Wielebny]] 17:23, 3 December 2012 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Talk:RemoveWorldModel&amp;diff=34143</id>
		<title>Talk:RemoveWorldModel</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Talk:RemoveWorldModel&amp;diff=34143"/>
		<updated>2012-11-19T17:20:02Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: /* Server-side */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Server-side ==&lt;br /&gt;
&lt;br /&gt;
I don't see any sense using it rather server-side, because it will never delete the model from new players, in other words, there's no &amp;quot;rather&amp;quot; to it. Both are functioning the same way. [[User:Socialz|Socialz]] 08:24, 19 November 2012 (UTC)&lt;br /&gt;
&lt;br /&gt;
This note was added by function author, Cazomino05. I believe, that he knows what he's doing. --[[User:Wielebny|Wielebny]] 17:20, 19 November 2012 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=MTASE&amp;diff=34117</id>
		<title>MTASE</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=MTASE&amp;diff=34117"/>
		<updated>2012-11-12T18:03:50Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Fixed not working links to forum&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| style=&amp;quot;float: right; border-collapse: collapse; width: 270px&amp;quot;&lt;br /&gt;
|[[Image:MTASElogo_wiki.png]]&lt;br /&gt;
|}&lt;br /&gt;
{{TOClimit|1}}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
MTA Script Editor is a tool for Lua scripters, or an Integrated Development Environment (IDE). What we are aiming for is to speed up process of developing resources. We thought that process of creating new resources and testing them is, let's be honest... a pain in the ass. Even the management of resources can be a bit annoying sometimes. For instance, if you want to add a new script file to your resource first you have to create the file, then add the path to the file into meta.xml. Worst of all, if you ever forget about adding the file to meta.xml you end up hitting your head against the wall wondering why your script doesn't work. &lt;br /&gt;
&lt;br /&gt;
We wanted to do something that would speed this process up so you could do so much in so little time. Previewing resources such as images and sounds have never been so easy. We are aiming for something along the lines of Visual Studio IDE.&lt;br /&gt;
&lt;br /&gt;
==What we offer==&lt;br /&gt;
We have been working on this tool for quite some time but we had a long break due to lack of time and now I'm the only one working on this because education is more important than &amp;quot;having a nice time&amp;quot;. Even though I'm working alone we are progressing smoothly in the development.&lt;br /&gt;
&lt;br /&gt;
We have implemented the following features:&lt;br /&gt;
*Loading resources&lt;br /&gt;
*Easy resource management&lt;br /&gt;
*Preview resources such as sound and image files&lt;br /&gt;
*Lua and XML syntax highlighting&lt;br /&gt;
*On-the-fly (live) Lua syntax checker&lt;br /&gt;
*'New resource' wizard - allows you to create new resource with a few clicks&lt;br /&gt;
*Switching between resources&lt;br /&gt;
*Tabs for script files&lt;br /&gt;
*C#'s #region-like grouping code - useful when working in teams and to keep the code clean&lt;br /&gt;
*Start/stop server and client&lt;br /&gt;
*Join your local server with 1 click&lt;br /&gt;
*Switch between game and Script Editor with only one key on the keyboard&lt;br /&gt;
*ResourceZipper&lt;br /&gt;
&lt;br /&gt;
==Screenshots==&lt;br /&gt;
*'''Main window''' - overall look of the application. On the right you can see a list of MTA functions. You can choose what functions you want to be displayed by changing item in the combo box above it. Are you going to ask what this &amp;quot;silly table&amp;quot; at the bottom of the window is doing? I knew it... It's the syntax checker. As you script the syntax is checked by Lua engine and outputs any errors you've made in the script. It speed up progress because you don't have to go into game and restart the resource to check if you fixed the syntax error. I made a little error on line 1 to show you how it looks:&lt;br /&gt;
[[Image:MTASEmainwnd.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*'''New resource wizard''' - create a resource with 5 simple steps (3 steps are optional):&lt;br /&gt;
[[Image:MTASEnewreswizard.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*'''Sound player''' - preview sounds by double-clicking sound file in the resource explorer:&lt;br /&gt;
[[Image:MTASEsoundplayer.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*'''Image viewer''' - preview images by hovering you cursor over nodes in resource explorer:&lt;br /&gt;
[[Image:MTASEimageviewer.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*'''Suggested functions''' - a &amp;quot;window&amp;quot; similar to the one in Visual Studio showing a list of functions. It also shows a tooltip telling you what the function does and its parameters. It also contains all exported functions from every resource. You can add a 3 new attributes to your exported function tag in meta.xml to let Script Editor display descriptive tooltip, like on the screenshot:&lt;br /&gt;
**'''retval:''' return type (eg. bool, marker, int, etc.)&lt;br /&gt;
**'''params:''' list of parameters&lt;br /&gt;
**'''description:''' short description of the function[/list]&lt;br /&gt;
[[Image:MTSEsuggestedfuncs.png]]&lt;br /&gt;
:(screenshot show an example of exported function that in meta.xml looks like the following:)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot; lang=&amp;quot;xml&amp;quot;&amp;gt;&amp;lt;export function=&amp;quot;getBankMarkers&amp;quot; retval=&amp;quot;table&amp;quot; params=&amp;quot;void&amp;quot; description=&amp;quot;Returns a table containing all bank markers.&amp;quot; /&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*'''Function tooltip''' (available from 0.3) - tooltip showing function description. Moving mouse over function names in the function list (not the suggested functions list)&lt;br /&gt;
[[Image:MTASE_func_desc.png‎]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*'''MTA Server Configuration''' - a window where you can change server's settings. You won't have to open mtaserver.conf and change the server settings, startup resources, adding modules, etc.&lt;br /&gt;
[[Image:MTASEserverconfig.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*'''Customize syntax highlighter''' - you can customize many syntax highlighter properties&lt;br /&gt;
[[Image:MTASEcustomizesyntax.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*'''Exported functions''' - you can view all exported functions from every resource&lt;br /&gt;
[[Image:MTASEfuncs.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Overview==&lt;br /&gt;
As you can see we want to simplify resource development and it seems to look pretty nice but we are still in development. There are some good key features that would attract you as a scripter. While we are still in development we wanted to ask you what you think about this tool and what would you like to see included in the release (do not ask when! we do not know when). Any suggestions? You're welcome to suggest some features and if possible we will do our best to implement it. Just visit [http://forum.multitheftauto.com/viewtopic.php?f=91&amp;amp;t=24834 our MTA forum topic] and post your suggestions.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Download==&lt;br /&gt;
&lt;br /&gt;
To download the tool, go to [http://forum.multitheftauto.com/viewtopic.php?f=91&amp;amp;t=24834 our thread on the MTA forum]. That thread is updated frequently.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
* To run this application you need to have .NET 2.0 Framework installed.&lt;br /&gt;
* You should be able to run it on Windows XP and Vista. Works on Windows 7 too!&lt;br /&gt;
* You must have both MTA Client and Server installed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Error/Warning messages at startup===&lt;br /&gt;
&lt;br /&gt;
===Loading irrKlang.NET2.0 library failed to load! This means you will not be able to preview sound files.===&lt;br /&gt;
This message appears most likely for Windows XP/Vista '''64bit''' users. It may occur on 32bit OS if that machine doesn't have .NET 2.0 SP1 installed.&lt;br /&gt;
&lt;br /&gt;
There is only 1 known way to solve the problem...: Make sure you have .NET 2.0 SP1 installed, if you don't have it you can download it from [http://www.microsoft.com/Downloads/details.aspx?familyid=79BC3B77-E02C-4AD3-AACF-A7633F706BA5&amp;amp;displaylang=en Microsoft Download Center].&lt;br /&gt;
&lt;br /&gt;
===Error parsing meta.xml===&lt;br /&gt;
The reason why this window comes up should be explained in the message. It's most likely that your meta.xml has the following XML declarations:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot; lang=&amp;quot;xml&amp;quot;&amp;gt;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot; ?&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-16&amp;quot; ?&amp;gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
To solve the problem, simply open the file in WordPad or Notepad (Notepad++ may not solve the problem so use the Windows one), remove that line and save the changes.&lt;br /&gt;
&lt;br /&gt;
.NET 2.0 XML parser doesn't like not &amp;quot;well-formed&amp;quot; XML files, so you may get different messages with different meta.xml files.&lt;br /&gt;
&lt;br /&gt;
'''(THIS HAS BEEN FIXED IN 0.3)'''&lt;br /&gt;
&lt;br /&gt;
===Not able to save file===&lt;br /&gt;
If you can't seem to be able to save a file that's probably because you created a new file and the file wasn't added to any resource. This is a bug and will be fixed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Problem with horizontal scrollbar===&lt;br /&gt;
If you have too long line and you paste some code on it, you may get a problem of not being able to scroll to the left (beginning of the line). This is problem with 3rd party library MTA:SE is using. It is not going to be fixed by its author (he's inactive for over 2 years now) and it's hard for us to find what is causing it. In fact, I was also given a link to another nice syntax highlighter library which I may use in the future. I hope this one doesn't have that problem.&lt;br /&gt;
If you encounter this problem there are a few ways to get to the beginning of the line.&lt;br /&gt;
* start highlighting this line so that caret moves to the left&lt;br /&gt;
* press Home key on your keyboard to move caret to the first character on a line&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Problems with loading some resources (meta.xml)===&lt;br /&gt;
If you have problems with some resources not being loaded and you get message your resource will not be shown in Resource Explorer, there are few things you can do to fix it:&lt;br /&gt;
- Make sure your files in not encoded in Unicode (you can open it in Windows' Notepad and save the meta.xml with ANSI encoding, don't use Notepad++ for this task since it may not change file encoding at all).&lt;br /&gt;
- Make sure you don't have &amp;quot;&amp;amp;&amp;quot; (ampersand) sign anywhere in the file since it may cause meta.xml not being parsed correctly. You should replace ampersands with '''&amp;amp;amp;amp;''' as this is the correct way to represent an ampersand in XML.&lt;br /&gt;
&lt;br /&gt;
Probably both of these can be fixed by changing/adding little piece of code but unfortunately I wasn't able to figure out what. If you know what can cause this parser error in C# .NET XML parser than don't hesitate and share this knowledge with me so I can fix this problem.&lt;br /&gt;
&lt;br /&gt;
'''(THIS HAS BEEN FIXED IN 0.3)'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Contact==&lt;br /&gt;
You can find us on [http://forum.multitheftauto.com/viewtopic.php?f=91&amp;amp;t=24834 MTA forum]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Credits==&lt;br /&gt;
* [http://forum.mtasa.com/memberlist.php?mode=viewprofile&amp;amp;u=19953 50p] - Programmer &amp;amp; GUI designer.&lt;br /&gt;
* [http://forum.mtasa.com/memberlist.php?mode=viewprofile&amp;amp;u=30686 Fenix1042] - Programmer.&lt;br /&gt;
* [http://forum.mtasa.com/memberlist.php?mode=viewprofile&amp;amp;u=22437 Cazomino05] - XML files with MTA functions and events.&lt;br /&gt;
* MTA Developers - Delivering the amazing GTA:SA Multiplayer MOD that has almost unlimited possibilities...&lt;br /&gt;
&lt;br /&gt;
[[es:MTASE]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=User_talk:Tomc0&amp;diff=33969</id>
		<title>User talk:Tomc0</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=User_talk:Tomc0&amp;diff=33969"/>
		<updated>2012-11-04T08:32:47Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Created page with &amp;quot;Could you please stop making 'TODO' pages? Create one, when you have a content for it. --~~~~&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Could you please stop making 'TODO' pages? Create one, when you have a content for it. --[[User:Wielebny|Wielebny]] 08:32, 4 November 2012 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=User_talk:John&amp;diff=33968</id>
		<title>User talk:John</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=User_talk:John&amp;diff=33968"/>
		<updated>2012-11-04T08:28:23Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: /* Tutorial for ubuntu server 12.04.1 LTS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Stealth is a team elimination based gamemode that contains elements from counterstrike, splinter-cell, urban terror, and many original ideas thrown in. Players are encouraged to be stealthy in order to not reveal their location, and work with teammates using strategy and teamwork to win.&lt;br /&gt;
&lt;br /&gt;
=Gameplay=&lt;br /&gt;
&lt;br /&gt;
When a player joins a server, they are prompted to choose a team (either Mercenaries, Spies, or Spectators). You can return the team selection GUI by pressing F3.&lt;br /&gt;
When the round begins, players are given a menu to select their weapons and gear. If a player takes too long to select their gear, they will be moved to the spectators team. Once the player hits spawn on the menu, they spawn as either a spy or a mercenary along with their teammates.&lt;br /&gt;
The round is over when a team is eliminated or the timer runs out.&lt;br /&gt;
The team with the most living players at the end of the round wins.&lt;br /&gt;
&lt;br /&gt;
==Noise==&lt;br /&gt;
The noise indication bar appears at the bottom right of the screen (labeled as &amp;quot;dB&amp;quot; for decibels). Whenever a player does something that creates noise, the noise bar will begin to increase. If a player is being noisy, their nametag will become visible to enemies, possibly giving away their location. If a player is being very noisy, a blip will be placed on the radar, giving away their position. In order to move about undetected players should operate as stealthily and methodically as possible.&lt;br /&gt;
&lt;br /&gt;
==Headshots and Limping==&lt;br /&gt;
By default, if a player is shot in the head, they will be killed instantly. If they are shot in the leg, they will become crippled, slowing down movement. This can be changed via the [[#Resource_Settings|resource settings]].&lt;br /&gt;
&lt;br /&gt;
==Gadgets==&lt;br /&gt;
Players are given several options to choose as their gadget. the default button to activate it is &amp;quot;R&amp;quot;. Most gadgets have limited uses. The icon to the left to the noise bar shows which is the current gadget and how many uses it has left (if there is a limit). Available gadgets include:&lt;br /&gt;
*'''CLOAK''' Makes the player nearly invisible for a short period of time, allowing them to bypass proximity mines and sneak by players.&lt;br /&gt;
*'''RADAR BURST''' Reveals all the living players exact locations at the time of the gadgets activation.&lt;br /&gt;
*'''PROX MINE''' A player can crouch to place a mine that explodes when a member of the opposite team gets too close.&lt;br /&gt;
*'''GOGGLES''' A player can use the gadget button to toggle between infrared and night vision while holding the goggles in your hand. The goggles counteract any cloaking from other players and reveal locations of proximity mines and cameras while in night vision mode, and player positions while in infrared mode.&lt;br /&gt;
*'''CAMERA''' Pressing the gadget button while facing a wall places a camera. Pressing it again while standing away from it will activate the camera view. Use the arrow keys to moves the cameras angle around. Press fire while in Camera view to drop a smoke grenade from the camera. You can also pick up your own camera by approaching it and pressing the gadget button again so you can place the camera elsewhere.&lt;br /&gt;
*'''ARMOR''' Gives extra protection, as well as prevents headshots or legshot limping for as long as there is armor left.&lt;br /&gt;
*'''SHIELD''' A bulletproof riot shield.&lt;br /&gt;
&lt;br /&gt;
=Resource Settings=&lt;br /&gt;
Stealth provides a plethora of options that can be modified via the [[Resource:admin|admin panel]]:&lt;br /&gt;
*General Settings:&lt;br /&gt;
**Friendly fire: whether or not to enable friendly fire (0 for off, 1 for on, 0 by default)&lt;br /&gt;
**Round delay: the delay between rounds, in seconds (10-60 accepted, 15 by default)&lt;br /&gt;
**Round length: round length, in minutes (1-1440 accepted, 5 by default)&lt;br /&gt;
**Map round limit: maximum number of rounds allowed per map (in a row) (-1-9999 accepted, -1 for infinite rounds, 3 by default)&lt;br /&gt;
**Weapon selection timeout: amount of time players have to choose their weapons before being moved to the spectator team, in seconds (1-439 accepted, 30 by default)&lt;br /&gt;
**Minimum player count: the minimum number of players needed for a round to start (2-4096 accepted, 2 by default)&lt;br /&gt;
**Enable damage effects: &amp;lt;b&amp;gt;TODO&amp;lt;/b&amp;gt;&lt;br /&gt;
*Ped Stat Settings:&lt;br /&gt;
**Use stealth ped stats: whether or not to use stealth's ped stats (0 to ignore ped stats, 1 to apply, 1 by default)&lt;br /&gt;
**The rest of the ped stat settings are the skill levels players will spawn with. (0-999 accepted)&lt;br /&gt;
*Weapon Ammo Settings:&lt;br /&gt;
**All weapons have their own weapon ammo setting - this is the amount of ammo players will spawn with for the given weapon. (0-10000 accepted)&lt;br /&gt;
&lt;br /&gt;
== Tutorial for ubuntu server 12.04.1 LTS ==&lt;br /&gt;
&lt;br /&gt;
Hi John, why did you decide to link to a tutorial hosted somewhere else, not on that wiki? That tutorial should be an article here. Besides, I don't agree with few things in it, especially the paths are wrong, and it describes how to run mta server as root - a thing that should never be done. Please replace that link with in-wiki page. --[[User:Wielebny|Wielebny]] 16:06, 28 October 2012 (UTC)&lt;br /&gt;
&lt;br /&gt;
I'm reverting this change, due to lack of rection from your side. --[[User:Wielebny|Wielebny]] 08:28, 4 November 2012 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Server_Manual&amp;diff=33967</id>
		<title>Server Manual</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Server_Manual&amp;diff=33967"/>
		<updated>2012-11-04T08:26:45Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Undo revision 33846 by John (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
==Getting started==&lt;br /&gt;
It is much easier than it looks to get a server up and running for your internet or LAN buddies; follow this wiki article and you will hopefully be on your way to hosting your own MTA:SA server in no time!&lt;br /&gt;
&lt;br /&gt;
==Installing the server==&lt;br /&gt;
The dedicated server application is available in different flavours depending on the platform of the server.&lt;br /&gt;
&lt;br /&gt;
===Linux installation===&lt;br /&gt;
There are different ways of getting a Linux server up and running:&lt;br /&gt;
* [http://linux.mtasa.com Getting a precompiled package]&lt;br /&gt;
* [[Building MTASA Server on GNU Linux]]&lt;br /&gt;
&lt;br /&gt;
===FreeBSD installation===&lt;br /&gt;
&lt;br /&gt;
You can run MTA:SA under FreeBSD using Linux emulation.&lt;br /&gt;
* Enable [http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/linuxemu-lbc-install.html Linux binary compatibility]&lt;br /&gt;
* Install following packages or compile them from ports: hs-terminfo, linux_base-f10, linux-f10-sqlite3&lt;br /&gt;
* Install [http://linux.mtasa.com/ Linux precompiled package]&lt;br /&gt;
&lt;br /&gt;
===Windows installation===&lt;br /&gt;
Installation of the MTA:SA server on Windows is easy as pie.&lt;br /&gt;
*Go to the [http://mtasa.com/ download page] and download the installer.&lt;br /&gt;
*Once the installer is downloaded, open it.&lt;br /&gt;
*Select a folder where you want to install the server.&lt;br /&gt;
*Click Install.&lt;br /&gt;
*Done!&lt;br /&gt;
&lt;br /&gt;
''For a full explanation of acl.xml (access control list) read: [[Access_Control_List|Access Control List]]''&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Configuring your server==&lt;br /&gt;
The Multi Theft Auto dedicated server is initially configurable through it's console window, from within the game, and from a webbrowser. In order to make use of the two last options, it is necessary to add at least one administrator user to your configuration file.&lt;br /&gt;
&lt;br /&gt;
===General configuration===&lt;br /&gt;
All general configuration options can be found in the 'mods/deathmatch/[[Server_mtaserver.conf|'''mtaserver.conf''']]' file and can be opened by any regular text editor.&lt;br /&gt;
&lt;br /&gt;
This file is fairly straightforward; every variable has a [[Server_mtaserver.conf|description of what to do with it and how to change it]].&lt;br /&gt;
&lt;br /&gt;
===Port forwarding===&lt;br /&gt;
If you run your server on your own private computer, and you have an router between the internet and your computer. You need to forward 3 ports.&lt;br /&gt;
&lt;br /&gt;
First of all open the file 'mods/deathmatch/[[Server_mtaserver.conf|'''mtaserver.conf''']]' and search for the next lines:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;serverport&amp;gt;22003&amp;lt;/serverport&amp;gt; &lt;br /&gt;
&amp;lt;httpport&amp;gt;22005&amp;lt;/httpport&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The ports are needed to setup the server correctly. We explain later how to set them, but first if you want your server to appear in the server browser there is another port we need, and that is the ASE port. &lt;br /&gt;
(quick example for how to turn ASE on or off):&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;ase&amp;gt;1&amp;lt;/ase&amp;gt; &amp;lt;!-- 0 = off, 1 = on --&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we going to forward the ports in your router, which is not needed if you already have all ports open, or if you don't have a router with a firewall. If so, skip this part.&lt;br /&gt;
&lt;br /&gt;
If you don't know how port forwarding works in your router, go to the [http://portforward.com/ Port Forward website], find your router model there, and follow the instructions there.&lt;br /&gt;
&lt;br /&gt;
In almost every router you can set the port type: UDP or TCP. The following list will explain which port type is needed for what:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Main server port: UDP&lt;br /&gt;
&lt;br /&gt;
HTTP Port: TCP&lt;br /&gt;
&lt;br /&gt;
ASE Port: UDP (this is needed if you want your server to appear in the server list)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The ASE port is also simple to get:&lt;br /&gt;
&lt;br /&gt;
ASE port = Main server port + 123&lt;br /&gt;
&lt;br /&gt;
So, if you have the main server port set to 22003, then the ASE port will be 22126.&lt;br /&gt;
&lt;br /&gt;
Good luck!&lt;br /&gt;
&lt;br /&gt;
''In the latest version of the server, you can check the port status by using the server command [[Server_Commands#openports|openports]].''&lt;br /&gt;
&lt;br /&gt;
===Client Checks===&lt;br /&gt;
&lt;br /&gt;
The MTA server can be configured to disable the anti-cheat. It can also allow specific or all files to be modified (e.g. carmods.dat), and make sure clients are of a minimum version.&lt;br /&gt;
&lt;br /&gt;
All of these settings are within the file 'mods/deathmatch/[[Server_mtaserver.conf|'''mtaserver.conf''']]'. See the [[Anti-cheat_guide|Anti-cheat guide]] for more details.&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to force a minimum client version, search for the following line:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;minclientversion&amp;gt;&amp;lt;/minclientversion&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Accepted values look like: 1.1.1-9.02320&lt;br /&gt;
&lt;br /&gt;
===Adding administrators===&lt;br /&gt;
It is strongly recommended to add at least one administrator to your server in order to make use of the built-in webserver to easily maintain and configure your server. This administrator will then also be able to log-in from within the game and control the server.&lt;br /&gt;
&lt;br /&gt;
To add an administrator to your server, follow these steps:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;While the server is running, add a new account by typing '''[[Server_Commands#addaccount|addaccount name password]]''' into the server window. For example, to add user BennyLava you could type:&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 10px 10px 10px 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
addaccount BennyLava 123password&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 10px 10px 10px 20px;&amp;quot;&amp;gt;&lt;br /&gt;
''Note: If you do not have access to the server window, and the 'admin' resource is running, you can add  the example account by issuing the chatbox command '''/register BennyLava 123password'''''&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;The server should display a message confirming the account has been added.&lt;br /&gt;
&amp;lt;li&amp;gt;Next, shutdown the server by typing '''shutdown''' into the server window.&lt;br /&gt;
&amp;lt;li&amp;gt;Make sure your server is stopped; if your server is still running, the following changes you make will be overwritten&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open the file 'mods/deathmatch/'acl.xml'''' with any text editor&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Add the account to the ''Admin'' group by using the XML-syntax below&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;acl&amp;gt;&lt;br /&gt;
  ...&lt;br /&gt;
  &amp;lt;group name=&amp;quot;Admin&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;acl name=&amp;quot;Admin&amp;quot;/&amp;gt;&lt;br /&gt;
    ...&lt;br /&gt;
    &amp;lt;object name=&amp;quot;user.BennyLava&amp;quot; /&amp;gt;&lt;br /&gt;
  &amp;lt;/group&amp;gt;&lt;br /&gt;
  ...&lt;br /&gt;
&amp;lt;/acl&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You're done! You can add as many administrators or users as you want this way, take a look at some of the other groups and ACLs for example. The ACL is also accessible through the [[Access_Control_List|Lua scripting engine]].&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is recommended to take a look at the web interface, we will explain how to do this below.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
'''Note''': There are also ways to add accounts and edit rights for the server while it's running. &amp;quot;[[Server_Commands#addaccount|addaccount &amp;lt;user&amp;gt; &amp;lt;password&amp;gt;]]&amp;quot; is an internal command to add accounts, but you will have to use the web interface to add these accounts to specific groups/ACLs!&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Using the web interface===&lt;br /&gt;
The dedicated server comes with a few Lua [[resources]] that provide a nice little web interface to your server. This can be used to easily maintain your server, as it allows you to add users, start/stop resources, and more.&lt;br /&gt;
&lt;br /&gt;
The web interface resources are enabled by default and are served through the built-in HTTP web server. To make sure the built-in HTTP web server runs on a port you like (22005 by default), follow these steps:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Make sure your server is stopped&lt;br /&gt;
&amp;lt;li&amp;gt;Open the file 'mods/deathmatch/[[Server_mtaserver.conf|'''mtaserver.conf''']]' with any text editor&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Verify that the HTTP server is enabled:&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;httpserver&amp;gt;1&amp;lt;/httpserver&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Change the HTTP server port to your liking:&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;httpport&amp;gt;22005&amp;lt;/httpport&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save and close the configuration file&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Start your server&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;If you happened to have changed the start-up resources in your configuration file, make sure the following resources are started:&lt;br /&gt;
&lt;br /&gt;
# resourcebrowser&lt;br /&gt;
# resourcemanager&lt;br /&gt;
# webadmin&lt;br /&gt;
# webmap&lt;br /&gt;
&lt;br /&gt;
These are automatically started in the default configuration file, in case you just installed your server.&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open a web browser (Internet Explorer 6 or 7 are NOT supported; use [http://www.mozilla.com/firefox Mozilla Firefox], [http://www.google.com/chrome Google Chrome], [http://www.apple.com/safari/download Apple Safari], [http://www.opera.com Opera] or others) and navigate to the HTTP server URL: '''http://server:port/'''. For example, If you are running a local server on HTTP port 22005, use '''http://127.0.0.1:22005/'''.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Enter the username and password of the administrator you added in the previous section.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
You should now be able to maintain your server from the web interface.&lt;br /&gt;
&lt;br /&gt;
=== Configuring an external web server ===&lt;br /&gt;
The built-in web server is also used to serve files that are required by resources running on your server to any player that is connected to your server. For example, if you are running a game script with a scripted graphical user interface, or custom models, these need to be transferred to every connected player in order to function properly. This is done by either the built-in web server, or an external web server (that is usually a bit faster) but needs to be set up separately.&lt;br /&gt;
&lt;br /&gt;
For performance or consistency reasons during the game, you could choose to make use of such an external web server if you have one set up. The external web server needs to be accessible for the public, so any client will be able to download the necessary client-side files in order to join and play on your server.&lt;br /&gt;
&lt;br /&gt;
To enable downloading off an external web server, you should configure the [[Server_mtaserver.conf#httpdownloadurl|httpdownloadurl]] tag in your server configuration:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;	&lt;br /&gt;
&amp;lt;httpdownloadurl&amp;gt;http://www.myserver.tld/directory/here&amp;lt;/httpdownloadurl&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Since all the default resources provided with the dedicated server are zipped, and are normally automatically extracted by the built-in web server, you now have to provide a way for the clients to download the compressed files to their computers. To configure MTA to maintain a copy of only your unzipped client resources, set [[Server_mtaserver.conf#httpautoclientfiles|httpautoclientfiles]] in your server configuration: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 10px&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;xml&amp;quot;&amp;gt;&amp;lt;httpautoclientfiles&amp;gt;1&amp;lt;/httpautoclientfiles&amp;gt;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now when you launch the server, the directory '''&amp;lt;SERVER&amp;gt;/mods/deathmatch/resource-cache/http-client-files''' will contain the correct client files for hosting on an external web server. If the web server is on the same machine, you can simply link the appropriate web server directory to '''http-client-files'''. If the web server is on a separate machine, ensure it has access to '''http-client-files''' via a network path, or maintain a remote copy using synchronization software.&lt;br /&gt;
&lt;br /&gt;
'''Note 1''': Please try to avoid any special characters (e.g. ~, !) in your download URLs.&amp;lt;br /&amp;gt;&lt;br /&gt;
'''Note 2''': Please do not use a trailing slash in your download URL (e.g. ''hxxp://www.myserver.tld/directory'' rather than ''hxxp://www.myserver.tld/directory/'')&lt;br /&gt;
&lt;br /&gt;
==Starting your server==&lt;br /&gt;
Begin by making sure that you have finished all configuration of your server, starting your server is the last stage so everything must be ready!&lt;br /&gt;
&lt;br /&gt;
To start your server double click on MTA Server.exe, make sure you allow it through any firewalls and forward ports where necessary.&lt;br /&gt;
&lt;br /&gt;
==Installing/Updating resources on your server==&lt;br /&gt;
Resources can come in two formats, either a ZIP format or just a normal folder with the script files inside it. The MTA:SA server supports both these methods.&lt;br /&gt;
&lt;br /&gt;
# Move or copy the new resource to your &amp;lt;SERVER&amp;gt;\mods\deathmatch\resources folder.&lt;br /&gt;
# In the server window type in the command [[Server_Commands#refresh|refresh]], this will re-scan the resources folder and update the live resources where necessary.&lt;br /&gt;
&lt;br /&gt;
==Uninstalling resources==&lt;br /&gt;
Resources can easily be removed from your server if you no longer want them.&lt;br /&gt;
&lt;br /&gt;
# Delete the ZIP file or the folder of the resource you wish to uninstall&lt;br /&gt;
# In the server window type in the command &amp;quot;refresh&amp;quot; (without the quotes), this will re-scan the resources folder and update the live resources where necessary.&lt;br /&gt;
&lt;br /&gt;
==Administrating your server==&lt;br /&gt;
You can start resources by typing the command &amp;quot;start resourcename&amp;quot; in the server console, or stop ones with &amp;quot;stop resourcename&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
It's also possible to execute these and other admin commands from the in-game console (which you can bring up with the ` key or F8); for this to work, you first need to log in with the command &amp;quot;[[Server_Commands#login|login username password]]&amp;quot;. Additionally, you can press the p key to bring up the admin panel: this is a graphical interface which allows you to easily kick or ban misbehaving players, among others.&lt;br /&gt;
&lt;br /&gt;
For further commands, type [[Server_Commands#help|help]] in a console.&lt;br /&gt;
&lt;br /&gt;
==Starting a map/gamemode==&lt;br /&gt;
See the commands section of the documentation for [[Resource:Map manager|mapmanager]] for more information.&lt;br /&gt;
&lt;br /&gt;
==Useful Notes==&lt;br /&gt;
&lt;br /&gt;
# You may also update the resources while in-game as long as you have the correct access levels by typing &amp;quot;refresh&amp;quot; in the clients console or &amp;quot;/refresh&amp;quot; in the chat window. This may cause a second of lag if you have many resources.&lt;br /&gt;
# In the above instructions, &amp;lt;SERVER&amp;gt; is the path to your server's main directory. In most cases this is C:\Program Files\MTA San Andreas\server&lt;br /&gt;
# You can choose a different config file for the server to use by passing it in the command line after a --config argument, e.g. mtaserver.exe --config anotherconfig.cfg.&lt;br /&gt;
# Do not be alarmed by the warning regarding the parsing of the settings.xml file. This happens because your server installation is still clean and unused.&lt;br /&gt;
&lt;br /&gt;
====Need further help?====&lt;br /&gt;
Why not pop over to our [http://forum.mtasa.com/ Forums] or join us on [irc://irc.multitheftauto.com/mta IRC] (irc.multitheftauto.com #mta - [http://www.mirc.com mIRC])&lt;br /&gt;
&lt;br /&gt;
[[es:Manual del Servidor]]&lt;br /&gt;
[[de:Server Anleitung]]&lt;br /&gt;
[[it:Manuale del Server]]&lt;br /&gt;
[[nl:Server Manual]]&lt;br /&gt;
[[ru:Server Manual]]&lt;br /&gt;
[[pl:Server Manual]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Support]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=User_talk:John&amp;diff=33847</id>
		<title>User talk:John</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=User_talk:John&amp;diff=33847"/>
		<updated>2012-10-28T16:06:39Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: /* Tutorial for ubuntu server 12.04.1 LTS */ new section&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Stealth is a team elimination based gamemode that contains elements from counterstrike, splinter-cell, urban terror, and many original ideas thrown in. Players are encouraged to be stealthy in order to not reveal their location, and work with teammates using strategy and teamwork to win.&lt;br /&gt;
&lt;br /&gt;
=Gameplay=&lt;br /&gt;
&lt;br /&gt;
When a player joins a server, they are prompted to choose a team (either Mercenaries, Spies, or Spectators). You can return the team selection GUI by pressing F3.&lt;br /&gt;
When the round begins, players are given a menu to select their weapons and gear. If a player takes too long to select their gear, they will be moved to the spectators team. Once the player hits spawn on the menu, they spawn as either a spy or a mercenary along with their teammates.&lt;br /&gt;
The round is over when a team is eliminated or the timer runs out.&lt;br /&gt;
The team with the most living players at the end of the round wins.&lt;br /&gt;
&lt;br /&gt;
==Noise==&lt;br /&gt;
The noise indication bar appears at the bottom right of the screen (labeled as &amp;quot;dB&amp;quot; for decibels). Whenever a player does something that creates noise, the noise bar will begin to increase. If a player is being noisy, their nametag will become visible to enemies, possibly giving away their location. If a player is being very noisy, a blip will be placed on the radar, giving away their position. In order to move about undetected players should operate as stealthily and methodically as possible.&lt;br /&gt;
&lt;br /&gt;
==Headshots and Limping==&lt;br /&gt;
By default, if a player is shot in the head, they will be killed instantly. If they are shot in the leg, they will become crippled, slowing down movement. This can be changed via the [[#Resource_Settings|resource settings]].&lt;br /&gt;
&lt;br /&gt;
==Gadgets==&lt;br /&gt;
Players are given several options to choose as their gadget. the default button to activate it is &amp;quot;R&amp;quot;. Most gadgets have limited uses. The icon to the left to the noise bar shows which is the current gadget and how many uses it has left (if there is a limit). Available gadgets include:&lt;br /&gt;
*'''CLOAK''' Makes the player nearly invisible for a short period of time, allowing them to bypass proximity mines and sneak by players.&lt;br /&gt;
*'''RADAR BURST''' Reveals all the living players exact locations at the time of the gadgets activation.&lt;br /&gt;
*'''PROX MINE''' A player can crouch to place a mine that explodes when a member of the opposite team gets too close.&lt;br /&gt;
*'''GOGGLES''' A player can use the gadget button to toggle between infrared and night vision while holding the goggles in your hand. The goggles counteract any cloaking from other players and reveal locations of proximity mines and cameras while in night vision mode, and player positions while in infrared mode.&lt;br /&gt;
*'''CAMERA''' Pressing the gadget button while facing a wall places a camera. Pressing it again while standing away from it will activate the camera view. Use the arrow keys to moves the cameras angle around. Press fire while in Camera view to drop a smoke grenade from the camera. You can also pick up your own camera by approaching it and pressing the gadget button again so you can place the camera elsewhere.&lt;br /&gt;
*'''ARMOR''' Gives extra protection, as well as prevents headshots or legshot limping for as long as there is armor left.&lt;br /&gt;
*'''SHIELD''' A bulletproof riot shield.&lt;br /&gt;
&lt;br /&gt;
=Resource Settings=&lt;br /&gt;
Stealth provides a plethora of options that can be modified via the [[Resource:admin|admin panel]]:&lt;br /&gt;
*General Settings:&lt;br /&gt;
**Friendly fire: whether or not to enable friendly fire (0 for off, 1 for on, 0 by default)&lt;br /&gt;
**Round delay: the delay between rounds, in seconds (10-60 accepted, 15 by default)&lt;br /&gt;
**Round length: round length, in minutes (1-1440 accepted, 5 by default)&lt;br /&gt;
**Map round limit: maximum number of rounds allowed per map (in a row) (-1-9999 accepted, -1 for infinite rounds, 3 by default)&lt;br /&gt;
**Weapon selection timeout: amount of time players have to choose their weapons before being moved to the spectator team, in seconds (1-439 accepted, 30 by default)&lt;br /&gt;
**Minimum player count: the minimum number of players needed for a round to start (2-4096 accepted, 2 by default)&lt;br /&gt;
**Enable damage effects: &amp;lt;b&amp;gt;TODO&amp;lt;/b&amp;gt;&lt;br /&gt;
*Ped Stat Settings:&lt;br /&gt;
**Use stealth ped stats: whether or not to use stealth's ped stats (0 to ignore ped stats, 1 to apply, 1 by default)&lt;br /&gt;
**The rest of the ped stat settings are the skill levels players will spawn with. (0-999 accepted)&lt;br /&gt;
*Weapon Ammo Settings:&lt;br /&gt;
**All weapons have their own weapon ammo setting - this is the amount of ammo players will spawn with for the given weapon. (0-10000 accepted)&lt;br /&gt;
&lt;br /&gt;
== Tutorial for ubuntu server 12.04.1 LTS ==&lt;br /&gt;
&lt;br /&gt;
Hi John, why did you decide to link to a tutorial hosted somewhere else, not on that wiki? That tutorial should be an article here. Besides, I don't agree with few things in it, especially the paths are wrong, and it describes how to run mta server as root - a thing that should never be done. Please replace that link with in-wiki page. --[[User:Wielebny|Wielebny]] 16:06, 28 October 2012 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=GetVehicleUpgradeSlotName&amp;diff=33537</id>
		<title>GetVehicleUpgradeSlotName</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=GetVehicleUpgradeSlotName&amp;diff=33537"/>
		<updated>2012-09-21T08:49:22Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: fixed not working example&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__ &lt;br /&gt;
{{Server client function}}&lt;br /&gt;
This function returns the name of an upgrade slot name (e.g. roof, spoiler).&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
There are two ways of using this function, the parameter can either be the slot ID (0 to 16) or an upgrade ID (1000 to 1193)&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
string getVehicleUpgradeSlotName ( int slot/upgrade )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''slot/upgrade:''' the slot ID or corresponding upgrade ID of which you want the name.&lt;br /&gt;
{{Vehicle Upgrades}}&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns a ''string'' with the slot name if a valid slot or upgrade ID was given, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
This example prints the name and upgrades on each slot of an entered vehicle to the chat.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function scriptOnPlayerEnterVehicle ( theVehicle, seat, jacked )&lt;br /&gt;
    local upgrades = getVehicleUpgrades ( theVehicle )&lt;br /&gt;
    for _, upgrade in ipairs ( upgrades ) do&lt;br /&gt;
        outputChatBox ( getVehicleUpgradeSlotName ( upgrade ) .. &amp;quot;: &amp;quot; .. upgrade )&lt;br /&gt;
    end&lt;br /&gt;
end&lt;br /&gt;
addEventHandler ( &amp;quot;onPlayerVehicleEnter&amp;quot;, getRootElement(), scriptOnPlayerEnterVehicle )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Vehicle_functions}}&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=RestoreWorldModel&amp;diff=33367</id>
		<title>RestoreWorldModel</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=RestoreWorldModel&amp;diff=33367"/>
		<updated>2012-09-13T12:38:21Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: I believe that's a better example&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Server client function|New items}}&lt;br /&gt;
&lt;br /&gt;
This function allows restoring of world object,which was removed with [[RemoveWorldModel]].&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool restoreWorldModel ( int modelID, float radius, float x, float y, float z [, int iInterior = -1 ] )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Required Arguments=== &lt;br /&gt;
*'''modelID:''' A whole integer specifying the GTASA object model ID.&lt;br /&gt;
*'''radius:''' A floating point number representing the radius that will be eliminated.&lt;br /&gt;
*'''x:''' A floating point number representing the X coordinate on the map.&lt;br /&gt;
*'''y:''' A floating point number representing the Y coordinate on the map.&lt;br /&gt;
*'''z:''' A floating point number representing the Z coordinate on the map.&lt;br /&gt;
{{New items|3.0132|1.3.2|&lt;br /&gt;
*'''iInterior:''' &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the world object was restored, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
{{Requirements|1.2.0-9.03618|1.2.0-9.03618|}}&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
Remove every lamp post (object 1226) besides Grove Street.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
removeWorldModel(1226, 4000, 0, 0, 0, -1)&lt;br /&gt;
restoreWorldModel(1226, 50, 2489, -1665, 13, -1)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Changelog==&lt;br /&gt;
{{ChangelogHeader}}&lt;br /&gt;
{{ChangelogItem|1.3.1-9.04636|Added iInterior argument}}&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Client_world_functions}}&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Strona_g%C5%82%C3%B3wna&amp;diff=33363</id>
		<title>Strona główna</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Strona_g%C5%82%C3%B3wna&amp;diff=33363"/>
		<updated>2012-09-13T06:25:03Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Undo revision 33107 by Sebastian (removal talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
Witaj w polskiej wersji Multi Theft Auto wiki. Znajdziesz tutaj bogactwo informacji na temat użytkowania Multi Theft Auto.&lt;br /&gt;
&lt;br /&gt;
Jest wiele [[How you can help|rzeczy które możesz zrobić]], by pomoc nam w rozwijaniu MTA - stworzyć mapę, gamemod, pomóc w dokumentowaniu funkcji, napisać przykładowy kod, napisać samouczek lub po prostu grać w MTA i raportować błędy, które znajdziesz.&lt;br /&gt;
&lt;br /&gt;
Jeśli masz jakieś pytania bądź problemy związane z pisaniem skryptów, zapytaj nas na [[PL/IRC_Channel|kanale IRC]].&lt;br /&gt;
&amp;lt;div style=&amp;quot;clear:both;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
{| width=&amp;quot;100%&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;0&amp;quot;&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| width=&amp;quot;50%&amp;quot; style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px dotted #AAAAAA;padding:4px 8px 8px 8px;margin:10px; background:#fff0ac;&amp;quot;&amp;gt;&lt;br /&gt;
====Graj====&lt;br /&gt;
* Aby zacząć grać w Multi Theft Auto San Andreas, kliknij na ten [http://multitheftauto.googlecode.com/files/mtasa-1.3.exe link]&lt;br /&gt;
* [[PL/Client_Manual|Instrukcja ogsługi clienta]] [[Image:Plflag.png|Artykuł w języku polskim]]/[[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
* [[PL/Server_Manual|Instrukcja obsługi serwera]] [[Image:Plflag.png|Artykuł w języku polskim]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px dotted #AAAAAA;padding:4px 8px 8px 8px;margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
====Dla początkujących====&lt;br /&gt;
* [[Known_Issues_-_FAQ|Znane problemy - FAQ]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
* [[PL/Migracja_z_MTA:Race_do_MTA:SA_1.0.x|Migracja z MTA:Race do MTA:SA 1.0.x]] [[Image:Plflag.png|Artykuł w języku polskim]]&lt;br /&gt;
* [[Map_manager|Menadżer map]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px dotted #AAAAAA;padding:4px 8px 8px 8px;margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Pisanie skryptów====&lt;br /&gt;
&lt;br /&gt;
* [[Wstęp do pisania skryptów|Wstęp do pisania skryptów]] [[Image:Plflag.png|Artykuł w języku polskim]]/[[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
* [[Introduction to Scripting the GUI|Wstęp do pisania skryptów GUI]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
* [http://robhol.net/guide/basics &amp;quot;The basics of scripting&amp;quot;] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
* [[Debugging|Samouczek debugowania]] [[Image:usen.gif|Artykuł w języku angielskim]] - Jak znaleźć błędy w swoich skryptach&lt;br /&gt;
* [[Resources|Wstęp do zasobów (resources)]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
** [[Resource Web Access|Dostęp WWW do zasobów]] [[Image:usen.gif|Artykuł w języku angielskim]] - Jak pisać strony WWW z wykorzystaniem zasobów&lt;br /&gt;
** [[:Category:Resource|Katalog zasobów]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
** [[PL/Meta.xml|Meta.xml]] [[Image:Plflag.png|Artykuł w języku polskim]]&lt;br /&gt;
* [[Writing_Gamemodes|Pisanie gamemodów]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
* [[Useful_Functions|Przydatne funkcje]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px dotted #AAAAAA;padding:4px 8px 8px 8px;margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Bazy danych====&lt;br /&gt;
Ta sekcja opisuje wszystkie możliwości Lua umożliwiane przez MTA bądź zasoby.&lt;br /&gt;
* [[PL/Category:Resource|Katalog zasobów]] [[Image:Plflag.png‎|Artykuł w języku polskim]] - Musisz je poznać, aby tworzyć właściwe skrypty&lt;br /&gt;
* [[PL/Client side scripts|Skrypty po stronie klienta]] [[Image:Plflag.png‎|Artykuł w języku polskim]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px dotted #AAAAAA;padding:4px 8px 8px 8px;margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====General Lua Help====&lt;br /&gt;
Strony zaprojektowane, by pomóc Ci zrozumieć Lua&lt;br /&gt;
*[http://www.lua.org/pil/index.html &amp;quot;Programming in Lua&amp;quot; Manual]&lt;br /&gt;
*[http://lua-users.org/wiki/TutorialDirectory Lua Wiki]&lt;br /&gt;
*[http://nixstaller.berlios.de/manual/0.2/nixstaller_9.html A general guide to Lua from Nixstaller]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| width=&amp;quot;50%&amp;quot; style=&amp;quot;vertical-align:top;&amp;quot; |&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px dotted #AAAAAA;padding:4px 8px 8px 8px;margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Map Editor====&lt;br /&gt;
*[[PL/Resource:Editor|Instrukcja obsługi]] [[Image:Plflag.png‎|Artykuł w języku polskim]]&lt;br /&gt;
*[[Resource:Editor/EDF|Editor Definition Format]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
*[[Resource:Editor/Plugins|Pluginy]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
*[[Resource:Editor#FAQ|Najczęściej Zadawane Pytania]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px dotted #AAAAAA;padding:4px 8px 8px 8px;margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Rozwijanie Multi Theft Auto====&lt;br /&gt;
* [[Roadmap]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
* [[Git Coding Guidelines]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px dotted #AAAAAA;padding:4px 8px 8px 8px;margin:10px; background:#CCCCFF;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Odwołania====&lt;br /&gt;
* [[PL/Funkcje po stronie klienta|Funkcje po stronie klienta]] [[Image:Plflag.png‎|Artykuł w języku polskim]]&lt;br /&gt;
* [[Client Scripting Events|Zdarzenia po stronie klienta]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
* [[Server Scripting Functions|Funkcje po stronie serwera]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
* [[Server Scripting Events|Zdarzenia po stronie serwera]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
&amp;lt;!-- Incomplete * [[Module functions|Server-side external module scripting functions list]] --&amp;gt;&lt;br /&gt;
* [[MTA Classes|Klasy MTA]] [[Image:usen.gif|Artykuł w języku angielskim]] - Szczegółowe opisy wszystkich niestandardowych typów MTA&lt;br /&gt;
** [[Element|Elementy MTA]] [[Image:usen.gif|Artykuł w języku angielskim]] / [[Element tree|Drzewo elementów]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border: 1px dotted #AAAAAA;padding:4px 8px 8px 8px;margin:10px;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====[[Id|Listy ID]]====&lt;br /&gt;
*[[Animations|Animacje]]&lt;br /&gt;
*[[Character Skins|Skiny Postaci]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
*[[CJ_Clothes|Ubrania]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
*[[Garage|Garaże]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
*[[Interior IDs|Interiory]]&lt;br /&gt;
*[[PL/Pociski|Pociski]][[Image:Plflag.png|Artykuł w języku polskim]]&lt;br /&gt;
*[[Radar Blips|Punkty na radarze]]&lt;br /&gt;
*[[Sounds|Dźwięki]] [[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
*[[PL/Pojazdy|Pojazdy]][[Image:Plflag.png|Artykuł w języku polskim]]&lt;br /&gt;
*[[PL/Kolory Pojazdów|Kolory pojazdów]][[Image:Plflag.png|Artykuł w języku polskim]]&lt;br /&gt;
*[[Vehicle Upgrades|Modyfikacje pojazdów]]&lt;br /&gt;
*[[PL/Weapons|Bronie]] [[Image:Plflag.png|Artykuł w języku polskim]]/[[Image:usen.gif|Artykuł w języku angielskim]]&lt;br /&gt;
*[[PL/Pogoda|Pogoda]][[Image:Plflag.png|Artykuł w języku polskim]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; |&lt;br /&gt;
|}&lt;br /&gt;
{{Languages list|pl}}&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Talk:PL/Serwery/&amp;diff=33361</id>
		<title>Talk:PL/Serwery/</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Talk:PL/Serwery/&amp;diff=33361"/>
		<updated>2012-09-13T06:22:12Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Nobody's against so I'm erasing this page and removing links to it.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Czy ta lista jest nam potrzebna? Przecież to samo jest w server browser, na dodatek to trzeba będzie ręcznie aktualizować. Proponuje usunać ten artykuł. --[[User:Wielebny|Wielebny]] 12:54, 5 September 2012 (UTC)&lt;br /&gt;
&lt;br /&gt;
This list is incomplete and should be considered as server spam, I propose to delete this page. --[[User:Wielebny|Wielebny]] 06:03, 11 September 2012 (UTC)&lt;br /&gt;
&lt;br /&gt;
Nobody's against so I'm erasing this page and removing links to it. --[[User:Wielebny|Wielebny]] 06:22, 13 September 2012 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=OnClientSoundBeat&amp;diff=33360</id>
		<title>OnClientSoundBeat</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=OnClientSoundBeat&amp;diff=33360"/>
		<updated>2012-09-13T06:19:44Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: fixed 'event will does not work'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Client event}}&lt;br /&gt;
__NOTOC__ &lt;br /&gt;
{{New feature|4.0131|1.3.1|&lt;br /&gt;
This event is triggered when a '''sound''' beats.&lt;br /&gt;
}}&lt;br /&gt;
{{Note|This event does not work correctly pre 1.3.1-9-04627}}&lt;br /&gt;
==Parameters== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
int theTime&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*'''theTime''': the time of the beat&lt;br /&gt;
&lt;br /&gt;
==Source==&lt;br /&gt;
The [[event system#Event source|source]] of this event is the [[Element/Sound|sound's element]].&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
-- Not done yet&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Requirements==&lt;br /&gt;
{{Requirements|n/a|1.3.0-9.04162}}&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
===Client sound events===&lt;br /&gt;
{{Sound_events}}&lt;br /&gt;
===Client event functions===&lt;br /&gt;
{{Client_event_functions}}&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=User_talk:Sebastian&amp;diff=33331</id>
		<title>User talk:Sebastian</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=User_talk:Sebastian&amp;diff=33331"/>
		<updated>2012-09-11T06:04:56Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: pasted a reminder to visit talk page of one of user's last edit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Zapoznaj się proszę z dyskusją na stronie http://wiki.multitheftauto.com/wiki/Talk:PL/Serwery/ - dotyczy ona Twoich ostatnich zmian na polskiej częsci tej wiki --[[User:Wielebny|Wielebny]] 06:04, 11 September 2012 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Talk:PL/Serwery/&amp;diff=33330</id>
		<title>Talk:PL/Serwery/</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Talk:PL/Serwery/&amp;diff=33330"/>
		<updated>2012-09-11T06:03:39Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Added english explanation for deletion of this page.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Czy ta lista jest nam potrzebna? Przecież to samo jest w server browser, na dodatek to trzeba będzie ręcznie aktualizować. Proponuje usunać ten artykuł. --[[User:Wielebny|Wielebny]] 12:54, 5 September 2012 (UTC)&lt;br /&gt;
&lt;br /&gt;
This list is incomplete and should be considered as server spam, I propose to delete this page. --[[User:Wielebny|Wielebny]] 06:03, 11 September 2012 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Talk:PL/Serwery/&amp;diff=33142</id>
		<title>Talk:PL/Serwery/</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Talk:PL/Serwery/&amp;diff=33142"/>
		<updated>2012-09-05T12:54:50Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Created page with &amp;quot;Czy ta lista jest nam potrzebna? Przecież to samo jest w server browser, na dodatek to trzeba będzie ręcznie aktualizować. Proponuje usunać ten artykuł. --~~~~&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Czy ta lista jest nam potrzebna? Przecież to samo jest w server browser, na dodatek to trzeba będzie ręcznie aktualizować. Proponuje usunać ten artykuł. --[[User:Wielebny|Wielebny]] 12:54, 5 September 2012 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Template:Garages&amp;diff=32925</id>
		<title>Template:Garages</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Template:Garages&amp;diff=32925"/>
		<updated>2012-08-29T17:05:53Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Added locations of some garages&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width: auto; text-align: center; table-layout: fixed;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!ID&lt;br /&gt;
!Name/Description&lt;br /&gt;
!Approximate location (x,y,z)&lt;br /&gt;
|-&lt;br /&gt;
|'''0'''&lt;br /&gt;
|Commerce Region, Loading Bay Garage (Life's a Beach)&lt;br /&gt;
|-&lt;br /&gt;
|'''1'''&lt;br /&gt;
|LSPD Police Impound Garage&lt;br /&gt;
|-&lt;br /&gt;
|'''2'''&lt;br /&gt;
|Mission Garage near El Corona (Los Desperados)&lt;br /&gt;
|1873,-2101,14&lt;br /&gt;
|-&lt;br /&gt;
|'''3'''&lt;br /&gt;
|Eight Ball Autos near El Corona&lt;br /&gt;
|1836,-1860,14&lt;br /&gt;
|-&lt;br /&gt;
|'''4'''&lt;br /&gt;
|Mission Garage near El Corona (Cesar Vialpando)&lt;br /&gt;
|1793,-2141,14&lt;br /&gt;
|-&lt;br /&gt;
|'''5'''&lt;br /&gt;
|Player Garage: El Corona&lt;br /&gt;
|-&lt;br /&gt;
|'''6'''&lt;br /&gt;
|LS Burglary Garage near Playe del Seville&lt;br /&gt;
|2743,-2000,14&lt;br /&gt;
|-&lt;br /&gt;
|'''7'''&lt;br /&gt;
|LowRider Tuning Garage in Willowfield&lt;br /&gt;
|2645,-2033,14&lt;br /&gt;
|-&lt;br /&gt;
|'''8'''&lt;br /&gt;
|Pay 'n' Spray in Idlewood&lt;br /&gt;
|-&lt;br /&gt;
|'''9'''&lt;br /&gt;
|Player Garage: Johnson House&lt;br /&gt;
|2502,-1685,14&lt;br /&gt;
|-&lt;br /&gt;
|'''10'''&lt;br /&gt;
|Transfender in Temple&lt;br /&gt;
|1047,-1032,32&lt;br /&gt;
|-&lt;br /&gt;
|'''11'''&lt;br /&gt;
|Pay 'n' Spray in Temple&lt;br /&gt;
|1028,-1034,32&lt;br /&gt;
|-&lt;br /&gt;
|'''12'''&lt;br /&gt;
|Pay 'n' Spray in Santa Maria Beach&lt;br /&gt;
|484,-1726,11&lt;br /&gt;
|-&lt;br /&gt;
|'''13'''&lt;br /&gt;
|Player Garage: Santa Maria Beach&lt;br /&gt;
|318,-1772,5&lt;br /&gt;
|-&lt;br /&gt;
|'''14'''&lt;br /&gt;
|Player Garage: Mulholland&lt;br /&gt;
|1351,-619,109&lt;br /&gt;
|-&lt;br /&gt;
|'''15'''&lt;br /&gt;
|Wheel Archangels in Ocean Flats&lt;br /&gt;
| -2708,211,4&lt;br /&gt;
|-&lt;br /&gt;
|'''16'''&lt;br /&gt;
|Mission Garage in Ocean Flats (T-Bone Mendez)&lt;br /&gt;
|-&lt;br /&gt;
|'''17'''&lt;br /&gt;
|Player Garage: Hashbury&lt;br /&gt;
|-&lt;br /&gt;
|'''18'''&lt;br /&gt;
|Transfender near Wang Cars in Doherty&lt;br /&gt;
|-1924,221,35&lt;br /&gt;
|-&lt;br /&gt;
|'''19'''&lt;br /&gt;
|Pay 'n' Spray near Wang Cars in Doherty&lt;br /&gt;
| -1913,263,40&lt;br /&gt;
|-&lt;br /&gt;
|'''20'''&lt;br /&gt;
|SF Burglary Garage, Loading Bay near Doherty &lt;br /&gt;
|-&lt;br /&gt;
|'''21'''&lt;br /&gt;
|Player Garage: Doherty&lt;br /&gt;
| -2029,140,29&lt;br /&gt;
|-&lt;br /&gt;
|'''22'''&lt;br /&gt;
|Mission Garage in Doherty Garage&lt;br /&gt;
|-&lt;br /&gt;
|'''23'''&lt;br /&gt;
|Woozie's Mission Garage in Chinatown (Ran Fa Li)&lt;br /&gt;
|-&lt;br /&gt;
|'''24'''&lt;br /&gt;
|Michelle's Pay 'n' Spray in Downtown&lt;br /&gt;
|-&lt;br /&gt;
|'''25'''&lt;br /&gt;
|Player Garage: Calton Heights&lt;br /&gt;
|-&lt;br /&gt;
|'''26'''&lt;br /&gt;
|SFPD Police Impound Garage&lt;br /&gt;
|-&lt;br /&gt;
|'''27'''&lt;br /&gt;
|Pay 'n' Spray in Juniper Hollow&lt;br /&gt;
|-&lt;br /&gt;
|'''28'''&lt;br /&gt;
|Player Garage: Paradiso&lt;br /&gt;
|-&lt;br /&gt;
|'''29'''&lt;br /&gt;
|LVPD Police Impound Garage&lt;br /&gt;
|-&lt;br /&gt;
|'''30'''&lt;br /&gt;
|Airport Plane Garage in Las Venturas&lt;br /&gt;
|1578,1242,11&lt;br /&gt;
|-&lt;br /&gt;
|'''31'''&lt;br /&gt;
|LV Burglary Garage near Camel's Toe&lt;br /&gt;
|-&lt;br /&gt;
|'''32'''&lt;br /&gt;
|Pay 'n' Spray near Royal Casino&lt;br /&gt;
|-&lt;br /&gt;
|'''33'''&lt;br /&gt;
|Transfender in come-a-lot&lt;br /&gt;
|-&lt;br /&gt;
|'''34'''&lt;br /&gt;
|Player Garage: Rockshore West&lt;br /&gt;
|-&lt;br /&gt;
|'''35'''&lt;br /&gt;
|Welding Wedding Bomb-workshop in Emerald Isle&lt;br /&gt;
|-&lt;br /&gt;
|'''36'''&lt;br /&gt;
|Pay 'n' Spray in Redsands East&lt;br /&gt;
|-&lt;br /&gt;
|'''37'''&lt;br /&gt;
|Player Garage: Redsands West&lt;br /&gt;
|-&lt;br /&gt;
|'''38'''&lt;br /&gt;
|Player Garage: Prickle Pine &lt;br /&gt;
|-&lt;br /&gt;
|'''39'''&lt;br /&gt;
|Player Garage: Whitewood Estates&lt;br /&gt;
|-&lt;br /&gt;
|'''40'''&lt;br /&gt;
|Pay 'n' Spray in El Quebrados&lt;br /&gt;
| -1411,2599,56&lt;br /&gt;
|-&lt;br /&gt;
|'''41'''&lt;br /&gt;
|Pay 'n' Spray in Fort Carson&lt;br /&gt;
|-&lt;br /&gt;
|'''42'''&lt;br /&gt;
|Player Garage: Fort Carson&lt;br /&gt;
|-&lt;br /&gt;
|'''43'''&lt;br /&gt;
|Player Garage: Verdant Meadows&lt;br /&gt;
|-&lt;br /&gt;
|'''44'''&lt;br /&gt;
|Mission Garage in El Castillo del Diablo (Interdiction)&lt;br /&gt;
| -385,2230,42&lt;br /&gt;
|-&lt;br /&gt;
|'''45'''&lt;br /&gt;
|Airport Garage in Verdant Meadows&lt;br /&gt;
|-&lt;br /&gt;
|'''46'''&lt;br /&gt;
|Mission Garage in Angel Pine (Puncture Wounds) &lt;br /&gt;
|-&lt;br /&gt;
|'''47'''&lt;br /&gt;
|Pay 'n' Spray in Dillimore &lt;br /&gt;
|-&lt;br /&gt;
|'''48'''&lt;br /&gt;
|Player Garage: Palomino Creek&lt;br /&gt;
|-&lt;br /&gt;
|'''49'''&lt;br /&gt;
|Player Garage: Dillimore&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=User_talk:Arthur_Richard&amp;diff=32514</id>
		<title>User talk:Arthur Richard</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=User_talk:Arthur_Richard&amp;diff=32514"/>
		<updated>2012-08-21T10:49:25Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: added notice about reverting user edit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I'm reverting your change at http://wiki.multitheftauto.com/index.php?title=Building_MTASA_Server_on_GNU_Linux&amp;amp;curid=5232&amp;amp;diff=32438&amp;amp;oldid=32314 - I don't think that there should be links to binaries not hosted on official mta repositories, besides your package isn't compliant Linux hierarchy standards, as it places data files in /usr/bin. --[[User:Wielebny|Wielebny]] 10:47, 21 August 2012 (UTC)&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=Building_MTASA_Server_on_GNU_Linux&amp;diff=32512</id>
		<title>Building MTASA Server on GNU Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=Building_MTASA_Server_on_GNU_Linux&amp;diff=32512"/>
		<updated>2012-08-21T10:48:32Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Undo revision 32438 by Arthur Richard (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Preparing your system ==&lt;br /&gt;
&lt;br /&gt;
In order to build the Multi Theft Auto dedicated server, you will have to set up your system with the correct libraries and tools. How these are installed depends on your distribution.&lt;br /&gt;
&lt;br /&gt;
Our network module (net.dll or net.so) is distributed as a precompiled binary library. The file for GNU/Linux can be found inside the lastest Linux nightly from [http://nightly.mtasa.com/ here]. Use the net.so from 1.4 if you are compiling from the trunk, or the net.so from 1.3.x if you are compiling the 1.3.x branch. Be sure the read the top of ''MTA10_Server/version.h'' as it contains directions on how to compile the different build types.&lt;br /&gt;
&lt;br /&gt;
{{Note|This article is only for developers who changed the server code, if you are looking for the precompiled server (for normal server owners). Go to: [http://linux.mtasa.com/ linux.mtasa.com]}}&lt;br /&gt;
&lt;br /&gt;
'''Debian Linux'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Includes derivative distributions such as Ubuntu.&lt;br /&gt;
&lt;br /&gt;
You will need the necessary build tools, headers and libraries, which are distributed through the following Debian packages (e.g. Debian Lenny):&lt;br /&gt;
&lt;br /&gt;
* '''build-essential:''' contains the necessary tools, headers and libraries to build applications&lt;br /&gt;
* '''automake:''' contains the automake tools&lt;br /&gt;
* '''libtool:''' contains the libtool software required to build libraries&lt;br /&gt;
* '''libcurl3-dev:''' contains the cURL library (version 3 without SSL support)&lt;br /&gt;
* '''libpcre3-dev:''' contains the PCRE library (version 3)&lt;br /&gt;
* '''libsqlite3-dev:''' contains the SQLite library (version 3)&lt;br /&gt;
* '''libreadline5-dev:''' contains the readline library (version 5)&lt;br /&gt;
* '''subversion:''' contains the SVN client used to check out our code repository&lt;br /&gt;
* '''libncurses5-dev:''' contains software for controlling writing to the console screen&lt;br /&gt;
* '''libncursesw5-dev:''' contains support for wide characters&lt;br /&gt;
* '''libsparsehash-dev:''' contains support for Google's hash-map '''(So you don't have to compile sparehash!)'''&lt;br /&gt;
* '''libmysqlclient-dev:''' contains the MySQL library&lt;br /&gt;
To install these packages through apt, use the apt-get install &amp;lt;package list&amp;gt; command as in the following example (execute as root):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;apt-get install build-essential automake libtool libcurl4-openssl-dev libpcre3-dev libsqlite3-dev libreadline5-dev subversion libncurses5-dev libncursesw5-dev libsparsehash-dev libmysqlclient-dev&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Gentoo Linux'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will need the necessary build tools, headers and libraries. Because Gentoo’s portage system is designed to compile any packages on your own system, the necessary build tools will have already been installed. This only leaves you to install the necessary libraries:&lt;br /&gt;
&lt;br /&gt;
* '''sqlite:''' contains the SQLite library&lt;br /&gt;
* '''subversion:''' contains the SVN client used to check out our code repository&lt;br /&gt;
* '''curl:''' contains the cURL library; to compile with SSL support, apply the net-misc/curl ssl USE flag&lt;br /&gt;
To compile and install these packages through emerge, use the emerge -v &amp;lt;package list&amp;gt; command. The -v option shows additional * * information and can be omitted. (If you want to use any USE flags, prepend emerge with USE=&amp;quot;use flags here&amp;quot;. You can also use the -pv option to verify that you’re using the correct flags.) Refer to the [http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=2&amp;amp;chap=1 Gentoo Handbook] or manual for more information on emerge.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;emerge -v subversion sqlite&lt;br /&gt;
USE=“net-misc/curl ssl” emerge -v curl&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Fedora'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You will need these packages to be able to successfully compile a MTA server on Fedora: &lt;br /&gt;
* '''glibc-devel:'''&lt;br /&gt;
* '''curl-devel:''' contains the cURL library&lt;br /&gt;
* '''pcre-devel:''' contains the PCRE library&lt;br /&gt;
* '''sqlite3-devel:''' contains the SQLite library&lt;br /&gt;
* '''readline-devel:''' contains the readline library&lt;br /&gt;
* '''lua-devel:''' contains the Lua libraries&lt;br /&gt;
* '''subversion:''' contains the SVN client to check out the source code&lt;br /&gt;
To install these packages through yum, use the yum install &amp;lt;package list&amp;gt; command as in the following example (execute as root):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;yum install glibc-devel curl-devel pcre-devel sqlite3-devel readline-devel lua-devel subversion&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A warning for x64'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The MTA:SA server currently cannot be properly compiled in 64-bit mode. Instead, you should compile it in 32-bit mode and run it using 32-bit compatibility mode (use the -m32 flag).&lt;br /&gt;
&lt;br /&gt;
== General instructions for {{Current Version|full}} ==&lt;br /&gt;
&lt;br /&gt;
'''Downloading the source.'''&lt;br /&gt;
&lt;br /&gt;
First you need to download the source.&lt;br /&gt;
&lt;br /&gt;
 svn checkout &amp;lt;nowiki&amp;gt;http&amp;lt;/nowiki&amp;gt;://mtasa-blue.googlecode.com/svn/branches/{{Current Version|full}}/ mtasa-blue&lt;br /&gt;
 cd mtasa-blue&lt;br /&gt;
&lt;br /&gt;
Then compile it thus:&lt;br /&gt;
 autoreconf -fiv&lt;br /&gt;
 export PKG_CONFIG_PATH=/usr/lib32/pkgconfig&lt;br /&gt;
 ./configure LDFLAGS=&amp;quot;-m32&amp;quot; CPPFLAGS=&amp;quot;-m32&amp;quot; CFLAGS=&amp;quot;-m32&amp;quot; CXXFLAGS=&amp;quot;-m32&amp;quot; $@&lt;br /&gt;
 make&lt;br /&gt;
 make -C MTA10_Server install&lt;br /&gt;
 make -C Shared/XML install&lt;br /&gt;
&lt;br /&gt;
Get the net.so like this:&lt;br /&gt;
 wget &amp;lt;nowiki&amp;gt;http&amp;lt;/nowiki&amp;gt;://nightly.mtasa.com/?multitheftauto_linux-{{Current Version|full}}-rc-latest -O multitheftauto_linux-{{Current Version|full}}-latest.tar.gz&lt;br /&gt;
 tar -xzf multitheftauto_linux-{{Current Version|full}}-latest.tar.gz --transform 's:[^/]*:latest_nightly:'&lt;br /&gt;
 mv latest_nightly/net.so MTA10_Server/output/&lt;br /&gt;
 rm -rf latest_nightly multitheftauto_linux-{{Current Version|full}}-latest.tar.gz&lt;br /&gt;
&lt;br /&gt;
Copy config files:&lt;br /&gt;
 cp MTA10_Server/mods/deathmatch/acl.xml MTA10_Server/output/mods/deathmatch/acl.xml&lt;br /&gt;
 cp MTA10_Server/mods/deathmatch/mtaserver.conf MTA10_Server/output/mods/deathmatch/mtaserver.conf&lt;br /&gt;
&lt;br /&gt;
Get resources:&lt;br /&gt;
 svn export &amp;lt;nowiki&amp;gt;http&amp;lt;/nowiki&amp;gt;://mtasa-resources.googlecode.com/svn/trunk/ MTA10_Server/output/mods/deathmatch/resources&lt;br /&gt;
&lt;br /&gt;
And the server should be ready in MTA10_Server/output&lt;br /&gt;
&lt;br /&gt;
=== '''Troubleshooting''' ===&lt;br /&gt;
&lt;br /&gt;
Any errors during the compilation of json-c can be solved by calling autoreconf -fi from the json-c directory.&lt;br /&gt;
&lt;br /&gt;
If you’re getting any unexpected errors while compiling, please check our [http://bugs.mtasa.com/ Bug tracker] or our [irc://irc.multitheftauto.com/ IRC channel]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Server crashes''' ==&lt;br /&gt;
&lt;br /&gt;
If your Linux server crashes, please obtain a backtrace and post a report on our [http://bugs.mtasa.com/ Bug tracker]&lt;br /&gt;
&lt;br /&gt;
====To obtain a backtrace:====&lt;br /&gt;
===Do you have a core dump file in the the MTA server directory?===&lt;br /&gt;
It's usually called 'core', and usually over 100MB, and looks something like this:&lt;br /&gt;
 [[Image:Core.png]]&lt;br /&gt;
====If you have a core dump file in the the MTA server directory:====&lt;br /&gt;
*Install gdb. To install gdb on Debian, use this command:&lt;br /&gt;
 apt-get install gdb&lt;br /&gt;
*And from the MTA install directory do this command&lt;br /&gt;
 gdb mta-server -c core&lt;br /&gt;
*When gdb launches, do this command to get a backtrace:&lt;br /&gt;
 bt full&lt;br /&gt;
*Save the output&lt;br /&gt;
*(To exit gdb, use the quit command)&lt;br /&gt;
&lt;br /&gt;
====If you do not have a core dump file in the the MTA server directory:====&lt;br /&gt;
*Install gdb. To install gdb on Debian, use this command:&lt;br /&gt;
 apt-get install gdb&lt;br /&gt;
*And from the MTA server directory start the mta-server like this:&lt;br /&gt;
 gdb mta-server --eval-command run&lt;br /&gt;
*Now wait for a crash. (Ignore weird screen output in the meantime)&lt;br /&gt;
*When a crash occurs, do this command to get a backtrace:&lt;br /&gt;
 bt full&lt;br /&gt;
*Save the output&lt;br /&gt;
*(To exit gdb, use the quit command)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Server freezes''' ==&lt;br /&gt;
&lt;br /&gt;
If your Linux server freezes, please obtain a backtrace with thread information and post a report on our [http://bugs.mtasa.com/ Bug tracker]&lt;br /&gt;
&lt;br /&gt;
====To obtain a backtrace with thread information:====&lt;br /&gt;
*Install gdb. To install gdb on Debian, use this command:&lt;br /&gt;
 apt-get install gdb&lt;br /&gt;
*And from the MTA server directory start the mta-server like this:&lt;br /&gt;
 gdb mta-server --eval-command run&lt;br /&gt;
*Now wait for a freeze. (Ignore weird screen output in the meantime)&lt;br /&gt;
*When a freeze occurs, press ctrl-c to start gdb&lt;br /&gt;
*Then do this command to get a backtrace:&lt;br /&gt;
 bt full&lt;br /&gt;
*Save the output&lt;br /&gt;
*Then do this command to get a thread information:&lt;br /&gt;
 info threads&lt;br /&gt;
*Save the output&lt;br /&gt;
*(To exit gdb, use the quit command)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== '''Running on a 64 bit Linux''' ==&lt;br /&gt;
* Install 32 bit libs for your distro&lt;br /&gt;
If you get a problem with such as &amp;quot;libreadline.so.5: cannot open shared object file: No such file or directory.&amp;quot;, it can be solved on Debian by doing this:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
wget http://ftp.uk.debian.org/debian/pool/main/r/readline5/libreadline5_5.2-7_i386.deb&lt;br /&gt;
dpkg -X libreadline5_5.2-7_i386.deb temp&lt;br /&gt;
cp -d temp/lib/libreadline.so.5* /usr/lib32/&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[ru:Building MTASA Server on GNU Linux]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=RU/outputChatBox&amp;diff=32510</id>
		<title>RU/outputChatBox</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=RU/outputChatBox&amp;diff=32510"/>
		<updated>2012-08-21T10:39:27Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Default outputChatBox colors are not 255,255,255 but 231,217,176&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{RU/Server client function}}&lt;br /&gt;
{{Note_box|Не рекомендуется выводить в чат информацию, которая самими чатом (разговором) не является. Для целей отображения вспомогательной информации следует использовать возможности GUI}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
Эта функция выводит текстовую строку в окно чата. Можно осуществлять вывод как в чат отдельных игроков, так и всех сразу.&lt;br /&gt;
&lt;br /&gt;
Дополнительно можно использовать строки с цветовыми кодами, передавая параметр ''colorCoded'' равным 'true'. Пример: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
outputChatBox ( &amp;quot;#FF0000Hello #00FF00World&amp;quot;, getRootElement(), 255, 255, 255, true )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Это будет отображено в чате, как: '''&amp;lt;span style='color:red;'&amp;gt;Hello&amp;lt;/span&amp;gt; &amp;lt;span style='color:green'&amp;gt;World&amp;lt;/span&amp;gt; '''&lt;br /&gt;
&lt;br /&gt;
==Синтаксис==&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;bool outputChatBox ( string text [, element visibleTo=getRootElement(), int r=231, int g=217, int b=176, bool colorCoded=false ] )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Обязательные аргументы==&lt;br /&gt;
*'''text:''' Текстовая строка, которая будет отправлена в окно чата.&lt;br /&gt;
&lt;br /&gt;
==Дополнительные аргументы==&lt;br /&gt;
{{RU/OptionalArg}}&lt;br /&gt;
*'''visibleTo:''' Задает, кому будет виден чат. Все игроки-потомки этого элемента увидят сообщение. См. [[visibility]].&lt;br /&gt;
*'''r:''' Целое число - количество красного компонента в цвете текста (0 - 255, по умолчанию 231).&lt;br /&gt;
*'''g:''' Целое число - количество зеленого компонента в цвете текста (0 - 255, по умолчанию 217).&lt;br /&gt;
*'''b:''' Целое число - количество синего компонента в цвете текста (0 - 255, по умолчанию 176).&lt;br /&gt;
*'''colorCoded:''' Логическая переменная, которая определяет, будут ли использоваться строковые теги вида '#RRGGBB'.&lt;br /&gt;
'Примечания': &lt;br /&gt;
Если указан один из цветовых компонентов, то обязательно указывать и остальные. &lt;br /&gt;
'''visibleTo''' может быть объектом типа Team, тогда текст будет показан всем игрокам этой команды. &lt;br /&gt;
Формат #RRGGBB допускает в записи шестнадцатеричных чисел ''только'' заглавные буквы A-F.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;bool outputChatBox ( string text [, int r=231, int g=217, int b=176, bool colorCoded=false ] )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Обязательные аргументы==&lt;br /&gt;
*'''text:''' Текстовая строка, которая будет отправлена в окно чата.&lt;br /&gt;
&lt;br /&gt;
==Дополнительные аргументы==&lt;br /&gt;
{{RU/OptionalArg}}&lt;br /&gt;
*'''r:''' Целое число - количество красного компонента в цвете текста (0 - 255, по умолчанию 231).&lt;br /&gt;
*'''g:''' Целое число - количество зеленого компонента в цвете текста (0 - 255, по умолчанию 217).&lt;br /&gt;
*'''b:''' Целое число - количество синего компонента в цвете текста (0 - 255, по умолчанию 176).&lt;br /&gt;
*'''colorCoded:''' Логическая переменная, которая определяет, будут ли использоваться строковые теги вида '#RRGGBB'.&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Вывод==&lt;br /&gt;
Возвращает ''true'', если сообщение было успешно отправлено. Возвращает ''false'', если были переданы некорректные аргументы.&lt;br /&gt;
&lt;br /&gt;
==Пример==&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
'''Пример 1:''' Вывод сообщения всем пользователям.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
x = 5&lt;br /&gt;
y = 10  &lt;br /&gt;
-- Отображает сообщение&lt;br /&gt;
outputChatBox ( &amp;quot;I have &amp;quot; .. x .. &amp;quot; apples and &amp;quot; .. y .. &amp;quot; oranges.&amp;quot; )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Пример 2:''' В этом пример происходит вывод простого цветного текста &amp;quot;Красный Белый&amp;quot;, где слово &amp;quot;Красный&amp;quot; красного цвета, а &amp;quot;Белый&amp;quot; - белого.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
 outputChatBox ( &amp;quot;Красный #FFFFFFБелый&amp;quot;, getRootElement(), 255, 0, 0, true )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Пример 3:''' Этот пример позволяет игрокам писать в чат текстом того же цвета, что и их ник. &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function colouredChat ( message, theType )&lt;br /&gt;
	if theType == 0 then --если это обычный чат, а не /me или командный&lt;br /&gt;
		cancelEvent() --останавливаем встроенный в МТА вывод сообщения&lt;br /&gt;
		message = string.gsub(message, &amp;quot;#%x%x%x%x%x%x&amp;quot;, &amp;quot;&amp;quot;) --убираем любые шестнадцатеричные метки с помощью функции string.gsub из lua&lt;br /&gt;
		local r,g,b = getPlayerNametagColor ( source ) --выясняем, какого цвета ник игрока&lt;br /&gt;
		local chatterName = getPlayerName ( source ) --выясняем имя&lt;br /&gt;
		--выводим сообщение в чат, при этом ник игрока будет написан его цветом, а остальной текст белым&lt;br /&gt;
		outputChatBox ( chatterName..&amp;quot;:#FFFFFF &amp;quot;..message, getRootElement(), r, g, b, true )&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Пример 4:''' Пишем сообщение в чат игроку под ником ''someguy''.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
-- Ищем игрока с именем 'someguy'&lt;br /&gt;
myPlayer = getPlayerFromNick ( &amp;quot;someguy&amp;quot; )&lt;br /&gt;
-- Если игрок с таким именем найден, то ...&lt;br /&gt;
if ( myPlayer ~= false ) then&lt;br /&gt;
    x = 5&lt;br /&gt;
    y = 10&lt;br /&gt;
    -- отправляем ему в чат сообщение&lt;br /&gt;
    outputChatBox ( &amp;quot;I have &amp;quot; .. x .. &amp;quot; apples and &amp;quot; .. y .. &amp;quot; oranges.&amp;quot;, myPlayer )&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Пример 5:''' Отправляем приветствие игроку, зашедшему на сервер.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function onJoin()&lt;br /&gt;
	outputChatBox (&amp;quot;Добро пожаловать на сервер!&amp;quot;, source)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
addEventHandler(&amp;quot;onPlayerJoin&amp;quot;,getRootElement(),onJoin)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Смотрите также==&lt;br /&gt;
{{Server functions}}&lt;br /&gt;
[[cs:outputChatBox]]&lt;br /&gt;
[[en:outputChatBox]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=CS/outputChatBox&amp;diff=32509</id>
		<title>CS/outputChatBox</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=CS/outputChatBox&amp;diff=32509"/>
		<updated>2012-08-21T10:38:14Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Default outputChatBox colors are not 255,255,255 but 231,217,176&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{CS/Server client function}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
Tato funkce odesle urcity retezec (string) do chatu. Muze byt poslana jednomu hracovi, vsem nebo skupine hracu.&lt;br /&gt;
&lt;br /&gt;
Volitelne tato funkce muze podporovat vice barev v jedne zprave kdyz nastavite argument ''colorCoded'' na ''true'' Toto znamena ze: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
outputChatBox ( &amp;quot;#FF0000Hello #00FF00World&amp;quot;, getRootElement(), 255, 255, 255, true )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Bude zobrazeno jako: '''&amp;lt;span style='color:red;'&amp;gt;Hello&amp;lt;/span&amp;gt; &amp;lt;span style='color:green'&amp;gt;World&amp;lt;/span&amp;gt; '''&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;bool outputChatBox ( string text [, element visibleTo=getRootElement(), int r=231, int g=217, int b=176, bool colorCoded=false ] )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Povinne argumenty==&lt;br /&gt;
*'''text:''' Retezec textu ktery si prejete aby byl odeslan. Ovsem, pokud ma vice jak 128 charakteru, nebude zobrazen v chatu.&lt;br /&gt;
&lt;br /&gt;
==Volitelne argumenty==&lt;br /&gt;
*'''visibleTo:''' Toto urcuje komu se dana zprava zobrazi. Zprava bude osdeslana vsem hracum v urcenem prvku. (Napriklad celemu tymu hracu). Defaultne se posila vsem. (getRootElement())&lt;br /&gt;
*'''r:''' Mnozstvi cervene barvy v textu. Defaultne 231.&lt;br /&gt;
*'''g:''' Mnozstvi zelene barvy v textu. Defaultne 217.&lt;br /&gt;
*'''b:''' Mnozstvi modre barvy v textu. Defaultne 176.&lt;br /&gt;
*'''colorCoded:''' Hodnota typu boolean ktrea urcuje zda-li '#RRGGBB' tagy budou pouzity pro zmenu barvy textu.&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;bool outputChatBox ( string text [, int r=231, int g=217, int b=176, bool colorCoded=false ] )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Povinne argumenty==&lt;br /&gt;
*'''text:''' Retezec textu ktery si prejete aby byl odeslan. Ovsem, pokud ma vice jak 128 charakteru, nebude zobrazen v chatu.&lt;br /&gt;
&lt;br /&gt;
==Volitelne argumenty==&lt;br /&gt;
*'''r:''' Mnozstvi cervene barvy v textu. Defaultne 231.&lt;br /&gt;
*'''g:''' Mnozstvi zelene barvy v textu. Defaultne 217.&lt;br /&gt;
*'''b:''' Mnozstvi modre barvy v textu. Defaultne 176.&lt;br /&gt;
*'''colorCoded:''' Hodnota typu boolean ktrea urcuje zda-li '#RRGGBB' tagy budou pouzity pro zmenu barvy textu.&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Vracena hodnota==&lt;br /&gt;
Vrati ''true'' pokud byla zprava uspesne odeslana. Vrati ''false'' pokud jste pouzili neplatne argumenty.&lt;br /&gt;
&lt;br /&gt;
==Priklad==&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
'''Priklad 1:''' tento priklad zobrazi zpravu vsem hracum a zobrazi hodnoty promennych.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
x = 5&lt;br /&gt;
y = 10  &lt;br /&gt;
outputChatBox ( &amp;quot;Ja mam &amp;quot; .. x .. &amp;quot; jablek a &amp;quot; .. y .. &amp;quot; pomerancu.&amp;quot; ) --Zobrazi zpravu jako &amp;quot;Ja mam 5 jablek a 10 pomerancu.&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Priklad 2:''' Tento priklad zobrazi jednoduchou barevnou zpravu, &amp;quot;Cervena Bila&amp;quot;, kde 'White' je v bile barve, a 'Cervena' je v cervene barve.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
 outputChatBox ( &amp;quot;Cervena #FFFFFFBila&amp;quot;, getRootElement(), 255, 0, 0, true )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Priklad 3:''' Tento priklad odesle zpravu pouze hracovi s nickem ''nekdo''.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
myPlayer = getPlayerFromName ( &amp;quot;nekdo&amp;quot; ) --Najdeme hrace s timto nickem&lt;br /&gt;
&lt;br /&gt;
if ( myPlayer ~= false ) then --Pokud byl hrac nalezen tak..&lt;br /&gt;
    x = 5&lt;br /&gt;
    y = 10&lt;br /&gt;
    -- Zobrazime zpravu&lt;br /&gt;
    outputChatBox ( &amp;quot;Mam &amp;quot; .. x .. &amp;quot; jablek a &amp;quot; .. y .. &amp;quot; pomerancu.&amp;quot;, myPlayer )&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
//'''Poznamka:''' omlouvam se za preklad bez diakritiky. --[[User:Miki785|Miki785]] 16:59, 16 June 2012 (UTC)&lt;br /&gt;
&lt;br /&gt;
==Zhlednete take==&lt;br /&gt;
{{Server functions}}&lt;br /&gt;
[[category:Cesky]]&lt;br /&gt;
[[en:outputChatBox]]&lt;br /&gt;
[[ru:outputChatBox]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=OutputChatBox&amp;diff=32455</id>
		<title>OutputChatBox</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=OutputChatBox&amp;diff=32455"/>
		<updated>2012-08-21T06:38:34Z</updated>

		<summary type="html">&lt;p&gt;Wielebny: Default outputChatBoxColors are not 255,255,255 but 231,217,176&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Server client function}}&lt;br /&gt;
{{Note_box|Avoid outputting text to the chatbox that isn't actually chat, as this can be annoying for players. Output information and status messages to the HUD.}}&lt;br /&gt;
__NOTOC__&lt;br /&gt;
This outputs the specified text string to the chatbox. It can be specified as a message to certain player(s) or all players.&lt;br /&gt;
&lt;br /&gt;
It can optionally allow you to embed color changes into the string by setting the colorCoded boolean to true. This allows: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
outputChatBox ( &amp;quot;#FF0000Hello #00FF00World&amp;quot;, getRootElement(), 255, 255, 255, true )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
This will display as: '''&amp;lt;span style='color:red;'&amp;gt;Hello&amp;lt;/span&amp;gt; &amp;lt;span style='color:green'&amp;gt;World&amp;lt;/span&amp;gt; '''&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;bool outputChatBox ( string text [, element visibleTo=getRootElement(), int r=231, int g=217, int b=176, bool colorCoded=false ] )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Required Arguments==&lt;br /&gt;
*'''text:''' The text string that you wish to send to the chat window. If more than 128 characters it will not be showed in chat.&lt;br /&gt;
&lt;br /&gt;
==Optional Arguments==&lt;br /&gt;
{{OptionalArg}}&lt;br /&gt;
*'''visibleTo:''' This specifies who the chat is visible to. Any players in this element will see the chat message. See [[visibility]].&lt;br /&gt;
*'''r:''' The amount of red in the color of the text. Default value is 231.&lt;br /&gt;
*'''g:''' The amount of green in the color of the text. Default value is 217.&lt;br /&gt;
*'''b:''' The amount of blue in the color of the text. Default value is 176.&lt;br /&gt;
*'''colorCoded:''' A boolean value determining whether or not '#RRGGBB' tags should be used.&lt;br /&gt;
Note: '''visibleTo''' can also be a Team object, in this case, the text will be visible to all the players of that team. Also the #RRGGBB format must contain capital letters a-f is not acceptable but A-F is.&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Client&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;bool outputChatBox ( string text [, int r=231, int g=217, int b=176, bool colorCoded=false ] )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Required Arguments==&lt;br /&gt;
*'''text:''' The text string that you wish to send to the chat window. If more than 128 characters it will not be showed in chat.&lt;br /&gt;
&lt;br /&gt;
==Optional Arguments==&lt;br /&gt;
{{OptionalArg}}&lt;br /&gt;
*'''r:''' The amount of red in the color of the text. Default value is 231.&lt;br /&gt;
*'''g:''' The amount of green in the color of the text. Default value is 217.&lt;br /&gt;
*'''b:''' The amount of blue in the color of the text. Default value is 176.&lt;br /&gt;
*'''colorCoded:''' A boolean value determining whether or not '#RRGGBB' tags should be used.&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Returns==&lt;br /&gt;
Returns ''true'' if the message was displayed successfully. Returns ''false'' if invalid arguments are specified.&lt;br /&gt;
&lt;br /&gt;
==Example==&lt;br /&gt;
&amp;lt;section name=&amp;quot;Server&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
'''Example 1:''' This example displays a chat message to all users.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
x = 5&lt;br /&gt;
y = 10  &lt;br /&gt;
-- Displays the message&lt;br /&gt;
outputChatBox ( &amp;quot;I have &amp;quot; .. x .. &amp;quot; apples and &amp;quot; .. y .. &amp;quot; oranges.&amp;quot; )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Example 2:''' This example outputs a simple colour coded message, &amp;quot;Red White&amp;quot;, where the 'White' is in white colour, and 'Red' is in a red colour.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
 outputChatBox ( &amp;quot;Red #FFFFFFWhite&amp;quot;, getRootElement(), 255, 0, 0, true )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Example 3:''' This example allows for coloured chat, according to a player's nametag.  This makes use of colour coded outputs.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function colouredChat ( message, theType )&lt;br /&gt;
	if theType == 0 then --if its normal chat (not /me or teamchat) then&lt;br /&gt;
		cancelEvent() --prevent MTA from outputting chat&lt;br /&gt;
		message = string.gsub(message, &amp;quot;#%x%x%x%x%x%x&amp;quot;, &amp;quot;&amp;quot;) --remove any hex tags in a player's chat to prevent custom colours by using lua's string.gsub&lt;br /&gt;
		local r,g,b = getPlayerNametagColor ( source ) --get the player's nametag colour&lt;br /&gt;
		local chatterName = getPlayerName ( source ) --get his name&lt;br /&gt;
		--output a message with the name as his nametag colour, and the rest in white.&lt;br /&gt;
		outputChatBox ( chatterName..&amp;quot;:#FFFFFF &amp;quot;..message, getRootElement(), r, g, b, true )&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
addEventHandler(&amp;quot;onPlayerChat&amp;quot;, getRootElement(), colouredChat)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Example 4:''' This example displays a chat message to a single user called ''someguy''.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
-- Find the player element for the player called 'someguy'&lt;br /&gt;
myPlayer = getPlayerFromName ( &amp;quot;someguy&amp;quot; )&lt;br /&gt;
-- If a player was found called 'someguy' then...&lt;br /&gt;
if ( myPlayer ~= false ) then&lt;br /&gt;
    x = 5&lt;br /&gt;
    y = 10&lt;br /&gt;
    -- Display the message&lt;br /&gt;
    outputChatBox ( &amp;quot;I have &amp;quot; .. x .. &amp;quot; apples and &amp;quot; .. y .. &amp;quot; oranges.&amp;quot;, myPlayer )&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Example 5:''' These two functions can speed up typing, and display a message when a player Joins.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local msg_red,msg_green,msg_blue = 255,255,0&lt;br /&gt;
&lt;br /&gt;
function servertalkprivate(message, sendto)&lt;br /&gt;
        --Talk to one client only&lt;br /&gt;
	outputChatBox(tostring(message), sendto, msg_red, msg_green, msg_blue, true)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function servertalk(message)&lt;br /&gt;
        --Talk to everyone&lt;br /&gt;
	servertalkprivate(message, getRootElement())&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function onJoin()&lt;br /&gt;
	servertalkprivate(&amp;quot;Welcome to My Server&amp;quot;, source)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
addEventHandler(&amp;quot;onPlayerJoin&amp;quot;,getRootElement(),onJoin)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Server functions}}&lt;br /&gt;
[[cs:outputChatBox]]&lt;br /&gt;
[[ru:outputChatBox]]&lt;/div&gt;</summary>
		<author><name>Wielebny</name></author>
	</entry>
</feed>