You are on page 1of 28

Introduction:

UmaMusu-Translate is a patch for the DMM version of Uma Musume.


It uses assets from the game and translates them into english.

Disclaimer:
These edits are against Cygames/UmaMusu TOS. By installing and
reading either the GitHub or this document, you agree that Noccu is
not responsible for any repercussions that come to your account.
Noccu states in the github their personal experience with Cygames
regarding “non-cheating, non-damaging tools and users” in the
README. But do not take this as cement evidence
they will not come for you.
Part 1. Downloading the requirements
UmaMusu Translate requires the following:
● Python 3.9 or higher
○ If you already have python installed on your computer,
feel free to skip to Part 2.
○ If you do not have python installed go to section 1B for
a tutorial.
● The already-downloaded game on DMM
○ UmaMusume Translate does not work on phones.

Part 1B: Installing Python

1. Download the latest version of Python from the website .

2. When finished downloading, run the installation executable.


Afterwards you should see this window

3. Disabling path length limit is unnecessary unless you are planning to


learn python or continue using python for other options.
Part 2: Installing UmaMusu Translate
1. Download UmaMusu Translate. You can do so by clicking

and then

2. Once finished, extract it.


a. I suggest creating a folder/destination for the future. Optional
but recommended.

3. After extracting it should look something like this.

4. Next run install.batch from the umamusu-translate


Part 3: Setting Up
1. Download Trainer’s Legend G from the github.
a. Unlike with UmaMusu-Translate, you do not need the entire
master for this. Instead of downloading, you can go to the
releases tab on the side

b. And click the version marked “Latest”


c. Then download the .zip file.

2. Open up DMM and hover over the Uma Musume box.

3. Click the little information button.

4. Click the folder directory button.


This should open up the game’s directory. For future reference this will be
called the “Install” folder.

5. Next, open up the TLG folder and extract it afterwards

6. Copy the version.dll file then put it in the Install Folder. Do not copy
anything else.

7. Go back to the UmaMusu Translate folder

8. Open the “Localify” folder and copy the contents.


9. Paste these contents into the “Install folder” (The directory linked from
DMM)
Your install folder should now look like this

10. Go back to umamusu-translate and run mdb import.bat

● Running MDB import.bat will create a umatl.json file. This file can be
used to change the skill data.
○ Setting Skill Data to true will replace the skill description with
data.

○ Setting it to false will replace the data to the skill description.

11. Double click Run.bat


Run.batch will open a command prompt and may take a few minutes
or an hour to import all the data. (Especially if you downloaded all the
data beforehand) If it stops in the middle, I find pressing a key on the
keyboard begins it back up. The command prompt will closed when
finished.

Congratulations!!! The patch should be full installed!!! The game should


work now!
If not continue to Troubleshooting!!
For advanced usage check the script tutorial!

Part 4. Updating
1. Download the newest version of umamusu-translate.
2. Extract the folder and select the directory of the old folder. (Do not
open it, select the folder)

3. While it is extracting you may get a pop-up similar to this. Select


“Replace the files in the destination.”

4. Next run your preferred mdb patch.

5. Afterwards, open the umamusu-translate and run “run.batch”


You are finished updating
Troubleshooting
My Game Won’t Fit On My Screen
1. Open Config.json in the install folder/game directory in your preferred
visual coding software

2. Under uiScale, change the number.


a. Increase the number (change from 1.0 to 1.1 or higher) to make
the UI bigger.
b. Decrease the number (Change 1.0 to 0.9 or lower) to make the
UI smaller.
The Text Is Going Offscreen

This is an issue with the text formatting for their file. This will have to be
fixed manually through the story editor. It should show up moderately
readable in the dialogue logs though.
Game won’t start
1. Open install folder

2. Rename version.dll to uxtheme.dll

If the issue occurs it is something else.

I renamed version.dll to uxtheme.dll and it still won’t start

Try downloading one of the redistributables for microsoft c+/c++

Translated Files Are Showing Up In Japanese

When Cygames updates a file, the contents of the file may be changed
leaving the translated version to get abandoned.

The three options are:


A) Politely notify Noccu of the issue on discord and wait for it to be fixed
in the next update.
B) Open an issue on github describing where the issue stems from
(What dialogue, who’s it by, the card it comes from etc etc.) and wait
for it to be fixed.
C) Finding the file yourself, re-export it and re-import. (see updating
broken files)
a) You can then create a pull request on github, although
appreciated this is not a major requirement.
Command prompt showing up in background of game

This is the debug menu from TLG.

1. Open up config.json from the install directory.

2. Under “enableConsole” set it to false.

The next time you load Uma Musume, it will not load.
Story and Dialogue Translated But The Skills And Their
Descriptions Are not

If this is your first time installing or running the patch, you will have to run
the skill .bat twice. The first time will create the umatl file. The second time
will actual import the skills and their description.

You can check the umatl file to change the skill description with the data.

“Error Status: 0xc000012f”

There is an issue with either the patch or TLG. Please redownload and
reinstall to fix this.

Bonus Tutorials: Translating


A majority of UmaMusu’s translations come from machine translating
(MTL). These are mass translated at decent speed for the cost of low
quality (Translation wise and grammatically). While some things are
properly translated by community, a big part of the content is from the mtl
files created by fans.
This part will guide you into mass translating and editing MTLs/Inputting
translations.

Bonus Tutorial: For Machine Translations (aka


MTLs)
All translations are stored from the translation directory in the umamusu-
translate folder. While a lot of them will be translated, as more content is
released, there will be more MTL work to do.

You can check the status on this at the github page. You can also check
the “tl-progress.md” file in the umamusu-translate directory. (This will be
dependant on what version of the program you are on, the newer the
update the more accurate it will be.

Requirements
● Some type of text and visual code editor.
○ Recommendations can range from Notepad ++ to Visual Code
Studio. (I use Visual Code Studio personally)
○ This will be used for locating dialogues you wish to translate
and keeping track of what has been finished.
● An internet browser supporting add-ons/extensions
● ViolentMonkey
○ And the subsequent deepl-translator.javascript
● 7zip if you choose to send a new mtl to Noccu. (Please check the tl
progress to make sure it has not been done before).

Using Commands

1. Open the umamusu-translate folder.

2. Up in the directory path type in “cmd”. This will open up a command


prompt.
1. Install the additional dependencies by typing
> py -m pip install -r src\devreq.txt
Without the >

You may need to reopen the command prompt after.


As an example, we will be translating the dialogue for Biwa Hayahide’s R
support card.

To translate you will be using the machinetl script.


This will be typed out in the command prompt as
> py src\machinetl.py
T
The Pink, tells the command that python will be used, the src\ specifies the
directory of the script, and the blue tells the computer which script to use.

But we aren’t done yet…

1. Locate the card’s ID by using id-structure.md file.

As stated in the id-structure.md, the format is simple.

The group, the ID, and the index number.


● The group ID: A 2 digit number that specifies what is being
presented, ie: training events, support card events, main stories, etc.
● The ID, aka the Uma ID: A four digit number which specifies which
horse girl this is for.
● The Index ID: A 3 digit number to specify which event. This will rarely
be used unless you are planning on to MTL a specific event and only
that event.

When put together it will specify what should be translated.

However when specifying it in the command prompt it should go as follows:

-g <group id> -id <uma id> -idx <index id>

The pink is the the group id, the red is the uma id, and the blue is the
optional index id. (As stated before, the index ID will only be used for
specifying a specific event).

Since we are using translating Biwa Hayahide’s initial R Support Card, the
id will go:
-g 80 - id 1023

If we wanted to run a specific event, we’d specify which one.

After typing this as long as the input for step 1 we should get:
> py src\machinetl.py -g 80 -id 1023

After entering the command you will get a msg of “Server started, awaiting
connection to deepl script. See README for info.”

3. Open deepl in the browser with violent monkey installed. (Make


sure it has /en/translator at the end because sometimes it won’t work
otherwise.

4. Open your violent monkey menu by clicking the extension/add-on


5. Click “connect websocket” under “deepl-translator”

It should automatically start entering translations.

Formatting text

After the translator is done. Close the command box and then reopen.

It should look like

This step has two parts…


Changing the names and processing the text to fit better onto the app.
1. Go back to the command prompt and type in the command to change
the names

> py src\names.py -g 80 -id 1023

The pink is the new script to run to change the names and the blue is the
ID numbers.

2. Reopen command prompt if needed

3. Run the textprocess.


> py src\textprocess.py -g 80 -id 1023

Congratulations, you’ve finished translating your first MTL file!


Afterwards you can reload the translation by using run.bat.

Bonus Tutorial: Editing MTLs/Translations


Many MTLs will contain many grammar and formatting issues despite the
textprocess.py. Luckily, umamusu-translate has a editor built in thanks to
KevinVG207.
1. Open command prompt.

2. Run the python script “edit_story.py” with the file IDs you wish to edit.
Example:
> py src\edit_story.py -g 80 -id 1023

It should open the story editor.


The yellow “Chapter” is the event number. The green “Block” is the block of text
(Each line of dialogue is cut up into blocks). The blue is the name of who is
speaking. You can generally ignore this 9/10 times. モノローグ disappears in
games. The two major boxes with text is the japanese and english text. You can
edit the english text for grammar and spacing issues.

Bonus Tutorial: Updating Broken Files

Sometimes pre-translated files may show up back in japanese after


updates.

1. Find the file’s ID code by following the example listed in MTLs.


2. Re-export the updated version by using the export.py
> py src\export.py -upd <type> -g [group id] -id [uma id]
The pink is for the command, the red is for the file’s ID’s and the blue is for
what folder is being updated.
Ie, If your updating a file from the “story” folder in the translations directory.
You’ll put in story. If it’s lyrics, you’ll put in lyrics etc etc. 9/10 times, this will
be somewhat rooted in the story directory.

3. Re-import using import.py script.


> py src\import.py -g [group id] -id [Uma ID] -O

-O is the command to overwrite the existing file.

4. Run run.bat

Bonus Tutorials: Github Uploading

Following this tutorial implies you have an account with Github. If not, it’s
free. The intention of this tutorial is to teach you how to post pull requests.

What’s a Pull Request?

On GitHub a pull request is used by developers and contributors to discuss


potential changes, keep track of and collaborations for the code of a
program. For umamusu-translate, it’s mostly used for posting MTLs and
any grammar/formatting changes. This notifies noccu of any suggested
changes without having to post it themselves.

Pull requests are very nice for suggesting changes to 1-3 files. Any more
and it tends to get tedious. If you are submitting more than one, send them
to Noccu through discord.

Posting A Pull Request

We will be assuming you’ve already translated or edited files and are ready
to upload them. As an example, I will be posting the MTL files of Biwa
Hayahide’s R card that was used for the MTL tutorial.

There are two methods of posting a pull request on github. For smaller and
shorter requests (preferably for anything less than one file), follow Method
A. For changes regarding more than one file (such as training route dumps,
character stories, etc) go to Method B. This is to avoid spam.

Method A
Once again, these steps should only be done after you have
edited/translated local files. Otherwise, go through the tutorial before
uploading pull requests.

1. Go to the main page of the program on github.

2. Make sure you are on both the most recent update and the Master
branch.

3. Afterwards, navigate through the files to find the file you were
planning on updating (It will be in the same file directory as it is in
your downloaded version)
a. If you can’t find it, the branches follow the same format as the
one stated in the ID Structure.md, feel free to revisit that to find
it.
b. 9/10 times your changes will be somewhere in translations.
4. Open
the
final

directory you wish to start with.

5. Click on the button. This will bring up a new message on top.

6. Afterwards open up the translated/edited files through visual code.


a. For example, if I was uploading a file from Biwa Hayahide’s R
card translation, so I will open the files in /story/80/1023.

7. Copy the altered code of the file and paste it into the github text box.

8. Click at the bottom.

Congratulations! You have finished submitting a pull request.


Method B
The reason why this method is preferred over making Method A is because
this way it will submit itself as one giant pull request instead of multiple little
ones.

1. Open the main page for umamusu-translate.


2. In the top right corner, there will be a button titled fork.

3. Click on the arrow and click “Create a new fork”.

A fork is basically your own version of the program. We will use this to
submit changes instead of using the previous method.

4. After creating your own fork. Head to the directory.


a. You can do this through your profile (Click your profile account
in the top right).
Or
b. Go to the down arrow next to fork and select your already
created fork.

5. Afterwards, navigate through the files to find the files you were
planning on updating (It will be in the same file directory as it is in
your downloaded version)
a. If you can’t find it, the branches follow the same format as the
one stated in the ID Structure.md, feel free to revisit that to find
it.
b. 9/10 times your changes will be somewhere in translations.

6. Afterwards in the top right hand side of the menu go to “Add File” And
click on “Upload Files”
7. Uploaded the translated files and at the bottom click “Create a new
branch for this commit and start a pull request.”
a. Change the name of the patch to a small description of what is
being changed. (Ie, Biwa Hayahide’s R Card)

8. Afterwards click the button.

Congratulations! You’ve finished submitting the Pull Request!

You might also like