Mahjong Tournament - seating players with Swiss/Dutch-style system

Mahjong Tournament - program for auto-seating players in mahjong tournaments using Swiss-Dutch seating system. According to the system, players with same results as possible take seats on each table. Besides repeated games between the same playes are excluded.

You can see how the system works on the interactive page (JavaScript).

The first tour seating may be as random and with some pre-defined way (i.e. by rating).

While starting the program requests some basic parameters - the number of players (must be a multiple to four, not less then 12), the number of tours (from 2 to 20). Test-mode flag allows to make some "virtual" tours for testing and checking the program.

The main window of the Mahjong Tournament.

main screen

The first column containes all the names of the players in the tournament. You can enter them directly in the program or import the list from the CSV-file. Next column containes numbers of the players, which define their places in the first tour. Players with numbers 1-4 seats at the first table, 5-8 - at second table etc. Pressing button in the header fills the numbers by the order.

When all the game numbers of the players are correctly filled, you can make first tour seating pressing the button "Seat players".

Next columns are grouped by tours and containes info about players' seating in the correspondent tour and about results of the playing the tour (Game Points (GP) and Table Points (TP) to be entered). After filling the results, next tour seating is possible using the Swiss-system by pressing "Seat players" button below.

At any time you can save the state of the tournament in CSV-file for printing or showing the current results. Loading CSV-file recovers the state of the tournament.

In the Settings dialog you can set timeouts for the time limit for the calculating procedures, number of "lower" tables with possible crossings of players (if it is not possible to make "pure" swiss seating) and number of "upper" tables for which the best fixed seating is provided, if the random searching algorithm is used.

CSV-file format.

CSV-file used for import and export data is a text file with fields delimited with semicolon ";" character. You can open it in Microsoft Excel.

Fields description:

  • PLACE. Current place in the tournament. If tourmanent with some results saved, places of the players will be calculated based on TP and GP. If results are absent all the places will be zeros.
  • NUMBER. The initial number of the player. Used for the first tour seating.
  • NAME. Name of the player.
  • TABLE1. Table number for the player in the first tour. Players 1-4 take seats at the first table, 5-8 at the second table etc.
  • TP1. Table Points for the first tour. According to the Mahjong Competition Rules (MCR) here you can find 0,1,2 or 4 points (rare 0.5 or 1.5).
  • GP1. Game Points for the first tour. If table points are equal, game points used as secondary rating for the seating algorithm.
  • TABLE*. Table number for the player in the next tours.
  • TP*, GP*. Table and game points for the next tours.
  • TP_TOTAL, GP_TOTAL. Summary table and game points for the tournament. Used for place calculation.
If there are some results, players in the saved file will be ordered by the current places in the tournament. If there are no results - the players sorted by the game numbers.

In test-mode additional buttons "R"andom appear. Press the buttons for random generation all the results of the tour. So you can easy show how the seating algorithm works.

Download Mahjong Tournament, version 1.4

Special version for Riichi Mahjong has been released.

Download Riichi Tournament, version 1.5