Jump to content

Arcana: Hikari to Yami no Ecstasys Translation Project


Recommended Posts

2vwfp6g.jpg

Arcana is a rather old game from 2000 by Ciel, and seems relatively obscure, although it has some very beautiful (if brutally censored) artwork from Tony Taka. I plan to do a complete conversion of the entire game from its own internal engine to Ren'py, and am making reasonable progress as far as that goes. I'm also trying to translate the game to English obviously, and while I do know some Japanese I don't know anywhere near enough to do this sort of thing properly.

 

The project is thus in need of translators, translation checkers, and editors. I should be cut out for most of the programming work required, but I hear the game supposedly has some card battles too, and we'll see if that needs to be reverse engineered from the code too. Would also be nice if someone could undo the damage the censors did to Tony's work, but I think that can wait.

 

Anyone interested in participating, please post your interest here or PM me. Thanks!

Link to comment
Share on other sites

Well,  the project is progressing, although most likely my translations are the sort of novice hackwork you'd expect from a guy who passed JLPT3 some years ago, but there you go. Also managed to convert the first of what I believe judging from the art assets to be the first of several mini games. I believe there's even a strategic card game somewhere in here, and we'll see how that works when I get that far.

 

3169q3a.png

 

fwt6ki.png

 

dwbb5c.png

 

Here's a screenshot of the mini-game. Essentially you roll 3d6, your opponent declares whether his roll will be higher than yours. If he's right he wins, if he's wrong you win. I noticed that the code for this was rather convoluted the way it might have been written in an old BASIC dialect (sans the line numbers), but it seems to be a language of roughly the same level of power. I imagine many other old game engines are like that.

4nsyh.png

Link to comment
Share on other sites

  • 2 weeks later...

I've been going over all the script files and I seem to notice that the mini-games appear to be started by the EVT directive with arguments given the type of game to be played.

 

1. サイコロ -- this is the dice game with the boss (Part 1.2.1 only)

2. 酒 -- this is the drinking game with the brigands (Part 1.3.4 only)

3. タイプ -- typing mini-game (first is at Part 1.4.2)

4. カード -- Cards? (first is at Part 2.5.2)

5. クイズ -- Quiz? (first is at 2.7.1)

6. チンチロ -- ??? (first is at D3.9.9)

 

Reverse engineering these games so far hasn't required me to delve into the compiled code which I can't really say I am capable of doing (I never got into Windows programming and most of my professional life coding has been Linux software), and I've merely been able to get by with interpreting the responses that the game gives. It's proving to be just as enjoyable to do this as it is to actually play the game.

 

Well, I just managed to convert the second mini-game. Basically Caprese has gotten himself captured by a gang of brigands who have been given a village girl named Animato, and he has challenged them to a drinking game for her freedom. The brigands present him with ten cups of liquor, five of which are plain liquor (1 point), three of which are firewater (火酒, 3 points), and two are "lotus liquor" (蓮酒 hasuzake, 8 points).

 

vqpco5.png

Caprese has to drink five of these cups without reaching nine points. He can ask his companion, the fairy Primo, to sample one cup to determine what sort of liquor it contains. She can do this for four rounds, at the fifth round she gets too drunk herself, and forcing her to check will cause her to collapse and that deducts from her flags. This is a somewhat simpler game than the dice game previously. Soon enough we'll see what the other four games are all about...

 

Well, I've converted and translated 14 files out of 161 in the original game, so it's only at around 8% done by now and my translation quality of course leaves a lot to be desired. The converter I have works well enough for most of the files that don't include the EVT directive looks like, but I still have to check for new directives in the scripting language that pop up now and again.

 

The typing minigame whose first is in Part 1.4.2 might be interesting. Basically you're supposed to type something as quickly as possible. We'll see how we can implement this...

Link to comment
Share on other sites

And so I managed to do a partial sort of conversion of the second minigame, which is a typing minigame where you have to type the text below before the time expires. If you mistype, five seconds are deducted from the time:

jb22ph.png

The original game has the text box below displaying comments like 'プリモのヤツ' or other similar comments, but I can't find them in the scripts. They must be embedded somewhere in the code. If anyone knows how to extract these sorts of strings from the Arcana executable, please let me know, so I can get them in too.. I'll add in an on-screen keyboard as an alternative to typing since this is all supposed to run on Android too...

Link to comment
Share on other sites

And so I managed to do a partial sort of conversion of the second minigame, which is a typing minigame where you have to type the text below before the time expires. If you mistype, five seconds are deducted from the time:

 

The original game has the text box below displaying comments like 'プリモのヤツ' or other similar comments, but I can't find them in the scripts. They must be embedded somewhere in the code. If anyone knows how to extract these sorts of strings from the Arcana executable, please let me know, so I can get them in too.. I'll add in an on-screen keyboard as an alternative to typing since this is all supposed to run on Android too...

Link to comment
Share on other sites

I figured out that was what the the type##.txt files in text.arc were for a bit later. The above mini-game is initiated by the directive EVT タイプ 06 06 in 01_04_02.txt (time limit 300 seconds as in type06.txt as expected), and the subsequent game instances that are played if you fail the first one are initiated by EVT タイプ 16 06 (increases time limit to 10 minutes) and EVT タイプ 26 06 (removes time limit). Evidently the first argument is the file to use, which also contains the time limit, but I suppose the second arg controls something else.

 

type06.txt, type16.txt and type26.txt contain six pairs of プリモかわいい and ぷりもかわいい, the first being the Japanese text presented at the top and the second all-hiragana used to do romanisation as mentioned. But when the mini-game is played it sure as hell presents you with PURIMOKAWAII more than six times, more like 14 by my count. Also, Caprese makes commentary in the text box below the game screen with strings that don't seem to be present in any files inside text.arc.

 

Anyhow, I've already managed to replicate the minigame in just about all its essential features and am on the fence as to whether I really ought to replicate it entirely as is or adapt it somewhat. For instance, I could make the game say the translation, so we'd have 'PRIMOISCUTE' instead, or REAPER instead of SINIGAMI... Thoughts?

Link to comment
Share on other sites

The second EVT arg could be used to determine what set of commentary to use...  and the commentary is kept in the exe file. Their strings come after the kana/romaji table that I mentioned. Right now, I don't know how or when the game decides to show the comments. If you can't find a pattern, just make one up?

 

Aren't the words chosen randomly? And the number of words that get presented is related to that bar which depletes as you finish each word.

 

Localizing the words sounds helpful in my opinion.

Link to comment
Share on other sites

Well, I haven't gotten far enough in the game to see other instances where the タイプ minigame appears, so I guess that'll have to wait. The next typing game doesn't appear until Part 3, Dark Chapter 14, and right now I'm still at Part 1, Chapter 4. Shouldn't be hard to modify the game to suit once I see future instances.

Link to comment
Share on other sites

So now I'm trying to reimplement the card game:

9kb1nb.png

Basically the game gives each of the 22 cards of the Tarot major arcana four attributes (属性), whose base values are as follows:

                                       STR  INT  CHA  ICN
00 - The Fool (Caprese)                  3    2    2    2
01 - The Magician (Maestro)              2    4    1    3
02 - The High Priestess (Analyse)        0    8    0    4
03 - The Empress (Amoroso)               0    2    5    9
04 - The Emperor (Marcato)               6    1    0    5
05 - The Hierophant (Hymnus)             0    4    3    6
06 - The Lovers (Litania)                3    2    5    3
07 - The Chariot (Grandi)                6    0    1    2

08 - Strength (Vivace)                   5    0    3    0
09 - The Hermit (Mori)                   0    10   0    7
10 - Wheel of Fortune (Primo)            1    2    4    4
11 - Justice (Cittern)                   3    2    2    3
12 - The Hanged Man (Tombo)              3    3    1    2
13 - Death (Grave)                       4    3    0    1
14 - Temperance (Lucia)                  2    0    5    9
15 - The Devil (Dominante)               1    4    2    4
16 - The Tower (Brilliante)              9    0    0    4
17 - The Star (Silvia)                   0    0    7    9
18 - The Moon (Passepied)                0    0    9    2
19 - The Sun (Animato)                   5    1    1    3
20 - Judgement (Risoluto)                1    5    1    6
21 - The World (Harp)                    0    1    6    9

 

The first game that is played is in Part 2 Chapter 5 Section 2, and is against Tombo. Certain cards are flagged based on the character flags that Caprese has managed to hit up to that point. Flags 0 (his own), 10 (Primo) and 3 (Amoroso) are impossible to miss by that point. It is possible to flag cards 5, 8, and 19 depending on the events of the previous chapters. Such flagged cards generally seem to have a +1 bonus to all their attributes (although I seem to see that the flagged Strength card has attributes 6/0/4/1 instead of 6/1/4/1 for some reason).

 

The thing is, it appears that certain of the opponent's cards are also flagged, and for the particular game in §2.5.2 it seems that Tombo has at least cards 3, 12, 13, 14, 15, and 17 thus flagged at least. I see in the original code that □EVT カード directives with values 0 (certainly Tombo), 1, 2, 3, and 4 are possible. There are portraits in the graphic assets intended for use with the card games that have two versions of Caprese (normal and crazy-looking), two versions of Tombo (normal and crazy-looking), Grave, an armoured guy who is probably Marcato, and Risoluto. I suppose the numeric argument to □EVT カード controls which of these portraits gets used as well as which cards are flagged. I'll probably have to figure these out by experiment. As with the typing game there is voiced commentary as well, and none of that appears in the scripts so it must be embedded in the code somewhere.

Link to comment
Share on other sites

So now I've finished coding the card game, which is I think much more complicated to test than the previous games had been. Some aspects have not yet been completely implemented, such as the opponent's flagged cards, but I think that can come later when I figure things out more. Anyone out there willing to test the game out as far as it has been done? Post your interest here. Please don't complain about bad or wrong translations though when I send you the link to the alpha release tarball, my Japanese skills are not good enough to do that part properly as I have said, and no one has volunteered to help. Only complain if the minigames behave strangely, report them here as well.

Link to comment
Share on other sites

Now I need a bit of assistance here. I have reached Part 2.7.1, where Caprese meets Analyse, the Hierophant's assistant, and there are EVT クイズ directives that ask a random multiple-choice questions of various sorts, and they must be coming from somewhere in the executable as they don't seem to be present in the script files in text.arc. The same widgets as used in the typing test are used here. The questions include the following:

 

ハープががもっていた指輪の名前は?

 

A. コスモクラトールの指輪

B. ミトラ神の指輪

C. 呪いの指輪

 

What is the name of the Ring that Harp had?

 

A. The Ring of the Cosmocrator

B. The Ring of the God Mithras

C. The Ring of Curses

 

The correct answer is A. As a note those katakana spun me around for a bit when I first encountered them, until I remembered my Greek, it's actually κοσμοκράτωρ, meaning lord of the world, a term from pagan religions that later came to be used in Christian theology as a technical term for the devil (cf. 2 Corinthians 4:4), and by Gnostic sects as a term for the demiurge. Then again, Caprese is going around the world trying to collect the Four Great Icons (4つの大イコン), as whoever possesses them can become ruler of the world, essentially the Cosmocrator.

 

Other questions:

 

異教徒たちが住むのほど方角?

A. 西

B. 南

C. 北

 

普通酒、火酒、蓮酒、一番強い酒は?

A. 普通酒

B. 火酒

C. 蓮酒

 

(refers to the drinking game with the bandits in Animato's arc)

 

ずっと東にある国の名?

A. チャイナ

B. ジパング

C. キタイ

 

(refers to a conversation that Caprese had earlier talking about a country far to the east named Kitai).

 

神の怒りに触れて炎にまれた伝説の街?

A. カーミラの街

B. ソドムの街

C. ガミアの街

 

(Seems a general knowledge question, obviously B, which is the City of Sodom)

 

Can anyone help obtain these questions and choices? Answers optional, I can probably figure out the correct answers somehow.

 

Hmm, I found a partial list of questions and the correct answers here:

 

http://kakurega18.x.fc2.com/game/18/kouryaku/arukana.htm

 

I wonder if there are any more, and I also need the incorrect choices.

Link to comment
Share on other sites

There's a block of text in the exe starting around 0x3D200 which seems to contain those strings... but it'd be much better to look at 0x41276E in a debugger. You'll find the loadings of the questions and answers (including the correct choice ID) in there.

 

18 questions in all, so the list on that guide is complete.

 

all questions and answers, correct choice is bolded.

 

Question 1: イコンを持たぬものが、¥他人のイコンを手に入れる方法は?

A) 相手と結ばれる

B) 相手を絶頂に達しさせる

C) 且閧ニ結婚する

 

Question 2: この世界に重大なイコンはいくつある?

A) 3つ

B) 9つ

C) 4つ

 

Question 3: ハープが持っていた指輪の名前は?

A) コスモクラトールの指輪

B) ミトラ神の指輪

C) 呪いの指輪

 

Question 4: 4つの大イコンを集めると何になれる?

A) 法王

B) 世界の王

C) 魔神

 

Question 5: ずっと東にある国の名は?

A) チャイナ

B) ジパング

C) キタイ

 

Question 6: 普通酒、火酒、蓮酒、一番強い酒は?

A) 普通酒

B) 火酒

C) 蓮酒

 

Question 7: 法王の眼といえば誰?

A) リソルート

B) ハープ

C) アナリーゼ

 

Question 8: イコンはそれを持つ者に¥どんな影響を与えるか?

A) 性格や能力に影響を与える

B) 外見や身長、体重に影響を与える

C) 対人関係や社会的地位に影響を与える

 

Question 9: 光と闇の戦いはいつから続いている?

A) 人が生まれたとき

B) この世界が出来る前

C) ミトラ神が生まれたとき

 

Question 10: 神の怒りに触れて炎に包まれた伝説の街は?

A) カーミラの街

B) ソドムの街

C) ガミアの街

 

Question 11: 次代法王の名は?

A) リソルート

B) ハープ

C) マイスター

 

Question 12: イコンは体のどこにある?

A) 額

B) お尻

C) わからない

 

Question 13: 法王家が認める最強の剣術の流派は?

A) ミトラ一心流

B) ミトラ新陰流

C) ミトラ玄武流

 

Question 14: イコンを持たないものは何人いる?

A) いつの時代も一人だけいるとされている

B) 伝説の存在でしかないとされている

C) 大昔一人だけいたとされている

 

Question 15: 異教徒たちが住むのはどの方角?

A) 西

B) 南

C) 北

 

Question 16: 聖騎士伯爵家の家名は?

A) ロベール

B) オーダン

C) シターン

 

Question 17: 南の地ではライオンを何と呼ぶ?

A) シンバ

B) レオ

C) シターン

 

Question 18: 東の国と行き交っている人たちは?

A) 旅芸人

B) 冒険家

C) 旅商人

Link to comment
Share on other sites

  • 2 weeks later...

And so I managed to complete translation of the first half of the game (Chapters 1 through 8 ), before the big branch into the Light/Dark routes (eight chapters each, a total of 16 chapters), although most likely I've made a lot of mistakes in the translation. There's only one mini-game I haven't seen yet, EVT チンチロ, which first appears in §L3.9.9 and §D3.9.9...

Link to comment
Share on other sites

yoa nice work so far & hope there´ll be some additional translators + other staff members joining your endeavour, because i personally believe deciding on an olden, albeit good and interesting title shouldnt be a criteria for non doing so at all.

keep it up & good luckk!

Link to comment
Share on other sites

I finally figured out what the チンチロ game is all about. It's apparently another dice game with different rules from the earlier one, apparently the game Cee-lo (it's actually short for チンチロリン, the Japanese name for the game). It seems to have rules more or less the same as that described in the Wikipedia article I linked to though I'll have to confirm it by doing a full translation of the text...

Link to comment
Share on other sites

So now I've managed to convert and translate the last mini-game, although there are still some quirks in the card and typing games that need to be looked at when they appear in future chapters (there's more typing games in §L4.14.1, §L4.15.1, §D4.13.2, §D4.15.2, and §D4.16.2, and more card games in §L4.13.3, §L4.14.1, §L4.15.2, §D4.14.2, §D4.15.3, and §D4.16.2). The Chinchirorin/Cee-lo game with Litania is the last distinct one I think:

1j9452.png

Still on the lookout for people willing to at least help test the game out as it is right now. I've tested it most extensively on Linux and Android, hardly on Windows, and not at all on OS X. It should be possible to make an iOS port as Ren'Py supposedly supports iOS, but I won't do it.

Link to comment
Share on other sites

  • 3 months later...

Well, I'm back after a bit of a hiatus. Just finished Light Chapter 13.

2vrzytd.png

I've seen a new instance of the typing game in Chapter 14 (incompletely translated), and indeed it seems like random choices of words from the typing files in the game archive. Almost at the finish line for the light chapters. Then next the dark chapters, which look like they're full of rape and violence and such, judging from the game art... :P

Link to comment
Share on other sites

  • 7 months later...
 

So now I'm nearly at the finish line, at least for the Light Arc, but judging from what I can see of the Dark arc I don't know if I have the heart to work on it myself. In any case I'm about to make a beta public release of the game, and would like guidance on how to do this. I'm also interested in making all my source files, including the scripts I wrote to extract and convert data and such, public, so that anyone who wants to pick up the translation work in the future can build on what I've done so far. Obviously I can't just export the Git repository I've got up on Github or a similar place. Maybe I'll just publish a tarball of the bare repository for download every now and then, and accept patches from people who clone from it.

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...