game evaluator - adQuid/DecentAI GitHub Wiki

Decent AI needs some way to determine if it's winning or losing. The Score object returned by the game evaluator is complex, but to integrate with Decent AI you only need to worry about its one public constructor, which takes in a map from strings to big decimals for each category of the score. Score categories are helpful for debugging and may be used later for diplomacy, but are all weighted equally when comparing scores. There are no predefined categories for the score; this is solely for getting context for what aspects of the game are influencing AI choices most.

Higher scores are considered better than lower scores, with no universal scale; 10 points can mean completely different things between two games. Decent AI does work with negative values, but exploits could occur with more complex diplomacy, so in any game where players can make deals with the AI you will want to keep scores positive when possible.