createVehicle

From Bohemia Interactive Community
Revision as of 18:57, 6 February 2017 by Killzone Kid (Talk | contribs) (special scripted vehicle classes, example)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Introduced with Operation Flashpoint version 1.34
  Effects of this scripting command are broadcasted over the network and happen on every computer in the network

Click on the images for descriptions

Introduced in

Game:
Operation Flashpoint
Version:
1.34

Description

Description:
Creates an empty object of given classname type (See Arma 3 Assets or createVehicle/vehicles)
For a class reference from older games see Classes.

Some special 'Scripted' vehicle classes:
  • DemoCharge_Remote_Ammo_Scripted - same as DemoCharge_Remote_Ammo but will explode when destroyed or setDamage 1;
  • SatchelCharge_Remote_Ammo_Scripted - same as SatchelCharge_Remote_Ammo but will explode when destroyed or setDamage 1;
  • ClaymoreDirectionalMine_Remote_Ammo_Scripted - same as ClaymoreDirectionalMine_Remote_Ammo but will explode when destroyed or setDamage 1;
  • GroundWeaponHolder_Scripted - same as GroundWeaponHolder but will not be auto-deleted when empty
  • WeaponHolderSimulated_Scripted - same as WeaponHolderSimulated but will not be auto-deleted when empty

Randomization:
In Arma 3 many vehicles will get randomized in appearance by default in order to add some variety to the game. It is possible to override this default behavior by setting BIS_enableRandomization variable to false in the vehicle namespace: _veh = "C_Offroad_01_F" createVehicle position player; _veh setVariable ["BIS_enableRandomization", false]; or this setVariable ["BIS_enableRandomization", false]; if done in mission editor init field.

Syntax

Syntax:
type createVehicle position
Parameters:
type: String - vehicle/object className
position: Position - Desired placement position. If the exact position is occupied, nearest empty position is used.
Return Value:
Object

Alternative Syntax

Syntax:
createVehicle [type, position, markers, placement, special]
Parameters:
[type, position, markers, placement, special]: Array
type: String - vehicle/object className
position: PositionAGL, Position2D or Object - Desired placement position
markers: Array - If the markers array contains any markers, the position is randomly picked from array of given markers plus desired placement position. If any of the markers were given z coordinate with setMarkerPos, the vehicle will also be created at given z coordinate.
placement: Number - The vehicle is placed inside a circle with given position as center and placement as its radius
special: String - "NONE", "FLY", "FORM", "CAN_COLLIDE". "CAN_COLLIDE" creates the vehicle exactly where asked, not checking if others objects can cross its 3D model.
Return Value:
Object

Examples

Example 1:
_jeep = "Jeep" createVehicle position player;
Example 2:
_heli = "AH1Z" createVehicle getMarkerPos "hspawn";
Example 3:
_veh = createVehicle ["ah1w", position player, [], 0, "FLY"];
Example 4:
_veh = createVehicle ["2S6M_Tunguska", getMarkerPos "marker1", ["marker2","marker3"], 0, "NONE"];
Example 5:
Objects such as
  • test_EmptyObjectForBubbles
  • test_EmptyObjectForFireBig
  • test_EmptyObjectForSmoke
create additional emitters that needs to be deleted first before deleting the object itself: ///--- function to delete test object (MP compatible) fnc_deleteTestObj = { _this addMPEventHandler ["MPKilled", { _this = _this select 0; { deleteVehicle _x; } forEach (_this getVariable ["effects", []]); if (isServer) then { deleteVehicle _this; }; }]; _this setDamage 1; }; ///--- example [] spawn { _fire = "test_EmptyObjectForFireBig" createVehicle position player; sleep 5; _fire call fnc_deleteTestObj; };
Example 6:
The following explosives (with ending _Scripted)
  • DemoCharge_Remote_Ammo_Scripted
  • SatchelCharge_Remote_Ammo_Scripted
  • ClaymoreDirectionalMine_Remote_Ammo_Scripted
can be set off by applying setDamage 1 to them for ease of scripting: _claymore = "ClaymoreDirectionalMine_Remote_Ammo_Scripted" createVehicle position player; 0 = _claymore spawn { uiSleep 5; _this setDamage 1; };
Example 7:
How to add inventory to objects without inventory:_boxes = "Land_Pallet_MilBoxes_F" createVehicle position player; _cargo = "Supply500" createVehicle [0,0,0]; _cargo attachTo [_boxes, [0,0,0.85]]; // optional for objects that can take damage _boxes addEventHandler ["Killed", { { detach _x, deleteVehicle _x; } forEach attachedObjects (_this select 0); }];
Example 8:
Drop weapon:_wh = "GroundWeaponHolder_Scripted" createVehicle position player; player action ["DropWeapon", _wh, currentWeapon player];

Additional Information

Multiplayer:
-
See also:
createVehicleLocalcreateVehicleCrewcreateAgentcreateTriggercreateUnitdeleteVehiclecreateGroupcreateCentersetVehiclePosition

Notes

Only post proven facts here. Report bugs on the feedback tracker. Use the talk page or the forums for discussions.
Add New Note | How To

Notes

Posted on August 13, 2006 - 12:18
raedor
Using main syntax of this command sets the created vehicle not exactly at the given position, you have to setPos it there, if accuracy counts.
Posted on Jan 20, 2006
bdfy
Using main syntax of this command sets the created vehicle in the nearest possible position. You can create a dozen of tanks with it - they will appear side by side.
Posted on December 13, 2006 - 12:27
Salisan
Observe that buildings with the default destrType will not work correctly in multiplayer in Armed Assault when created with this command. The Destruction effect will only be displayed where the building is local.
Posted on Oct 18, 2009 - 05:42
Canukausiuka
As of Arma2, this command cannot be used to create game logics (source). Use createUnit instead.
Posted on January 14, 2011
Galzohar
In multiplayer, only run this command on one machine. It will create a the vehicle on all machines every time it is called on any machine.
Posted on January 26 2014 - 20:12
Katulobotomia
Using getPosATL should work, if otherwise you are struggling to get a the proper position coordinates.

Bottom Section

Posted on September 12, 2014 - 07:59 (UTC)
Killzone Kid
"vehclass" createVehicle pos is the same if not faster than createVehicle ["vehclass", pos, [], 0, "NONE"]
Posted on August 22, 2015 - 13:04 (UTC)
MrSanchez
GroundWeaponHolder class is automatically deleted when empty after 0.5 to 1 seconds in A3 1.48. The exact delay is random but never lower than 0.50 secs after creation. You can stop deletion by adding something (cargo) to it within 0.5 seconds.
Posted on December 1, 2015 - 16:46 (UTC)
Zectbumo
The short syntax creates vehicles at ground level ignoring the Z in pos "vehclass" createVehicle pos This is equivalent to createVehicle ["vehclass", [pos select 0, pos select 1, 0], [], 0, "NONE"]