add music #147

Closed
opened 2026-10-24 15:50:28 +00:00 by sermuns · 2 comments
Owner

should be fully procedural, no audio file assets,

it should evolve based on what's happening in the world

for example:

  • obviously if event is taking place, specific music for event
  • average magnitude of velocity of players in world

there should be different "songs" or "genres" of music that can play

  • using specific vehicles should influence what song is queued next.
  • these songs should be 3-10 min in lenght
should be fully procedural, no audio file assets, it should evolve based on what's happening in the world for example: - obviously if event is taking place, specific music for event - average magnitude of velocity of players in world there should be different "songs" or "genres" of music that can play - using specific vehicles should influence what song is queued next. - these songs should be 3-10 min in lenght
Author
Owner

should also be specific music per emote. this shouldn't take over all existing music but just play over the top.

should also be specific music per emote. this shouldn't take over all existing music but just play over the top.
Author
Owner

Landed — closing as implemented.

  • Fully procedural, no assets. liuverse-music turns a seed into a score of parts with different chords and melodies and synthesizes it a block at a time (db982e8); the game plays it (a078091, 6ebc9ed).
  • Evolves with the world. The client director (liuverse/src/music.rs) picks the genre from what is happening: events take over, the mounted vehicle kind decides between drive and ride genres, night and explore choose between music and silence (ab19703), and takes vary tempo, key and part pools so a settled mood never repeats itself (1e8cc22).
  • Genres. Event, drive, ride, night, explore and intro each compose their own material.
  • Emote flourishes — the ask from the comments — exist as a genre of one stinger per emote, meant to layer over the current music, but no live emote triggers one yet. If that wiring is wanted, it deserves its own issue.

Two points from the original text were overtaken by design rather than built as written: songs are one-to-two-minute crossfading takes streamed seamlessly rather than fixed 3-10 min tracks, and reactivity is by mood (events, vehicles, day/night) rather than by the example of aggregate player velocity.

Landed — closing as implemented. - **Fully procedural, no assets.** `liuverse-music` turns a seed into a score of parts with different chords and melodies and synthesizes it a block at a time (`db982e8`); the game plays it (`a078091`, `6ebc9ed`). - **Evolves with the world.** The client director (`liuverse/src/music.rs`) picks the genre from what is happening: events take over, the mounted vehicle kind decides between drive and ride genres, night and explore choose between music and silence (`ab19703`), and takes vary tempo, key and part pools so a settled mood never repeats itself (`1e8cc22`). - **Genres.** Event, drive, ride, night, explore and intro each compose their own material. - **Emote flourishes** — the ask from the comments — exist as a genre of one stinger per emote, meant to layer over the current music, but no live emote triggers one yet. If that wiring is wanted, it deserves its own issue. Two points from the original text were overtaken by design rather than built as written: songs are one-to-two-minute crossfading takes streamed seamlessly rather than fixed 3-10 min tracks, and reactivity is by mood (events, vehicles, day/night) rather than by the example of aggregate player velocity.
sermuns 2026-10-25 01:57:41 +00:00
Sign in to join this conversation.
No description provided.