Jump to content
There will be a delay on submission approvals currently as I am very busy in real life. - Yasuno
Sign in to follow this  
Jagaimo

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

Share this post


Link to post

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.

Share this post


Link to post
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.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...