Skip to content

dylanlangston/Scale

Repository files navigation

Codespaces Prebuilds Deploy Pages GitHub Workflow GitHub License GitHub repo size

Scale Game 🧗‍♂️

This Progressive Web App is a submission to the 2023 Game Off event hosted by GitHub on itch.io, It was created by @dylanlangston using the following:

This was my first attempt1 coding using Zig as well as my first app to target web assembly.

What's Game Off? 2

Game Off is GitHub's annual game jam challenging individuals and teams to build a game during the month of November. Use whatever programming languages, game engines, or libraries you like. You're also welcome to use AI tools to help generate code, assets, or anything in between!

The theme for this year's jam is SCALE!

My interpretion of the theme is a vertical platformer that is procedurally generated3.

Play on Itch.io


Getting Started

This repository includes a devcontainer.json and prebuilt Codespace images to get up and running quickly with a full-featured development environment in the cloud!4

Clone

  1. Clone this repository: git clone https://github.com/dylanlangston/Scale.git
  2. Change directories into the newly created ./Scale folder. Then initialize the submodules: git submodule update --init --recursive

Debug Locally:

  1. If you haven't already, install Zig version 0.11.0 using the instructions here.
  2. Configure you build environment for Raylib using the appropriate instructions for you platform.
  3. Finally, to start the game run the command zig build run. Alternatively run the Debug task in VSCode.

Build for Web:

  1. Complete steps to Clone and Debug Locally above first.
  2. Change directories into the ./Scale folder. Build the zig portion of the game using command zig build -Dtarget=wasm32-emscripten. Alternatively run the Build Web task in VSCode.
  3. If you haven't already, install NodeJS LTS from here (or your preferred source).
  4. Change directories into the ./Scale/src/scale-website folder. Then install the required node packages using npm install.
  5. Build the web version by running the command npm run build. You can find the generated static site in the ./Scale/src/scale-website/build folder.

Credits

Font Source License
Eight Bit Dragon https://www.fontspace.com/eight-bit-dragon-font-f30428 Freeware, Non-Commercial
Two Lines https://www.fontspace.com/2-lines-font-f14541 Freeware, Non-Commercial
Ec Bricks Regular https://www.fontspace.com/ec-bricks-font-f30951 Creative Commons (by-nc-nd) Attribution
Non-commercial No Derivatives
Palette Source
Miyazaki 16 https://lospec.com/palette-list/miyazaki-16
Sound Creator Tool License
jump miajohnson99 Chiptone Creative Commons (by) Attribution
Game Over miajohnson99 BeepBox Creative Commons (by) Attribution
Music Creator Tool License
Theme miajohnson99 BeepBox Creative Commons (by) Attribution

All the included textures were created using Piskel and are licensed as Creative Commons (by) Attribution.

Footnotes

  1. As this is my first attempt, it's likely that this code isn't idiomatic or following best practices.

  2. Game Off 2023 on Itch.io

  3. The platforms are pre-generated and randomly placed due to time constraints.

  4. For local development check out Dev Containers and DevPod.