Skip to main content
Must know
  • You need at least two teams (and at least two per division pool) before generating. Times are entered and shown on the club’s clock.
  • The generator skips your club’s enabled holidays (Registrations → Holidays) as if you had typed them into Exclude dates (comma-separated, optional). Other closures you still type in yourself.
  • Tick every weekday the league plays under League nights (Tuesday and Thursday, say). With none ticked, draws are weekly from the First league night.
  • A Last league night (optional) keeps adding round robins until every league night up to that date has games, and schedules nothing after it.
  • CCM’s two sheet options are here too: Balance playing sheets (on by default) and Show a game against “Nobody” for a bye.
  • Regenerating deletes every unlocked game and its results and schedules new ones around any locked games.
  • With Bye Requests enabled for your club (a superadmin switches it on), the generator also gives teams the league nights they asked off — see How do I handle bye requests?.
1

Open the Draws tab

Open the league and click Draws, then Generate schedule (or Regenerate once a schedule exists).
2

Choose sheets, cycles and times

Leave Source on Generate fresh (engine) unless you have a saved template. Tick the Sheets to use (all in-service sheets start ticked — “N of M sheets in play — the others stay idle in every draw”). Set Round-robin cycles, a First league night (optional) and the Game times (comma-separated), for example “18:00, 20:00”. Tick the days the league plays under League nights — until you change them they follow the first league night’s weekday. Add a Last league night (optional) if the season must end on a date (see below). List closures in Exclude dates (comma-separated, optional).
3

Divisions, round and session

Tick Round robin within each division if divisions play separately, and use each {time} draw — division select to reserve a draw time for one division. Optionally stamp every game with a Stage (optional) (round) and Session (optional). Choose Time allocation (Alternating / Random / Weighted early / Weighted late) and whether to Shuffle teams. Leave Balance playing sheets ticked to spread each team across the sheets; untick it to keep each draw’s games on the ticked sheets in listed order (a one-game draw then always lands on the first sheet). Tick Show a game against “Nobody” for a bye to list the team sitting out a night as playing “Nobody”. If the league has bye requests, Honour N bye requests (M teams) and Add make-up draws after the last night for games that cannot move appear here, both ticked.
4

Preview, then create

Click Preview. Badges warn about Matchup repeats, Excess games, Sheet imbalance and Bye imbalance, the count of games against “Nobody” when you asked for them, and a Skipped holidays: line lists any league nights that fell on a holiday, and with bye requests a line reads N of M bye requests honoured, listing any it could not meet and the games moved to make-up draws. Then click Create schedule (or Replace schedule when one exists); the confirmation reads Created {n} draws — skipped holidays: … when any were skipped, and adds N of M bye requests honoured when the league had requests.

End date, “Nobody” games and balanced sheets

  • Last league night. The generator keeps adding round robins until every league night up to that date has games, then drops every game after it — the date itself is included. League nights are counted from the first league night on the ticked weekdays, minus excluded dates and holidays. Example: 5 teams on 2 sheets play one round robin in 5 Tuesdays; with the last night 6 Tuesdays out you get 6 nights — a second round robin, cut after its first night. A cycle count longer than the end date allows is cut the same way. An end date before the first league night is refused: “The end date is before the start date”. Make-up draws for bye requests still go after the last league night, so they can fall after the end date.
  • Games against “Nobody”. On a league night where exactly one team in a pool (a division, or the whole league) has no game, that team gets “{team} vs Nobody” at the pool’s first draw of the night. It has no sheet — the Draws grid lists it in a No sheet column — takes no result and never counts in standings. As in CCM, none are added when every pool has an even number of teams, or when the night has only one sheet and one game time.
  • Balanced sheets off. Each draw’s games take the ticked sheets in the order they are listed.
With the Draw Optimizer’s Fill in missing games (keep the schedule), these three options do not apply and are hidden.

In the classic view

The Generate Games screen reproduces CCM’s form — Select the Sheets to be Used, Select the Weekday for Games, Game Times (24 Hour Clock) each with Reserved for Division (optional), Start Date for Schedule?, End Date for Schedule? (optional), # of Round Robin Cycles?, Balanced playing sheets?, Show game against “Nobody” when there’s a bye? and Exclude the Following Dates: — with Preview Game Schedule and Create Game Schedule / Replace Game Schedule buttons. The three CCM options work as described above; the preview says Includes N game(s) against “Nobody”, and the Game Listing shows those games with Sheet none and no result select. It skips stored holidays too, and its result line ends with Skipped holidays: … when it did. With bye requests enabled it honours the league’s requests too and adds N of M bye requests honoured. Its pre-flight checks stop you early with messages such as “At least 2 teams are required — assemble or create teams first.” and “Pick at least one weekday for games.” Draw times set here stay on the club’s clock; a migrated CCM club’s draw times do not shift. Related: What are holidays? · How do I set up ice sheets? · How do I clear or regenerate the schedule? · How do I reschedule or edit a game? · What is the draw optimizer? · How do I handle bye requests?