Brad Wardell's views about technology, politics, religion, world affairs, and all sorts of politically incorrect topics.
Published on April 24, 2012 By Draginol In Elemental Dev Journals

Update: 

Hour long AI test video for the truly die hards who want to see all the mistakes:

http://www.youtube.com/watch?v=nnPKHQIksrA&feature=youtu.be

 

I see all. I know all. At least, when it comes to this map.

image

In the top left we have Markin, leader of the AI civilization of Gilden.

In the bottom right, we have me, Draginol, leader of Pariden.

How many turns will it take me to wipe them out? What mistakes will the AI make that can be exploited (and fixed)?

First…some notes

This build is 0.911 which has some balance updates to make sovereigns and champions a little less powerful. The monsters are somewhat more aggressive and the AI has had some general improvements since 0.91.

Second…help me!

If you see me making a mistake, let me know.

Early Game:

I train up two pioneers and then the tower of dominion. I recruit a champion and send the champion in one direction and my sovereign in another.

(to be continued).

image

Othollo vs. Black Widow monster. Othollo has stone skin enchantment on him already.

Othollo wins.

Opinion: Level 1 champion shouldn’t be able to take out a black widow. Suggestion, Stone skin should do +4 defense plus +4 per earth shard.

image

Same issue:

image

My first level sovereign took out a troll by himself.

Opinion: Troll should get 2X more HP than it currently does.

AI Early game: Meanwhile…

image

Lord Markin just did the same thing. However, he isn’t using stone skin.

Opinion: Stone skin should be a “gotta have” for the sovereign.

Let’s look at the code…

Ok, this is where “strategy” comes into play in AI writing.  The code is very conservative about casting spells with regards to mana.  So at the start of the game, it doesn’t cast a lot of spells even though, IMO, it should cast some spells as early as possible even if it means lowering the available mana.

There are a few ways to do this:

1. Have an XML value for “Early Game AI multiplier” which tells the game to multiply the value early on.

2. Have the code take into account that the value of storing mana should be different at different times in the game.

3. Treat certain unit targets different than others (the value of a spell that affects a sovereign is different than a spell that might target a champion that is stationed in a city).

etc.

AIs in the mist

image

As you can see, the AI is intent on building a civilization. An admirable goal to be sure.  But not a good strategy.

By contrast…

image

My early development has focused on training up pioneers and now soldiers to go out and conquer.

With those units, I go out and level up:

image

 

By contrast, the AI leader is Soloing it:

image

Mind you, it’s not that I don’t think about sending units to reinforce the sovereign.  It’s always a balance between how far should it send them and how long should the sovereign wait around? What’s the attrition rate of units getting to the sovereign? Should I send the sovereign home or keep him in the field?

There’s a lot of tweaking that goes into this sort of thing that improves iteration by iteration.

Combining Heroes

image

One thing the AI does is that once champions get to a certain level, it will gradually put 2 in an army and potentially 3 or more depending on their level.

This is something I have to tweak almost every build because what is a “high enough” level changes.

Now, In this battle the AI is escorting pioneers with two champions and a Drolgard (a mid level Gildenian unit).

image

The AI (bpttp, left) casts stone skin on himself and then gift of iron right off the bat.

Gilden’s Drolgard unit is better than my Destiny’s Guard unit but he only has 1 of them (the other is a scout). But he does have two champions.

Let’s see what he’s done with his champions:

image

Yeesh. Level 12.  This is why I get nervous about changing the soloing behavior. Because there is a cost to having the AI wait around for escorts even if he does get killed a lot more often.  If sovereigns got injuries, I’d have to rewrite this.

His other hcampion isn’t that great.

image

vs.

image

It’s going to really boil down to whether I can take out his units and his extra champion I think.

image

On the second round, the AI Markin cast growth on himself. Then his champion cast haste on him. So this is not looking very promising.

image

The growth spell AI Markin has is self explanatory. And bad for me.

image

So if I should have done something differently there, feel free to tell me.

 

…later, Lord Markin is alone. How powerful is he?

 

image

This is a bit of an ambush but let’s see what I can do against him.

His first turn he casts growth.

His second turn he casts stone skin.

His third turn he casts gift of iron. Very wasteful. Will check his mana after the battle. But it’s pretty bloody nasty combo. He has a 63 defense.

Here is how the rest of the battle goes:

http://screencast.com/t/uuG8UvkqKO

He only has 65 mana left so he must have determined that he needed to win that battle.

So that’s enough for today.  Plenty to integrate in for this week.


Comments (Page 2)
5 Pages1 2 3 4  Last
on Apr 24, 2012

It looks like you are observing what I am observing.  Monster hp should be up a bit.  I don't think my brand-new sovereign should be able to take on 2-3 bandits solo.

on Apr 24, 2012

I don't know what changes were made to that build, but what I generally do is:

Start with sov until I find a champ, recruit him and then gather as many goody huts as possible while killing monsters. I have a question here: I usually go in a single group with the premise that the exp per monster is the same regardless of whether I'm alone or not. But going in group, I think, has the advantage of not losing any potential experience and, at the same time, being able to face stronger monsters. Is that correct? Anyway, once the level ups start coming, If available, I choose the +exp ones over the rest, to make the xp gain as efficient as possible.

In the meantime, while my sov and hero/s are busy roaming around and gathering stuff, completing quests and killing monsters, I'm usually building growth and production infrastructure. And researching anything to take advantage of the resources nearby ASAP (mining, channeling, etc.).

After that I pop out pioneers and start making outposts and cities. My sov/hero stack is usually already strong enough to face stronger monsters or some AI.

As for enchants, yes, I think they are very important to have the AI use them. I try to enchant all my units with everything possible, but if I'm afraid I'll be short on mana, I then prioritize protective enchantments to a designated tank (usually my sov!) leaving the rest unbuffed. The AI likes to attack their closest target.

Oh, and I DEFINITELLY agree on making the powerful artifacts (but also powerful units) come from difficult monsters/quests.

on Apr 24, 2012

Werewindlefr

Opinion: Level 1 champion shouldn’t be able to take out a black widow. Suggestion, Stone skin should do +4 defense plus +4 per earth shard.

 Or make the monsters really powerful, instead? The main issue, as I see it is that monsters are laughably weak. 6 armor + 3 per shard looks fine to me, a giant spider that has as much attack as a peasant with a mace (less, actually) and a low number of HP is the real problem.
 
My opinion is that champions and sovereigns should BECOME titans of power.
They don't - unless they go on the path of the mage with 3 evokers traits, in which case they become living gods.
 
Currently, heroes are strong peasants with artifacts (Sword of the Sun and the Moon, Doom Club, etc.), not Titans of power. Conan isn't strong because he loots artifacts, Conan is strong because he can behead a demon with a rusty sword.
 
Melee heroes that do not loot an artifact from a unique monster are weak, because the traits are weak (well, actually, they can be weak and invulnerable thanks to the unbalanced amounts of armor one can have currently). +1/+2/+3 attack or +1/+2 initiative doesn't make a hero compete with 7 guys with battleaxes. 

 

Suggestion:


New concept: prestige classes.  Require lvl 8 and a path skill.

 

Have classes like swordsmaster, barbarian, mediator, ranger- attached to the various paths.  These paths should give the real bonuses. 

Defender/Warrior/Assassin need to be buffed, Governor should use non-combat buffs (Krax's diplomat ability should be in path of the governor by default possibly), Mage doesn't really need nerfing except for evoker.

 

Evoker needs to be nerfed hard.  Dirge of Ceresa+ Evoker III= Ceresa can nuke anything in the game one-shot that isn't a dragon-class monster.

 

As for the magic items, maybe they should be just a tiny bit better then regular items, but give a + something per level?

 

on Apr 24, 2012

Maybe the AI should be taking unit counts into account when deciding on spells?

Few units on own side -> use buffs and summons.

Many units on own side, few on enemy side -> debuffs and direct damage.

on Apr 24, 2012

Maybe the AI should be taking unit counts into account when deciding on spells?

Few units on own side -> use buffs and summons.

Many units on own side, few on enemy side -> debuffs and direct damage.

Already does.

As well as determining the value of each unit and how easy to kill those units would be through other means versus how much extra mana they have and how much mana they are producing per turn (to determine how wasteful they can be).

on Apr 24, 2012

Alstein

Suggestion:


New concept: prestige classes.  Require lvl 8 and a path skill.
 

 

It's interesting, and I'd love to see that in a mod.  But Stardock's in late beta, tweaking existing things out.

 

3. Treat certain unit targets different than others (the value of a spell that affects a sovereign is different than a spell that might target a champion that is stationed in a city).

 

I think this approach might work best, in that it finesses by degree better than, say, an early game AI multiplier, or an instruction based on point in the game. 

on Apr 24, 2012

On the stoneskin thing: I'd like to think (and actually suspect) that there is more of a holistic strategy to game balance than this, and that decisions aren't made simply on these kind of anecdotal experiences.

But more than this: we all broadly agree that spells should get more powerful as you get more shards and your caster improves his abilities. We also agree that we don't want to have spells that are simply "greater fireball," because it seems like lazy duplication. But these principles actually clash, because the mana cost of this powerful, scaled spell is still the same as it was when it was it was weak, while the mana cost of your new spells are high. Or to put it another way, why would i cast my new, shiny Touch of Entropy for a tonne of magicka, when Flame Dart does comparable damage for much less? Or, to use a more relevant example, is it fair that a master earth mage with a ton of shards can cast stoneskin and have a godlike defence in the late game, whilst still only paying 1 mana maint for the privelege?

What's more, it's not clear from the descriptions which spells are scaled by the caster's spell power, and in what way. This is very "under the hood," and not how stardock usually designs it's mechanics.

D&D does this quite well in my opinion. It has scaling, but it is of a limited nature. There are still higher level spells that are much better generally (and scale themselves).

So basically, what I'm saying is, the game needs to be consistent in how shards and spell power increase the efffects of spells. It needs to effect slow spells as much as fireballs. But more importantly, it needs to clearly explain how it is doing so. And though I like scaling, I also think the game would be better and easier to balance if spells scaled less (like, max double or triple of basic power) and there was a "greater fireball" for the late game. Shards shouldn't allow you to own a dragon with a flame dart (though they should keep them effective): they should allow you to cast epic magic like curgen's inferno etc.

The current fireball spell is a great (bad) example of this: it does comparable damage to a flame dart given the same shards and spell power (maybe slightly less i think?), but effects a larger area. But it costs much more mana. And it has a longer casting time and could effect my allies (making it tactically much more cumbersome). So once i looked at it I realised it was almost always better to cast a couple of flame darts. Sure, you've decided that since fireball is a bigger and more impressive spell it should have a longer casting time and higher mana costs, and that's fine. But if this game was being designed by the D&D guys they would have (and did, to the fireball spell in their own game) give it higher damage than the lower level spells.

Hope this doesn't sound to ranty or bossy, I just suspect it hasn't been thought about in this way.

on Apr 24, 2012

Opinion: Level 1 champion shouldn’t be able to take out a black widow. Suggestion, Stone skin should do +4 defense plus +4 per earth shard.

I'd suggest to instead increase the downside of Stone Skin. Make it reduce Initiative by -2. Or increase the maintenance cost to 2/season.

 

on Apr 24, 2012

Glazunov1


It's interesting, and I'd love to see that in a mod.  But Stardock's in late beta, tweaking existing things out.
 

I'm curious.  What do you mean by this?

on Apr 24, 2012

Is the spell-decision system based on XML values, or does the AI actually try the spells out to see how much of an effect they have? Maybe it could just try to see how much damage the spell does on average, or how much it changes stats etc if it doesn't do that already... XML-value based AI feels like artificial-non-intelligence to me...

on Apr 24, 2012

Frogboy
My opinion is that champions and sovereigns should BECOME titans of power. But they should start out pretty ordinary.

Funny, I would rather see them in a "leadership" position, so it weren't so beneficial to bup them together lategame.

Sincerely
~ Kongdej

on Apr 24, 2012

Is the spell-decision system based on XML values, or does the AI actually try the spells out to see how much of an effect they have? Maybe it could just try to see how much damage the spell does on average, or how much it changes stats etc if it doesn't do that already... XML-value based AI feels like artificial-non-intelligence to me.

How much damage the spell does is known to the AI via the XML.  When you play, don't use select items and spells based on what they say they'll do? That's what the AI does.

on Apr 24, 2012


What i like to do in early game is build 2 pioneers and a milita.

while they are building i explore around my city and pick what loot i can.

The militia tanks for my sovereign and the 1 hero i can recruit in the first few turns.

I like to play with life 2 so i get the healing spell and i can usually find a hero with water 1 for meditation for immediate city spam to generate mana if i have no shards around me.

This group of 3 units sov, hero , militia gives me the time i need to level them up on monsters and build troops with traits once i get some research and resources unlocked.

my 2 pioneers will grab resources unless i find a high grain or high materials location.

then i go into build mode in my main city and get tier 1 and 2 civ tech to boost it as much as possible. My second city will be a troop producing city.

Generally i find food more important than materials because population adds material production over time and generates your gold and research. A high materials location but low food is only good for pumping out troops - especially if its near a river.

Other than that, my choice of civ tech, war tech and magic tech depends on my local resources.

I do want to try a game avoiding war tech and using the troops generated by civ tech supported by the magic tech  troops, but you need a good starting location for that event to happen.

on Apr 24, 2012

I was wondering about the early-game-multiplier you mentioned in the original post. That felt like basing decisions not on how the spells play but on XML multipliers, and got me curious about how the system works. Another issue which got me curious was that I saw (in 0.90) the AI repeatedly try to cast different spells on a magic-resistant unit. That seemed like it wasn't actually checking the effect of the spell "in real life".

Just interested in this stuff, that is why I am asking...

on Apr 24, 2012

So if I should have done something differently there, feel free to tell me.

Fireball... FIREBALLL!!!!

well your probably wouldnt have won, but you would make a good god damn mess of his pioneers and scouts/spearmen .

Besides, he have no casters or ranged, (well he had buffers), but you could have stayed back and blasted (run to the back of the combat map), also depending on your fireshards, fireball his infantry or firedart his heroes (lots of fire shards = fire darts)

PS: whats wrong with that screencast, it only says there is 1 "lord markin" on the opposing team
Edit: Some "idiot" cant read

Sincerely
~ Kongdej

5 Pages1 2 3 4  Last