Skip to content

Tutorial: Translating Items and Enemies

CRefice edited this page Jul 15, 2015 · 9 revisions

Translating Items and Enemies

This is probably one of the simplest steps! All you have to do is edit:

  • enemy_configuration_table.yml
  • item_configuration_table.yml

Simple, right!

Enemy Configuration Table

This file contains information about all the enemies. Each enemy is represented by a number value, followed by all their attributes, such as Name, their Vulnerabilities, Item dropped, etc.

For a translation, there are only TWO attributes you need to change for an enemy:

  • Name
  • Gender

BUT WAIT?! Why would I change an enemy's gender?!

In English, when you use an article to refer to someone or something, you might use something like 'the' or 'a'. Articles in English do not reflect gender. But in other languages, articles can.

If your language DOES reflect gender in an article, then I would change the gender of the enemy to match what an article would indicate. For most enemies that are people, this will likely be the same gender as the individual. But with a lot of the animal, robot, or even abstract enemies, the gender will depend on the NAME. For example, in Portuguese, if I'm referring to a Coil Snake (which is called a Cobra Espiral), the name Cobra Espiral is feminine, and so I set the gender for the Coil Snake to be female. If your language also has neutral reflection in articles or verbs or any other type of word, you can use that as well.

EarthBound supports three gender options:

  • male
  • female
  • neutral

In my translation, since Portuguese doesn't need the neutral form, I used neutral to indicate that the enemy's name is a proper noun. This allows me to provide options in the text to NOT include an article when referring to the enemy.

Item Configuration Table

This file is very similar to the enemy configuration table, in that it contains information about all the items in the game. Every item is represented by a number, followed by its attributes.

For a translation, all you will need to edit is the item's Name. But you may be wondering: "Why isn't there a "gender" attribute for items? They have genders too, right?"

That is a really good question. Coilsnake doesn't handle item genders. So how do we add appropriate articles to items? It's actually fairly simple. All you have to do is download these three files:

  • asm65816.ccs - This file contains ASM * instructions. You will need this for any kind of ccscript hacking. DO NOT EDIT THIS FILE.
  • itemarticles.ccs - This contains a lot of technical stuff. DO NOT EDIT THIS FILE.
  • data_gender.ccs - This file coordinates all the articles for all the items.

You can go ahead and add these three files to the ccscript folder in your Coilsnake project folder. Then, what you will have to do is edit the data_gender.ccs file, updating the definite and indefinite articles (which are currently in portuguese) to your language. These articles follow the order of the items listed in item_configuration_table.yml, so you can check that file to be sure to use the correct article for the correct item.

Now that you have edited the data_gender.ccs file, you can go ahead and edit the main text files, replacing the control code [1C 05 00] with {call(data_gender.item_article)} for indefinite articles and {call(data_gender.item_def_article)} for definite articles.

If you want to try it out, I suggest editing data_35.ccs first, since it contains the text for the item boxes in line 431. As an example, here is how that line would look like if you wanted to add an indefinite article to the item name:

"@There is {call(data_gender.item_article)} inside![03]" eob

Clone this wiki locally