- Created Saturday, September 20th 2014 @ 01:53:19
Since I see that you are working on the next WarLight AI challenge I want to give some criticism about the old challenge. You should already know about points like the high luck factor but I think some points could be new for you / could be new for you that they matter for players:
The luck factor is to high.
I think the old challenge had a 100% luck factor but I don't know exactly what that means so you should specify it. Also WarLight has two rounding modes when there is an uneven number of kills like "Round 3.2 kills to 3 or to 4 kills?".
I don't like having luck at all. It's not because I get pissed when a bot get's lucky against my bot but because it adds a huge amount of complexity to your calculations. Without luck I could relatively easily calculate how many armies to deploy but with luck a warlight player has to adapt his calculations to whether he is winning or losing (taking risks or safe play). Also good heuristics about when to expand with 3v2 and when to go for safe 4v2 expansion are very complex (even with 16% luck, weighted random (WarLight luck settings)).
The map of the old WarLight challenge was to limited so hardcoded bots could pull of a victory against bots with more complex heuristics. This shouldn't happen with more open maps.
I think there is still a bug with the amount of armies that you can use, although I can't find a game to show it at present. It should occur in situations like the following: Player 1 has 10 armies on spot A. First player 2 attacks the spot A and kills 5 armies and second player 1 reinforces spot A from behind with another 5 armies. Third player 1 tries to attack another spot from spot A with 9 armies. In WarLight he could only attack with 4 armies now but I think here he can attack with 9 armies.
It doesn't really make sense to give you 2 seconds for your army placement and 2 seconds for your attack-transfer-moves. This is one task and you don't just first place your armies and afterwards think about what to do with them.
In WarLight you have the modes 'attack only' and 'transfer only' where you can specifiy that your move should only be executed when it's an attack move / transfer move. Those modes are very important in competitive WarLight play since it can be a game loser to run into a big opponent stack. (However those move modes kind of break the idea that you have to make your moves without knowing how the board looks like when they finally get executed.)
The top non hardcoded bots (at least obviously GreenTea, Pedrito and SupremeDalek) have quite complex calculations about what is going on behind the fog. However the old game engine didn't really support you here. I hope I'm not wrong about the following points since I let the Java starterbot do all the game engine communication...
It's not that important but in WarLight the way the deployment order happens works the same as the move order happens. That way you can tell if someone deploys in the background if he deploys first order in the background and second order at your border.
As far as I know the game engine doesn't communicate the results of fights so only stuff that the opponent attacked region A from region B with 8 armies but not the kills / losses of the fight. Same goes for your own fights.
Also I think fights that are only half visible aren't communicated to you at all. For example the opponent could move 10 armies from the background to your border.
DeveloperCreated Saturday, September 20th 2014 @ 11:17:50
Thank you for your feedback and suggestions I will definitely take them with me when I continue on the engine.