Timer Guide
Running the tournament clock on a big screen: picking a layout, casting to more screens, and building a display of your own, from the first cell to sounds, screens and a live video feed.
1 Two timers, one switch
Every game can use the Tournament Timer, with designable layouts, break screens and multi-screen casting, or Tournament Timer Classic, the original clock. Switch per game in check-in under Setup → Timer: the switch reads Use the Tournament Timer (off: Classic). The Timer button then opens whichever one is on, and you can switch back any time.
You can also make the new timer your default. The first time you open a tournament's check-in console you'll be asked once which timer you'd like; whichever you answer is remembered, and it's never asked again. After that, new games you set up start on the timer you chose, while each game's own switch still wins and games you've already configured are left alone. Change your mind any time under Settings → Tournament timer.
2 Choose what the display shows
On the same Setup → Timer pane, pick the layout this game's display uses: one of the built-ins, or any layout you have saved. The layout editor sits right there on the pane, and the bar above it asks the only question that matters, Use this layout for your event, with a yes/no switch. Flip it on and the loaded layout drives the game's display; flip it off and the display goes back to the default. When some other layout is already on the display, the bar names it, so switching on reads as a replacement rather than a first choice.
The display follows your choice live, so you can change it mid-game and every connected screen updates without a reload. A game with nothing chosen shows Default Layout, the built-in feature tour, which is also what the editor opens on for that game, so what you see while editing is what the TV is showing.
The Load… list has two groups. Built-in holds Default Layout, Classic, Black & Green, Minimalist, Two Column, PCF Poker Chip Forum and Card Room. Saved holds your own layouts, plus any the site admin has shared with every host (marked (site)).
The chip set has its own tab next to Timer: the denominations in play with their colours, drawn on the display as a legend wherever the layout puts one (see Cells beyond text). It rides along with a game preset, so a recurring game keeps its chips. Each chip can also carry a photo of the real thing instead of a flat colour.
3 Running the display
If you can manage the game, a control tray appears along the bottom of the display. Anyone else sees a clean display with no controls. Every button is checked against your rights on the server, so a display left on a TV can never be driven by a guest who finds it.
- The tray: previous level, start / stop, next level; −1m and +1m nudge the clock; ↻ resets the current level; ↶ undoes the last action; fullscreen; and Exit, which goes back to the game's check-in console (the only way out when the timer is installed as an app, with no address bar). The tray fades after a few seconds of nothing happening and comes back on any movement or touch.
- Keyboard: Space starts and stops, ← and → step a level back or forward. Handy with a wireless keyboard at the TV.
- Fullscreen: the round button in the bottom corner, for every viewer. It fades out when nothing is moving and comes back on any touch.
- Sound: the speaker button beside it switches trigger sounds and announcements on or off for this device, and remembers the choice. See Sounds & triggers for who hears what.
- iPad / iPhone: Safari cannot go fullscreen on its own. Tap Share → Add to Home Screen; opening the timer from that icon fills the screen, and the icon remembers this game.
- Staying awake: a phone or tablet showing the timer is kept awake automatically. If the device needs a tap first, a banner says so; tap anywhere once.
- Stays current: a display left open on a TV updates itself. When a new version of the site ships, every open timer screen notices within a few seconds and reloads on its own; you never need to walk over and refresh it.
4 More screens: the QR code
Add a QR code cell to a layout and any phone, tablet or TV browser that scans it opens the same timer, live and in sync, showing the layout you chose. No account needed. A scanned screen gets no layout picker and no links, just the display, and it starts with sound off.
The same layout runs on every screen that scans it, which is where the mobile, tablet and desktop conditions earn their keep: a layout can carry a Phone screen that only phones see, with the clock and blinds stacked large and nothing else. The Default Layout ships one, and + Screen in the editor offers it ready-made (see Screens & rotation).
5 The editor at a glance
Open Tournament Timer from the site menu, or edit right on a game's Setup → Timer pane. The editor is the real display in a frame, with the tools around it.
- The toolbar: Load… picks a built-in or saved layout, the name box names it, then Save layout, Save layout as copy, Export, Import, Delete, Open display (the display page on sample data, in a new tab) and Help, which is this page. Saving and sharing are covered in Saving & sharing layouts.
- The preview: click any part of it to select that box; the inspector shows its settings. It runs on sample data (round 5, 12 of 18 players, a six-place payout) so every element has something to show.
- Preview state: the chips under the preview put it in Running, Paused, On break or Game over, and the TV / PC, Tablet, Phone switch previews it as that kind of screen, so you can see every conditional screen, variant and device rule without a game in progress.
- Triggers: the bar under the state chips folds open the sound and announcement panel (Sounds & triggers).
- Structure: the screen tabs, then the layout as a tree of rows, columns and cells. Click a row to select it; the buttons underneath add a Cell, Row or Column, Duplicate, move up or down, or Remove. The ↶ in the panel's corner is undo.
- The inspector: everything about the selected box. With a cell selected it is titled Cell; with the screen itself selected it is Screen background, which is also where shared styles and custom elements live.
Everything is reachable two ways, and either is fine:
- Right-click anything, in the preview or in the structure tree, for its full menu: text, size, colour, font, alignment, padding, duplicate, delete, what kind of cell it is, and on the screen itself, background image, screen shape and panel colours. A tick in the menu is the current value, so it doubles as a readout.
- Drag in the preview: drag a boundary between boxes to resize them, drag a box to move it into another row or column. One Ctrl+Z undoes a whole drag.
Shortcuts: Ctrl+Z undoes the last change, however it was made, and keeps working after you click in the preview. Ctrl+C, Ctrl+X and Ctrl+V copy, cut and paste the selected box, a whole row or column included, so a stats panel built once can be pasted onto another screen. Esc closes a menu. (On a Mac, ⌘ in place of Ctrl.)
6 Building a layout
A layout is rows and columns of cells. A box's share of space is its weight; a box with no weight hugs its content. Sizes are a share of the screen (Size is a percentage of the screen's height), so a layout built on a laptop fills a projector. Boxes can never overlap or fall off the screen: the engine lays them out like a table, so the worst a mistake can do is look crowded.
The right-click menu says where a new box lands: Add cell inside on a row or column, Add cell after on a cell. Duplicate copies a box next to itself, settings and all.
2,000,000 / 4,000,000), the text wraps or shrinks inside the box, then returns to full size when values shorten. You size cells for the values you can see; the engine handles the ones you can't. Fit to box goes the other way: the text grows to fill whatever room the box has, which is how the big clock is made.Looks: every text cell has Bold, Colour, Background, Border, Align, Letter spacing and Opacity. Containers have a Gap between their children and Justify for where the children sit when they don't fill the space.
Fonts: every text cell has a Font setting in the inspector and the right-click menu, each choice previewed in the dropdown itself. Eight are system looks (Serif, Monospace, Condensed, Wide, Heavy, Impact, Script, Comic) built from faces every device already has; the rest ship with the site: scoreboard and poster faces (Bebas Neue, Oswald, Anton, Orbitron), casino serifs (Cinzel, Playfair), a western saloon (Rye), a neon sign (Monoton), a brush script (Lobster), and Digital clock, a real 7-segment face made for <clock> and blinds cells (digits only; it is not for sentences). Bundled fonts load from this site, never a third party, and every choice has a same-shape fallback while it loads. A shared style can carry a font too, so one setting gives a whole design its typeface.
Padding is a box's inside margin: the gap between its edge and its own content, written CSS-style in the inspector, one value for all sides, two for top/bottom & left/right, four for top right bottom left. Use vh (% of screen height) and vw (% of screen width) so the gap scales with the display. While the Padding field has focus, the preview marks the padding as green bands with a dashed line around the space the content actually gets, and the bands follow every keystroke, so you can watch the room appear before you commit. Hovering the field shows the same reference as a tooltip.
Scrolling: any text cell has a Scroll setting. Up (credits) rolls the content like film credits, and only when it is taller than its box: a short list sits still, a long one loops. Give the cell a weight, or it grows to fit its text and never has anything to roll. Left (ticker) is a ticker that always moves, for a welcome line or a sponsor message along the bottom. Speed is a pace (slow, normal, fast), and the offset starts the loop part-way: set Halfway on a second copy of a list and it shows the other half. Both stop for anyone who has asked their device for reduced motion.
7 Cells beyond text
A cell holds text until you tell it otherwise. Right-click it (or use the buttons at the top of the inspector) and the Use a … instead items turn it into something else. Each kind has a Remove … (back to text) button, and the box settings (background, box image, padding, opacity, border, size in parent) apply whatever the cell holds.
- Image: a picture fills the cell, from your library or a new upload (see Artwork for the library). Image fit is Contain (the whole picture, letterboxed if need be) or Cover (fill the box, cropping the edges); Replace image… swaps it. This is for a logo or a sponsor; for plates and panels behind text, use a box image instead.
- QR code: the join-this-display code from More screens. There is nothing to type: the code always points at this display, so a shared layout can never send a scanner anywhere else. It brings its own white backing.
- Chip legend: the game's chip set (Setup → Chip set) as coloured discs with their values, in ascending order. The layout says where the legend goes; the game says what is in it, and until a chip set is entered the cell shows nothing. Chip size sets the discs apart from the numbers.
- Seat map: every player still in, at their assigned seat around a table: photo or initials, name and seat number, from the table and seat assignments in check-in. Table number pins one table; leave it blank and the busiest table is drawn, which at a final table is the table. Empty seats stay as dim rings so a short-handed table reads as one. The recipe for a screen that appears by itself at the final table is in Screens & rotation.
- Payout table: every paid place as a row, place, dotted leader, reward, from the game's payout structure, so the layout only says where and how big. Pick the Monospace font for the classic card-room look, tick Only places still to be won to drop places already taken, and set Scroll to Up for a Remaining Places panel that rolls when the field is deep. The Card Room built-in is made of these.
- Video stream: a live feed in a cell, below.
A video stream in a cell
Choose Use a video stream instead and paste a link into the inspector's Stream URL field. Three kinds of link work: a YouTube video or live stream (any form of YouTube link), a Twitch channel, Vimeo or Kick; any other embeddable host the site admin has allowed under Settings → General; and a direct video address, an https link ending in .m3u8, .mp4, .m4v or .webm from any server, which is how a restream (an IPTV channel, a camera rig at the table) gets onto the board, and needs no admin approval. The player fills the cell, so give the box weight for a bigger picture. The field checks the link as you type and says so when a link is not one the display can show; such a link is dropped on save and the cell goes back to text rather than showing a dead player on the night.
Under the alarms: when a trigger plays a sound, the stream ducks so the chime is heard. The panel in the video cell's inspector sets how, for every alarm in the layout: drops to silence, 10%, 20% or half volume (a level rather than silence keeps the feed present, so it doesn't sound like it died); fading down over 0.1 to 1.2 seconds; staying down for 3 to 12 seconds; coming back over 0.3 to 2.5 seconds, deliberately slower than the fade down, because a return as abrupt as the drop draws more attention than the alarm. A direct stream follows all of that exactly. A YouTube or Vimeo player can only be muted and unmuted from outside, so it drops to silence and comes straight back after the hold; Twitch and Kick have no control to speak to and keep playing. For an alarm that must not start over a loud feed, give that trigger's sound a warm-up (see Sounds & triggers) and the stream fades down first.
8 Elements: live values in text
Type <clock> in a cell and the display keeps it live. Any cell can mix plain text and elements: Round <round.num> of <round.total>. Names are grouped by subject with a dot, so related ones sort and read together. The Insert element… dropdown under the Text field lists every element with its current value and drops it into the text. The families:
| Event / game | event.name · game.name · game.next |
|---|---|
| Round | round.num · round.orBreak · round.total · round.toBreak |
| Time | clock · time.now · time.elapsed · time.nextBreak · time.start |
| Blinds | blinds.small · blinds.big · blinds.ante · blinds.now · blinds.next · blinds.nextSmall · blinds.nextBig · blinds.nextAnte |
| Players | players.line · players.left · players.total · players.entries · players.buyIns · players.rebuys · players.addOns · players.out · players.cashed · players.lastOut · players.lastOutPlace |
| Chips | chips.total · chips.avg · chips.avgBB · chips.start · chips.addOn |
| Money | money.pot · money.bounty · money.jackpot · money.buyIn · money.rebuy · money.addOn · money.line |
| Prizes | prizes.line · prizes.list · prizes.stacked (or a payout table cell for real rows) |
| Room | table.count · table.seats |
<playersLeft>, <bigBlind>, <nextBlinds> and so on; those still work, and the two can be mixed.Styling one element apart from its line: select the cell and open Element styles in the inspector. It offers the elements present in that cell's text; pick one, and give it its own colour, bold, or a size relative to the line (0.7 means 70% of the surrounding text). The classic use, an ante that only shows on ante rounds and stands out when it does:
- Cell Text:
<blinds.small> / <blinds.big> - Add a variant with condition
hasAnteand text<blinds.small> / <blinds.big> / <blinds.ante> - Element styles →
<blinds.ante>→ orange, bold, size 0.7
<blinds.ante> with a colour, bold, and size 0.7.No ante, plain blinds; ante rounds get the long form with just the ante highlighted. Element styles follow the element through variants, and they scale with the line if a long value makes the whole cell shrink.
You can also define your own fixed-text elements per layout, a sponsor name or a house-rules line, under Custom elements.
9 Conditions: show things only when they apply
Screens, cells, variants and triggers can all carry a condition. The simplest is a state: show this screen on break, show this cell when the game is over. The four pickers under every condition field cover the common cases without typing: a state (Running, Paused, On break, Pre-game, Game over), a round rule (>3, even, all), whether there is an ante, whether there are rebuys. They combine: all of them have to hold.
For anything beyond that, write an expression in the field:
blinds.big > 10000 | once the big blind passes 10,000 |
players.left <= 9 and not onBreak | final table, but not during a break |
(round >= 6 or entries > 20) and running | grouping with parentheses |
clock.minutes < 5 | the last five minutes of a level |
Comparisons are < <= > >= = !=, joined with and, or, not. The values you can test: round · blinds.small · blinds.big · blinds.ante · players.left · players.total · players.entries · players.buyIns · players.rebuys · players.addOns · players.out · chips.total · chips.avg · money.pot · table.count · table.seats · clock.minutes · clock.seconds, and the true/false states running paused onBreak preGame gameOver hasAnte hasRebuys. Values you can use, folded under every condition field, lists the same names.
Three more tell you what kind of screen is watching: mobile, tablet, desktop. With QR casting the same layout runs on every scanned device at once, so a cell with when: desktop puts the QR code on the TV only, and not mobile hides a dense stats block on phones. A phone stays a phone when rotated, and a touch-screen laptop counts as a desktop. The TV / PC · Tablet · Phone switch under the preview shows each one.
10 Variants: one cell, different looks
A cell can hold variants: alternate text, colour, background, bold or opacity, each behind its own condition. The first matching variant wins; with no match the cell shows its base look. That is how "show A, else B" works: the base is B, a variant with your condition is A. A variant only changes how a cell looks, never where it sits, so a layout can't jump around as conditions change.
Open Variants in the inspector, + Add variant, give it a condition and fill in only what should change; anything left blank is inherited from the base. A cell can carry up to twelve.
11 Screens: break, final table, phone, rotation
A layout can hold several whole screens, each with its own condition, and the display shows the first one whose condition holds. They are the tabs at the top of the Structure panel. The screen with no condition is the default, and it should be last, because screens are checked top to bottom and the first match wins. That is how a break screen takes over during breaks: it sits above Main with the condition On break, and the moment the schedule reaches a break every connected screen switches to it, and back again when play resumes.
- + Screen offers ready-made screens that inherit the layout's background: Break (takes over during breaks), Final table (a seat map once ten or fewer remain), Phone (a simple stacked view for phones that scan the QR), Game over (the wrap-up once a winner stands), or a Blank one. A blank screen needs a condition, or the default screen stays in front of it.
- The box under the tabs renames the selected screen; Delete screen removes it. A layout can hold up to six.
- Show this screen when is the screen's condition, with the same pickers and expression field as a cell.
- Rotate after (seconds): give two or more screens a time and the display cycles through the ones whose conditions match, each for its own time, from 2 seconds to an hour. A screen without a time (Break) still takes over outright while its condition holds, and the rotation resumes when it stops. Use it for a stats page that shows for twenty seconds every couple of minutes.
The final table, automatically: add a screen with the condition players.left <= 10 and players.left > 1 and put a seat map cell on it (right-click a cell → Use a seat map instead), which is exactly what the ready-made Final table screen does. The seat map draws every remaining player at their assigned seat, with their avatar or initials, name, and seat number, using the table and seat assignments from check-in. The moment the field drops to ten, every screen switches to it by itself; the PCF built-in ships with this screen ready-made.
12 Shared styles & custom elements
Both live on the screen's inspector: click the Screen row at the top of the tree (or an empty part of the preview) and scroll down past the background settings.
Shared styles
A shared style is a named look, size, bold, font, colour, background and alignment, that any number of cells can use. Change it once and every cell wearing it updates, on every screen; that is how a whole design gets its typeface or its label colour from one place. Add one with a name (letters and digits) and + Add, set its look, then give a cell that look with the Shared style dropdown in the cell's inspector or right-click menu. A cell's own settings still win over its shared style, so one cell can be the exception. Text, conditions, variants and images never come from a style; it is purely a look.
plate for the big values and label for the small print. Cells pick one from their Shared style dropdown.Custom elements
A custom element is a name of your own with fixed text behind it: <sponsor> for the bar that put up the trophy, <rules> for the house line along the bottom. Define it once on the screen inspector and use it in any cell's text on any screen, like a built-in element; it appears in the Insert element… list too. Plain text only, up to thirty per layout, and a built-in name always wins if you pick the same one. Both shared styles and custom elements travel with the layout when it is saved or exported.
Tonight by <sponsor> in a cell renders the text behind the name.13 Artwork: on the screen, or on the box
There are two places a picture can live, and choosing right saves a lot of nudging:
- On a box (preferred for plates and panels): right-click any cell or container → Box image. The picture becomes that box's own background and moves, resizes and reflows with it, so a value can never drift off its plate, on any screen shape. Default fit is Stretch, because plate art is drawn for the box it decorates; Cover and Contain are there too. The PCF built-in is made this way: the felt is the screen, every glossy plate rides its own box. Art with a label or a mascot painted into it pairs with Padding (Building a layout): pad that side so the text starts clear of the painted part, and focus the Padding field to see exactly where the clearance sits.
- On the screen: right-click the screen → Screen background for the backdrop itself: a solid colour, a gradient, or a full-screen picture (felt, a poster, league branding) with its own fit.
- As the content of a cell: Use an image instead (Cells beyond text), for a logo or a sponsor that is a thing on the screen rather than the surface behind a value.
- Picking an image opens your library first: everything you've already uploaded plus the built-in artwork (the PCF felt and plates are all reusable). Uploading a new file is the button in the corner, and re-using an existing image costs nothing against the daily upload allowance. PNG, JPEG, GIF and WebP up to 8 MB.
For a full-screen design that must keep its exact proportions anyway, the old tools remain: Screen shape locks the layout to the shape the artwork was drawn at and letterboxes elsewhere; Fit: Stretch distorts the picture to cover the layout's area instead of cropping; Panel colours switches the whole layout between painting its cell backgrounds and letting artwork show through.
14 Sounds & triggers
A trigger makes something happen the moment a condition becomes true: play a sound, flash the screen, speak a line, or take over the display with another screen for a few seconds. The Triggers bar sits right under the preview, next to the preview-state toggles; click it to fold the panel open. + Add trigger offers ready-made triggers to pick and tweak: Level change (a chime), One-minute warning (tick and flash), Announce the blinds (speaks the new numbers each round), Break starts (a horn), Final table, Heads-up, Game over, Player eliminated (announces who, by name), or a Blank trigger. A layout can carry up to twenty.
Each trigger is a condition plus a list of actions, added with + Action:
- Play sound: a dozen built-in tones (buzzer, chime, casino, horn, countdown, double, descending, five3s, tick, pulse, chirp, gentle) that work everywhere, or upload your own (MP3, M4A, WAV, OGG, WebM or AAC, up to 5 MB). Uploaded sounds live in your library and travel inside exports like images do. A sound action also has a warm-up, in seconds: how long before the sound a video stream on the layout starts fading down, so the alarm doesn't cut across a loud feed.
- Show screen: jump to a named screen for 1 to 120 seconds, then return. Good for a "BLINDS UP" splash or a final-table fanfare page.
- Flash: a short amber pulse around the whole display.
- Announce: the display speaks the line out loud, with elements filled in:
Blinds up: <blinds.now>says the actual numbers.
The conditions you'll reach for most:
levelChange: true for an instant whenever the round number moves. The classic "new level" chime.clock.seconds <= 60 and running: the one-minute warning. It naturally re-arms each level.players.left <= 10 and players.left > 1: final table reached. Pair it with once so it fires a single time.playerEliminated: someone was just knocked out (undoing an elimination stays silent). Pair it with the<players.lastOut>element: announce<players.lastOut> has been eliminatedand the display speaks the actual name.<players.lastOutPlace>adds their finishing place.
levelChange plays a chime. The green tick means the condition parses; ▶ Test runs the actions right now.Triggers fire on the change, never on the state: a screen that joins mid-game stays quiet about things that were already true, and a condition must go false and come true again before its trigger fires twice. Cooldown sets a minimum quiet time between fires; once per game means exactly that. The ▶ Test button on each trigger runs its actions in the preview immediately, the quickest way to audition a sound.
15 Saving & sharing layouts
- Save layout saves the layout under the name in the toolbar. A built-in, or a layout someone else shared, can't be changed in place: saving one makes your own copy, which is why the name box reads PCF Poker Chip Forum (mine) the moment you load PCF. Rename it to taste.
- Save layout as copy keeps the one you loaded as it was and saves your changes as a new layout, for trying a variation without losing the original.
- Delete removes a layout of yours. A game that was using it goes back to the default display.
- Export downloads a layout as a single
.gntimer.jsonfile with every image and sound embedded, so it carries its own artwork and audio. Import reads one back in, re-uploads the media here, and saves it as a new layout in your list. That's the way to move a design between installs or share it with another host. Nothing in an imported file runs; it is read as data and checked like anything you'd have typed yourself. - Site layout (site admins only, a button in the toolbar): a layout marked this way appears in every host's Load… list as (site). Other hosts can load it and save their own copies; only an admin can change the shared one.
Pick a layout for a game from the Setup → Timer pane (Choose what the display shows), where the binding bar's switch does the pointing. Saving a layout never changes what a game shows unless that game is already using it, in which case the display picks up the new version by itself.
Layouts are safe to experiment with: the editor has undo everywhere, and a game only shows the layout you point it at.
Open the layout editor