Skip to main content

Top level navigation menu

A drawn image of Fredrik Bergqvist in a blue shirt

Star Wars Unlimited Base Counter

When the Star Wars Unlimited card game was released, me and a couple of co-workers started to play it regularly at work

I wanted to create an app to track base damage, so I created a web app, using web components for us to use.

The app is available at sw-unlimited.com, and does work on desktop, but is made for use on a phone.

Star Wars Unlimited Base Counter Roll for initiative Star Wars Unlimited Base Counter Star Wars Unlimited Base Counter game log Winner screen

Features

  • Roll for initiative (who gets to start)
  • Pick leader and base
    • Base decides how many hit points a player has
  • Tracks and displays base damage for both players based on their bases
  • Indicate of who has claimed the initiative
  • Keep track of time
    • A single game should normally not exceed 30 minutes, or 3 games in 55 minutes in a competition setting.
  • Game log
    • Showing what each player has done
  • Winner screen
    • Shows basic starts from the game

Learnings

This was my first time using only native web components in a whole project, and I feel that I would do some things differently if I were to do it again.

The shadow DOM makes the app really hard to style, I would probably make most components use light DOM instead.

I use a redux-like store to keep track of the state, with updates being sent via the dispatchEvent-function. This worked well; I felt no need to use a library.

Some day I may rewrite the app, but it works well for my needs right now.

This site is built with Eleventy and hosted on Vercel.

Icons are from Flaticon.

Web components from Nidhugg Web components

Performance stats can be found here: Speedlify