Add piano mono/poly, octave, and expanded drum voice set
This commit is contained in:
@@ -76,7 +76,7 @@ Applies to effect select, user/item list modes, item selection, item property li
|
||||
|
||||
## Piano Use Mode
|
||||
|
||||
- `1-9`: Switch instrument preset quickly
|
||||
- `1-9` (and `0` for the 10th slot): Switch instrument preset quickly
|
||||
- `A S D F G H J K L ; '`: Play white keys (C major from C4 upward)
|
||||
- `W E T Y U O P ]`: Play sharps
|
||||
- Multiple keys can be held/played at once
|
||||
|
||||
@@ -163,6 +163,8 @@
|
||||
```json
|
||||
{
|
||||
"instrument": "piano",
|
||||
"voiceMode": "poly",
|
||||
"octave": 0,
|
||||
"attack": 15,
|
||||
"decay": 45,
|
||||
"release": 35,
|
||||
@@ -172,8 +174,10 @@
|
||||
```
|
||||
|
||||
- `instrument`: one of
|
||||
`piano | electric_piano | guitar | organ | bass | violin | synth_lead | nintendo | drum_kit`.
|
||||
- Selecting a new instrument resets `attack`/`decay` to that instrument's defaults.
|
||||
`piano | electric_piano | guitar | organ | bass | violin | synth_lead | brass | nintendo | drum_kit`.
|
||||
- `voiceMode`: one of `poly | mono`.
|
||||
- `octave`: integer, range `-2..2` (default `0`; bass defaults to `-1`).
|
||||
- Selecting a new instrument resets `voiceMode`/`octave`/`attack`/`decay`/`release`/`brightness` to that instrument's defaults.
|
||||
- `attack`: integer, range `0-100`, default `15`.
|
||||
- `decay`: integer, range `0-100`, default `45`.
|
||||
- `release`: integer, range `0-100`, default `35`.
|
||||
@@ -235,8 +239,12 @@
|
||||
"midi": 60,
|
||||
"on": true,
|
||||
"instrument": "piano",
|
||||
"voiceMode": "poly",
|
||||
"octave": 0,
|
||||
"attack": 15,
|
||||
"decay": 45,
|
||||
"release": 35,
|
||||
"brightness": 55,
|
||||
"x": 12,
|
||||
"y": 8,
|
||||
"emitRange": 15
|
||||
|
||||
@@ -157,6 +157,8 @@ This is behavior-focused documentation for item types and their defaults.
|
||||
- Title: `piano`
|
||||
- Params:
|
||||
- `instrument="piano"`
|
||||
- `voiceMode="poly"`
|
||||
- `octave=0`
|
||||
- `attack=15`
|
||||
- `decay=45`
|
||||
- `release=35`
|
||||
@@ -173,13 +175,15 @@ This is behavior-focused documentation for item types and their defaults.
|
||||
- Announces that the user begins playing the piano (client enters piano key mode).
|
||||
|
||||
### Validation
|
||||
- `instrument`: `piano | electric_piano | guitar | organ | bass | violin | synth_lead | nintendo | drum_kit`
|
||||
- `instrument`: `piano | electric_piano | guitar | organ | bass | violin | synth_lead | brass | nintendo | drum_kit`
|
||||
- `voiceMode`: `poly | mono`
|
||||
- `octave`: integer `-2..2`
|
||||
- `attack`: integer `0..100`
|
||||
- `decay`: integer `0..100`
|
||||
- `release`: integer `0..100`
|
||||
- `brightness`: integer `0..100`
|
||||
- `emitRange`: integer `5..20`
|
||||
- Instrument changes reset `attack`/`decay`/`release`/`brightness` to instrument defaults.
|
||||
- Instrument changes reset `voiceMode`/`octave`/`attack`/`decay`/`release`/`brightness` to instrument defaults.
|
||||
|
||||
## Adding A New Item Type (Registry V1)
|
||||
|
||||
|
||||
@@ -38,7 +38,7 @@ This is a behavior guide for packet semantics beyond raw schemas.
|
||||
- `item_use_sound` contains absolute item world coordinates (`x`, `y`) and sound path.
|
||||
- `item_piano_note` contains:
|
||||
- `itemId`, `senderId`, `keyId`, `midi`, `on`
|
||||
- resolved `instrument`, `attack`, `decay`, `emitRange`
|
||||
- resolved `instrument`, `voiceMode`, `octave`, `attack`, `decay`, `release`, `brightness`, `emitRange`
|
||||
- absolute source coordinates `x`, `y`
|
||||
|
||||
## Welcome Metadata
|
||||
|
||||
Reference in New Issue
Block a user