Jump to content
thomsonb

Spawned vehicles change the side of the crew who get in

Recommended Posts

I am trying to spawn a EAST type of vehicle but have it on the side WEST.

 

Whenever I do this the crew of the vehicle change side back to east!

 

I have tried spawning the vehicle using createVehicle and also BIS_fnc_spawnVehicle.

 

I have tried spawning the WEST crew directly in with moveInDriver, and also tried spawning them outside the empty spawned vehicle, with a getIn waypoint; but as soon as they get in they change to EAST!

 

This only applies to spawned vehicles not empty ones placed in editor. The group change side back to the faction of the vehicle, even though the vehicle was spawned empty.

 

 

Is this a known bug?

 

Anyone know of a workaround?

 

 

Thanks

 

EDIT!

OK I have done more testing, it seems the problem is nothing to do with  the vehicle, but it is the side of the Drivers unit type.

 

Execute this code in the editor and notice how the vehicle changes side to EAST, even though the driver is WEST, it is just because i used an EAST unit type "O_Pilot_F" as the driver, if you change it to "B_Pilot_F" the bug doesn't happen!

 

_grp = createGroup west;
_heli = "B_Heli_Transport_01_F" createVehicle getPos player;
systemChat ("grp side starts as "+ str side _grp);  
systemChat ("heli side starts "+ str side _heli);
_pilot = _grp createUnit ["O_Pilot_F",getPos player,[],0,"NONE"];
_pilot moveInDriver _heli;

systemChat ("grp side is now "+ str side _grp);
systemChat ("heli side is now "+ str side _heli);

 

Please let me know if you get the same results with changing the pilot unit type from "O_Pilot_F" to "B_Pilot_F"

 

It seems the helicopter inherits the side from the pilots unit type, not the side of the actual group the unit is in.  I'm sure its a bug now.

 

Cheers

Share this post


Link to post
Share on other sites

Post your code

 

OK I have done more testing, it seems the problem is nothing to do with  the vehicle, but it is the side of the Drivers unit type.

 

Execute this code in the editor and notice how the vehicle changes side to EAST, even though the driver is WEST, it is just because i used an EAST unit type "O_Pilot_F" as the driver, if you change it to "B_Pilot_F" the bug doesn't happen!

 

_grp = createGroup west;

_heli = "B_Heli_Transport_01_F" createVehicle getPos player;

systemChat ("grp side starts as "+ str side _grp);  

systemChat ("heli side starts "+ str side _heli);

_pilot = _grp createUnit ["O_Pilot_F",getPos player,[],0,"NONE"];

_pilot moveInDriver _heli;

systemChat ("grp side is now "+ str side _grp);

systemChat ("heli side is now "+ str side _heli);

 

Please let me know if you get the same results with changing the pilot unit type from "O_Pilot_F" to "B_Pilot_F"

 

It seems the helicopter inherits the side from the pilots unit type, not the side of the actual group the unit is in.  I'm sure its a bug now.

 

Cheers

Share this post


Link to post
Share on other sites

I think its a problem of the group.

try to use addVehicle to get the vehicle assigned to the group of the crew.

 

Good idea, but yeah tried that already too thanks :)

Share this post


Link to post
Share on other sites

Hmm you are trying to add east pilot to west group?

After that your pilot is automatically on west side.

Share this post


Link to post
Share on other sites

Hmm you are trying to ad east pilot to west group?

After that your pilot is automatically on west side

 

Yeah, i want a WEST heli that behaves friendly, but the uniform of the pilot looks like EAST

 

Im developing a mission where the player side is always WEST, but sometimes some EAST looking units will be used on the west side.

 

Did you got the same result?

Share this post


Link to post
Share on other sites

Hmm i just not understand what you exactly  want to do. 

If you want to have EAST like looking units change they uniforms, not sides.

like that:

_grp = createGroup west;
_heli = "B_Heli_Transport_01_F" createVehicle getPos player;
_pilot = _grp createUnit ["B_Pilot_F",getPos player,[],0,"NONE"];
removeAllWeapons _pilot;
removeAllItems _pilot;
removeAllAssignedItems _pilot;
removeUniform _pilot;
removeVest _pilot;
removeBackpack _pilot;
removeHeadgear _pilot;
removeGoggles _pilot;
_pilot forceAddUniform "U_O_PilotCoveralls";
_pilot addItemToUniform "FirstAidKit";
for "_i" from 1 to 3 do {_pilot addItemToUniform "30Rnd_9x21_Green_Mag";};
_pilot addItemToUniform "SmokeShell";
_pilot addItemToUniform "SmokeShellRed";
_pilot addItemToUniform "Chemlight_red";
_pilot addBackpack "B_Parachute";
_pilot addHeadgear "H_PilotHelmetFighter_O";
_pilot addWeapon "SMG_02_ACO_F";
_pilot addPrimaryWeaponItem "optic_ACO_grn_smg";
_pilot linkItem "ItemMap";
_pilot linkItem "ItemCompass";
_pilot linkItem "ItemWatch";
_pilot linkItem "ItemRadio";
_pilot linkItem "NVGoggles_OPFOR";
_pilot moveInDriver _heli;

Share this post


Link to post
Share on other sites

Hmm i just not understand what you exactly  want to do. 

If you want to have EAST like looking units change they uniforms, not sides.

 

Yeah I will have to do that as a workaround.   But this is a bug, because spawning a "O_soldier" onto a WEST group has always worked fine.  This problem only happens when they get in vehicles.

Share this post


Link to post
Share on other sites

Another way is to use this after the unit is created. It will make sure the unit properly joins the correct side.

[unit] joinSilent grp; 

If you spawn several units at once I recommend to do the joinSilent right after each unit is spawned and not as a batch at the end. Otherwise the AI might go into combat mode cause they'll detect their friends as enemy before the spawning is complete. Creating several complex animated models with high res textures can take long... who knew?! :P

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×