Neon Tiles - Mary Had A Little Lamb

By Neon Piano

Neon Piano

0 subscribers

Based on the following code

Neon Tiles - Baby Shark

Neon Tiles - Baby Shark

Neon Piano

6 views ยท 1d ago

0 viewsยท1h ago

๐ŸŽน Neon Tiles โ€” Mary Had a Little Lamb

A neon-styled 4-lane rhythm game built around the first song most children ever learn โ€” "Mary Had a Little Lamb" โ€” the chart was transcribed directly from sheet music and runs through both verses of the 8-bar tune. Cyberpunk visuals with a cyanโ†’magenta gradient palette, ambient drifting tiles on the start and game-over screens, and the Orbitron typeface remix the schoolyard standard for the synthwave era.

๐ŸŽฎ How to Play

  • Tap / Click โ€” Tap tiles on mobile, or click them with the mouse on desktop.
  • Keyboard โ€” Use A S D F for the four lanes (left โ†’ right).
  • Hold notes โ€” For taller tiles, keep the key/finger pressed until the tile clears.
  • Burst tiles โ€” Some tiles fire a quick two-note flourish from a single tap, capturing the song's ์ 4๋ถ„ + 8๋ถ„ swing.
  • Pause โ€” Space or P
  • Mute / Unmute โ€” M
  • Quick start / restart โ€” Press D while any overlay is showing.

โœจ Features

๐ŸŽต Real Score, Real Pitch

  • 8 measures played twice (16 measures total per cycle), transcribed directly from sheet music โ€” both verses of "Mary had a little lamb / Its fleece was white as snow..." through to the final cadence.
  • Every note plays at its actual pitch in G major across a tight 4-note pentatonic-feeling range (G4 / A4 / B4 / D5 โ€” that's it, the entire song lives inside a 5-note window).
  • Tempo is โ™ฉ=120 in 4/4 time, with each game beat = one 4๋ถ„์Œํ‘œ (500 ms) โ€” comfortable nursery-rhyme pulse with a clear quarter-note grid.

๐ŸŽถ Sub-Slot Bursts on the Iconic Swing

  • The song's rhythmic signature โ€” "Ma-ry had a" (์ 4๋ถ„ + 8๋ถ„ + 4๋ถ„) โ€” is preserved as a sub-slot burst tile that fires both pitches at their correct rhythmic positions from a single tap.
  • This pattern appears 4 times per cycle: m2 and m6 ("Mary had a" / "fleece was white as"), each played twice via the repeat.
  • The original score's pickup anacrusis (a D5 8th leading into the first downbeat) has been converted to a rest so each pass starts cleanly on m2's B4 โ€” no awkward partial-measure pickup.

๐Ÿš€ Progressive Difficulty + Cycle Flash

  • BPM increases by +12.5% per cycle (120 โ†’ 135 โ†’ 150 โ†’ 169...). The tight 4-note range means the chart stays readable even as the tempo climbs.
  • Each cycle is also transposed up by a whole step (2 semitones), lifting Mary's pentatonic walk into ever-brighter territory.
  • Cycle transition flash: every new cycle pops up a centered banner โ€” CYCLE 2 / โ™ช +2 ยท โšก +12% โ€” with a scale-and-glow animation, so the moment you survive into harder territory feels earned.

๐Ÿ’ข Visible Miss Feedback

  • Tap on empty space, hit the wrong tile, release a hold too early, or let any tile fall off-screen โ€” all trigger a red flash at the relevant tile (and a circle pulse at the tap point), held for 450 ms.
  • Plays a dissonant low buzz with downward portamento so misses are clearly audible.
  • The game ends after the miss display, giving you a clear "what just happened" beat.

๐ŸŽจ Polished Neon Visuals

  • Hand-tuned per-lane colors along a cyan โ†’ blue โ†’ purple โ†’ magenta gradient that matches the logo.
  • Glowing tube borders, soft outer halos, and scanline textures only inside the active press zone so the tappable area is instantly readable on hold tiles.
  • Ambient floating tiles drift continuously down behind both the start screen and the game-over screen.
  • Animated "neon tile" START button that physically slides down the board into the game on press โ€” no jarring screen transitions. Same treatment on the PLAY AGAIN button.
  • Score-burst flash animation on every successful hit.

๐Ÿง  Smart Lane Distribution

  • Lanes are picked dynamically rather than randomly: the algorithm avoids consecutive same-lane spawns and balances left vs. right side usage.

๐ŸŽฏ Forgiving Hold Timing

  • Hold tiles only require 75% of the full duration โ€” releasing slightly early still counts.
  • The hold-progress fill uses a soft gradient fade at its top edge instead of a hard line, so there's no visible pass/fail boundary to fixate on.

๐ŸŽผ Scoring

  • 10 points per beat cleared, with bursts counted as a single tile.
  • High score saved locally and shown on the start and game-over screens.

๐Ÿ“ฑ Mobile-First Input

  • Multi-touch support โ€” different fingers on different lanes are tracked independently.
  • Coordinate-based hit testing rather than lane-only, so taps register exactly where your finger lands.
  • touch-action: none and user-scalable=no to prevent scrolling/zooming during play.
  • Viewport sized in vw units (9:16 portrait) so it scales perfectly across phone screens.
  • Mouse-up listener attached to window so releases register even if the cursor leaves the canvas.

๐Ÿ› ๏ธ Tech Stack

  • Pure HTML / CSS / JavaScript โ€” zero dependencies, zero build step.
  • HTML5 Canvas for the 360ร—640 game board with hand-rolled rounded-rectangle drawing and gradient fills.
  • Web Audio API with `OscillatorNode

Loading comments...

Other Codes

No other codes yet