On Help and other site pages, the header and footer stay on screen while the content between them scrolls. Challenge Wheel is a browser-based wheel spinner and on-screen challenge card designed for stream overlays. It supports multiple games, includes a shared “Daily challenge” page (same pick for everyone each day), and provides layout controls so you can pin the card and wheel to the edges of the screen. The background is transparent, so your gameplay stays visible underneath.
Multiple game support
The Challenge Wheel supports multiple games. To ask for a new title (wheel, daily page, and Discord daily), use Request a game or Discord.
Currently supported games:
Daily challenges
Open the daily page for your favorite game above. Every player gets the same challenge for the same UTC calendar day so you can run a community “challenge of the day”. When possible (more than one challenge in the filtered pool), the pick avoids repeating the same slot as the previous UTC day so two consecutive days are usually different.
Discord: We also post the Daily challenge to our Discord server in dedicated gaming channels.
If you run a server or manage a community on Discord, you can have these posts appear in your server by following our Announcement channels. When our team publishes the daily post, it can automatically appear in servers that follow that channel.
Spinning
Press the center hub to spin. Press again while spinning to stop early. The wheel wedge (called a “wedge” below) under the pointer at the top of the wheel is the selected challenge.
Custom challenges
Open Create. Pick an Action:
- Save to my wheel: stored in this browser only. Your challenge appears on the wheel with a Custom badge.
- Submit official request: sent for review on the live site. If approved, it can be added to the game list for everyone.
- Both: save locally and send the official request in one step.
The first time you save to your wheel, the site creates a My wheel challenge set, adds your challenge, and selects that set on the wheel. Later, you can switch to Official set or any other custom set in the header; your choice is remembered. New categories are enabled automatically.
Delete a custom challenge from the Saved on my wheel list, with Delete under the form while editing, or with Delete custom on Manage challenge sets. Confirmations use a small on-page overlay (not browser popups), so they work in OBS Browser Sources. To remove every custom challenge in a category you created, use Remove category on Manage sets.
Challenge sets
On the Wheel page, the Challenge set menu in the site header lets you pick the Official set (game list only, not your saved customs) or a custom set such as My wheel (official challenges plus your customs, with optional exclusions). Custom sets only change which challenges appear on the wheel.
Open Manage challenge sets from the Wheel/Daily header (Manage in the tools group, next to Create and All), or choose Manage sets… in the challenge-set menu. Use the separate Request game button for new titles on the wheel, to create named sets, uncheck challenges you do not want on the wheel, rename or delete sets, or reset a set to include everything again. Changes save automatically in this browser per game. In OBS, add that page as a separate Browser Source (or open it in a normal browser tab); New/Rename/Delete use inline panels on the page because OBS blocks popup dialogs.
Challenge card
The challenge card is the on-screen overlay. In All / Show view, a site header above the overlay holds the game menu, play filter, Wheel | Daily, overlay visibility (All | Card | Min on Wheel, Show | Min on Daily), placement, categories (Wheel), and Configuration. In Card / minimized modes, a compact toolbar on the card replaces the header for view and Configuration.
Below that, the card uses two columns: on the left, a thumbnail image with the play tag (Any, Solo, or Group) directly underneath the image. On the right, the title row has the challenge name and (on the right) the current UTC calendar date; under that row is the rules/description. The All challenges list matches this layout.
When you spin the wheel, the card updates so viewers can immediately read what to do. This is designed to work cleanly as a stream overlay on top of gameplay.
Hover a wheel wedge to see a pop-up with that challenge’s name and description.
View modes
Use the overlay visibility controls in the site header (when visible) or on the card toolbar in Card / Min modes:
- Wheel + card: choose All on the Wheel page (default). The site header and footer are visible; the card’s compact toolbar is hidden. On Daily, Show works the same way.
- Card only (Wheel page): choose Card, or open the page with
view=preview. The wheel and site header/footer hide; the card and its toolbar stay. Use Configuration on the card for placement, play filter, and categories. - Hide all: choose Min on the Wheel page or Daily. Only a small + restore control stays (on the edge you chose for the card). Click + to bring everything back to All / Show. If Configuration was open when you minimized, it opens again after + (bookmark or fresh load with
view=hidestill opens with the dialog closed).
Positioning: In All / Show, use Placement in the site header. In Card / Min, use Configuration on the card. Pick whether you are moving the wheel or the card, then tap the nine-cell grid. The wheel and card cannot use the same grid cell; if the URL would put both in one cell, the site picks another wheel slot. When the wheel and card line up vertically and would overlap on screen, the layout adds a little spacing between them. On Daily, only the card is placed. Opening Configuration can be stored in the URL as controls=1.
Saved placements: Card and wheel positions on the Wheel page, and card position on the Daily page, are remembered separately per game in this browser (local storage). Choosing another game restores that game’s last layout unless the URL specifies cardPos / wheelPos / corner. Editing the grid clears that override for the dropdown game and saves the new choice.
URL parameters
These query strings are read by the Challenge Wheel pages. Combine them with & (e.g. ?game=dayz&cardPos=bc&wheelPos=tc).
game
Wheel, Daily, All challenges. Which game’s challenge data to use (e.g. pubg, dayz, hd2). Default behavior matches PUBG when omitted.
Example: index.html?game=dayz
cardPos
Wheel, Daily. Grid placement for the challenge card. Values: tl tc tr (top row), ml mm mr (middle row), bl bc br (bottom row).
Example: daily.html?cardPos=mr
wheelPos
Wheel only. Same nine values as cardPos for the wheel. Must differ from the card; if both match in the URL, the page picks another cell for the wheel. If wheelPos is omitted, a non-overlapping default is chosen from the card position.
Example: index.html?cardPos=bc&wheelPos=tc
view
Wheel, Daily. preview: compact / card-focused layout; hide: hide the overlay. Omit for the default (wheel + card where applicable).
Example: index.html?view=preview
controls
Wheel, Daily. If set to 1 (or true, yes, open), the floating Configuration panel opens as soon as the page loads. Omit for a closed panel by default. The page updates the URL when you open or close the panel from the card.
Example: index.html?controls=1
players
Use the site header or Configuration on the Wheel and Daily (Play: Any, Solo, Group), ?players=solo / ?players=group in the URL, or filters on All challenges so the wheel slice pool and shared daily roll only include matching challenges and those tagged “both”.
Wheel, Daily, All challenges. In the URL: solo or group. Omit for “Any”.
Example: daily.html?players=solo
chroma and green
Wheel, Daily, Help (styling), status banner. Use chroma=1 or green=1 for green-screen style backgrounds.
Example: index.html?chroma=1
utcDate (Daily only)
Daily. Optional YYYY-MM-DD (UTC) to simulate another calendar day when testing.
Example: daily.html?utcDate=2026-01-15
challenge / active (status page)
status.html only. Which challenge to show, by exact name. Use game (default pubg) so the banner loads the right list.
Example: status.html?game=pubg&challenge=Your%20Challenge%20Name
All challenges (full list)
Want to browse everything before spinning? Open the full list of challenges (grouped by game and category): All challenges.
OBS Setup for Streamers
If you want to use this on stream, there are some basics below to help out. If you need more assistance, feel free to join the discord server and ask for help.
Add the wheel as a Browser Source in OBS. A good starting size is 1920×1080, but any resolution that matches your scene works.
Stream overlay (recommended)
Point your OBS Browser Source at the same page with view=preview (Wheel: card only, no wheel) or view=hide (minimized + only). That hides the site header, footer, and card toolbar so only the overlay appears on stream.
Example (card on stream): index.html?game=pubg&view=preview&cardPos=bc
Example (Daily on stream): daily.html?game=pubg&view=hide&cardPos=mr. Use + in OBS Interact mode if you need to restore briefly.
For setup and changes, open the page in a normal browser tab with All / Show so the full site header is available (game, filters, categories, placement). Set options there, then refresh the OBS source, or bake game, cardPos, wheelPos, and view into the OBS URL.
OBS Custom CSS (optional)
In Browser Source → Custom CSS, you can paste docs/obs-browser-source-stream.css to hide site chrome and toolbars if your URL still uses All / Show by mistake.
To spin from OBS, right-click the browser source and choose Interact, then click the center hub button.
See the View modes section to pick a layout that fits your stream (wheel + card, card only, or hide all). On the OBS URL you can also set view=preview or view=hide directly.
Transparency: the page background is transparent, so your game (or any content behind it) will be visible underneath the Challenge Wheel layer.