Miscellaneous
Shows
How to create and manage audio shows in OpenAudioMc.
Shows let you create time-coded, multithreaded sequences of cues (scheduled events). A show is a list of cues that run at precise times relative to when the show is started. Because shows run multithreaded, in-game lag (TPS drops) will not affect cue timing - audio and events stay in sync.
This document explains timecodes, supported trigger types, and the commands you use to create, manage, and edit shows.
Basic usage
Create a new show named demo:
/openaudio show create demo
Add cues to the show:
/openaudio show add <data...>
Get the show status:
/openaudio show info demo
Start or cancel a running show:
/openaudio show start demo CMD:/openaudio show cancel demo
Open the show editor GUI:
/openaudio show gui demo
Timecodes
A timecode is an offset from the moment a show is started. OpenAudioMc supports these formats:
m- minutes.
Example:1m= 1 minute,1.5m= 1 minute 30 seconds.s- seconds.
Example:1s= 1 second,1.5s= 1.5 seconds (1 second 500 milliseconds).ms- milliseconds.
Example:100ms= 100 milliseconds.t- Minecraft ticks (1 tick = 50 milliseconds).
Example:20t= 1 second.HH:mm:ss- hours:minutes:seconds.
Example:00:05:00= 5 minutes.
Timecodes are relative to when you issue the start command for the show.
Supported trigger types
Triggers determine what happens when a cue fires. Common built-in trigger types:
-
command- Executes a console command. All following arguments are joined to form the command.
Example:Command<> required[] optional/openaudio show add demo 0s command say I fire at the start
-
chat- Sends a chat message to players matching a selector. The first argument is the selector; the rest is the message. Selectors follow standard Minecraft selector syntax (see selectors.md).
Example:Command<> required[] optional/openaudio show add demo 1s chat @a[region=spawn] &7Welcome to spawn!
-
actionbar- Likechat, but displays the message in the actionbar.
Example:Command<> required[] optional/openaudio show add demo 1s actionbar @a &eHeads up!
-
custom - Implement and register your own Java-based show triggers via the API (requires plugin development).
Notes:
- For
chatandactionbar, the first argument after the trigger type MUST be a player selector; everything after is treated as the message text.
Examples
Add three cues to demo - at start, after 1 second, and after 1 minute:
/openaudio show add demo 0s command say I fire at the start CMD:/openaudio show add demo 1s command say I fire after one second CMD:/openaudio show add demo 1m command say I fire after one minute
Full workflow example:
- Create the show:
Command<> required[] optional
/openaudio show create demo
- Add cues:
Command<> required[] optional
/openaudio show add demo 0s command say Welcome to the show! CMD:/openaudio show add demo 10s chat @a[region=spawn] &7Enjoy the music! CMD:/openaudio show add demo 00:01:00 actionbar @a &eOne minute in...
- Start the show:
Command<> required[] optional
/openaudio show start demo
- Inspect the show:
Command<> required[] optional
/openaudio show info demo
- Cancel the show (if needed):
Command<> required[] optional
/openaudio show cancel demo
GUI editing
Use the GUI to visually inspect and edit a show:
/openaudio show gui
From the GUI you can:
- View the show state and list of cues
- Scroll through cues
- Delete cues
- Start/cancel the show
Tips & behavior
- Shows are multithreaded: cue timing is not affected by server TPS drops.
- Timecodes are measured from the moment you run
/openaudio show start. - Use
commandcues for server-side actions,chat/actionbarfor player-visible messages, or implement custom triggers for special behavior. - When composing messages for
chatoractionbar, remember the first argument after the trigger type must be a Minecraft player selector.
Permissions
openaudiomc.commands.show
This permission is required to use the /oa show command
