2960 Commits

Author SHA1 Message Date
Dan Albert
a41dc15f4e Stop cluttering the kneeboard with empty notes.
(cherry picked from commit d11174da21fccbf348b42212f911300fa7d09d49)
2021-08-08 12:52:04 -07:00
Kangwook Lee
222467d429 Fix text foreground color for dark kneeboard
(cherry picked from commit 77e62d5a544a59646be4ac4d3394605fbfc75752)
2021-08-08 12:52:04 -07:00
Magnus Wolffelt
be5b87be2a Update changelog for 4.x
BAI missions are actually planned at low altitude. The problem remaining is that they have join/hold/split waypoints, which makes the flight times _incredibly_ long for these slow movers.
2021-08-08 12:52:04 -07:00
Magnus Wolffelt
8cb372674a Changelog updates for 4.x.
Regarding patrol speeds and helo fix.
2021-08-08 12:52:04 -07:00
Magnus Wolffelt
57f49a52e2 Use more sensible patrol speeds for CAP, and fix is_helo (#1492)
* Use more sensible patrol speeds for CAP, and fix is_helo
2021-08-08 12:52:04 -07:00
Dan Albert
1760ee39bb Changelog updates for 4.x.
(cherry picked from commit bef015eb572fbb595ff39f1e81f6a976e398cf64)
2021-08-08 12:52:04 -07:00
Magnus Wolffelt
0b38c3bbda Tweak max-speed-based patrol altitudes
(cherry picked from commit 6621421a6fd4fb7798e589b522f34d8cac2a6faa)
2021-08-08 12:52:04 -07:00
Magnus Wolffelt
b6895e302e Estimate preferred patrol altitude based on max speed
(cherry picked from commit a3e3e9046f4c629114e8f46e5ef6b6718c6852c2)
2021-08-08 12:52:04 -07:00
RndName
0aef7a1c80 fix for wrong patrol speed
(cherry picked from commit 04cdb6fbfc2760b327e06c800b16cd4520a964f1)
2021-08-08 12:52:04 -07:00
bgreman
86f9ab26e0 Update skynet plugin (#1478)
(cherry picked from commit 8c7e56a2bd2d663b3082a82c373cd67517bc6672)
2021-08-08 12:52:04 -07:00
RndName
ad7b9dac38 improved the validation for planned transfers
- instead of only checking if the transfer destination was captured it now checks if there is a valid route between origin and destination. This also ensures that there will be a check if the current position or next_stop was captured and therefore the transfer should be disbanded.
- disband uncompletable transfer before planning or performing (also when user cheated a base capture)

(cherry picked from commit ac088ea6921d898faaa35eff9df584d343de905f)
2021-08-08 12:52:04 -07:00
Mustang-25
b6a4489bb1 Rebalanced Aircraft Planning Hierarchies
CAP List:
[+] Mig-21 #1372
[+] Su-34
[moved up] F-15C above the F-14 (probably contentious to some but IMO the AI never capitalizes on the AIM-54 range and the Eagle AI seems to do better in general)
[moved up] JF-17
[moved up] Gripen
[moved down] Su-33
[moved down] Su-27
[moved down] MiG-31
[moved down] MiG-25
[moved down] MiG-29G
[moved down] MiG-29A

* Downgraded MiGs and Sukhois that do not have Fox-3s due to this disadvantage. From personal experience, the 31s and 25s also won't use the longer range of their Fox-1s to warrant for a higher spot on the list.

CAS/BAI List:
[+] Su-33 #1367
[-] Su-24MR (dedicated recce platform, no AG munitions)
[moved up] Su-34
[moved down] Mig-19P
[moved down] UH-1

Strike List:
[-] Su-24MR (dedicated recce platform, no AG munitions)
[moved up] JF-17
[moved up] Harrier

Runway Attack List:
[+] Mirage 2000C

(cherry picked from commit 0d6f420f97ed40b6c85e81aa57fc46ee63e0067d)
2021-08-08 12:52:04 -07:00
Dan Albert
6ee0feebb4 Update USN 2005 faction.
https://github.com/dcs-liberation/dcs_liberation/issues/1427
(cherry picked from commit bef85963a6e45eba4a2e6c3656024fee04de1834)
2021-08-08 12:52:04 -07:00
Mustang-25
c0e674f0e0 Replace TGP with SPJ for JF-17 CAP/SEAD.
Fixes https://github.com/dcs-liberation/dcs_liberation/issues/1422.

(cherry picked from commit ee77516716f0a8ef43e0339e44ba3c553dd345c1)
2021-08-08 12:52:04 -07:00
Dan Albert
4406d8c1af Campaign updates from Starfire.
(cherry picked from commit 3be57efa9779c1c3796feaeb655d1251fa34a359)
2021-08-08 12:52:04 -07:00
Dan Albert
0e6b3b6e0f Ack new campaign version for unaffected maps.
(cherry picked from commit 981d8510c2f111614e3eaf01d049e646863a4938)
2021-08-08 12:52:04 -07:00
Khopa
f9187d6b59 Added Tin Shield EWR support
(cherry picked from commit 32f05dccd928ab7b5ea7c17b30f4997c5b92c358)
2021-08-08 12:52:04 -07:00
Khopa
da143e403c Added NASAMS support
(cherry picked from commit 4aac2d2b7bf7089b61740f089c7063cf77dec233)
2021-08-08 12:52:04 -07:00
Dan Albert
e6d2c76641 Add ALIC codes for the tin shield and NASAMS.
https://github.com/dcs-liberation/dcs_liberation/issues/1448
(cherry picked from commit 971d7e730a74d869defd02d8f7ada7c2e01cfed6)
2021-08-08 12:52:04 -07:00
Dan Albert
56307df630 Update the F-16 DEAD loadout to use JSOWs.
https://github.com/dcs-liberation/dcs_liberation/issues/1448
(cherry picked from commit 06f8b9b817135ab96314717831958e87aa7b1460)
2021-08-08 12:52:04 -07:00
Dan Albert
46240ca712 Work around pydcs bug.
https://github.com/pydcs/dcs/issues/175 causes setting the AI comm
frequency to raise an exception for aircraft without preset channel
support.

(cherry picked from commit 5d8f6552439100d99b340a91de43f4e053d8c0f9)
2021-08-08 12:52:04 -07:00
Dan Albert
4c93bb143d Update pydcs to latest master.
https://github.com/dcs-liberation/dcs_liberation/issues/1448
(cherry picked from commit 0cb41469abb206838d2dede855a13be39235802c)
2021-08-08 12:52:04 -07:00
Dan Albert
77fc358d55 Update pydcs to latest master.
(cherry picked from commit 9f23cb35a95a71fd25887010d4cf5f3e1618da92)
2021-08-08 12:52:04 -07:00
bgreman
eedaecab2c Vendor ruler (#1476)
* Fixes ruler module integrity issues by bringing module into source

* Changing ruler stylesheet to vaguely match DCS theme in Liberation

* Changelog

(cherry picked from commit 119d4b9514fdd395adf2dc19b5919930a59b56ac)
2021-08-08 12:52:04 -07:00
bgreman
09b29b50c9 Updates gripen support fixes legacy DEAD loadouts 2021-08-08 12:52:04 -07:00
bgreman
136c0d49b5 Adds more details to frontline movement logging (#1465)
* adds more detailed logging for frontline movement

* Fixing attribute name

* Fixing if, adding else

(cherry picked from commit 58c96e132934fcd1f742c1819f450e7605e6d098)
2021-08-08 12:52:04 -07:00
RndName
b1b8ad3f1a fix generation of empty transfer during cp capture
when a cp capture happens and the next cp has pending unit deliveries then they will be redeployed to the newly captured cp. The redeploy was drecreasing the num of pending unit deliveries for the old cp but was not removing them completly from the dict when all were removed

(cherry picked from commit 67fa4a891077af74bc9fe99d27c662c0c32da83a)
2021-08-08 12:52:04 -07:00
Mustang-25
49b1764d89 Increment to Campaign v8.0
(cherry picked from commit 0117ab8aa463497c83f313004e1fe88bb4e47cf0)
2021-08-08 12:52:04 -07:00
Mustang-25
675bfdf628 Increment to Campaign v8.0
(cherry picked from commit a5ade0c41a7183340a9c293887fa11e5c601bf1f)
2021-08-08 12:52:04 -07:00
Mustang-25
575da95581 Increment to Campaign v8.0
(cherry picked from commit 4df12ae6751d4fc9111ca0b4a8b3b99b3c491cf6)
2021-08-08 12:52:04 -07:00
Mustang-25
41a9d1194d Increment to Campaign v8.0
(cherry picked from commit 274a41f0528d7f6c83eb7f2f4d85c9f8baae449d)
2021-08-08 12:52:04 -07:00
Mustang-25
4f7f93ebd8 Increment to Campaign v8.0
(cherry picked from commit 3670c8f8797be30d2960c9ab4ca707b2f9517316)
2021-08-08 12:52:04 -07:00
Mustang-25
0f36273de1 Increment to Campaign v8.0
(cherry picked from commit e88bb442f394599d0728ebbd5b52e1bd9a68f3aa)
2021-08-08 12:52:04 -07:00
Dan Albert
c6a5161a2a Remove the SA-10 from Syria 2011.
They didn't get this until a few years later. This was a stand-in for
the SA-5 that DCS doesn't have, but the SA-10 is so much more capable
that it's not a good replacement.

(cherry picked from commit 80bf3c97b22e4912943b0d28083a30427f43264d)
2021-08-08 12:52:04 -07:00
Dan Albert
2295f4edfe Bump campaign version to 8.0 for latest DCS.
Building IDs changed again. Ack the change in my two campaigns which
don't use these target types.

(cherry picked from commit edbd3de4a4f8d62adeb98880f97e012d2bab75a8)
2021-08-08 12:52:04 -07:00
Dan Albert
1991c4d48f Add decorator for tracking save compat.
Used to decorate functions or methods that have save compat code for a
given major version.

```
@has_save_compat_for(5)
def foo() -> None:
    ...
```

This function will raise an error at startup if it is decorated as
having save compat for a version other than the current major version of
the game. A new major version is the definition of a save compat break,
so keeping around the old compat code serves no purpose other than
hiding initialization bugs. The compat code and the decorator should be
removed in the branch raising the error.

(cherry picked from commit cd558daf5a601f64e98ad4ae2e7f6351be702632)
2021-08-08 12:52:04 -07:00
Dan Albert
81c2bd6c76 Correct int/float confusion in Point APIs.
The heading and distance calculations always return floats.

(cherry picked from commit 6ce02282e74fd3455c3a63880330c05b63a35bff)
2021-08-08 12:52:04 -07:00
Dan Albert
fb964648a8 Use Pillow types from typeshed.
(cherry picked from commit a19a0b678974632549b418764c86b4714354cee1)
2021-08-08 12:52:04 -07:00
Dan Albert
93c6cb34fb Update to latest pydcs.
This includes the basics that we need to get type checking for pydcs
calls.

Type checking has been disabled in a few monkey-patching cases. Patches
ought to be sent upstream (or in the case of dead unit tracking,
replaced with a better model).

(cherry picked from commit 9de08dc83ff1ed30b15f5c7acc21da316fce9b6b)
2021-08-08 12:52:04 -07:00
Dan Albert
be13d8c0a6 More adaptation for pydcs updates.
This is as much as we can do until pydcs actually adds the py.typed
file. Once that's added there are a few ugly monkey patching corners
that will just need `# type: ignore` for now, but we can't pre-add those
since we have mypy warning us about superfluous ignore comments.

(cherry picked from commit 96c7b87ac7ef9382ffad9c3b5846fd8c0df8b0a2)
2021-08-08 12:52:04 -07:00
Brock Greman
6a8a9ef7e9 Fixing broken group generation.
(cherry picked from commit 469dd49defabf7f7c607f6dc5f9c6a82beb04c29)
2021-08-08 12:52:04 -07:00
Dan Albert
c0f6974d07 Fix some typing in preparation for pydcs types.
Not complete, but progress.

(cherry picked from commit 53f6a0b32b922110ccc163e3221a0f6cfd445ef9)
2021-08-08 12:52:04 -07:00
Dan Albert
4e9d661c0c Flesh out typing information, enforce.
(cherry picked from commit fb9a0fe833198d41a911f22d5efc4e3c4829c316)
2021-08-08 12:52:04 -07:00
Dan Albert
7cfd6b7151 Disallow partially specified generics.
(cherry picked from commit 69c3d41a8ad967db27e99235c2f7b9196d29e6b9)
2021-08-08 12:52:04 -07:00
Dan Albert
65dfa8e209 Type check the contents of untyped functions.
By default mypy doesn't type check the code within an untyped function.
This enables that and fixes typing errors to accomodate it.

This did uncover a very old bug:
https://github.com/dcs-liberation/dcs_liberation/issues/1417

(cherry picked from commit fc32b983413dd741a23d33db6da89ddcba7bed64)
2021-08-08 12:52:04 -07:00
Dan Albert
7015b3a40d Fix unreachable code issues, enable checking.
The loadout case actually could (and previously did) hide bugs from the
type checker, since mypy was smart enough to see that we were removing
None from the input it assumed that the member was non-optional, but
later modifications could cause null values, and since those came from
the UI mypy couldn't reason about this. This meant that mypy assumed the
type could not be optional and wouldn't check that case.

(cherry picked from commit 299ed88f09d506df1a10e5454b237263e5cbeeab)
2021-08-08 12:52:04 -07:00
Dan Albert
f9c20d729b Add (mostly disabled) mypy configs.
We're missing a lot of checking right now. Most of it requires
additional cleanup. For now I've enabled what I could and will follow up
to clean up and enable more checking.

(cherry picked from commit 29753a6aa9e38a2a2a9a0741ff9bda31b33498c2)
2021-08-08 12:52:04 -07:00
Dan Albert
fa5cbac2fc Add documentation for turn processing.
(cherry picked from commit 7983cd8d623d5733d50dc85ea55824a1dfc952df)
2021-08-08 12:52:04 -07:00
RndName
638903ddf7 correct display of turn statistics 2021-08-08 12:52:04 -07:00
RndName
40092bf87f replan opfor mission on sell or buy of tgos
(cherry picked from commit 7229b886e0eaad14d6c59fda47399d0d65b10e70)
2021-08-08 12:52:04 -07:00