M28AI Devlog (v111)

@maudlin27 I have a problem that happened to me before on this map. I started a game with only M28 and Uveso selected, i used a saved preset for unit restrictions. When the game starts i get an alert that M27 can be disabled since its not detected. And the M28's dont start building (neither does the game stop when they usualy start collecting map data). Is this a problem on my part ? Attached 2 logs when this happened.

Second thing, you mentioned its normal that M28's donate units. But i dont have the same capability. I cant donate units to AI's, i cant convert them and i cant share resources with them. Which is a bummer if i build paragon for instance. Can i change those settings somehow ?game_22089600.log game_22089573.log

@goblinsly2 There's a bug with how the game lobby handles presets that makes it incompatible with AI so that's likely the cause of the first issue - where I've seen it before it appears to have the selected AI (e.g. M28) in the game, but it's using the default AI. My suggestion is to start a fresh lobby/game and not use pre-sets to see if it works.

The second issue would need a change to the game I expect for it to work via the normal interface, if it's even possible. However, one workaround is to use 4z0t's scoreboard UI mod (along with the associated UI tools mod), then if you select the units you want to gift, then do Ctrl+L Click on the faction icon on the scoreboard for your teammate it should gift the units to them.

@maudlin27 game_22094987.zip

I tried and it worked. Today i had a problem when launching nukes, game locked, infinite loop or so the log tells. The other day i didnt have issues with similar settings. This map is wierd i guess. Had to zip the file cause its over 6mb

@goblinsly2 Thanks, it’s a known issue where M28 has 2 nukes that try to fire at the exact same time, I’m hoping to release a hotfix tomorrow that fixes it

v81 Update
Small update as I wanted to rush the nuke crash fix.

  • Fixed 2 bugs that combined meant if M28 had 2 SMLs fire at the exact same time it would crash the game
    14 other tweaks and fixes, including:
  • having M28 try and get more T3 land spam before its first experimental
  • getting more land factories in some cases particularly in a 1v1 on a 10km map (previously it'd only do this if the 10km map didnt have many mexes)
  • making ACUs more likely to dodge lobo arti shots
  • Reassignment of engineers constructing M28's late game shield and arti template if stalling energy

Acknowledgements

  • Fearghal (and goblinsly2) - Replay containing a crash (caused by M28 firing 2 nukes at once)
  • Radde - various replays against high AiX modifiers, including beating a 1.5 AiX on a 'large' 10km land map

Trophies

  • Sladow trophy - Retained by Radde by beating 1.5 AiX M28 (v80) on Xander Adaptive

(no change to the Radde trophy which was won by Radde, Mhad and GhillieWolf against v59 M28).

@maudlin27 Tnx, i will test the nuke fix today hopefuly and let you know.

Yesterday i had a long game again on that vodoo map and made some observations, but since this map is so specific, i don't know if it's even worth changing AI because of it, but i will write it down anyway.

First thing is, neither M27, M28 or Uveso made navy on this map. But it did make sonar. Water is far from bases, but it offers critical advantage. First, with navy superiority u can destroy like 8 mexes near the shore and completely clean the place of enemy units, then spam long range missile ships or subs and u can reach most of the bases. Second, you can spam experimentals under water and then rush in with them while enemy has most units elsewhere.

another thing i noticed on this map but not sure if it can be solved or if it's even a problem anywhere else. This map has long path on left and right side. At the start, units flow ok through them. But once we reach T3 and there are tons of percies/fatboys or similar units, the way gets blocked. Yesterday both sides were blocked for probably 1 hour.

Bases were pretty packed also, it seemed with way more T3 engineers than could be supported by economy. I noticed that while M27 on a big map had a tendency to eco beyond T3 mass extractor with tons of fabricators and then spamming RAS commanders, M28 is not to keen on doing that. On this map that is easily defendable, M28 will be left behind, unless there is an aeon in the team.

Thank you for your work, its great fun playing M27 or M28

game_22109326.log Just finished an awesome game and am happy to report that the nuke crash is gone. I still dont know how enemy cybran could have built so many megaliths that fast, doubt their team built paragon that fast. It was super fun nuke heavy game, no air/t3 arty/experimental arty and satelite. A couple of unexpected things happened. All AI's stopped using nukes after about half the game, even though there was plenty of traffic on sides where nukes were flying before. I thought maybe the nuke code has stopped working, but then right at the end of the game, my ally sent a nuke into a base of 20 anti nukes and killed 2 coms with it, amazing precision. What was wierd also that all seraphim and cybran AI's completely stopped making experimentals, so it was just me as cybran, my ally uef and enemy aeon still making them. Surprised me since just at the start enemy cybran made like 10-15 mega's. Anyway, great job on AI, super fun game.

ps: i see what you did there with mobile arty and cloaked com's 😉

@goblinsly2 Thanks, it's possible that SMD coverage meant the AI didn't think firing a nuke would be worthwhile, but there are some unexpected errors in the log relating to nukes so I'll make a note to have a look at some point to see if they can be fixed.

v82 Update
15 adjustments mostly based on replays from Radde (beating 1.4 and 1.5 AiX M28 on Xander Adaptive), including:

  • Better use of MMLs in larger numbers (so they no longer all focus down 1 target at a time), and slight increase in aggression for T3 mobile arti1
  • Adjustments to pausing of units in power stalls and factory build decisions to reduce the likelihood M28 gets stuck overbuilding engineers early on (due to overflowing mass as a result of stalling power)
  • Gunships should be less suicidal vs enemy air when defending locations near to M28's starting base

Acknowledgements

  • Radde - Another 3 replays vs M28 on Xander Adaptive
  • Cthulhu - log with blacktops incompatibility message
  • goblinsly2 - log with nuke launcher error message

Trophies

  • Sladow trophy - Retained by Radde by beating 1.5 AiX M28 (v81) on Xander Adaptive

(no change to the Radde trophy which was won by Radde, Mhad and GhillieWolf against v59 M28).

Hi, came here first to say THANK YOU to @maudlin27 for his great work in developing another AI. I almost exclusively play against an AI with a friend, and M28 has made this much, much more interesting again!

Secondly, I noticed that, e.g., on map TeamdefensebyKC, M28 is, after some period of time, just sitting there, doing nothing at all. I just setup a game with just me and a few AI to test just that. If it should be of interest, I do have a game log and a replay saved here.

@hammi Thanks, glad to hear you’re enjoying it! Do you have the replay ID number of the game you’re referring to, roughly when it happened, and a bit more detail on what you mean by it doing nothing (eg acu stood still and it never built anything?)

@maudlin27 Thanks for being willing to look into this. This is the replay: https://replay.faforever.com/22129264

As you can see, the AI plays ok until about an hour into a game. It then completes a Quantum Arch, which apparently stalls its economy in an unforeseen way (can't see any enemy influence causing this). It then appears to build energy gens to compensate for that. Even after economy has recovered, all it appears to do it wait for few units to exit the arch. Further energy gens have been planned, but are not being built.

After 25 mins, I ran out of patience. 😁

@hammi Unfortunately the replay desyncs for me part way through; In the desynced version it didn't seem to have issues with building things, and I can't see an obvious error in the log you provided. It's possible it was using up all its mass on building things of little consequence hence why it didn't seem to be doing anything.

v83 Update

This update is essentially lots of minor tweaks based on replays from Radde. 30 changes made, none of which are expected to be that significant, including:

  • Increased the focus on ACU snipes when an ACU is considered vulnerable
  • Further adjustments to fatboy and megalith to reduce their tendency to attack-move when the enemy has a large nearby threat but a small in-range threat
  • Greater prioritisation of very high reclaim amounts
  • ACUs should be less likely to stand in their base waiting for an approaching experimental to kill them
  • Expanded ACU upgrade choices slightly so shield/nano should be got instead of RAS if the ACU is low health (and also obtained late-game where it wouldn't replace RAS)
  • Fixed some bugs with tracking overcharge shots (which led to ACUs not dodging t1 arti shots as much); working out how many t3 arti/gameenders are already under construction (which led to t3 arti being built at the same time as a mavor); TMD being massively overbuilt

Acknowledgements

  • Radde – Numerous replays which formed the basis of almost all the changes in this release (and I’ve only been through half the replays so far).

I just came from 2 incredibly strange games, not sure what happened. It's the vodoo map with air enabled, t4 nuke/T3T4Arty/Satelite disabled. I played like 10 straight games with this settings and won them all. Now lost 2 in a row. But the reason is really simple - AI's on my team play differently than AI's on opposite sides. My AI's make practicaly no ASFs, while the enemy makes 100's and 100's of them. Now, crappy as i play, we would be ok if we each made 1/3 of the airforce. But basicaly we are 1 hour into the game, getting bombarded with 4 or 5 experimental bombers and i am the only one making ASFs, while 1 player is making fatboy and the other chicken. I attached a replay link and log, pardon my language in the replay.

22161531-goblinsly2.zip

https://replay.faforever.com/22161531

@goblinsly2 Checking the replay there were no obvious errors with it's logic. The likely causes of your M28 teammates having fewer asfs than the enemy team were:

  • Enemy units near their base - hence more likely to build gunships instead of asfs
  • Relied on you as the air player (hence why they gifted asfs to you)
  • Worse eco than each opposing team AI (enemy team controlled most of the map)
  • only 2 M28 (vs 3 M28 on the enemy team)

They were still building asfs though (e.g. 39m into the replay some asfs were still being built)

Granted i don't know how to play air player, but even if i did i don't know if i can make enough ASF's to counter 3 enemies each having ASF's. Previous games i hit 1000/1000 unit limit with 500 ASF's and whenever we engaged in neutral territory, it wasn't even close, i guess you did some good programming since they seem to combine shots to 1 shot my ASF's like flies.

On this map there are some things i need to do. First 1 mega to each entrance and 3 SMD's to cover the whole base. Otherwise my allies will die either to nuke or early experimental. Now if i add ASF's to this, my eco just cant do it.

Yes, they were building ASF's but absolute numbers its a huge difference. They donated 6 ASFs to me and i never saw any of them having more than 10 ASF's. If you look at enemies, they each prolly have 100's of ASF's. Was just wondering what triggered this, it was pretty frustrating.

You could try fighting against M28Easy (with normal M28 as teammates), as the 2 M28 will be at less of an advantage when fighting for map control against 3 AI. Alternatively use AiX for the enemy team and set it to a below 1.0 modifier.

If you send spy planes to scout enemy nukes then your M28 teammtes should also build SMD over their own base.

Tnx. I played another of that type of game but with flying experimentals disabled. Was fun.

This map is wierd. Right from the beginning, even though i go totaly turtle, my team mates always manage to push land 3/4 of the way to the enemy base. Spamming 99% land units. Enemy on the other hand goes hard air right from the start and eventualy kills the advancing units and takes 3/4 of the base. It would appear that when enemy is outside our walls, it will build more land units, presumably it sees them as greater threat. But after an hour or so when we cleared our doorstep and reclaimed killed enemy units (which was my plan from the start), suddenly both allies went heavy air. In the first hour enemy vs our air was 1 to 30 for enemy. All of the sudden it became 50/50 and then we won air. I didnt play air from the start, to see if that will trick allies to go heavy air. Didnt help.

Im wondering. Do AI's respond to chat ? Are there any commands they will recognise? Like, e pls, build smd, etc. ?

@goblinsly2 No, it doesn’t respond to chat or pings