From 0.2.10, it's now possible to import .xm module files and embed them in your cartridges.
If you'd like to try making some .xm music, I highly recommend Milky Tracker.
To get started, here's an example .xm file (feel free to use it in your levels too):
In the objects tab, click the "Load Item Into Folder" button.
Navigate to the folder you stored the xm and double click it.
You should see the music item appear in the current folder.
To add music to a room:
Edit the room you want
Click once on the music item to select
It should now appear in the pull-down list "MUS"
Press SPACE to stop playing the music in the editor
The .xm player can't handle everything yet! Some of the effects/commands are missing, and it can only load 16-bit instrument samples.
Right now I can say there is a "Sounds" folder in the Internal sections (Where you have the before-2.something-objects, before we got to make our own actors) which have numbers of each sound effect. I cannot select them somehow, so I suggest just testing them on actual object first (Say, playing the sound on a collision event?) before deciding on your own.
Importing "Sounds?" I do not know just yet.
I got it working! Neat feature. Just missing an option to repeat tracks.
@Kling Here is an excellent MilkyTracker tutorial series by Brandon Walsh designed for people with no tracking experience and all levels of musical experience. It helped me get a foothold on the program.
Hello, I'm bumping up that old topic to both bring it back into the visible area and to ask about that feature.
Is it still among the planned features? Could we have a bit more info on what works or not?
I have for instance a simple track I cannot understand why Vox refuses it (or sometimes simply crashes when trying to open it). I have no effect and only 6 channels. The only "special" bits of it are that the instruments are tuned and that some instruments have another sample to map the higher notes. Does Vox support instruments with multiple samples mapped to it?
I'm sorry to say that audio features are up in the air at the moment: there are currently 3 ways to generate sound (PICO-8 SFX, .xm import, and internal sounds and instruments that are synthesized during runtime), and I'm hoping to unify them under one (or maybe two) systems.
A general rule now is that every aspect of Voxatron carts should be editable via built-in tools. I'm still experimenting with a tracker that would be able to import .xm files, but would likely have a tight limit on instrument sample sizes -- the new tracker would normally be used with instruments that are synthesized in realtime so that their parameters can be modified. If xm files were used widely in Voxatron carts, I imagine it would produce a lot of very large cartridge file sizes, which would be a shame considering every other aspect of the data is designed to be small.
There's also the possibility that the new PICO-8 sfx filters will make it flexible enough to generate everything needed for Voxatron. As an exploratory project I've managed to reproduce almost all of the internal sound effects, and it gives the audio a nice consistent feeling. I'm still experimenting with music and watching what kind of tunes PICO-8 users are coming up with using filtered sfx instruments.
Another thing pushing back against .xm support is just that Voxatron's support surface is getting too big! There are a lot of quirks and details of the .xm format that I've missed, and some bigger things like multi-sample instruments. There aren't many carts with .xm files embedded in the wild, and some of them are used for playing large one-off samples. So it might be better to cut my losses early and just say that xm support was experimental and won't be guaranteed in future. If it is supported in the future, it will be in the form of an importer than converts .xm data into the custom Voxatron tracker format that can only handle small (< 16k) instrument samples for things like drum samples.
Glad to see an update to this topic!
> "If xm files were used widely in Voxatron carts, I imagine it would produce a lot of very large cartridge file sizes, which would be a shame considering every other aspect of the data is designed to be small."
Yeah, I already saw that between versions, the supported filesize for XM dropped from 512KB to 256KB. I'd not really mind being limited to small samples for this format.
> "There aren't many carts with .xm files embedded in the wild, and some of them are used for playing large one-off samples."
I believe two of the issues was facing issues during the workflow (import that wouldn't work or crash, no know supported effect list and the fact that the feature was buried behind the whole rest of the BBS, welp). One-shot samples were probably the easiest tasks with that format in mind. Also, Modules are harder to produce than I'd have expected. I was in the process of converting a small Pico cart to celebrate the update and wanted to upgrade the music track and well, Milkytracker with its instrument editor, the finetuning... I understand how much daunting this can be.
I did saw your WIP screenshots on the tracker a few days ago. Can't deny I'm happy to see that we'll have a better experience for "high-definition" beeps and bloops in Vox.
Anyway, thanks for the answers!
[Please log in to post a comment]