Friday Facts #407 - Automating a soundtrack

Regular reports on Factorio development.
KeithFromCanada
Inserter
Inserter
Posts: 21
Joined: Mon Feb 14, 2022 5:49 pm
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by KeithFromCanada »

Ever since I typed in a random blues riff(?) music generator BASIC program on an Atari 400, the thought of parametric music has enchanted me. Thank you for making it work for Factorio.

User avatar
Dev-iL
Filter Inserter
Filter Inserter
Posts: 303
Joined: Thu Jul 02, 2015 2:48 pm
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by Dev-iL »

My only suggestion/request is please make this moddable, or add a system where the user can supply a config file with "pre-arranged" tracks (such as lists of integers representing sample ids). That way, players could "compose" their own tracks, share tracks, use AI to generate tracks, etc.
Leading Hebrew translator of Factorio.

supasonix
Manual Inserter
Manual Inserter
Posts: 1
Joined: Sun Apr 21, 2024 9:22 am
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by supasonix »

Liking the music deep-dives recently. I do have one suggestion but it might be controversial to the devs vision, have a toggle to play any music on any planet. Obviously it should be off by default, but I think it would be nice to have the variety (even though I'm still not even tired of the Nauvis soundtrack lol).

FuryoftheStars
Smart Inserter
Smart Inserter
Posts: 2768
Joined: Tue Apr 25, 2017 2:01 pm
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by FuryoftheStars »

Dev-iL wrote:
Sun Apr 21, 2024 4:21 am
My only suggestion/request is please make this moddable, or add a system where the user can supply a config file with "pre-arranged" tracks (such as lists of integers representing sample ids). That way, players could "compose" their own tracks, share tracks, use AI to generate tracks, etc.

Variable music tracks are defined in the prototypes, fully available to modders.
  • Can we have fine control over music?
    There are no plans to add complex controls like custom playlists or per surface settings. A simple mod can be created to achieve that if someone really wants that feature.
My Mods: Classic Factorio Basic Oil Processing | Sulfur Production from Oils | Wood to Oil Processing | Infinite Resources - Normal Yield | Tree Saplings (Redux) | Alien Biomes Tweaked | Restrictions on Artificial Tiles | New Gear Girl & HR Graphics

User avatar
BattleFluffy
Fast Inserter
Fast Inserter
Posts: 197
Joined: Sun Mar 31, 2019 4:58 pm
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by BattleFluffy »

Will this audio backend update resolve the constructive interference/digital distortion and clipping that can be heard when a large group of bitters die on the same frame, eg from a grenade?

nekku
Manual Inserter
Manual Inserter
Posts: 2
Joined: Sun Oct 15, 2023 3:13 am
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by nekku »

Sorry if I missed any posts or replies regarding the same topic, but I just wanted to add a voice of concern that examples from this and previous FFF are very disturbing and I hope they're examples from some action-packed events, like biter attacks, lightning storm events (if they're not constant, which I really hope is true, because having constant flashes seems too much) or vulcano eruptions, etc.
Watching the clip of spidertron simply chilling around the base surrounded by lightnings with this music made me want to turn it off.
I feel actual discomfort from the music examples of FFF 406 and 407.

FuryoftheStars
Smart Inserter
Smart Inserter
Posts: 2768
Joined: Tue Apr 25, 2017 2:01 pm
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by FuryoftheStars »

nekku wrote:
Mon Apr 22, 2024 12:26 am
Sorry if I missed any posts or replies regarding the same topic, but I just wanted to add a voice of concern that examples from this and previous FFF are very disturbing and I hope they're examples from some action-packed events, like biter attacks, lightning storm events (if they're not constant, which I really hope is true, because having constant flashes seems too much) or vulcano eruptions, etc.
Watching the clip of spidertron simply chilling around the base surrounded by lightnings with this music made me want to turn it off.
I feel actual discomfort from the music examples of FFF 406 and 407.
They specifically say in the FFF itself that the clips in this one are merely tech demos, and old ones at that.
Please understand these examples are a tech demo, still in progress. Some details may change. The music itself is not representative of what it will be in the game on release, these samples are quite old and made for illustration purposes!
My Mods: Classic Factorio Basic Oil Processing | Sulfur Production from Oils | Wood to Oil Processing | Infinite Resources - Normal Yield | Tree Saplings (Redux) | Alien Biomes Tweaked | Restrictions on Artificial Tiles | New Gear Girl & HR Graphics

adam_bise
Filter Inserter
Filter Inserter
Posts: 415
Joined: Fri Jun 08, 2018 10:42 pm
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by adam_bise »

This all reminds me of the Diablo II LoD release. In the original release, the music was created by a single talented musician, Matt Uelmen. Then, in the expansion, an orchestra was added. All at once, the essence that made the music great in the original release was lost. This new music was widely regarded as disappointing by many fans, me included. No one ever said the original music was bad, yet many have said the expansion music was bad.

This is going to sound like a slap in the face, but If it were me, I would scrap the whole orchestra and just hire a single talented musician with a synth. And I'm sorry to have to say it, but video game music is one of the only things left in this world that I still get emotional over.

I liked the original Factorio music. It wasn't spectacular, but it also wasn't annoying. The new music is just annoying.

QELO
Burner Inserter
Burner Inserter
Posts: 6
Joined: Wed Oct 04, 2023 2:39 am
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by QELO »

I think both the automatic sound creation function and the collaboration with cutting-edge musicians are wonderful.

But I think. I feel the atmosphere of Vulcanus and Fulgora through the soundtrack, but is it appropriate for building a factory on that planet?
What kind of music is playing in the background as we build factories all alone on a distant planet?

Nauvis' soundtrack feels good to those of us who have spent thousands of hours with it. It would be great if I could experience something like that even on a new planet.
--- qelo's depot --- publishing video that translates the official blog into Japanese and explains. ---
https://www.youtube.com/@qelolyn

Feynt
Manual Inserter
Manual Inserter
Posts: 2
Joined: Mon Feb 20, 2017 1:13 am
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by Feynt »

Congratulations, you've discovered MOD music. Welcome to the 90s. Purple Motion says hello. >)

Seriously though, it's an interesting idea to programmatically assemble samples rather than assembling them with purpose as a composer. I'm not a fan of some of what I've heard exactly. Some of the samples aren't what I would say are good in the context of the piece that was assembled. But I can see the potential, and with tuning I think it could be interesting and engaging while also expanding the music selection quite easily. The third piece for example starts off rough but get better for a bit around 1:30.
Zaflis wrote:
Fri Apr 19, 2024 1:54 pm
I see i see - AI music.
It's slightly different. In this case there are sample tracks which have been made by humans, and there's an algorithm behind assembling the samples together like "don't play this sample back to back with this other sample" which loosely follows music theory. AI generated music is quite different and knows nothing of music theory. it just knows that it has several million music samples to draw from and how a particular style's beats normally come together.

It is however programmatically assembled music, which is on theme with Factorio. Taking a bunch of raw materials and assembling them together to make something else.

Eketek
Long Handed Inserter
Long Handed Inserter
Posts: 60
Joined: Mon Oct 19, 2015 9:04 pm
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by Eketek »

I decided to pre-emptively make an algorithmic music generator. It will be an expansion and rewrite (in LUA) of one I wrote a few years ago. Since I don't have an API to target, the in-dev version will use Csound (already working) and will be kept simple enough to use described features (a proper synthesizer would be preferable, even if it doesn't do much more than sample playback).

Also, how moddable is the audio planned to be: Will scripts be able to directly arrange samples? Will sample-concatenation & blending be available for real-time usage?

Donion
Factorio Staff
Factorio Staff
Posts: 253
Joined: Sun Aug 22, 2021 9:18 am
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by Donion »

Eketek wrote:
Mon Apr 29, 2024 12:29 pm
how moddable is the audio planned to be: Will scripts be able to directly arrange samples? Will sample-concatenation & blending be available for real-time usage?
The variable music tracks will be defined by the AmbientSound prototypes.
There are no plans for real-time Lua API for variable music tracks/music player.
At some point there should be some improvements for programmable speaker (see this thread).

Eketek
Long Handed Inserter
Long Handed Inserter
Posts: 60
Joined: Mon Oct 19, 2015 9:04 pm
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by Eketek »

Donion wrote:
Mon Apr 29, 2024 2:47 pm

The variable music tracks will be defined by the AmbientSound prototypes.
There are no plans for real-time Lua API for variable music tracks/music player.
At some point there should be some improvements for programmable speaker (see this thread).
If I can procedurally change the volume of an active sound, it will at least keep the amount of audio sample data required reasonable, assuming no other relevant improvements. Real-time placement of sound in-world is a bit more in line with my idea than sequenced data to the music player. I might attach a few extra suggestions to the linked thread (probably wont - it seems a bit on the predictable side).

Also, if it works as an enticement, I do have a few samples from the prototype music generator on hand, and later will be able to share Csound files from the work-in-progress.

Henry Loenwind
Long Handed Inserter
Long Handed Inserter
Posts: 58
Joined: Fri Mar 09, 2018 7:33 pm
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by Henry Loenwind »

To explain the mixed reactions here:

There are two modes we use to listen to music: active and passive.

In active mode, we spend awareness following the music, predicting how it changes, being positively (or negatively) surprised about what it does, taking it in, and so on. This is how we listen to new music .. or just listen into the darkness to hear if a predator approaches.

In passive mode, our awareness is occupied with doing other things (e.g., playing a game), and sound processing is handed over to more instinctual parts of our brains. These parts report mostly on an emotional level, but they can "jostle" our awareness when they encounter something unexpected—like sudden silence, the roar of a lion, or something wrong with a piece of music we know well.

As might be obvious, while playing a game or watching a movie, players should be in passive mode. They are not sitting there idle, listening to music. Instead, that music is supposed to be emotional and subconscious input. That is why randomness with game music is a bad thing. It triggers the "something's different" trigger, which is distracting.

People often think game music may be repetitive, but that is a good thing. After a while, the players will have memorised the music and processing it shifts more and more into passive mode.

The same effect happens when a track ends, one starts after silence, or there's an unpredictable track change. For a short moment, the player's conscious awareness is engaged to analyse and assess its implications.

And BTW, if you ever have started a new game and felt overwhelmed for the first couple of minutes while being hammered with music, sound effects, tutorial popups, and so on, this is one of the reasons for that. You had to spend awareness to process the unknown music and analyse the unknown sounds while trying to take in and process a whole lot of information. Next time, hit the mute button to free up some brain capacity.

Koub
Global Moderator
Global Moderator
Posts: 7632
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by Koub »

I just remembered there is one music I have missed for ages, since it was removed from Factorio soundtrack for ... 0.12 if I remember correctly : haluzsqua. It was my favourite part of the earlier Factorio musics, and I wonder if with 2.0 there is the slightest chance it reappears in some way (or if it's too different from the rest of the soundtrack now and it would stand out too much).
Koub - Please consider English is not my native language.

User avatar
fishycat
Filter Inserter
Filter Inserter
Posts: 315
Joined: Thu Apr 09, 2015 7:38 pm
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by fishycat »

No need to wait for 2.0. My little mod adds haluzsqua and two other old tracks back, plus the song from main menu. Make Koub happy again :D

aka13
Filter Inserter
Filter Inserter
Posts: 786
Joined: Sun Sep 29, 2013 1:18 pm
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by aka13 »

Koub wrote:
Sun Aug 04, 2024 7:37 am
I just remembered there is one music I have missed for ages, since it was removed from Factorio soundtrack for ... 0.12 if I remember correctly : haluzsqua. It was my favourite part of the earlier Factorio musics, and I wonder if with 2.0 there is the slightest chance it reappears in some way (or if it's too different from the rest of the soundtrack now and it would stand out too much).
The early factorio, as well as its soundtrack, still stand firmly today. I see a lot new clones getting released with worse gameplay/music.
I adore the old soundtrack as well as the new one.
Pony/Furfag avatar? Opinion discarded.

Koub
Global Moderator
Global Moderator
Posts: 7632
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by Koub »

fishycat wrote:
Sun Aug 04, 2024 5:42 pm
No need to wait for 2.0. My little mod adds haluzsqua and two other old tracks back, plus the song from main menu. Make Koub happy again :D
I know, I have been using it on my modded games, but for those who want to play strict vanilla for achievements purposes (and those who wouldn't have the idea to search for this mod because they started Factorio too late to remember the old soundtrack), it's a shame we can't have it in the base game.
Koub - Please consider English is not my native language.

User avatar
fishycat
Filter Inserter
Filter Inserter
Posts: 315
Joined: Thu Apr 09, 2015 7:38 pm
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by fishycat »

I just had an idea, the new tracks could only be played on the 4? new planets and the old tracks + the ones we have now are played on nauvis, something like that.

Brother Matthew
Manual Inserter
Manual Inserter
Posts: 4
Joined: Sat Sep 07, 2024 10:46 pm
Contact:

Re: Friday Facts #407 - Automating a soundtrack

Post by Brother Matthew »

To Albert, Donion (and whoever else may have been involved),

I know I'm a lil late to the party, but I hope you'll get to read this at some point.

What you're doing here in unbelievable, I'm not even qualified to understand and truly appreciate how complex what you're doing is, but I think it's a huge contribution to the progression of music. I hope you were not disheartened by some of the critical comments here, you absolutely shouldn't be. The applications and possibilities for this are infinite.. And I know you know you're just scratching the surface with this WIP example.

I believe this is more than the average person is able to appreciate and hopefully you keep pushing forward regardless of its success in this particular context.

You passionately and excitedly gave us a glimpse into your creative process and it was a privilege for us.

Post Reply

Return to “News”