Jump to content

Script Extraction Thread


Recommended Posts

  • 2 weeks later...
On 6/25/2021 at 2:24 PM, Tgsaudoi said:

So About Silky engine, im use Gabro to extract MES files from script.arc and done with edit MES files. So how can I pack it in Script.arc again or how to use it?

You don't need to actually repack it. More data about translation the games on Silky Engine can be found here (warning: Russian only!). See " Как работать с архивами? " section there.
Also you may want to use this tool to edit MES files.

Link to comment
Share on other sites

11 hours ago, Tester said:

You don't need to actually repack it. More data about translation the games on Silky Engine can be found here (warning: Russian only!). See " Как работать с архивами? " section there.
Also you may want to use this tool to edit MES files.

So how can i use the edited MES files?, where i have to put it?

Link to comment
Share on other sites

  • 3 weeks later...

Once again, this thread should be updated, because there was new tool created.
See this topic.

===

After some time tampering with SLG System engine, I did create a tool to work with it's scripts. And not just simple string editor, no.

SLGScriptTool is dual languaged GUI tool for (de)compiling and (de/en)crypting (with key finding) scripts of SLG System engine. Supports all known versions of SLG System: 0, 1, 2, 3 (3.0, 3.1), 4 (4.0, 4.1), but may lack of support of some it's variations. With this tool you can: decompile and compile script of SLG System, (en/de)crypt script of any game on SLG System, find key of any game on SLG System via cryptoattack.

Link for the tool: https://github.com/TesterTesterov/SLGSystemScriptTool
Built release (for x64 and x32): https://github.com/TesterTesterov/SLGSystemScriptTool/releases/tag/v1.0

Why SLG System is so noteworthy? Legendary series Sengoku Hime and Sangoku Hime (PC version) does use this engine (well, Sengoku Hime 7 and probably Sangoku Hime 5 does use Unity, but pay it no mind).

Now with SLGSystemDataTool and some HEX-editing of supplement data files it is possible to translate whose game series.

Edited by Tester
New topic.
Link to comment
Share on other sites

  • 4 weeks later...

Hi. I wish to translate the game "Yami no koe" / "The Voice in the Night" by Black Cyc (https://vndb.org/v3334).

I search on this forum and found Garbo. I tried this tool and can extract every game arts but not the script. The scripts are already editable.

The scripts are .spt file. I have found post talking about a tool gsppt but can't find how to download it.

Does someone have a tool for depacking / packing script file ?

Link to comment
Share on other sites

Hey, i extracted the script from https://vndb.org/v5233, and i can not read it (nor can i open the cgs or the ost). I guess it's encrypted, but i have no idea how to open them, even after trying what's in the op. I don't know even if the files extracted are or not corrupted.

I put the scripts and .xp3 file in here, in case someone can help me.

https://mega.nz/folder/5oZhAAbY#EZYphfxwWIaO0szMlp9cBw

Link to comment
Share on other sites

  • 2 weeks later...

Hi! I've been trying to work with Sadistic Blood scripts. Since it's from Black Cyc, gsspt tool can extract text, but when I try to insert changed text nothing in .spt file changes. So it doesn't in game.

The only difference I noticed between Gore Screaming Show scripts and Sadistic Blood's are paragraphs, but it doesn't look like an issue.

Does someone know a way to workaround it?

Link to comment
Share on other sites

  • 1 month later...

I've been working on extracting the script files from Reminiscence that are in the .mjo file format(https://vndb.org/v7773) because there is someone that I am helping that is fluent in Japanese and wants to mess around with the script files. I've been able to extract every script except around 10 scripts that seem to be related to the story.

The tool that I was using to extract the scripts is https://github.com/Inori/FuckGalEngine/tree/master/Majiro/mjdev and the error I get when I try to extract the stubborn scripts is "Fatal error: exception Failure("unknown command text_control_7a at 0x00199d")", "Fatal error: exception Failure("unknown command text_control_64 at 0x006002")",  and"Fatal error: exception Failure("unknown command op845 at 0x0024c3")" seem to be the most common errors.

I found a tool that actually seems to be for the game (https://github.com/regomne/chinesize/tree/master/Majiro/hook_proj)  but I've been unable to build it.

Does anyone know a work around or another tool that might work?

Edited by kralc
Forgot to add script file format
Link to comment
Share on other sites

1 hour ago, kralc said:

I've been working on extracting the script files from Reminiscence that are in the .mjo file format(https://vndb.org/v7773) because there is someone that I am helping that is fluent in Japanese and wants to mess around with the script files. I've been able to extract every script except around 10 scripts that seem to be related to the story.

The tool that I was using to extract the scripts is https://github.com/Inori/FuckGalEngine/tree/master/Majiro/mjdev and the error I get when I try to extract the stubborn scripts is "Fatal error: exception Failure("unknown command text_control_7a at 0x00199d")", "Fatal error: exception Failure("unknown command text_control_64 at 0x006002")",  and"Fatal error: exception Failure("unknown command op845 at 0x0024c3")" seem to be the most common errors.

I found a tool that actually seems to be for the game (https://github.com/regomne/chinesize/tree/master/Majiro/hook_proj)  but I've been unable to build it.

Does anyone know a work around or another tool that might work?

from the error messages, it seems that tool isn't able to understand those opcodes in the script.
0x7A, 0x64 and the third one...
usually means programmer hasn't come across those OP codes in the game engine yet, or you're working with a later version of the game engine

Link to comment
Share on other sites

21 hours ago, kralc said:

I've been working on extracting the script files from Reminiscence that are in the .mjo file format(https://vndb.org/v7773) because there is someone that I am helping that is fluent in Japanese and wants to mess around with the script files. I've been able to extract every script except around 10 scripts that seem to be related to the story.

The tool that I was using to extract the scripts is https://github.com/Inori/FuckGalEngine/tree/master/Majiro/mjdev and the error I get when I try to extract the stubborn scripts is "Fatal error: exception Failure("unknown command text_control_7a at 0x00199d")", "Fatal error: exception Failure("unknown command text_control_64 at 0x006002")",  and"Fatal error: exception Failure("unknown command op845 at 0x0024c3")" seem to be the most common errors.

I found a tool that actually seems to be for the game (https://github.com/regomne/chinesize/tree/master/Majiro/hook_proj)  but I've been unable to build it.

Does anyone know a work around or another tool that might work?

I actually found a tool to view and edit the text (https://github.com/regomne/lneditor) but I'm not sure how to save it correctly because the GUI is in Chinese. Would someone be able to help me?

  p2xvdBz.png

 

Link to comment
Share on other sites

  • 2 weeks later...

Hello, currently i am having Chinese version of Kajiri Kamui Kagura, i want to extract the script but so far no method has been working for me such as Enigma or Garbro. Can someone help me on this? I am suspecting that the exe file might be the same with Fortissimo Chinese.

Here's the game in case someone need: https://drive.google.com/file/d/1aXiUB6JjHEJrdkNWzH4zYhHuH2kQWxgK/view

Link to comment
Share on other sites

  • 2 weeks later...

Hey there. I want to access the script files of Starless.
I managed to extract the scenario.arc file and it gave me .mjo files that seem to be encrypted since they show gibberish. What tool can I use for that? 
I must point out I extracted the script files for the ENGLISH version, in case that might the reason the script is showing as gibberish. This is just for personal use to compare and study the translation. I will extract the Japanese script later.

Link to comment
Share on other sites

  • 2 weeks later...
  • 2 weeks later...
On 11/7/2021 at 10:29 AM, dullian said:

Hey there. I want to access the script files of Starless.
I managed to extract the scenario.arc file and it gave me .mjo files that seem to be encrypted since they show gibberish. What tool can I use for that? 
I must point out I extracted the script files for the ENGLISH version, in case that might the reason the script is showing as gibberish. This is just for personal use to compare and study the translation. I will extract the Japanese script later.

It's majiro engine https://github.com/Inori/FuckGalEngine/tree/master/Majiro/mjdev use that to extract the script

Link to comment
Share on other sites

On 10/15/2021 at 9:36 AM, kralc said:

I actually found a tool to view and edit the text (https://github.com/regomne/lneditor) but I'm not sure how to save it correctly because the GUI is in Chinese. Would someone be able to help me?

  p2xvdBz.png 

I know how to hack reminiscence, I tried both Ineditor and mjodev, guess what it works, if you want to translate to English then it's easy. I tried with my language:unknown.png?width=754&height=452

Link to comment
Share on other sites

  • 4 weeks later...
On 5/30/2021 at 8:53 AM, darksshades said:

Now.... this is the file where the items descriptions text is:

Hmm, so thou had problem with that text structure? Probably late, but I'll give one hint about this one structure. That description text "in the sea of 0x00" is somewhat close to... yes, "fixed string in the sea of 0x00", as I call it.

Basically, there are N bytes in this structure (often 2^n, but not always). If the actual string is not "", then the structure begins from the string bytes. Basically, it has constant size unrelated to string size. To unpack it just... read all N bytes from the structure and from it take all non-0x00 bytes, then decode. You'll have string. I think you've already know how to pack it now.

Edited by Tester
Link to comment
Share on other sites

So long I was wanting to do that, yet only now I had time to.

In the previous year I did hack Silky Engine's mes files and created a tool, mesScriptAsseAndDisassembler. Alas, it was (like gscScriptCompAndDecompiler) far from ideal. It worked with general scripts, but 1) it could not (dis)assemble any technical scripts; 2) it did not work with LIBLARY.LIB, specific script; 3) it did not worked if one of parameters had one unimplemented value. Also it had some problems with optimization, code style, strings, lack of mass conversion and such.

But the time changed. Here is new mesScriptAsseAndDisassembler 1.2.

Now this tool was fully refactored and all of them were fixed. Now you can use it without fear of common problems.
Here is the change log...

1) Full code refactoring in both GUI and script managing class.
2) Normal tests in main.
3) Big optimization for mes script management.
4) Many mistakes, such as incorrect bytes or incorrect string returning, fixed.
5) Added directory management option.
6) Added some convenient functionality in GUI. For example, auto guessing name of other file after choosing one.
7) Now use threading system, so no locking GUI (well, almost... it can be for a very little time in case of directory management).
8 ) Completely new installation script.
9) More data in .exe.
10) Help data updated.
11) Now support more scripts and gives more correct output to some arguments due to implementing new argument parsing system (close to that in SLGSystemScriptTool).
12) Fixed very rare case then header contain one more section.
13) Some new commands were named.
14) Now work with LIBLARY.LIB like with any mes script.

Edited by Tester
Link to comment
Share on other sites

Now, having hacked all Silky/Elf line archives (AI5WIN's, AI6WIN's and Silky Engine's) and totally upgraded tool for Silky Engine's scripts, I turn my eyes to AI6WIN's scripts.

Yes, they were also hacked. Disassembler and assembler tool was written for them: AI6WINScriptTool. I admit, this is quite "lazy tool", but it is enough for fantranslations.

Alas, they were rather dissapointing. They are somewhat close to Silky Engine's, but have only 1 header section instead of 2. There are also some commands differences. But... that is all. They were, actually, even easier than Silky Engine's scripts.

Edited by Tester
Link to comment
Share on other sites

I am truly surprised that I could deal with AI5WIN scripts withing so little time. I though it'd take about a week. Scripts of AI5WIN, as archives, are more complicated then AI6WIN's and Silky Engine's, definitely so. I understand now why no proper decompilers&compilers or at least disassemblers&assemblers were done by now. You cannot just properly disassemble "complex structures" (as I call it) as plain opcodes here (or it's just me who could not). Still it is not as problematic as in SLG System scripts.

Also it is not only the scripts themselves that are hard, there is also a big version difference. I managed to get quite a few games, 6 of them (3 different releases), so I think I supported not all versions. But by now that three would be enough.

Here is the tool: AI5WINScriptTool.

=== These screenshots proof that it works (from Shangrlia)...

147509098-7ef5b175-a673-4405-99b3-187c94

 

147509113-2f76a30f-e05c-4cd6-a47a-8ca371

 

Edited by Tester
Link to comment
Share on other sites

Hello, I'm having trouble with the scripts for the Shingakkou series (the original game and the two fan discs) by Pil/Slash.

The games seem to run on their own custom engine instead of a commercial one like NScripter or kirikiri. All files are contained in .dat archives that I can easily extract by using arc_conv. The visual assets and audio files aren't encrypted, so just running arc_conv is enough to obtain those files. The problem lies with the scripts.

The scripts are encrypted as .scn files. Now, I must once again stress that the Shingakkou series does not run on kirikiri. Those scripts are .scn,.. NOT .ks.scn or .txt.scn. After testing three different tools meant to work on .scn kirikiri files (just in case), none of them worked. It's very likely that Shingakkou's .scn and kirikiri's .scn are different types of file whose extensions happen to share the same name.

When I say the scripts are encrypted, I mean this: when opening those .scn on Notepad++, they only show gibberish even when changing the locale to Shift-JIS. Now, even though the scripts show gibberish, the filenames for backgrounds and voiced lines are clearly readable. To showcase this:

Here's a raw .scn script open in Notepad++:

OYcl6KO.png

Now, for the sake of making things more readable, let's temporarily remove the control characters:

kGlHsjE.png

This is what we get. "bg_019a" is the filename of a background, and "augu_august_ed_bad1_00001" is the filename of a voice file.

"00000D_0000qN0_m@W,g_0}00_k0c0S003___" is supposed to be the filename of a character sprite, but those are all written in Japanese characters which can't be properly displayed. It becomes obvious when you compare it to the way the character sprite filenames are structured:

ZC0sF5m.png

So yes, there must be a readable script in there, I simply don't know how to decrypt it. Of course, I can't rule out the possibility of arc_conv messing up the scripts when it extracted them from the sin_text.dat archive.

Any help would be very appreciated. Here's a folder containing all the extracted .scn files and here's the original archive.

Also, to clarify: I have tried using GARbro. It was in fact my first choice, however GARbro can only open some of the .dat archives and even those that it can open won't extract properly. I'm also using Japanese locale, that's how arc_conv managed to extract the character sprites without messing up their filenames.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...