ROM Hack More one Phoenix Wright Translation Project for DS [PT-BR]

pinet

Active Member
OP
Newcomer
Joined
Feb 3, 2015
Messages
38
Trophies
0
Location
Samba Land
XP
184
Country
Brazil
Since I've not found any topic that has provided effective evidence of translation of the DS PWAA (U) version into Brazilian-Portuguese language, for the users of this forum, I apologize for taking the liberty of creating, here, a project to attempt to find people interested in translating the Phoenix Wright for DS, to Portuguese.
-----------------------
:!: Attention:
This project uses in most part, the OnePieceFreek JSON method where dialogue scripts have "bracket" tags.

If you want adventure through Deufeufeu XML method, use the legacy project below, instead:
:arrow: PWSE 0.2.1 tutorial.
-----------------------

This project:
:: Uses the dlgTool2b.py. it can manage PWAA (U) DS ROM.
:: Merged and pointed to the PWAA 3DS ROM Trilogy version.
:: More recent updates on the Discord group.

:teach: P.S. This page is not the project itself and just aims to share news or recent information
about the Oficial Portuguese Translation project which is cooking on Discord Chat Group.


I would like to thanks the following Discord Members:
Repository and Software Integration
- djmatheusito
Technical stuff, Tools and Accessories
- Solid One
Texts, Translations and Revision
- Gamerulez
Graphics, Images, Sound
- Sliter
- bMatSantos

(But I can't wait!)
_\

cantwait.png


If you cant hold a little bit with a good an complete translation version,
you can make an amateur translate while the final version is still cooking.

:!: Attention!: This is a fast amateur example. The procedures for best results,
like revision, character enconding, etc is not included here.

placa.gif
Minimum requeriments:
- Windows XP 32 bits with Service Pack 3, or better
- Framework .Net 3.5 client, or better
- Phyton 2.7

software.gif
Tools:
- DsBuff 0.6.1 (extract files from the ROM)
- dlgTool2c.py (convert mes_all.bin to "txt" and vice-versa)
- Pwopfsft.exe (tool for fast translations)

And, of course:
- the DS (U) or (E) ROM version of the game
(not available here)

:) Let's go:

1. Extract the (U) version scripts:
1.1. Follow the procedures to extract the "txt" files on page 6 of this thread.
1.2. If you get success, you will see 0 to 73 "txt" scripts.
Obs: If for some reason you could not extract, get here:
:download: mes_all_ds_Uversion.zip
:: 0, 2, 4, 6, etc... are non-english scripts (other language)
:: 1, 3, 5, 7, etc... are the english language scripts.
:: if you are using (U) ROM, the pair numbers will be empty.

np001.png


2. Translate a script:
2.1. Choose a script. Any script. Let's choose "21.txt"
2.2. Copy 'Pwopfsft.exe' to the scripts folder.
2.3. On Windows command line, run:
> Pwopfsft -a 21.txt
(will give a '21_cut.htm')

np002.png


2.4. Publish your 'htm' in your personal server or on your blog.
2.5. Go to "https://translate.google.com/"
2.6. paste the remote 'htm' link, and translate it!

np003.png


3. Clean the new script:
Since the script choosen was a english script, when you re-insert, the
special characters will not work with a non pre-patched game. Let's clean!
3.1. Copy the translated text into "txt" file (I called here '21p.txt')
3.2. Of course, the revision step is the hard step.
But for this example, forget it.
3.3. Put the txt into the scripts folder.
3.4. For the script not blow on the game, let's change the special chars (ex: 'á' for 'a')
> Pwopfsft -r 21p.txt
(will give a '21p_clean.txt')

np004.png


4. Verify the new script:
If the traslated line size is greater than ~30 chars, it can be truncate or freeze in game.
In this example, let's check lines with + 30 chars, so you could revise.
4.1. Run:
> Pwopfsft -v 21p_clean.txt 30
OR...
> Pwopfsft -v 21p.txt 30
(will give a '21p_verify.txt' or '21p_clean_verify.txt' report)

np006.png


5. Fast Truncate (optional):
If you are too lazy, like me, you could just truncate all lines with +30 chars.
You can jump if you manually checked your text. For this example, let's truncate.
5.1. Run:
> Pwopfsft -t 21p_clean.txt 30
(will give a '21p_clean_truncate.txt')

np007.png


6. Merge "{}" brackets:
Now let's join the brackets with our "lazy-translated" script.
6.1. Run:
> Pwopfsft -j 21p_clean_truncate.txt 21.txt
(will give a '21p_clean_truncate_join.txt')

np008.png


7. Recompile all:
After this, you would like to open the two files for final manual check.
Just clean it what you want and save again. After this:
7.1. Copy '21p_clean_truncate_join.txt' over '21.txt'
7.2. Delete all files except the "txt" scripts and 'offset_list.bin'.
7.3. Execute the compile with dlgTool2b.py.
Example:
> dlgTool2c.py -c mes_all
(will give you a "compile" folder with mes_all.dlg)
7.4. Rename "mes_all.dlg" to "mes_all.bin"
7.5. Copy to original extract path and repack it with DsBuff 0.6.1.

takethat.png

Some Results:
Here is some evidences using the fast method above with script "1.txt"
Of course, if you play the game with this patch, the results could be funny.
pwaa3_23_28698.png
pwaa3_05_29619.png
pwaa3_06_29426.png


Patch for the script 1.txt example above:
:download: pwaa_DS(U)_example_patch.zip

Pwopfsft derived files used on this example:
:download: Pwopfsft_files_used_in_example.zip

You can see this page here too:
:discuss: External Link - Pwaa Project

Other similiar DS projects:
:arrow:
Phoenix Wright - Ace Attorney PT-BR Translation Project (Help Wanted)

Very Old References:
:discuss:
Conversion Table - 2009
:discuss: Old Project - 2009
______________________________

Thanks to all, and... let's go!
 
Last edited by pinet,

Idazle

New Member
Newbie
Joined
Oct 22, 2017
Messages
2
Trophies
0
Age
29
XP
54
Country
Brazil
Oh, I'm looking forward to this!
I don't know how to translate, but I'm brazilian and I want to help you :D
PW is one of my favorite games, I'll try to study the program and I'll make maximum effort to help you. Stay on contact!
 
  • Like
Reactions: Gamerulez

pinet

Active Member
OP
Newcomer
Joined
Feb 3, 2015
Messages
38
Trophies
0
Location
Samba Land
XP
184
Country
Brazil
Hi,
The PWSE translation project with XML was discontinued here and will not be update more in this thread.
We will wait for the new project cooking in Discord Group.

Updates of the XML tags project for PT-BR finished here at 2017.10.25.
But with you like to work with XML scripts, the Tutorial is available below:
:arrow: PWSE 0.2.1 tutorial.
 
Last edited by pinet,
  • Like
Reactions: Gamerulez

Gamerulez

Active Member
Newcomer
Joined
May 17, 2009
Messages
28
Trophies
0
XP
427
Country
United States
Hi, that project you had seen of the 3ds version has improved and now we're doing for both version. If you want to help, contact me, we're pretty advanced.
 
  • Like
Reactions: pinet

pinet

Active Member
OP
Newcomer
Joined
Feb 3, 2015
Messages
38
Trophies
0
Location
Samba Land
XP
184
Country
Brazil
Hello dear Gamerulez.

Thank you for the invitation. ^-^
But, as is the case, the focus of this thread is the DS (.nds) ROM version.

But, the excellent project mentioned, correct me if the wrong impression is fixed, seems to have the efforts, at moment, for the translation of extracted texts from the 3DS ROM version.

If someone managed the ".nds" mes_all.bin file scripts, through "dlgTool2.py", It's a very welcome time to link the details of the "how-to" thread in this forum.

Thank you in advance.
 
  • Like
Reactions: Gamerulez

Gamerulez

Active Member
Newcomer
Joined
May 17, 2009
Messages
28
Trophies
0
XP
427
Country
United States
Idazle and Pinet, as I said many times, you don't need to translate for this project and we have already translated all the scripts from case 1 to 3 and a few things from other cases. We ARE doing for both version. We are. Please, contact me. Don't do an useless effort by making another project. Everything was answered in the Discord group by our romhackers. You've ignored it. Let's finish the project together, it's better and faster.


I still do not understand: if you've seen what we'll do for both versions, that both Solid and DJ are working hard on every detail to get it right on 3ds and DS, and did not say anything else, why did you want to continue doing a parallel project, if we've already done it and going to do everything you're trying to do?
 
Last edited by Gamerulez,
  • Like
Reactions: pinet

Gamerulez

Active Member
Newcomer
Joined
May 17, 2009
Messages
28
Trophies
0
XP
427
Country
United States
Of course, if you really want to help, PM me. We do everything in a Discord Group and the group needs to approve first.
 

pinet

Active Member
OP
Newcomer
Joined
Feb 3, 2015
Messages
38
Trophies
0
Location
Samba Land
XP
184
Country
Brazil
Dear Game Rulez,
As planned, the legacy project has been discontinued.
This page will only serve to share news or information about the project that is been cooking on Discord Chat.
_________________________________
Update comment at 2017.11.05

:!: Compatibility 3DS vs DS PWAA scripts report:
P.S. If for any reason you can't see the images, this "how-to" is available in this link too.
http://nsmbhd.com.br/pwcrp.htm

Someone has noticed that when trying to force the insertion of 3DS scripts into the DS version, inevitably, at some point, the game may become unstable or freeze.

This is because the scripts of the 3DS version are not completely compatible with the DS version.
Some lines or some instructions may be different, or there is more (or less!)

There are a lot of tools out there that do the comparison between two texts.
Most source code editors already allow you to simulate merge and compare texts visually.

But when it comes to comparing dozens of texts simultaneously, things get a bit more boring.

Of course, the user can do or search for some terminal scripts to satisfy their desire. But I wanted something more personalized. Specific for this case. So I decided to create this little amateur utility, to compare everything at once and generate a single, detailed report, at the level that matters to this.

Based on the 3DS and DS scripts extracted by the OnePieceFreek :download: dialogue_tools_vs2b.zip tool branch,
this tool aims to generate a report that identifies the differences between the various scripts of the 3DS version with the DS version and calculate, based on these indicators, the compatibility index of each of these 3DS scripts with its DS version.

The purpose of this report is to enable translators to facilitate the revision of incompatible lines in each script, taking the respective action of correction or deletion of those lines, for future import in the DS version.

____________________________

placa.gif
Minimum System Requirements:
- Microsoft Windows XP, 2000, 7 or better
- Framework .Net 2.0, or better
- 100 MB disk space
- 512 MB RAM (> 1GB recommended)

software.gif
Tools:
:download: Pwcrp.exe (Phoenix Wright Compatibility Report)
:download: (U) Txt Scripts for 3DS (All 74* 3DS txt files PWAAT - Game 1)
:download: (U) Txt Scripts for DS (All 74* DS txt files PWAA (U) version)
(*)"0" to "73" (= 74)

____________________________
Let's go:


1. Extract the scripts above, each one in a separate folder.
2. Extract Pwcrp.exe from Pwcrp.zip
pwcrp001.png


3. Run Pwcrp.exe.
- select 3DS folder and DS folder
- select "Merge method"
- select "Compare"

pwcrp002.png


In this point, the tool will search in each file from both folders looking row by row for differences. After this, the program will create a "Report3DSxDS.txt"
pwcrp003.png


3. Open the report and see the results.
:download: Report3DSxDS.txt

pwcrp004.png



pwaawell.png

What I suppose to do with this?

The report shows the line, the status and instruction text of each line not found each one of the 74 files (0 to 73). For each line in 3DS file, the program search on entire DS equivalent file. If the line was not found, the program return the line. It doesn't means the line doesn't exist on the DS file. The program don't look if there is an equivalent line in the same position,
because it's not a visual merge program, but says what is the line where the text is not the same. So, the translator can review just the lines incompatible in the source scripts. After this, there is a summary data with total lines found, total lines not found, and the percentage of compatibility based on these indicators. The compatibility rate is inversely
proportional to the number of rows not found in the destination file.

Below there is a use(less) list too, that indicates the incompatibility between scripts. It's not much, so a review for each translated 3DS script can and should focus only on the percentage of lines incompatible with the DS version.
:download: Resumo3DSxDS.txt
 
Last edited by pinet,

pinet

Active Member
OP
Newcomer
Joined
Feb 3, 2015
Messages
38
Trophies
0
Location
Samba Land
XP
184
Country
Brazil
:!: For the Translators and Proofreaders:
___________________________
DS (E) ROM vs DS (U) ROM
There are some differences between DS (E) and DS (U) versions.
If you are translating from english DS (E) version and want force a insert into DS (U) version, you wiil need make adjusts in some lines of code.
A report was create showing these differences.
:download: ReportEDSxUDS.txt

___________________________
3DS ROM vs DS (U) ROM
There are some differences between 3DS and DS (U) versions.
If you are translating from 3DS DS version and want force a insert into DS (U) version, you wiil need make adjusts in some lines of code.
A report was create showing these differences.
:download: Report3DSxDS.txt

___________________________
3DS ROM vs DS (E) ROM
There are some differences between 3DS and DS (E) versions.
If you are translating from 3DS DS version and want force a insert into DS (E) version, you wiil need make adjusts in some lines of code.
A report was create showing these differences.
:download: Report3DSxEDS.txt
 
Last edited by pinet,

pinet

Active Member
OP
Newcomer
Joined
Feb 3, 2015
Messages
38
Trophies
0
Location
Samba Land
XP
184
Country
Brazil
[Tests] Episode 5 - Pre-translated successfully.

Compatible with (U) and (E) DS versions.
Scripts 35-71.
:download: 35-71t_nb_join.zip

(x) Basic translation
( ) Review
( ) Reduction of text with more than 30 characters


For the reduction of text, a report was created containing for each script, the lines that exceed the limit of 30 characters. In this way, it is easier for translators / proofreaders to act directly on specified lines.
:arrow: ReportEps5LinesWithMore30chars.htm

holditsmall.jpg

Hold it!
These scripts have not been reviewed yet.
If you insert these scripts in the game, it will work but...
- the lines with more than 30 chars will be truncate
- the diacritical signs (acute, grave, cedilla etc.) will be supressed
- You'll laugh more than play, because the translation sucks.
 
Last edited by pinet,
  • Like
Reactions: Gamerulez

pinet

Active Member
OP
Newcomer
Joined
Feb 3, 2015
Messages
38
Trophies
0
Location
Samba Land
XP
184
Country
Brazil
PWAA DS Project updates
Merging Verified Files with Max Chars


You'll need:
Improved :download: "Pwopfsft.exe."

There is two ways for review the max lenght of each line in the scripts,
after extract the "Report Alert" (blahblah_verify.txt) on step 4 of the :arrow: main post of this thread.

1. Boring way: :glare:
Open side by side the Pre-Translated script (see step 2 of the main post)
and the Report, and manually locate the line that matches the other.


2. Fast way: ^_^
2.1. Open just the "Report Alert" mentioned above.
2.2. Reduce the amount of characters like you wish.
maxchars01.jpg


2.3. Save and Run "Pwopfsft"
Example:
C:\>Pwopfsft -mvf F:\MyTranslated.txt F:\MyVerifiedLines.txt
Reading lines...
Total lines read: 1610
Total lines found: 122
New file created: F:\MyTranslated_merged.txt
Finish with success! \o/


The result will be a MyTranslate_merge.txt with all replaces.
maxchars03.jpg


That's all for the moment.
 
  • Like
Reactions: Gamerulez

pinet

Active Member
OP
Newcomer
Joined
Feb 3, 2015
Messages
38
Trophies
0
Location
Samba Land
XP
184
Country
Brazil
_____________________
Introducing the AADE Online Translation Tool.


So far I have presented some amateur methods to do a quick translation.
The last post, I showed two methods to do the translation. The boring method, and fast method.

In this post, I'll show you the RIGHT method. ^_^

If you are looking for quality, here below is a highly recommended suitable tool for translation.

The open tool kindly offered by Solid One member, available :arrow: here, allows a detailed visual control of each dialogue presented in the game.

In addition, it allows the user to predict exactly how the text will appear on the screen.
The tool is also compatible with texts extracted from the 3DS and DS version,
since the width of the dialog box is the same for both versions.

_____________________
Let's start:
Enter the :arrow: AADE (Ace Attorney Dialog Editor).

1. Select:
In possession of the extracted scripts of the game
(see as in the main post of this thread),
select the option "Browse"

2. Load:
Press the "Upload" (Enviar) button

AADE01bs.png


_____________________
3. Edit:
The script will appear divided into several pages.
Depending on the size, there may be hundreds of them.
Each dialog is divided into several white boxes of text.
When you type the desired text, the black text box is automatically updated.

AADE03s.jpg


_____________________
4. Preview:

If you want more precision and quality of
how your text will appear on the game screen,
use the "Sandbox" option to test a specific dialogue.

AADE04bs.png


_____________________
5. Save:
When you are satisfied with the translation,
go back to the Dialog Translator and
use the "File" button (Arquivo) and "Save Script" option.

AADE05bs.png



That's all for now.
 
Last edited by pinet,
  • Like
Reactions: Gamerulez

pinet

Active Member
OP
Newcomer
Joined
Feb 3, 2015
Messages
38
Trophies
0
Location
Samba Land
XP
184
Country
Brazil
Posted two videos for test.

First 7 minutes from Episode 1 and Episode 5.
Scripts not inspected.

Json method (ep5) are looping on questioning conversation.

Episode 1 PT-BR experiments (XML method)


Episode 5 PT-BR experiments (Json method)


Patches used:
Episode 1, script 1, XML method, open with 0127 - DS (U)(Legacy) version:
:download: nds-pwaa-episode1-pt-br.zip

Episode 5, script 35, Json method, open with 0395 - DS (E)(Legacy) version:
:download: nds-pwaa-ep5-script35-pt-br.xdelta

Emulator used: DeSmume
Cheat to access all episodes (for 0395 - DS (E)(Legacy) version):
pwaa_allepisodes_desmume_cheat.png

020D0C72 00000050 (2 bytes)
 
Last edited by pinet,
  • Like
Reactions: Gamerulez

pinet

Active Member
OP
Newcomer
Joined
Feb 3, 2015
Messages
38
Trophies
0
Location
Samba Land
XP
184
Country
Brazil
:!: PWSE XML Vs dlgTool2b.py/dlgComp.exe - script compilation issues for PWAA (E) DS version.

______________________________
Problem:

Recompiled JSon scripts by dlgTool2b.py, can enter in loop after press a "talk" button.
The instructions between brackets are the same from original scripts.

(A fast, but "buged" translation from JSon scripts)


Source: Extracted from DlgTool2b.py
Original: 35o_dlgtool2b.zip
Translated: 35t_dlgtool2b.zip

loopline.png

Example above showing the line where the loop occurs.

______________________________
Workaround Solution:
In this example, PWSE XML scripts works fine.
However, the XML translation can not have the benefit of a fast translation method.

(A compatible XML fragment without loop)


Source: Extracted from PWSE
Original script-35o_xml.zip
Translated: script-35_c8-9xml.zip
 
Last edited by pinet,
  • Like
Reactions: Gamerulez

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    K3Nv2 @ K3Nv2: Well start walking towards them +1