Cyber Knight translation

Started by megatron-uk, 02/05/2014, 01:03 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

megatron-uk

I have an update with most of the starting menu's and stats screens in the game.

The following are now converted:
  • Starting a new game - name entry, abilities screen
  • Opening cinema (excluding scrolling intro)
  • Loading a save game from BRAM (excluding a very small amount of text, only 4-5 characters)
  • Loading a save game from password
  • Viewing the player party stats both in-ship and from the overworld map

Here's what the partially translated player name entry looked like after my initial work:
IMG

Here's the fully translated version including Kanji replacement:
IMG
Unfortunately I had to lose a character from the 'Del' command, hence 'Rm' (Remove). If it's a deal breaker I may look at it again.



Here's the initial version of my translation for the player skill point assignment screen, including the players teammates with their translated names:
IMG

And here's the final version:
IMG



This is the in-game player/teammate stats screen, which included the translated names and skills:
IMG


And this is the final version, with all text and Kanji replaced:
IMG




The load save game screen originally looked like this:
IMG

Here it is now - some small edits still to do, but it's in 90% English now (all the messages the Doctor says are now translated):
IMG



So what's next? Finish off the 'load save from password' screen, and then every single initial game menu screen is finished 100%. Next move on to the main in-game screens - already got a good 75% of the status screen that pops up while in the overworld map (list inventory [no items translted yet!], apply repair/medkit etc). And then the in-ship menus, which will make navigating and testing the game easier.

Psycho Punch

Pretty cool, I guess you intend to release a 100% translation patch? Looking forward to it.
This Toxic Turbo Turd/Troll & Clone Warrior calls himself "Burning Fight!!" on Neo-Geo.com
For a good time, reach out to: aleffrenan94@gmail.com or punchballmariobros@gmail.com
Like DildoKobold, dildos are provided free of charge, no need to bring your own! :lol:
He also ran scripts to steal/clone this forum which blew up the error logs! I had to delete THOUSANDS of errors cause of this nutcase!
how_to_spell_ys_sign_origin_ver.webp

megatron-uk

That's the intention. Of course, all of the tools I've written to do this, and the individual patches themselves are all up on my github repository, so anyone can feel free to take the content and do what they want - change the text, grammer or language, if they feel like it. Or simply apply the patches to their own copy of the original Japanese rom file.

megatron-uk

#103
Last update for the weekend.

Most of the in-ship menus are now translated (some better than others - most only have 5 characters of width to play with). This is just a first pass at them, they'll need some work to fit better and some could do with changing: 'Heal' instead of 'Treat', for example.

The 'mecha hangar' screen isn't finished yet as there are loads of sub-menus and sub-options to go through, all to do with reconfiguring your mecha, browsing the parts database etc.

Anyway, here's a picture of the latest in-ship screenshots. This patch isn't up on github yet, but everything else done so far is.

spenoza

I see "search" is a bit long. Would "scan" be an appropriate synonym in this situation?

megatron-uk

Quote from: guest on 03/17/2014, 12:36 PMI see "search" is a bit long. Would "scan" be an appropriate synonym in this situation?
Yep, that's one that needs a rethink. 'Scan' would certainly work in that situation - but I'll have to change 'Scan' in the lab screen to something else... 'Data' perhaps?

They're supposed to be 'Survey' and 'Analyse', respectively.

spenoza

Quote from: megatron-uk on 03/17/2014, 12:59 PM
Quote from: guest on 03/17/2014, 12:36 PMI see "search" is a bit long. Would "scan" be an appropriate synonym in this situation?
Yep, that's one that needs a rethink. 'Scan' would certainly work in that situation - but I'll have to change 'Scan' in the lab screen to something else... 'Data' perhaps?

They're supposed to be 'Survey' and 'Analyse', respectively.
A synonym would certainly be better than an abbreviation. I get the feeling people would be REALLY confused when confronted with SURV as a menu option, or especially if they were trying to figure out what ANAL would do.

What does the search function do? You might be able to keep scan if we look at other alternatives. Hunt? Ping?

megatron-uk

Quote from: guest on 03/18/2014, 05:30 PMA synonym would certainly be better than an abbreviation. I get the feeling people would be REALLY confused when confronted with SURV as a menu option, or especially if they were trying to figure out what ANAL would do.

What does the search function do? You might be able to keep scan if we look at other alternatives. Hunt? Ping?
Yeah, 'ANAL' is an option from a whole other game genre :lol:

The Search/Survey function scans a nearby planet(s) and then pops up a box where the ship AI describes the planet in detail (atmosphere, technology, points of interest etc). Analyse in the Lab screen is the method used to get information from recently defeated enemies to learn new technologies and weapons.

'Scan' and 'Data' is probably sufficient to describe those two functions.

megatron-uk

Quick update!

I now have the following sections identified and extracted:

0x1400c-0x1b8cd - INCOMPLETE - Main game story dialogue.json
0x1b8d6-0x1bfdf - COMPLETE - Intro_scrolling.json
0x1c040-0x1c90d - INCOMPLETE - Game menus and save screens.json
0x1c952-0x1ca2b - COMPLETE - Further game menus.json
0x1cbad-0x1ccac - INCOMPLETE - NPC_names.json
0x1d59f-0x1dc7a - INCOMPLETE - Weapon names.json
0x1dc87-0x1dee3 - INCOMPLETE - Shipboard_menus_1.json
0x1e71c-0x1ea86 - INCOMPLETE - Professor lab screen.json
0x1ea88-0x1ec00 - INCOMPLETE - Mecha overview screen.json
0x1ec08-0x1edfa - INCOMPLETE - Possibly Closing Credits?.json
0x1ee0f-0x1f0df - INCOMPLETE - Game Credits.json
0x1f0f4-0x1fb3f - INCOMPLETE - unknown.json
0x28086-0x29efe - INCOMPLETE - MICA and player dialogue.json
0x29efe-0x2a1af - COMPLETE - Intro_cinema.json
0x2a74c-0x2a930 - COMPLETE - Lights_out_after_intro.json

Virtually all of the game menus are now in english, with just a few (one or two in the hangar/mecha screen and the two 'save game', 'save password' in the med bay screen) left to find.

A good chunk of the weapons/items that are available from the start of the game have had both their name and description translated into english (see images below), but I've yet to find the location of their stats (weapon strength, size, 1/2handed etc).

Translated and retitled most of the main 'display mecha stats' screen.

Translated all of the 'equip your mecha' screen.

Mecha names need translating.

Some NPC names need translating.

Found the main game dialogue and extracted it.

Found the dialogue that is shown when scanning a planet - it's also extracted.

Translated all of the pause-game menu options (heal/repair/show item screen etc), as well as the actions you can perform from there; choose a medic and heal one of your party, choose a tech/engineer and fix one of you party's mecha. etc.

Here's some the images of the new progress:

Screenshot-Cyber Knight (E)-2.png

jeffhlewis

#109
You still need any of this stuff translated, or are these some of those dreaded double-height kanji?

That plasma gun one is reading:

PlasmaGun
Type: Gunshot (Shooting? Firing?)      Hand: 1H         Size: S
Power: Beam            10

megatron-uk

#110
Got them - just need to find the actual occurences in the file for the categories (type, size, etc), the actual data has been converted, but I'm trying to find the position in the rom where 'Type','Size' and 'Power' are stored, at the moment it's eluding me!  :lol:

Here's what it's looking like now, and the difference between a 'shooting' weapon, and an option item (grenade/rocket/missile pack etc), and a field (screen/barrier/jammer) item....

megatron-uk

Just committed a big update to github - this has patches for almost all weapon names and their descriptions, an initial pass at translating enemy names, the battle screen menu interfaces (one or two glitches there), as well as starting the dialogue shown from the scientist when analysing enemy wreckage to earn new parts.

Lots more done, still lots to do!

megatron-uk

Anyone care to help translate the list of NPC names or enemy names:

NPC names:
クレイン Klein
キリ Kiri
シャイン Shine
ヴィンド Vynd
ニジ‐ナ Nejena
MICA MICA
キプテン Captain
パイロット Pilot
プロフェッサ‐ Prof.
ドクタ‐ Dr.
エンジニア Engineer
バックアップメモリ BackupRAM
きぉうじ Ouji ???
だいとうりぉう Daito ???
だいとうりぉうふじん Mrs Daito ???
トレ‐ダ‐ Trader
ロボット Robot
シ‐クラン
ちぉうろう
げんしじん
しうちぉう
いわ Rock
シリコンせいぶつ Silicon Life
クジラ Whale
サソリ Scorpion
かいぞく Pirate
きかい
へいし Soldier
しぉうぐん Shogun
しれいかん Cmmdr
ガライシアン Garaian
スラウレ Suraure
クイ‐ン
メンタ‐ナ Mentana

Enemy names:
ビッグフット Bigfoot
サスカッチ Yeti
ウェンディゴ Wendigo
マンドレイク Mandrake
アルラウネ Arurune
サラマンダ‐ Salamander
タッツェルブルム Tatzelwurm
ナイトガ‐ント Nitegaunt
デュラハン Durahan
ハ‐ピ‐ Harpy
ユ‐ウォ‐キ‐
シムルグ Grifon
グレムリン Gremlin
フィフィネラ Fifinela
スパンジュ‐ル
ジャバ-ウォック Jaberwocky
カトブレパス Catoblepas
ガンカナ‐ Gunner
シ‐オ‐ク Shioku
メロウ Melo
リャナンシ‐ Faery
バンシ‐ Banshee
ザラダン Zaradan
バハム‐ト Bahamut
スキュラ Scyla
テュポ‐ン Typhon
ミナトン Minaton
ゴルゴン Gorgon
ファ‐ゴルタ Fagorut
ファ‐ジャルグ
ガネ‐シャ Ganesha
チャウグナ‐ Chaugnar
ブラウニ‐ Brownie
クルラホ‐ン
レプラホ‐ン Leprechaun
ラクシャサ Rakasha
ジャガナ‐タ Jaganata
クラ‐ケン Kraken
ガタノソア Ghatanothoa
バ‐サ‐カ‐クイ‐ン
ギズモ Gizmo
ウィスプ Wisp
ブル‐ウィプス Blue Wisp
サンドクロ‐ラ‐
ロッククロ‐ラ‐
パイロワ‐ム
ブロッブ Blob
シリコニ‐ Shirikoni
デビルアイ DoubleEye
イ‐ビルアイ OneEye
クアドケラトプス Quadceratops
メガケラトプス Megaceratops
ダイモザウルス Dymo Saurus
アラクニザウルス Ara Kuni Saurus
レプタントスカウト Replicant Scout
レプタントレイバ‐ Replicant Leyvia ???
レプタントロイヤル Replicant Lord ???
パイレ‐ツガンナ‐ Pirate Gun
パイレ‐ツヘッド Pirate Head
パイレ‐ツキング Pirate King

jeffhlewis

#113
Taking a stab here at some...maybe some hints if you know the context of the sentences they're used in.

シ‐クランShi Clan ???
げんしじんGenshi-Jin (Atom Man?)
きかいOpportunity
クイ‐ンQueen

バ‐サ‐カ‐クイ‐ンBerzerker Queen (i think)
サンドクロ‐ラ‐Sandcrawler
ロッククロ‐ラ‐Rockcrawler
パイロワ‐ム Bailo Waamu (Bilo Worm ???)
レプタントレイバ‐Replicant Leyvia ??? (second word might be "labor" or " lever")
レプタントロイヤルReplicant Lord ??? (second word might be "loyal" or "royal")

megatron-uk

Quote from: jeffhlewis on 03/27/2014, 10:12 PMTaking a stab here at some...maybe some hints if you know the context of the sentences they're used in.

シ‐クランShi Clan ???
げんしじんGenshi-Jin (Atom Man?)
きかいOpportunity
クイ‐ンQueen
Thanks for those - I didn't pick any of those up.

Quoteバ‐サ‐カ‐クイ‐ンBerzerker Queen (i think)
That sounds right. The main enemy in the game are the robotic 'Berzerkers'.

Quoteサンドクロ‐ラ‐Sandcrawler
ロッククロ‐ラ‐Rockcrawler
I did pick up the rock/sand thing. I thought they may be variations on the same enemy. Thanks!

Quoteパイロワ‐ム Bailo Waamu (Bilo Worm ???)
Maybe Bile Worm?

Quoteレプタントレイバ‐Replicant Leyvia ??? (second word might be "labor" or " lever")
レプタントロイヤルReplicant Lord ??? (second word might be "loyal" or "royal")
Replicant Laborer / Slave / Worker for the former perhaps?

'Royal' is a bit ambiguous - that's one the reasons I thought 'Lord' might be better - though I don't know the context as I've not played through the game.

megatron-uk

Added in the translations for the enemy names and I'm now over-size for that section  :(  I can handle individual names longer or shorter than original (my inserter script will pad if required, or leave shorter strings as-is to free up additional space for any longer ones), but I've got a hard limit of 555 bytes for the entire section. I'm up at 566 with the current names.  I'm probably going to have to go through and shorten some of them. One of the big culprits is the 'Replicant' name - 'Replicant Scout' is not only long in terms of bytes, it will also be long in on-screen terms.... perhaps 'RepliScout' and 'RepliWorker' ....  :-k

jeffhlewis

Thinking a bit more after reading your responses - I took 4 years of Japanese in High School and that's what I'm working with here, so needless to say I'm very rusty, haha.

シ‐クランShi Clan

The more I think about this - the "Shi-" might translate to "C-" as in "C-Clan." Again - totally depends on the context. The katakana reads "Shii-Ku-La-N"

きかいOpportunity

As I was taught, "kikai" generally means "opportunity" but it can mean a bunch of different things according to some online dictionaries:
-Opportunity
-Chance
-Instrument
-Machine
-Mechanism
-Strange
-Weird
-Etc....

Source: http://www.kanjijapanese.com/en/dictionary-japanese-english/kikai

megatron-uk

#117
QuoteThe more I think about this - the "Shi-" might translate to "C-" as in "C-Clan." Again - totally depends on the context. The katakana reads "Shii-Ku-La-N"

きかいOpportunity

As I was taught, "kikai" generally means "opportunity" but it can mean a bunch of different things according to some online dictionaries:
-Opportunity
-Chance
-Instrument
-Machine
-Mechanism
-Strange
-Weird
-Etc....

Source: http://www.kanjijapanese.com/en/dictionary-japanese-english/kikai
Machine .... that's interesting. It ties in with the whole Berzerker robot army theme.

I wish I had a copy of the SNES script. As it is, if I want it, I'll either have to play right through the SNES translation, or write another set of tile lookups and extraction scripts for that too. I really don't fancy doing that, just to get the full listing of what they translated. (and anyway, there are apparently differences in the game too).

Edit: There's some interesting background information (that I haven't been able to find elsewhere) on the Japanese wikipedia page

esteban

Quote from: guest on 03/28/2014, 06:44 PMI have nothing to contribute other than praise. I knew nothing of this game before you made this thread, megatron. And now I'm friggin excited about this project! Looks like such an awesome game... thanks for your efforts on this!
Ditto. Ditto.
IMGIMG IMG  |  IMG  |  IMG IMG

ccovell

Quote from: megatron-uk on 03/27/2014, 07:19 PMAnyone care to help translate the list of NPC names or enemy names:

NPC names:
クレイン Klein  <-- Crane
キリ Kiri
シャイン Shine
ヴィンド Vynd
ニジ‐ナ Nejena
MICA MICA
キプテン Captain   <-- "Cptain".  Are you missing small kanas?
パイロット Pilot
プロフェッサ‐ Prof.
ドクタ‐ Dr.
エンジニア Engineer
バックアップメモリ BackupRAM
きぉうじ Ouji ??? <-- Prince
だいとうりぉう Daitoryou  <-- President
だいとうりぉうふじん Mrs Daito <--- 1st Lady
トレ‐ダ‐ Trader
ロボット Robot
シ‐クラン
ちぉうろう <-- Elder (or City Elder)
げんしじん <-- Caveman (maybe)
しうちぉう <-- Chief
いわ Rock
シリコンせいぶつ Silicon Life
クジラ Whale
サソリ Scorpion
かいぞく Pirate
きかい
へいし Soldier
しぉうぐん Shogun
しれいかん Cmmdr
ガライシアン Garaian <-- Garaician
スラウレ Suraure
クイ‐ン   <--- Queen
メンタ‐ナ Mentana

Enemy names:
ビッグフット Bigfoot
サスカッチ Yeti
ウェンディゴ Wendigo
マンドレイク Mandrake
アルラウネ Arurune
サラマンダ‐ Salamander
タッツェルブルム Tatzelwurm
ナイトガ‐ント Nitegaunt
デュラハン Durahan
ハ‐ピ‐ Harpy
ユ‐ウォ‐キ‐
シムルグ Grifon
グレムリン Gremlin
フィフィネラ Fifinela
スパンジュ‐ル
ジャバ-ウォック Jaberwocky
カトブレパス Catoblepas
ガンカナ‐ Gunner  <-- "Guncaner"
シ‐オ‐ク Shioku  <-- Sea Orc
メロウ Melo
リャナンシ‐ Faery
バンシ‐ Banshee
ザラダン Zaradan
バハム‐ト Bahamut
スキュラ Scyla
テュポ‐ン Typhon
ミナトン Minaton
ゴルゴン Gorgon
ファ‐ゴルタ Fagorut
ファ‐ジャルグ
ガネ‐シャ Ganesha
チャウグナ‐ Chaugnar
ブラウニ‐ Brownie
クルラホ‐ン
レプラホ‐ン Leprechaun
ラクシャサ Rakasha
ジャガナ‐タ Jaganata
クラ‐ケン Kraken
ガタノソア Ghatanothoa
バ‐サ‐カ‐クイ‐ン <-- Berserker Queen
ギズモ Gizmo
ウィスプ Wisp
ブル‐ウィプス Blue Wisp
サンドクロ‐ラ‐ <-- Sandcrawler
ロッククロ‐ラ‐ <-- Rock Crawler
パイロワ‐ム    <-- Pyro Worm
ブロッブ Blob
シリコニ‐ Shirikoni   <-- "Siliconi"
デビルアイ DoubleEye   <--- Devil Eye
イ‐ビルアイ OneEye    <-- Evil Eye
クアドケラトプス Quadceratops
メガケラトプス Megaceratops
ダイモザウルス Dymo Saurus
アラクニザウルス Ara Kuni Saurus   <-- Arachnisaurus
レプタントスカウト Replicant Scout
レプタントレイバ‐ Replicant Leyvia ???
レプタントロイヤル Replicant Lord ???
パイレ‐ツガンナ‐ Pirate Gun <-- Pirate Gunner
パイレ‐ツヘッド Pirate Head
パイレ‐ツキング Pirate King

BigusSchmuck

AWESOME! I hope there will be more translations in the future.

megatron-uk

#121
Thanks Chris.

I'll check the Captain text again, but it should be correct.

Yep, sorry, the extraction was messed up on that list. The NPC list is one of my earlier extractions and was missing several characters.

I've just re-run it and it now shows as the following:

0x1cbae クレイン Klein
0x1cbb4 キリ Kiri
0x1cbb8 シャイン Shine
0x1cbbe ヴィンド Vynd
0x1cbc6 ニジ‐ナ Nejena
0x1cbcf MICA
0x1cbd5 キャプテン Captain
0x1cbde パイロット Pilot
0x1cbe7 プロフェッサ‐ Prof.
0x1cbf2 ドクタ‐ Dr.
0x1cbfa エンジニア Engineer
0x1cc07 バックアップメモリ BackupRAM
0x1cc14 きょうじゅ
0x1cc1b だいとうりょう President
0x1cc24 だいとうりょうふじん First Lady
0x1cc31 トレ‐ダ‐ Trader
0x1cc39 ロボット Robot
0x1cc40 シ‐クラン Shi Clan
0x1cc47 ちょうろう
0x1cc4d げんしじん Atom Man
0x1cc55 しゅうちょう
0x1cc5c いわ Rock
0x1cc5f シリコンせいぶつ Silicon Lifeform
0x1cc6b クジラ Whale
0x1cc71 サソリ Scorpion
0x1cc76 かいぞく Pirate
0x1cc7c きかい Machine
0x1cc80 へいし Soldier
0x1cc84 しょうぐん Shogun
0x1cc8b しれいかん Cmmdr
0x1cc91 ガライシアン Garaian
0x1cc9a スラウレ Suraure
0x1cca0 クイ‐ン Queen
0x1cca6 メンタ‐ナ Mentana

The Hiragana きょうじゅ is 'Enjoy' ... but the Kana is キョウジュ which is 'Professor'. All my extractions since the very early ones do both character sets, to help in situations like this. e.g.:

{
        "block_range" : "0x1cbad-0x1ccac - Ouji? - professer/teacher in first world school",
        "block_description" : "NPC character names.",
        "string_start" : "0x1cc14",
        "method" : 3,
        "start_bytes" : [],
        "end_bytes" : ["00"],
        "raw_size" : 7,
        "raw" : ["b7", "ae", "b3", "bc", "de", "ad", "00"],
        "raw_text" : "きょうじゅ",
        "alt_text" : "キョウジュ",
        "trans_size" : 0,
        "trans_text" : "Prof."
    }

The alternate extraction now makes sense as its the character who appears in the school to offer you a star map.

megatron-uk

#122
Demo movie of the translated ship menu structure:


Here's another clip - a demo of in-game translation from the first level in the game (Far World).

Arjak

Wow, this is looking really good! At this rate, you'll be done in no time! It will be great to have another translated PCE game to play.

Keep up the good work!
He who dings the Gunhed must PAAAAY!!! -Ninja Spirit

Psycho Punch

I loved the legend of the Old Earth... this game has great storytelling! :P

Keep it up my friend. It is hard to have translation projects on the PCE, hopefully it will change one day.
This Toxic Turbo Turd/Troll & Clone Warrior calls himself "Burning Fight!!" on Neo-Geo.com
For a good time, reach out to: aleffrenan94@gmail.com or punchballmariobros@gmail.com
Like DildoKobold, dildos are provided free of charge, no need to bring your own! :lol:
He also ran scripts to steal/clone this forum which blew up the error logs! I had to delete THOUSANDS of errors cause of this nutcase!
how_to_spell_ys_sign_origin_ver.webp

megatron-uk

Quote from: guest on 03/30/2014, 02:40 PMI loved the legend of the Old Earth... this game has great storytelling! :P

Keep it up my friend. It is hard to have translation projects on the PCE, hopefully it will change one day.
:lol: you caught that bit, did you? There's a few words in the second part of that phrase I can't quite work out.. so I dropped a placeholder in to remind me to fix it  :D

SuperPlay

Nice to see how you are progressing with this :-) Keep up the great work.

esteban

Quote from: megatron-uk on 03/30/2014, 10:22 AMDemo movie of the translated ship menu structure:


Here's another clip - a demo of in-game translation from the first level in the game (Far World).
Again, I have never paid much attention to Cyber Knight until you started this project.

Now, things are looking pretty darn interesting.  :pcgs:
IMGIMG IMG  |  IMG  |  IMG IMG

megatron-uk

Someone I've been talking with over on Romhacking.net has redumped the English script from the SNES version  - I'm currently working on a programme to match the untranslated PCE and SNES text, so that I can automatically pull in the translated SNES text. I'm getting good results initially, and, as there are hundred of strings to translate, this should speed things up somewhat.

It's 'mapScript.py' which is up on my github repository now.

NightWolve

You are the most prolific status updater I have ever seen. Haven't decided if this is a good or a bad thing. ;)

esteban

IMGIMG IMG  |  IMG  |  IMG IMG

NightWolve

That is an impeccable argument, John, I must admit.

megatron-uk

The latest commit (https://github.com/megatron-uk/cyberknight-pce) now adds patches which have gone through the mapping script (mapScript.py) 3 times.

At this point well over 50% of the game dialogue has been matched from PC-Engine to the SNES english dump by my mapScript.py - that's a LOT of work that now doesn't need to be done manually.

I'll have to go back over the matches and manually insert control codes, linebreaks etc, as the SNES version is totally different in that regard. But I'll try and do it world by world, so I can play through each in 100% english before moving on.

megatron-uk

#133
I've re-dumped the main game dialogue - the SNES text doesn't have anything like the <wait for button press at end of dialogue>, so all of the strings dumped for the SNES english version are much, much shorter than the PCE version. To explain, here's a simplified example:

PCE:
StringA: "Hello, I'm the president<0x08>Welcome to farworld, its our home<0x08>Can you get rid of the monsters?<0x08><0x00>"

SNES:
StringA: "Hello, I'm the president"
StringB: "Welcome to farworld, our home"
StringC: "Can you defeat the monsters?"

Instead of breaking on null bytes (0x00), I've dumped the main text again breaking on the <wait> control byte (0x08) - so that the strings are split and more closely match the SNES. I've re-run that new script through my PCE to SNES mapper and have got a good two-thirds to three-quarters match. That's *hell* of a lot better, and means I won't have to go through many hundreds of strings and match them by hand to the SNES text. It does mean, however that I still need to go through and enter control codes, newlines etc by hand, as the SNES text is formatted for a smaller dialogue window. I'm really please d with the way things are going - however things might slow for a few weeks; our house has finally sold and we're in the middle of starting mortgage proceedings on our new one. I'll try and do bits and pieces (including new screenshots and commits to github) when I get the chance though!

The SNES script has been really useful so far, here's the things that it has enabled me to complete:

All NPC names
All planet names
All item/quest objective names
Missing weapon/enemy names

Those are all 100% complete now.

megatron-uk

Got a lot more of the text done for the first world - however an unexpected side affect is that the small expansion of the main text dialogue has pushed back the scrolling intro text and appears to have broken it. So after the cinematic opening the text that appears during the scrolling ("The story of the Swordfish so far...") section is now busted. I think it's been moved past some invisible limit (perhaps an 8k page section?).

This will need looking at, but the in-game text is a priority for me first. I may need some help off an experienced 6502 hacker to try and resolve the loader that displays the scrolling text.

NightWolve

That's good fortune that there's another game to take translated text from. As for capable hackers for text routines, besides malducci->Tomaitheous->Bonknuts-> TurboXray here, there's also EsperKnight who you could contact via SamIAm. Both are typically pretty busy with projects on hand, though.

megatron-uk

Here's the latest state of the battle screen. All the menus options are done - though the main commands are one character too long (I really need to figure out how the dialogue box is drawn). The vast majority of the status text that appears from MICA is also done, but it's difficult to check as it's displayed randomly!

Anyway, to give you a flavour of what it now looks like....

cyber-battle1.png cyber-battle2.png
cyber-battle3.png cyber-battle4.png

megatron-uk

... and here is what is displayed when you find items in the wreckage (the games equivalent of currency or new equipment - there are no shops as such, you research the items you find and it grants new weapons and options to fit to your mecha)...

megatron-uk

I think I've got all of the in-battle text done - including the status effect text, enemy names, level increase messages,  etc. I haven't been able to test all the messages, as some are related to certain game conditions (enemies fleeing etc), but most are now decently enough formatted to allow the battle screens to be played fully.

I'm left with three phrases left from about 90 initial text strings for the battle screens that I cannot either find a decent translation for, or a match in the SNES script. They are:

は ぼうぎょフィールドを はった
I think this is to do with either defense ability, or defense field

5じをまわったので かれらは かえった。
No idea on this one.

『よ―し! かえって ねるぞ!!』
Seems to be a quip from either a teammate or an enemy?

Any ideas?

megatron-uk

#139
Thought it might be useful to show the current status of the translation patches... a lot of work is done, and it's mostly big long sections of text in the main game dialogue that need doing now:

Patch Summary
=============
---------|------------|------------|-------|---------------
  Strings|Translations|SNES matches|Tiny   | Patch Name
---------|------------|------------|-------|---------------
-  717   | 124 / 717  |  466 / 717 |   18  | 0x1400c-0x1bfe0 - INCOMPLETE - Main game story dialogue and scrolling text.json
-  113   |  59 / 113  |    2 / 113 |   11  | 0x1c040-0x1c90d - INCOMPLETE - Game menus and save screens.json
-    4   |   3 /   4  |    0 /   4 |    0  | 0x1c952-0x1ca2b - COMPLETE - Further game menus.json
-   42   |  34 /  42  |    0 /  42 |    8  | 0x1cbad-0x1ccac - INCOMPLETE - NPC_names.json
-   17   |  17 /  17  |    1 /  17 |    0  | 0x1ccbf-0x1cdae - COMPLETE - Items.json
-   41   |  41 /  41  |    3 /  41 |    0  | 0x1cdaf-0x1ceef - COMPLETE - Planet Names.json
-   87   |  41 /  87  |   17 /  87 |   20  | 0x1cef0-0x1d373 - INCOMPLETE - Battle screen.json
-   60   |  60 /  60  |    0 /  60 |    0  | 0x1d374-0x1d59f - COMPLETE - Enemies.json
-  141   |  97 / 141  |    0 / 141 |   33  | 0x1d59f-0x1dc7a - COMPLETE - Weapon names.json
-   44   |  44 /  44  |    0 /  44 |    0  | 0x1dc87-0x1dee3 - COMPLETE - Shipboard_menus_1.json
-  140   |  33 / 140  |   35 / 140 |   56  | 0x1defc-0x1e71c - INCOMPLETE - Some initial in-game dialogue.json
-   15   |   3 /  15  |    0 /  15 |    1  | 0x1e71c-0x1ea86 - INCOMPLETE - Professor lab screen.json
-   54   |  54 /  54  |    0 /  54 |   40  | 0x1ea88-0x1ec00 - COMPLETE - Mecha overview screen.json
-  104   |   0 / 104  |    3 / 104 |   41  | 0x1ec08-0x1edfa - INCOMPLETE - Possibly Closing Credits?.json
-  101   |   0 / 101  |    0 / 101 |   52  | 0x1ee0f-0x1f0df - INCOMPLETE - Game Credits.json
-  128   |  80 / 128  |   57 / 128 |   36  | 0x1f0f4-0x1fb3f - INCOMPLETE - unknown.json
-  159   |  35 / 159  |  112 / 159 |    4  | 0x28086-0x29efe - INCOMPLETE - MICA and player dialogue.json
-   24   |  24 /  24  |    0 /  24 |    0  | 0x29efe-0x2a1af - COMPLETE - Intro_cinema.json
-   10   |  10 /  10  |    0 /  10 |    0  | 0x2a74c-0x2a930 - COMPLETE - Lights_out_after_intro.json
---------|------------|------------|-------|---------------
  Strings|Translations|SNES matches|Tiny   | Patch Name
---------|------------|------------|-------|---------------
- 2001     759 / 2001   696 / 2001    320


Output taken from mapScript.py, my PCE to SNES script matcher.

Strings are extracted 'text' from the game, probably 95% text, but some odd control sequences too.
Translations are fully converted English strings.
SNES matches are text that have found an English match in the SNES script, but have not been added as translations yet.
Tiny strings are 1/2 byte control codes that are probably not real text.

NightWolve

#140
Quote from: megatron-uk on 04/16/2014, 08:49 AMは ぼうぎょフィールドを はった
I think this is to do with either defense ability, or defense field
WWWJDIC can only translate the Katakana out of that and there's only one result: Field.
http://translate.google.com/ says: "I put the Defense Field"
Note: For the small stuff, menus, items, inventory, etc. that use mostly Katakana, you can often get away with using online translation sites and not run to a human.

So, this could be "Defense Field On" if it's displayed as a status message in a menu, or if it's a statement in a message box as the character speaks it'd be more like "Defense Field was enabled." Whatever you want. You'll just have to see where, but yeah, "Defense Field" is probably mostly correct or more natural sounding would be to use shield. For lack of spacing, you could use "Force Field" or something.

Well, very efficient progress/status report, megatron. Carry on! ;)

megatron-uk

I think all three strings are messages from the ships AI system (MICA) that scans your enemies before battle (they're found in a section of text with similar messages that I've found matches in the SNES script). These phrases (amongst *many* others) are occasionally added into the normal flow of battle in addition to the normal (player vs enemy 1, attack success, dmg 23). It says things like "enemy strong at melee, engage remotely"  or "enemy weak to beam weapons". This one could well be stating that the enemy has just activated a defense field, which would potentially nullify certain types of weapon attacks. Although I'm not sure whether its telling you that an enemy has done this, or that *you* should.

NightWolve

Quote from: megatron-uk on 04/17/2014, 03:42 AMAlthough I'm not sure whether its telling you that an enemy has done this, or that *you* should.
Yeah, so you'll have to see where it's used in-game to obtain the context. That's why translation work requires a 2nd or 3rd pass to get things done right. 1st pass, you get it all back in the game, play through it all the way to spot such issues, then go back to the script and correct them, etc. I've had stuff corrected years later that was initially missed like in the "Ys I Complete" script...

megatron-uk

Yep, that's what I've been doing a lot of at the moment - I'm fairly sick of world 1 now :lol:

NightWolve

Ah yes, that's the other sacrifice that comes with this kind of work, you'll hate the game by the time you're done with the project. But, you'll gain all these adoring fans and "fans" who'll be playing a polished product for the first time, so... ;)

esteban

Quote from: NightWolve on 04/17/2014, 04:54 AMAh yes, that's the other sacrifice that comes with this kind of work, you'll hate the game by the time you're done with the project. But, you'll gain all these adoring fans and "fans" who'll be playing a polished product for the first time, so... ;)
Fans. Ha!  :pcgs:
IMGIMG IMG  |  IMG  |  IMG IMG

megatron-uk

Yes. Get in line, fans.  :mrgreen:

TurboXray

Quote from: NightWolve on 04/17/2014, 04:54 AMAh yes, that's the other sacrifice that comes with this kind of work, you'll hate the game by the time you're done with the project. But, you'll gain all these adoring fans and "fans" who'll be playing a polished product for the first time, so... ;)
Haha - yup!

megatron-uk

Here's an Easter present for you all.... a video of the Cyber Knight gameplay in full English. Enjoy!
The clip is from the start of the game, loading a save and proceeding from the initial landing site (I'd already talked with the townspeople in an earlier video clip), fighting your way to the crashed ship 'Europa' which is one of the first main quests in the game. This includes several of the in-battle messages that you receive from the AI, MICA, that I've been translating recently - it shows how they're a mix of 'helpful' strategy and, well, just bizarre ramblings!

megatron-uk

#149
Ok, I've got a Mednafen query. I'm debugging some text display errors that appear part way through the exploration of the 'Europa' ship. Up to this point all my in-game text has been ok. But I've got some weird truncation/duplication going on (see attached images):

In the battle scene below I should have a display that reads: "MICA: Engage from a distance" or "MICA: Use ranged attacks" (which are some of the 'helpful' comments that MICA throws at you) , but have instead part of both - all other helpful messages in battle to this point have been ok, as well as some Japanese text - none of which is left in the battle message section of the rom.

In the discovery of a drive coil scene, it should read: "Vynd:Here we go! A Drive Coil!, Ok let's get this back to the ship", and then another window will popup stating "Drive Coil Found!", the same as what happens when you get the Star Map from the University. Instead I get the expected text, then a run-on of untranslated text, then the 'Drive Coil Found' text runs on again from that. Bizarro.

Anyway, what I was wondering is there any way Mednafen can be used to load a state file if the underlying rom file has changed? It's a pain adjusting the rom, reinjecting modified text and then playing right through about 10 or 20 battles to get to the point where Vynd says his text again. I believe the states saved by Mednafen only load when the rom has the same checksum, which it obviously doesn't when I change the data....

Screenshot from 2014-04-20 11:59:40.png Screenshot from 2014-04-20 12:00:50.png