Web-Bo - The Online Card Game 🃏
Web-Bo is a modern, web-based implementation of the popular card game "Skip-Bo". Play in real-time against friends or challenge the AI in various difficulty levels. Collect coins, climb the leaderboard, and become the Web-Bo King!
🌟 Features
Multiplayer: Create a lobby and easily invite friends with an invitation code.
Intelligent AI: Play against computer opponents when friends aren't available. Choose from 4 levels:
🟢 Easy: For beginners (makes mistakes, plays defensively).
🟡 Medium: Standard strategy (saves jokers).
🔴 Hard: Aggressive playstyle (uses discard piles efficiently).
🟣 Ultimate: Plans moves ahead (Deep Search Algorithm).
User Accounts: Optionally register to permanently save your coins 🪙 and stats.
Currency System: Win coins from victories. The higher the difficulty, the greater the reward! (King Bonus: 125 coins)
Special Actions:
🃏 Buy Joker: Invest 50 coins to get a joker in your hand.
↺ Undo Move: Made a mistake? For 125 coins, you can undo your last move (once per game).
🤖 Smart Help: Let the AI show you the best move (costs 5 points).
Responsive Design: Optimized for desktop, tablet, and smartphone.
Multilingual: Available in German 🇩🇪 and English 🇺🇸.
🚀 Installation & Start
With Docker (Recommended)
The image is available at lxtools/lx-games.
Docker Compose:
Create a docker-compose.yml:
services:
lx-games:
image: lxtools/lx-games:latest
container_name: lx-games
ports:
- "8080:3000"
restart: always
volumes:
- ./data:/app/data
Copy
Start the container:
docker compose up -d
Copy
The game is now available at http://dein-server:8080.
The folder ./data is created automatically and contains the database for users and highscores.
Manual installation
Prerequisite: Node.js installed.
Repository clones.
Install dependencies: npm install express socket.io
Server start: node server.js
🎮 Game Rules (short version)
Objective: The first person to empty his player's stack (left) wins the round.
Ablauf:
Your hand is refilled to 5 cards at the start of your turn.
Play cards (1-12) onto the 4 build piles in the center.
Use cards from your hand, your stock pile, or your discard piles.
End your turn by placing a card onto one of your 4 discard piles.
Joker (Web-Bo): "13" card (or "WB") is a joker and can be used as any number
🛠️ Technologies
Backend: Node.js, Express, Socket.io
Frontend: HTML5, CSS3, Vanilla JavaScript (kein Framework)
Data: JSON file system (lightweight, no external database required).
Security: Password hashing with Scrypt.