This is the archived CodeCup 2018 website.
Click here to go to the new CodeCup website.
CodeCup 2018 - An online programming competition  

CodeCup 2018 - An online programming competition

Competition rules

Registration and submission

Everybody is welcome to compete in the CodeCup. To enter the contest, you simply create a user account and submit your player program. The submission of player programs closes on January 19th 2018 at 12:00 GMT.

Before your program is admitted to the contest, it is tested to make sure that it makes valid moves and communicates correctly with the contest system. It is possible to submit updated versions of your program, thus replacing earlier submissions.


Player programs play games against each other in a number of rounds. If the number of contestants is small, we will play a double full tournament. In this case, each contestant plays two games against all other contestants.

If there are many contestants (which is almost always the case), playing a full tournament would take too much time. In that case, we will start by playing some rounds according to the Swiss tournament system. The Swiss system is such that in every new round, contestants with almost equal ranking will play against each other. The ranking thus becomes more accurate after each round. After only a few rounds, the best players in the competition will be in the top of the ranking. We then take a small group from the top of the ranking, and only those contestants proceed to play a double full tournament in order to determine the final winner.


In every game it is possible to gain match points. The winner of a game receives at most 150 points, and the loser can end up with as few as 0 points. See also the rules of the game Blackhole.

If you make an invalid move, if you use too much time or if your program crashes, you lose the game. It will count as an irregular game loss, the jury software takes over the role of you program and starts executing the first move it finds until the game is finished or the opponent also crashes. The score for the player who loses in this way will be 0. The winner's score will be calculated normally.

The CodeCup tournament is won by the player with the highest total number of points. When there is a tie the number of irregular games losses will be taken into account (the lesser the better). If there is still no difference, the programs get the same place in the final standing.

Your program will be tested by the organization. If it is able to cooperate with the jury software, it will be placed for the tournament. You will always be able to submit another version of your program. The last program that has been verified will be automatically selected to play in competitions. If you would like to activate an earlier version of your program you can do so.

Test competitions

In the months before the final competition, we will already play a number of test competitions. You can use these test competitions to see how well your program holds up against the other players. Once you have submitted a program, you will automatically participate in all subsequent test competitions. Of course you may afterwards send in new versions for the next competition. That way, the tests are a great opportunity to try out new strategies and fine tune your algorithms. Have a look at the competitions page for the schedule.

During test competitions, only a limited number of rounds will be played. The results of the test competitions do not affect the final competition in any way. The final competiton is the only official CodeCup competition; the test competitions are just for fun and practice.


A prize will be awarded to the winner of the final competition.


If a participant wants to receive a certificate mentioning that he or she participated in the CodeCup, he may request such a certificate after the final competition by sending an email to contest(at) Please add your address in the email and the reason why the certificate is requested. We will send the certificate to your home address.