If you're anything like me, there's only so many songs created by other people that you can add before you start to wonder how it is that they made so many songs and how easy it is to do yourself. That's not to mention that there's always at least one song that you want to have in your collection that isn't yet available for the game.
The bad news is that creating .txt files compatible with the likes of UltraStar and Vocaluxe requires a great deal of time and patience. The good news is that there are many different methods available to achieve this, and different methods suit different people. It is therefore likely that, with a bit of trial and error, you may find that song creation is easier than you originally thought.
Some or all of the following programs will be of use to you:
- UltraStar Deluxe/UltraStar Deluxe ChallengeMod Song Editor
- UltraStar Deluxe/UltraStar Deluxe ChallengeMod Midi Converter
I have made .txt files before using the midi converter, which is great insofar that I don't have to identify the pitches myself (the part that I find the most challenging). This method, however, has many shortcomings. Firstly, midi files may not be an exact rendition of the song. Secondly, if a song is mainstream enough to be available as a midi somewhere on the World Wide Web, it is likely that it is already available for our favourite PC karaoke game.
This guide will therefore explicitly explain the method that I have grown accustomed to. For this, two of the tools listed above will be required: SongEasy, and the UltraStar Deluxe/UltraStar Deluxe ChallengeMod Song Editor. This isn't a very popular combination as far as I can tell; Yass is most definitely a preferred tool for song creation amongst UltraStar and Vocaluxe fans. However, its main use is to edit the pitch of the notes by singing them yourself. All very well if you're confident in your ability to match every single pitch perfectly in a given song; I, however, am not at that stage. I'm musically inclined enough to identify when a note is wrong, but that's about as far as it goes. As a result, my preferred method involves obtaining the sheet music for the song in question, and working in the notes using pitches that have been defined by professionals.
I think that for anyone making songs for UltraStar/Vocaluxe/Performous, a little knowledge on reading sheet music will be necessary. I played the violin for 5 years as a child and was awful at it, but I still retained enough knowledge about reading sheet music to help me with this task. That is, I remembered that the note directly underneath the bottom line is 'D,' and that's about it!
This method may be a bit long winded for most, but hopefully this guide will help you get to grips with the tools that I use, and you might be able to come up with your own method.
First and foremost, I would recommend that you read my guide to .txt files first, because having a sound understanding of these will definitely help with some of the steps involved. Moreover, you will need the following programs:
- UltraStar Deluxe/UltraStar Deluxe ChallengeMod Song Editor
- MixMeister BPM Analyzer
Naturally, have your mp3 file ready. I would recommend that you rip this from a music video where possible. Moreover, you will need some vocal sheet music for the song in question.
Now, in a first for my guides, I have done the honours of creating a video version of the instructions. This should hopefully make the explanations very clear:
Rather than the usual screenshots that I do, I will explain each step referenced in the above video, and add a little more detail to it where necessary.
Step 1 (0:09)
Find the lyrics for your song. Try and ensure that they match the version that you are using; if not, make the appropriate adjustments. Copy the lyrics into notepad (or any text editing software really), and ensure that any multi-syllable words are separated with a hyphen (-). For example:
Even though the sound of it is something quite atrocious
If you say it loud enough you'll always sound precocious
E-ven though the sound of it is some-thing quite a-tro-cious
If you say it loud e-nough you'll al-ways sound pre-co-cious
This is so that SongEasy will understand where to separate the notes; the hyphens will not appear in the resulting .txt file, and multi-syllable words will not contain any gaps.
Step 2 (1:01)
As noted in my guide to .txt files, a slow song needs a lower BPM and a fast song needs a higher BPM. SongEasy does have a mode through which you tap in order to establish the BPM yourself. However, I prefer to cheat and process the file through MixMeister BPM Analyzer, which appears to be very accurate.
Simply open this program, click on the leftmost folder button at the top, and select the folder containing your mp3. MixMeister will display any songs within that folder and identify their BPM for you.
Step 3 (1:14)
Open SongEasy, and select "Pick Song" to load your mp3. In the BPM (x2) box, enter the BPM as identified in MixMeister. Note that where the program says "x2," it will multiply the BPM offered by MixMeister automatically. This works well and is to be expected.
Step 4 (1:42)
Copy the modified lyrics that you completed in Step 1. Go to the Lyrics tab in SongEasy, and click on "Load Lyrics from Clipboard."
Step 5 (1:58)
Click "Play Song." Your mp3 will start to play, though by default, at 80% of its usual speed. As you will be tapping to tell SongEasy where one note ends and the next begins, this is a bit of a Godsend! Naturally, you can adjust this to faster/slower if you wish, but I find 80% is just right in most cases.
As each syllable/word is sung, then, you need to press the "L" key at the same time, and hold it down for as long as the note lasts for. The next word in the lyrics will appear in grey along the black strip. As you press L, this turns green, indicating that it is the current word in the song. When you let go of L, the word will appear in the grey box in the standard US .txt format.
Initially I found this process to be very tricky, but once you get the hang of it, it's very easy. As noted in the video, it is very unlikely you'll flawlessly synchronise the lyrics with the mp3 first time round; don't worry about this, just make sure most of them are right, and there's nothing to worry about. The notes can be edited at a later point.
Step 6 (3:32)
Once the lyrics have finished, click "Save UltraStar Song." The .txt file will appear in the same directory as the SongEasy program files, unless you have specified another directory to save them in.
You can load the .txt by clicking on "Existing Project: in Text Editor" on the Basic tab. Make some standard changes at this point, such as the correct Artist and Title labels, and you might want to add a #VIDEO tag too.
Step 7 (4:02)
You now need to edit the line breaks. Though there are other means through which you can do this, I find it easiest to edit them on the .txt file itself. It's easy to see where a line should begin and end, plus you can ensure that line breaks do not "interrupt" notes. The best way to avoid doing this is to ensure that the number accompanying each line break copies the beat of the proceeding line, like so:
: 51 2 17 He'd
: 54 2 17 make
: 57 1 17 a
: 60 3 17 plan
: 64 1 19 and
: 65 1 21 he'd
* 67 2 22 fol
: 70 2 10 low
* 74 5 10 through
: 80 2 10 That's
: 83 2 10 what
: 87 1 10 Bri
: 88 1 10 an
: 90 2 14 Boit
: 93 2 12 a
: 96 2 10 no'd
: 99 4 10 do
Note that the line breaks (51 and 80 respectively) are at exactly the same beat as the line that follows. It's not essential to do it this way, but if a line break appears too early it risks "interrupting" the preceeding note. For example, if the second line break above occurred at beat 76 instead of 80, the note "through", which lasts for 5 beats from beat 74, would not have enough time to finish. More information on errors like this can be found on the .txt file troubleshooting page.
Step 8 (4:44)
Now ensure that all necessary files are together in a folder: the mp3, the .txt, and the video if applicable. Open the .txt file in WordPad.
Step 9 (5:01)
Click on the "replace" button at the top of the application, and tell WordPad to replace any instance of "64" with "24". Make sure that you select "match whole word only," or you could create all kinds of problems with your file.
The reason that I like to do this is because if the pitch is classed as being 64, it is not easy to preview the notes in the UltraStar song editor, as they are far too high pitched. If we take them down to a much lower octave, it is far easier to work with.
The only issue to watch out for is any occurrence of the number 64 where it is not a pitch (the fourth column); if it is a note length, this will easily be rectified later. However, if it is a beat position (signified in the second column), it will need to be changed from 24 back to 64. As we have replaced only the "whole word only," it is the only beat that might be problematic.
Save the file and close WordPad.
Step 10 (5:41)
Move your song folder into your UltraStar song directory if it's not there already. You can now load you preferred version of UltraStar; I personally like using the ChallengeMod for editing songs, for very minor reasons. Firstly, you can press the tab key at any time to bring up a menu containing keyboard shortcuts; secondly, when you preview a line, it will highlight the notes as it does so. Finally, if there are technical problems with the .txt file, ChallengeMod produces a more detailed error report.
On the song selection screen, find your song and press "E" to bring up the editor.
Step 11 (5:50)
The first line of your song will be displayed in much the same way that it would be during gameplay. You can select different notes using the left and right keys, and between different lines by pressing the up and down keys.
Press the space bar to preview each note. Does it start and end as the syllable does? In which case, move on to the next one. If not, then edit it using the following keyboard combinations:
- Press shift+left to move the note left (or earlier in the song)
- Press shift+right to move the note right (or later in the song)
- Press alt+left to shorten the note from the end of it, so that it finishes earlier
- Press alt+right to lengthen the note from the end of it, so that it finishes later
- Press ctrl+left to lengthen the note from the beginning of it, so that it starts earlier
- Press ctrl+right to shorten the note from the beginning for it, so that it starts later
These shortcuts will become second nature to you after a while, as daunting as it may seem at first.
It's a good idea to press "P" to preview the whole line as well. This plays a clicking noise every time the syllable changes, and it makes it a lot more obvious if the text is out of synch.
Another couple of combinations that may come in handy:
- Press F4 to toggle the lyrics editor, to correct any mistakes that may have slipped through from earlier stages.
- Press ctrl + / to divide a note into two. This can be handy if there are syllables combined in one note that you missed from earlier, or if the syllable extends over multiple notes (should be denoted with a ~)
- As specified in the video, get into the habit of pressing "S" every so often. This automatically saves any changes you've made to the song's .txt file.
Remember, with the ChallengeMod, you can press the tab key at any point to see a list of shortcuts.
Step 12 (6:28)
Just as you move a note left or right to determine its position in the song, you move it up or down to correct its pitch. If you've followed this guide accurately, all the pitches are currently at a middle C:
The tone is displayed in the top section of the song editor. The following shortcuts apply to change it; the video guide specifies that you use the shift key to move the note, but it depends on the version that you are using.
- Press ctrl+up to move the syllable up a note (ChallengeMod only)
- Press ctrl+down to move the syllable down a note (ChallengeMod only)
- Press shift+up to move the syllable up a note (UltraStar Deluxe standard edition only)
- Press shift+down to move the syllable down a note (UltraStar Deluxe standard edition only)
Don't worry if the note is high or low enough to be moved off the grid entirely; if you go briefly to a different line and back again, the editor will adjust the range of the grid to ensure that the notes can be viewed properly.
Once you've adjusted all of the pitches in the current line, press shift+P. This will play the line as a very basic midi, and is probably the most effective way to double check that you've entered the notes correctly.
Step 13 (7:02)
It is best to preview a segment of your song before you get too stuck in, because there are times when the sheet music doesn't accurately reflect the vocal notes in your mp3. Even if you're not the best singer in the world, it soon becomes very obvious if the pitches are wrong. The video shows another version of "Any Dream Will Do" that I tried initially, and it was clearly being sung in a different key.
Step 14 (8:19)
Once you get into the swing of things, the whole process becomes relatively painless. I mentioned at the start of this article that my initial knowledge of sheet music was restricted to the fact that I knew the note just underneath the last bar was a D, but I can now identify most notes quite quickly. Moreover, most songs repeat the same notes throughout ("Any Dream Will Do" is very guilty of this!), which helps.
- As you may've seen in the SongEasy lyrics step (#5), there is an option to have the program assign golden notes at random. I would recommend doing this; failing that, if you want to add some yourself, simply press "G" whilst a given note is highlighted in the built-in UltraStar editor.
- Remember that not all lyrics are sung; you may want to add speaking parts in, too. Press "F" when a given note is selected in the UltraStar song editor to make it a free note.
- SongEasy automatically assigns the song a #GAP value of 0, and instead has the first beat occur sometime into the song. This is probably me being pedantic, but I always think it's better to have a song's first beat start at 0, and to have the #GAP tag adjusted accordingly. To achieve this, go to the built-in song editor and keep the very first note of the song selected. Press ctrl+shift+alt+left, and keep this held down until the song starts from beat 0. This moves all the notes in the song at the same time. Then, adjust the #GAP accordingly.
- Don't be afraid to get a bit creative. If the song in general is OK but there are one or two notes that you feel are different, you can try singing the note into the microphone in the song editor. This will display what note you are singing in the top section.
- Once again, I'm probably being very pedantic, but I always think it looks better if each line begins with a capital letter. Simply pressing "C" when in the song editor will automatically do this for every line.
- Don't forget to upload it to USDB when it's ready!