Jump to content

Recommended Posts

As mentioned on Devstream we have been trying some experiments with Defense spawns. It all started with looking at performance problems and ended up being quite a lot more involved.

 

Defence missions are different from other mission types because the number of simultaneous enemies increases gradually until wave 10. Compared with the enemy counts in Survival missions you can see some differences that might be worth tuning.

 

For easy missions it starts out with significantly fewer enemies than Survival and still ends up with less enemies at Wave 10 for a full-squad:

 


jAEPT0s.png



 

For harder missions it's kind of warped the other way:

 


Cj0BDAZ.png



 

By wave 10 a full squad has to deal with significantly more enemies than Survival but this seems unnecessary since unlike Survival they are all concentrated in one place.

 

The new version we are trying uses a consistent number of enemies (like Survival); there are still the same total number of enemies of per wave but the number attacking at once has been tuned so there are more at the early waves (so it isn’t boring) and less at the higher-waves (so it still runs smoothly).

 

In order to keep the difficulty the same we are trying something a little different with way it selects spawns: in the current Defense code the type of enemy to spawn is selected at random but the problem with this is that during each wave the difficulty is roughly constant – there are a few random peaks when a harder enemy gets spawned but otherwise it lacks interesting structure:

 


YkCLYUf.png



 

The new code generates random enemies (using the same probabilities as before) but shuffles all of the enemies in a wave to shift the heavier enemies to the end of the wave: 

 


fD2Z966.png



 

As you might have guessed the algorithm uses the enemy’s kill-XP to determine how much of a threat it is; in practice this means you start with infantry units (Crewmen, Butchers, and Lancers), then support-units (Moas, Healers, and Nullifiers), and you finish with heavy units (Gunners, Bombards, and Eximus). Another side-effect of the way the algorithm works is that enemy types that have constraints on the number of simultaneous units get more evenly spaced out throughout the battle-plan; this is particularly noticeable for Shield Drones and Corrupted Ancients and makes the enemies more tactical in their assault.

 

In my initial testing of T1D and T3D the new scheduling algorithm felt really great: each wave starts easy and gets progressively more intense until it peaks at the end. It feels much more exciting and makes the break between waves so much more refreshing. I even found myself rationing my energy pool for the end of the wave so I could handle the pressure of the final push.

 

So the only question left is: will this make it in for Update 17?

 

I hope so - the code is pretty much done. The time consuming part is to go over the enemy specifications for all of the defense missions in the game and make sure they generate battle-plans that are fun and difficult; this is largely sensitive to making sure the enemies in the game have properly tuned XP values assigned to them. Void missions seem pretty good so far and I’m pretty content with how Orokin Derelict Defense is running but I still need to go over Grineer and Corpus missions still and testing for balance takes time. I hope we can share these changes with you soon!

 

Link to post
Share on other sites

Well heared most of it at the Devstream already but there it soundend good already, reading it makes it sound even better. really looking forward to this change and hope its going to be in U17 or not long after that.

Link to post
Share on other sites

Isnt the weighted graph a bit too flat ? The first problem that comes to my mind is being swarmed by mostly Nullifiers at once. Maybe a mix of weighted and random might be better ?

 

Edit : Unless the "battle plans" take care of that.

Edit 2 : Oh and if very slow heavy units spawn last it might become boring if there are long pauses till they arrive at the objective

 

Other than that thx for the work and dont work too much.

Edited by AdFinitum
Link to post
Share on other sites

of all the mission types defense is the most boring of all and actually will put a player to sleep which it has done to myself and a few others I know and play with.

 

 maybe you can save this  maybe not who knows but as it is its a boring  mission type.

Link to post
Share on other sites

of all the mission types defense is the most boring of all and actually will put a player to sleep which it has done to myself and a few others I know and play with.

 

 maybe you can save this  maybe not who knows but as it is its a boring  mission type.

 

Yes.

Also, camping survival will do the same thing.

Even Interception, sometimes.

Link to post
Share on other sites

good stuff glen, thanks for this

 

basically anything that makes the enemy units act in a more coordinated fashion is a plus in my eyes

 

but vVv

 

It looks good, although I'm wondering about the XP weighting. Wouldn't it be better to have heavy enemies interspersed with groups of light ones, rather than all together?

 

^^^ what he said is also a valid point

 

but bottom line, glad that something is being done on this front

 

ideally looking forward to the future, it would be really great to actually have the enemies in Warframe show some form of tactics and take advantage of their individual abilities (currently this is only done by the individual units zerging and just using their individual abilities, which differentiates them to a certain degree, but at no point do the enemies ever feel like they are working as a team of any kind whatsoever, it never felt so bad back in the day, but after 2+ years and other systems in the game have gotten more complex, the enemy unit AI is really showing its age)

Link to post
Share on other sites

Love demn charts....

But i wish games spawn at least 50% moar enemies for survival and MD.

We need moar enemies so we can get moar exp and moar loot and thus give us less reasons to go to Interceptions.

Link to post
Share on other sites

man, almost enough Charts and Graphs to be the Chart Master, Glen. you too can be the Spreadsheet Sensei master.

anyways, i've been liking the adjustments to Defense, and how the adjustments have themselves been adjusted as the days pass. they've been shaping up well - and makes Defense considerably more interesting, while less annoying at the exact same time.

just don't forget that Detron Crewman, Seekers, Shield Lancers, Sniper Crewman all have XP values that absolutely do not match their relative threat level to the Player and completing Missions.

Elite Lancers and Elite Crewman... perhaps they should be a bit higher than their normal counterparts? they're the exact same XP count atm, 50XP. for the generator to differentiate between them better, Elite Lancers and Elite Crewman should probably be 60 or 70.

Oxium Ospreys are literally the most durable non-Boss Enemy in the game. 750 Health and Armor. the Armor is of a generic Type, meaning no Multipliers on it can be gotten. this makes it the single most durable Enemy in the game. yet it gives only 50XP.

that can't be right. they usually aren't super lethal, but they can cause Damage and the Players may or may not be able to Kill it before it does so, due to it being so incredibly durable.

because Electric Mines from Sapping Ospreys do incredible amounts of Damage, Sapping Ospreys should be 100XP IMO.

Mutalist MOA's are only worth marginally more XP than Infested Trash Units. they're definitely not a Trash Unit, though. they have Ancient level of Health(only 50 less base) and can slow Players and significantly buff the other Infested, while being quite mobile. should be 100XP IMO.

inversely, Mutalist Ospreys don't seem like they're worth their 105XP. they're not really that dangerous on their own. 90 tops if you ask me.

i realize we don't have Archwing Defense yet, but Temporal Dregs are generally more dangerous than Trash Units. 60-70XP range to differentiate IMO.

The first problem that comes to my mind is being swarmed by mostly Nullifiers at once. Maybe a mix of weighted and random might be better ?

well. er.

Another side-effect of the way the algorithm works is that enemy types that have constraints on the number of simultaneous units get more evenly spaced out throughout the battle-plan; this is particularly noticeable for Shield Drones and Corrupted Ancients and makes the enemies more tactical in their assault.

Nullifiers fall into the Category of Constrained Enemies. Edited by taiiat
Link to post
Share on other sites

-snip-

that was extremely unnecessary.

Nullifiers are already in that Category of Enemies. they always have been.

all of the highly specialized Enemies that do very different things like Nullifiers, Healers, Et Cetera - are all already in this Category.

Link to post
Share on other sites

just don't forget that Detron Crewman, Seekers, Shield Lancers, Sniper Crewman all have XP values that absolutely do not match their relative threat level to the Player and completing Missions.

 

I talked to Scott about the Detron Crewmen and he approved tuning their damage output to be more inline with comparable units.

Link to post
Share on other sites

I talked to Scott about the Detron Crewmen and he approved tuning their damage output to be more inline with comparable units.

What about the rest of those enemies? Also, the Scorch has been high on players' threat list for quite some time, for similar reasons - their flamethrowers are extremely powerful and often seem to have much longer range than they should. (These enemy issues are especially glaring because the player versions of the same weapons tend to be almost uniformly worse, particularly the Ignis.)

 

That said, an end to the Detron Crewman's reign of unassuming gray terror will be very, very welcome even by itself.

Link to post
Share on other sites
Guest
This topic is now closed to further replies.
×
×
  • Create New...