Full Report for Ecalper by Matteo Perlini

Full Report for Ecalper by Matteo Perlini

Ecalper is a 2-player abstract game about negotiation for territory conquest. It was invented in 2010, while the designer were reflecting about the pie rule.


The game begins with an empty 7x7x7 hex-hex board. The game is scalable, so a beginner can start with 5x5x5 and. Expert players should play on 8x8x8 board or bigger.
One of the players uses black stones and the other player uses white stones. Players move alternately, starting with black player.
In the first turn, the black player places just 3 stones. For each turn afterwards, players replace 1 of their opponent's stones placed in the last turn (not the replaced one) by their own, and continues placing 3 more of his stones. In the last turn, black replaces just one of the last white stones and the game is over.
The pie rule can be used.
When at the end of the white turn the board has just 1 empty cell, the last turn starts. The game ends with an unoccupied cell. When the game is finished, the player with the largest group of stones wins. If both players have the same score, the winner is the player with less number of groups. Of course a player may resign at time if the situation looks hopeless, this causes his immediate defeat.
For making the gameplay easier, without memorizing the last three opposite placements each turn, it's possible to mark those stones in some way.


General comments:

Play: Combinatorial

Mechanism(s): Scoring

BGG Stats

BGG EntryEcalper
BGG Rating7.53333
BGG Weight4

BGG Ratings and Comments

epicurus9Designer. If you want to play it on igGamesCenter, PM me.
mrraow7Interesting connection/group game with an unusual iterated pie rule mechanism.
Wentu7.3very interesting game with simple rules and nice original ideas. the available AI seems quite good. I prefer to play on a 61 board just to cut the game-play short.
mickwoodN/A2 Players although there is a three player variant. Can be played on an Ingenious board.
Kaffedrake6An interesting placement abstract. Each turn you place three stones but your opponent gets one of their choice. There are various ways to go about this, e.g. make three decisive moves and be content with two, or put down two or three stones with the same topological significance in order to secure a cut or connection. The goal is simply to make the largest group. I'm not entirely sure how this plays out in practice, but the concept is intriguing. Note that the Axiom program doesn't really know how to play, and isn't even smart enough to concede when it has no theoretical possibility of winning.
Talisinbear8.5This is a game that really grows on you
King Lear8Let's play it at igGamesCenter. My username is ror1991
dlow7Nice. I like the idea of a game based on the pie rule.

Levels of Play

AIStrong WinsDrawsStrong Losses#GamesStrong Win%p1 Win%Game Length
Grand Unified UCT(U1-T,rSel=s, secs=0.01)360036100.0050.00224.17
Grand Unified UCT(U1-T,rSel=s, secs=0.03)360145072.0046.00224.16

Level of Play: Strong beats Weak 60% of the time (lower bound with 90% confidence).

Draw%, p1 win% and game length may give some indication of trends as AI strength increases; but be aware that the AI can introduce bias due to horizon effects, poor heuristics, etc.

Kolomogorov Complexity Estimate

Size (bytes)25700
Reference Size10293

Ai Ai calculates the size of the implementation, and compares it to the Ai Ai implementation of the simplest possible game (which just fills the board). Note that this estimate may include some graphics and heuristics code as well as the game logic. See the wikipedia entry for more details.

Playout Complexity Estimate

Playouts per second41589.73 (24.04µs/playout)
Reference Size396542.15 (2.52µs/playout)
Ratio (low is good)9.53

Tavener complexity: the heat generated by playing every possible instance of a game with a perfectly efficient programme. Since this is not possible to calculate, Ai Ai calculates the number of random playouts per second and compares it to the fastest non-trivial Ai Ai game (Connect 4). This ratio gives a practical indication of how complex the game is. Combine this with the computational state space, and you can get an idea of how strong the default (MCTS-based) AI will be.

Win % By Player (Bias)

1: White win %51.85±3.10Includes draws = 50%
2: Black win %48.15±3.08Includes draws = 50%
Draw %0.10Percentage of games where all players draw.
Decisive %99.90Percentage of games with a single winner.
Samples1000Quantity of logged games played

Note: that win/loss statistics may vary depending on thinking time (horizon effect, etc.), bad heuristics, bugs, and other factors, so should be taken with a pinch of salt. (Given perfect play, any game of pure skill will always end in the same result.)

Note: Ai Ai differentiates between states where all players draw or win or lose; this is mostly to support cooperative games.

Playout/Search Speed

LabelIts/sSDNodes/sSDGame lengthSD
Random playout47,49823810,651,50353,3492240

Random: 10 second warmup for the hotspot compiler. 100 trials of 1000ms each.

Other: 100 playouts, means calculated over the first 5 moves only to avoid distortion due to speedup at end of game.

Mirroring Strategies

Rotation (Half turn) lost each game as expected.
Reflection (X axis) lost each game as expected.
Reflection (Y axis) lost each game as expected.
Copy last move lost each game as expected.

Mirroring strategies attempt to copy the previous move. On first move, they will attempt to play in the centre. If neither of these are possible, they will pick a random move. Each entry represents a different form of copying; direct copy, reflection in either the X or Y axis, half-turn rotation.


Game length224.23 
Branching factor64.82 
Complexity10^331.59Based on game length and branching factor
Computational Complexity10^6.10Sample quality (100 best): 98.85
Samples1000Quantity of logged games played

Computational complexity (where present) is an estimate of the game tree reachable through actual play. For each game in turn, Ai Ai marks the positions reached in a hashtable, then counts the number of new moves added to the table. Once all moves are applied, it treats this sequence as a geometric progression and calculates the sum as n-> infinity.

Move Classification

Distinct actions508Number of distinct moves (e.g. "e4") regardless of position in game tree
Killer moves59A 'killer' move is selected by the AI more than 50% of the time
Too many killers to list.
Good moves339A good move is selected by the AI more than the average
Bad moves169A bad move is selected by the AI less than the average
Samples1000Quantity of logged games played

Change in Material Per Turn

This chart is based on a single playout, and gives a feel for the change in material over the course of a game.


This chart shows the best move value with respect to the active player; the orange line represents the value of doing nothing (null move).

The lead changed on 4% of the game turns. Ai Ai found 8 critical turns (turns with only one good option).

Overall, this playout was 54.02% hot.

Position Heatmap

This chart shows the relative temperature of all moves each turn. Colour range: black (worst), red, orange(even), yellow, white(best).

Good/Effective moves

MeasureAll playersPlayer 1Player 2
Mean % of effective moves85.7486.3585.13
Mean no. of effective moves49.0450.2147.87
Effective game space10^295.8610^151.0510^144.81
Mean % of good moves50.358.2192.50
Mean no. of good moves34.2111.2057.21
Good move game space10^184.4910^25.8710^158.62

These figures were calculated over a single game.

An effective move is one with score 0.1 of the best move (including the best move). -1 (loss) <= score <= 1 (win)

A good move has a score > 0. Note that when there are no good moves, an multiplier of 1 is used for the game spce calculation.


Table: branching factor per turn.

Action Types per Turn

This chart is based on a single playout, and gives a feel for the types of moves available over the course of a game.

Red: removal, Black: move, Blue: Add, Grey: pass, Purple: swap sides, Brown: other.

Opening Heatmap

Colour shows the success ratio of this move; black < red < yellow < white.

Size shows the frequency this move is played.