ASTER! SHOOT // PIANO SHOOTER CLICKER

Shoot light into 5 stars. Every hit = stardust + piano note + particles.

CORE:

- 5-star cluster, radius 120px, exact center, baseAngle -90deg

- 300 background starfield, twinkle 0.0015*dt, base alpha 0.3-0.8

- Super Rotator: dashed ellipse 620x420 + 560x360, 0.3°/s, alpha 0.07/0.5

- Canvas: DPR capped 2, radial bg #070a10 -> #0e121c, glow rgba(255,255,255,0.18) + rgba(120,160,255,0.12)

SHOOTING:

- Click star: shot from cursor, hitRadius 42px, launch point cursor+12px down

- Click empty: shot from bottom forge (0, h/2-24) to nearest star + random 40px

- Projectile: dur 340-450ms heavy 520ms, cubic easeOut, trail 4 points

- Hit detect: distance check to star tx/ty

- Particles: 12 per hit (18 on 10th), cap 200, speed 80-140 heavy +60, life 600-720ms, colors star/star2/proj/white

- Float text: note name sans octave, vy -28 to -48, life 1200ms

- Double Shot upgrade adds 20% chance per level for second projectile with 18px offset

ECONOMY:

- Stardust: score state r

- Per Click: u = 1 + lens

- Per Sec: i = lens*0.8 (from launcher count *0.8)

- Costs: lens 15*1.5^n, launcher 30*1.6^n, double 75*1.8^n, bloom 140*2^n

- Nova charge c 0-100: +1.2 per normal hit, +5 per heavy, Space when 100%

- Nova: white flash 380ms opacity 0.85, 28 white particles per star, 22*u + 8*launcher dust, NOVA! floats

AUDIO:

- WebAudio: AudioContext, master gain 0.75, convolver reverb 1.8s decay pow(1-t,2.2), wet 0.22

- Note freq: nv{} C4 261.63 etc, tv() with octave jump 12% chance +1 octave

- 3 osc per hit: triangle/sine/sine, freq * [1,2,3], detune [0,4,-3], gains [0.26,0.12,0.06], attack 8ms, decay 220ms, release 1.1s

- Bloom adds minor 3rd sine 0.333oct up, delay 40ms

- Heavy: gain 1.2-1.3x

- Shoot sfx: osc 100Hz -> 38Hz 180ms, gain 0.9 -> 0.0001 350ms

SCALE ENGINE:

- Scales: C Pentatonic [C4,D4,E4,G4,A4,C5,D5,E5], D Dorian, G Major, A Minor Pent

- Weighted walk: 60% step ±1, 25% jump ±2, 15% random, clamp 0-7

- Rotate every 12 hits OR 15s, lastNoteIdx tracked

UPGRADES:

- ◈ Prism Lens: +1 per click

- ⟡ Auto Launcher: +0.8/s drones, interval 1200ms, 1-~5 shots per tick

- ⧉ Double Shot: +20% double per level

- ✶ Chorus Bloom: harmony +20% dust per level (1+0.2*n)

THEMES (T key): CLASSIC white, TEAL/PINK #5eead4/#f472b6, DAWN #fdba74/#fb7185

Each theme: bg, bg2, star, star2, proj, accent, ring, glow, glow2, uiBorder


DEVELOPER NOTES:

This build is entirely in HTML5 and based on a Unity prototype.

If you would like me to update and expand this file please consider donating.

Let me know in the comments what desired improvements or bugs you experience and we will update it for Version 2.

Aster! Shoot is free to play, if you would like to purchase the zip file you can use the source code to Aster! Shoot in your projects.

There may be a bug with object layering when hitting the spacebar

Download

Download NowName your own price

Click download now to get access to the following files:

Aster-Shoot-Download.zip 57 kB
if you pay $10 USD or more