Hello
A decision tree... that is interesting.
I'm always confused when people say that they are fine tuning their bot. This sounds to me like that the bot is playing nearly at human level. I know about all the flaws of my bot and can assure you that he is far from fine tuning level. If I wasn't bored about coding my bot at present I would know exactly what to do better.
How I determine the move order:
First I calculate the moves without bothering about the order. At the end I take all moves and sort them. I distinguish between safe attacks and risky attacks. Safe attacks are attacks where I get a good fight even with the opponent deploying his full income to the attacked spot. Of course you can make smart stuff here like transfering to an important region first that hasn't got enough armies. Since I precalculate the defenceRegionValue and the neededArmies per region I could add that stuff easily to my bot.
How I determine when to attack:
I always attack when I get a good fight. This is a serious flaw in my bot since I'm not defending important spots. With prediction logic you probably mean guessing where the opponent deploys. Well, since I calculate the region values I just assume that the opponent always puts his full income to the region with the highest region value. That's the reason you see me playing so aggressive when bordering the opponent at two spots from the start. I just assume that he puts his full income to one of the spots and I attack the other one.
Detecting a stalemate is difficult I think. This is one of the few things where I don't really know how to solve them in a meaningful way. At present I define a stalemate as a situation where we both have the same income and neither of us can attack an opponent spot and get a good fight.
Oh... and I never attack neutrals in a SuperRegion with known opponent presence. My bot does know the opponent SuperRegions but he doesen't care if it involves attacking neutrals. Never attacking neutrals in a SuperRegion with opponent presence gives some "interesting" ties when two of my bots play against each other. But then on the other hand you see my bot building these huge stacks in Africa and as soon as the opponent shows up he kills him with that huge stack.
http://theaigames.com/competitions/warlight-ai-challenge/games/535ae29b4b5ab23ee61ac11b@125ch209: Sorry to disappoint you, but it's a bug, not a feature.