Extreme Connect 4

paused

A configurable Connect 4-style game where you can customize the board size and the number of pieces needed to win. Play locally or online with friends!

Tech Stack

JavaScriptHTML5 CanvasCSS3Node.jsExpressSocket.io

Gameplay

Real-time multiplayer with configurable boards and win conditions

Online multiplayer gameplay

What We Built — game two, now with humans

Phase 1

Why Multiplayer?

After Cosmic Drift, I had a game where you play against AI. Fun, but lonely. The obvious next step: what if you could play against actual people? Connect 4 felt perfect — turn-based, simple rules, but enough strategy to make it interesting.

The twist: why limit it to 4? Make the board size configurable. Make the win condition configurable. Suddenly "Connect 4" becomes "Connect N on an MxK board" and the strategic depth explodes.

The progression: Game one taught me Canvas and game loops. Game two taught me WebSockets and real-time sync

Phase 2

Real-Time Everything

Socket.io handles the connection layer — room creation, player matching, move broadcasting. But the interesting part is what happens on the server: every move gets validated before anyone sees it.

Client sends "drop piece in column 3". Server checks: Is it your turn? Is that column valid? Is the game still active? Only then does it broadcast the new state to both players. No cheating by modifying client state.

Lesson learned: Never trust the client. The server is the single source of truth for game state

Tech Stack

JavaScriptHTML5 CanvasNode.jsExpressSocket.io

Same Canvas rendering from Cosmic Drift, but now with a Node.js backend. Rooms live in memory — no database needed. Players connect, play, disconnect, and the room cleans itself up.