AI Wave Survival Mod Information

Wow, thank you so much for that!

i noticed on my f-island map that ACU hunters and some bosses cant enter deep water and therefore cant reach any player. i turned the setting off but i dont know if it should be that way.

on one side we player can calculate where "land" units wont reach us but on the side, it doesnt feel right to turn acu hunter offline and look at sitting ducks with 1,3 mio HP.

i dont have a recommendation for that issue. Hover bricks would be a bit silly. same with GC and chicken 😄

it could also be the map itself. i will try it today.

i wont be able to host for 30 days after today.

@Slykar

It is the map. It has major pathability issues. Only China, Japan, and the US can be reached by amphibious units. With the exception of hover units, all other land masses are unreachable. Overall, a poorly designed map for any type of AI play.

just played a game with Rama on his new plateau map(adaptive tabula survival). very hard to fully defend. Toward the end had an issue with suddenly being unable to issue commands with the mouse (keyboard stuff worked, but the mouse clicks did not register) i am unsure if the error is due to players leaving or otherwise. I then tried to tab out and tab back in to see if that would fix it, and ultimately crashed from there.

The Error log is unlike the one i am used to, there appears to be 2 sections, 1 for the lua the subsequent 1 for C++. Im not sure what the final error was, but it seems to have a fair number of "On Damage" errors for lua, and the C++ seems to be dealing with threads (either main thread or Fork thread).

Can anyone help me figure out what the final error is/ root cause?

Thanks,
rmac

File: game_22142567.zip

(file is compressed due to being too large to upload as a .txt)

The mouse clicks bug is a known bug: it sometimes happens when a player leaves. You can fix this by pausing/unpausing the game.

-1

Hey @Rama

Me and some mates have been playing this and I've got some suggestions for it from the new player experience if you want.

First of all, the default experience should be relatively easy, or there should be a simple way to get to an easier experience, here's my thoughts on some things

  1. Rift nukes, either turn them off or just send them in later, probably just after you're expecting a good rushing player to get their first SMD up, we've currently got rift nukes disabled for two reasons, the first being that it's actually incredibly annoying to know how to kill them, they're hovering ground units but most T2 tanks which is what we have when the first ones come down actually can't hit them unless they're on the extreme edge of the shield, so if you just send your tanks in to deal with it they'll just stand under it and end up getting killed. The second is that we're paring it down trying to get to the point where we can just win one so rift nukes have gone.

Suggestions for these on default setting: Send in rift nukes later, reduce the hover height of the rift nuke by about 50/75%, if units are right under them sure it's fine if they can't hit them, but about half to 3/4 of the area under the shield should be fine for T2 tanks to hit them.

Have the first launched ones have weaker defences, don't know how viable this is but the fact that as far as I can tell at every point throughout the game the rift nuke itself is about as difficult to kill just turns them from a huge threat at the start of the game into a late game nuisance, although we never got to late game with rift nukes on because most of the hover height rubbish.

  1. Airdrops, drop way too early, way too aggressively, and are way too hard to stop them from coming down, we often lose a commander to an ACU hunter being dropped directly on the commander and killing it before the point defence we've managed to rustle up can kill the bots.

Suggestions for these:
Have the first couple of air transports significantly weaker, usually by the time that the first set of drops come in, there's absolutely no point in building anti air to try and stop them as far as I can tell because of how tanky the transports are, you need to have like 8-12 t3 anti air that start firing on it and have it crossing a decent chunk of their range to have even a hope of a chance of preventing them from dropping their bots off.

In addition the ACU hunter drops come at least one drop too early, usually we've got some basic t3 point defence in the back lines but not nearly enough to prevent the transport from dropping an ACU hunter off, last game we had a drop come in at about 15 minutes with an ACU hunter, a brick, and a percival on it and drop it right on top of one of our commanders. if it had come in even 5 minutes later I would have had enough point defence to kill the ACU hunter before it killed one of our commanders. To my mind, the earlier airdrops should punish you for not getting T2 air defence up in time or even a little t3, because that's about what you'd have at that point, but it feels more like, don't bother building air defence until after 15 minutes because nothing you can get up in that time is going to be enough to stop the airdrops so just build point defence until you can build a huge number of SAMs

  1. Countermeasures, it's very clever that you've programmed in that the AI gets stronger based on what the player builds, but, it feels incredibly demoralizing, as an example in the last game we attempted I built a mavor as an attempt to take out the main base before we got overwhelmed under the end game bosses, no luck because the enemy just got multiple faster firing higher damage artillery pieces for free and used them to destroy my mavors and then pound the rest of our base with impunity because we had no way to counter it, in addition their artillery was under repeatedly respawning shields.

The lesson that I took away from this was "Don't build artillery, it will lose you the game" similarly, "Don't build a paragon, it will make things worse for you", "Don't build experimental air units, it'll invite a disproportionate response", "Don't build naval, it's not worth it against the additional enemy units they send in", what the countermeasures are doing for our group just learning and trying to win a single game isn't really challenging us so much as it is saying "Just stop trying new things because all you'll find is new ways to lose the game faster"

These are just some thoughts off the top of my head based on the games that I've played so far.

The nuke timing feels right, it punishes you for not getting nuke defence up in time but also isn't too hard to get the defences up before they're required. Doom waves however we've not figured out how to stop those from just chewing our defences to hell, perhaps something like destroying the support bases weakens the waves at the end? Currently we've not really figured out what destroying the support bases is good for, yes it damages the HQ but we don't know what "You are being resupplied" does.

Overall, my suggestion is to just tone down the difficulty of all the things on the default setting, it shouldn't necessarily present a challenge to experienced players, but should be something that gives a taste of the challenges but in a toned down manner which can then be ramped up as the user finds themselves chasing more of a difficulty.

@greyknight

Hi Greyknight,

Thanks for all the feedback! I do know the default settings have gotten a little harder with some of the changes and additions over the months. Though there are a number of hosts who enjoy the defaults, so changing them at this point would probably annoy a lot of people.

I do mean to add the ability to delay Rift Nukes and also adjust the strength of the artillery response. Just so you know, Rift Orbs (and Dooms) are vulnerable to over-charge. You can kill them quickly with one or two OC shots from your commander. Or spam T1PD under the shield, which will also quickly eliminate them.

The easiest two ways to adjust difficulty are to either increase Build Time or increase the Tech Delay setting. Of the two, I recommend the Tech Delay setting. This will delay the speed that waves tech up, giving players more time to prepare for the harder waves.

Artillery retaliation is in direct response to the power of the artillery you are building. Going for T4 artillery will trigger a stronger response. Generally a combination of artillery and satellites are effective. Building a sat + a mavor + a scathis is very effective. Sats help with targeting and eliminating individual shields/arty, scathis with eventually eliminate support structures, and mavors are good for direct damage to the HQ.

Airdrops can be heavily customized under the settings. If you are having difficulty with them, you can adjust their behavior there. And definitely still worth building AA vs the transports. The transports will drop their units early if their shields take too much damage, though some will try to reach their drop goal regardless. Building some T1PD scattered around your base is usually good enough protection from random drops that get through, until you have stronger units.

Paragons can be successfully built, but must be done quickly. Do not start a paragon if 1. Don't have the build power to use it, 2. Don't have the economy to build it quickly (you want it built in 5 mins or faster), 3. First nuke wave hasn't been launched. Violating any one of these usually results in defeat. Note, you can tone down Paragon Punishment in the settings, which will give you more time before you are overwhelmed. The punishment setting determines how much time it takes for the difficulty to ramp up after a paragon has been detected. You can also turn off the punishment completely.

Support Bases launch the Rift Nukes. Eliminating all the Support Bases will stop any further Rift Nukes. There can also be only as many Rift Orbs as there are Support Bases alive. So if you have 5 Support Bases and destroy one, the max number of Rifts that can be deployed are 4 (unless all 5 have already been deployed). Destroying Support Bases directly damages the HQ, stuns the wave, may give T4 units to players as reinforcements, and grants mass + energy to each player for a period of time. The mass and energy delivered increases with each Support Base destroyed. Eliminating all Support Bases will also cause the HQ to power stall for a period of time, which disables its shields and artillery for the duration of the power stall and causes the buildings around the HQ to begin to randomly self-destruct, weaking its defenses. Successfully eliminating all Support Bases makes it easier to kill HQ as it directly weakens the HQ and will stop Rift Nukes.

On Dooms, they are meant to be Base Breakers. They take increased damage from UEF T4 Napalm and Over-Charge shots. ACU's can do quite a bit of damage to a Doom and even stop them if the Doom is in the red. You can stop Dooms from wrecking your base by path blocking with other T4 units. Try using GCs or Megas to crash into a Doom and get them trapped in the Napalm fire to quickly kill. You will need a few T4 units to block well, and will likely lose them. The Seraphim Storm missiles are also good at dealing damage, if you can land them in the Doom's path.

The Naval Response script is relatively new and still being balanced. It is meant for maps that support navy, but either player's didn't enable navy waves because they don't know how or because there are only a few areas on the map worth using navy, so the naval waves would simply become trapped in an unimportant pond. I'll probably add an option to adjust it in the future and/or disable.

v282

  • All mod settings are now recorded to the Game Log. This is so players can recreate games they'd like to play. Watching a replay or checking the game log of a survival match you just played will have the settings recorded. Just search for "AI Wave Survival Settings" in the game log.

  • Rift Nukes that are intercepted will now deploy a high altitude orb that will fire on players for a period of time before self-destructing. Generally more of a nuisance than a threat. Once enough Rift Nukes have been intercepted by a team, an untargetable Rift Nuke will be launched, with a warning that SMD is being jammed.

-Mobile SMD should no longer spawn in the waves

v285

  • Versus Survival:
    Changed names of Versus Survival Settings to be less confusing. Now are:
    Versus Survival - Defeat HQ: Must kill HQ to win.
    Versus Survival - HQ Suicides: Killing all other teams causes HQ Team to suicide. Requires 3+ teams.

If hosting a game with fewer than 3 teams, which is required for "Versus Survival - HQ Suicides", the scenario will now default back to Defeat HQ instead of ending the match with an error warning.

  • Oblivion T4PD: Notices the cannon was firing only once every 20 seconds instead of every 10 seconds. This reduced its DPS to 400. Cannon now fires once every 10 seconds for 800 DPS (In-game info shows 4000 DPS, but that information is wrong.) Power draw has been reduced to 3000 for 8 seconds.

  • Cybran T4PD: Reduced power draw to 4000 for 10 seconds for the T4 stun cannon. Fires one volley every 12 seconds.

  • Transports: Added an option to be able to set HQ as Transport's spawn location.

Hello Rama,

i cant host your mod.

every game with the version past 17th march (v272) has desync.

@slykar

Can you give me more information? Any mods being used?

Hello my friend and I are trying to play this mod.
The unit mods we are using are total mayhem, wyvern battle pack mod, black ops, brewlan
The issue is as soon as the waves Start the game gives us numerous dysync errors. We are unsure as to what the issue is.
Any help? I'll he more than happy to give more info as needed!

@lavastorm

That is a lot of unit mods. I've only tested with BrewLAN, Blackops, and Total Mayhem individually, and with Blackops and Total Mayhem together. Never tried with Wyvern. Usually, Total Mayhem causes a desync on start that can be ignored, as it has no impact on gameplay.

If you have a replay ID, I can check and see if it is an issue I can correct.

Is there a way to "denoise" the Game.prefs from all the custom settings from this mod?

@rama how would I obtain that?
We also figured that Brewlan was conflicting with one of the other unit mods but I'm not sure which one atm

v286

Some balance changes:

Makes Game Harder:

  • All bosses now spawn max veterancy. This prevents an occurrence where bosses would lose their health boosts if they vetted up, making them easy to kill.
  • Spawned defensive buildings and artillery are max veterancy.
  • Waves will gain veterancy based on mass income of team, maxing out at 10k mass.
  • Airdrops will drop randomly vetted units.
  • Rifts will increase veterancy level based on number of Rift Nukes intercepted.
  • Artillery now gain Damage Amplification damage boost, if the feature is on.
  • If HQ health is too low that killing a Support Base or Alternate HQ would kill HQ, instead damage will be deflected and cause half of wave to be destroyed at random.

Makes Game Easier:

  • ACU Hunters have had torp damage reduced by more than half.
  • Storm Launchers energy costs reduced by half, mass costs and build time reduced by 10%. Storm Missiles have increased speed and acceleration. Storm Launcher's passive tac missiles have 2 hp, to be more effective against navy.
  • Abyss, reduced costs and build time by 10%. Increased shield strength from 25k to 26k, missile range from 150 to 160, shield bubble from 60 to 70, antitorp defense range from 50 to 60, and depth charges range from 40 to 50 and damage to 2k.
  • Guardian Shields increased shields from 55k to 60k and regen rate to 400hp/s.
  • Spawned reinforcements are fully vetted and have orbs attached for additional firepower.

The Yolona blueprint replacement breaks the visuals from the unit's script and makes the weapon unresponsive since it uses WeaponRepackTimeout instead of RackSalvoReloadTime.
FAF's Yolona was changed to not have the weapon unpacking typical of other launchers since it doesn't need that to control its fire rate: https://github.com/FAForever/fa/pull/5758

Edit: Using MuzzleChargeDelay instead of RackSalvoChargeTime can also make the launcher not respond like you would want it to, it'll fire in 5 seconds regardless of the launch order being cancelled.

Hello Rama,

thanks for you work. it keeps me playing FAF.

v287 and current client version from 12.07.2024 -> Transporters are super slow, as you mentioned in chat,.

Hello Rama,

we just played on Seton's #22930939, you can see that around min 37 and min 57 the mobile SMDs did not work (once for choco and once for mansR). In the past I had it quite often, that the mobile SMDs did not work (even if you had both, mobile and stationary, next to each other), so I always go the UEF SMDs w/o any mobile. Also the UEF's SMDs are currently the only SMD buildings which can be constructed. I'm not sure what interacts here wrong.
On some maps SMDs do not work at all, like on the Epic Water Pass where SMDs in the brown corners do not send anti-nukes #22890868
Anyway: in general these are only minor issues, it's a great mod and it's so much fun to play.
Thank you 🙂

@lanthanplan

I checked the replays, and looked like the mobile SMD had issues when on sloped terrain. They did fire, but look to have fired their SMD into the ground. I've adjusted their Firing Tolerance in v288 of the mod, and did some testing on sloped terrain. Hopefully, that corrects the issue.

Game won't start despite HQ spawn being set in replay #22959277, seems to be a map issue.
Error running lua script: ...er\mods\ai wave survival\hook\lua\ai\aibehaviors.lua(19115): attempt to call method `GetArmyIndex' (a nil value) stack traceback: ...er\mods\ai wave survival\hook\lua\ai\aibehaviors.lua(19115): in function `GetAIOrHumanEnemyBrain' ...er\mods\ai wave survival\hook\lua\ai\aibehaviors.lua(19354): in function <...er\mods\ai wave survival\hook\lua\ai\aibehaviors.lua:19324>

Also it's frustrating to lose to SMD having issues with nukes:

  • would be nice to have front-targeted nukes fire first so front SMD can kill front nukes instead of rear-targeted nukes.
  • change the SMD projectile to bypass terrain and have better turning so that it is more consistent.
  • Maybe create some new weapon code to improve SMD targeting so they don't lock up the target for so long. There is already some code to do that in the FAF repo applied to TMD so I'd start there (DisableWhileReloading bp field).