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.
    • maudlin27M
      maudlin27 @Saver
      last edited by maudlin27

      @saver I'm planning to request a news post once I've finished testing M28 as a hostile campaign AI on the rest of the Supcom campaign, since then I can highlight all the campaign features in one go and it's less likely to break the missions. For now it's mentioned in the mod description and on the wiki (re being an AI buddy), but I suspect not many people read 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
      • SaverS
        Saver
        last edited by

        Here is a test of the first mission FA with your AI with three people. Unfortunately the game leaked a lot https://replay.faforever.com/21362409

        auch mal fünf gerade sein lassen

        maudlin27M 1 Reply Last reply Reply Quote 0
        • SaverS
          Saver
          last edited by

          In addition, construction took place again in the non-playable area. But otherwise it was a nice change

          auch mal fünf gerade sein lassen

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

            @saver said in M28AI Devlog (v58):

            21362409

            What do you mean by leaked a lot? did it slow down to -1 or worse game speed?

            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
            • SaverS
              Saver
              last edited by

              The game speed has fallen from 0 to -6 in the game. Unfortunately I don't know if it can be seen in the replay.

              auch mal fünf gerade sein lassen

              1 Reply Last reply Reply Quote 0
              • SaverS
                Saver
                last edited by

                Mainly in cases where air battles started

                auch mal fünf gerade sein lassen

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

                  I didnt notice when I was watching the replay but I stopped after 41m as I had enough points to look at by then, do you know roughly the timestamp where it went to -6? It makes sense that it would be slower in a big air battle although I wouldn't have expected -6 (assuming everyone has average to good cpus) so it could be an indication of something gone wrong with the code. It's also possible it's a result of some of the additional checks that have to be run in campaign maps that will add to the overhead (although again I wouldn't have expected such a big impact)

                  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

                  SaverS 2 Replies Last reply Reply Quote 0
                  • K
                    Klecks
                    last edited by Klecks

                    The game suddenly freezes completely after a certain time. Without error message and without replay. Whether with 2 or 4 players against an M28AI. You then have to end the game via the Task Manager. However, this only happens when you have reached the maximum of 1000 units (i.e. when you go on the attack). And it happens in every game. I have also noticed that the speed sometimes drops to -6.

                    We play with the following mods:

                    • All Faction Quantum Gate
                    • M28AI
                    • Nuclear Repulsor Shields
                    • Total Mayhem
                    • Total Mayhem Lite
                    • 5x Build Range

                    Are you aware of any incompatibility with any of these mods?

                    maudlin27M Z 2 Replies Last reply Reply Quote 0
                    • maudlin27M
                      maudlin27 @Klecks
                      last edited by maudlin27

                      @klecks Not individually (some like Quantum gate, total mayhem and build range I've seen work fine, theo thers I've not specifically tested), but issues are much more likely to occur with multiple mods, either due to an incompatibility with a particular combination of mods; a bug with the mod that M28's logic highlights, or memory issues (which are more likely with more mods), in addition to the potential for a bug with M28.

                      If it happens with just one of those mods enabled then I can take a look to figure out. The other thing you could do is see if there's a log file (even if there's no replay - although I'd have normally expected a replay to be available for games played in FAF even if the game crashes part-way through).

                      For example logs are saved for me at the following location:
                      C:\Users[username]\AppData\Roaming\Forged Alliance Forever\logs

                      Have you always had these issues or has it only been since the latest release (last 24 hours)?

                      Also enable more detailed logging in the settins in the client, which increases the chance that the cause of the crash can be identified from the log:
                      1f94b479-7759-4038-a0e8-4378a9f50d12-image.png

                      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

                        v59 Update
                        A mix of campaign, replay and vs AI based changes with this update:

                        • Fighting M27 - 9 changes; interestingly M28 beat M27 on 4 different 5km and 10km maps that M27 had been tested on extensively (theta passage, polar depression, twin rivers, and eye of the storm), making me think M28 had finally reached the point of convincingly dethroning M28. However, M28 lost on 2 20km maps (setons and burial mounds), contrary to what I'd have expected. The main change added was improving M28's ability to handle an early strat if it has asfs.
                        • 8 changes based on replay comparisons from Radde between M28 and M27 on Xander, including making land experimentals more likely to move towards an enemy instead of attack-move, and fixed some issues with hos mongoose and MAA would retreat from units (the former being too cautious in some cases due to a bug, the latter ignoring nearby tanks due to a bug in some cases)
                        • 5 changes from 2 mapgens where Radde and Mhad beat 1.5 resource M28s, mainly trying to make M28 slightly more resistant to air snipes
                        • 9 changes from an M28 vs 1.2 RNG game on twin rivers (normally something M28 won but this time it lost after an epic 2 hour game due to poor fatboy usage) - the main change is making M28 retreat fatboys much sooner so they're less likely to be caught up to and killed, and increasing the extent to which M28 will eco when behind on eco.
                        • 11 changes for Saver's FA mission 1 of the campaign to make M28 more aggressive with navy, have a better unit mix, send GCs at the enemy start position (instead of keeping them on patrol), and being more likely to build T3 arti/similar
                        • 4 changes from a replay by Bart on gap of rohan, mainly fixing issues with overbuilding T2 arti and SAMs

                        Trophy awards

                        • Radde trophy - Awarded to Radde and Mhad for beating 1.5 resource M28 on both a mixed land+navy mapgen, and a navy mapgen
                        • Sladow trophy - Current holder is triangleleaf for beating v57 M28

                        Acknowledgements

                        • Radde - sending various replays including a comparison of M27 and M28 to help me identify significant differences in their approaches that make M27 seem tougher for a human player
                        • Saver - Replay against M28 as a hostile AI in campaign which highlighted a number of campaign specific issues
                        • Bart - Replay in a norush gap of rohan high eco game which highlighted some flaws with M28's arti and SAM logic

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

                          @klecks said in M28AI Devlog (v59):

                          The game suddenly freezes completely after a certain time. Without error message and without replay. Whether with 2 or 4 players against an M28AI. You then have to end the game via the Task Manager. However, this only happens when you have reached the maximum of 1000 units (i.e. when you go on the attack). And it happens in every game. I have also noticed that the speed sometimes drops to -6.

                          We play with the following mods:

                          • All Faction Quantum Gate
                          • M28AI
                          • Nuclear Repulsor Shields
                          • Total Mayhem
                          • Total Mayhem Lite
                          • 5x Build Range

                          Are you aware of any incompatibility with any of these mods?

                          What you're talking about is probably related to memory. Maybe next time you can take a look at the memory usage for high unit quantities (via task manager).

                          K 1 Reply Last reply Reply Quote 0
                          • K
                            Klecks @zhanghm18
                            last edited by

                            @zhanghm18 We all have 32GB of RAM, so I don't think that's the reason for this

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

                              @klecks FAF is prone to crashing if you reach over 2GB of memory usage; i.e. if you have taskmanager open and you see it approaching 2gb, then it's much more likely to crash.

                              The memory usage is increased significantly by unit mods (along with various other factors), and has been known to crash with AI (including but not limited to M28) since AI also use up more memory.

                              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

                              K 1 Reply Last reply Reply Quote 0
                              • K
                                Klecks @maudlin27
                                last edited by

                                @maudlin27 said in M28AI Devlog (v58):

                                AF is prone to crashing if you reach over 2GB of memory usage; i.e. if you have taskmanager open and you see it approaching 2gb, then it's much more likely to crash.
                                The memory usage is increased significantly by unit mods (along with various other factors), and has been known to crash with AI (including but not limited to M28) since AI also use up more memory.

                                2023-12-09_135140.jpg 2023-12-09_134742.jpg

                                1 Reply Last reply Reply Quote 0
                                • K
                                  Klecks
                                  last edited by

                                  OK, I understand. This is a screenshot from Task Manager when the game was frozen (two AI und only me). So the prolem with memory depends on the 32bit game 😞

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

                                    @maudlin27
                                    Hello 🙂 unfortunately I didn't write down any timestamps. I can only make the following statements about the PC used, the three of us use similar components: processor i7-8700 3.19GHz, 16 - 32GB RAM, Geforce 1080GTX and higher. I will also look at the replay to provide possible timestamps. Thank you again for your great work.

                                    auch mal fünf gerade sein lassen

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

                                      @maudlin27 Replay timestamp https://replay.faforever.com/21362409
                                      min 43: -3, min 44: -4, min 45.20: -4, 45.40: -4, min 46.50: -5. Unfortunately I couldn't find -6. However, I only watched the end of the first section. I hope the data can be of some help to you.

                                      auch mal fünf gerade sein lassen

                                      1 Reply Last reply Reply Quote 1
                                      • C
                                        Cyberdyne_Skynet
                                        last edited by

                                        @Klecks Dont use total mayhem lite (crashing/freezing random all the time), or total mayhem with this shieldmod. Better use some other mods if you want this t4 shields~ U can check my mod list some posts above.

                                        Ansonsten frohe Festtage 🙂

                                        1 Reply Last reply Reply Quote 0
                                        • T
                                          thewatcheral
                                          last edited by

                                          m28ai seemed to crash twice when we used it, 2v2ai 3v1ai
                                          33 min first game, 44 min second game
                                          mods used / yes
                                          https://replay.faforever.com/21423105 - 1st game
                                          https://replay.faforever.com/21423406 - 2nd game

                                          debug: Current gametime: 00:32:30
                                          warning: false M28ERROR Count=54: GameTime 1951: Dont have a valid upgrade ID; UnitID=bsb0002
                                          warning: stack traceback:
                                          warning: [C]: in function assert' warning: [C]: in function pcall'
                                          warning: ...r forged alliance\mods\m28ai\lua\ai\m28utilities.lua(55): in function ErrorHandler' warning: ...der forged alliance\mods\m28ai\lua\ai\m28economy.lua(137): in function UpgradeUnit'
                                          warning: ...mander forged alliance\mods\m28ai\lua\ai\m28team.lua(2659): in function GetAnyMexOrFactoryToUpgrade' warning: ...mander forged alliance\mods\m28ai\lua\ai\m28team.lua(2880): in function ConsiderNormalUpgrades'
                                          warning: ...mander forged alliance\mods\m28ai\lua\ai\m28team.lua(2930): in function <...mander forged alliance\mods\m28ai\lua\ai\m28team.lua:2908>
                                          warning: false M28ERROR Count=3: GameTime 1953: After filtering to a faction we have no available engineers - this shouldnt be possible
                                          warning: stack traceback:
                                          warning: [C]: in function assert' warning: [C]: in function pcall'
                                          warning: ...r forged alliance\mods\m28ai\lua\ai\m28utilities.lua(55): in function ErrorHandler' warning: ...er forged alliance\mods\m28ai\lua\ai\m28engineer.lua(4398): in function FilterEngineersOfTechAndEngiCountForFaction'
                                          warning: ...er forged alliance\mods\m28ai\lua\ai\m28engineer.lua(5564): in function ConsiderActionToAssign' warning: ...er forged alliance\mods\m28ai\lua\ai\m28engineer.lua(6420): in function HaveActionToAssign'
                                          warning: ...er forged alliance\mods\m28ai\lua\ai\m28engineer.lua(6681): in function ConsiderCoreBaseLandZoneEngineerAssignment' warning: ...er forged alliance\mods\m28ai\lua\ai\m28engineer.lua(11595): in function ConsiderLandOrWaterZoneEngineerAssignment'
                                          warning: ...mander forged alliance\mods\m28ai\lua\ai\m28land.lua(5857): in function <...mander forged alliance\mods\m28ai\lua\ai\m28land.lua:5349>
                                          warning: false M28Warning: Count=1: GameTime 1956: No plateau group for iSegmentX=336; iSegmentZ=249; Plateau group of segment midpoint=2751; Plateau Group of tPosition=2751; This can happen on larger maps with long cliffs with narrow paths that small units can travel partially along. Enable logs in the function GetUnitPlateauAndLandZoneOverride for more details
                                          warning: stack traceback:
                                          warning: [C]: in function assert' warning: [C]: in function pcall'
                                          warning: ...r forged alliance\mods\m28ai\lua\ai\m28utilities.lua(55): in function ErrorHandler' warning: ...mmander forged alliance\mods\m28ai\lua\ai\m28map.lua(571): in function GetPlateauAndLandZoneReferenceFromPosition'
                                          warning: ...mander forged alliance\mods\m28ai\lua\ai\m28land.lua(317): in function UpdateUnitPositionsAndLandZone' warning: ...mander forged alliance\mods\m28ai\lua\ai\m28land.lua(6067): in function <...mander forged alliance\mods\m28ai\lua\ai\m28land.lua:6007> warning: false M28Warning: Count=8192: GameTime 1959: We are unable to build at a predefined shield location, will check for small blocking M28 buildings and destroy them warning: stack traceback: warning: [C]: in function assert'
                                          warning: [C]: in function pcall' warning: ...r forged alliance\mods\m28ai\lua\ai\m28utilities.lua(55): in function ErrorHandler'
                                          warning: ...er forged alliance\mods\m28ai\lua\ai\m28engineer.lua(4648): in function ConstructNewShield' warning: ...er forged alliance\mods\m28ai\lua\ai\m28engineer.lua(4748): in function <...er forged alliance\mods\m28ai\lua\ai\m28engineer.lua:4406> warning: false M28Warning: Count=1: GameTime 1959: Adding unit ID brot3bt2 to table of temp other units - either the unit is a land unit really close to water that we incorrectly think is in water, or it is an amphibious/hover unit that has incorrect caterisation; if the unit runs out of orders then will send it to the rally point warning: stack traceback: warning: [C]: in function assert'
                                          warning: [C]: in function pcall' warning: ...r forged alliance\mods\m28ai\lua\ai\m28utilities.lua(55): in function ErrorHandler'
                                          warning: ...mander forged alliance\mods\m28ai\lua\ai\m28navy.lua(1488): in function <...mander forged alliance\mods\m28ai\lua\ai\m28navy.lua:1331>
                                          info: OnDecayed: Time=1961.3000488281; self.UnitId=brnt3perses
                                          debug: Loading module: /projectiles/adfreactoncannon01/adfreactoncannon01_script.lua
                                          debug: Loading module: /projectiles/laserbotterran01/laserbotterran01_script.lua
                                          warning: false M28ERROR Count=81: GameTime 1975: Dont have a valid upgrade ID; UnitID=bsb0002
                                          warning: stack traceback:
                                          warning: [C]: in function assert' warning: [C]: in function pcall'
                                          warning: ...r forged alliance\mods\m28ai\lua\ai\m28utilities.lua(55): in function ErrorHandler' warning: ...der forged alliance\mods\m28ai\lua\ai\m28economy.lua(137): in function UpgradeUnit'
                                          warning: ...mander forged alliance\mods\m28ai\lua\ai\m28team.lua(2659): in function GetAnyMexOrFactoryToUpgrade' warning: ...mander forged alliance\mods\m28ai\lua\ai\m28team.lua(2880): in function ConsiderNormalUpgrades'
                                          warning: ...mander forged alliance\mods\m28ai\lua\ai\m28team.lua(2930): in function <...mander forged alliance\mods\m28ai\lua\ai\m28team.lua:2908>
                                          debug: Loading module: /mods/totalmayhem/projectiles/brot3shbmempproj/brot3shbmempproj_script.lua
                                          info: OnDecayed: Time=1979.8000488281; self.UnitId=xrb9304
                                          debug: Current gametime: 00:33:00
                                          debug: Loading module: /mods/blackopsfaf-unleashed/units/bsb5205/bsb5205_script.lua
                                          debug: Loading module: /mods/totalmayhem/projectiles/brpt1extank2proj/brpt1extank2proj_script.lua
                                          debug: Loading module: /projectiles/tdfplasmaheavy03/tdfplasmaheavy03_script.lua
                                          debug: Loading module: /units/xsl0303/xsl0303_script.lua
                                          debug: Loading module: /mods/blackopsfaf-unleashed/units/bab2306/bab2306_script.lua
                                          debug: Current gametime: 00:33:30
                                          info: Minimized true
                                          info: Minimized false


                                          debug: Current gametime: 00:44:00
                                          info: CWldSession::DoBeat() unknown entity id (0x2ff0029a) supplied in a pose update.
                                          warning: Error running OnNotAdjacentTo script in Entity urb1301 at 6d934808: ...\gamedata\lua.nx2\lua\sim\adjacencybufffunctions.lua(18): attempt to call method DestroyAdjacentEffects' (a nil value) stack traceback: ...\gamedata\lua.nx2\lua\sim\adjacencybufffunctions.lua(18): in function OnBuffRemove'
                                          ...gramdata\faforever\gamedata\lua.nx2\lua\sim\buff.lua(687): in function RemoveBuff' ...ver\gamedata\lua.nx2\lua\sim\units\structureunit.lua(810): in function <...ver\gamedata\lua.nx2\lua\sim\units\structureunit.lua:787> [C]: in function Kill'
                                          ...gramdata\faforever\gamedata\lua.nx2\lua\sim\unit.lua(1320): in function DoTakeDamage' ...ver\gamedata\lua.nx2\lua\sim\units\structureunit.lua(664): in function DoTakeDamage'
                                          ...gramdata\faforever\gamedata\lua.nx2\lua\sim\unit.lua(1286): in function OnDamage' ...gramdata\faforever\gamedata\lua.nx2\lua\sim\unit.lua(5751): in function <...gramdata\faforever\gamedata\lua.nx2\lua\sim\unit.lua:5750> [C]: ? ...ta\faforever\gamedata\lua.nx2\lua\sim\projectile.lua(623): in function DoDamage'
                                          ...ta\faforever\gamedata\lua.nx2\lua\sim\projectile.lua(364): in function `OnImpact'
                                          ...uclearshell01\tifhetacticalnuclearshell01_script.lua(12): in function <...uclearshell01\tifhetacticalnuclearshell01_script.lua:11>
                                          info: Minimized true
                                          info: Minimized false

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

                                            @thewatcheral said in M28AI Devlog (v59):

                                            21423105

                                            Thanks, looks like there's an incompatibility with the experimental shield mod that triggered when the experimental shield was killed (and is highly likely to have caused the crash), I'll see if I can resolve in the next 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 referenced this topic on
                                            • maudlin27M maudlin27 referenced this topic on
                                            • First post
                                              Last post