Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

8-bit Soccer Club

A retro browser-based 6v6 soccer scrimmage game. Clone it, configure your team, and play.

Two teams of 6. You control one player at a time; all others are AI. Formations, auto-switching, and a hidden dice mechanic keep things interesting.

Quick Start

  1. Clone this repo
  2. Edit src/team.config.js — set your team names, colors, and players (see Config Reference below)
  3. Serve locally — ES modules require a server (opening index.html directly won't work):
    npx serve .
    Then open http://localhost:3000 in your browser.
  4. Play — pick a player, pick a formation, kick off

Config Reference

Everything you need to change lives in src/team.config.js. No other files need editing.

Team Names

export const TEAM_NAMES = {
  HOME: 'Sharks',   // your team name
  AWAY: 'Jets',     // opponent team name
};

Jersey Colors

export const TEAM_COLORS = {
  HOME: 0xFF0000,   // red (hex number)
  AWAY: 0xDDDDDD,   // light grey
};

Note: Away team color should be light (grey, yellow, white) for jersey numbers to be legible.

Coaches

export const COACHES = [
  { name: 'Coach Riley', teamColor: TEAM_COLORS.HOME },
  { name: 'Coach Sam',   teamColor: TEAM_COLORS.AWAY },
];

Players

Exactly 12 players required. Available hair styles: 'ponytail', 'long-down', 'pixie'. Hair colors: 'blond', 'brown'. Set shoe to a hex string for a fixed boot color, or null for a random color from the palette.

export const PLAYERS = [
  { name: 'Riley', hair: { color: 'brown', style: 'ponytail' }, shoe: '#FF0000' },
  { name: 'Sam',   hair: { color: 'blond', style: 'pixie'    }, shoe: null },
  // ... 10 more players
];

Deploy

There's no build step — the game is plain HTML + ES modules. Any static host works:

  • GitHub Pages — push to a repo and enable Pages in Settings
  • Netlify / Vercel — drag the folder into their dashboard, or connect the repo
  • Cloudflare Pages — connect the repo, no build command, output directory /
  • Anywhere else — upload the files; the only requirement is that the host serves ES modules with correct MIME types (any modern static host does)

Run Tests

Open tests/index.html in a browser via a local server.

Controls

Key Action
Arrow keys / WASD Move controlled player
Space Pass or shoot
Tab Switch to next teammate
M Toggle sound
Esc Pause / timeout

About

Create your own soccer team scrimmage. Designed for my daughters soccer team to celebrate the end of their season.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages