Melody's Escape

Melody's Escape

38 rating
How to make a custom obsacle course for a track.
Oleh DocWibbleyWobbley
This guide will teach you how to create custom obstacle courses for your tracks.
   
Penghargaan
Favorit
Difavoritkan
Batalkan favorit
What you will need
  • Time & Patience
  • A text editing software (e.g.Notepad++)

Before you start make sure to set "Cache track data" to "Yes" in Melody's Escape and load up your song at least once, so that a .track file is generated
Files to locate
Windows
The files you will need to locate are in the "%AppData%\MelodyEscape\TracksCache" folder (without the quotes).

Linux
The files you will need to locate are in the "$HOME/.config/MelodyEscape/TracksCache/" folder (without the quotes).

Mac
Coming Soon™

(I don't play on Mac, so anyone who knows where the files are, please tell me so I can add it to the guide)
Explaining the .track file
This is generally what a .track file looks like


The name of the file is represented in the folowing way:

[Synchronization method]_[Difficulty]_[Song Filename].track

Synchronization method
Synchronization method used to generate the file.
EP - Energy Peaks
TEMPO - Tempo (who would've thought)

Difficulty
Difficulty used to generate the file. Depends on the Synchronization method.
For Tempo:
1 - Relaxing
2 - Medium
3 - Intense
4 - Overload

For Energy Peaks:
1 - Relaxing & Medium
2 - Intense
3 - Overload

Song Filename
Your song's filename.

Contents
The file contains 4 lines each with specific values.
Values are separated with a semicolon(;)
The last value doesn't need a semicolon after it.
Line 1
Version of the algorithm used to make the file.
When it's lower than the current version tells the game to generate a new one.

Current Version:1.02
Line 2
Song data

General data regarding the song you are playing

  1. Total gametime in game ticks.
    That is from the begging of the song to its end.
    The game runs at 44100/1024 ticks per second.
    The reason for this number is that the audio uses 44,1 kHz sample rate and every 1024 samples is a gametick.

  2. Song lenght in seconds
    From the begging of the song to its end in seconds.

  3. BPM/Unknown
    This depends on the syncronization method the game used.

    In "Tempo" mode this value shows the BPM of the song.
    In "Energy Peaks" mode I do not know.
    (If anyone does please tell me, so I can add it.)

  4. Tempo analysis confidence
    How well the game detected the tempo of the song.

    1 - No stable 4/4 tempo detected
    Causes the game to use "Energy Peaks" as Synchronization Method.


    2 - Acceptable
    Uses "Tempo" as a Synchronization Method but don't expect it to be perfect.


    3 - Good
    Uses "Tempo" as a Synchronization Method.
    Gives good results.


    4 - Excellent
    Uses "Tempo" as a Synchronization Method.
    Most of the obstacles will be perfectly synchronized to the music.

Line 3
Intensity Changes

Each value in this line shows when an intensity change is happening. They are represented in the following way:

[Ending Intensity]:[Gametick]-[Beggining Intensity]:[Gametick]

Example - Changing from Walking to Jogging one second into the song looks like this:
L:43-N:85

NOTE: A track always starts and ends in Walking Intensity and must have at least 1 gametick duration.

Intensity Table
Intensity
Value in .track file
Walking
L (from Low)
Jogging
N (from Normal)
Running
H (from High)
Flying
E (from Extreme)

Keep in mind that when changing intensities there's a difference between the ending gametick and the beggining one. This is done so that there's no obstacle detection between the changes.

Intensity Change Table
Ending Intensity
Beginning Intensity
Time Difference in Gameticks
Walking (L)
Jogging (N)
42
Walking (L)
Running (H)
42
Walking (L)
Flying (E)
42
Jogging (N)
Walking (L)
42
Jogging (N)
Running (H)
42
Jogging (N)
Flying (E)
31
Running (H)
Walking (L)
64
Running (H)
Jogging (N)
42
Running (H)
Flying (E)
31
Flying (E)
Walking (L)
42
Flying (E)
Jogging (N)
31
Flying (E)
Running (H)
31
Line 4
Obstacle Data

Each value in this line shows when there's an obstacle and what is it. They are represented in the folowing ways:

[Gametick]:[Obstacle]
[Gametick]:[Obstacle]-[Duration]

The first way is for an obstacle where only a press is needed.
The second one is for an obstacle where a press+hold is needed.

Obstacle Table
Value in .track file
Obstacle
                2
                4
                6
                8
                D
                L
                R
                U
                A

 With Slow Motion
Non-standard Behaviors
Putting Arrow Obstacles in Walking Intensity
It doesn't work and it will cause Melody's Escape to generate a new file.

Press+Hold Orbs
In Walking intensity they are perfectly fine. In all other intensities they work as expected, however they are not showing trails so you have no way of knowing when they have to be held down.

Jogging
Adds a little slope similar to Press+Hold Right Arrow

Running

Flying

Press+Hold Obstacle in Intensity Change
The hold detection stops when the Intensity change begins.

Putting Slow-motion Obstacle in Intensities other than Running
They appear as normal Up Arrow Obstacles without slow-motion.
On the loading screen they appear with the blue dashed line.

Putting Orbs in a Press+Hold Obstacle
It doesn't work as you would expect.
The hold detection stops when you reach the first Orb.
This causes graphical glitches.

Putting non-held Arrow Obstacles in Flying Intensity
The appear as normal orbs with the same direction (e.g. Up Arrow becomes Up Orb).

Built-in manual sync
The built-in manual sync song tracks are hardcoded into the game. There is currently no known way to get your track files to say that they are built-in manual sync.

Putting Obstacles closer than 5 gameticks
Thanks to Quadropillar for this one.
When obstacles begin within 4 gameticks of each other the game does not render the first one, but still requires input for it.
Final Notes
To anyone who's gotten this far: I hope this guide has helped you in your endeavours and thank you for reading.

If you know something that needs to be added to this guide feel free to tell me.
Change Notes
2016-12-19
  • Added Linux Folder
  • Changed gametick counter to real one confirmed by developer
  • Added Built-in Manual Sync explanation under Non-standard Behaviours
  • Changed TODO Section to Change Notes

2018-02-10
  • Fixed spelling mistakes

2018-11-18
  • Fixed grammar mistakes
  • Added info about obstacles less than 5 gameticks away from each other. (Thanks to Quadropillar)
16 Komentar
cassiapaws 5 Feb 2021 @ 8:46am 
@Platnuu the trick for maximizing the intensity of a song is to pick something with a BPM suitable so that 5 gameticks is exactly on beat. IIRC 200bpm is good but it's been years since I've done any ME track work
Platnuu 3 Feb 2021 @ 7:40am 
I wish the dev would fix the rendering issue with obstacles within 5 gameticks. I'd love to make some hard maps but it's quite limiting ;/
Hali 18 Jul 2019 @ 5:54am 
Could you please just explain how to do this more? I've been trying to make a beatmap but I can't for the life of me get even the intensity changes right. It just resets the file or somehow breaks graphically.
cassiapaws 20 Feb 2019 @ 4:44am 
It's only been two years since people have asked if anyone's actually done this, but I have. Here's a folder of my finished custom mod tracks for overload difficulty: https://drive.google.com/open?id=1HRowes8krZIA0KGvftaqjz6wgYB0nzYy
DocWibbleyWobbley  [pembuat] 17 Nov 2018 @ 12:55pm 
@Quadropillar Thanks. I didn't know that. I will add it to the guide.
cassiapaws 14 Nov 2018 @ 11:34am 
Okay so another thing worth noting is that there's a minimum inter-onset interval between notes. You can't but notes less than 4 gameticks away from each other or else the game will only show one of the notes but will require you to press both. Not sure how this works with ground notes but the air notes (the orbs) definitely have this problem.
DocWibbleyWobbley  [pembuat] 10 Feb 2018 @ 5:43am 
My guess would be that while analysing the song, the game resamples it to 44.1 kHz. While playing the song it resamples only the playback to whatever your device uses. I'm not the dev so I can't really say for sure.
Shakes 10 Feb 2018 @ 5:19am 
So if your audio source doesn't have a 44.1 KHz sample rate, does the game resample it in memory before the track is played? I mean, I wouldn't expect 96 KHz but I would hope for at least 48 K support for less resampling artifacts on stuff at 96 or 192.
A Tiny Dinosaur 16 Des 2016 @ 10:42pm 
@DocWibbleyWobbley
You never know, by some random chance he may see this and find something to motivate the possible production of such a system.
DocWibbleyWobbley  [pembuat] 15 Des 2016 @ 11:03am 
@A Tiny Muose
I highly doubt it