Skip to content

Tutorial: Staff Credits

Shadow edited this page Sep 23, 2019 · 4 revisions

Staff credits text

Besides from the Cast sequence, you can also modify the Staff sequence text. Thankfully, this sequence is all handled by mere text, so we don't have to screw around with compressed graphics for this part! (Phewww...)

Before you start, you might want to have the list of the Staff sequence credits. so that you know how the text is arranged with the HEX file.

Let's start then.


Quick access:

  1. Knowing the files
  2. Configuring your custom letters
  3. Editing and adding your own Staff text

1. Knowing the files

As soon as you open up the "Staff" folder, you will notice two files in there:

  • staff_chars.yml: Text file which contains the configuration of each letter
  • staff_text.md: Text file which contains the actual text that will be displayed during the Staff Credits sequence

Also, don't forget that all of this depends on what you have on the credits.png file from inside the "Fonts" folder, so edit that font image first and then you can continue into editing the YML and MD text files.


2. Configuring your custom letters

The Staff/staff_chars.yml file contains the mapping from characters to codes. It allows you to add additional entries past 98 and their format is:

Number:
    Type:      <big or small>
    Row:       <the top row of the character in 8x8 tiles>
    Column:    <the left column of the character in 8x8 tiles>
    Character: <a Unicode code point that is used in staff_text.md>

Let's explain each one in detail:

  • Number: This is numbered entry of the letter or character
  • Type: big or small. Determines if the letter will use either the small or the big letters from the font image. small being the purple letters/symbols, while big are white letters/symbols
  • Row: Numbered value. This value is the relative Y position of the character inside the credits.png image
  • Column: Numbered value. This value is the relative X position of the character you have inside the credits.png image
  • Character: Actual character or symbol which is in that position.

Let's make an example. You have your credits.png image inside the "Font" folder like this:

credits.png

Let's dissect the configuration for letter X.

  • Number: First off, the number in which you place the letter doesn't matter that much.
  • Type: Given how the letter "X" is using the small purple font, we enter small in this one.
  • Row/Column: In the case of the letter X, we are following an X/Y position in 8x8 tiles. This means that each 8x8 pixels, we'll add a number into the Row/Column values, starting with value 0 for the upper-left 8x8 tile. So if we start counting tiles, the letter X is located at tile 3/13, or in row 3 at column 13.
  • Character: This will be the character which that tile will represent in your Credits. In this case, we write "X".

Now that we have all of the values assigned, we go into the staff_chars.yml and introduce them properly:

42:
    Type: small
    Row:    3
    Column: 13
    Character: X

But what if you want to add a custom character for your own translation? Well, that's simple enough. Let's take the Credits Font image from the Spanish translation as an example:

spanish.png

Here I have created entirely new characters for accented vowels and special symbols that the Spanish language uses, which English doesn't. Now that we made the letters in the credits.png image, let's try to configure the letter "É" properly into the YML file.

  • Number: EarthBound's default Staff characters end at entry #78, but you can add new ones after 78. So for letter "É", I made it entry 80 (since the first accented A took the 79th place).
  • Type: Since the new character is using the large white font from the credits.png, we enter big as its setting here.
  • Row/Column: For the white big letters, we need to take into consideration only the part where the letter begins. This means, taking the upper tile of the letter as the one for the position in both row and column. By counting the tiles (always counting in 8x8 measures for a tile), we determine that the column in which the letters can be found is 1, while the row is 8. Remember that the very first row/column starts with 0.
  • Character: Here we write the character which that tile will represent in our Credits. In this case, we write 'É'.

Now that we have all of the values assigned, we go into the staff_chars.yml and introduce them properly:

42:
    Type: small
    Row:    8
    Column: 1
    Character: É

And with that, we have successfully made a new character entry for our Staff sequence!


3. Editing and adding your own Staff text

Now that we have our characters configured, it's time to put them to good use. We will focusing our attention into the staff_text.md file.

Right as you open it, you will notice some symbols alongside the text and numbers. Let's explain what each symbol does:

  • > (Number): The > symbol always goes alongside a number. This will represent the amount of blank space (or blank rows) that the game will print.
  • # (Text): The # will specify what type of font to use. In this case, using # will mean all of the subsequent text will use the small font (purple letters).
  • - (Text): The - specifies that all of the subsequent text will use the big font (white large letters).

As long as you understand what each symbol does, you can start adding your own Staff text right away! The only limitation is that you cannot have more than 32 characters in the same row, or else the remaining characters will start being printed at the far left of the next row.

Out of that, you are free to edit at will. Simply add your text, with your custom characters you have specified in the Character setting from the YML file, and you should be good to go!


Are you using CoilSnake 3.33 or below? See this page: Staff Credits (3.X)

Clone this wiki locally