Color Expansion is a logic board game for two players. The goal is to 'eat' as many cells as you can. Each player 'owns' an area, which is a couple of neighbor cells with the same color as his corner cell. First player's corner is upper-left, and second's - lower-right. Neighbor cells are cells that are 4-connected to corner cell.

During his move, the player can repaint his area with any color except his current and his opponent's current colors. So, he can earn new cells. Second way to eat new cells is to block a cell, i.e. surround it by your domain. Blocked cell is automatically added to player's area.

The game ends when all board is divided beetwen two players, and player whose domain is bigger is the winner.

Alpha Better Color Expansion

This is Alpha Better Color Expansion aka ABCE. It uses minimax algorithm for playing the game against user or another playing program.

You can repaint your area by clicking on the color you need. To change program thinking level (and therefore speed), change "Thinking depth" in the Options dialog. To set up network game, change one player in Options to "Remote player" and press OK.

Program options

View toolbar/status bar - show/hide these parts of interface.

View palette - this is useful when there are only your and your opponent's colors on the board, but game hasn't ended yet.

Continious play - allows unattended program-to-program matches by disabling "... won" message after each game.

Network game

This program can act as a client for a server to play Color Expansion over TCP/IP. You can play by yourself or let to do it to the program. I think there are no currently running servers in Internet, but you can get freeware server from School of Domains , which declared war to our Alpha Better school. They develop their client, too. Third program, Java Color Expansion, is available to play with the server too.


This program runs on any Windows™ if the Microsoft .NET framework is installed on it. Download the framework here:

ABCE is very critical to your CPU speed, it will lineary affect program's performance.

Known bugs

Sometimes program hangs while thinking on high depths. That means, CPU load is low, but HDD is active and program doesn't respond to any user actions. It's recommended to close it with the Task Manager and lower the depth in the future.