Hacking [WIP] Mahouka Koukou no Retousei: Out of Order - English Translation [Out-of-English]

master801

Well-Known Member
OP
Member
Joined
Feb 24, 2011
Messages
1,135
Trophies
1
XP
2,473
Country
United States
English translation project for the PS Vita game Mahouka Koukou no Retousei: Out of Order

Update:
Text can now be injected during runtime on physical copies of the game using the kuio plugin. Although it takes a long time for the game to start up now due to how kuio works, text injection is finally the last hurdle of this project.​
The last issue to tackle now, is for the game to actually be translated into English.​

Sub-Projects:
  • OoE-Plugin
    • Description: A plugin to replace the Japanese text in the game's eboot.bin file. (This should technically support other games as well, although with a couple of tweaks.)
    • Link: https://github.com/master801/OoE-Plugin
    • State: Experimental


  • Out-of-Py:
    • Description: Contains scripts to convert binary files containing Japanese text to .json files. - Makes translating binary files streamlined and clean. No need to mess with files in a hex editor anymore.
    • Link: https://github.com/master801/Out-of-Py
    • State: Complete


  • Out-of-Textures:
    • Description: Script to make converting .dds/.tga texture files into .dds.phyre files streamlined and clean. No need to mess with files in a hex editor anymore.
    • Link: https://github.com/master801/Out-of-Textures
    • State: Complete

Credits:
  • Neoaga - For translating some Japanese text into English in the project's immature state.
  • xyz - For giving me help and pointers when I was creating OoE-Plugin
  • Rinnegatamante
  • Davee


Want to help? Send me a message.
 
Last edited by master801, , Reason: Update

master801

Well-Known Member
OP
Member
Joined
Feb 24, 2011
Messages
1,135
Trophies
1
XP
2,473
Country
United States
that OoE-Plugin is quite interesting, can't wait to try it on other games

Yes, but the plugin only works for Vitamin dumps currently, since I guess that user modules cannot be loaded while NoNpDrm is present. Or at least that's what happened when I tried using the plugin on the NoNpDrm dump.

I poked around and eventually found this repo https://github.com/hz86/mask_of_truth stating that sadly, NoNpDrm cannot be modified.

Support for Vitamin dumps is complete and is pushed to the repo. Support for NoNpDrm is currently being worked on.
 
Last edited by master801,

froid_san

Well-Known Member
Member
Joined
Oct 16, 2015
Messages
213
Trophies
0
XP
1,728
Country
Philippines
Not really a dev here but didn't we already have a way to do NoNpDrm modification of eboot/modules/asset via repatch plugin? though you still need to hex edit the eboot, but maybe you can use the decrypted eboot on the repatch folder to do memory editing of the eboot?


[edit]
wait... I was wrong just remembered NoNpDrm eboot usually have dynamic memory address right?
 
Last edited by froid_san,

master801

Well-Known Member
OP
Member
Joined
Feb 24, 2011
Messages
1,135
Trophies
1
XP
2,473
Country
United States
Not really a dev here but didn't we already have a way to do NoNpDrm modification of eboot/modules/asset via repatch plugin? though you still need to hex edit the eboot, but maybe you can use the decrypted eboot on the repatch folder to do memory editing of the eboot?


[edit]
wait... I was wrong just remembered NoNpDrm eboot usually have dynamic memory address right?

It seems that NoNpDrm does not allow for modules to be loaded, even if the eboot.bin file is decrypted using FAGDec and put it in the rePatch directory. You still end up at square-one with modules not being properly loaded.

The suggested way (from here) is to decrypt the eboot.bin, patch it and put it in rePatch's directory.
 

master801

Well-Known Member
OP
Member
Joined
Feb 24, 2011
Messages
1,135
Trophies
1
XP
2,473
Country
United States
Thanks to some help by Davee, I've managed to solve the issue with text not being injected on encrypted versions (physical copies).

Turns out, encrypted games do not have permissions to read/write from any other storage device (ex: ux0) if they have not already been given permission and plugins use the same permissions as the parent process (the encrypted game). To sum it up, encrypted games do not have permissions to read/write from/to ux0, our target storage device. So, to work around this issue, Davee recommended I use the kuio plugin or something of that nature which bypasses the game's limited permissions.

Due to how kuio works, there is a large overhead when reading/writing files. Currently with 98% eboot text translated to english, the game takes almost 5 minutes to boot up. There are of course other ways to work around this (use an unencrypted version of the game and avoid kuio's overhead entirely), but that would mean limiting it only for that specific platform, which I don't plan on supporting.
 

froid_san

Well-Known Member
Member
Joined
Oct 16, 2015
Messages
213
Trophies
0
XP
1,728
Country
Philippines
Correct me on this one, I think ioplus by dots-tb fuction similarly to kuio since I've seen dev post bout advising the dev of forcelang plugin to use ioplus instead of kuio since i believe it has better fuctionality and more recent.

you may also want to look into that.
 

master801

Well-Known Member
OP
Member
Joined
Feb 24, 2011
Messages
1,135
Trophies
1
XP
2,473
Country
United States
The plugin and tools are now finished.

I consider the project complete and at an entire standstill until the game's text is translated into English.
 
  • Like
Reactions: raystriker

master801

Well-Known Member
OP
Member
Joined
Feb 24, 2011
Messages
1,135
Trophies
1
XP
2,473
Country
United States
Where i can find the plugins sir? i already check the realease at your git

I've published the releases.

https://github.com/master801/OoE-Plugin/releases/tag/Alpha-1
https://github.com/master801/Out-of-Bin/releases/tag/Alpha-1

Remember to use either the official game that comes on a cartridge or NoNpDrm and the most updated version of the game.

Using the vpk or mai versions of the game will not work due to how games are loaded and since both loaders modify the eboot.
 
Last edited by master801,

Yukugurl357

Active Member
Newcomer
Joined
Dec 5, 2018
Messages
27
Trophies
0
Age
30
XP
199
Country
United States
HI ppl im confused on this topic. Do these plugins work on other games or just this Mahouka Koukou no Rettousei
i read in the comments that it only works on vitamin then i read that it works or does not work on nonpdrm. Which type should i install?
 

master801

Well-Known Member
OP
Member
Joined
Feb 24, 2011
Messages
1,135
Trophies
1
XP
2,473
Country
United States
HI ppl im confused on this topic. Do these plugins work on other games or just this Mahouka Koukou no Rettousei
i read in the comments that it only works on vitamin then i read that it works or does not work on nonpdrm. Which type should i install?

Should work with other games, but I can't guarantee it'll work at all, or even well enough.

I haven't test it with vitamin yet, but it should be compatible, since the plugin works with nonpdrm.

The plugin is experimental, it has issues I'm aware of, use it at your own risk.
 

Yukugurl357

Active Member
Newcomer
Joined
Dec 5, 2018
Messages
27
Trophies
0
Age
30
XP
199
Country
United States
for the directions do i add the plugin to ux0 or ur0? i dont have urx0. then do i edit the config.txt in ur0 or ux0?
 

Yukugurl357

Active Member
Newcomer
Joined
Dec 5, 2018
Messages
27
Trophies
0
Age
30
XP
199
Country
United States
Plugin only works on ux0
oh ok so i put 0oE-plugin in ux0:tai? but i dont have anything in that folder do i put the 0oE-plugin in that folder create config.txt
Add lines:
*PCSG00456
uX0:data/OoE-Plugin.suprx
How about the kuio.skprx? does this plugin only work in ux0 too?
The directions say to put in ur0 and edit the config.txt there
sorry I really want to get the best out of this to see if it will work.
Can I to test it out?
btw i love what you have done already.
 
Last edited by Yukugurl357,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    SylverReZ @ SylverReZ: @Psionic Roshambo, Thats pretty cool.