CeeLo — Fair, Duel-like Cee‑lo Dice for WoW
Overview
CeeLo brings the classic three-dice street game to World of Warcraft with a duel-style challenge flow and cryptographic fairness. Challenge another player, accept or decline, then watch a short countdown and deterministic, cheat‑proof dice resolution. Ties go to sudden‑death tiebreakers until a winner is decided.
Key Features
- Duel-like challenge/accept/decline flow (target a player and type ceelo to challenge)
- Commit–reveal protocol ensures neither player can alter rolls after seeing the opponent
- No “nothing” rolls — dice auto-reroll (deterministically) until a valid hand (4‑5‑6, triples, pair+point, or 1‑2‑3)
- Sudden‑death tiebreakers — ties automatically continue until resolved
- Emotes announce challenge, roll progress (re-rolls), and final outcome via
/e - Lightweight UI: popups for invites, countdown, rolling animation, and detailed result display
- Tracks wins/losses and preserves recent match history in saved variables
- Configurable rule variants and sound options via the options panel
How It Works
- Challenge a player with ceelo (targets) or
/ceelo challenge <name>. They can accept or decline. - On accept: 3‑second countdown, both clients exchange commits (hashes of seeds).
- After both commits, players reveal seeds; each client verifies the opponent’s reveal matches the commit.
- Seeds are combined to deterministically derive dice. If the first derivation produces “nothing,” deterministic rerolls occur until a valid hand appears.
- Rolls and the final outcome are broadcast via emote; tiebreakers start automatically for ties.
Commands
- ceelo — challenge your current target (or show help when no valid target)
/ceelo challenge <name>— challenge by name/ceelo accept— accept a pending challenge/ceelo decline— decline a pending challenge/ceelo cancel— cancel your pending challenge/ceelo stats— show wins/losses/ceelo rules— show rules/ceelo options— open settings/ceelo history— show recent matches/ceelodebug,/ceeloping,/ceelodiag— developer/diagnostic commands
Configuration & Options
Open Interface → AddOns → CeeLo Dice or use /ceelo options to toggle sounds, choose rule variants (Classic, Triples High, House), and clear history. Saved variables store preferences and match history across sessions.
Privacy & Security
CeeLo uses only in-game addon messaging (whisper addon prefix) for gameplay; no external network traffic. The commit–reveal protocol prevents either player from manipulating outcomes.
Troubleshooting
- If messages fail to deliver, ensure both players have the addon enabled and are within whisper range (or on same connected realms where whispers work).
- Use
/ceeloping <name>and/ceelodiagfor diagnostics and to confirm the addon message prefix is registered.
Files & Tech
- Core.lua, Net.lua, CommitReveal.lua, Rules.lua, UI.lua, Options.lua — core modules
- Uses
C_ChatInfo.SendAddonMessage,CHAT_MSG_ADDON,C_Timer, and SavedVariables (WoW API)
Credits & License
MIT License. Inspired by street Cee‑lo and built following WoW addon best practices with the assistance of generative AI.