From: Roland C. <rc...@us...> - 2005-10-02 19:47:36
|
Hello all, There was a bug in the AI that prompted me to look a little closer at the AI code. I think the AI could make better decisions when to play a development card. The AI is called greedy, so it should get as much resources and build as fast as it can, but I think it could delay some actions when it will have no direct benefit. Year of Plenty: Current: will be played anytime the bank has at least 2 resources. If the bank does not contain anything the AI likes, it will request the resources for a road, and if the bank is too empty, it will just pick something at random. Proposed: the bank must have at least 2 resources. If the bank does not contain anyting the AI likes, determine whether it is possible to get enough resources to perform a maritime trade to get the resource the AI needs (in the next turn). If not, determine whether the AI is allowed to place a road [*1] and the resources are in the bank, and request that. If all fails: don't play this card yet. Monopoly: Current: will be played when the other players have at least six resources cards in total. If the AI doesn't need anything in particular, it will pick the resource that all players have the most of. Proposed: will be played when the other players have at least six resources cards in total. If the AI doesn't need anything in particular, don't play it yet. Road building: Current: play whenever two or more road segments are left. Proposed: play whenever two or more road segments are left, but not when road segments are not allowed to be built [*1] Gold: Current: when the AI does want something, get it. Otherwise, start emptying the bank starting from the first resource. Proposed: when the AI does want something, get it. Otherwise, start emptying the bank starting from the resource that has the best maritime trade ratio. Regards, Roland Clobus [*1] Sometimes the AI is not allowed to build a road. Otherwise it would just build roads, and skip building settlements (which require also brick and wood) |