Page MenuHomeFeedback Tracker

Debug Spectator Alters AI function/movement
New, NormalPublic

Description

This bug had be very confused for a few hours:

When using an sqf file to command an AI helicopter to fly to a position via the 'move' function, then going into spectator mode and tracking the helicopter mid-flight while testing the scenario (using the default left-mouse click on the heli), the helicopter stops its lean forward and just starts to climb. It seems that it stops forward movement but the upward vector is still active. When the user gets out of the camera tracking, the helicopter resumes its original movement.

Details

Severity
Trivial
Resolution
Open
Reproducibility
Always
Operating System
Windows 10 x64
Category
Scripting
Steps To Reproduce

I am unsure what features of my custom mission might have caused this, but here are the relevant parts:

  1. An .sqf file that contains:
  2. spawn {

_evac = createVehicle [heliType, getMarkerPos "heli", [], 0, "NONE"];
pilotType createUnit [getMarkerPos "heli", grpEvac, "thisPilot = this;", 0.6, "private"];
thisPilot moveInDriver _evac;

_evac setBehaviour "CARELESS"; //camera bug was present before this clause was added, I thought it had do
_evac lockDriver true;
_evac move getPos helipad;
}

Variables pilotType, heliType and others are declared in init.sqf

Then start scenario in multiplayer (I did LAN).
execute the .sqf, I did this with the debug-console in-game.
Go to the helicopter in spectator mode and left click it to track it.
The helicopter will start to rise and stop forward movement.
Stop tracking it to resume forward movement.

Additional Information

I am unsure what step caused this bug, but I suspect it is the spawn function, as the AI spawned in the thread might somehow interact with the spectator camera.

I as following the helo to make sure it was going to the destination correctly, then I saw that I could track the helo, so I did out of curiosity of this feature, but I did not correlate the tracking with the odd behavior for a few hours.

Arma 3 version 1.68.140908

Event Timeline

Scouter created this task.Mar 22 2017, 6:37 AM

I suspect this is because BI use a "Land_HelipadEmpty_F" in their spectator script as a dummy object which is attached to units for the purposes of camera tracking. (Line 78 of fn_EGSpectatorCamera in functions_f_exp_a.pbo)

Yeah I can confirm for certain that it's because the camera target dummy object used is "Land_HelipadEmpty_F" (came across the same issue in overhaul process of ace spectator. Can be fixed by just using a "Logic" instead.

Also, just to provide further information I tested with "Sign_Arrow_Green_F" and it causes the same rising issue. So it's not specifically the helipad that causes the issue.