Creative direction: sound as territory, VISION.md, keyart, needle-drop launch
Signature mechanic — auras make sound physical: * In The Mix (MRP): allied units within 5 cells of an Amp Stack get +25% firepower, pink note decoration. Amp placement is now forward strategy. * Low Latency (Stream): allied units within 5 cells of an Edge Node move 30% faster, blue chevron decoration. The datacentre build-radius creep now has a combat identity to match the lore. Pure YAML: ProximityExternalCondition -> ExternalCondition + multipliers. Also: VISION.md (five pillars, one page), THE DROP/SHUFFLE launches now play a procedural vinyl needle-drop crackle (33rpm rumble + dust pops), and generated cinematic keyart wired into the loadscreen stripe. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
3f2f94148f
commit
8945a6a06b
40
VISION.md
Normal file
40
VISION.md
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
# VINYLGOD — creative direction
|
||||||
|
|
||||||
|
One page. If a change fights these pillars, the change is wrong.
|
||||||
|
|
||||||
|
## The fantasy
|
||||||
|
You are fighting a war over whether music gets to be a *thing you hold*.
|
||||||
|
Every match is a loudness war made literal.
|
||||||
|
|
||||||
|
## Pillars
|
||||||
|
|
||||||
|
**1. Loud is strong.**
|
||||||
|
Sound is territory. MRP units fight harder *In The Mix* (within earshot of an
|
||||||
|
Amp Stack, +25% firepower). Stream units run *Low Latency* near an Edge Node
|
||||||
|
(+30% speed). Forward speaker placement is forward strategy. Any new mechanic
|
||||||
|
should ask: does this make sound more physical?
|
||||||
|
|
||||||
|
**2. The ground remembers.**
|
||||||
|
Wax seeps regrow the fields. Explosions scar the asphalt. Groove-etched ground
|
||||||
|
marks where the Black Wax surfaced. Battles should leave the map looking
|
||||||
|
*played*, like a record collects crackle.
|
||||||
|
|
||||||
|
**3. Everything is a record.**
|
||||||
|
Weapons are thrown 45s, rotors are LPs, the superweapon is a tonearm. If an
|
||||||
|
asset could belong in a generic sci-fi RTS, redesign it until it couldn't.
|
||||||
|
|
||||||
|
**4. The Party is loud; the Stream is polite.**
|
||||||
|
MRP: rust, hot pink, gaffer tape, warm voices, drums. Stream: seamless white,
|
||||||
|
ring lights, customer-service menace, no corners. MRP text shouts. Stream text
|
||||||
|
apologises while it deletes you. Never swap these voices.
|
||||||
|
|
||||||
|
**5. Real stakes, cartoon delivery.**
|
||||||
|
Music is being erased forever — and the robots are having the time of their
|
||||||
|
lives defending it. No grimdark. Loss lines hurt ("THE NEEDLE HAS LIFTED"),
|
||||||
|
win lines are needle-drops.
|
||||||
|
|
||||||
|
## Hard rules (inherited, non-negotiable)
|
||||||
|
- 100% original content, generated locally, provenance logged in
|
||||||
|
assets_src/PROMPTS.md. No EA anything. GPL v3 everything.
|
||||||
|
- Balance claims require a 5-match arena series (MEGAPLAN §5b), not vibes.
|
||||||
|
- Verify with tools/smoketest.sh — a live process is not a passing game.
|
||||||
BIN
assets_src/keyart_raw.png
Normal file
BIN
assets_src/keyart_raw.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.8 MiB |
BIN
mods/vinylgod/audio/sfx_needledrop.wav
Normal file
BIN
mods/vinylgod/audio/sfx_needledrop.wav
Normal file
Binary file not shown.
Binary file not shown.
|
Before Width: | Height: | Size: 90 KiB After Width: | Height: | Size: 225 KiB |
@ -8,6 +8,16 @@
|
|||||||
AttackMove:
|
AttackMove:
|
||||||
|
|
||||||
spinner:
|
spinner:
|
||||||
|
ExternalCondition@INTHEMIX:
|
||||||
|
Condition: inthemix
|
||||||
|
FirepowerMultiplier@INTHEMIX:
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Modifier: 125
|
||||||
|
WithDecoration@INTHEMIX:
|
||||||
|
Image: auras
|
||||||
|
Sequence: mix
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Position: TopRight
|
||||||
Inherits: ^ArmedUnit
|
Inherits: ^ArmedUnit
|
||||||
Voiced:
|
Voiced:
|
||||||
VoiceSet: MrpVoice
|
VoiceSet: MrpVoice
|
||||||
@ -32,6 +42,16 @@ spinner:
|
|||||||
Weapon: tonearm_blade
|
Weapon: tonearm_blade
|
||||||
|
|
||||||
stacktank:
|
stacktank:
|
||||||
|
ExternalCondition@INTHEMIX:
|
||||||
|
Condition: inthemix
|
||||||
|
FirepowerMultiplier@INTHEMIX:
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Modifier: 125
|
||||||
|
WithDecoration@INTHEMIX:
|
||||||
|
Image: auras
|
||||||
|
Sequence: mix
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Position: TopRight
|
||||||
Inherits: ^ArmedUnit
|
Inherits: ^ArmedUnit
|
||||||
Voiced:
|
Voiced:
|
||||||
VoiceSet: MrpVoice
|
VoiceSet: MrpVoice
|
||||||
@ -56,6 +76,16 @@ stacktank:
|
|||||||
Weapon: feedback_burst
|
Weapon: feedback_burst
|
||||||
|
|
||||||
basscannon:
|
basscannon:
|
||||||
|
ExternalCondition@INTHEMIX:
|
||||||
|
Condition: inthemix
|
||||||
|
FirepowerMultiplier@INTHEMIX:
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Modifier: 125
|
||||||
|
WithDecoration@INTHEMIX:
|
||||||
|
Image: auras
|
||||||
|
Sequence: mix
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Position: TopRight
|
||||||
Inherits: ^ArmedUnit
|
Inherits: ^ArmedUnit
|
||||||
Voiced:
|
Voiced:
|
||||||
VoiceSet: MrpVoice
|
VoiceSet: MrpVoice
|
||||||
@ -80,6 +110,16 @@ basscannon:
|
|||||||
Weapon: bass_ring
|
Weapon: bass_ring
|
||||||
|
|
||||||
roadie:
|
roadie:
|
||||||
|
ExternalCondition@INTHEMIX:
|
||||||
|
Condition: inthemix
|
||||||
|
FirepowerMultiplier@INTHEMIX:
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Modifier: 125
|
||||||
|
WithDecoration@INTHEMIX:
|
||||||
|
Image: auras
|
||||||
|
Sequence: mix
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Position: TopRight
|
||||||
Inherits: ^Unit
|
Inherits: ^Unit
|
||||||
Voiced:
|
Voiced:
|
||||||
VoiceSet: MrpVoice
|
VoiceSet: MrpVoice
|
||||||
@ -104,6 +144,7 @@ mastering:
|
|||||||
Inherits: ^EconBuilding
|
Inherits: ^EconBuilding
|
||||||
Inherits@shape: ^Buildable2x2
|
Inherits@shape: ^Buildable2x2
|
||||||
NukePower:
|
NukePower:
|
||||||
|
LaunchSound: audio/sfx_needledrop.wav
|
||||||
Icon: thedrop
|
Icon: thedrop
|
||||||
Name: power-thedrop.name
|
Name: power-thedrop.name
|
||||||
Description: power-thedrop.description
|
Description: power-thedrop.description
|
||||||
@ -135,6 +176,16 @@ mastering:
|
|||||||
Amount: -40
|
Amount: -40
|
||||||
|
|
||||||
hornpit:
|
hornpit:
|
||||||
|
ExternalCondition@INTHEMIX:
|
||||||
|
Condition: inthemix
|
||||||
|
FirepowerMultiplier@INTHEMIX:
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Modifier: 125
|
||||||
|
WithDecoration@INTHEMIX:
|
||||||
|
Image: auras
|
||||||
|
Sequence: mix
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Position: TopRight
|
||||||
Inherits: ^EconBuilding
|
Inherits: ^EconBuilding
|
||||||
Inherits@shape: ^Buildable1x1
|
Inherits@shape: ^Buildable1x1
|
||||||
Buildable:
|
Buildable:
|
||||||
@ -198,6 +249,7 @@ algorithm:
|
|||||||
Power:
|
Power:
|
||||||
Amount: -40
|
Amount: -40
|
||||||
NukePower:
|
NukePower:
|
||||||
|
LaunchSound: audio/sfx_needledrop.wav
|
||||||
Icon: theshuffle
|
Icon: theshuffle
|
||||||
Name: power-theshuffle.name
|
Name: power-theshuffle.name
|
||||||
Description: power-theshuffle.description
|
Description: power-theshuffle.description
|
||||||
@ -219,6 +271,16 @@ algorithm:
|
|||||||
# --- round 5: MRP hero + scout ---
|
# --- round 5: MRP hero + scout ---
|
||||||
|
|
||||||
selector:
|
selector:
|
||||||
|
ExternalCondition@INTHEMIX:
|
||||||
|
Condition: inthemix
|
||||||
|
FirepowerMultiplier@INTHEMIX:
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Modifier: 125
|
||||||
|
WithDecoration@INTHEMIX:
|
||||||
|
Image: auras
|
||||||
|
Sequence: mix
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Position: TopRight
|
||||||
Inherits: ^ArmedUnit
|
Inherits: ^ArmedUnit
|
||||||
Voiced:
|
Voiced:
|
||||||
VoiceSet: MrpVoice
|
VoiceSet: MrpVoice
|
||||||
@ -245,6 +307,16 @@ selector:
|
|||||||
SelectionDecorations:
|
SelectionDecorations:
|
||||||
|
|
||||||
boombike:
|
boombike:
|
||||||
|
ExternalCondition@INTHEMIX:
|
||||||
|
Condition: inthemix
|
||||||
|
FirepowerMultiplier@INTHEMIX:
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Modifier: 125
|
||||||
|
WithDecoration@INTHEMIX:
|
||||||
|
Image: auras
|
||||||
|
Sequence: mix
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Position: TopRight
|
||||||
Inherits: ^ArmedUnit
|
Inherits: ^ArmedUnit
|
||||||
Voiced:
|
Voiced:
|
||||||
VoiceSet: MrpVoice
|
VoiceSet: MrpVoice
|
||||||
@ -316,6 +388,16 @@ boombike:
|
|||||||
Categories: Aircraft
|
Categories: Aircraft
|
||||||
|
|
||||||
flyer45:
|
flyer45:
|
||||||
|
ExternalCondition@INTHEMIX:
|
||||||
|
Condition: inthemix
|
||||||
|
FirepowerMultiplier@INTHEMIX:
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Modifier: 125
|
||||||
|
WithDecoration@INTHEMIX:
|
||||||
|
Image: auras
|
||||||
|
Sequence: mix
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Position: TopRight
|
||||||
Inherits: ^AirUnit
|
Inherits: ^AirUnit
|
||||||
Voiced:
|
Voiced:
|
||||||
VoiceSet: MrpVoice
|
VoiceSet: MrpVoice
|
||||||
|
|||||||
@ -83,6 +83,16 @@ popupvan:
|
|||||||
Facing: 384
|
Facing: 384
|
||||||
|
|
||||||
djgrunt:
|
djgrunt:
|
||||||
|
ExternalCondition@INTHEMIX:
|
||||||
|
Condition: inthemix
|
||||||
|
FirepowerMultiplier@INTHEMIX:
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Modifier: 125
|
||||||
|
WithDecoration@INTHEMIX:
|
||||||
|
Image: auras
|
||||||
|
Sequence: mix
|
||||||
|
RequiresCondition: inthemix
|
||||||
|
Position: TopRight
|
||||||
Inherits: ^ArmedUnit
|
Inherits: ^ArmedUnit
|
||||||
Voiced:
|
Voiced:
|
||||||
VoiceSet: MrpVoice
|
VoiceSet: MrpVoice
|
||||||
@ -198,6 +208,9 @@ pressplant:
|
|||||||
|
|
||||||
ampstack:
|
ampstack:
|
||||||
Inherits: ^EconBuilding
|
Inherits: ^EconBuilding
|
||||||
|
ProximityExternalCondition@MIX:
|
||||||
|
Condition: inthemix
|
||||||
|
Range: 5c0
|
||||||
Inherits@shape: ^Buildable1x1
|
Inherits@shape: ^Buildable1x1
|
||||||
Buildable:
|
Buildable:
|
||||||
Queue: Building
|
Queue: Building
|
||||||
|
|||||||
@ -45,6 +45,9 @@ streamhub:
|
|||||||
|
|
||||||
datacentre:
|
datacentre:
|
||||||
Inherits: ^EconBuilding
|
Inherits: ^EconBuilding
|
||||||
|
ProximityExternalCondition@LATENCY:
|
||||||
|
Condition: lowlatency
|
||||||
|
Range: 5c0
|
||||||
Inherits@shape: ^Buildable1x1
|
Inherits@shape: ^Buildable1x1
|
||||||
Buildable:
|
Buildable:
|
||||||
Queue: Building
|
Queue: Building
|
||||||
@ -127,6 +130,16 @@ printfarm:
|
|||||||
Amount: -20
|
Amount: -20
|
||||||
|
|
||||||
scraper:
|
scraper:
|
||||||
|
ExternalCondition@LOWLATENCY:
|
||||||
|
Condition: lowlatency
|
||||||
|
SpeedMultiplier@LOWLATENCY:
|
||||||
|
RequiresCondition: lowlatency
|
||||||
|
Modifier: 130
|
||||||
|
WithDecoration@LOWLATENCY:
|
||||||
|
Image: auras
|
||||||
|
Sequence: latency
|
||||||
|
RequiresCondition: lowlatency
|
||||||
|
Position: TopRight
|
||||||
Inherits: ^Unit
|
Inherits: ^Unit
|
||||||
Voiced:
|
Voiced:
|
||||||
VoiceSet: StreamVoice
|
VoiceSet: StreamVoice
|
||||||
@ -158,6 +171,16 @@ scraper:
|
|||||||
DockClientManager:
|
DockClientManager:
|
||||||
|
|
||||||
bufferbot:
|
bufferbot:
|
||||||
|
ExternalCondition@LOWLATENCY:
|
||||||
|
Condition: lowlatency
|
||||||
|
SpeedMultiplier@LOWLATENCY:
|
||||||
|
RequiresCondition: lowlatency
|
||||||
|
Modifier: 130
|
||||||
|
WithDecoration@LOWLATENCY:
|
||||||
|
Image: auras
|
||||||
|
Sequence: latency
|
||||||
|
RequiresCondition: lowlatency
|
||||||
|
Position: TopRight
|
||||||
Inherits: ^ArmedUnit
|
Inherits: ^ArmedUnit
|
||||||
Voiced:
|
Voiced:
|
||||||
VoiceSet: StreamVoice
|
VoiceSet: StreamVoice
|
||||||
@ -180,6 +203,16 @@ bufferbot:
|
|||||||
Weapon: ping
|
Weapon: ping
|
||||||
|
|
||||||
drmwalker:
|
drmwalker:
|
||||||
|
ExternalCondition@LOWLATENCY:
|
||||||
|
Condition: lowlatency
|
||||||
|
SpeedMultiplier@LOWLATENCY:
|
||||||
|
RequiresCondition: lowlatency
|
||||||
|
Modifier: 130
|
||||||
|
WithDecoration@LOWLATENCY:
|
||||||
|
Image: auras
|
||||||
|
Sequence: latency
|
||||||
|
RequiresCondition: lowlatency
|
||||||
|
Position: TopRight
|
||||||
Inherits: ^ArmedUnit
|
Inherits: ^ArmedUnit
|
||||||
Voiced:
|
Voiced:
|
||||||
VoiceSet: StreamVoice
|
VoiceSet: StreamVoice
|
||||||
@ -206,6 +239,16 @@ drmwalker:
|
|||||||
# --- round 5: Stream hero + scout ---
|
# --- round 5: Stream hero + scout ---
|
||||||
|
|
||||||
curator:
|
curator:
|
||||||
|
ExternalCondition@LOWLATENCY:
|
||||||
|
Condition: lowlatency
|
||||||
|
SpeedMultiplier@LOWLATENCY:
|
||||||
|
RequiresCondition: lowlatency
|
||||||
|
Modifier: 130
|
||||||
|
WithDecoration@LOWLATENCY:
|
||||||
|
Image: auras
|
||||||
|
Sequence: latency
|
||||||
|
RequiresCondition: lowlatency
|
||||||
|
Position: TopRight
|
||||||
Inherits: ^ArmedUnit
|
Inherits: ^ArmedUnit
|
||||||
Voiced:
|
Voiced:
|
||||||
VoiceSet: StreamVoice
|
VoiceSet: StreamVoice
|
||||||
@ -232,6 +275,16 @@ curator:
|
|||||||
SelectionDecorations:
|
SelectionDecorations:
|
||||||
|
|
||||||
crawler:
|
crawler:
|
||||||
|
ExternalCondition@LOWLATENCY:
|
||||||
|
Condition: lowlatency
|
||||||
|
SpeedMultiplier@LOWLATENCY:
|
||||||
|
RequiresCondition: lowlatency
|
||||||
|
Modifier: 130
|
||||||
|
WithDecoration@LOWLATENCY:
|
||||||
|
Image: auras
|
||||||
|
Sequence: latency
|
||||||
|
RequiresCondition: lowlatency
|
||||||
|
Position: TopRight
|
||||||
Inherits: ^Unit
|
Inherits: ^Unit
|
||||||
Voiced:
|
Voiced:
|
||||||
VoiceSet: StreamVoice
|
VoiceSet: StreamVoice
|
||||||
@ -258,6 +311,16 @@ crawler:
|
|||||||
# --- round 5: air ---
|
# --- round 5: air ---
|
||||||
|
|
||||||
compressor:
|
compressor:
|
||||||
|
ExternalCondition@LOWLATENCY:
|
||||||
|
Condition: lowlatency
|
||||||
|
SpeedMultiplier@LOWLATENCY:
|
||||||
|
RequiresCondition: lowlatency
|
||||||
|
Modifier: 130
|
||||||
|
WithDecoration@LOWLATENCY:
|
||||||
|
Image: auras
|
||||||
|
Sequence: latency
|
||||||
|
RequiresCondition: lowlatency
|
||||||
|
Position: TopRight
|
||||||
Inherits: ^AirUnit
|
Inherits: ^AirUnit
|
||||||
Voiced:
|
Voiced:
|
||||||
VoiceSet: StreamVoice
|
VoiceSet: StreamVoice
|
||||||
|
|||||||
BIN
mods/vinylgod/sequences/assets/aura_latency.png
Normal file
BIN
mods/vinylgod/sequences/assets/aura_latency.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 127 B |
BIN
mods/vinylgod/sequences/assets/aura_mix.png
Normal file
BIN
mods/vinylgod/sequences/assets/aura_mix.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 110 B |
@ -321,3 +321,9 @@ scorches:
|
|||||||
Filename: sequences/assets/scorch3.png
|
Filename: sequences/assets/scorch3.png
|
||||||
sc4:
|
sc4:
|
||||||
Filename: sequences/assets/scorch4.png
|
Filename: sequences/assets/scorch4.png
|
||||||
|
|
||||||
|
auras:
|
||||||
|
mix:
|
||||||
|
Filename: sequences/assets/aura_mix.png
|
||||||
|
latency:
|
||||||
|
Filename: sequences/assets/aura_latency.png
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user