.com.unity Forums
  The Official e-Store of Shrapnel Games

This Month's Specials

Raging Tiger- Save $9.00
winSPMBT: Main Battle Tank- Save $6.00

   







Go Back   .com.unity Forums > Illwinter Game Design > Dominions 2: The Ascension Wars

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #1  
Old November 28th, 2005, 01:05 PM

RedRover RedRover is offline
Corporal
 
Join Date: Feb 2004
Posts: 165
Thanks: 0
Thanked 0 Times in 0 Posts
RedRover is on a distinguished road
Default AI: Castle Building Algorithm

I said a while back I would dig this out. I developed it while testing material from Arralen's thread a while back that played with AI concepts.

These thoughts are not in any sort of code, because coding isn't a big skill of mine. So this material is more of a player-imposed discipline for use when trying to play like the AI.

Ever try to play exactly like the Dom 2 AI?
IT'S REALLY HARD!

It's very easy to mix up steps, forget something, or get a procedure out of order. Those who want to experiment should check out the original thread: Post#305932

The material below may be somewhat dated now, since the devs have revealed that in Dom3 the AI will build forts, but this might also spark a discussion about how we as players choose if and where to build forts.

Revised Fort-Building Algorithm

Create FORTFUND
(this is money saved for the purpose of castle building)

Create FORTVALUE
(this is how likely the algorithm is to build a castle)

FORTVALUE = (Number of Friendly Provinces / DIFF) - Number of Friendly Forts

Impossible DIFF = 2
Difficult DIFF = 3
Normal, DIFF = 5
Easy, DIFF = 8

FORTCOST is the listed gold cost for the fort type.

IF FORTVALUE > 0
AND FORTFUND < FORTCOST
THEN move (Treasury * 0.5) to FORTFUND
where Treasury = (Income in gold - Upkeep)
(no build this turn, not enough money, save)

IF FORTVALUE = 1+,
AND FORTFUND > FORTCOST,
THEN go to BUILDFORT
(now we're cooking!)

BUILDFORT
BUILDCHECK PRIORITY
* Province with Black Candle
* Province adjacent to Black Candle
* <random 50%>
* Lowest to Highest Province number
* Highest to Lowest Province number
(while Dom2 seems to go lowest-to-highest fairly consistently as a tie breaker, reversing this randomly is one way to keep players from tracking the AI pattern easily)

BUILD on 7+ IF no fort in prov
3 provinces from nearest fort (any)** +3
rare magic site (summon, ritual bonus) +2
only 2 land neighbors (IF land prov) +2
only 3 land neighbors (IF land prov) +1
Black Candle in province +1
lab in province +1
temple in province +1
special troop type (amph, flyer, stealthy) +1
special commander type +1
indy troop type res>14 +1
each (15 * scale) resources in prov. +1
each ( 30 * scale) gold at 100% tax in prov. +1
per victory point of prov. +1
less than 20 res -1
closer than 3 provinces to a fort** -1
only 1 neighbor province (IF land prov) -2
1 adjacent fort** -2
each add’l adjacent fort** -1

(apologies for not being able to duplicate column format on this list)

**includes forts under construction, known enemy forts, and revealed fort sites.

notes: The (x * scale) numbers refer to base values unaffected by scale. Otherwise, a very high or low Order or Production scale will throw the algorithm off.

I'm not sure how good this is for underwater nations, my gut feeling is that further refinements in this respect may be desirable.

Anyhow, when roleplaying the AI, you simply pick a DIFF level and check provinces for opportunities when the proper conditions line up.

While it might look like there are a lot of pluses on the BUILD list, responders are encouraged to actually try the algorithm in play before commenting.
Reply With Quote
 

Bookmarks


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On

Forum Jump


All times are GMT -4. The time now is 10:53 AM.


Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©1999 - 2024, Shrapnel Games, Inc. - All Rights Reserved.