diff --git a/assets b/assets index 239a9f03..5f449d76 160000 --- a/assets +++ b/assets @@ -1 +1 @@ -Subproject commit 239a9f03af0a27dd8f53109215b0bd505f63d57e +Subproject commit 5f449d765d5977227184b2b0234c25eddc1a11a2 diff --git a/py-src/apply_init_translation.py b/py-src/apply_init_translation.py index d51e9849..4ca62f03 100755 --- a/py-src/apply_init_translation.py +++ b/py-src/apply_init_translation.py @@ -26,16 +26,19 @@ def main(): if args.game == "r11": #tip_amount = 110 + tip_pages_amount = 10 seg_text = (0xba68, 0x2c11a) # seg_table = [0x1140, 0xac98] #seg_table_tips = [0x7610, 0x7f7c] elif args.game == "n7": #tip_amount = 112 + tip_pages_amount = 9 seg_text = (0xaf80, 0x2254f) # seg_table = [0x1ba8, 0x9904] #seg_table_tips = [0x7fbc, 0x880c] elif args.game == "e17": #tip_amount = 119 + tip_pages_amount = 9 seg_text = (0x89b0, 0x1f709) # seg_table = [0xeb8, 0x7df8] #seg_table_tips = [0x65c4, 0x6ee8] @@ -64,6 +67,9 @@ def main(): seg_table_tip_ptrs = (head_int_view[0x64//4], head_int_view[0x68//4]-8) tip_amount = (seg_table_tip_ptrs[1]-seg_table_tip_ptrs[0])//12 seg_table_tips = (head_int_view[seg_table_tip_ptrs[0]//4], head_int_view[seg_table_tip_ptrs[1]//4-2]+4) + + seg_table_tip_page_ptrs = (head_int_view[0x68//4], head_int_view[0x68//4]+tip_pages_amount*8) + seg_table_tip_pages = (head_int_view[seg_table_tip_page_ptrs[0]//4+1], seg_table_tips[0]) seg_table_chrono = (head_int_view[0x88//4], head_int_view[0x8c//4]) @@ -79,14 +85,19 @@ def main(): tips_txt = args.tips if tips_txt: tips = r11.tipsparser.parse_tip_file(tips_txt) - #if len(tips) != tip_amount: - # raise Exception(tip_amount, "tips expected, got", len(tips)) + new_tip_amount = sum(1 for tip in tips if getattr(tip.title, args.lang) or getattr(tip.title, "jp")) page_amount = sum(len(getattr(tip.pages, args.lang) or tip.pages.jp) for tip in tips) - tip_offset = page_amount*4+len(tips)*12+seg_table_tips[0]-seg_table_tips[1] - tip_ptr_offset = (len(tips)-tip_amount)*12 + tip_offset = page_amount*4+new_tip_amount*12+seg_table_tips[0]-seg_table_tips[1] + tip_ptr_offset = (new_tip_amount-tip_amount)*12 + new_tip_pages_amount = tip_pages_amount+1 if new_tip_amount != tip_amount and tip_pages_amount != 10 else tip_pages_amount + tip_page_offset = seg_table_tip_pages[0]-seg_table_tip_pages[1]+((new_tip_amount+new_tip_pages_amount)*2+3)&~3 + tip_page_ptrs_offset = (new_tip_pages_amount-tip_pages_amount)*8 else: tip_offset = 0 tip_ptr_offset = 0 + tip_page_offset = 0 + tip_page_ptrs_offset = 0 + new_tip_pages_amount = tip_pages_amount chrono_txt = args.chronology if chrono_txt: @@ -99,7 +110,7 @@ def main(): pos = seg_text[0] - offset = lyric_offset+tip_ptr_offset+tip_offset+chrono_offset + offset = lyric_offset+tip_ptr_offset+tip_offset+chrono_offset+tip_page_offset+tip_page_ptrs_offset if offset: pos += offset for i in range(head_int_view[0x8c//4]//4, head_int_view[head_int_view[0x8c//4]//4]//4-1, 1): @@ -120,10 +131,12 @@ def main(): head_int_view[0x68//4] += lyric_offset+tip_ptr_offset if lyric_offset or tip_offset or tip_ptr_offset: for i in (0x7c, 0x6c, 0x80, 0x84, 0x88): - head_int_view[i//4] += lyric_offset+tip_ptr_offset+tip_offset + head_int_view[i//4] += lyric_offset+tip_ptr_offset+tip_offset+tip_page_offset+tip_page_ptrs_offset seg_table_tip_ptrs = tuple(x+lyric_offset for x in seg_table_tip_ptrs) seg_table_tips = tuple(x+lyric_offset+tip_ptr_offset for x in seg_table_tips) - seg_table_chrono = tuple(x+lyric_offset+tip_offset+tip_ptr_offset for x in seg_table_chrono) + seg_table_tip_page_ptrs = tuple(x+lyric_offset+tip_ptr_offset for x in seg_table_tip_page_ptrs) + seg_table_tip_pages = tuple(x+lyric_offset+tip_ptr_offset+tip_page_ptrs_offset for x in seg_table_tip_pages) + seg_table_chrono = tuple(x+lyric_offset+tip_offset+tip_ptr_offset+tip_page_offset+tip_page_ptrs_offset for x in seg_table_chrono) if songs: lyric_ptrs = bytearray() @@ -148,15 +161,16 @@ def main(): if tips_txt: #tip_i = seg_table_tip_ptrs[0]//4 - tip_ptr_off = seg_table_tips[0] + tip_ptr_off = seg_table_tips[0]+tip_page_ptrs_offset+tip_page_offset tip_text_ptrs = bytearray() tip_ptrs = bytearray() for tip in tips: tl_title = getattr(tip.title, args.lang) tl_pages = getattr(tip.pages, args.lang) + title = tl_title or tip.title.jp pages = tl_pages or tip.pages.jp - title = r11.clean_translation_line(tl_title or tip.title.jp, args.lang, args.game) - title_bytes = r11.str_to_r11_bytes(title, lang=args.lang)+b'\0' + if not title: continue + title_bytes = r11.str_to_r11_bytes(r11.clean_translation_line(title, args.lang, args.game), lang=args.lang)+b'\0' #head_int_view[tip_i] = tip_ptr_off tip_ptrs += struct.pack(" seg_table_tip_ptrs[0]: table_offset += tip_ptr_offset + if table_offset > seg_table_tip_page_ptrs[0]: + table_offset += tip_page_ptrs_offset + if table_offset > seg_table_tip_pages[0]: + table_offset += tip_page_offset if table_offset > seg_table_tips[0]: table_offset += tip_offset if table_offset > seg_table_chrono[0]: @@ -232,6 +286,10 @@ def main(): dupe_ref += lyric_offset if dupe_ref > seg_table_tip_ptrs[0]: dupe_ref += tip_ptr_offset + if dupe_ref > seg_table_tip_page_ptrs[0]: + dupe_ref += tip_page_ptrs_offset + if dupe_ref > seg_table_tip_pages[0]: + dupe_ref += tip_page_offset if dupe_ref > seg_table_tips[0]: dupe_ref += tip_offset if dupe_ref > seg_table_chrono[0]: diff --git a/text/chapters-psp-e17/S_1B_1.txt b/text/chapters-psp-e17/S_1B_1.txt index 50d31b0d..cf87e78b 100644 --- a/text/chapters-psp-e17/S_1B_1.txt +++ b/text/chapters-psp-e17/S_1B_1.txt @@ -2210,7 +2210,7 @@ CN PLACEHOLDER 少年「『智也』がいい」%K%P '%TS119Tomoya%TE' sounds good. CN PLACEHOLDER -;Мальчик«Мне нравится „Томоя“.»%K%P +;Мальчик«Мне нравится „%TS119Томоя%TE“.»%K%P みんな「智也ぁ〜!?」%K%P Tomoya!? @@ -2220,7 +2220,7 @@ CN PLACEHOLDER 少年「『誠』がいい」%K%P '%TS119Makoto%TE' is good. CN PLACEHOLDER -;Мальчик«„Макото“ звучит неплохо.»%K%P +;Мальчик«„%TS119Макото%TE“ звучит неплохо.»%K%P みんな「誠ぉ〜!?」%K%P Makoto!? @@ -2230,7 +2230,7 @@ CN PLACEHOLDER 少年「『直人』がいい」%K%P '%TS119Naoto%TE' has a nice ring to it. CN PLACEHOLDER -;Мальчик«По мне, „Наото“ звучит неплохо.»%K%P +;Мальчик«По мне, „%TS119Наото%TE“ звучит неплохо.»%K%P みんな「直人ぉ〜!?」%K%P Naoto!? @@ -2240,7 +2240,7 @@ CN PLACEHOLDER 少年「『椎名』がいい」%K%P '%TS119Shiina%TE' works. CN PLACEHOLDER -;Мальчик«А „Сиина“ ничё.»%K%P +;Мальчик«А „%TS119Сиина%TE“ ничё.»%K%P みんな「椎名ぁ〜!?」%K%P Shiina!? @@ -2250,7 +2250,7 @@ CN PLACEHOLDER 少年「『元樹』がいい」%K%P '%TS119Motoki%TE' sounds nice. CN PLACEHOLDER -;Мальчик«„Мотоки“ звучит неплохо.»%K%P +;Мальчик«„%TS119Мотоки%TE“ звучит неплохо.»%K%P みんな「元樹ぃ〜!?」%K%P Motoki!? @@ -2260,7 +2260,7 @@ CN PLACEHOLDER 少年「『イナケン』がいい」%K%P '%TS119Inaken%TE' is good. CN PLACEHOLDER -;Мальчик«„Кид“ мне по душе.»%K%P +;Мальчик«„%TS121Кид%TE“ мне по душе.»%K%P みんな「イナケン〜!?」%K%P Inaken!? @@ -2270,7 +2270,7 @@ CN PLACEHOLDER 少年「『恭介』がいい」%K%P I like '%TS119Kyousuke%TE'. CN PLACEHOLDER -;Мальчик«Мне нравится „Кёске“.»%K%P +;Мальчик«Мне нравится „%TS119Кёске%TE“.»%K%P みんな「恭介ぇ〜!?」%K%P Kyousuke!? @@ -2280,7 +2280,7 @@ CN PLACEHOLDER 少年「『王子様』がいい」%K%P I like '%TS119Prince%TE'. CN PLACEHOLDER -;Мальчик«Зовите меня „Принц“.»%K%P +;Мальчик«Зовите меня „%TS119Принц%TE“.»%K%P みんな「王子様ぁ〜!?」%K%P Prince!? diff --git a/text/chapters-psp-e17/S_2B_3.txt b/text/chapters-psp-e17/S_2B_3.txt index d6bcba0c..ced6a893 100644 --- a/text/chapters-psp-e17/S_2B_3.txt +++ b/text/chapters-psp-e17/S_2B_3.txt @@ -41,7 +41,7 @@ CN PLACEHOLDER 沙羅「高校2年生、16歳、1月21日生まれ、水がめ座」%K%P I'm a junior. I'm sixteen, and I was born January 21st. Oh, and I'm an Aquarius. CN PLACEHOLDER -Я учусь во втором классе старшей школы. Мне 16, и я родилась 21 января. Э-э, а по гороскопу я Водолей. +Я учусь во втором классе %TS122старшей школы%TE. Мне 16, и я родилась 21 января. Э-э, а по гороскопу я Водолей. すらすらと、まるで歌うように口ずさむ沙羅。%K%P Sara recited it so smoothly that it was like she was singing a song. diff --git a/text/chapters-psp-e17/S_3B_1.txt b/text/chapters-psp-e17/S_3B_1.txt index 732200c5..34d631fe 100644 --- a/text/chapters-psp-e17/S_3B_1.txt +++ b/text/chapters-psp-e17/S_3B_1.txt @@ -3288,7 +3288,7 @@ CN PLACEHOLDER 当然と言うべきか、いずれのフレーズもCレベルには侵入することができなかった。%K%P Of course, none of those phrases got her access to the C Level information. CN PLACEHOLDER -Конечно, ни одна из этих фраз не дала ей доступа к информации уровня С. +Конечно, ни одна из этих %TS123фраз%TE не дала ей доступа к информации уровня С. っていうか、なぜ声に出す必要があるのだろうか?%K%P I didn't see why she had to shout all of them out either. diff --git a/text/chapters-psp-e17/T_1B_1.txt b/text/chapters-psp-e17/T_1B_1.txt index c4708252..c3103c4c 100644 --- a/text/chapters-psp-e17/T_1B_1.txt +++ b/text/chapters-psp-e17/T_1B_1.txt @@ -2486,7 +2486,7 @@ CN PLACEHOLDER ココ「中3!」%K%P I'm in ninth grade! CN PLACEHOLDER -Средняя школа, третий год! +%TS122Средняя школа%TE, третий год! 武「な、なぬぃっ!?」%K%P Wh-What?! diff --git a/text/chapters-psp-e17/T_1C_2.txt b/text/chapters-psp-e17/T_1C_2.txt index e262c6d0..6b3c2bd4 100644 --- a/text/chapters-psp-e17/T_1C_2.txt +++ b/text/chapters-psp-e17/T_1C_2.txt @@ -306,7 +306,7 @@ CN PLACEHOLDER 優「ねぇ、倉成は50mの長さに敷いたふとんの上、何秒くらいで走れる?」%K%P Hey, Kuranari. How fast do you think you could run 50 meters on mattresses? CN PLACEHOLDER -Слушай, Куранари. Как быстро ты сможешь пробежать 50 метров по футонам? +Слушай, Куранари. Как быстро ты сможешь пробежать 50 метров по %TS128футонам%TE? 優がいきなり尋ねた。%K%P You suddenly shot me the question. @@ -681,7 +681,7 @@ CN PLACEHOLDER 武「適当だけど、名無しの権兵衛」%K%P It'd be fitting to call him John Doe. CN PLACEHOLDER -Думаю, очень даже уместно будет его звать Джоном Доу (так называют человека, чьё настоящее имя неизвестно). +Думаю, очень даже уместно будет его звать %TS120Джоном Доу%TE. 空「適当だから『権兵衛』だ、というのは全国の権兵衛さんに申し訳ないのではないですか?」%K%P But wouldn't calling him that just because it's fitting be rude to all of the people named John Doe? diff --git a/text/chapters-psp-e17/T_4A_2.txt b/text/chapters-psp-e17/T_4A_2.txt index 9ffd427b..f3d1fdba 100644 --- a/text/chapters-psp-e17/T_4A_2.txt +++ b/text/chapters-psp-e17/T_4A_2.txt @@ -842,7 +842,6 @@ CN PLACEHOLDER You'd better not be preparing a punch line about fish... CN PLACEHOLDER Ответ „по-японски они звучат одинаково“ – не в счёт... -//Надо будет сделать заметку на слове "карп", а там дать описание типа "В японском языке слово "любовь" (иероглиф) и "карп" (иероглиф) произносятся одинаково – 'koi'. 武「なにっ! 先手を打たれたぞ!」%K%P What!? Am I that transparent!? @@ -878,7 +877,6 @@ CN PLACEHOLDER I thought I said 'no jokes'... CN PLACEHOLDER Сравнивать любовь с чем-то густым – тоже нельзя... -//Заметка на слове "густым", а там дать описание типа "В японском языке слово "любовь" (иероглиф) и "густой" (иероглиф) произносятся одинаково – 'koi'. 武「なにっ! 一度ならず二度までも!!」%K%P What!? You got me the second time too!? @@ -924,7 +922,6 @@ CN PLACEHOLDER 'Intent' as in actively pursuing it, correct? CN PLACEHOLDER Или, может, „любовь не предшествует действию“? -//Надо будет сделать заметку на кавычках, а там дать описание типа... ну, ты уже понял принцип. 武「…………」%K%P ......... @@ -939,7 +936,7 @@ CN PLACEHOLDER 空「データベースにあったから、私はそう答えただけです」%K%P I do not have anything more than that in my database. CN PLACEHOLDER -Просто эти сведения имеются в моей базе данных. +Просто эти %TS124сведения%TE имеются в моей базе данных. 空「倉成さん、そろそろ本題に」%K%P Kuranari-san, can you please answer my original question? diff --git a/text/chapters-psp-e17/T_4B_1.txt b/text/chapters-psp-e17/T_4B_1.txt index 8e33301d..4ff4c1cf 100644 --- a/text/chapters-psp-e17/T_4B_1.txt +++ b/text/chapters-psp-e17/T_4B_1.txt @@ -1741,9 +1741,8 @@ CN PLACEHOLDER 優「寿司桶に入ってるバランがビニール製だからと言って、その寿司が安物だと言い切ることはできないはずなのよっ!」%K%P Just because the sushi in the display case is made of plastic doesn't mean the sushi inside is cheap! CN PLACEHOLDER -Нельзя говорить, что набор суши должен стоить дешевле лишь потому, что внутри используется пластиковый разделитель, а не из бамбука! +Нельзя говорить, что набор суши должен стоить дешевле лишь потому, что внутри используется пластиковый %TS125разделитель%TE, а не из бамбука! // dsp2003: Иначе говоря, если блюдо на витрине сделано из папье-маше и ваты, это вовсе не значит, что настоящее стоит дёшево! -//не забыть создать тут заметку 少年「おおーっ……!」%K%P Whoa!? diff --git a/text/chapters-psp-e17/T_4B_4.txt b/text/chapters-psp-e17/T_4B_4.txt index fa859c8f..8a36b296 100644 --- a/text/chapters-psp-e17/T_4B_4.txt +++ b/text/chapters-psp-e17/T_4B_4.txt @@ -371,7 +371,7 @@ CN PLACEHOLDER 武「これ、シロガネーゼの鉄則」%K%P That's the key, marrying into moolah. CN PLACEHOLDER -Таков путь гламурезе. +Таков путь %TS126гламурезе%TE. 空「しろがねーぜ?」%K%P Moolah? @@ -382,7 +382,6 @@ CN PLACEHOLDER Does that have to do with cows? CN PLACEHOLDER Это какой-то фермент? -//вариант адаптации, предложенный жптшкой. Видимо, сюда тоже надо будет вставить свою заметку про исходную игру слов シロガネーゼ и 酵素 (こうそ) 武「いや、そうではなく……」%K%P No, no... diff --git a/text/chapters-psp-e17/T_4C_2.txt b/text/chapters-psp-e17/T_4C_2.txt index b9a0c26c..890ba754 100644 --- a/text/chapters-psp-e17/T_4C_2.txt +++ b/text/chapters-psp-e17/T_4C_2.txt @@ -926,8 +926,7 @@ CN PLACEHOLDER 武「あのひょっとこハム吾郎を、だ」%K%P That funny-looking hamster. CN PLACEHOLDER -Пойду вызволять твоего Хомячелло. -//Очередная кастомная заметка про маску "Хёттоко" и про игру слов 'hamster' - 'ハムスタ' (hamusuta)+'吾郎 ' (Goro, старомодное японское имя) +Пойду вызволять твоего %TS127Хомячелло%TE. つぐみ「無理よ!」%K%P There's no way you'll make it! diff --git a/text/chapters-psp-e17/T_4C_3.txt b/text/chapters-psp-e17/T_4C_3.txt index 61108aa6..1ed61a15 100644 --- a/text/chapters-psp-e17/T_4C_3.txt +++ b/text/chapters-psp-e17/T_4C_3.txt @@ -771,7 +771,7 @@ CN PLACEHOLDER 武「もっとギャルっぽいメイクをしなくちゃならん!」%K%P Your makeup has to be more... feminine. CN PLACEHOLDER -Нужно сделать макияж более вызывающим, в стиле гяру! +Нужно сделать макияж более вызывающим, в стиле %TS129гяру%TE! 空「先生……」%K%P Professor... diff --git a/text/charset-tables/r11-ru-font-table.txt b/text/charset-tables/r11-ru-font-table.txt index 5b60bcd3..ac37f798 100644 --- a/text/charset-tables/r11-ru-font-table.txt +++ b/text/charset-tables/r11-ru-font-table.txt @@ -1133,7 +1133,7 @@ 1132: 0x8744 ⑤ 1133: 0x8745 ⑥ 1134: 0x8746 ⑦ -1135: 0x8747 ⑧ +1135: 0x8747 ō # ⑧ 1136: 0x8748 ⑨ # R11/E17:Rendered as a blank space (full width?) 1137: 0x8749 ⑩ # ä in e17 in r11, but blank space in n7 1138: 0x874A ö # ⑪ @@ -1141,7 +1141,7 @@ 1140: 0x874C é # ⑬ 1141: 0x874D à # ⑭ 1142: 0x874E ä # ⑮ -1143: 0x874F ⑯ +1143: 0x874F ū # ⑯ 1144: 0x8750 Ö # ⑰ 1145: 0x8751 ™ # ⑱ in SJIS 1146: 0x8752 ⑲ diff --git a/text/font/glyphs-ru/1135.png b/text/font/glyphs-ru/1135.png new file mode 100644 index 00000000..28435b00 Binary files /dev/null and b/text/font/glyphs-ru/1135.png differ diff --git a/text/font/glyphs-ru/1143.png b/text/font/glyphs-ru/1143.png new file mode 100644 index 00000000..14c74f33 Binary files /dev/null and b/text/font/glyphs-ru/1143.png differ diff --git a/text/font/glyphs-ru/glyph_data.txt b/text/font/glyphs-ru/glyph_data.txt index 53faf306..a1982b0f 100644 --- a/text/font/glyphs-ru/glyph_data.txt +++ b/text/font/glyphs-ru/glyph_data.txt @@ -1137,7 +1137,7 @@ blockSize: 256 1132: 0:15 1133: 0:15 1134: 0:15 - 1135: 0:15 + 1135: 2:6 1136: 0:16 1137: 0:16 1138: 2:6 @@ -1145,7 +1145,7 @@ blockSize: 256 1140: 2:6 1141: 1:5 1142: 1:5 - 1143: 0:15 + 1143: 1:6 1144: 0:7 1145: 1:9 1146: 2:13 diff --git a/text/other-psp-e17-en/init.bin.utf8.txt b/text/other-psp-e17-en/init.bin.utf8.txt index c7ea56d6..a324fd05 100644 --- a/text/other-psp-e17-en/init.bin.utf8.txt +++ b/text/other-psp-e17-en/init.bin.utf8.txt @@ -5517,24 +5517,6 @@ Illustration: Takigawa Yuu (unofficial collaboration) ;5ec0;13;MOV_END01.PMF -;6470;2;ア - -;6478;2;カ - -;6480;2;サ - -;6488;2;タ - -;6490;2;ナ - -;6498;2;ハ - -;64a0;2;マ - -;64a8;2;ヤ - -;64b0;2;ラ - # tips used to be there, but they're now in text/tips-psp-e17.txt ;75e8;16;エルストボーデン diff --git a/text/other-psp-e17-ru/init.bin.utf8.txt b/text/other-psp-e17-ru/init.bin.utf8.txt index bb4c42c1..d954c905 100644 --- a/text/other-psp-e17-ru/init.bin.utf8.txt +++ b/text/other-psp-e17-ru/init.bin.utf8.txt @@ -7406,24 +7406,6 @@ Illustration: Takigawa Yuu (unofficial collaboration) ;5ec0;13;MOV_END01.PMF ;lit; -;6470;2;ア - -;6478;2;カ - -;6480;2;サ - -;6488;2;タ - -;6490;2;ナ - -;6498;2;ハ - -;64a0;2;マ - -;64a8;2;ヤ - -;64b0;2;ラ - # tips used to be there, but they're now in text/tips-psp-e17.txt ;75e8;16;エルストボーデン diff --git a/text/other-psp-n7-en/init.bin.utf8.txt b/text/other-psp-n7-en/init.bin.utf8.txt index 90284877..80b40ccc 100644 --- a/text/other-psp-n7-en/init.bin.utf8.txt +++ b/text/other-psp-n7-en/init.bin.utf8.txt @@ -7281,24 +7281,6 @@ Illustration: Yuna Kagesaki (unofficial collaboration) ;791c;12;END_USER.PMF -;7e78;2;ア - -;7e80;2;カ - -;7e88;2;サ - -;7e90;2;タ - -;7e98;2;ナ - -;7ea0;2;ハ - -;7ea8;2;マ - -;7eb0;2;ヤ - -;7eb8;2;ラ - # tips used to be there, but they're now in text/tips-psp-n7.txt ;92d8;12;ロッジ・外観 diff --git a/text/other-psp-r11-en/init.bin.utf8.txt b/text/other-psp-r11-en/init.bin.utf8.txt index 5f82a8e6..5500b9a0 100644 --- a/text/other-psp-r11-en/init.bin.utf8.txt +++ b/text/other-psp-r11-en/init.bin.utf8.txt @@ -6924,26 +6924,6 @@ Annihilation End (Kokoro) ;6f84;13;MOV_END01.PMF -;74c8;2;ア - -;74d0;2;カ - -;74d8;2;サ - -;74e0;2;タ - -;74e8;2;ナ - -;74f0;2;ハ - -;74f8;2;マ - -;7500;2;ヤ - -;7508;2;ラ - -;7510;2;ワ - # tips used to be there, but they're now in text/tips-psp-r11.txt ;871c;14;避難小屋・外観 diff --git a/text/tips-psp-e17.txt b/text/tips-psp-e17.txt index 442c6fd4..0c729cd6 100644 --- a/text/tips-psp-e17.txt +++ b/text/tips-psp-e17.txt @@ -370,6 +370,23 @@ Insel null。 優美清春香菜の様々な想いが見て取れる。 ~jp~2~ +~ru +«В небе пустом прохладой медуза веет...» +~ru~0 +В качестве пароля от своей учётной записи на LeMMIH Юбисэйхарукана установила переделку хайку Масаоки Сики «В небе прохладой веет июньской порой... Кричит кукушка». На деле в нём зашифрованы имена участников инцидента в LeMU в 2017 году, а также имя её любимой дочери. +~ru~0~ +~ru~1 +Так, под медузой (海月) скрывается Цугуми (через перестановку иероглифов, означающих луну и море – 月海), под пустотой (虚) – Коко (привет фанатам Границы пустаты – прим. переводчика), под небом (空) – Сора (иероглиф и имя совпадают), осень (秋) есть в имени Ю-аки, прохлада (涼) отсылает к Кабураки Рёго (涼権) и кукушка (時鳥) – к Такэси. +~ru~1~ +~ru~2 +Кстати, Сики – другое наименование малой кукушки хототогису в японском. Масаока Сики страдал от туберкулёза и кашлял кровью, так что он сравнил себя с кукушкой, которая, по поверью, продолжает петь до крови, отсюда и его превдоним. Вероятно Ю-хару тоже увидела образ кукушки в Такэси, который, даже заразившись Tief Blau, продолжал беспокоиться о своих товарищах. +~ru~2~ +~ru~3 +Также хототогису носит и другое имя – фудзёки (不如帰), что означает «лучше вернуться» или более вольно «вернись». + +Через это хайку прослеживаются разные чувства и переживания Юбисэйхаруканы, в том числе горечь от утраты товарищей. +~ru~3~ + #################################################################################################### #################################################################################################### @@ -479,6 +496,12 @@ LeMUのアトラクション『レムリア遺跡』でも、 このオベリスクを見ることができる。 ~jp~0~ +~ru +Обелиск +~ru~0 + +~ru~0~ + #################################################################################################### #################################################################################################### @@ -502,6 +525,16 @@ LeMU館内は酸素とヘリウムの混合ガスが 鼓膜を気圧から保護する機能を持っている。 ~jp~1~ +~ru +Модификаторы голоса +~ru~0 +Это устройство размером с беруши или наушники, обязательное для ношения в LeMU и выдаваемое на входе. Служит для преобразования голоса. +Для предотвращения отравления азотом, вызванным его высокой концентрацией внутри сооружения, в комплексе используется смесь из кислорода и гелия. Поскольку скорость звука в гелии значительно выше, чем на воздухе, голос в такой среде становится высоким и писклявым. +~ru~0~ +~ru~1 +Кроме функции преобразования голоса, эти устройства помогают системам комплекса точно определять местоположение и ориентацию носителя, синхронизируют изображение и звук с RSD, а также защищают барабанные перепонки от перепадов давления. +~ru~1~ + #################################################################################################### #################################################################################################### @@ -553,6 +586,16 @@ LeMU館内は酸素とヘリウムの混合ガスが その心はかつてと同じ、繊細なままだ。 ~jp~1~ +~ru +Кабураки Рёго +~ru~0 +Потерял память 1 мая 2017 года во время инцидента в LeMU и носил кличку «Малой». Старался выжить вместе с Куранари Такэси и остальными. +В 2034 году работает в фармацевтической компании Лейблих и тайно помогает Ю-хару в осуществлении проекта призыва Блика Винкеля. Чтобы спасти Такэси, который ценой своей жизни их спас, а также Коко, к которой он испытывал чувства, он вновь оказывается в ловушке в LeMU вместе с Ю-аки и другими 1 мая 2034 года, выдавая себя за Куранари Такэси. +~ru~0~ +~ru~1 +Пока никто не видит, он плачет по Коко, что продолжала спать в IBF. Иногда его мучают угрызения совести за то, что ему приходится обманывать Ю-аки и остальных. Внутри он остался таким же чутким и ранимым, как и тогда. +~ru~1~ + #################################################################################################### #################################################################################################### @@ -637,6 +680,12 @@ LeMU館内は酸素とヘリウムの混合ガスが あったのかもしれない。 ~jp~0~ +~ru +Старшая школа для девочек Кюмэйкан +~ru~0 +Школа для девочек, которую окончила Ю, а теперь посещает Сара. Тот факт, что в школе разрешены клубы вроде хакерского, может говорить о том, что школа ценит самостоятельность учащихся. С другой стороны, наличие «программы добровольного гражданского обслуживания» может свидетельствовать о том, что ранее в школе были куда более строгие порядки. +~ru~0~ + #################################################################################################### #################################################################################################### @@ -2898,3 +2947,130 @@ Watarase Kyousuke — protagonist of the first entry in the “My Merry May” s Prince — a reference to Ouji-sama Lv1, a game KID ported to the original PlayStation in 2002 ~en~1~ +~ru +Имена KID +~ru~0 +Представленные в выборе имена отсылаются на главных героев прошлых работ студии KID: +Миками Томоя – протагонист первой новеллы в серии «Memories Off» +Хаясэгава Сиина – протагонист первой новеллы в серии «Tentama» +Мияма Наото – протагонист Yume no Tsubasa +Исихара Макото – протагонист Never 7 -the end of infinity-, первой новеллы в серии «Infinity» +Хомура Мотоки – протагонист Close to 〜Inori no Oka〜 / Omoi no Kakera -Close to- +~ru~0~ +~ru~1 +Инами Кэн – протагонист второй части Memories Off (Memories Off 2nd) +Ватарасэ Кёскэ – протагонист первой новеллы в серии «My Merry May» +Принц – отсылка на Ouji-sama Lv1, игру KID, что была портирована на PlayStation в 2002 году +~ru~1~ + +#################################################################################################### +~tip~120 +~ru +Джон Доу +~ru~0 +Этим именем в судах и полиции США и Канады называют человека, чьё имя неизвестно, будь то неопознанное тело, анонимный свидетель или пациент, страдающий от амнезии. +~ru~0~ + +#################################################################################################### + +#################################################################################################### +~tip~121 +~ru +Кид +~ru~0 +Кид – он и в Африке Кид. Отсылка на старое имя Малого, что использовалось в исходном переводе WinKiller Studio. Для более лаконичного внедрения имени было использовано имя Билли Кида, известного стрелка времён Дикого Запада. +~ru~0~ + +#################################################################################################### + +#################################################################################################### +~tip~122 +~ru +Японская школа +~ru~0 +Японская школа – это 12-летняя система образования, состоящая из начальной (6 лет), средней (3 года) и старшей школы (3 года), причём отсчёт лет при переходе на следующий уровень школы начинается с первого (например, первый год старшей школы). +~ru~0~ + +#################################################################################################### + +#################################################################################################### +~tip~123 +~ru +Забавные выражения Ю +~ru~0 +Ю в попытках взломать пароль ссылается на японскую поп-культуру. + +В первом случае это завуалированная отсылка на похабно-детскую песенку-дразнилку, в которой обыгрывается созвучие たんたん (tantan) со словом, обозначающим мошонку. +~ru~0~ +~ru~1 +Во втором случае Ю произносит мантру «Бентра, Бентра, космические люди», которую использовали участники уфологической организации «Общество космической дружбы» (Uchū Yūkō Kyōkai) в попытках установить телепатической связи с пришельцами. +~ru~1~ + +#################################################################################################### + +#################################################################################################### +~tip~124 +~ru +«Что такое любовь?» +~ru~0 +Шутка Такэси построена на омофонах – словах с одинаковым звучанием, но разным написанием и значением. +Так, слово любовь (koi) по-японски записывается с помощью кандзи 恋, что созвучно: +1. слову «карп» (鯉); +2. прилагательному, что означает «густой», «насыщенный» (濃い); +3. слову «умысел», «намерение» (故意). +~ru~0~ + +#################################################################################################### + +#################################################################################################### +~tip~125 +~ru +Разделитель для суши +~ru~0 +Декоративный зелёный листик-разделитель между кусочками суши. Раньше его делали из настоящего листа (обычно бамбукового или похожего растения), а в наше время часто делается из пластика. +~ru~0~ + +#################################################################################################### + +#################################################################################################### +~tip~126 +~ru +Гламуреза +~ru~0 +В оригинале Такэси использует модное в конце 90-ых годов слово シロガネーゼ (Shiroganeze), образованное от названия района Сироканэ в Токио, в котором проживали обеспеченные и следящие за модой женщины, и итальянского суффикса -ese. +В СМИ «сироганезе» обозначало «богатую, стильную жительницу Сироканэ» – своего рода японский аналог «гламурной светской львицы» или представительницы «золотой молодёжи». +~ru~0~ + +#################################################################################################### + +#################################################################################################### +~tip~127 +~ru +Хомячелло +~ru~0 +Адаптация очередной шутки Такэси, в которой он даёт хомяку имя Хётоко Хамугоро: +– ひょっとこ (Hyottoko) – комическая маска в японском народном театре: кривой рот, вытянутые губы – забавная, нелепая физиономия. Используется как прозвище для кого-то с забавной или странной внешностью. +– ハム吾郎 (Hamu Gorō) – составное имя: ハム от Hamster и 吾郎 – типичное старомодное имя (например Горо Мадзима). +~ru~0~ + +#################################################################################################### + +#################################################################################################### +~tip~128 +~ru +Футон +~ru~0 +Традиционный японский матрас, который используется в качестве постели. До XIX века были доступны лишь для знати и богатых японцев, пока благодаря импорту сырого хлопка цена на них не упала. +~ru~0~ + +#################################################################################################### + +#################################################################################################### +~tip~129 +~ru +Гяру +~ru~0 +Название японской субкультуры, отличительной особенностью которой является любовь к вызывающему макияжу, высветленным волосам и и бижутерии. +~ru~0~ + +#################################################################################################### \ No newline at end of file