Skip to content

ELginas/jam-player

Repository files navigation

jam-player-demo.mp4

Jam Player is a Firefox & Chrome extension which speeds up game jam playtesting. Add game jam games into a queue and play then in sequence without jumping through many links manually.

Features:

  • Add/remove game jam games from itch.io page directly
  • Opens rating page automatically when game is closed
  • Play next game in queue button in rating page
  • Saving queue between browser restarts and reboots
  • Firefox container support

Installation

Firefox

Method 1

  1. Download latest version from addons.firefox.org

Method 2

  1. Install jam-player-{version}-firefox.zip to Firefox Developer Edition
    1. Download jam-player-{version}-firefox.zip
    2. Go to about:config and set xpinstall.signatures.required to false
    3. In Firefox open Hamburger (3 lines) button at top right corner > Add-ons and themes > Extensions > Cog/settings icon > Install Add-on From File... and select downloaded file.
installation-firefox-demo.mp4

Chrome

  1. Download jam-player-{version}-chrome.zip
  2. In Chrome open 3 dots at top right corner > Extensions > Manage Extensions
  3. Click a switch at top right corner to enable Developer mode
  4. Drag and drop downloaded file to Extensions window
installation-chrome-demo.mp4

Gotchas

  • If the game tab is the only tab open in the browser, when transitioning to rating page for a brief moment game tab is closed and rating page is not yet opened so there are no tabs opened and browser might close.

Building

Development setup:

pnpm install
pnpm start:firefox

Packaging:

pnpm install
pnpm package:firefox

Environment setup inside Ubuntu Docker container:

To launch basic Ubuntu container:

docker run -it ubuntu:latest /bin/bash

And then inside container:

# Build user setup (skip if you already have user)
apt-get update && apt-get install -y sudo
passwd ubuntu # Set your own password
su - ubuntu
# Source & pnpm installation
sudo apt-get install curl git nodejs -y
curl -fsSL https://get.pnpm.io/install.sh | sh -
source /home/ubuntu/.bashrc
git clone https://github.com/ELginas/jam-player.git
cd jam-player
pnpm install
pnpm package:firefox
# Verify installation
# Note: everywhere where jam_player-0.1.1.zip is replace version with current version
ls -l /home/ubuntu/jam-player/web-ext-artifacts/jam_player-0.1.1.zip

Verification

Sadly .zip file can't be verified by SHA256 because every package run generates a slightly different ZIP file binary representation likely due to concurrency. But it is possible to verify checksums of extracted files:

sudo apt-get install unzip -y
unzip /home/ubuntu/jam-player/web-ext-artifacts/jam_player-0.1.1.zip -d /tmp/jam-player
find /tmp/jam-player -type f -exec sha256sum {} \; > checksums.txt
sort checksums.txt -o checksums.txt
cat checksums.txt

And you can compare original .zip file and your manually packaged .zip file checksums (this runs inside outside of Docker):

# Get container ID (e.g. 63a8f7398d42)
docker container ls
docker cp 63a8f7398d42:/home/ubuntu/jam-player/checksums.txt ~/checksums.txt
diff -s ~/checksums.txt checksums-orig.txt

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published