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

    M28AI Devlog (v229)

    Scheduled Pinned Locked Moved AI development
    576 Posts 56 Posters 1.8m 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.
    • Z
      zhanghm18 @maudlin27
      last edited by

      @maudlin27 Thank you! I'll try the latest version later

      1 Reply Last reply Reply Quote 0
      • Z
        zhanghm18 @maudlin27
        last edited by zhanghm18

        @maudlin27 Tried it out and the new option is very good! I saw a lot of mod units that had never been built before on the M28.More AI options are a really good idea. We can restrict more of the AI's behavior based on how we like to play the game, which is fun!
        But the V119 seems to break cybran's experimental shield logic. cybran doesn't seem to be building experimental shields at all now.
        Maybe have the AI build an experimental shield for every five normal shields built (at high resources). Maybe this will ensure that the experimental shield doesn't go unnoticed by the AI?
        But I do see AI building some experimental buildings in mods (such as experimental power Generators)
        In addition, I found that the AI still seemed to build engineers repeatedly and self-destruct (in the case of high unit cap occupation, but the enemy's long-range artillery destroyed the AI's shield), it seemed that the AI wanted to build more engineers to replenish the shield on the one hand, and wanted the self-destruct engineer to save the unit cap on the other hand

        1 Reply Last reply Reply Quote 0
        • H
          Hammi
          last edited by

          @maudlin27 Thanks again for your ongoing development of this great AI. Just played a game against the latest version. If you like and have a look at replay #23108870 from 51 mins on. The AI does strange things/nothing to recover from a situation where it has lost all energy generators.

          Surely an exceptional case and probably something not in your key focus. But maybe there is an easy fix to this behavior?

          1 Reply Last reply Reply Quote 0
          • L
            LightWire
            last edited by

            Thanks for the new info for updates. Not sure if this is related to the update, but during a game it looks like there was an error.

            If it's of any help, can post some error info here.

            EXCEPTION_ACCESS_VIOLATION (0xc0000005) at address 0x0067a1a7
            attempted to read memory at 0x5e50a9c1

            warning: Error running lua script: ...mmander forged alliance\mods\m28ai\lua\ai\m28map.lua(745): table index is NaN
            stack traceback:
            ...mmander forged alliance\mods\m28ai\lua\ai\m28map.lua(745): in function `GetClosestPlateauOrZeroAndZoneToPosition'

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

              @lightwire Could you post the replay ID? The 'error running lua script' message is something I could look into.

              @Hammi I'll have a look but if all of M28's power was destroyed then it's not something I'm likely to be able to solve - it should already prioritise building more power in such scenarios, but as the game will be lost if the opponent has killed all of its power, there's a limit to what I can do (without either negatively impacting its normal logic, or further complicating already cpu intensive processes for pausing units when stalling energy)

              @zhanghm18 I can't think of a change in 119 that would've impacted on building experimental shields. If the shields are the same size as normal shields, M28 has great eco (including energy), only has Cybran on the team, and is building scathis and/or t3 arti I'd have expected it to build some.
              For the engi self destruct this is likely a consequence of two competing systems fighting each other for which there isn't really a solution - i.e. it wants more engineers to spend its mass in high eco scenarios, but if it has got rid of all its T1-T2 units and has lots of engineers it will ctrl-K some of its t3 engineers (prioritising those without orders) to free up its unit cap, although I can probably mask the problem slightly more

              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

              H Z L 3 Replies Last reply Reply Quote 0
              • H
                Hammi @maudlin27
                last edited by

                @maudlin27 said in M28AI Devlog (v119):

                @Hammi I'll have a look but if all of M28's power was destroyed then it's not something I'm likely to be able to solve - it should already prioritise building more power in such scenarios, but as the game will be lost if the opponent has killed all of its power, there's a limit to what I can do (without either negatively impacting its normal logic, or further complicating already cpu intensive processes for pausing units when stalling energy)

                I just find it interesting that the AI doesn't actually start again from scratch by building power. It just builds a factory and then sits there.

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

                  Unfortunately the replay desyncs around 26m so I can't see for sure what the circumstances are. At a high level, I'd expect if all factories are destroyed the ACU should try and build a new land factory; if there are engineers they should build power as a high priority; if there are no engineers, the factory should build some. The exception would be if there are enemies near the factory/engineers.

                  In the desynced version the ACU was trying to build a t1 land factory first which is in line with what I'd expect, but was hampered because of the energy drain from its T3 mexes. However, adding a fix for this (pausing T3 mexes) could cause its own problems elsewhere since it's very rare to want to do this.

                  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 0
                  • Z
                    zhanghm18 @maudlin27
                    last edited by zhanghm18

                    @maudlin27 I think that's the reason for the problem. The experimental shield in the MOD is larger than the normal shield SIZE. This resulted in M28 not building them.
                    It should be noted that I remember that the M28 built these larger experimental shields in previous versions. But the problem started with some recent version (sorry, I'm not sure which one).

                    1 Reply Last reply Reply Quote 0
                    • L
                      LightWire @maudlin27
                      last edited by

                      @maudlin27

                      Sure. After the game crashed, It didn't show the reply right away in the replay list.

                      I think this is the one.

                      https://replay.faforever.com/23113989

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

                        @lightwire said in M28AI Devlog (v119):

                        23113989

                        Thanks, the 'table index is NaN' error message looks like an issue with the map where a building got destroyed off-map/something strange happened (as the position of the building in the engine shows as an infinite value), I'll add a check for that in the next update so it doesn't cause a bunch of error messages with M28's logic.

                        Don't know if it would have contributed to the crash or not; I'd have thought it plausible lots of error messages could make a crash more likely, but my change won't necessarily help that as the unit mods being used were generating lots of error messages themselves prior to that point.

                        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 0
                        • maudlin27M
                          maudlin27
                          last edited by

                          v120 Update
                          19 changes, mostly relating to minor bugfixes, including:

                          • New asf/intie hover-micro to increase DPS when targeting slower enemy air units such as transports
                          • New higher priority T1 and T2 radar builder where M28 has a significant force of longer ranged units that lack radar coverage
                          • Fixed an issue for water zone assignemnt in the small area surrounding an island that led to some strange zones on white fire
                          • 4 LOUD/mod changes, including support for upgradable t2 pgens, and observation satellite

                          Acknowledgements

                          • Lightwire – Replay where a map issue caused repeated M28 error messages
                          • Azraeel – LOUD replay
                          • Fertgl – Replay where a megalith got stuck

                          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

                          Z 1 Reply Last reply Reply Quote 4
                          • Z
                            zhanghm18 @maudlin27
                            last edited by

                            @zhanghm18 said in M28AI Devlog (v120):

                            @maudlin27 I think that's the reason for the problem. The experimental shield in the MOD is larger than the normal shield SIZE. This resulted in M28 not building them.
                            It should be noted that I remember that the M28 built these larger experimental shields in previous versions. But the problem started with some recent version (sorry, I'm not sure which one).

                            @maudlin27 hi, I would like to ask if the construction of the larger experimental shield will be solved?

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

                              @zhanghm18 No, I've no plans to support construction of shields that are larger than the normal size

                              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 0
                              • H
                                Hammi
                                last edited by

                                maudlin, I've tried to generate a replay showing the ACU doing nothing except for running in circles when the ACU is the M28's only unit in the game. Replay #23151227
                                I've deactivated all mods except for M28, Total Mayhem, and Black Ops. I hope this one works without desyncs. The interesting part starts around 00:50:00.

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

                                  @hammi Thanks, looks like an issue where if you kill its part-complete land factory when it's trying to rebuild its base and it has no other factories it doesn't try and rebuild it, it'll be fixed in the upcoming release

                                  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 0
                                  • maudlin27M
                                    maudlin27
                                    last edited by maudlin27

                                    v121 Update
                                    Special logic for selens added, along with 14 other changes:

                                    • Selens should try and hide near enemy mexes to ambush unsuspecting engineers
                                    • Fixed various bugs, including one that would break M28 on Dawn (FA mission 2), and a bug with its T1/T2 radar construction logic that could break its engineer logic.
                                    • Increased the proportion of tanks to get relative to T3 mobile arti if M28 gets lots of T3 mobile arti
                                    • 8 LOUD related changes, including stopping building experimental resource generators if it has one, unit prioritisation adjustments, T2 sniperbot enhancement upgrade, prioritising cheaper experimentals over expensive ones, and fixing a bug that meant M28Easy (non-AIX version) wouldn’t work.

                                    Acknowledgements

                                    • QAI3000 – replay with errors in Coop on FA M2 Dawn
                                    • Tematus – Replay/screenshot where M28 had a 0 health air staging unit
                                    • Azraeel – Various LOUD replays including on wip versions of M28
                                    • J.w.w – noting M28Easy fails to work in LOUD
                                    • Hammi – Bug where M28 didn’t rebuild its base after losing it

                                    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
                                    • H
                                      Hammi
                                      last edited by

                                      Thanks, Maudlin. The AI now reliably builds a single land factory after losing its base. But then, nothing happens. Replay (again with some mods enabled, hopefully without causing desyncs): https://replay.faforever.com/23163222

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

                                        @hammi said in M28AI Devlog (v121):

                                        23163222

                                        Unfortunately the replay desyncs for me so I can't investigate. If I was to guess, it's got T3 mexes left over but no pgens and so is stalling power

                                        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 0
                                        • H
                                          Hammi
                                          last edited by

                                          There was nothing left, just the ACU. It built a land factory first and then just went around in circles, never building a power gen or a mex. (ACU was in its spawn point with mex spots around it.)

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

                                            What's meant to happen is the land factory builds an engineer, and that engineer builds the power gen and/or mexes. ACU behaviour is expected since it will by that stage of the game should be terrified of anything that moves and wants to just run instead of spend time building anything (unless enemies get near to it where it might attack them).

                                            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
                                            • First post
                                              Last post