TU-Darmstadt Programming Contest
Refefree
tud

Refefree Contest System

In 2005 we finished development of our new programm contest software named Refefree. It was developed by Markus Moll and Wolfgang has as part of a study thesis on programming contests.

The system itself consists of a server and two clients. There is one client for judges, called sage, and one client for contestants, called turmeric. The server (called overlord) is written in C++ and must therefore be compiled on the host system.

The sources are currently hosted on nongnu.org. In order to build them following the instructions which are given by the included "ant" task. Due to restrictions on nongnu.org a slightly modified version which uses javac instead of gcj and builds a smaller client can be downloaded from this page.

Downloads

The native component currently supports C, C++ and Java. If you want to use other languages, you have to modify it and the configuration files. The modifications in native boil down to adding a call to the corresponding compiler. Basically all you have to do is to add an entry to the languages array right before main and implement the corresponding functions. Have a look at native.cc for details.

Instructions

  1. To get the system running, download the server, the client, the native component and the example problem set.
  2. Unpack all files.
  3. Build the server and the native component using make.
  4. Move the native executable to the directory where "refefree.jar" is located.
  5. Move the server executable (overlord) to the problem set directory
  6. Open client_config.xml and update the test-base section to point to the sample problem set directory.
  7. Open a shell and change to problem set directory.
  8. Start the server by calling ./overlord -c serverconfig.xml
  9. Open another shell and start the contestant client by changing to its directory and calling java -jar refefree.jar &
  10. Log in using "team1" as name and password.
  11. Start the judge client: java - jar refefree.jar client_config.xml judge
  12. Log in using "judge1" as name and password.
  13. Change (in the judge client) to the "misc" tab and click on "running".
  14. The contest is now running, refer to the client manual to get information on how to submit problems.

 

Print Version