Friday Night Funkin' Cookbook
Friday Night Funkin' CookbookAdvancedCreating Subtitles

Creating Subtitles

Reading time: 2 minutes

This chapter will walk you through the process of adding and creating custom subtitles in video cutscenes and during songs.

Video Subtitles

Creating Video Subtitles

To create custom subtitles for video cutscenes, Friday Night Funkin' uses .ass files, which support attributes like positioning, styles and fonts.

cautionCaution

It is not recommended to create .ass files by hand, so we recommend using a program of your choice, like Aegisub or Subtitle Edit.

Once you are done creating your .ass file, there are multiple ways to combine your subtitle file with your video.

  • Using VLC media player:

    • Open VLC -> Media -> Convert / Save.
    • In the file tab click on Add... and select your video.
    • Check the box Use a subtitle file and select your subtitle file.
    • Click on Convert / Save and in Settings select Convert option.
    • Locate Profile and select Video - H.264 + MP3 (MP4).
    • Click on a wrench to open Profile edition, in Encapsulation tab select MKV file format and in Subtitles tab check the box for Subtitles and Overlay subtitles on the video.
    • Select the output location of the file that is going to be converted and click Start.
  • Using FFmpeg by using a singular command to combine those files, where you have to define the subtitle track language (in our case English), just like so:

ffmpeg -i input.mp4 -i input.ass -c:v copy -c:s copy -metadata:s:1 language=English -metadata:s:s:0 language=English output.mkv

where input.mp4 is our original cutscene, input.ass is our subtitle file and output.mkv will be our final output video with subtitles.

In-Game Subtitles

Creating Subtitles

To create custom subtitles that would appear during a song, Friday Night Funkin' uses .srt files, which are simpler and more lightweight than .ass files.

Below is an SRT file for "Tutorial" song subtitles from assets/data/songs/tutorial/subtitles/song-lyrics.srt1

1
00:00:18,000 --> 00:00:19,200
That's how you do it!

2
00:00:27,600 --> 00:00:28,800
That's how you do it!

An SRT file is structured like so:

  • A number showing which position, in order, the subtitle appears.
  • The timestamp of the subtitle, with the start and end time separated by a “-–>”.
    • A typical timestamp is structured to include hours, minutes, seconds, and milliseconds, or simply put it: hours:minutes:seconds,milliseconds.
  • The actual subtitle text on one or more lines.
    • Subtitle line should be limited to 38 to 42 characters per line.
  • A blank line between the end of the current subtitle and the start of the next.

Adding Subtitles

Once you are done creating subtitles for your song, that file needs to go into the data/songs/<songid>/subtitles folder, replacing <songid> with the internal name for our song.

noteNote

If you are creating lyrics for a song that has custom variations, make sure to add the variation at the end with -<variation> replacing <variation> with the internal name for our variation.

We'll end up with something like this.

-mods
 |-myMod
   |-data
     |-songs
       |-<songid>
         |-song-lyrics.srt

When you boot up into the song that you made the lyrics for, if you have Subtitles enabled in your game preferences, you will now see the lyrics that you have created.


  1. https://github.com/FunkinCrew/funkin.assets/blob/main/preload/data/songs/tutorial/subtitles/song-lyrics.srt


Contributors:
MightyTheArmiddilo
Pāvels Rimašs
Last modified:
Created:
Category:  Advanced
Tags: