dcs-liberation / dcs_liberation

DCS World dynamic campaign.
GNU Lesser General Public License v3.0
707 stars 183 forks source link

Per-aircraft-type parking allocation #1391

Open Hornet2041 opened 3 years ago

Hornet2041 commented 3 years ago

untasked airspawn bassel.zip

image

Liberation release version 4, on new DCS open beta patch that released Marianas map."

Bought 10 Su-27s at Bassel, set for runway start, tasked them to TARCAPs, both ASAP. Both 4ships spawned fine, two Flankers spawned in mid-air as reporting:

image image image

DanAlbert commented 3 years ago

Optimistically assigning to 4.x but it depends on when someone finds time to investigate and what the actual fix would be.

ali4000 commented 2 years ago

I have seen the same, including myself spawning mid-air at the same coordinate as a bunch of other planes, causing an "interesting" mess... X-)

I think the answer is in the picture, at least that was my conclusion: Bassel Al-Assad cannot host more than 32 (iirc) planes, eventhough it has capacity for more aircraft. The entire north-eastern corner area of the picture are helipads only, and if you overpopulate the base with more planes than it has plane parkings, they will not spawn on the helipads, but instead inside eachother mid-air right above the airport, and come crashing down. I suspect more airports might have the same issue, just not as pronounced. I'm not sure if this is a DCS thing, or Liberation. Is it possible to determine in code whether a parking point is heli only, or not?

Rosh Pina and Kiryat Shmona have a kind of reversed problem, because you can spawn planes fine there, but most(?) cannot take off due to the short runways. While a player can readily start and land with STOL aircraft like the Viggen and Harrier, even the AI Harriers crash into the runway end and die on take off, because the Harrier AI tries to do a traditional take off instead of a V/STOL one. But that's more of a usability issue than a parking slot bug.

DanAlbert commented 2 years ago

Okay, so this is just the usual problem where we don't do parking allocation by aircraft type. I'll repurpose this bug for that FR since it comes up often, but we don't have the data to fix it generally. Helipad vs other is the one piece of data we do have, but the data for large/small, or HAS presence is no good (every parking space is small and has not HAS according to the data from pydcs).

Beyond that, our airport limits aren't currently set up per parking space, nor do we assign specific parking spaces to aircraft when we spawn them. Even if we had the data, which we don't, there's a large amount of work to do here.

Mustang-25 commented 2 years ago

Helipad vs other is the one piece of data we do have, but the data for large/small, or HAS presence is no good (every parking space is small and has not HAS according to the data from pydcs).

I think distinguishing between heli/non-heli alone will see a lot of improvement. A lot of the parking bugs I've seen have been fixed wing being put in helo spots.

Also, I noticed that while pydcs apparently marks every space as large=false, it does provide the dimensions of each space. Would it be possible to just export those together with the dimensions of each aircraft and cross reference them when trying to place aircraft?

I wonder also if it's possible to maximize parking availability by using that to prioritize the largest spots with the largest aircraft to avoid situations where something small like Mig-21s take up all the large spots where only a Su-33 could fit.

Mustang-25 commented 2 years ago

748 is related to this as well, linking it for posterity.