Jump to content

Sustain commands


Recommended Posts

---General sustain info---

 

Both 3MLE & MS2 (MapleStory 2)

  • Sustain commands work on most instruments (see this comment for the list)
  • The sustain commands in both 3MLE and MS2 are global; e.g. putting  's1' in track 1 will start sustaining all notes in all tracks
  • Sustain commands can be put in any track; e.g. putting 's1' in track 1 to start sustaining notes and then putting 's0' in track 2 to stop sustaining notes
  • You can use  's0s1' to reset sustain (end the notes currently being sustained and then start sustaining all further notes)


 

3MLE

**If you are using sustain commands in 3MLE: Never use the Optimise Tool because it will remove all sustain commands

 

For sustain commands to be recognised in 3MLE every track needs to have this at the top (including two blank lines):

//#using_extension
//#using_channel = 1


It should look like this: rdMOp0t.png

These two lines assign this track to channel 1. 

If you are using more than one instrument, you need to make sure that the tracks of different instruments use different channels

Example: If you are creating a pianio, violin and cello trio performance then all piano tracks could have "#using_channel=1", all violin tracks could have "#using_channel=2" and all cello tracks could have "#using_channel=3"

 

The 3MLE sustain commands are:
'y64,[1-127]'  will START sustain (the "[1-127]" means any number between 1 and 127, so an actual command might look like this: 'y64,99')
'y64,0'            will STOP sustain

 

 

MS2

The MS2 sustain commands are:
's1'  will START sustain
's0'  will STOP sustain

 

 

---Tips---

All of the methods below involve using Notepad++ (You can download it for free here: https://notepad-plus-plus.org/download)

 

Replace sustain commands

3MLE recognises sustain command values between '0' and '127', however MS2 only recognises two values: '0' and '1', so if a 3MLE file contains only two sustain values: 'y64,0' and 'y64,127', you can use replace tool in Notepad++ to quickly replace 3MLE sustain commands with MS2 sustain commands:
Select the 'Wrap around' option: Wr640eR.png
Find what:         "y64,0"
Replace with:    "s0"
select: 'Replace All' or 'Replace All in All Opened Documents' if you are using multiple tabs 

and then do the same thing but with different values:
Find what:         "y64,127"
Replace with:    "s1"

 

 

Replace sustain commands with varying values
Some imported .mid files contain sustain commands with varying values, such as 'y64,34', 'y64,11', 'y64,101', so to replace them you can use replace tool in Notepad++:
*make sure only the following options are selected: 'Wrap around' + 'Regular expression' + '. matches newline'

It should look like this: 9v4ypNu.png 

then perform the steps in order:
1: replace "y64,0" with "s0"
Find what:         "y64,0"
Replace with:    "s0"
select: 'Replace All' or 'Replace All in All Opened Documents' if you are using multiple tabs

2: replace "y64,[0-9]+" with "s1"
Find what:         "y64,[0-9]+"
Replace with:    "s1"
select: 'Replace All' or 'Replace All in All Opened Documents' if you are using multiple tabs

 

 

Remove 3MLE comments
You can use replace tool in Notepad++ to quickly remove the 3MLE comments at the beginning of each line e.g. "/*M 0  */  " :

Find what:        "\/\*.*?\*\/  "     (without quotation marks, but including whitespace characters
Replace with:   ""                         (make sure it contains nothing, not even whitespace characters)

*select only the following options: 'Wrap around' + 'Regular expression' + '. matches newline':

It should look like this: FJP6YfN.png

Then select: 'Replace All' or 'Replace All in All Opened Documents' if you are using multiple tabs

Edited by Jagaimo
Link to comment
  • 2 weeks later...

Very useful guide, great stuff!

Little correction for this:

"You can use  's1s0' to reset sustain (end the notes currently being sustained and then start sustaining all further notes)"

I think you mean 's0s1' to produce that insta pedal up and back down effect.

Also, I don't believe sustain works on every instrument in MS2. They'll play the piece but sustain is only noticeable on piano/electric piano, harpsichord, pick bass guitar, elec guitar (really strongly), Harmonica (really strongly), bass, violin (really strongly), celesta (somewhat), Cello (really strongly), trombone (really strongly), and acoustic bass.

Link to comment
On 11/15/2018 at 10:30 PM, EducatedGirl said:

Very useful guide, great stuff!

Little correction for this:

"You can use  's1s0' to reset sustain (end the notes currently being sustained and then start sustaining all further notes)"

I think you mean 's0s1' to produce that insta pedal up and back down effect.

Also, I don't believe sustain works on every instrument in MS2. They'll play the piece but sustain is only noticeable on piano/electric piano, harpsichord, pick bass guitar, elec guitar (really strongly), Harmonica (really strongly), bass, violin (really strongly), celesta (somewhat), Cello (really strongly), trombone (really strongly), and acoustic bass.

Thanks, I have updated the post.

Link to comment
×
×
  • Create New...