This chapter contains information about computer opponent types and how they are different.

There are three types of computer opponent in InCube Chess. They all allow to make move in roughly the same speed and differ by some aspects of making decision based on current situation in the cube. Read in more details below.

Naive. Least smart computer opponent. It does not check much for covering and attacking opponent pieces. Still it does not lose pieces needlesly if situation allows to escape. This type of algorithm does not care much about king protection and things like this. This all makes it natural opponent to someone who is new to chess game.
Agressive. Smart enough, agressive nouse that allows to get to real fighting quite quickly. This algorithm mostly takes into account opponent pieces that can be attacked next move but does not check for own pieces that can be covered. Still, it moves to covered positions if sitaution allows this and in general provides consistent gameplay.
Careful. Most smart and careful computer opponent. It checks for everything including attacked pieces, covered friend pices and moves to covered positions. It also takes into account distance to opponent's king. In this mode friendly king tries to get closer to heavy pices that can protect it.
Computer opponent has smart algorithm of making decision on next move, that allows to play like a human, in meaning, that the same move will not be done again (with high probability) if you come back and re-play that situation again. Next time it may choose another move, that is also efficient if situation allows to do so.

Separate thread is used for computer opponent. This allows to do any manipulations with the cube during the game. You may zoom it in or out and also turn in any direction, animation will stay smooth.

When two computer opponents play against each other, one CPU core may be busy all the time for evaluating moves. This is because next move is started evaluating when previous one is still animating by the game. This is fine and allows to play with reasonable speed.