FAForever Forums
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Login
    The current pre-release of the client ("pioneer" in the version) is only compatible to itself. So you can only play with other testers. Please be aware!

    M28AI Devlog (v327)

    Scheduled Pinned Locked Moved AI development
    743 Posts 70 Posters 2.7m Views 5 Watching
    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.
    • M Offline
      Malitarh
      last edited by Malitarh

      Hello! I apologize for my poor English. I would like to express my admiration and gratitude for your work. I recently completed SC, and when I started playing SC FA, I began looking for a stronger bot. At first, by a strange coincidence, I found Sorian. But I soon realized that he was only slightly stronger than the incredibly outdated standard SC FA bot. Then I downloaded FAF and started comparing different bots against each other. It took me about 2 days before I found M28. I needed to organize a series of AI encounters to learn as much as possible about their quality and behavior. And I was completely captivated by the fact that M28 works even on a standard SC FA Steam, let alone its strength.

      Please, congratulate me, I defeated M28 Easy once. On about the 8th attempt. Only team vs team, also filled with M28 Easy...

      But I’m not writing primarily to tell a story. While I was testing the bots, I did the M28 Adaptive against 3 Adaptive bots from the standard FAF set on the Ambush Pass map. He won, and that’s amazing, but he made 3 mistakes:

      1. He repeatedly launched the Gun (Damage&Range) upgrade for the ACU and then cancelled it. The first time, it seemed to me that he decided to take the ACU into battle, and losing 5% of progress wasn’t important. But he did this about 10 more times, once undoing an upgrade that gave 40% progress.

      2. He built the first matter storage facilities in this game very late, even though there was a long period of shortages of matter (due to the destruction of some extractors). And he built them far from his base, where the T2 extractor was located. Although the base had 3 T3 extractors that were quite well protected.

      3. The enemy fired at the T2 generator for a long time, and next to it, out of range of the fire, the first of the T3 builders was building something. As a result, when the generator exploded, he was destroyed, although he could easily have moved away a little.

      Unfortunately, the replay has not been preserved. The match ID is #27813045, but it cannot be viewed.
      However, I will answer all questions if something described cannot be reproduced.

      maudlin27M M 2 Replies Last reply Reply Quote 1
      • maudlin27M Offline
        maudlin27 @Malitarh
        last edited by

        @Malitarh Thanks for the feedback! Unfortunately I'd need a working replay to debug the scenarios you described (as I don't think it's likely I could easily reproduce them from the description).

        M27AI and M28AI developer:
        https://forum.faforever.com/topic/5331/m28ai-devlog-v327
        M28 trophy holders: Radde and Yew (Radde trophy, v309) and Malitarhel (Sladow trophy, v326)

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

          v323 Update
          28 changes, mostly from a dual gap replay and some typos highlighted by Azrael and c04spoon, including:

          • Dual gap eco slot should be more likely to build a game-ender instead of T3 arti (since T3 arti if built in the rear of the base can't hit much)
          • Asfs should be better at protecting T3 arti from strat snipe attempts
          • Land combat units should, if outranged, be less likely to suicide into the enemy
          • 18 reference/typo fixes to various parts of M28. Since these didn't result in errors previously I expect most will relate to niche parts of the code that rarely trigger.

          Acknowledgements

          • Azrael and c04spoon - linking to separate changes made which amongst other things contained fixes for reference/typo errors

          M27AI and M28AI developer:
          https://forum.faforever.com/topic/5331/m28ai-devlog-v327
          M28 trophy holders: Radde and Yew (Radde trophy, v309) and Malitarhel (Sladow trophy, v326)

          1 Reply Last reply Reply Quote 3
          • M Offline
            Malitarh
            last edited by Malitarh

            Something was wrong with the FAF, but here’s the replay file — it’s working.
            https://drive.google.com/file/d/1pFA9iAgP0QiZyQMGo8L0rIm4pHrFsPk0/view?usp=drive_link

            1 Reply Last reply Reply Quote 0
            • M Offline
              Malitarh
              last edited by

              I played another interesting game. I don’t know if the M28 is designed for the smallest maps (less than 5 km), as well as specific maps like ACU Arena, etc.
              I didn’t find any mention of the map size in the description. But it’s definitely weaker under such conditions.

              I defeated the M28 Adaptive, although on maps larger than 5 km I can’t defeat the M28 Easy, except with a modifier of 0.8.

              Here’s the replay:
              https://replay.faforever.com/27835049

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

                Thanks, I'll make a note to have a look. Generally though AIs are much easier to beat on smaller maps compared to larger maps, one reason being players will usually be better with microing their ACU and have fewer parts of the map to focus on at once
                e.g. I'm around 1k rated 1v1 and can comfortably beat M28 on 5km maps, but on 10km maps can only occasionally win.

                M27AI and M28AI developer:
                https://forum.faforever.com/topic/5331/m28ai-devlog-v327
                M28 trophy holders: Radde and Yew (Radde trophy, v309) and Malitarhel (Sladow trophy, v326)

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

                  v324 Update
                  8 changes, mostly relating to SCTA, including:

                  • Adjusted SCTA build order to build wind turbines, and prevented mine layers being built
                  • SCTA T2 tactical nukes can be fired by M28
                  • Added a limit on how long transports should wait to load more engineers before moving out
                  • Low mex map logic shouldn't be applied to sub-5km maps that have more than 2 mexes per player

                  Acknowledgements

                  • Malitarh - replay on sub-5km map where M28 played poorly (note I need access to the other replay where the ACU was locked in an upgrading-cancel upgrade cycle to look into that issue)

                  M27AI and M28AI developer:
                  https://forum.faforever.com/topic/5331/m28ai-devlog-v327
                  M28 trophy holders: Radde and Yew (Radde trophy, v309) and Malitarhel (Sladow trophy, v326)

                  M 1 Reply Last reply Reply Quote 2
                  • M Offline
                    Malitarh @Malitarh
                    last edited by

                    @maudlin27 , Perhaps this wasn’t obvious. I have already sent the replay you were interested in. This is a link to Google Drive in this message:

                    Malitarh said:

                    Something was wrong with the FAF, but here’s the replay file — it’s working.
                    https://drive.google.com/file/d/1pFA9iAgP0QiZyQMGo8L0rIm4pHrFsPk0/view?usp=drive_link

                    Sorry, it’s not available on the FAF server. Only as a local file.

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

                      @Malitarh I don't have access to the replay file (I requested access to it at the time)

                      M27AI and M28AI developer:
                      https://forum.faforever.com/topic/5331/m28ai-devlog-v327
                      M28 trophy holders: Radde and Yew (Radde trophy, v309) and Malitarhel (Sladow trophy, v326)

                      M 1 Reply Last reply Reply Quote 0
                      • M Offline
                        Malitarh @maudlin27
                        last edited by Malitarh

                        @maudlin27
                        I’ve opened access. Sorry, I very rarely use Google Drive. In many other services, copying an open link already changes the file status to “open to everyone via the link.”

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

                          @Malitarh Thanks, checking the replay the enemy AI kept trying to TML M28's ACU when it was upgrading, so it'd cancel the upgrade and move the ACU when it could see the TML missile approaching. However I can refine slightly so it considers if it has TMD that will block the missile.

                          Mass storage not being built would've been that M28 didnt have many engineers in its core base as it was focusing on building units since its base was under near-constant attack (and those engineers it did build had more urgent issues to deal with), but I'll look at having T2 land factories build a few engineers even where it has a T3 HQ if it's lacking storages for a t3 mex.

                          M27AI and M28AI developer:
                          https://forum.faforever.com/topic/5331/m28ai-devlog-v327
                          M28 trophy holders: Radde and Yew (Radde trophy, v309) and Malitarhel (Sladow trophy, v326)

                          M 1 Reply Last reply Reply Quote 2
                          • maudlin27M Offline
                            maudlin27
                            last edited by

                            v325 Update
                            7 changes, including:

                            • M28 should try and build its first/main naval factory with more clearance around it so it's less likely to have T3 units get stuck
                            • Fixed a bug with the land combat logic that was double-counting enemy threats in some cases leading to M28 being over-cautious (when not able to kite the enemy)
                            • Land factories should build more engineers if M28 has a T3 mex in the zone without mass storage
                            • ACUs should consider if they have TMD coverage before cancelling an upgrade when spotting an incoming TML missile

                            Acknowledgements

                            • Fearghal - Highlighting M28's naval factory issues on Adaptive Bloob
                            • Malitarh - Replay with M28 cancelling upgrades repeatedly due to TML missiles that it wasn't threatened by

                            M27AI and M28AI developer:
                            https://forum.faforever.com/topic/5331/m28ai-devlog-v327
                            M28 trophy holders: Radde and Yew (Radde trophy, v309) and Malitarhel (Sladow trophy, v326)

                            1 Reply Last reply Reply Quote 3
                            • C Offline
                              chris12
                              last edited by

                              Hello Maudin!

                              Ive updated faf to the newest version. And ive updated the complete env.nx2 folder ive hosted a new game in faf.

                              Since than i cant start m28.

                              Ive got the following message

                              Hello maudin!

                              I ve updated faf and the complete env.nx2 gamedata folder. I hosted a new game.

                              Since than the game doesnt start with the m28 ai mod. Without it starts perfectly. Ive got following error message fatal error c

                              Unhandled exception:

                              The system cant find the file

                              Program : C:\ProgramData\FAForever\bin\ForgedAlliance.exe
                              Cmd line arguments :

                              Callstack:
                              Unknown symbol (address 0x008d462c)

                              Last 100 lines of log...

                              debug: GpgNetSend ClearSlot 8
                              debug: GpgNetSend ClearSlot 9
                              debug: GpgNetSend ClearSlot 10
                              debug: GpgNetSend ClearSlot 11
                              debug: GpgNetSend ClearSlot 12
                              debug: GpgNetSend AIOption AI: M28 Land Faction 5
                              debug: GpgNetSend AIOption AI: M28 Land Color 1
                              debug: GpgNetSend AIOption AI: M28 Land Team 1
                              debug: GpgNetSend AIOption AI: M28 Land StartSpot 4
                              debug: GpgNetSend AIOption AI: M28 Air Faction 5
                              debug: GpgNetSend AIOption AI: M28 Air Color 2
                              debug: GpgNetSend AIOption AI: M28 Air Team 1
                              debug: GpgNetSend AIOption AI: M28 Air StartSpot 10
                              debug: GpgNetSend ClearSlot 1
                              debug: GpgNetSend ClearSlot 2
                              debug: GpgNetSend ClearSlot 3
                              debug: GpgNetSend AIOption AI: M28 Land Faction 5
                              debug: GpgNetSend AIOption AI: M28 Land Color 1
                              debug: GpgNetSend AIOption AI: M28 Land Team 1
                              debug: GpgNetSend AIOption AI: M28 Land StartSpot 4
                              debug: GpgNetSend ClearSlot 5
                              debug: GpgNetSend ClearSlot 6
                              debug: GpgNetSend ClearSlot 7
                              debug: GpgNetSend ClearSlot 8
                              debug: GpgNetSend ClearSlot 9
                              debug: GpgNetSend AIOption AI: M28 Air Faction 4
                              debug: GpgNetSend AIOption AI: M28 Air Color 2
                              debug: GpgNetSend AIOption AI: M28 Air Team 1
                              debug: GpgNetSend AIOption AI: M28 Air StartSpot 10
                              debug: GpgNetSend ClearSlot 11
                              debug: GpgNetSend ClearSlot 12
                              info: >> SendArmySettingsToServer: Slot 1 empty
                              info: >> SendArmySettingsToServer: Slot 2 empty
                              info: >> SendArmySettingsToServer: Slot 3 empty
                              info: >> SendArmySettingsToServer: Setting army 1 for slot 4
                              debug: GpgNetSend AIOption Kohne (AI: M28 Land) Army 1
                              info: >> SendArmySettingsToServer: Slot 5 empty
                              info: >> SendArmySettingsToServer: Slot 6 empty
                              info: >> SendArmySettingsToServer: Slot 7 empty
                              info: >> SendArmySettingsToServer: Slot 8 empty
                              info: >> SendArmySettingsToServer: Slot 9 empty
                              info: >> SendArmySettingsToServer: Setting army 2 for slot 10
                              debug: GpgNetSend AIOption Shun-Ylliushi (AI: M28 Air) Army 2
                              info: >> SendArmySettingsToServer: Slot 11 empty
                              info: >> SendArmySettingsToServer: Slot 12 empty
                              info: >> SendArmySettingsToServer: Slot 13 empty
                              info: >> SendArmySettingsToServer: Slot 14 empty
                              info: >> SendArmySettingsToServer: Slot 15 empty
                              info: >> SendArmySettingsToServer: Slot 16 empty
                              debug: GpgNetSend GameState Launching
                              debug: OpenMovie /movies/cybran_load.sfd: 3772
                              debug: Preparing movie /movies/cybran_load.sfd: 3772
                              debug: Preparing movie /movies/cybran_load.sfd: 3772
                              debug: Preparing movie /movies/cybran_load.sfd: 3772
                              debug: Preparing movie /movies/cybran_load.sfd: 3772
                              debug: Preparing movie /movies/cybran_load.sfd: 3772
                              debug: Preparing movie /movies/cybran_load.sfd: 3772
                              debug: Playing movie c:\program files (x86)\steam\steamapps\common\supreme commander forged alliance\movies\cybran_load.sfd: 3772
                              info: Starting background task "Map loader /maps/sirgis/sirgis.scmap"
                              info: Background task "Map loader /maps/sirgis/sirgis.scmap" running.
                              info: Active game mods for blueprint loading:
                              info: "M28AI Co-op Tools" v13 (a7c3e9f1-8b2d-4d6a-b5e0-1f9c4a8d2f99) by Creed
                              info: "M28AI Per-Unit Inherit" v04 (d4dde8a8-af26-45ca-a676-2029b538829f) by Creed
                              info: "M28AI" v325 (fnewm028-v325-55b4-92b6-64398e7ge43f) by maudlin27
                              info: "Visual Nuke Warning Mod" v07 (nuke-warning-mod-2025-05-29) by Sercammus
                              info: Blueprints Loading... '*.bp' files
                              info: Blueprints Loading: original files from /effects directory
                              info: Blueprints Loading: original files from /env directory
                              info: Blueprints Loading: original files from /meshes directory
                              info: Blueprints Loading: original files from /projectiles directory
                              info: Blueprints Loading: original files from /props directory
                              info: Blueprints Loading: original files from /units directory
                              info: Blueprints Loading: modded files from "M28AI Co-op Tools" mod
                              info: Blueprints Loading: modded files from "M28AI Per-Unit Inherit" mod
                              info: Blueprints Loading: modded files from "M28AI" mod
                              info: Blueprints Loading: modded files from "Visual Nuke Warning Mod" mod
                              info: Blueprints Extracting mesh...
                              info: Blueprints Modding...
                              debug: Blueprints.lua - Found (614) scripted icon assignments in Redux Strategic Icons 4K by macdeffy.
                              debug: Blueprints.lua - Found (128) manual icon assignments in Redux Strategic Icons 4K by macdeffy.
                              info: Blueprints Loading... completed: 606 original, 5 modded, and 74 preset units
                              info: Blueprints Loading... completed: 393 original and 0 modded projectiles
                              info: Blueprints Registering...
                              debug: MEM: -31 bytes RULE
                              info: Hooked /lua/system/class.lua with /mods/m28ai/hook/lua/system/class.lua
                              debug: Lua session environment initialized with game version 3839, game type FAF and at commit hash 36701ed9e184818bc264ec0b325676356c1ed743
                              info: Active mods in session:
                              info: "M28AI Co-op Tools" v13 (a7c3e9f1-8b2d-4d6a-b5e0-1f9c4a8d2f99) by Creed
                              info: "M28AI Per-Unit Inherit" v04 (d4dde8a8-af26-45ca-a676-2029b538829f) by Creed
                              info: "M28AI" v325 (fnewm028-v325-55b4-92b6-64398e7ge43f) by maudlin27
                              info: "Visual Nuke Warning Mod" v07 (nuke-warning-mod-2025-05-29) by Sercammus
                              info: "Supreme Score Board2" v25 (RIGOMATE-a1e2-c4t4-scfa-ssbmod-v0250) by HUSSAR
                              info: "Redux Strategic Icons 4K" v02 (90d28644-9911-40b3-8393-2446f1388cff) by macdeffy, Lordfapington69
                              info: Hooked /lua/UserSync.lua with /mods/supremescoreboard2/hook/lua/UserSync.lua
                              debug: MEM: -5247026 bytes STIMap
                              debug: MEM: -5247026 bytes LoadTexturing
                              debug: MEM: -5247026 bytes WaterMask
                              debug: MEM: -12252683 bytes TERRAIN
                              info: Background task "Map loader /maps/sirgis/sirgis.scmap" finished.
                              info: Saving replay to "C:\Users\chris\Documents\My Games\Gas Powered Games\Supreme Commander Forged Alliance\replays\Chris\LastGame.SCFAReplay"

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

                                @chris12 Do you get the issue with just M28 (and no other mods) enabled (e.g. it looks like a couple of other sim mods are enabled as well from that log)? And if so, does it load fine without M28 enabled at all?
                                Also enable the FAF debugger as it may give more information in the log to help figure out the cause and/or be of help if you post to the technical support forum in discord

                                884c7a05-dab9-4e00-96ac-c209f9831bfe-image.png

                                M27AI and M28AI developer:
                                https://forum.faforever.com/topic/5331/m28ai-devlog-v327
                                M28 trophy holders: Radde and Yew (Radde trophy, v309) and Malitarhel (Sladow trophy, v326)

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

                                  v326 Hotfix
                                  Fixed a bug introduced in the last version relating to naval factories

                                  M27AI and M28AI developer:
                                  https://forum.faforever.com/topic/5331/m28ai-devlog-v327
                                  M28 trophy holders: Radde and Yew (Radde trophy, v309) and Malitarhel (Sladow trophy, v326)

                                  1 Reply Last reply Reply Quote 1
                                  • M Offline
                                    Malitarh
                                    last edited by

                                    Hello!
                                    I found two more exotic maps where the M28 is significantly weaker.

                                    1. The Flat map. No terrain, no trees or rocks, 1 mex per player, huge open space. I consistently win under these conditions. Here’s a replay with the latest version of the M28. https://replay.faforever.com/27913558

                                    2. The ACU Lab 1 map. No resource sources, 5x5 km, 8 players. I played 4 vs 4, all AI — M28. If there isn’t a random massive attack on me while I’m upgrading the ACU to T2, my team will win. Perhaps the tactic for 4 players should be to upgrade one of them to T2 while the others defend and share resources — which is exactly what I managed to do. Here’s the replay of that battle:
                                      https://replay.faforever.com/27913954

                                    P.S. Was there any change related to distancing from exploding objects, such as reactors, if they are planning to explode?

                                    1 Reply Last reply Reply Quote 0
                                    • M Offline
                                      Malitarh
                                      last edited by Malitarh

                                      I got curious. I took advantage of the discovered weakness to defeat the AIX M28 and meet the requirement for the Sladow trophy.
                                      https://replay.faforever.com/27914091

                                      Moreover, Flat meets the requirements for the second award. But right now I don’t have enough time, and I’ll need several attempts.

                                      1 Reply Last reply Reply Quote 1
                                      • M Offline
                                        Malitarh
                                        last edited by

                                        This post is deleted!
                                        1 Reply Last reply Reply Quote 0
                                        • M Offline
                                          Malitarh
                                          last edited by Malitarh

                                          I decided to review these replays myself and found that they cut off on the server, and only the local file contains the full version of the replay. I’ll write to Discord and ask why this happens regularly. Maybe it’s because of playing with bots? So I’ll post the local files for each battle here so everyone can see them in full:

                                          27913558: https://drive.google.com/file/d/10C1GUIyGMwyNuqS4kFKySsv3lzRq_NSm/view?usp=drive_link

                                          27913954: https://drive.google.com/file/d/1-a2jE9r0zufjEbSEbBgG5aPW4cehmyCn/view?usp=drive_link

                                          1 Reply Last reply Reply Quote 0
                                          • M Offline
                                            Malitarh
                                            last edited by

                                            I found out that when launching FAF locally, replays are not recorded and cannot be saved. I apologizing for any time that may have been wasted, as I was sure that match 27914091 was a victory over AIX-M28, but in fact it was the previous one, which ended due to an accidental indication of ACU movement.

                                            At that time, I couldn’t launch the game on the server. And, accordingly, the local game simply wasn’t recorded.

                                            I deliberately launched the game again under the same conditions and roughly repeated the tactic, but this time on the FAF server.

                                            Replay 27948977. The version on the server keeps breaking somewhere in the middle, so I’m sending it again via Google Drive:
                                            https://drive.google.com/file/d/1avEgW_geQoEnblfQSGrlzB-CDPoyurst/view?usp=drive_link

                                            maudlin27M 1 Reply Last reply Reply Quote 0

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • First post
                                              Last post