Description

Challenge Four brings four-in-a-row to your own movable window in World of Warcraft. Challenge your target, a group member, or a player on your connected realms, then drop stones by clicking columns until someone lines up four, or the board fills up. Both clients run the same rules and check every move against each other, so what you see is always what your opponent sees.
Features
- 7x6 board in its own draggable window, with animated falling stones and a highlighted win line.
- Official four-in-a-row rules: players alternate one stone per turn, four or more in a row wins immediately, and a full board of 42 stones with no winner is a draw. The challenger's client randomly decides who starts.
- Challenge by name with
/cf <name>or through the minimap button. - Both clients validate every move independently; a mismatch aborts the game instead of letting the boards silently diverge.
- Resign button, rematch, and an automatic abort if your opponent goes silent.
- All 12 World of Warcraft client locales, with English as the fallback for anything untranslated.
- Hot-seat mode: challenge your own character name to play both sides on one client, no second player needed.
How to play
Open the challenge window with /cf or a left-click on the minimap button. It shows a name field (accepts Name or Name-Realm), a button to challenge your current target, and a list of your current group or raid members, your own name always included for hot-seat games. Pick a name and confirm, or click a group member directly.
The other player sees a popup with a sound, the challenger's name, and a 60-second countdown. Accepting opens the game window for both sides; declining or letting the countdown run out sends the challenger a message instead. Once a game is running, a stone drops with a click on a column, the turn indicator switches sides, and the win line blinks when someone connects four.
After a win, loss, draw, or resignation, both players get Rematch and Close buttons. Rematch starts a fresh board against the same opponent; Resign during a game asks for confirmation first.
While a game is in progress, a quiet keep-alive message goes out every 20 seconds. If nothing at all is heard from the other side for 60 seconds, the game aborts automatically instead of leaving you waiting forever.
Slash commands
/cf - open the challenge window
/cf <name> - challenge a player (Name or Name-Realm)
/cf show - show the game window
/cf resign - resign the current game
/cf minimap - toggle the minimap button
/cf emotes - toggle victory/defeat emotes
/cf help - this list
/challengefour - long form of /cf, same commands
Requirements & limits
- Both players need Challenge Four installed, and both need the same version. A version mismatch is detected automatically and reported back to the challenger instead of silently failing.
- Players on your own connected realms are reachable directly, by addon whisper.
- Group and raid members are reachable across realm boundaries too, since the game then uses the party, raid, or instance chat channel instead of a whisper.
- A target outside your group on a different, non-connected realm is not reachable at all.
- No Battle.net friend support and no cross-faction play.
- No move timer: take as long as you like on your turn.
- Want to try it without a second person? Challenge your own character name for a local hot-seat game.
Languages
Challenge Four ships with all 12 World of Warcraft client locales. English is the reference locale and the fallback for any string a translation is missing. German and English have been reviewed by native speakers; the other ten locales are machine-translated and have not been checked by a native speaker yet. Corrections are welcome.
Planned / not planned
Not included, and not currently planned: statistics or match history, an AI opponent, spectators, and a move timer.
Status
This is a first beta. The core game, hot-seat mode, and the networking layer (channel selection, protocol, keep-alive, and timeout handling) have been tested against simulated clients, but not yet in a real match between two players. Feedback on how it behaves in an actual two-player game is very welcome.
License
MIT.

