Author Topic: [MODELERS NEEDED] Playable Instruments  (Read 11695 times)

Playable Instruments



This is an add-on I've been working on off-and-on since May. It allows for playable instruments to be added to the server. The system is completely modular and each instrument can be enabled/disabled. This also means you can add your own instruments easily! It is completely server-sided (but I'd like to add a GUI).

I currently have six unique instrument models out of fifteen unique instruments:

• Acoustic Guitar (but I'd like a better one)
• Banjo
• Drum Machine
• Electrk Bass
• Electrk Guitar
• Harmonica
• Keytar
• Microphone
• Saxophone
• Violin

There are some esoteric instruments, but the ones that I need to have made before I release are as follows:

• Acoustic Guitar
• Drum Machine
• Electrk Bass
• Electrk Guitar
• Keytar

There are more instruments I'd like to have, but aren't necessary:

• Accordion
• Drum Sticks
• Flute
• Marching Marimba (with straps)
• Sitar
• Stand-up Bass
• Steelpan Drums (with straps)
• Annoying Orangeet

If you are good at modeling and would be willing to model any of these, please PM me. I want them with grey hands (except for things like the accordion, which just need the hug animation).

If you are good at making GUIs and would be willing to make one, please PM me.

Videos

Have you ever robbed a stagecoach?
Blockland Music

Credits

Electrk (12949) - Scripting
Plastiware (1118) - Sounds and emotional support
Filipe (21933) - Guitar, drum machine, and keytar models
Jack Noir (29019) - Banjo and harmonica models
Ostinyo (15269) - Violin model
Mr.Noßody (6480) - Electrk bass model
Spede (39334) - Saxophone model
Socko (1789) - Microphone model
« Last Edit: December 18, 2014, 07:08:51 PM by Electrk. »

Playing

There are a few ways of playing: pre-made songs or phrases (we'll get to that later) and playing with your brick-shifting keys.

Notation

If you want to make phrases or songs, you have to learn the music notation.

It's rather simple: the note name—usually the octave number followed by the note itself (with the exception of drums, which use initials like "SD", "BD", "CC", etc.)—followed by a comma.

For sharps you can use # or S.

Example: 3C,4D#,5FS,6C

Drums example: BD,SD,CC,TH,TM,TL,TF



There are rests that are put in between the note and comma as well. The "traditional" ones are: $ for quarter, _ for half, and - for whole.

Example: 3A$,4D_,5E-

They can be combined to make longer rests.

Example: 3A_$,4D$-_,5E--

There are also "special" rests: / and ;
When by themselves, they go to the next note 2x and 4x faster, respectively (basically acting as eighth and sixteenth notes, respectively).

Example: 3A/,4D;,5E

When combined with other rests, they add 0.5 and 0.25 of the current tempo to the other rests.

Example: 3A$/,4D_;,5E-/



To set the delay between notes, simply put t:#

# can be any number between 64 and 1000

This is how many milliseconds it takes to go to the next note (without rests, of course).



Chords are supported as well. Simply separate notes with + to make a chord. There can be up to four notes per chord.

Example: 3C+4F+5G+6C,3A#+4C

Drums example: RC+BD,RC,RC+SD,RC



Use r for a random note.

Example: 3C,4F+5C,r,6C



Use % at the end to make your phrase repeat forever. Please be aware that these will only work for phrases.

Example: 3C+4F+5G+6C,3A#+4C%



Phrases

Now that you understand the notation (I hope), let's get to the juicy stuff: pre-made phrases and songs.

Phrases are a series of notes played in a specific order.
Songs are a series of phrases played in a specific order.

To play a phrase, type /playPhrase phrase

Example: /playPhrase 4C,5D#,3C+3A#,5G-,6C

If you haven't already, read the notation section above.



To save a phrase, type /savePhrase phrase name [credits]

Example:

/savePhrase 4C,5D#,3C+3A#,5G-,6C myPhrase Electrk

Credits are optional.

To load a phrase, type /loadPhrase name

To list available phrases, type /listPhrases



Songs

Once you've got a phrase going, you'll want to set it as a song phrase.

To do this, simply type /setSongPhrase # phrase

# is which slot you want to put the phrase in (0 to 15).

Example:

/setSongPhrase 0 4C,5D#,3C+3A#,5G-,6C
/setSongPhrase 1 3A$,4D_,5E-

To view the song phrases you have, type /viewSongPhrases



If you've loaded a song already, you can use L# in place of a phrase to use that loaded song phrase

Example: /setSongPhrase 2 L0

This would take loaded song phrase #0 and set it as song phrase #2

Type /viewLoadedSongPhrases to view the song you've loaded's song phrases.

Sorry if this section is confusing.



Now that you've got some song phrases set, it's time to make a song! A song is the slot numbers separated by commas.

Type /playSong song to do this.

Example: /playSong 0,1,2,1,3,2,5,4,0



Saving, loading, and listing songs are the same as phrases, except the names are different and you put in a song instead of a phrase for saving.

Example:

/saveSong 0,1,2,1,3,2,5,4,0 mySong Electrk
/loadSong mySong
/listSongs



Phrase Keys / Bindsets

To play music live, you'll need to create a bindset. To create a bindset, you must bind a phrase or a note to one of your brick-shifting keys. This is completely server-sided so don't worry.

To do this, you'll have to type /bind key phrase

Here are the names of each of the keys:

away
towards
left
right
up
down
thirdUp
thirdDown
rotateLeft
rotateRight
plant
cancel

You can also just use the respective numbers of the keypad (e.g. 6 or enter)

Example:

/bind away 4A
/bind 2 5C,5D#/,6C
/bind enter 3F+3C

Then just use your brick-shifting keys to play!



To unbind all your phrase keys type /unbindAll



To save your bindset, type /savePhraseKeys name [credits]

Credits are, again, optional.

To load them, type /loadPhraseKeys name
To list them, type /listPhraseKeys



Keytar is OP

The keytar is a very special instrument, in that it can play any instrument.
Its default mode is the Blockland synth.

Type /listInstruments to view all available instruments.
Type /setKeytarMode instrument to set your keytar to play a certain instrument.



Miscellaneous

/stopPlaying - Makes you stop playing.

/listNotes - Lists available notes for the instrument you're holding.
/listNotes instrument - Lists available notes for a specified instrument.

/playLastPhrase - Plays the last phrase you played.
/playLoadedPhrase - Plays the last phrase you loaded.
/playLoadPhrase name - Plays and loads a phrase at the same time
/playLoadedSong - Plays the last song you loaded.
/playLoadSong name - Plays and loads a song at the same time

/viewLastPhrase - View the last phrase you played.
/viewLoadedPhrase - View the last phrase you loaded.
/viewSongPhrase # - View a specific song phrase.
/viewLoadedSongPhrase # - View a specific song phrase from the last song you loaded.

/pp - Shortcut for /playPhrase
/ps - Shortcut for /playSong
/plp - Shortcut for /playLoadPhrase
/pls - Shortcut for /playLoadSong
/sp - Shortcut for /savePhrase
/ss - Shortcut for /saveSong
/ssp - Shortcut for /setSongPhrase
/lpk - Shortcut for /loadPhraseKeys
/spk - Shortcut for /savePhraseKeys
/skm - Shortcut for /setKeytarMode
« Last Edit: October 11, 2014, 02:47:20 PM by Electrk. »

Sorry if the pre-made stuff is complicated. I really want to make a GUI to make it easier.

Im really looking forward to it, good job!
« Last Edit: October 11, 2014, 05:28:11 AM by MrLoL² »

Shame on you for ripping rotondo's code.

inb4failbin.

Shame on you for ripping rotondo's code.

inb4failbin.
Where do you get that from?

Shame on you for ripping rotondo's code.

inb4failbin.

All of this add-on's code is from scratch.  I was there when Electrk started on it back in May, months before Rotondo made his guitars public.

Well, it is going to be from scratch even if it is ripping off some of Rotondo's guitar functions, because the codes are easily compared.

That is amazing! nice work I'm looking forward to it

He had instruments on his server before the guitars were released though...

I don't see how the guitar is relevant to this topic even. This has a saxophone, violin etc.

why are modelers needed? the models look great!

why are modelers needed? the models look great!

Well of course the ones we have look great.  But there are currently about twice as many instruments that have no models yet.

What instruments exactly do you need?
Ill comb the OPs a bit more.

Nevermind, it was right there.

Ill see what I can do to help model-wise.

Shame on you for ripping rotondo's code.

inb4failbin.
but sir this started in testing in august 2014