DEV Community

Aliza Ali
Aliza Ali Subscriber

Posted on

SOLSTICE — feed the light, hold back the night (an ode to Alan Turing)

June Solstice Game Jam Submission

This is a submission for the June Solstice Game Jam

What I Built

SOLSTICE is a juicy, single-file browser arcade game about the longest day of the year — and a tribute to Alan Turing, born in June, the man who turned the longest nights of a war toward dawn.

You are a spark of light. Move with your mouse (or finger) and the whole world responds: the sky shifts from blazing noon to deep night, the sun rises and sets with your daylight, particles burst and the music speeds up as the danger climbs.

  • 🌗 Daylight is your health. Gather the sun's motes to keep it burning; touch a shadow and the night creeps in. Let it hit zero and the screen pulses red as night falls.
  • 🌀 The Solstice Turn. At the midpoint the world flips — the longest day becomes the longest night (exactly the prompt's "longest day for half the world, shortest for the other"). The sky goes cold, the sun becomes a moon, and light becomes precious.
  • 🌑 Two bosses. The Longest Night at day 10, and the bigger, faster, bullet-spitting Eclipse King at day 20 — each with a phase-2 rage mode and a codebreaking finisher.
  • Power-ups & a stockpile-able Nova. Time Warp, Light Magnet, Freeze, Sun Fragment — plus the Sun Nova you can bank ×3 and unleash to wipe the screen.

It connects to the theme on every axis: the solstice (longest day, the Turn), light vs. dark as the core mechanic, and Alan Turing woven into the story and the boss fights.

▶ Play it live: https://stackmasteraliza.github.io/solstice-cipher/

Video Demo

▶ Watch the demo: https://youtu.be/n6lRqo1CBSo

Code

The whole game is one index.html — no build step, no dependencies, no external assets.

GitHub logo stackmasteraliza / solstice-cipher

SOLSTICE — feed the light, hold back the night. A 20-level arcade game for the June Solstice Game Jam, an ode to Alan Turing.

☀ SOLSTICE

feed the light · hold back the night

A juicy 20-level arcade game for the June Solstice Game Jam — and an ode to Alan Turing.

The longest day of the year, and the dark wants it back. Glide your light, gather the sun's motes, grab power-ups, survive the Solstice Turn, and break two beasts of night.

▶ Play it live · 🎬 Watch the demo · Power-ups · How it's built


✨ Why it's fun

You are a spark of light. Move with the mouse (or your finger) and the whole screen responds — the sky shifts from blazing noon to deep night, the sun rises and sets with your daylight, particles burst, combos chime, and the music speeds up as the danger climbs.

  • 🌗 The light is the game. Daylight is your health bar. Gather motes to keep it burning; touch a shadow and the night…

How I Built It

Plain HTML5 Canvas + vanilla JavaScript. A few decisions I'm happy with:

  • One variable drives the whole atmosphere. The sky, the sun's arc, the glow and the star field are all tied to a single value (--night, 0 = blazing noon → 1 = full dark). The game loop just sets it from your remaining daylight and everything follows — the sun literally sinks as you run out of light.
  • All audio is synthesized live with the Web Audio API — no sound files. There's a kick/hi-hat/bass beat track that speeds up every level, a separate furious minor-key boss track, win/lose stingers, and reactive SFX whose pitch rises with your combo.
  • 20 levels, two bosses, a power-up economy, and four enemy types (normal, fast darters, heavy tanks, and splitters that break in two) — all from a compact entity loop.
  • Honest Mastermind scoring for the Turing finisher, with correct duplicate-glyph handling (the classic trap), unit-tested against the tricky cases.
  • Onboarding built in: a guided practice with tooltips the first run, and a boss briefing before each beast, so a new player (or a judge) is taught every mechanic right before they need it.
  • Accessible & portable: fully keyboard + touch playable; colour and shape pairing for enemies; runs from a single file anywhere.

Prize Category

🎯 Best Ode to Alan Turing.

June is Turing's birth month, so the game is built around the thing he's famous for — code-breaking and the triumph of logic over darkness:

  • Mechanic: each boss can't just be hit to death. At zero HP it's exposed, and Turing's Bombe reveals a cipher — you "Decode the Dawn" by repeating the sequence to break the night for good. Code-breaking is the finishing move.
  • Narrative: between-level "transmissions" trace his arc — Bletchley, the Enigma, his persecution for who he loved, "never granted his own daylight." The win screen, DAWN, is a tribute: "For Alan Turing (1912–1954) — who broke the world's hardest cipher and was never allowed his own daylight."
  • Design: the Enigma rotor motif and the light-vs-shadow (1s and 0s) framing run throughout.

Not submitting to Best Google AI Usage — no Google AI is used in this build.

Thanks for running the jam — happy solstice! ☀

Top comments (6)

Collapse
 
mfarrukhjavedmaib381 profile image
Farrukh Dev

Synthesizing the audio and driving the whole visual atmosphere with just one variable is a brilliant way to build a zero-dependency game. Love the Turing tribute with the code-breaking finishers too—awesome work!

Collapse
 
stackmasteraliza profile image
Aliza Ali

Thank you so much! That means a lot. 😊 I'm happy you caught the Turing reference, that was a little tribute I hoped people would notice. Thanks for the thoughtful feedback!

Collapse
 
patij212 profile image
patij212

I really like what you done! Great work on keeping it clean and focused!
I have a similar core idea in my game but went a completely different direction 😆
Honestly yours looks much clearer.

Collapse
 
stackmasteraliza profile image
Aliza Ali

Thank you so much! I really appreciate that. 😄
I'd love to see the direction you took with yours as well.

Collapse
 
patij212 profile image
patij212

You are welcome! It's genuinely fun to play!😁
you would need click through my profile if you want to see my submission. For some reason it's not showing up on the main feed. I'd really appreciate any feedback 🤗

Thread Thread
 
stackmasteraliza profile image
Aliza Ali

Yes why not let me review