Instruments are cool, but if you're anything like me, you suck at playing them and would rather compose music and let the game play it for you.
I recently felt like doing something about that, and so HavenTune(tm) was born.
Current :
Download : https://drive.google.com/file/d/1N6y5tA ... sp=sharing
Current version : 1.3.4
Outdated :
Download : https://drive.google.com/file/d/1NtLArt ... sp=sharing
Current version : 1.3.3
HavenTune is currently rather simple and while I like it that way, a proper UI might still come in the future. For those interested, the download come with the sources (made in C# 4.7.2, VS2017)
Operation is easy :
1. In game, you put the instrument in your hands and open the musical keyboard by right-clicking the instrument;
2. You put a song file in the 'songs' folder, if it's not already there;
3. You run or refresh HavenTune;
4. You select the letter assigned to the song to start it;
5. You alt-tab to Haven;
6. Enjoy! Music should be playing. To stop or pause it, you alt-tab out of haven.
Please note that HavenTune does NOT actually interface with the game. All it does is simulate keypresses, simple as that. It CANNOT know if you have the musical keyboard opened or not ingame.
Current potential bug(s) :
- HavenTune check for a window title that contains "Hafen Client" or "Haven and Hearth". I'm not sure if every client out there has that string in it. Please comment about it and I will adjust.
- Due to an oversight, there can't be more than 9 songs listed. Will fix asap. It now use the alphabet, so there can be up to 26 songs.
How to write songs :
- Song-making isn't complicated. You simply have to make a '.txt' file in the songs folder (create it if it isn't already), and write a command for each lines. Here is an example song :
50
wait;1500
c;550
b;500
n;1200
wait;450
c;550
b;550
j;400
n;1000
c;550
b;550
n;1000
b;550
c;1000
The only special line is the first one; it describe, in milliseconds, the delay between commands. Without it, the game would have some difficulty catching up with the song.
Other commands are :
1. The actual Notes, marked by a letter. (like c, b, j, etc), followed by an amount of time (in milliseconds) to hold the note;
2. "wait" followed by an amount of time to wait;
3. "shift" or "ctrl", followed by either "hold" or "release";
And that's all. The application will validate errors before attempting to play it, so test away!
If you enjoy HavenTune and manage to make cool songs, post here and i'll see to it that it is added into the default list of songs