<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.gtaconnected.com/wiki/index.php?action=history&amp;feed=atom&amp;title=Client%2FNatives%2FIV%2FtaskCarDriveToCoord</id>
	<title>Client/Natives/IV/taskCarDriveToCoord - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.gtaconnected.com/wiki/index.php?action=history&amp;feed=atom&amp;title=Client%2FNatives%2FIV%2FtaskCarDriveToCoord"/>
	<link rel="alternate" type="text/html" href="https://wiki.gtaconnected.com/wiki/index.php?title=Client/Natives/IV/taskCarDriveToCoord&amp;action=history"/>
	<updated>2026-06-05T00:36:50Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.15</generator>
	<entry>
		<id>https://wiki.gtaconnected.com/wiki/index.php?title=Client/Natives/IV/taskCarDriveToCoord&amp;diff=9827&amp;oldid=prev</id>
		<title>MexTest1: page created; including Javascript example</title>
		<link rel="alternate" type="text/html" href="https://wiki.gtaconnected.com/wiki/index.php?title=Client/Natives/IV/taskCarDriveToCoord&amp;diff=9827&amp;oldid=prev"/>
		<updated>2021-07-04T13:44:53Z</updated>

		<summary type="html">&lt;p&gt;page created; including Javascript example&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{DISPLAYTITLE:natives.taskCarDriveToCoord}}&lt;br /&gt;
{{ScriptItem&lt;br /&gt;
|endpoint = client&lt;br /&gt;
|games = iv&lt;br /&gt;
|type = function&lt;br /&gt;
|name = natives.taskCarDriveToCoord&lt;br /&gt;
|usage = make the vehicle randomly drive around using internal game path data.&lt;br /&gt;
|parameters = Ped ped, Vehicle vehicle, float x, float y, float z, float driveSpeed, int driveFlag, 0 (or model hash), int driveStyle, float stopDist, -1)&lt;br /&gt;
|parameter1 = Ped ped The Ped to drive the Vehicle.&lt;br /&gt;
|parameter2 = Vehicle vehicle The Vehicle to drive with.&lt;br /&gt;
|parameter3 = float x The x position to drive to.&lt;br /&gt;
|parameter4 = float y The y position to drive to.&lt;br /&gt;
|parameter5 = float z The z position to drive to.&lt;br /&gt;
|parameter6 = float driveSpeed The speed of driving in meters per second. &amp;#039;&amp;#039;&amp;#039;(default = 20)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|parameter7 = int driveFlag The AI driving behavior/flag to use. (0-4, &amp;#039;&amp;#039;see details below&amp;#039;&amp;#039;)&lt;br /&gt;
|parameter8 = int hash (unknown) 0 or model hash of the vehicle used in parameter 2&lt;br /&gt;
|parameter9 = int driveStyle The AI driving style (behavior) to use. (0-7, &amp;#039;&amp;#039;see details below&amp;#039;&amp;#039;)&lt;br /&gt;
|parameter10 = float stopDist Radius around the given coords. Vehicle will stop when inside radius.&lt;br /&gt;
|parameter11 = int unknown (unknown) always -1&lt;br /&gt;
|return1 = void&lt;br /&gt;
|returnFail1 = void&lt;br /&gt;
|exampleJSCS = /* example code provided by DrFauli */&lt;br /&gt;
addCommandHandler(&amp;quot;drivecoords&amp;quot;, function(cmdName, params) {&lt;br /&gt;
	// current vehicle/ped handle&lt;br /&gt;
	let thisVeh = null;&lt;br /&gt;
	let thisPed = null;&lt;br /&gt;
&lt;br /&gt;
	// check if player is in a car&lt;br /&gt;
	if (!localPlayer.vehicle) {&lt;br /&gt;
		natives.requestModel(-956048545) // Taxi&lt;br /&gt;
		natives.requestModel(8772846); // Taxi Driver&lt;br /&gt;
		natives.loadAllObjectsNow();&lt;br /&gt;
&lt;br /&gt;
		// spawn the car&lt;br /&gt;
		thisVeh = createVehicle2(-956048545, localPlayer.position, true);&lt;br /&gt;
		thisVeh.heading = localPlayer.heading;&lt;br /&gt;
&lt;br /&gt;
		// spawn the driver&lt;br /&gt;
		thisPed = natives.createCharInsideCar(thisVeh, 1, 8772846);&lt;br /&gt;
&lt;br /&gt;
		// prevent ped from leaving the car screaming by marking it as mission_char first&lt;br /&gt;
		natives.setCharAsMissionChar(thisPed, true);&lt;br /&gt;
		natives.setCharStayInCarWhenJacked(thisPed, true);&lt;br /&gt;
&lt;br /&gt;
		// warp player into passenger seat&lt;br /&gt;
		natives.warpCharIntoCarAsPassenger(localPlayer, thisVeh, 0);&lt;br /&gt;
	} else	{&lt;br /&gt;
		thisVeh = localPlayer.vehicle;&lt;br /&gt;
		thisPed = thisVeh.getOccupant(0);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	// get speed and driveStyle/driveFlag from params&lt;br /&gt;
	let splitParams = params.split(&amp;quot; &amp;quot;);&lt;br /&gt;
	let stopDist = 50;&lt;br /&gt;
	let driveSpeed = Number(splitParams[0]); // default is 20&lt;br /&gt;
	let driveStyle = Number(splitParams[1]);&lt;br /&gt;
	let driveFlag  = Number(splitParams[2]); // default is 0&lt;br /&gt;
&lt;br /&gt;
	// let this car drive to coords (0,0,0) &lt;br /&gt;
	// [syntax]: pedHandle, carHandle, x, y, z, driveSpeed, driveFlag, (0 or model hash?), driveStyle, stop distance, unknown(-1)&lt;br /&gt;
	natives.taskCarDriveToCoord(thisPed, thisVeh, 0, 0, 0, driveSpeed, driveFlag, 0, driveStyle, stopDist, -1);&lt;br /&gt;
&lt;br /&gt;
	return true;&lt;br /&gt;
});&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== driving flag behavior ==&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!|&lt;br /&gt;
!|behavior&lt;br /&gt;
!|parameter9 (driving style)&lt;br /&gt;
|-&lt;br /&gt;
|0&lt;br /&gt;
|normal driving&lt;br /&gt;
|used &lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|get to coord as fast as possible&lt;br /&gt;
|ignored&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|driving in reverse&lt;br /&gt;
|used (while reversing)&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|drive wander (ignore coords)&lt;br /&gt;
|used &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==driving style behavior==&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!|&lt;br /&gt;
!|traffic lights&lt;br /&gt;
!|other cars&lt;br /&gt;
!|pedestrians&lt;br /&gt;
!|blinkers&lt;br /&gt;
!|when stuck&lt;br /&gt;
|-&lt;br /&gt;
|0&lt;br /&gt;
|ignore&lt;br /&gt;
|drive around&lt;br /&gt;
|drive around&lt;br /&gt;
|not used&lt;br /&gt;
|reverse&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|stop on red&lt;br /&gt;
|stay behind&lt;br /&gt;
|stop and honk&lt;br /&gt;
|used on intersections&lt;br /&gt;
|wait&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|ignore&lt;br /&gt;
|drive around&lt;br /&gt;
|drive around&lt;br /&gt;
|not used&lt;br /&gt;
|reverse&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|ignore&lt;br /&gt;
|ignore&lt;br /&gt;
|ignore&lt;br /&gt;
|not used&lt;br /&gt;
|reverse&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|ignore&lt;br /&gt;
|stay behind&lt;br /&gt;
|stop and honk&lt;br /&gt;
|not used&lt;br /&gt;
|wait&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|stop on red&lt;br /&gt;
|drive around&lt;br /&gt;
|drive around&lt;br /&gt;
|not used&lt;br /&gt;
|reverse&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|stop+reversing&lt;br /&gt;
|drive around&lt;br /&gt;
|drive around&lt;br /&gt;
|not used&lt;br /&gt;
|reverse&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|stop on red&lt;br /&gt;
|stay behind&lt;br /&gt;
|stop and honk&lt;br /&gt;
|used on intersections&lt;br /&gt;
|wait&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==notes==&lt;br /&gt;
*driving styles &amp;#039;&amp;#039;&amp;#039;0 and 2&amp;#039;&amp;#039;&amp;#039; seem to be identical.&lt;br /&gt;
*driving styles &amp;#039;&amp;#039;&amp;#039;1 and 7&amp;#039;&amp;#039;&amp;#039; seem to be identical.&lt;br /&gt;
*using values &amp;#039;&amp;#039;&amp;#039;&amp;lt; 0&amp;#039;&amp;#039;&amp;#039; or &amp;#039;&amp;#039;&amp;#039;&amp;gt; 7&amp;#039;&amp;#039;&amp;#039; will behave like &amp;#039;&amp;#039;&amp;#039;3&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
*the AI will slow down for corners and intersections, but won&amp;#039;t break for &amp;quot;drive around&amp;quot; obstacles.&lt;br /&gt;
There &amp;#039;&amp;#039;&amp;#039;could be&amp;#039;&amp;#039;&amp;#039; small distance and/or speed differences when &amp;quot;drive around&amp;quot; is used.‎&amp;lt;br/&amp;gt;&lt;br /&gt;
It is also unclear if the AI drivers are able to see objects like light poles or traffic lights while evading.&lt;/div&gt;</summary>
		<author><name>MexTest1</name></author>
	</entry>
</feed>