Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

generalize/simplify code for waypoint layout planning #3085

Closed
Tracked by #270
DanAlbert opened this issue Jul 14, 2023 · 0 comments · Fixed by #3116
Closed
Tracked by #270

generalize/simplify code for waypoint layout planning #3085

DanAlbert opened this issue Jul 14, 2023 · 0 comments · Fixed by #3116
Assignees
Labels
development environment Issues concerning developper onboarding

Comments

@DanAlbert
Copy link
Member

#270 will greatly increase the permutations of possible flight layouts, and our current system for choosing waypoint locations (a bunch of explicit code for every possible case, plus explicit code on both sides of the UI boundary to enable the debug tools) is not going to scale.

For example, all the following is needed just for IPs:

And similar code is needed for every other type of waypoint that has non-trivial placement rules (currently join, split, and hold; refuel needs to do this but it hasn't been implemented; more will be needed as we go).

The only way we're going to be able to scale this is by reducing the amount of code that's needed for each case. I haven't figured out what that will look like yet, but I'd like it to end up something like:

  1. A higher level API for all the crap in things like IpZoneGeometry (which would probably be something like a GeometryBuilder)
  2. The ability to define multiple approaches for choosing the waypoint location (e.g. try to place a safe IP before trying to place an unsafe IP, where each has different constraints). Each approach will be tried in order until one is successful
  3. Automatic generation of the debug views

The hardest part of this is probably going to be the debug UI. The current approach only really works because I was able to build each one by hand and the rules are still simple enough to fit all the information in a single view. At the very least the UI will need next/previous buttons to step through the various approaches. As far as coloring/shading/shaping goes, this is complicated enough that it's probably justified to make that debug info an explicit part of the API that defines them.

Another tricky part of this is that one waypoint's placement often depends on how some other waypoint was laid out. We'll need to define those dependencies.

A stretch goal that I can't think of how to do without writing a parser and interpreter:

  1. Defined in a DSL so it can be modded

Making this moddable may not be worthwhile anyway. That'd probably just be a bug magnet for people that break their own game with bad rules.

@DanAlbert DanAlbert added the development environment Issues concerning developper onboarding label Jul 14, 2023
@DanAlbert DanAlbert self-assigned this Jul 14, 2023
@DanAlbert DanAlbert added this to 9.0.0 Jul 14, 2023
@github-project-automation github-project-automation bot moved this to Todo in 9.0.0 Jul 14, 2023
DanAlbert added a commit to DanAlbert/dcs_liberation that referenced this issue Jul 28, 2023
DanAlbert added a commit to DanAlbert/dcs_liberation that referenced this issue Jul 28, 2023
DanAlbert added a commit to DanAlbert/dcs_liberation that referenced this issue Jul 30, 2023
DanAlbert added a commit to DanAlbert/dcs_liberation that referenced this issue Jul 30, 2023
DanAlbert added a commit to DanAlbert/dcs_liberation that referenced this issue Aug 2, 2023
DanAlbert added a commit to DanAlbert/dcs_liberation that referenced this issue Aug 2, 2023
DanAlbert added a commit to DanAlbert/dcs_liberation that referenced this issue Aug 3, 2023
DanAlbert added a commit to DanAlbert/dcs_liberation that referenced this issue Aug 8, 2023
DanAlbert added a commit to DanAlbert/dcs_liberation that referenced this issue Aug 8, 2023
DanAlbert added a commit to DanAlbert/dcs_liberation that referenced this issue Aug 9, 2023
DanAlbert added a commit to DanAlbert/dcs_liberation that referenced this issue Aug 9, 2023
DanAlbert added a commit to DanAlbert/dcs_liberation that referenced this issue Aug 9, 2023
This is a replacement for the existing "zone geometry" classes that are
currently used for choosing locations for IP, hold, and join points.
The older approach required the author to define the methods for
choosing locations at a rather low level using shapely APIs to merge or
mask geometries. Debug UIs had to be defined manually which was a great
deal of work. Worse, those debug UIs were only useable for *successful*
waypoint placement. If there was a bug in the solver (which was pretty
much unavoidable during development or tuning), it wasn't possible to
use the debug UI.

This new system adds a (very simple) geometric constraint solver to
allow the author to describe the requirements for a waypoint at a high
level. Each waypoint type will define a waypoint solver that defines one
or more waypoint strategies which will be tried in order. For example,
the IP solver might have the following strategies:

1. Safe IP
2. Threat tolerant IP
3. Unsafe IP
4. Safe backtracking IP
5. Unsafe backtracking IP

We prefer those in the order defined, but the preferred strategies won't
always have a valid solution. When that happens, the next one is tried.

The strategies define the constraints for the waypoint location. For
example, the safe IP strategy could be defined as (in pseudo code):

* At least 5 NM away from the departure airfield
* Not farther from the departure airfield than the target is
* Within 10 NM and 45 NM of the target (doctrine dependent)
* Safe
* Within the permissible region, select the point nearest the departure
  airfield

When a solver fails to find a solution using any strategy, debug
information is automatically written in a GeoJSON format which can be
viewed on geojson.io.

Fixes dcs-liberation#3085.
DanAlbert added a commit to DanAlbert/dcs_liberation that referenced this issue Aug 9, 2023
This is a replacement for the existing "zone geometry" classes that are
currently used for choosing locations for IP, hold, and join points.
The older approach required the author to define the methods for
choosing locations at a rather low level using shapely APIs to merge or
mask geometries. Debug UIs had to be defined manually which was a great
deal of work. Worse, those debug UIs were only useable for *successful*
waypoint placement. If there was a bug in the solver (which was pretty
much unavoidable during development or tuning), it wasn't possible to
use the debug UI.

This new system adds a (very simple) geometric constraint solver to
allow the author to describe the requirements for a waypoint at a high
level. Each waypoint type will define a waypoint solver that defines one
or more waypoint strategies which will be tried in order. For example,
the IP solver might have the following strategies:

1. Safe IP
2. Threat tolerant IP
3. Unsafe IP
4. Safe backtracking IP
5. Unsafe backtracking IP

We prefer those in the order defined, but the preferred strategies won't
always have a valid solution. When that happens, the next one is tried.

The strategies define the constraints for the waypoint location. For
example, the safe IP strategy could be defined as (in pseudo code):

* At least 5 NM away from the departure airfield
* Not farther from the departure airfield than the target is
* Within 10 NM and 45 NM of the target (doctrine dependent)
* Safe
* Within the permissible region, select the point nearest the departure
  airfield

When a solver fails to find a solution using any strategy, debug
information is automatically written in a GeoJSON format which can be
viewed on geojson.io.

Fixes dcs-liberation#3085.
DanAlbert added a commit that referenced this issue Aug 9, 2023
This is a replacement for the existing "zone geometry" classes that are
currently used for choosing locations for IP, hold, and join points.
The older approach required the author to define the methods for
choosing locations at a rather low level using shapely APIs to merge or
mask geometries. Debug UIs had to be defined manually which was a great
deal of work. Worse, those debug UIs were only useable for *successful*
waypoint placement. If there was a bug in the solver (which was pretty
much unavoidable during development or tuning), it wasn't possible to
use the debug UI.

This new system adds a (very simple) geometric constraint solver to
allow the author to describe the requirements for a waypoint at a high
level. Each waypoint type will define a waypoint solver that defines one
or more waypoint strategies which will be tried in order. For example,
the IP solver might have the following strategies:

1. Safe IP
2. Threat tolerant IP
3. Unsafe IP
4. Safe backtracking IP
5. Unsafe backtracking IP

We prefer those in the order defined, but the preferred strategies won't
always have a valid solution. When that happens, the next one is tried.

The strategies define the constraints for the waypoint location. For
example, the safe IP strategy could be defined as (in pseudo code):

* At least 5 NM away from the departure airfield
* Not farther from the departure airfield than the target is
* Within 10 NM and 45 NM of the target (doctrine dependent)
* Safe
* Within the permissible region, select the point nearest the departure
  airfield

When a solver fails to find a solution using any strategy, debug
information is automatically written in a GeoJSON format which can be
viewed on geojson.io.

Fixes #3085.
@github-project-automation github-project-automation bot moved this from Todo to Done in 9.0.0 Aug 9, 2023
Dragonius pushed a commit to Dragonius/dcs_liberation that referenced this issue Aug 9, 2023
This is a replacement for the existing "zone geometry" classes that are
currently used for choosing locations for IP, hold, and join points.
The older approach required the author to define the methods for
choosing locations at a rather low level using shapely APIs to merge or
mask geometries. Debug UIs had to be defined manually which was a great
deal of work. Worse, those debug UIs were only useable for *successful*
waypoint placement. If there was a bug in the solver (which was pretty
much unavoidable during development or tuning), it wasn't possible to
use the debug UI.

This new system adds a (very simple) geometric constraint solver to
allow the author to describe the requirements for a waypoint at a high
level. Each waypoint type will define a waypoint solver that defines one
or more waypoint strategies which will be tried in order. For example,
the IP solver might have the following strategies:

1. Safe IP
2. Threat tolerant IP
3. Unsafe IP
4. Safe backtracking IP
5. Unsafe backtracking IP

We prefer those in the order defined, but the preferred strategies won't
always have a valid solution. When that happens, the next one is tried.

The strategies define the constraints for the waypoint location. For
example, the safe IP strategy could be defined as (in pseudo code):

* At least 5 NM away from the departure airfield
* Not farther from the departure airfield than the target is
* Within 10 NM and 45 NM of the target (doctrine dependent)
* Safe
* Within the permissible region, select the point nearest the departure
  airfield

When a solver fails to find a solution using any strategy, debug
information is automatically written in a GeoJSON format which can be
viewed on geojson.io.

Fixes dcs-liberation#3085.

(cherry picked from commit 5cb4c36)
Dragonius added a commit to Dragonius/dcs_liberation that referenced this issue Sep 1, 2023
commit e073f013c8e4eb4de3c3ab9bfc7e5882c2a8fa59
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Fri Sep 1 15:55:22 2023 +0300

    added geos  python package

commit 31564d5c3931b15132f2ffa684dc40dffb47c45f
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Fri Aug 25 16:04:24 2023 +0300

    float to int

commit bf6e00d3340c031dc0229b6adcabcb01b02e9a8c
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Fri Aug 25 15:51:02 2023 +0300

    enabled logging "Death of untracked ground unit "

commit f45c90c6ac525beb0eb8797f34fc70d976de6604
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu Aug 24 18:29:52 2023 +0300

    fixed type error

commit bfe85d23f950d234d864fa5ce11c9f3d7a7956ac
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu Aug 24 18:27:23 2023 +0300

    size update

commit 8d2b57cc17f154ee9ce8e18b263611e236cf0f3e
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sun Aug 20 18:06:55 2023 +0300

    crusshing bugs on lenght of frontline

commit e4121b11f19a447d3162c544779b2975c2e289f0
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sun Aug 20 16:13:53 2023 +0300

    Update up_the_coast enemy faction

    Switch default enemy faction to Russia 1975 from the now-removed Russia 1975 (Mi-24).

    (cherry picked from commit 782389bd89b86d642614bc8e2fd96b76e7b42857)

commit ed3df64ca15db7fe45be870d80828fe54d430c48
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sun Aug 20 00:52:39 2023 +0300

    Fixes to frontline length, now it works

commit 0b1b4398f631b00d0371a203389394bbf51ca180
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sun Aug 20 00:25:15 2023 +0300

    changed frontline lenght as it should be taken
    from options

    (cherry picked from commit d52e3a5b2bae6df3cf9bc27214090234699e7be6)

commit 73fb519e10ab421c857ce9304b96c6d7493e9a70
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Aug 12 23:26:28 2023 +0300

    km to meters

commit 325cc6903205d645248f855d72bc2134f252d97b
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu Aug 10 15:53:18 2023 +0300

    added back to -1 to control waypoinys

commit a7978fa372fb3956ab9819576dc32704fb4f5d70
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu Aug 10 15:21:47 2023 +0300

    fixed versiom

commit 157df31283d0b20c7bf84589cfc18dce9b9a873e
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Aug 9 22:03:21 2023 +0300

    updated and removed:
            - A-10C Thunderbolt II (Suite 3)

commit 8ea7da774350f706cf88c6d4d2bded6bac37d15c
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Aug 9 22:02:57 2023 +0300

    there was 1 more extra Ara_vdm that needed
    commented

commit 14ff5c06df43c775858d5f3771f66ad3f0f3fd9e
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Aug 9 21:14:41 2023 +0300

    disabled the Ara_vdm until its added

commit 6cd1f910e09e43471792fda063ad697a128d5cef
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Aug 9 21:03:00 2023 +0300

    updated mountain of pain, more defence ,
    more helicopter stands

commit ee4d10eaf53d582d2e7e41ceb3fb13b33c14fe3a
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu Aug 3 01:01:50 2023 -0700

    Add test cases found by fuzzer.

    (cherry picked from commit 257f2072e8410bfca8044de1941de8135afb61ef)

commit b6dc5f6eb56c398ef4a5eb2e00e9f3a87db3a996
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu Aug 3 00:47:19 2023 -0700

    Add fuzz testing for waypoint solvers.

    This fuzz test generates random inputs for waypoint solvers to check if
    they can find a solution. If they can't, the debug info for the solver
    is dumped to the testcases directory. Another test loads those test
    cases, creates a solver from them, and checks that a solution is found.
    Obviously it won't be immediately, but it's a starting point for fixing
    the bug and serves as a regression test afterward.

    (cherry picked from commit 1708baf7722339a3edff2c855d0c8fa085bf0cf0)

commit 2ed1a9219f791f9d71f4bf410920a08c8ca83391
Author: Dan Albert <dan@gingerhq.net>
Date:   Sat Jul 29 21:49:17 2023 -0700

    Migrate IP placement to WaypointSolver.

    (cherry picked from commit 6b6c4f4112fbc35da6a233aea6f3350cfe795721)

commit 053d1078282815387e6e20aeb65c34fd11cb9360
Author: Dan Albert <dan@gingerhq.net>
Date:   Mon Jul 17 23:35:21 2023 -0700

    Build common interface for waypoint geometry constraints.

    This is a replacement for the existing "zone geometry" classes that are
    currently used for choosing locations for IP, hold, and join points.
    The older approach required the author to define the methods for
    choosing locations at a rather low level using shapely APIs to merge or
    mask geometries. Debug UIs had to be defined manually which was a great
    deal of work. Worse, those debug UIs were only useable for *successful*
    waypoint placement. If there was a bug in the solver (which was pretty
    much unavoidable during development or tuning), it wasn't possible to
    use the debug UI.

    This new system adds a (very simple) geometric constraint solver to
    allow the author to describe the requirements for a waypoint at a high
    level. Each waypoint type will define a waypoint solver that defines one
    or more waypoint strategies which will be tried in order. For example,
    the IP solver might have the following strategies:

    1. Safe IP
    2. Threat tolerant IP
    3. Unsafe IP
    4. Safe backtracking IP
    5. Unsafe backtracking IP

    We prefer those in the order defined, but the preferred strategies won't
    always have a valid solution. When that happens, the next one is tried.

    The strategies define the constraints for the waypoint location. For
    example, the safe IP strategy could be defined as (in pseudo code):

    * At least 5 NM away from the departure airfield
    * Not farther from the departure airfield than the target is
    * Within 10 NM and 45 NM of the target (doctrine dependent)
    * Safe
    * Within the permissible region, select the point nearest the departure
      airfield

    When a solver fails to find a solution using any strategy, debug
    information is automatically written in a GeoJSON format which can be
    viewed on geojson.io.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/3085.

    (cherry picked from commit 5cb4c363e357e3c7452c12df6e2a106078c1dc19)

commit 9bc1fe7e3d1756fade1286245d4dfb35c3eed909
Author: Dan Albert <dan@gingerhq.net>
Date:   Mon Aug 7 23:24:40 2023 -0700

    Add __str__ for Distance.

    (cherry picked from commit 13ccf3f5368689de8106c1f7c37288344edab649)

commit 60c851d7e27aec1b794a07ba5e4487d56fbea400
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu Aug 3 00:58:05 2023 -0700

    Add name to Doctrine.

    (cherry picked from commit 42fa5dce9484755bf2c73062ec4176d33db37758)

commit 38729fd9a02af6007ca641cbbe133df390670b49
Author: Starfire13 <72491792+Starfire13@users.noreply.github.com>
Date:   Tue Aug 8 14:02:28 2023 +1000

    Add F-15E Suite 4+ to Allied Sword faction.

    Fuzzle's Allied Sword campaign has a custom faction in the campaign
    yaml, and it wasn't updated when Razbam's Mudhen was released. I've
    added it in.

    (cherry picked from commit d1baf33d8604c7995ae716aaa7b36e469fdd5ba2)

commit 4e5bfbe008fd995d271650ca6001543f3a9edbaa
Author: Dan Albert <dan@gingerhq.net>
Date:   Tue Aug 1 18:26:06 2023 -0700

    Note the ARA Veinticinco de Mayo in the changelog.

    (cherry picked from commit a0ab46af8fc5ad0ac9ebe7e8ed5c6851e2433483)

commit c377b4c6bb229a80263dbb401858bf4a6eb3f73d
Author: Nosajthedevil <78634843+Nosajthedevil@users.noreply.github.com>
Date:   Tue Aug 1 20:26:08 2023 -0500

    Add support for ARA Veinticinco de Mayo.

    Includes an Argentina 1982 faction for testing purposes, although it's
    sparse because of a lack of assets in DCS.

    Note that the carrier is mispelled as the Vienticinco in the game.

    Includes prerequisite pydcs update.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/3123.

    (cherry picked from commit 58ede1b8889188f095faaf7eeee543a45fbb3145)

commit 01e0b3169c97523985f851627d4f197565c4281c
Author: Dan Albert <dan@gingerhq.net>
Date:   Tue Aug 1 18:05:16 2023 -0700

    Update pyinstaller and hooks.

    https://github.com/pyinstaller/pyinstaller-hooks-contrib/commit/3149c93016c796291210b839e13b97d1a45f6448
    is needed to fix the pyinstaller package for shapely 2.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/3127.

    (cherry picked from commit e72b1b3ae79706283024608e82a6ca3d7abf2d8c)

commit 1a1fe2b0b5c5d4963be3f5e6fed09543de2f6bfa
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Aug 9 20:56:56 2023 +0300

    comment out major version tester

commit b714d54712a648273fc94c5068bdcf67329cb535
Author: Dan Albert <dan@gingerhq.net>
Date:   Sun Jul 30 17:26:30 2023 -0700

    Fix shapely error during mission generation.

    It seems shapely doesn't allow `unary_union` on collections any more.

    (cherry picked from commit 2c51e126b747fa20283b3454f918515aa8ad5a53)

commit 1d1c8b4df1a44f6337619f082314a61ed0b07131
Author: Dan Albert <dan@gingerhq.net>
Date:   Sun Jul 30 14:28:43 2023 -0700

    This brace belonged to the now deleted "settings".

    (cherry picked from commit 4f04a2d142860aa749ea664cdbf8ad3ae10d8012)

commit f9686a1258abbe16118a29365c92a9ff1b9f44f4
Author: Dan Albert <dan@gingerhq.net>
Date:   Sat Jul 29 21:49:46 2023 -0700

    Add TODO note to joinzonegeometry.

    (cherry picked from commit 899620c242e7327a84acabeff27f18aa04ea4fec)

commit d7a9e37f5355aeaeff44d5dee85b0d0855014f16
Author: Dan Albert <dan@gingerhq.net>
Date:   Sat Jul 29 21:50:02 2023 -0700

    Add __str__ for Heading.

    (cherry picked from commit 431165ab83f553e5d58b6d246e82056ebe29263f)

commit b76734bcdfd18111cd4ae66520bd3bab5d2b823c
Author: Dan Albert <dan@gingerhq.net>
Date:   Sat Jul 29 21:27:10 2023 -0700

    Update Shapely.

    I need the new to_geojson API.

    (cherry picked from commit 703bb98b62763aab7170fee309e7ee18325daf0d)

commit 3e20bbfa2f921e45585ef07b9a5eac9d4f2b45c8
Author: Starfire13 <72491792+Starfire13@users.noreply.github.com>
Date:   Sun Jul 30 11:19:21 2023 +1000

    Add Operation Noisy Cricket campaign.

    (cherry picked from commit 6610162c442621749d540c42aa71933394f4f8dd)

commit 38aa292a6ea069cbf2055160a1d16ccc3ed16613
Author: Starfire13 <72491792+Starfire13@users.noreply.github.com>
Date:   Sun Jul 30 07:32:05 2023 +1000

    Add BLU-107 to OCA/Runway loadout

    I had originally opted for iron bombs for anti-runway as the AI sometimes miss with the Durandals because they release them from too high an altitude. But after using them for a while, I am finding they appear to do no worse than with iron bombs. So, might as well let them use the dedicated anti-runway weapon.

    (cherry picked from commit 09f0b0b315181033344d03892ca2e50368d22a80)

commit 7939dbeaecef2bc3088c43a0e441fdafd1cd5866
Author: Dan Albert <dan@gingerhq.net>
Date:   Fri Jul 28 21:29:34 2023 -0700

    Stop gap fix for AI speed to nav points.

    This isn't a great fix for the reason I mention in the comment, but it's
    quick and actually is accurate since it looks like we don't actually
    handle formation speeds correctly in most cases...

    This is probably as "fixed" as this is going to get for now since most
    of the flight planning code is in the process of being rewritten.

    https://github.com/dcs-liberation/dcs_liberation/issues/3113
    (cherry picked from commit d81ed26fa6dbb6b48e0af54540d0fbb7f72c6ac6)

commit 2358b8e95df23a05cb488f0e529a29ad85914dad
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu Jul 27 22:22:15 2023 -0700

    Always re-enable loadout UI for member 0.

    (cherry picked from commit 159120b487a3f64770160b45ffb4a527a3c1eaab)

commit 7ad67b72411a051a88f83bffdfea1a52ac87041c
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu Jul 27 22:19:30 2023 -0700

    Fix synchronization of loadouts on change.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/3111.

    (cherry picked from commit 160d464f9a614b0ad8ed38991551f469ecd7a5c6)

commit dd633288847d8b70515382d0b56c3642199fc95d
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Tue Jul 25 20:44:37 2023 +0000

    Bump certifi from 2022.12.7 to 2023.7.22

    Bumps [certifi](https://github.com/certifi/python-certifi) from 2022.12.7 to 2023.7.22.
    - [Commits](https://github.com/certifi/python-certifi/compare/2022.12.07...2023.07.22)

    ---
    updated-dependencies:
    - dependency-name: certifi
      dependency-type: direct:production
    ...

    Signed-off-by: dependabot[bot] <support@github.com>
    (cherry picked from commit b893378abe30de8a7209120956e7ca08d02a4744)

commit 2fb8a52510441eb297c4ff702cf87d88279e0169
Author: Starfire13 <72491792+Starfire13@users.noreply.github.com>
Date:   Mon Jul 24 11:11:49 2023 +1000

    Add Mirage F1 to Iran 2015

    (cherry picked from commit f9f2c79aeb4db51d74e61f4b0125b22b9313757f)

commit e25e7976307a8b7efabc09830c8a3c2b14fbe0f3
Author: Dan Albert <dan@gingerhq.net>
Date:   Sun Jul 23 12:26:01 2023 -0700

    Configure target points for F-15E S4+.

    We don't need explicit configuration of initial points. The plane
    automatically configures any steerpoint immediately before a target
    point as an initial point.

    Target offset points and aim points have not been implemented because I
    can't find any information the describes their intent.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/3088.

    (cherry picked from commit c7a991687c6c4e4302e32f9f650c669380dfbdab)

commit 9556c276ec8fa0fa62f0045cf6525c496ddf7718
Author: Dan Albert <dan@gingerhq.net>
Date:   Sun Jul 23 11:06:35 2023 -0700

    Handle TOT offsets for patrolling flight plans.

    https://github.com/dcs-liberation/dcs_liberation/issues/3107
    (cherry picked from commit d2152a259cdc3359ea7a8b7ae6723e5d471cc316)

commit e24118b4b3c05f2174da63f4e596639a2bab4d64
Author: Dan Albert <dan@gingerhq.net>
Date:   Sun Jul 23 11:01:34 2023 -0700

    Fix negative starts when changing TOT offsets.

    (cherry picked from commit 5fd29d8c9db840900c56a708556db877aa111113)

commit 1250825b5d6aa05118f404a5bb637bf2033cd446
Author: Dan Albert <dan@gingerhq.net>
Date:   Sun Jul 23 10:56:57 2023 -0700

    Fix altering negative TOT offsets.

    https://github.com/dcs-liberation/dcs_liberation/issues/3107
    (cherry picked from commit d74ba4a6c97c2fbbd8fe057c314e3171ecabd183)

commit edc8039c61ee15f810c70cf40b7639bc1ac20da0
Author: Dan Albert <dan@gingerhq.net>
Date:   Sat Jul 22 18:27:45 2023 -0700

    Add laser code support for the viper.

    (cherry picked from commit e1dba91b253ea63965a16fe9a34a2a6e9b0aac49)

commit 5cf4381a4966ade14251e93dd5cf193cd8c54c4b
Author: Dan Albert <dan@gingerhq.net>
Date:   Sat Jul 22 18:16:13 2023 -0700

    Remove unused config data from laser code yamls.

    (cherry picked from commit ca5ec65ed170ec18683ac21b16297c335e49e495)

commit 8c9d9ba80520454f83c5a340f257152606e97dd4
Author: Dan Albert <dan@gingerhq.net>
Date:   Sat Jul 22 18:12:16 2023 -0700

    Clarify that the assigned code is for the TGP.

    (cherry picked from commit 374dd6da9af195f4801406bf8c7941088b0c9579)

commit 7781a93c38131b9e2c2ccfb7e98dfd9b435bff6f
Author: Dan Albert <dan@gingerhq.net>
Date:   Sat Jul 22 17:23:43 2023 -0700

    Hide properties that have better controls.

    The weapon laser codes can be set more easily from the weapon laser code
    combo box. Setting the properties explicitly here will just cause
    conflicts and annoying UI bugs. Hide those properties from the UI.

    (cherry picked from commit e8df6a3d5434d8e50581c1ea60af0c2de3334765)

commit 1c0adc8a10ca52cf5ebc17c483e3c081786f8d7d
Author: Dan Albert <dan@gingerhq.net>
Date:   Sat Jul 22 16:32:11 2023 -0700

    Add UI for selecting weapon laser codes.

    This makes it possible to have the right laser code set for hot start
    aircraft that (typically) do not allow changing laser codes when the
    engine is on.

    (cherry picked from commit e901d1f538397353bf97d45797020d670ab16c82)

commit e52082767c1013cf44703ad02c1f237cfe6d4621
Author: Dan Albert <dan@gingerhq.net>
Date:   Sat Jul 22 17:12:01 2023 -0700

    Do not draw empty property rows.

    (cherry picked from commit efc2915628d5c9b4db7bf3b6ccd450136c1eb886)

commit be80dcf176a30452dafc1fc8efa1437510f602b8
Author: Dan Albert <dan@gingerhq.net>
Date:   Fri Jul 21 21:44:07 2023 -0700

    Add laser code property info for the Strike Eagle.

    (cherry picked from commit 6c5b35d704e7abbe202b6bfce155135154155d73)

commit c7cc9021970ef405237582e92be56ddaab35e484
Author: Dan Albert <dan@gingerhq.net>
Date:   Fri Jul 21 22:46:39 2023 -0700

    Add laser code config parsing and prop generation.

    (cherry picked from commit 01e4ebc70695e4329e1c2b914fc31906fdc4e6d6)

commit b3a950e0c97463b15e2c8328f72e29341e384a4a
Author: zhexu14 <64713351+zhexu14@users.noreply.github.com>
Date:   Sun Jul 23 10:58:38 2023 +1000

    In NewUnitTransferDialog, only list reachable control points.

    This PR addresses #3066 by restricting the list of control points in the
    new unit transfer dialog to control points reachable from the origin.
    This change centralizes the logic for reachable nodes to the
    TransitNetworkBuilder class.

    This PR was tested by:

    1. Loading save from #3066
    2. Using cheat menu to destroy runway at Wadi al Jandali
    3. Purchasing units at any of the other control points
    4. Pass the turn to allow the purchase to complete
    5. Initiating a unit transfer from the other control point and
    confirming that Wadi al Jandali does not show up in the list

    Steps 2-4 are needed as no ground units show up at Melez when loading
    the save directly from the latest dev build.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/3066.

    (cherry picked from commit b10395715dbdf9e8ce5b8afbffd27d05473f8dd9)

commit c03ef0160256640a222013a78965f6c063ec2c7d
Author: Dan Albert <dan@gingerhq.net>
Date:   Sat Jul 22 16:31:19 2023 -0700

    Add UI for acquiring/releasing TGP laser codes.

    (cherry picked from commit ad8f3d61ea1dcf3c24ccc0a877478bfa880787d2)

commit c6db645f18dd5da5c5cb9bcbbc4ae9e40ef8ad73
Author: Dan Albert <dan@gingerhq.net>
Date:   Sat Jul 22 14:31:38 2023 -0700

    Pre-allocate laser codes for FLOTs and flights.

    (cherry picked from commit 85e11711b6cd6593d953814ef2798a9c58143587)

commit de61ccfb979b419d4cff4dfb3f932469cbf24b02
Author: Dan Albert <dan@gingerhq.net>
Date:   Sat Jul 22 14:01:02 2023 -0700

    Create a checked, releasable type for laser codes.

    The release behavior isn't used yet, but I'm working on pre-allocating
    laser codes for front lines and flights to make it easier for players to
    pick the laser codes for their weapons.

    (cherry picked from commit 31289adb50a3160c66bd0ab6439da3148cd0e455)

commit d550afea0de1060b4f8f6ba5b0f1e7f8ecd12937
Author: Dan Albert <dan@gingerhq.net>
Date:   Sat Jul 22 17:30:40 2023 -0700

    Fix crash when changing squadrons in new flight.

    (cherry picked from commit d3269bca93aa8f5511219df9c3fac3c11c4dc7c2)

commit 5a8110c6803a731ce2b42bbaf660a545cbf037ce
Author: Dan Albert <dan@gingerhq.net>
Date:   Sat Jul 22 14:19:53 2023 -0700

    Add missing LANTIRN clsid.

    (cherry picked from commit e35e49e05eca6bfd6d5ae50d751762049965f3d8)

commit 03728d3b3ccd429fd2dcbba65615c6fe5b10bc6b
Author: Dan Albert <dan@gingerhq.net>
Date:   Fri Jul 21 23:35:01 2023 -0700

    Add tests for LaserCodeRegistry, clean up.

    * Store a deque rather than an iterator so it can be pickled
    * Remove mangling from staticmethod (and rename now that it's no longer
      a generator)
    * Rename "get" to "alloc" to make the mutation clear
    * Move to its own package (the changes I'm working on make this no
      longer mission generator specific)
    * Remove useless exception class. It's never caught so the unique type
      isn't needed

    (cherry picked from commit 91b56b157372625ec05ee6bc01e072ac361bce2d)

commit a8e0fb90a291a60eed49242a1c83fb1547ee7320
Author: zhexu14 <64713351+zhexu14@users.noreply.github.com>
Date:   Sun Jul 23 05:35:44 2023 +1000

    Fix default faction selection when changing campaigns.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/1491.

    (cherry picked from commit 6475c6d1ac23f67987268e7b7beda0c0ec3a576b)

commit 091ba9eae067f2825d3ffb79e4834e621d70cf31
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Mon Jul 24 21:44:01 2023 +0300

    Allow per pilot loadouts and properties.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/3092.

    (cherry picked from commit 48fff39409d46c22e9408c4b673b63c3dfd59c18)

commit f62411f8b32f733210f44f398e9c2d36d5035cb0
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu Jul 20 23:16:05 2023 -0700

    Update pydcs.

    Needed for the fix for all aircraft of the same type sharing whatever
    properties were last set.

    (cherry picked from commit 2d8cc12a37c0d0ec5fa96b196eb65db9f98299b7)

commit 8a22687863c157d3f3e1ed006690a7ab18d314f4
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Mon Jul 24 21:43:26 2023 +0300

    Improve UI for flight properties.

    Use the new data from pydcs to improve the properties UI:

    * Use human readable names
    * Use appropriate control types
    * Limit min and max values as appropriate for each property
    * Show labels

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/3090.

    (cherry picked from commit f7d5db7f1e23930501d5cd57fb866adc3900b595)

commit b5171155afdb84be81b5e1bda154afbc4f1aad83
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Wed Jul 19 10:40:19 2023 +0000

    Bump word-wrap from 1.2.3 to 1.2.4 in /client

    Bumps [word-wrap](https://github.com/jonschlinkert/word-wrap) from 1.2.3 to 1.2.4.
    - [Release notes](https://github.com/jonschlinkert/word-wrap/releases)
    - [Commits](https://github.com/jonschlinkert/word-wrap/compare/1.2.3...1.2.4)

    ---
    updated-dependencies:
    - dependency-name: word-wrap
      dependency-type: indirect
    ...

    Signed-off-by: dependabot[bot] <support@github.com>
    (cherry picked from commit 0a82c2b3d1885506d4514ff0eeeec3b2200c8046)

commit 80c8c93598610bcc3b1366fdcc58d4c58bddaeaa
Author: zhexu14 <64713351+zhexu14@users.noreply.github.com>
Date:   Tue Jul 18 10:07:01 2023 +1000

    Fix anti-runway task generation for LGBs.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/894.

    (cherry picked from commit a5eeb837838d07cb5e1fce26f4af2c4773ab7446)

commit 7d59008e20a1ae9a2dd1b1cd11ac19b0377dda22
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jul 15 20:18:29 2023 +0300

    noupdate

commit aa50d4989e352957b233eeb039ada20246a8228c
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jul 15 20:17:32 2023 +0300

    removed Air spawns and added more iads stuff

commit 089d9d0f4c0869bd5629f49b2577acb52430ab4b
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jul 15 16:57:31 2023 +0300

    Added Air respawn

commit c6c000385f10ead242f8d68871cf4616d99935e0
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jul 15 16:44:23 2023 +0300

    No update

commit d5ccd5455d83671277252c2bc11d0f0a4bf9c7b1
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jul 15 16:43:06 2023 +0300

    changed [1],[1] to [1][,2]

commit 978eadefc3b67cb8dba6878dcbffc24b4c4cea33
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jul 15 16:31:47 2023 +0300

    added AAA and Some IADS Basic stuff

commit 9013bbc3a487f44aa2d3fccd67e32ce88ee35ce2
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jul 15 09:22:44 2023 +0300

    remove DCSUDPMissionDataExport.lua

commit 4404b3a2ff8ff7d492a376d4b0284d6d73907025
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jul 15 09:17:29 2023 +0300

    Add cheats for destroying and repairing runways.

    (cherry picked from commit 1f73e02d1507af4e5b364eb1170346cbb4c7c05c)

commit b530dd46e6b27053ea744e2df96b8d83bc9d601c
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu Jul 13 21:14:30 2023 -0700

    Fix canceling transfers when the airbase is full.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2955.

    (cherry picked from commit aced4d3ef50bc41090780b1a2f7fc4e7298b61bb)

commit d6fc4b34c57531b9aec597bc11309ea3dbe5cf15
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu Jul 13 20:54:26 2023 -0700

    Add warnings for invalid fast-forward settings.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2739.

commit 94ad0b68fb29a026e2c82e573c10cd8c8f07ecec
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu Jul 13 20:24:51 2023 -0700

    Fix off-by-one error in waypoint deletion.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/3067.

    (cherry picked from commit 2a29dd4886b9b5f31fa15a2ab77549cb9e355f41)

commit 5cf2b3b9a1891e70b237c68bffb0e274564b91bf
Author: zhexu14 <64713351+zhexu14@users.noreply.github.com>
Date:   Fri Jul 14 13:16:27 2023 +1000

    Allow more helicopters to operate from LHAs and CVs.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/3072.

    (cherry picked from commit fa5cabace349d7159c3f91b1c2a5a42ab27cb8d7)

commit f5ebbe0e4ba3a01845312b45fb6f3986328a212f
Author: Dan Albert <dan@gingerhq.net>
Date:   Wed Jul 12 19:44:02 2023 -0700

    Always initialize IADS coalition lua tables.

    These are read unconditionally, but were only initialized when the
    coalition had nodes. When a coalition had no nodes, this caused a nil
    access. It's unclear if that had any symptoms, but I expect at the very
    least it would break the remainder of the script (so a non-functioning
    blue IADS if the red IADS had no nodes).

    There's a very small chance this is the culprit behind
    https://github.com/dcs-liberation/dcs_liberation/issues/3073.

    (cherry picked from commit 8c6d8547326b92a0f32d01b1c8031e773b18cb0b)

commit 829330b4ea12facfb63142249b0f5902596efdf3
Author: Dan Albert <dan@gingerhq.net>
Date:   Tue Jul 11 20:16:59 2023 -0700

    Generate anti-ship missions with group attack.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/3068.

    (cherry picked from commit 9a59db1ed8c030b854c6a81a392b9aa9b0078c08)

commit 0ce93559b0f126792fd97ea130c986e418c1d0e7
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Jul 12 20:00:47 2023 +0300

    test liberation version cap builder

commit e80896a5cf5091f3f87bb3059585f97292f59098
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Jul 12 20:00:08 2023 +0300

    remove debug text

commit 46af3906b8cc9c197f347eaadd52ec561679067c
Author: Dan Albert <dan@gingerhq.net>
Date:   Tue Jul 11 21:55:40 2023 -0700

    Improve IP selection near threat zone centers.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2754.

    (cherry picked from commit 19976989ca54485876e550fa17a42b5379ab2395)

commit 45f63ca900ac3509c000733f872cccba1c13ccd7
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Mon Jul 10 20:18:08 2023 +0300

    Clean up remaining `Flight.from_cp` users.

    The preferred API for this has been `Flight.departure` for a while.

    (cherry picked from commit b549af9cb7c252de76c20e1d4655dc281c0d091d)

commit 4c82cd37fc08166fb077540d35d36e0ca6ceb422
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Sun Jul 9 14:03:27 2023 +0000

    Bump tough-cookie from 4.0.0 to 4.1.3 in /client

    Bumps [tough-cookie](https://github.com/salesforce/tough-cookie) from 4.0.0 to 4.1.3.
    - [Release notes](https://github.com/salesforce/tough-cookie/releases)
    - [Changelog](https://github.com/salesforce/tough-cookie/blob/master/CHANGELOG.md)
    - [Commits](https://github.com/salesforce/tough-cookie/compare/v4.0.0...v4.1.3)

    ---
    updated-dependencies:
    - dependency-name: tough-cookie
      dependency-type: indirect
    ...

    Signed-off-by: dependabot[bot] <support@github.com>
    (cherry picked from commit dc6a18ccb0e73694d07d08ea71857f5a0d23e88f)

commit 2778ce3a7543ee91ea7cc63808b561abc9c930d7
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sun Jul 9 00:33:28 2023 +0300

    mission updates, still missing factories
    Widehide update.

commit 04b27035d7daf4581f843662b9ccdcd0707f1363
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sun Jul 9 00:04:48 2023 +0300

    added 26 ammo depots

commit d167038fc243240e92278160ba4197495bd79ea5
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jul 8 23:45:48 2023 +0300

    added more plains

commit 937906129ecff7c82ec32cd654428bf0d86f05db
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jul 8 22:18:56 2023 +0300

    added barcap

commit f58f5fc8112a777d613fdd46dc6526929995405c
Author: Dan Albert <dan@gingerhq.net>
Date:   Tue Jun 27 23:27:45 2023 -0700

    Fix waypoint drag and drop.

    The fix for https://github.com/dcs-liberation/dcs_liberation/issues/3037
    wasn't complete. It seems this `- 1` was here to work around the UI
    wrongly having two takeoff points... Now that we fixed that, this also
    needs to go.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/3059.

    (cherry picked from commit 02c9fe93c54e641e270e22df996195f6ec0b3cf3)

commit 3d7e7e2deba9de397ce33bfb1456cc744970abfa
Author: Dan Albert <dan@gingerhq.net>
Date:   Tue Jun 27 18:05:57 2023 -0700

    Make save game requirement even more obvious.

    (cherry picked from commit 82c234b09edd46e6c53c3cadf348146e7e50fd9d)

commit 0d3bd40d597c1c8b05b2dfc4d58c0d305f78cba0
Author: Starfire13 <72491792+Starfire13@users.noreply.github.com>
Date:   Tue Jun 27 21:10:07 2023 +1000

    Add F-15E Suite 4+ squadrons.

    (cherry picked from commit 427df21da58aa88c5d261ef92a1e6ed5d6021166)

commit 3d65afaeb59ef718ee25d89570900b86b3c140f4
Author: Starfire13 <72491792+Starfire13@users.noreply.github.com>
Date:   Tue Jun 27 21:15:55 2023 +1000

    Add LST to final_countdown_2.yaml

    (cherry picked from commit 13a64002862d8a2465cce96eec99cda58d87c2ba)

commit 0a7b588b19df3f0abe6d3426b5b72c8a4fdebf3a
Author: Dan Albert <dan@gingerhq.net>
Date:   Mon Jun 26 22:55:20 2023 -0700

    Move WW2 factions to WW2 transports.

    Only for those that require the WW2 asset pack. There don't appear to be
    any free WW2 transports.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/3039.

    (cherry picked from commit 054b422cad5a25d6eff0b0729e7c2285365330ae)

commit 8d9d9f2c2ca0017dd343c23670be20ca98d05b7f
Author: Dan Albert <dan@gingerhq.net>
Date:   Mon Jun 26 22:44:36 2023 -0700

    Make loadout/properties tab scrollable.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/3044.

    (cherry picked from commit d54d90659340c9c2607612e8ed65a770e1996b05)

commit 52c115913177b2b271003c91978ca2e98fb3150e
Author: Dan Albert <dan@gingerhq.net>
Date:   Mon Jun 26 21:30:44 2023 -0700

    Allow factions to specify their cargo ship type.

    https://github.com/dcs-liberation/dcs_liberation/issues/3039
    (cherry picked from commit bb36b8cad3982122681400b3d8957f6d9b355215)

commit fbfab5aac09fb687a9d8ada7909618e154fc1c16
Author: Dan Albert <dan@gingerhq.net>
Date:   Mon Jun 26 21:30:22 2023 -0700

    Add unit data for the Handy Wind.

    (cherry picked from commit c482b497dba8b77f8c6082f4395fe68ede2e3cae)

commit 0944c9305404805c00b12e9f9d73da5d8d0fe544
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Mon Jun 26 20:32:26 2023 +0300

    updated mountain of pain version number and Desc

commit 907e3160667f700960dec6a96cdb2480bf2bdead
Author: Starfire13 <72491792+Starfire13@users.noreply.github.com>
Date:   Mon Jun 26 16:05:15 2023 +1000

    Fix F-15E Suite 4+ loadouts for the DCS AI.

    DCS AI cannot yet use LGBs.

    A2G loadouts for anti-unit have been switched to CBU-97s, which appear
    to be the most effective weapon type.
    A2G loadouts against static targets (OCA/aircraft, OCA/runway, strike)
    have been change to Mk82s and Mk84s.

    (cherry picked from commit 266c453c99d01e4b15cf2e04a2ae56b64deaa822)

commit 8e9d8c1c6d8cbdadf643043f7c995b219677b718
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sun Jun 25 19:23:31 2023 +0300

    added  Patriot_Battery back
    and updatet missins and widehide

commit 99538d63ce8849d031406ec2e426859d94eb6cad
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sun Jun 25 16:46:22 2023 +0300

    update missions, changed Super patriot to Widehide

commit 92d350fefeaf1dae772ba1e91e8a46781cef83e3
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sun Jun 25 15:26:55 2023 +0300

    Super patriot to Widehide and fixed exec_ to exec

commit 427e47f95d782eaab6243bb7ce7d4e39ac4e0e7b
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jun 24 08:25:48 2023 +0300

    rollback banners

commit bcf49d34c6966954887dcb34fc55c367d81584e7
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu Jun 22 20:46:28 2023 -0700

    Add radio config for the new F-15E.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/3028.

    (cherry picked from commit 658a86dff57c411136adbcc4f8a242274c85f994)

commit 3fe8e14c83f09e85cea8f85976b0bf3e9add97da
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu Jun 22 18:49:09 2023 -0700

    Razbam F-15E banner and icon.

    Just reusing the old one.

    https://github.com/dcs-liberation/dcs_liberation/issues/3028
    (cherry picked from commit d31644c46a8241b9150eb231c270c9755378fb99)

commit dafe440c88855c4edae52ff6f941098a76f820ad
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu Jun 22 18:42:30 2023 -0700

    Add Razbam F-15E to factions with the old F-15E.

    https://github.com/dcs-liberation/dcs_liberation/issues/3028
    (cherry picked from commit f27c9f5a3d2968dab068844eee76b9ee9ec3ffd9)

commit 01a12da64160b9cc24b7589a0c64a92ec3db2b27
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu Jun 22 18:36:13 2023 -0700

    Add YAML file for Razbam Strike Eagle.

    The old DCS AI F-15E is sticking around because the two have very
    different weapon sets for now, so it's probably better to use the AI-
    only one for squadrons that don't expect players.

    I've avoided renaming the old one (we probably should name it "... (AI)"
    for clarity) because the rename will break save compat. I have added a
    _new_ name that new campaigns can use though.

    https://github.com/dcs-liberation/dcs_liberation/issues/3028
    (cherry picked from commit f805febd438546c829be02a15c1b82cff82d5924)

commit 54b024af2bcacffeab0ec7005ffd427fbe6afa5e
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu Jun 22 18:07:44 2023 -0700

    Update pydcs (Strike Eagle).

    https://github.com/dcs-liberation/dcs_liberation/issues/3028
    (cherry picked from commit dca02fea3162b78b8085eae4352fce42a0a70856)

commit 6c4001c21b73559361930b9309e6d4cc08942814
Author: Starfire13 <72491792+Starfire13@users.noreply.github.com>
Date:   Fri Jun 23 10:47:05 2023 +1000

    Add loadouts for Razbam F-15E Strike Eagle.

    (cherry picked from commit f97cd5d28ff8acaad147980e2ebaf9e5039bb755)

commit a95ef4d51d4be3fa4046838dc2e6492c8799921d
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jun 24 07:57:12 2023 +0300

    fixes to super

commit 0e195dfa4a655f5e00305ef143f0a23d6e244d3a
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Jun 21 22:36:12 2023 +0300

    bump pyinstaller version

    This PR bumps pyinstaller version to fix issues with build.

    (cherry picked from commit ab02cd34c59bdba9320a6a82d6663e02c9af6a61)

commit 2b141b07c0db33524a928ac359bb2352388d1fbb
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Jun 21 22:35:28 2023 +0300

    Make waypoint altitudes editable.

    (cherry picked from commit b250fe2f1e53516e9d03750081107fed05d45c1d)

commit b0c16119b8007e93c01dc0ce9c4e736d7e85bd2a
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Jun 21 22:34:47 2023 +0300

    Add Sinai campaign: Exercise Bright Star.

    (cherry picked from commit 9fe31859d3b70a73b51223fc7f6ffbc9df88ace0)

commit 771568ee7e1b4c31b968b771c9b095f6d366c7b1
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Jun 21 22:33:53 2023 +0300

    Add Mi-8 to Egypt's faction

    (cherry picked from commit 430d33c1448f4bb5a15fcad1cfcd864b9e3eab75)

commit 7b67a6c708bc35ba49885a3e02c86dd6d8529324
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Jun 21 22:30:21 2023 +0300

    restore killed_ground_units as it is relied on to track scenery kills

    This PR fixes a regression introduced in
    https://github.com/dcs-liberation/dcs_liberation/pull/2792 where
    refactoring meant that scenery deaths were not tracked correctly.

    This PR has been tested by striking a scenery target and confirming that
    it appears in state.json and is updated in Liberation. I've also
    confirmed that ground units are tracked.

    (cherry picked from commit c74b603d81ea8c124fd1c4c6990171caae2409ff)

commit b53bab33a0e934569a1d7f83c40e24cf11f714f7
Author: Nosajthedevil <78634843+Nosajthedevil@users.noreply.github.com>
Date:   Tue Jun 13 12:36:17 2023 -0500

    Update OV10A Weapons files

    (cherry picked from commit 5815401e73d467d30cf3b6c9e41b2f9a0d78bfdf)

commit 274a8965dd251a5d4d663277fc0c04a02948c589
Author: Starfire13 <72491792+Starfire13@users.noreply.github.com>
Date:   Thu Jun 15 00:46:26 2023 +1000

    Add Chengdu J-7B to Egypt_2000

    (cherry picked from commit f463fe50f2ffb8d9be69b536c6aead04817880a6)

commit 604c33a505b2d4d73464582eb8a0e4d12a9585b3
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Jun 21 22:29:12 2023 +0300

    Add missing units to Bluefor Modern

    (cherry picked from commit f60bf628973584c9b0d526c683a48a2e2d4505cb)

commit 08c59ae33f2919b7a717747bad0a88d047bf0aa3
Author: Dan Albert <dan@gingerhq.net>
Date:   Sun Jun 11 23:38:36 2023 -0700

    Basic Sinai support.

    Not ready (most importantly no landmap).

    https://github.com/dcs-liberation/dcs_liberation/issues/2979
    (cherry picked from commit b18b3719042d083634add8770d26bde5c5c6acfe)

commit e5be46ca78ae900ba3d3024eb042ea73155e4529
Author: Dan Albert <dan@gingerhq.net>
Date:   Sun Jun 11 23:37:49 2023 -0700

    Beacons for Sinai.

    https://github.com/dcs-liberation/dcs_liberation/issues/2979
    (cherry picked from commit 9c7e16d12105018faa5d54d9334921df2f3e757e)

commit 536ed1007d073d5b4ea99af234d2f6d75e3fc320
Author: Dan Albert <dan@gingerhq.net>
Date:   Sun Jun 11 23:39:48 2023 -0700

    Fix Scenic Inland yaml, fixing NGW.

    (cherry picked from commit 87e869d96325f35e2cc248a0de40d9a243f92c66)

commit bce05f5be6327e642288ce1d23b8ad24c4ae5847
Author: Dan Albert <dan@gingerhq.net>
Date:   Sun Jun 11 23:35:00 2023 -0700

    Update pydcs.

    Includes Sinai terrain export.

    https://github.com/dcs-liberation/dcs_liberation/issues/2979
    (cherry picked from commit 4a059a4f8baa6c09a85a34c6ddee926a974a79c1)

commit b0ec021b356d879bacdaa330d06e065189da380a
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Jun 21 22:24:42 2023 +0300

    Handle game over.

    The contents are completely uninteresting, but at least it's visible.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/978.

    (cherry picked from commit 9d43eb8f032127f223a768ac9f9a71aa19cb7bf5)

commit 2b8ceefbccf6caa8861961634c0cfaa80bb665b8
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Jun 21 22:23:38 2023 +0300

    Add Egyptian faction.

    I figured it's a good time to add an Egyptian faction since we now have
    the Sinai map.

    (cherry picked from commit 33ca77e3d1a74f7d900ac475bf4ef10c343e9861)

commit 897deb7399790f01caf75dc59f5c13e10b706eff
Author: Dan Albert <dan@gingerhq.net>
Date:   Sun Jun 11 20:59:58 2023 -0700

    Update Fuzzle's campaigns.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2970.

    (cherry picked from commit ecaf84ea552e92c303160a7a48963f12626a37fd)

commit c0aa5fee1779352034edbf9439645d072a8f4f25
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sun Jun 11 10:03:31 2023 +0300

    update to miz

commit dd7d61f378f716879fae1cf561fa19dfbfe65c59
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sun Jun 11 09:56:17 2023 +0300

    fix yaml

commit 0ddd3ebe04e6b6e83a231b0da910d14fd34ccdaf
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sun Jun 11 09:48:57 2023 +0300

    Rename Patriot Super

commit 104ac9c9bf3aa2eafef3f2c73d8f68624086934b
Author: Raffson <Raffson@users.noreply.github.com>
Date:   Sat Jun 10 02:03:41 2023 +0200

    Add beacons for Sinai

    (cherry picked from commit 3b5af93e2d5cc8600d5321b79aa9a66786adf1a7)

commit e856771053978f79b634a2443e5d3538e6e3b234
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jun 10 23:02:35 2023 +0300

    Updates and fixes. Super patrioe downdont work yeat

commit 316ca549dc54ef1fcbef79e2fbb87085b451a53f
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jun 10 22:11:31 2023 +0300

    tru get super patriot to work

commit 590d46ab4ca3d79b41afe71395293fc9aad9075a
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jun 10 22:01:56 2023 +0300

    Changes tu Super patriot, key error

commit 4dd4567538298e37f3024d511a0f2e8222dc6c6f
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jun 10 20:33:27 2023 +0300

    added super patriot

commit 4d35920e7ee3089e8284de3be308e15cfdbae331
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat Jun 10 20:32:47 2023 +0300

    remove json and add super patriot and add git e

commit 758691e2f9f12faecf8b72268e13f81aba9f6460
Author: Dan Albert <dan@gingerhq.net>
Date:   Wed Jun 7 21:51:55 2023 -0700

    Make overfull airbase display scrollable.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2974.

    (cherry picked from commit c45ac50370459a5d8109abac2e269bbbab3f9951)

commit dfba73027d5932d3fa597339340d98ed1e4abf9a
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Fri Jun 9 17:43:33 2023 +0300

    ADDED AIR ASSAULT to frontlines

commit 33871c807d61f7752a8f33359369e9a072aba5d8
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Fri Jun 9 17:21:09 2023 +0300

    mountain of pain update

commit 52251f14b5221497bd2d3b84e95c87e2868894cf
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Jun 7 21:15:29 2023 +0300

    liberation 7.10 changes

commit 60943f70577eada1e8d841907d46456c9b13a095
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Jun 7 20:07:43 2023 +0300

    merge to 7.1 hard copy

commit 965dfe7d9f164f5beae2201b9adff44d803b9b29
Merge: 51e7110c b358817e
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed Jun 7 18:43:06 2023 +0300

    Merge commit 'b358817edf781994c8b258fb2521829d80209e2b' into develop

commit b358817edf781994c8b258fb2521829d80209e2b
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed May 31 21:59:12 2023 +0300

    returned FRONTLINE_LENGTH back

commit 458e349a766899f608cde96cf26dcd215be90350
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed May 31 21:52:53 2023 +0300

    DeprecationWarning: 'exec_' will be removed in
     the future. Use 'exec' instead.

commit 0f339a85c3edcb522445dd799f7d70341fb11114
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed May 31 21:29:59 2023 +0300

    added import from settings

commit 7fe585adc344e61386a2a8447b6edf581e032d6e
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed May 31 21:18:48 2023 +0300

    added back FRONTLINE_LENGTH = 40000

commit c3d4357841a95003c248e0e2556a22d4d121e165
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed May 31 21:15:56 2023 +0300

    added frontline size to settings

commit 51e7110cdd22b580794a7abeaf0806a82480d1bf
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed May 31 20:45:02 2023 +0300

    added back mountain_of_pain yaml

commit 976de8b7d3a0754659215b9623175b1471808ee4
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed May 31 20:40:34 2023 +0300

    Squashed commit of the following:

    commit 880188babd70c4bbe3bb1ff2804af214ee52c371
    Author: Dan Albert <dan@gingerhq.net>
    Date:   Thu May 25 21:00:42 2023 -0700

        Make the flight details menu modal.

        Prevents players from accidentally deleting flights they're currently
        viewing, which would cause an error.

        Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2911.

        (cherry picked from commit 64e2213f282f02d972dffd89a1c8b85fbb5bbfc7)

    commit c9b32a4075fa67e29d6ef357537dcaa0657afde8
    Author: Dragonius <Blackerhawker@hotmail.com>
    Date:   Wed May 31 20:37:37 2023 +0300

        "Maximum number of pilots per squadron", 2 to 1

    commit c069abf99d94cba111d502b7cc19c981fcb6a9db
    Author: zhexu14 <64713351+zhexu14@users.noreply.github.com>
    Date:   Mon May 29 23:25:29 2023 +1000

        issue 2922: make BAI plannable against missile and costal sites

        (cherry picked from commit e0240130935d8748b14ed31f10b636daa615316a)
        (cherry picked from commit 81a00981eb831528f16dfd30f19708a145565847)

    commit 6469e956898f2d285b5ce63cb0b0d4c83a2bb12c
    Author: Dan Albert <dan@gingerhq.net>
    Date:   Thu May 25 21:39:07 2023 -0700

        Allow save compat to exist for two versions.

        We want to clean up eventually, but allowing it to exist in both develop
        and the release branch makes cherry picks easier.

        (cherry picked from commit c80e5b259fd0cf731d1de609b7529d9ede936323)

    commit f4d89e80b55417dd4c7a7eecc6cd8be89deffe0d
    Author: Dragonius <Blackerhawker@hotmail.com>
    Date:   Mon May 29 18:54:14 2023 +0300

        added : before minutes and after seconds

    commit cec29e675a50a9625c49cfe41d2ef9ff6d67d1f0
    Author: Dragonius <Blackerhawker@hotmail.com>
    Date:   Thu May 25 17:40:18 2023 +0300

        updates

    commit fe3b7e80249c4a230d2f557723d8f2a0ed20870f
    Author: Dragonius <Blackerhawker@hotmail.com>
    Date:   Wed May 24 17:54:23 2023 +0300

        added
        /src
        /src/pydcs

        (cherry picked from commit 8ef360c38e035ffab272fe4bb977361a4e059aa6)

commit 880188babd70c4bbe3bb1ff2804af214ee52c371
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu May 25 21:00:42 2023 -0700

    Make the flight details menu modal.

    Prevents players from accidentally deleting flights they're currently
    viewing, which would cause an error.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2911.

    (cherry picked from commit 64e2213f282f02d972dffd89a1c8b85fbb5bbfc7)

commit c9b32a4075fa67e29d6ef357537dcaa0657afde8
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed May 31 20:37:37 2023 +0300

    "Maximum number of pilots per squadron", 2 to 1

commit c069abf99d94cba111d502b7cc19c981fcb6a9db
Author: zhexu14 <64713351+zhexu14@users.noreply.github.com>
Date:   Mon May 29 23:25:29 2023 +1000

    issue 2922: make BAI plannable against missile and costal sites

    (cherry picked from commit e0240130935d8748b14ed31f10b636daa615316a)
    (cherry picked from commit 81a00981eb831528f16dfd30f19708a145565847)

commit 6469e956898f2d285b5ce63cb0b0d4c83a2bb12c
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu May 25 21:39:07 2023 -0700

    Allow save compat to exist for two versions.

    We want to clean up eventually, but allowing it to exist in both develop
    and the release branch makes cherry picks easier.

    (cherry picked from commit c80e5b259fd0cf731d1de609b7529d9ede936323)

commit f4d89e80b55417dd4c7a7eecc6cd8be89deffe0d
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Mon May 29 18:54:14 2023 +0300

    added : before minutes and after seconds

commit cec29e675a50a9625c49cfe41d2ef9ff6d67d1f0
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 25 17:40:18 2023 +0300

    updates

commit fe3b7e80249c4a230d2f557723d8f2a0ed20870f
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed May 24 17:54:23 2023 +0300

    added
    /src
    /src/pydcs

    (cherry picked from commit 8ef360c38e035ffab272fe4bb977361a4e059aa6)

commit 2478aae2c097884845c95b7b29816afe91b14865
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed May 24 18:03:39 2023 +0300

    Revert "added Mountain_of_pain WIP"

    This reverts commit 1454ab2fb24004d5704ddcfaa0fac2ba429916cb.

commit dda262598c54453bdb8c9b6d2d0baa5228af08bb
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed May 24 18:02:26 2023 +0300

    Revert "Merge branch 'develop' into Working_7.0.2"

    This reverts commit d6bae22f62dddf27381be322eb6ad5354ce5103a, reversing
    changes made to 1454ab2fb24004d5704ddcfaa0fac2ba429916cb.

commit 5dfdb494bf85e6f22ae483b0e366aed1141c370a
Merge: 8ef360c3 d6bae22f
Author: Jari Luukkonen <Dragonius@users.noreply.github.com>
Date:   Wed May 24 17:59:19 2023 +0300

    Merge pull request #6 from Dragonius/Working_7.0.2

    Working 7.0.2

commit d6bae22f62dddf27381be322eb6ad5354ce5103a
Merge: 1454ab2f 8ef360c3
Author: Jari Luukkonen <Dragonius@users.noreply.github.com>
Date:   Wed May 24 17:58:31 2023 +0300

    Merge branch 'develop' into Working_7.0.2

commit 8ef360c38e035ffab272fe4bb977361a4e059aa6
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed May 24 17:54:23 2023 +0300

    added
    /src
    /src/pydcs

commit 8d9666b8cb7c80989b5d2d53c6311475da77c4dd
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed May 24 17:48:00 2023 +0300

    Squashed commit of the following:

    commit 1454ab2fb24004d5704ddcfaa0fac2ba429916cb
    Author: Dragonius <Blackerhawker@hotmail.com>
    Date:   Wed May 24 17:44:10 2023 +0300

        added Mountain_of_pain WIP

    commit 25cab5dbb245c574d15d370a108d6f5a74eafc4b
    Author: Dragonius <Blackerhawker@hotmail.com>
    Date:   Sat May 20 16:54:55 2023 +0300

        Changes to tar  and bar cap and add super patriot

    commit a1869b171d1b5f1e5ee9009f7e565203da21afc3
    Author: Dragonius <Blackerhawker@hotmail.com>
    Date:   Sat May 20 08:58:33 2023 +0300

        adding tests

commit 1454ab2fb24004d5704ddcfaa0fac2ba429916cb
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Wed May 24 17:44:10 2023 +0300

    added Mountain_of_pain WIP

commit 25cab5dbb245c574d15d370a108d6f5a74eafc4b
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat May 20 16:54:55 2023 +0300

    Changes to tar  and bar cap and add super patriot

commit a1869b171d1b5f1e5ee9009f7e565203da21afc3
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat May 20 08:58:33 2023 +0300

    adding tests

commit ee39e38a2d2c172fd5e9532620c694ebe06e967d
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat May 20 01:36:16 2023 +0300

    removed files

commit 255de505aeda7b30ba5bd2d92cc276b59c06a511
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat May 20 01:29:03 2023 +0300

    added super

commit cc76c40d9cf291a435aa60d4b284adfad002595d
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:57 2023 +0300

    added git ignore

commit 14fbfae126cf34c852c5005debc30039da788695
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat May 20 01:09:47 2023 +0300

    re balancing to old changes

commit f5d454c11a6865fc5efc856d7df3857f32277761
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Sat May 20 00:07:54 2023 +0300

    rebase Version 2

commit 97007ccdb21084cfa7c98e36b73d064a9d1bc78a
Merge: 4881dcb5 0b91e00a
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 21:11:39 2023 +0300

    Merge branch 'develop' of github.com:Dragonius/dcs_liberation into develop

commit 4881dcb5e3548fe99522785f113250cb5608f2ae
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:56:53 2023 +0300

    rebase, again

commit 80f59c6be179f79d912935eba262e6c1c20f953c
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu May 18 20:45:34 2023 +0300

    Add livery selection dropdown to air wing config.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/1861.

    (cherry picked from commit 8158cc71125a3d98670f73a70c95ad2e0c9e28fa)

commit 0c2ee12f7de821ea0b4f6dced4a32af9e3bdc0e0
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:45:23 2023 +0300

    hump hup pydcs

commit be976418abd353bd7c2379b33cbb8bd0d6535912
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:45:23 2023 +0300

    Allow manual SAM orientation.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2479.

    (cherry picked from commit 03671bbfb0622cb6346481bad582862c81598207)
    (cherry picked from commit 9cca987b2ae7443922c1b0d22dff9bda021bd315)

commit 767f1ebd3b75073c4eb339f4787d4c2a5c874d88
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:45:12 2023 +0300

    Do not create refueling tasks without tankers.

    If the package does not have a tanker, the refueling task will cause AI
    flights to go to an arbitrary tanker, which may cause them to fly
    through enemy territory or even go farther than their arrival airbase.

    It's also not remotely possible for every AI flight in the game to
    refuel in most missions. There's typically one tanker and dozens of
    aircraft that would previously attempt to refuel.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2716.

    (cherry picked from commit a6c5b03212784d4dba4acaba972d4b8f70d21e48)
    (cherry picked from commit 4cbf28677f6e1d0e4c39ef496ac4b2cfcdf15fad)

commit 82028cc8156792d7501b9eb25a860fb1209ae068
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:58 2023 +0300

    fixed modifier button to transports

commit fc97b06e9eac64574f59a889c5ee40726c2d15df
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:58 2023 +0300

    removed alt motifier that add  multiplay
    to transfere units

commit 180bd53a727206ff5813034b1aebe3f46b22378a
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:58 2023 +0300

    removed transfere modifier. it currently dont work

commit d610d801f8660b5d755b793f97c56d7ec6ee3218
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:58 2023 +0300

    removed system that add flight to mysql
    database and gathers data on local database.

commit 965614c0219ee2c0ade90c63cf5eb51d65a219eb
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:58 2023 +0300

    added Awacs Tot motifier cross files

commit 4782d2327d755135b86c8fd7fb0d23a175b8ccce
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:58 2023 +0300

    forgot to add patriot Super yaml

commit a7b912c305f0834566e2d42b974970d0d1d63405
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:57 2023 +0300

    changes Cas radius, back to 80Km

commit d776b017dd669ee1d192a4d3c88fcf2db1ea8f9f
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:57 2023 +0300

    sha1 to sha512

commit 3ccc114aeb046df82adf7aa0976693295e10f722
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:57 2023 +0300

    Delete f14 yaml
    cas is int , not float, changed that
    frontline is 80km, did put it 8km

commit e2eafecda68895fb299eca0e4c56cc48e101d2a8
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu May 18 20:44:57 2023 +0300

    Update pydcs.

    Includes the fix to prevent the livery scanner from crashing on import
    when the Liberation preferences file cannot be parsed.

    https://github.com/dcs-liberation/dcs_liberation/issues/2613
    (cherry picked from commit b4c02767acf2a6585e665fdca88355e1d712b436)

commit 9f00e825c7f408a41f6a01aa5976c0fdfdac4410
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:57 2023 +0300

    Aaded Patriot Super  1.5x 360 Degree defence

commit 9dcd3ab4989ea70b89db9e32f5993bf478e01c71
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:56 2023 +0300

    heading ver 4 . problen that it turns to ground
     units

commit a20306c9b96a365c4429cfdb0152cb339cd94ac7
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:56 2023 +0300

    heading ver 3 , stil no stay on current heading

commit d4503b6b61dfe56fc3c4be197762f0336ba5ac65
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:56 2023 +0300

    heading ver 2  Dont work

commit 15b820f412feabe002830a5593561e09fd617761
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:56 2023 +0300

    first version manual heading

commit 2712bfea7c6b313afabe6fbe192499d0cf536006
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:46 2023 +0300

    Fixed to jump and down

commit fe773c12cc3ef4d1cfff2515e6299af745498f73
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:36 2023 +0300

    added comments

commit 630c1aeae4109f3c1bfdcb833989a9ddc3e6a145
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:44:23 2023 +0300

    Delete ai flight

commit c5abca7536e2e9c10cda6c086e94f6a2327b3946
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu May 18 20:44:23 2023 +0300

    Use task priorities from aircraft yamls.

    Preferred aircraft per task are now determined by a ranking of weights
    stored in the aircraft yaml files. To aid in visualizing the priorities
    across aircraft, Liberation can be run with the argument
    dump-task-priorities to dump a yaml file in Saved
    Games/DCS/Liberation/Debug/priorities.yaml, which will show each task
    along with priority sorted aircraft and their weights.

    The current weights in the data were exported from the existing lists,
    where each position from the bottom of the list was worth 10 (to allow
    some games for less shuffling later).

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2809.

    (cherry picked from commit cce9592ac8862ee8e8180fe98397f2b0da6d1b6f)

commit 98f2b1bd9aeb4b8faa2de0087f077a4ea13230b8
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu May 18 20:44:22 2023 +0300

    Add debug command to dump aircraft priorities.

    https://github.com/dcs-liberation/dcs_liberation/issues/2809
    (cherry picked from commit b69def652e2d0505cfc3b13bf827fdd62d5c4922)

commit 2906f4de003d463bdc10f926aecc38fa75b8c957
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu May 18 20:44:11 2023 +0300

    Export current task priorities to aircraft yamls.

    Nothing fancy. Rank in reversed (so earliest items in the original list
    have the highest index) list * 10 (to leave gaps for balancing).

    https://github.com/dcs-liberation/dcs_liberation/issues/2809
    (cherry picked from commit e297fcbff8626fac99925d72f1bbe28f950c7a6d)

commit 0d55c0fc2e9db627c9e7546da0a4d7b68c66535c
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu May 18 20:43:48 2023 +0300

    Update mypy, fastapi, pydantic.

    mypy update is needed for typing.Self support. It caught an existing bug
    (missing @property on override), and fixed a bug so we can drop an
    ignore.

    Upgrading mypy requires upgrading pydantic to get the newest pydantic
    mypy plugin, and since that's what's driving fastapi it's probably smart
    to upgrade those together.

    (cherry picked from commit 06b74c4ca6a6ae1a1cafa21f10a9c8d5d2691167)

commit c60bcf3d11375a41e7b2ec64063fb7823bb671bf
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:37 2023 +0300

    Tanker tasks from 1,1 to 1,2
    Debrief remove console loggin.
    read and write data over 10MBytes/s

commit 409d2f50c66702f69a478baf7d1180b35386c5ec
Author: zhexu14 <64713351+zhexu14@users.noreply.github.com>
Date:   Thu May 18 20:43:37 2023 +0300

    Track S_EVENT_KILL and S_EVENT_UNIT_LOST as well.

    Catch a few more death signals. Still not perfect but a bit better.

    Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2765.

    (cherry picked from commit 0d257a2c3b48d46525bfffd9593091a6c427e2ae)

commit 4d8e3452d157cdf489ca586e2251f24d95b85342
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:36 2023 +0300

    1024 to 834

commit 6bd5c41ed2df82c8d6dc6754787b0f05f9039f37
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:36 2023 +0300

    Csar addonne. Wip

commit 7399c28a2e6b86fc4c234596cd2b081bf25b5284
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:36 2023 +0300

    kneeboard and Qflight fixes.
    too small screen

commit 1728a743d0ee3fdb55dc0566ff44b66af857c102
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:35 2023 +0300

    ecm option more up from below

commit dfaac598ca5b0b9719e55ab4da0de65bd753736a
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:35 2023 +0300

    resize kneeboard 768x1024 to 1024x1024

commit a672ec8070c71ab56961a6f0e7e32c2fbad2c961
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:35 2023 +0300

    added Tos time to kneeboard about awcs
    also made font smaller

commit c6d327eb58585685dcd3eb0b4b155d34e73ddfc7
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu May 18 20:43:35 2023 +0300

    OptRTBOnOutOfAmmo.Values.ASM to
    OptRTBOnOutOfAmmo.Values.All
    because of
    https://github.com/dcs-liberation/dcs_liberation/issues/2781

commit 7c1bbdf3fd876fca9cf2d9420c146e1a78c4fcb8
Author: Dan Albert <dan@gingerhq.net>
Date:   Thu May 18 20:43:34 2023 +0300

    Fix radio data for the A-10Cs.

    My earlier tests were not accurate enough. It turns out that yes, DCS
    does still do some channel clobbering with these, so fix the radio
    selection to account for that.

    I also fumbled some copy paste between the A-10Cs so the A-10C II
    channel assignment ended up in the wrong section doing nothing...

    (cherry picked from commit d9b4835311f5b9fcef93362bf85cb88f3d17ab09)

commit 3fc33f4b168547a625c0d2f976e03c17bd70d95c
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:34 2023 +0300

    copy paste
    No data for F-14A; it will not be available

commit 72b4522a7c87e6d3cdcd73ab1c04e8b94992bc52
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:34 2023 +0300

    lots of cheat modes. Wip

commit 428e8e3360a80aebc33b9bdf7cee40d845dbec32
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:34 2023 +0300

    flight plan 2 minutes to 4 minutes

commit 16375ac0c4ae8c9f31ff3d75d415cb7605860173
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:34 2023 +0300

    frontline cas 16 to 1

commit 38d77f2244b1170b017d8d39ac902f18f330e533
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:33 2023 +0300

    changed:
    max_speed.mach() * 0.80
    error_factor = 1.10

commit d16cffd86900c381e6bf9a6c298c18148f39d247
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:33 2023 +0300

    kneeboard added Tot

commit 6e19ebdd73a31da785f2682e1f26c54cb3ba91f8
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:33 2023 +0300

    changed package to reversed mode

commit cd262cabd78bb204de7b5cc2f06309386cafb0ca
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:33 2023 +0300

    refuel_time_minutes is 30min minium if there
    are less that 2 fleets

commit 231daa0cb87340f8a6aefd06d3760566541eb324
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:33 2023 +0300

    forget to add add layout to vbox

commit 59b859a495074ee613f173dd386ca02829539d03
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:33 2023 +0300

    cas frontline leght /2 to /3

commit 0450b6640443f32027825162b489c1eed2e0f420
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:32 2023 +0300

    modern aircraft can cas higher

commit b27e41b37098187d1cc266bed8a04a3bae765c98
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:32 2023 +0300

    changed carrier spawn 1 second to 5

commit fe560e544831789a5b9b2f5705fdfe9777e8ad5b
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:32 2023 +0300

    added amount checks. no more that yoy have

commit 512f17db1c41e9dd6ac2f7377f882bf24108bbde
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:32 2023 +0300

    added motifierer to transfere. no over check

commit 12df5b412934a632fe4a31bb00ffc9510c8429e1
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:32 2023 +0300

    added mist event lost unit

commit 1dcccbe80ddd0a5d92b42dad9e1b8d14d5362160
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:31 2023 +0300

    aaded on lua S_EVENT_UNIT_LOST

commit 6d4b284f137b8c73ff72ecc0b9e8223595bd1b15
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:30 2023 +0300

    switched end and start point

commit 48768484eda5bc781bc3f0258b5619654ddac78a
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:30 2023 +0300

    commenting sanitazition

commit cf519b669c150fa8d863d14ceaec202ece9e4642
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:30 2023 +0300

    little changes

commit 160539f920fd6ee69a5d8e435d3917e6fa674e61
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:30 2023 +0300

    smaller windows size

commit 862dfdaa9a33489d38deb86f7613a6d2d4c94160
Author: Dragonius <Blackerhawker@hotmail.com>
Date:   Thu May 18 20:43:29 2023 +0300

    Desired mission duration to 5h max

commit ab866faae82131f5b067f8e1f0e19524f6e462e1
Author: Dragonius <B…
Raffson pushed a commit to dcs-retribution/dcs-retribution that referenced this issue Oct 7, 2023
This is a replacement for the existing "zone geometry" classes that are
currently used for choosing locations for IP, hold, and join points.
The older approach required the author to define the methods for
choosing locations at a rather low level using shapely APIs to merge or
mask geometries. Debug UIs had to be defined manually which was a great
deal of work. Worse, those debug UIs were only useable for *successful*
waypoint placement. If there was a bug in the solver (which was pretty
much unavoidable during development or tuning), it wasn't possible to
use the debug UI.

This new system adds a (very simple) geometric constraint solver to
allow the author to describe the requirements for a waypoint at a high
level. Each waypoint type will define a waypoint solver that defines one
or more waypoint strategies which will be tried in order. For example,
the IP solver might have the following strategies:

1. Safe IP
2. Threat tolerant IP
3. Unsafe IP
4. Safe backtracking IP
5. Unsafe backtracking IP

We prefer those in the order defined, but the preferred strategies won't
always have a valid solution. When that happens, the next one is tried.

The strategies define the constraints for the waypoint location. For
example, the safe IP strategy could be defined as (in pseudo code):

* At least 5 NM away from the departure airfield
* Not farther from the departure airfield than the target is
* Within 10 NM and 45 NM of the target (doctrine dependent)
* Safe
* Within the permissible region, select the point nearest the departure
  airfield

When a solver fails to find a solution using any strategy, debug
information is automatically written in a GeoJSON format which can be
viewed on geojson.io.

Fixes dcs-liberation/dcs_liberation#3085.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
development environment Issues concerning developper onboarding
Projects
No open projects
Status: Done
1 participant