Community listing page, reviews may not be monitored by the author.
Community voices
Reviews
No reviews yet. Be the first to review this project!
Get it on
Available Platforms
About
Project Details
For authors
Embed Badge
If you're the author of this project, you can embed a live badge anywhere that supports HTML or Markdown. It updates automatically whenever ratings change.
Use HTML for any page that supports it, or Markdown for README files and Markdown-based descriptions.
Identifiers
Platform IDs
Resources
External Links
About
Description
SoundSystem Studio
Make music inside Minecraft, then play it on the DJ tables of SoundSystem. SoundSystem Studio adds a workstation block in the style of FL Studio: a step sequencer, a piano roll, a mixer with effects, and a playlist with tempo changes and automation. The song you make becomes a track you can play on a DJ computer, like any SoundCloud track.
SoundSystem Studio is an addon: it needs SoundSystem and SoundSystem Lib. Put the three jars in mods/, all made for Fabric, on the server and on every player's client. Details in Installation below.
Private project, in development. Nothing is published yet. This page describes what the current build holds.
What it brings
Channel rack — A step sequencer: a click places a step, a drag paints several. Each channel is one of three kinds:
- Synth — two oscillators, a filter, envelopes
- Drum — kick, snare, hat, clap or tom, made by the studio itself, with no file
- Sampler — your own sounds, WAV or OGG
Piano roll — Velocity, snap, ghost notes from the other channels, notes moved and stretched with the mouse.
Mixer — 17 inserts, up to 4 effects on each, channel routing, mute and pan. Six effects: echo, filter, reverb, distortion, compressor and a 3-band equalizer.
Playlist — 16 tracks, patterns you place, move and stretch, tempo changes (up to 64) and automation (an insert's volume and pan, the main knob of an effect: 16 curves of 128 points).
Editing together — Up to 4 players (configurable) on the same project at once. What one does shows up for the others straight away.
Files — .ssfl projects (the project and its samples in one file), WAV export, MIDI import.
Built-in help — The ? button of the editor sums it all up on one page.
On the DJ tables
A project becomes a track on the DJ computer:
- In the editor, build a song in the playlist.
- On a DJ computer, the source switch (next to the link field) cycles from SoundCloud to Studio.
- The list shows the world's projects that have a song, with their tempo and length. + (or a double click) adds one to the library.
- Load it on a deck: pitch, loops, effects, speakers and acoustics work as they do for a normal track.
The audio is never sent. The server shares only the notes (a few kilobytes); every player in range renders the sound themselves, and the render is identical on every machine.
A track is one revision of a project: if the producer keeps editing while a DJ plays the song, the decks keep the revision they loaded. Adding the project again gives a new track.
Installation
- Minecraft 1.21.1
- Fabric Loader 0.16.14+ and Fabric API
- SoundSystem 2.1.1 or newer
- SoundSystem Lib 0.1.1 or newer
- Java 21
Drop the jars in the mods folder. The same mods are needed on the server and for the players.
Getting started
- Open the SoundSystem Studio creative tab and take the Studio Workstation. It has no crafting recipe for now.
- Place it and right-click: the editor opens.
- Paint steps in the rack, open the Roll to write notes, press Play (or space).
- In the Playlist, place your patterns on the bars to build the song.
- Go to a DJ computer, pick the Studio source, add your project and play it.
The Loop / Song button decides what Play plays: the selected pattern in a loop, or the whole song. The full guide is in docs/STUDIO.md.
Samples
The studio ships none: a sample is a file that you put in <game folder>/soundsystem-fl/library (WAV in 8 to 32 bits, or OGG, 20 seconds at most). In the editor, + Sample lists them; you can also pick a file elsewhere (Browse...) or drop it on the window.
The sample is sent to the server once, which keeps it; the other players get it by themselves when they open or hear a project that uses it. Only send what you may redistribute.
Files
Everything lives in <game folder>/soundsystem-fl/: projects (.ssfl), exports (.wav), midi (.mid) and library (samples). A name that is taken is never overwritten (name (2).ssfl).
- Opening a
.ssflreplaces the project for everybody: the editor asks first. - Exporting a WAV: 16-bit, stereo, 44.1 kHz, through the same engine as the DJ tables. At most 30 minutes of song.
- Importing a MIDI file: the notes go to a new pattern on the selected channel. A file with more than 4096 notes or more than 64 bars is refused, not cut.
For the server's owner
config/soundsystemfl.json is written with its defaults the first time the game starts.
| Option | Default | Meaning |
|---|---|---|
editPermission |
everyone |
Who may open a workstation: everyone, creative or op |
maxEditors |
4 |
How many players may have one project open (1 to 16) |
uploadPermission |
creative |
Who may send samples: off, creative, op, everyone |
maxSamplesPerPlayer |
64 |
Samples per player |
maxBytesPerPlayerMb |
64 |
MB per player |
maxStoreMb |
2048 |
Total size of the samples folder |
maxConcurrentUploads |
4 |
Uploads at the same time |
unusedDays |
30 |
Age after which an unused sample may be purged |
Commands
For operators:
/soundsystemfl samples list— lists the server's samples/soundsystemfl samples remove <hash>— removes a sample/soundsystemfl samples purge-unused— deletes the samples no project uses any more/soundsystemfl snapshots— shows how many revisions the world keeps for its DJ tables/soundsystemfl snapshots purge <keep>— forgets all but the newest<keep>revisions of each project
A track made from a forgotten revision can no longer be played.
Limits
| Inserts | 17 (master included) |
| Effects | 4 per insert, 6 kinds |
| Playlist | 16 tracks |
| Tempo | 64 changes per song |
| Automation | 16 curves of 128 points |
| Sample | 20 seconds, 4 MB |
.ssfl project |
48 MB |
| Long-tailed effect | refused if it rings for more than 4 seconds |
The last one is on purpose: it lets a DJ table start anywhere in a song and hear exactly the same thing. An echo at low tempo with a lot of feedback, or a big reverb on an insert and the master, is the usual cause.
Status
Phases 0 to 8 of the plan are done in the code and tested in the game with a development client. The engine's tests cover rendering, projects, samples and robustness (fuzzing of every reader).
Not done or not verified yet:
- the release (a tag and a push)
- key-locked tempo on the decks (it needs a change in the lib)
- a test with two real players and on a dedicated server
- what it sounds like: the tests check that the render is identical from one machine to another, not that it sounds good
Documentation
- docs/STUDIO.md — the editor's guide
- docs/DJ.md — the studio on the DJ tables
- docs/SAMPLES.md — samples, from upload to storage
- docs/ENGINE.md — the renderer
- docs/DESIGN.md — the design
- docs/DEVELOPMENT.md — building and testing
By Matthieu Chambrion. Samples are files the players bring; the addon ships and hosts no audio itself.
Screenshots
Gallery
Versions
Files
Relations
Project Relations
More like this
Similar Mods
Suggestions use data such as tags, dependencies, dependents, descriptions, titles, and more to rank how much they overlap with this mod.
On ModDex
Community snapshot
By the numbers
Statistics
Get it on
Available Platforms
On ModDex
Community snapshot
By the numbers
Statistics
Resources