Warlords TBS Series
Spin-off Projects
Home
Forum

Welcome,
Guest
|
25th Anniversary Project
(1 viewing) (1) Guest
TOPIC: 25th Anniversary Project
Re: 25th Anniversary Project 3 months, 3 weeks ago #3916
Update: I've realized that balancing for single player means most of all, playtesting at which gold cost the AI will build my units with their stats when they're in regular slots.
And the AI doesn't seem to value abilities like missiles or banding very much at all. It's tricky, but there are workarounds. Most of all, it's pretty time consuming. |
|
|
Re: 25th Anniversary Project 3 months, 2 weeks ago #3919
Been away on vacation for a couple of weeks and dodging hurricanes here in Florida. But I've been following your posts so I'm sort of up to date.
Glad you worked out the summon/shatter logic on your own. What you worked out is what I recall in terms of what level is needed to do what. One thing I do recall Steve mentioning is the items that cost 2000 (I think that's the max cost) can't be shattered/summoned. The only items that are set to that cost are the 'flags' in the Capture the Flag / Heirs to an Ancient Power game options. The reason being that you might not be able to end the game. Not sure what qualifies as Great Artifact, and in fact there may not be any such items in the normal item sets. Given the randomness of summoning items, if I were you, I'd do one of 2 things. Either make the ability point cost to get the spell cheap (1 ap) OR make the cost of casting cheap (6 mana range). The reason being that most of the time no one uses this because it's not worth either the mana or AP cost since the summoner levels take a while and mana is typically scarce. You might even need both things (1 AP cost and 6 mana) to get it used esp when you consider how summon creature spells work (AP and mana cost). KGB |
|
|
Re: 25th Anniversary Project 3 months, 2 weeks ago #3920
Hannibal,
I did see your personal email about the AI. Do you still need a response to that in an email or would you prefer to just have another separate discussion in another thread? I think the reason the AI doesn't value Banding is because it's a DLR addition (wasn't in ROH) and I am not sure how much the AI changed between the 2 games (a lot of the additions were for the new game options like capture the flag, utopia etc). Archery was around in ROH but the +3 bonus vs fliers only came about the the 1.02 update which definitely didn't include any AI additions. I think other players before you experimented with trying to get the AI to better utilize army sets if humans hand built them (what you are doing). Again, this is from memory, but I think the AI favors the odd numbers slots (1/3/5/7) over the even numbered ones. So for example if you are putting 1 turn units in slot 1 and 2, you put the one you most want the AI to build in slot 1. You'll have to experiment and confirm that. The most obvious way to help the AI in human vs AI games is to give the AP 'boost points' like +2 strength to all units type thing. The other thing that will really help the AI is to edit the default.rul file and change the bonus range from +5/-3 to something like +5/-1. The reason is that it's very hard for the AI to put together stacks with all 3 negative bonus's but easy for humans to do so. So the limit of -1 handicaps human players greatly because it means they can't get the AI units at -3 (making all 4 strength and less units 1 strength) so the -1 limit makes the 3 and 4 strength units more valuable. KGB |
|
Last Edit: 3 months, 2 weeks ago by KGB.
|
Re: 25th Anniversary Project 3 months, 2 weeks ago #3921
Hey! Good to have you back, and I hope the hurricane didn't do too much damage.
I've been more active recently on the Warlords subreddit, so you can find more details on my progress and findings there. There are a few more readers there, but not many people who can offer constructive feedback, at least so far. One thing I've noticed is that to some extent, you can trace the AI's priority by looking at the default fight order. It will change as you modify stats, at least those that matter to it. I will definitely experiment with slot priorities. Though I'm not creating army sets by the usual rules, I'm editing the 'sides.dat' files with the scenario editor. I'd stay away from modifying the underlying rules too much; there's always the option to boost the AI sides with the personality system for extra challenge. One thing I've learned is that it doesn't seem to value missiles at all. I put it at 9 for all units, and the AI still wouldn't build them. Same for terrain combat bonuses. Vs cities is really valuable, but the AI doesn't care if you put it at 5. Regarding Summon Items: The special Great Artifacts from the extra game modes all cost 5000 gold. There are normal Great Artifacts that only cost 2000 and can appear in random maps - Bane's Crown, the Godsword, Cross of Power and Bow of Speed. Shatter can definitely destroy these, but you can't ever summon them. The 5000 gold ones might be immune, but I haven't tested that. Your suggestions to boost Summon Item are good, but I've done something else - I've created a Craft Armaments spell that combines Summon Item and Create (Clay) Golem. Those got a slight boost too - from Str 4 +1 vs city to straight 5 without terrain bonus. Without editing units, the K-Alchemist's Summon Stone Golem spell was a solid improvement, but I've buffed those too, and I'd rather err on the side of keeping summoned units weaker. And that opened up an ability slot for the Poison Gas spell I had in mind for the Alchemist. I'm still interested in getting a look at the source code, but I've also been in correspondence with SSG's Roger Keating about that. He's currently busy with student exams, but he might get in touch again next week. I'm no programmer, but I might corral a friend or two to help me there. |
|
|
Re: 25th Anniversary Project 3 months, 2 weeks ago #3922
No major damage from the hurricane. Just some branches down to clean up.
I didn't know there was a Warlords subreddit. Can you post the link and why wouldn't they just come here to discuss the game? Editing the sides.dat file is the way to go since a lot of players will just select random maps /side and play. Are you also editing the neutrals as well since some maps are loaded with gold and good units and some aren't? I suspect if you don't edit the default.rul file that you'll never get the AI to play remotely decently. The -3 is a HUGE advantage for players who can achieve that easily while the AI is lucky to just get -1. That -3 makes all 4 strength and less units basically 1 strength. I am not surprised the AI doesn't care about archery or terrain bonus's. My guess is that's because strength is the #1 thing it values (this is why strength items like Cross of Power are valued so highly). A 3 strength unit is much better than a 2 strength with +2 missiles and terrain bonus's are impossible to count on (again a 3 strength is much better than a 2 with +2 vs city). Of course human games evolved into flying hero stack games due to all the Dragons added in DLR (and later Stormheim) which makes archery mandatory but the AI has no idea about that. The 5000 gold items are definitely immune. That's why they were set that high. Changing the spell to summon a clay + item makes up for not summoning stones. Still, a 5/2 +1 trample unit isn't that great. What make the stones valuable was the +2 trample so they could 1 shot 3 hit units like Elephants. Let's see what Roger remembers. I have the code around someplace (haven't looked at it in probably a decade or mode) and it's in C/C++ style. It's spread across a lot of files too but I might be able to find specific things if you have an exact list of what you are interested in. KGB |
|
|
Re: 25th Anniversary Project 3 months, 2 weeks ago #3923
Warlords on reddit is here:
www.reddit.com/r/warlords/ You probably need to create an account, but you could also try this: old.reddit.com/r/warlords/ Reddit is just a convenient hub for all kinds of different communities. Registering here is probably a hurdle for most. Do you know how the slot assignments for neutral units determine how common they are on the map? That's one question that could be answered by the code. It's possible that the slots don't matter at all, and they're distributed according to their value. Either way, neutrals should be balance so each of the random sides has a chance to produce some of the neutral units vs having to pillage them. I see your point about changing the rules, but assembling a good synergistic stack is the core joy of Warlords to me - especially when playing scenarios with pre-made sides or random maps, where you start out a little handicapped. Hardcore players will already be able to make that kind of change without me prescribing it for them. I want to keep things accessible for any potential newcomers to the game and its mechanics. My current plan for missile troops and similar is to put them in the merc slots, where the AI will get them no matter what. We'll see how well that works. What I landed on, in hind-sight, for summoning units is basically two tiers. Units like Archons and Fire Demons, which are strong enough for a hero stack, and chaff that's mostly supposed to be useful for expanding against neutrals. I've cut the horde summoning spells entirely. To go over them in detail: I really like Necromancy, even though it's a bit impractical. It felt like a bit of a cheat that the Necromancer could simply summon the strongest units outright, for a lower AP investment. So What I have are two summoning spells to complement Necromancy: One that summons 3 Skeletons and a Wight as a replacement for vanilla Reanimate. And, instead of Wraithcall, a 2AP spell that summons a Spectre. The Summoner has three spells: at the top end, the familiar Summon Fire Demon as a slightly cheaper mirror to Divine Aid. At the bottom, a cheap spell to summon an Imp and a Hellhound. Since Ice Demons now have a strong Fear bonus, I ultimately decided to remove their summon entirely. Instead, Wild Hunt summons Hellhounds and Nightmares, and with enough of them, those will become 8/2 units due to their banding. I do think banding is a nice ability for summons, as it scales up with numbers. The Vampire also got a summoning spell. What I've tried out with him is having a fast non-group movement spell, Celerity, and the ability to summon chaff on site before attacking neutrals. Vermin Call summons 3 Rats (banding), 2 Bats (scouting) and a Warg (assassin/gnoll protection). How well that works in practice, I don't know, but I've seen the AI use it already. The Shaman was a bit of a late addition, but since I already added Wargs into the 15 limited summon slots, I thought summoning a wolf pack as chaff was thematic. The Alchemist, you already know. There, I thought Stone Golems are good enough that they warrant a unit slot, if you want to use them. It felt wrong to skip over Clays for the spell. Combining it with Item Summoning seems like a good compromise, but it's definitely a chaff unit. Regarding the code, my top priority is still knowing how the AI determines a unit's value, how much weight each stat and special ability has for that, and at what stat ranges weaker, faster and stronger, slower units balance out when it decides on which production to buy. If you could find that, that would help me immensely. At this point, I'm committed enough to learn rudimentary C++ myself, if I have to. |
|
|
Re: 25th Anniversary Project 3 months, 2 weeks ago #3924
Hannibal Rex wrote:
Do you know how the slot assignments for neutral units determine how common they are on the map? That's one question that could be answered by the code. It's possible that the slots don't matter at all, and they're distributed according to their value. Either way, neutrals should be balance so each of the random sides has a chance to produce some of the neutral units vs having to pillage them. I'll need to check the code to see how units are assigned to neutrals from the neutral set. From what I recall, the 15 unit neutral set normally DOES have 1-2 units from all 8 sides so that everyone gets at least something by default in some cities. Of course that's still random because sometimes it's a 3/4/5 turn unit and other times it's just 1 or 2 turn units. It's going to be hard for you to do this thematically because traditionally the Black side was always Evil and the White always good and others neutral etc. It will likely take you a while to do all the neutral sets since there are 8 sides per set. Hannibal Rex wrote: What I landed on, in hind-sight, for summoning units is basically two tiers. Units like Archons and Fire Demons, which are strong enough for a hero stack, and chaff that's mostly supposed to be useful for expanding against neutrals. I've cut the horde summoning spells entirely. The idea seems OK on the surface but not sure how it will work out in practice. A lot of times heroes got to summon better units to make up for the fact they lacked important skills (speed/teleport, 1 ap cost to reach +5 in a bonus or really powerful spell). Chaff units are mostly useless after the first 10 turns when the neutrals are conquered. Hannibal Rex wrote: To go over them in detail: I really like Necromancy, even though it's a bit impractical. It felt like a bit of a cheat that the Necromancer could simply summon the strongest units outright, for a lower AP investment. So What I have are two summoning spells to complement Necromancy: One that summons 3 Skeletons and a Wight as a replacement for vanilla Reanimate. And, instead of Wraithcall, a 2AP spell that summons a Spectre. The problem is Necromancy is very hard to use. Only works on offense and only brings the best units (Undead Beast/Undead Dragon) at level 5 and only when killing large stacks. Summoning a Spectre is cool and I once did that in an early version of KHeroes but had to remove it due to the 15 army limit since Necro already uses 5 slots (Skeletons/Wights/Wraiths/Undead Beasts/Undead Dragons). If you run out of slots maybe you can change to Summon an Undead Dragon for like 15 AP. Hannibal Rex wrote: The Summoner has three spells: at the top end, the familiar Summon Fire Demon as a slightly cheaper mirror to Divine Aid. At the bottom, a cheap spell to summon an Imp and a Hellhound. Since Ice Demons now have a strong Fear bonus, I ultimately decided to remove their summon entirely. Instead, Wild Hunt summons Hellhounds and Nightmares, and with enough of them, those will become 8/2 units due to their banding. I do think banding is a nice ability for summons, as it scales up with numbers. Seems like an OK change to replace Ice Demons with Nightmares. They have always been under used though thematically they make more sense with a Necromancer than a Summoner since they are more in the death realm than demon realm. Hannibal Rex wrote: The Vampire also got a summoning spell. What I've tried out with him is having a fast non-group movement spell, Celerity, and the ability to summon chaff on site before attacking neutrals. Vermin Call summons 3 Rats (banding), 2 Bats (scouting) and a Warg (assassin/gnoll protection). How well that works in practice, I don't know, but I've seen the AI use it already. Really too bad you aren't going with Stormeheim units. Vampire Bats with the +1 Assassination skill would have worked way better. Most of this stuff is absolute garbage even if the AI used it so it's probably a waste to use mana on it. Hannibal Rex wrote: The Shaman was a bit of a late addition, but since I already added Wargs into the 15 limited summon slots, I thought summoning a wolf pack as chaff was thematic. The Alchemist, you already know. There, I thought Stone Golems are good enough that they warrant a unit slot, if you want to use them. It felt wrong to skip over Clays for the spell. Combining it with Item Summoning seems like a good compromise, but it's definitely a chaff unit. So did the Shaman get a spell to summon units? He really didn't need anything as he very usable as he is with 3 very useful spells and 1 AP skill buy. From a Dungeons/Dragons perspective, Clay Golems were always associated with Priests while Stone/Iron were associated with Mages. I understand why you went with Clay to balance out the Summon Item spell. I'd need to see the rest of the Alchemist (XP table, AP per level, AP cost for abilities) to figure out whether the Clay will be useful or not. The Alchemist always had a very slow XP table and not a lot of AP points so Stones were the only thing that made him useful (besides Teleport). Are you sure you are under the 15 summoned Army limit? Necro: Skeletons/Wights/Wraiths/Undead Beasts/Undead Dragons/Spectres = 6 Summoner: Imp/Hellhound/Nightmare/Fire Demon = 4 Vampire: Bats/Rats/Warg = 3 Priest: Archon = 1 Alchemist: Clay Golem = 1 That's 15 right there. Does any other hero summon anything? Hannibal Rex wrote: Regarding the code, my top priority is still knowing how the AI determines a unit's value, how much weight each stat and special ability has for that, and at what stat ranges weaker, faster and stronger, slower units balance out when it decides on which production to buy. If you could find that, that would help me immensely. At this point, I'm committed enough to learn rudimentary C++ myself, if I have to. I'll try and find the code and then find time to look. Might be a while. KGB |
|
Last Edit: 3 months, 2 weeks ago by KGB.
|
Re: 25th Anniversary Project 3 months, 2 weeks ago #3925
At this point, it might be more practical if you installed the mod and had a look at my changes with Molotov's editor. For myself, I've found it convenient to have two separate installations of W3, one with my changes, one without. It's only around 300MB, I think.
At the heart of my hero rebalancing is a common XP and AP progression. The Warrior and General get a 10% xp discount. The idea was, if I get enough feedback to tell which heroes outclass the others in MP, I'd start with a 10% xp penalty for them and go from there. One thing I've tried to 'help' the AI was to change the movement ability to 6 move for 2 AP, and then have an AP progression where heroes get 1 AP up to level 4, and jump straight to 3 AP at level 5. It works halfway - the barbarian, thief and ranger will spend those 3 AP on Speed, which was one of the goals, but I haven't seen the AI buy other 3 AP spell or abilities. It will still buy movement, even if it means leaving an AP unspent. Currently, I'm experimenting with putting it at 12 move for 4 AP. Maybe only for those classes which have a movement spell, though. I'm exactly at 15 summons; the Shaman has 3 wargs for 8 mana, I think. The nice thing about how flexible creating custom spells is, you can always go back to the drawing board. Shaman, Ranger and Monk were the classes where I had the least fleshed out concepts thought out, and came up with a few spells in the spur of the moment to fill leftover ability slots. I have a generic +1 fortify/+1 engineering spell, that many classes can buy, but the Alchemist and General are the only heroes with access to high-level engineering. I think Anomander and I come at the game mostly from a 1 army start, while I think you mostly play with 3000 points, so that's why we value it more highly. The Wizard no longer gets Shatter, so that's another Alchemist exclusive. I have a few classes with different Siege spells, (Wizard, Monk, Shaman) and the Alchemist has one that adds poison. One thing I've noticed with custom spells is, while the AI will buy 1 AP ones, it really doesn't seem to like those that cost 2 or 3 AP. But I may not have seen it because the AI rarely reaches high levels when left to play against itself. I'm back to tweaking unit costs after watching the AI play some more. I've noticed the AI rarely buys 600 gp wraiths if it can get slayer knights for 800 gp, but when the next better units are undead beasts or dragons, for 1200 or 1400, wraiths appear a lot more. For balancing neutrals, I'd really like to get unit costs nailed down first, so I can recreate the random sides properly as army lists, and know how much mana, gold, etc they should have left over. Then, I'd match the neutral sides to the most appropriate units for each of the 8 randoms. |
|
|
Re: 25th Anniversary Project 3 months, 1 week ago #3926
I've got some feedback and code insights from Roger Keating, and I thought I'd share:
When evaluating armies, the use the algorithm Strength + 2* hits + bonus + a 4-sided die (adding 0 to 3 points). The bonus can be 0 through 5 based on the siege, power, scout, fast, and very fast Updating City; LIGHT_FLYER, CLASS_FLYER, LIGHT_GRUNT, CLASS_GRUNT, SIEGE, SCOUT, POWER, FAST and VERY_FAST are looked at in producing armies If the city's current status is search, look for flyers If active then the class grunt Else a light or class grunt Use the above algorithm to decide the best army to produce Scout: This is a move bonus indication such as an elf or a dwarf. Fast: 16 for fast and 24 for very fast. Take note: These are all flags. The 0 to 5 is because each value can be 0 or 1. I've asked for confirmation on a couple of details, but the takeaway is this: Hits are rather overvalued. On the surface, a 1/4 Dwarf Runner gets the same score as a 5/2 Heavy Cavalry, or a 7/1 Plague Carrier. Movement speed below 16 is best seen as being penalized, which is fair. Very fast units, like Eagles or Air Elementals don't get any additional points over Pegasi or Griffons. If it's true that any bonus power, regardless of value, can only add one point, that would explain a lot. It also means you have to give strong bonuses to units which already have good stats if you want to see them prioritized. There's no room for finesse here, unless you put together a very carefully curated army list for the AI. |
|
|
Re: 25th Anniversary Project 3 months, 1 week ago #3927
It looks like that methodology was entirely based on War2 where bigger bonus's really didn't mean much since there were so many 'negate skills'.
It explains why the AI plays so poorly because it doesn't have a clue how to evaluate units even if it has a decent army set. It's also clearer than ever that if you want the AI to have any chance you are going to have to limit the bonus range to +5/-1 because the AI doesn't care between a +5 or a +1 bonus. It's such a shame the 1.02 source code was lost because VVooger and I would updated the AI multiple times to fix things like this in the same way I made the War4 AI so much better after using multi player experience. Now we need to know what Light Flier/Class Flier/Light Grunt/Class Grunt etc are. From what he says it doesn't look like the AI even considers making units with 'power' skills or very fast at all. I wonder how it considers cost vs amount of gold in treasury. KGB |
|
Last Edit: 3 months, 1 week ago by KGB.
|
Time to create page: 0.66 seconds