midi
ModrinthA lightweight Minecraft mod for sending MIDI-like actions from the client to the server via custom plugin messages.
🎹 MIDI Plugin Message Mod
This Minecraft mod adds support for sending MIDI actions from the client to the server using custom plugin messages. It can be used to control in-game instruments, sound systems, lighting effects, or other MIDI-reactive features.
📦 Plugin Message: midi:action
The plugin message is based on a custom payload called MidiAction, sent via the CustomPayload system.
MidiAction Payload Structure
record MidiAction(
String name,
int command,
int channel,
int data1,
int data2
)
| Field | Type | Description |
| --------- | -------- | ------------------------------------------- |
| name | String | Name of the MIDI device (e.g., "Launchpad") |
| command | int | MIDI command (e.g., 144 = Note On) |
| channel | int | MIDI channel (0–15) |
| data1 | int | First data value (e.g., note number) |
| data2 | int | Second data value (e.g., velocity) |
🛠 Example Usage
Sending from the Client
ClientPlayNetworking.send(
new MidiAction("Launchpad", 144, 0, 60, 127)
);
Receiving on the Server
Register a global receiver in your server mod:
ServerPlayNetworking.registerGlobalReceiver(
MidiAction.ID,
(payload, context) -> {
System.out.println("Received MIDI action from device: " + payload.name());
}
);
⚙️ Technical Details
- Packet ID:
midi:action - Codec: Custom implementation using
FriendlyByteBuf - Minecraft Version: 1.20.5+ (uses
CustomPacketPayloadAPI)
✅ Requirements
- Minecraft 1.20.5 or higher
- Fabric (or another compatible mod loader)
- A server mod that handles incoming
MidiActionpayloads
Got questions or suggestions? Feel free to open an issue or reach out
directly!
Versions
No version history available. Use the Download button to get the latest from the source.

Comments 0
No comments yet. Be the first to share your thoughts.