FAForever Forums
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Login

    M28AI Devlog (v228)

    Scheduled Pinned Locked Moved AI development
    575 Posts 56 Posters 1.7m Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • SaverS
      Saver
      last edited by

      Hello maudlin27,

      I noticed that your AI in the control support function influences the Scry ability of the Eye of Rhianne in such a way that the player cannot control the eye himself even if the M28 support function is deactivated. https://replay.faforever.com/24285869

      auch mal fünf gerade sein lassen

      maudlin27M 1 Reply Last reply Reply Quote 1
      • maudlin27M
        maudlin27 @Saver
        last edited by

        @Saver Thanks, hopefully should be sorted now but let me know if you have any issues

        M27AI and M28AI developer; Devlogs and more general AI development guide:
        https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
        https://forum.faforever.com/topic/5331/m28ai-devlog-v150

        1 Reply Last reply Reply Quote 3
        • maudlin27M
          maudlin27
          last edited by

          v197 Update
          19 changes, including:

          • Various niche bugfixes
          • Various changes relating to overflowing mass due to the unit cap, including reater use of quantum gateways and SACUs, getting SACU build power upgrades more commonly, ctrl-king T3 land and air factories if there are loads of them, and being more likely to build game-enders if lots of mass is stored
          • Fixed a bug where disabling unit prioritisation would lead M28 to always build game-ender templates, and could e.g. cause it to build the same unit on repeat
          • Hopefully fixed a bug where enabling shared armies mode in game settings would lead to M28 taking control of the Eye of Rihanne regardless of if M28 had been enabled on the unit
          • 5 mod specific changes (relating to experimentals with no direct fire attack; t3 bombers firing salvos; and building paragon-like units for non-aeon factions)

          Acknowledgements

          • Saver - Noting eye of rihanne issue
          • Vortex and Azraeel – Replay with various error messages relating to M28
          • Wingflier – Replay where M28 failed to build a paragon/equivalent

          M27AI and M28AI developer; Devlogs and more general AI development guide:
          https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
          https://forum.faforever.com/topic/5331/m28ai-devlog-v150

          1 Reply Last reply Reply Quote 4
          • maudlin27M
            maudlin27
            last edited by

            v198 Update
            6 changes, including:

            • Improved logic and bugfix relating to M28's choice of island to drop so it is more likely to drop large mex islands
            • Fixed a bug with calculating enemy air threats that would lead to subs running from inties
            • M28 should no longer go 3rd land on naval maps in a 1v1

            Acknowledgements

            • zwaffel - 1v1 replay against v194 M28

            M27AI and M28AI developer; Devlogs and more general AI development guide:
            https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
            https://forum.faforever.com/topic/5331/m28ai-devlog-v150

            1 Reply Last reply Reply Quote 4
            • maudlin27M
              maudlin27
              last edited by

              v199-200 Updates
              12 changes, including:

              • Strat bombers should no longer target t1 units
              • New logic for strat bombers early on to target enemy mexes and power
              • Improved TMD defence against multiple enemy TML

              Acknowledgements

              • Azraeel – Mentioning that M28 planned bomber changes were giving strange results
              • Fearghal – Noticing tooltip errors for M28, and M28 not working on swamp land city
              • Chucups - Replay where M28 lost to large numbers of TML

              M27AI and M28AI developer; Devlogs and more general AI development guide:
              https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
              https://forum.faforever.com/topic/5331/m28ai-devlog-v150

              1 Reply Last reply Reply Quote 2
              • DoompantsD
                Doompants
                last edited by

                We were talking about AI in our games last night and something that came up is that none of the AI know how to play PhantomX. Is this something that you think would be possible in the future? I imagine the simple part is teaching an AI that they need to break if they're the Phantom, but more complex is simulating how they would come to decide who the other phantoms are and who are the innocents.

                Just a fun thought. Played a few games with M28 though and watching it kite me out is infuriating. Great job. lol

                maudlin27M 1 Reply Last reply Reply Quote 1
                • maudlin27M
                  maudlin27 @Doompants
                  last edited by

                  @Doompants I can't think of a straightforward way of making it work. I've not played phantom but my understanding is that every player is hostile, but that 1 is the 'phantom' with a bonus to resources, and you win if you kill them;
                  in which case the more straightforward options for the AI are either it treats everyone as hostile (which is what I'd expect to happen if you can attack other players), or it ignores units that aren't those of the phantom (which would presumbly make it fairly easy to tell who is the phantom, and also lead to it suiciding units into other players).

                  M27AI and M28AI developer; Devlogs and more general AI development guide:
                  https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
                  https://forum.faforever.com/topic/5331/m28ai-devlog-v150

                  1 Reply Last reply Reply Quote 1
                  • maudlin27M
                    maudlin27
                    last edited by

                    v201 Update
                    9 changes, mostly based on yesterday's rainbow cup games, including:

                    • Improved early T1 bomber so the ACU is less likely to build the air factory ontop of itself, and the bomber is more likely to try killing other engineers even when low health
                    • If the nearest enemy base is killed but their ACU escapes, M28 should reassess where the nearest enemy base is
                    • Land experimentals should be more cautious based on the enemy's global air threat, even if it doesnt detect any nearby air threat
                    • Made the temporary map-wide vision at the start of the game (to tell the AI where civilians are) take place earlier and for less time, so human teammates should no longer get to see if an opponent is going first air.
                    • MAA should be more likely to take into account enemy tanks that are in an adjacent zone and almost in range of them (so less likely to suicide into them).

                    Acknowledgements

                    • Fearghal - Organising and funding the Rainbow Cup Tournament VIII

                    M27AI and M28AI developer; Devlogs and more general AI development guide:
                    https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
                    https://forum.faforever.com/topic/5331/m28ai-devlog-v150

                    1 Reply Last reply Reply Quote 4
                    • maudlin27M
                      maudlin27
                      last edited by

                      V202 Update
                      23 changes, including:

                      • 3 more changes from Bosem Valley RC games (including that strikers should be more likely to attack with auroras than to shadow them; tanks should be more likely to attack when the ACU is in combat)
                      • 8 changes from Adaptive Kusoge RC games (including if the enemy tries hiding their ACU on a transport or in water M28 should, when in a dominant position, try killing them; ACUs with advanced nano should be more aggressive; removed code that would result in a land factory being built if an air factory was currently under construction)
                      • 7 QUIET specific changes, including fixing some late-game issues with factories getting stuck in a cycle of constant enhancements, and multiple paragons being built in the same arti template area)
                      • 5 more general changes, including expanding M28's ACU snipe logic so if an ACU is near-death underwater M28 should consider sniping with torp bombers.

                      Acknowledgements

                      • Fearghal - Rainbow Cup VIII tournament
                      • Azraeel - Replay featuring various late-game issues for M28
                      • TheWatherAI - Replay with pathing related errors (although I was disappointed they then posted a negative review due to incorrectly thinking this was the cause of a crash they suffered)

                      M27AI and M28AI developer; Devlogs and more general AI development guide:
                      https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
                      https://forum.faforever.com/topic/5331/m28ai-devlog-v150

                      1 Reply Last reply Reply Quote 4
                      • maudlin27M
                        maudlin27
                        last edited by

                        V203 Hotfix
                        Mini-update to fix a couple of bugs agead of today’s Rainbow Cup:

                        • Fixed a bug from v202 with M28’s ‘attack ACUs hiding in water’ logic
                        • T2 navy should be got sooner if enemy has t2 navy
                        • Fixed a bug that could cause frigates to suicide if the enemy had a submarine
                        • ACUs should try and stay slightly closer to a stealthed ACU they’re attacking

                        Acknowledgements

                        • Radde - mapgen replay

                        M27AI and M28AI developer; Devlogs and more general AI development guide:
                        https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
                        https://forum.faforever.com/topic/5331/m28ai-devlog-v150

                        1 Reply Last reply Reply Quote 4
                        • maudlin27M
                          maudlin27
                          last edited by

                          v204 Update
                          Small update for a few changes from the Swamp City Redux rainbow cup semi-final game that I had time to put through, with 7 changes, including:

                          • If a teammate's ACU dies in full-share, and later loses their base, M28 should no longer treat that base as a safe location to run to (and so should be less likely to suicide into Wifi and an army of tanks...)
                          • Various adjustments relating to certain AI personalities, including increased use of PD for turtle AI, and decreased use of factories
                          • Certain AI personalities should no longer adopt a 'spam T1' approach to the game even if they had a teammate who was adopting such an approach and died

                          Acknowledgements

                          • Fearghal - RCVIII tournament

                          M27AI and M28AI developer; Devlogs and more general AI development guide:
                          https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
                          https://forum.faforever.com/topic/5331/m28ai-devlog-v150

                          1 Reply Last reply Reply Quote 4
                          • maudlin27M
                            maudlin27
                            last edited by maudlin27

                            v205 Update
                            Update for the first rainbow cup finals match (amongst others) with 30 changes, including:

                            • Swamp City (RC Semi-final) - 5 changes, incl PD placement adjustment, and logic to drop engineers to capture neutral civilians
                            • Kolbut (RC Semi-final) - 7 changes, incl improved T1 bombing of engineers where M28 hasn't gone first air (with clumps of engineers prioritised, and use of micro to increase chances of dropping bombs), and delying T2 land for navy personality
                            • Fortress Ascent II (RC Final) - 12 changes, incl more aggressive GCs when underwater; greater use of PD for turtle AI; more aggressive subs when enemy lacks anti-navy units; and fixing some issues caused by M28 inheriting a far away base (and thinking it can send its air units to that base)
                            • 2 Radde mpagen replays - 3 changes, incl a bugfix that made ACUs too aggressive when on full health
                            • 3 other general or mod specific changes (slightly decreased the advantage M28 wants to engage with outranged units, it should build a higher ratio of asfs to gunships when lacking air control, and slightly adjusted its initial build order for QUIET and LAND)

                            Acknowledgements:

                            • Radde – Mapgen replay
                            • Azraeel – Highlighting M28 heavily stalling mass with its QUIET build order
                            • Fearghal – Rainbow Cup VIII

                            M27AI and M28AI developer; Devlogs and more general AI development guide:
                            https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
                            https://forum.faforever.com/topic/5331/m28ai-devlog-v150

                            waffelzNoobW 1 Reply Last reply Reply Quote 3
                            • waffelzNoobW
                              waffelzNoob @maudlin27
                              last edited by

                              @maudlin27 said in M28AI Devlog (v205):

                              Kolbut (RC Semi-final) - 7 changes, incl improved T1 bombing of engineers where M28 hasn't gone first air (with clumps of engineers prioritised, and use of micro to increase chances of dropping bombs), and delying T2 land for navy personality

                              I'd also suggest for it to change engy targets if there are multiple engineers nearby (indicating a base, u wouldnt want it to drop 1 bomb on expanding engineer and then leave). It was super easy to deal with ai first bomber because it only went for 1 engineer and has predictable aim. The power of an early bomber honestly lies in disrupting all engineer orders by forcing dodges more so than killing 2-3

                              frick snoops!

                              maudlin27M 1 Reply Last reply Reply Quote 0
                              • maudlin27M
                                maudlin27 @waffelzNoob
                                last edited by

                                @waffelzNoob I'm not clear what you mean/what scenario it was easy to beat - are you saying that expanding engineers should be ignored altogether and the bomber should just try and find clumps of engineers (and if it cant it keeps looking)? Or just that it should prioritise groups of engineers over single engineers? If the latter, then that's what the quoted change aims to achieve (although it does depend on whether the AI has intel of the engineers).
                                Engineer targets should also get reassessed when the bomber isn't that close, but once it gets to a certain difference it needs to retain its target to avoid the risk it gets stuck in a cycle of switching targets and never actually dropping a bomb.

                                M27AI and M28AI developer; Devlogs and more general AI development guide:
                                https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
                                https://forum.faforever.com/topic/5331/m28ai-devlog-v150

                                waffelzNoobW 1 Reply Last reply Reply Quote 1
                                • maudlin27M
                                  maudlin27
                                  last edited by

                                  v206 Update
                                  7 changes from 1v1 games against M27 on maps where M27 was initially winning, including:

                                  • Added logic for tanks to do an all-in push to kill an enemy ACU
                                  • Significant increase in the global MAA M28 should consider building.
                                  • ACU should be a bit more aggressive vs enemy air
                                  • Land units should be more aggressive if they outrange the nearest enemy unit and the enemy doesn’t have longer ranged units close by.
                                  • A second air factory should be built on 10km+ maps even in t1 spam mode.

                                  Acknowledgements

                                  • Relent0r - providing a mapgen and a non-mapgen map where M28 was losing to M27 1v1

                                  M27AI and M28AI developer; Devlogs and more general AI development guide:
                                  https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
                                  https://forum.faforever.com/topic/5331/m28ai-devlog-v150

                                  1 Reply Last reply Reply Quote 3
                                  • waffelzNoobW
                                    waffelzNoob @maudlin27
                                    last edited by waffelzNoob

                                    @maudlin27 Sorry, typed that on my phone so it wasn't super clear. What I mean is that it should not always repeatedly try to bomb the same engineer if that engineer did not die after the first bomb (it dodged).

                                    https://replay.faforever.com/24337913 In this replay the AI first bombs me and gets one kill, then repeatedly tries to bomb the same engineers. There's a few issues with this:

                                    1. It's predictable for me what engineer to dodge with
                                    2. If the bomber had gone for the other engineers I would've had to dodge them around which cancels their build queue that I'd then have to requeue, very tedious and in my opinion the main reason early bombers are so powerful. In addition to this my other engineers were not 'ready' to dodge, as they're stood still, so higher chance the bomb lands there
                                    3. Its perfect aim makes it incredibly easy to dodge because it's so predictable. Maybe give it a 50/50 chance to not drop on the engineer's course but behind it, or directly on top of the engineer?

                                    So if the AI can recognise our spawn point, make it so that it won't try to repeatedly go for the same engineer if near our spawnpoint, but switch it up

                                    frick snoops!

                                    1 Reply Last reply Reply Quote 0
                                    • maudlin27M
                                      maudlin27
                                      last edited by

                                      Makes sense, thanks

                                      M27AI and M28AI developer; Devlogs and more general AI development guide:
                                      https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
                                      https://forum.faforever.com/topic/5331/m28ai-devlog-v150

                                      1 Reply Last reply Reply Quote 1
                                      • maudlin27M
                                        maudlin27
                                        last edited by maudlin27

                                        V207 Update
                                        11 changes, mostly relating to the Skadi RC finals game, including:

                                        • More adjustments to t1 bombers to prioritise engineers that haven’t had bombs fired at them
                                        • Fewer land factories should be built by M28 when its base is on an island
                                        • Delayed T3 air if torp bombers are wanted for a nearby enemy naval threat

                                        Acknowledgements

                                        • waffelznoob - notes on M28’s early bomber approach
                                        • Fearghal - RCVIII

                                        M27AI and M28AI developer; Devlogs and more general AI development guide:
                                        https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
                                        https://forum.faforever.com/topic/5331/m28ai-devlog-v150

                                        1 Reply Last reply Reply Quote 5
                                        • maudlin27M
                                          maudlin27
                                          last edited by

                                          v208 Update
                                          Added logic for sharing engineers, along with a couple of bugfixes:

                                          • M28 should now gift an engineer to teammates who ask for one. To request one, use a marker on the area where you want the engineer and say 'M28 please would you be so kind as to give me one of your Engineers' in the marker (or just say 'Engi pls' or some variation thereof). If M28 has a nearby engineer that doesnt have any high priority tasks he should give it to you.
                                          • Added a bunch of redundancies to try and fix rare error messages that would appear when a unit died in a pond
                                          • Fixed some typos with the naval logic that in some cases would result in M28's naval logic erroring out

                                          Acknowledgements

                                          • Vortex - v207 QUIET setons replay

                                          M27AI and M28AI developer; Devlogs and more general AI development guide:
                                          https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
                                          https://forum.faforever.com/topic/5331/m28ai-devlog-v150

                                          1 Reply Last reply Reply Quote 4
                                          • maudlin27M
                                            maudlin27
                                            last edited by

                                            v209 Update
                                            12 changes, mostly relating to improving how M28 plays with certain mods, including:

                                            • If a mod adds a unit with really good shielding M28 should build that shielding in preference to T3 shielding (or its special stacked T3 shielding for protecting game-enders), and should be more likely to build game-enders.
                                            • Fixed an issue with a mod that added multiple upgrades to T3 mexes, including an experimental mex, resulting in M28 thinking the experimental mex was a paragon
                                            • Added a redundancy to better support mods that have upgradable PGens

                                            M27AI and M28AI developer; Devlogs and more general AI development guide:
                                            https://forum.faforever.com/topic/2373/ai-development-guide-and-m27ai-v71-devlog
                                            https://forum.faforever.com/topic/5331/m28ai-devlog-v150

                                            1 Reply Last reply Reply Quote 4
                                            • First post
                                              Last post