mirror of
https://github.com/dcs-retribution/dcs-retribution.git
synced 2025-11-10 15:41:24 +00:00
Limit/Suppress AI radio callouts for player flights
This commit is contained in:
parent
1f21ed0c1d
commit
242d1a14a7
@ -29,6 +29,7 @@
|
|||||||
* **[Mission Generation]** Introducing the Armed Recon flight plan, i.e. CAS against any Theater Ground Object
|
* **[Mission Generation]** Introducing the Armed Recon flight plan, i.e. CAS against any Theater Ground Object
|
||||||
* **[Doctrine]** Ability to customize the startup time allocated to the player
|
* **[Doctrine]** Ability to customize the startup time allocated to the player
|
||||||
* **[Mission Generation]** Ability to choose whether player flights can spawn on the sixpack or not
|
* **[Mission Generation]** Ability to choose whether player flights can spawn on the sixpack or not
|
||||||
|
* **[Options]** New options in Mission Generator section: Limit AI radio callouts & Suppress AI radio callouts.
|
||||||
|
|
||||||
## Fixes
|
## Fixes
|
||||||
* **[UI/UX]** A-10A flights can be edited again
|
* **[UI/UX]** A-10A flights can be edited again
|
||||||
|
|||||||
@ -27,6 +27,9 @@ from dcs.task import (
|
|||||||
PinpointStrike,
|
PinpointStrike,
|
||||||
AFAC,
|
AFAC,
|
||||||
SetUnlimitedFuelCommand,
|
SetUnlimitedFuelCommand,
|
||||||
|
OptNoReportWaypointPass,
|
||||||
|
OptRadioUsageContact,
|
||||||
|
OptRadioSilence,
|
||||||
)
|
)
|
||||||
from dcs.unitgroup import FlyingGroup
|
from dcs.unitgroup import FlyingGroup
|
||||||
|
|
||||||
@ -151,6 +154,19 @@ class AircraftBehavior:
|
|||||||
# Do not restrict afterburner.
|
# Do not restrict afterburner.
|
||||||
# https://forums.eagle.ru/forum/english/digital-combat-simulator/dcs-world-2-5/bugs-and-problems-ai/ai-ad/7121294-ai-stuck-at-high-aoa-after-making-sharp-turn-if-afterburner-is-restricted
|
# https://forums.eagle.ru/forum/english/digital-combat-simulator/dcs-world-2-5/bugs-and-problems-ai/ai-ad/7121294-ai-stuck-at-high-aoa-after-making-sharp-turn-if-afterburner-is-restricted
|
||||||
|
|
||||||
|
if flight.client_count and flight.flight_type != FlightType.AEWC:
|
||||||
|
# configure AI radio usage for player flights to avoid AI spamming the channel
|
||||||
|
if flight.coalition.game.settings.silence_ai_radios:
|
||||||
|
group.points[0].tasks.append(OptRadioSilence(True))
|
||||||
|
elif flight.coalition.game.settings.limit_ai_radios:
|
||||||
|
# the pydcs api models this in a quite strange way for some reason,
|
||||||
|
# and has no proper support to choose "nothing"
|
||||||
|
radio_usage = OptRadioUsageContact()
|
||||||
|
radio_usage.params["action"]["params"]["value"] = "none;"
|
||||||
|
group.points[0].tasks.append(radio_usage)
|
||||||
|
|
||||||
|
group.points[0].tasks.append(OptNoReportWaypointPass(True))
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def configure_eplrs(group: FlyingGroup[Any], flight: Flight) -> None:
|
def configure_eplrs(group: FlyingGroup[Any], flight: Flight) -> None:
|
||||||
if flight.unit_type.eplrs_capable:
|
if flight.unit_type.eplrs_capable:
|
||||||
|
|||||||
@ -797,6 +797,20 @@ class Settings:
|
|||||||
"which are known to work as of DCS World 2.9.4.53990."
|
"which are known to work as of DCS World 2.9.4.53990."
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
limit_ai_radios: bool = boolean_option(
|
||||||
|
"Limit AI radio callouts",
|
||||||
|
page=MISSION_GENERATOR_PAGE,
|
||||||
|
section=GAMEPLAY_SECTION,
|
||||||
|
default=True,
|
||||||
|
detail="Avoids the target-detection callouts over the radio by AI. (except for AWACS flights)",
|
||||||
|
)
|
||||||
|
silence_ai_radios: bool = boolean_option(
|
||||||
|
"Suppress AI radio callouts",
|
||||||
|
page=MISSION_GENERATOR_PAGE,
|
||||||
|
section=GAMEPLAY_SECTION,
|
||||||
|
default=False,
|
||||||
|
detail="Keeps the AI silent at all times for flights with human pilots. (except for AWACS flights)",
|
||||||
|
)
|
||||||
# Mission specific
|
# Mission specific
|
||||||
desired_player_mission_duration: timedelta = minutes_option(
|
desired_player_mission_duration: timedelta = minutes_option(
|
||||||
"Desired mission duration",
|
"Desired mission duration",
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user