Changes

ChangeLog (UTF-8, ff=dos) Visual Novel Reader Since 6/18/2011 4/3/2016 SUN Fixed a severe msvc dll bug. I linked the dll

Views 231 Downloads 105 File size 1MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

  • Author / Uploaded
  • bqice
Citation preview

ChangeLog (UTF-8, ff=dos) Visual Novel Reader Since 6/18/2011 4/3/2016 SUN Fixed a severe msvc dll bug. I linked the dlls against debug libraries by mistake ... 3/27/2016 SUN [TAHScript](English, @riz) * Update TAH script for LEC. The scripts are from @errzotl sensei, and you can say thanks to him/her at [email protected]. [Game Engine] * Update Escude engine to support 「ダンジョン オブ レガリアス 」. Thanks for @mireado sama's investigation! 为「ダンジョン オブ レガリアス 」添加了提取文本的支持。 2/19/2016 FRI * Fix google translation support, which was broke because of API change. Translation alignment for Google is broken because of the change. Thanks for @mireado sama's report! 1/24/2016 SUN [Game Engine] * Handle text tags in QLiE engine as requested by @mireado. 1/22/2016 FRI [TAHScript](English, @riz) * Update TAH script for LEC and Atlas. The scripts are from @errzotl sensei, and you can say thanks to him/her at [email protected]. 1/9/2016 SAT [Game Engine] * Update WillPlus engine to support 見上げてごらん、夜空の星を. Scenario/Name/History/Choice can be translated. User-shared subtitles tested working. http://i.imgur.com/nt8gQmr.png http://i.imgur.com/NV2AE3V.png 为「見上げてごらん、夜空の星を」添加了内嵌翻译的支持。 1/1/2016 FRI [Game Engine] * Add translation support for コドモノアソビ. Embed translation also works. en: http://i.imgur.com/MMl0SHn.png zh: http://i.imgur.com/AThGjDW.png ko: http://i.imgur.com/kFpfx2W.png 为「コドモノアソビ」添加了提取文本的支持。 内嵌翻译的截图在上边。 Note that the BGI games have ruby text like ... that will downgrade translation quality.

If you are using Embed Translation, then nothing needed to be done as it will take care of ruby by default. Otherwise, if you are using ITH engine, just make sure the ruby elimination rules in Shared Dictionary are associated with your version of the game. * Add translation support for IZUMO4. Embed translation is broken for this game. 为 IZUMO4 添加了提取文本的支持。 但内嵌翻译无法工作。 I suspect Studio ego is using a different (older) game engine than Debonosu. So, I will not spend time fixing embed translation for this game until the next Debonosu game releases. 12/27/2015 SUN VNR's servers are migrated from Japan to US. Older versions of VNRs might be broken because of the migration after a month. VNR 的服务器搬迁到 US 了。 老版本的 VNR 在一个月后可能会无法正常使用了。 12/7/2015 Mon [i18n](Korean, @mireado) * Update VNR's UI translation in Korean made by @mireado sensei. 11/27/2015 FRI [Game Engine] * Do not extract English letters for mono games. 11/22/2015 SUN [Network] * Changed to access VNR's servers by domain names instead of by IP. Going to migrate VNR's servers from Japan to US some time next month or next year, where the servers are cheaper while having much more updated technologies. VNR's machine translation servers have already been deployed in the bay area, which worked pretty well. Changing to access domain names would make the server-side migration transparent to the end users. VNR used to access certain websites by IPs to bypass CCP's Internet censorship for foreign hosts and DNS. For example, whenever there is a big event in China, foreign domains tend to become unstable or temporarily blocked. But this made changing VNR server's IP address a pain in ass that all older versions of VNR would be broken. [TTS] * Fixed the broken Voiceroid+ TTS caused by the online API changes. Also add support of male voice actor 水無瀬コウ (http://www.ahsoft.com/voiceroid/kou/). 修正了 Voiceroid+在线 TTS 无法使用的问题。 另外,添加了对男性的水無瀬コウ的支持。 感谢@水上薰·墨香 sama 的报告! [Game Engine] * Add support for 凍京 NECRO.

Embed translation also works but only supports English translation. But font is too large and English is so much verbose that the translation could go out of screen. http://i.imgur.com/FFqgnyF.png 为「凍京 NECRO」添加了提取文本的支持。 内嵌翻译仅限英文。 11/16/2015 MON [Machine Translation] * Changed to only support translation of Chinese/English/Korean from Japanese. Due to limited server-side resources, support for other languages are currently disabled. 11/15/2015 SUN [Bugfix] * Fixed a multi-threading bug that could crash Shared Dictionary. [Removed * Remove * Remove * Remove * Remove * Remove

Features] regular expression tester. voice recognition. BBCode tester. YouTube downloader. game finder.

[Machine Translation] * Add Thai language support. 11/8/2015 SUN [TAHScript](English, @riz) * Update TAH script for LEC and Atlas. The scripts are from @errzotl sensei, and you can say thanks to him/her at [email protected]. [Machine Translation] * Resume the machine translation that is trained from user-shared subtitles. It currently only supports en/zh/ko/vi/fr/es/ru, which has relative more subtitles in the database. You can also tested it here: http://tranzz.com/translate Due to copyright concerns, the translation is trained only from game subtitles instead of commercial dictionaries. The current translation quality is worse than before as the result. My eventual goal is to allow everyone to create his own translators where all settings/translation rules/corpus can be fully adjusted and managed. I hope combing our community's efforts, we can create our best domain-specific machine translators. Regarding the future of VNR, I might not have lots of time to work on it like before. Instead of adding more features, I might focus on making existing features more stable and removing features that are seldom used. And here are the directions that I am planning to go in case you are interested: 1. Remove features that are not directly related to reading VNs (youtube, chatting, game information, etc.) 2. Split non-VN translation support like OCR/TextReader out into separate applications.

3. Move subtitles/shared dictionary management to the cloud. Loading translation rules only for the games that are being played. This will help limit memory usage of the shared dictionary that becomes larger and larger. 4. Improve translation quality while minimizing local resource usage. 9/25/2015 FRI [JBeijing](Chinese, @najizhimo) * 更新了@najizhimo 维护的 J 北京词库。 9/20/2015 SUN [Ehnd](Korean, @mireado) * Update Ehnd dictionary from @mireado sensei. It can also be downloaded independently if you don't want to use VNR: http://sakuradite.com/topic/898 9/18/2015 FRI [JBeijing](Chinese, @najizhimo) * 更新了@najizhimo 维护的 J 北京词库。 9/12/2015 SAT [JBeijing](Chinese, @najizhimo) * 更新了@najizhimo 维护的 J 北京词库。 9/8/2015 TUE [JBeijing](Chinese, @najizhimo) * 更新了@najizhimo 维护的 J 北京词库。 9/5/2015 SAT [Shared Dictionary] * Fixed a bug that might crash the machine translator while applying rules. 修正了一个可能会崩溃的问题。 8/30/2015 SUN [Embed Translation] * Add support for CatSystem2 engine. Tested with 果つることなき未来ヨリ, ゆきこいめると, グリザイアの果実 and カミカゼ☆エクス プローラー!. Scenario/name/choice/history/message texts can be translated. en: ko: vi: zh:

http://i.imgur.com/t5ip0az.png http://i.imgur.com/LsHOAaj.png http://i.imgur.com/DjbVhrj.png http://i.imgur.com/gSrUdat.png

为 CatSystem2 引擎的游戏添加了内嵌翻译的支持。 8/29/2015 SAT [Embed Translation] * Extend Pensil engine to support translating choices and translating games with 2RM adventure engine . 为 2RM 引擎的游戏添加了内嵌翻译的支持。 * Add support Tested with It can also the screen, and

for minori games. 12 の月のイヴ and ソレヨリノ前奏詩. translate invisible voiced scenario texts that are not painted on hence recommended for text extraction.

en: http://i.imgur.com/OHRjvpy.png ko: http://i.imgur.com/hro9WJw.png

vi: http://i.imgur.com/n4TB6p0.png zh: http://i.imgur.com/jZKc2Tt.png 为 minori 的游戏添加了内嵌翻译的支持。 8/28/2015 FRI [Shared Dictionary] * Add a Priority property for all rules that will affect the order to apply these rules. If you seldom use Shared Dictionary and don't know what Priority is, it is OK to just leave it empty. When determine the order to apply translation rules, the number of characters in pattern is one of the major factors that will affect the order. Usually, the longer rules will be applied before shorter rules by default. Now, the new Priority property will override the default pattern size, and the larger the Priority value, the earlier the rule might be applied. For #1. #2. #3.

example, given the following three rules: 椿姫 = 츠바키 お?姫 = 공주님, regex = true 姫 = 공주

By default, the three rules will be applied in order of #2, #1, #3, because #2 has the longest pattern. As the result, 椿姫 might be broken because of お?姫. Now, if I set the priority of #2 to 1.5, then the translation order will become: #1, #2, #3. This is because the default priority of #1 is "椿姫".length = 2, and that of #3 is "姫".length = 1, and user-specified 1.5 for rule #2 is smaller than 3 and larger than 1. If you want to change the priority of a rule, personally I recommend to make it around the estimated number of characters in the Pattern. For example, because "お?姫" can match either "お姫" (2 chars) or "姫" (1 char), I just chose "1.5" as its priority. But you don't have to obey this convention. You can set priority to any number if necessary. Rules with very large priority tend to be applied at first, and those with small negative priority tends to be applied at last. For example, I can set priority of #2 to -1, and then the translation order will become #1, #3, #2. If you want to delete a priority, you can just set it to zero. Note that priority is not the only factor that affects transformation order, which is determined in a complicated way. Even if you assign a very large/small priority to a rule, it is still not guaranteed to be applied before/after all other rules. 为词条添加了一个【优先级】的属性,可以影响应用词条的顺序。 如果你不常用共享辞书,那么可以忽略这个属性。 优先级高的词条会被优先应用于翻译;反之优先级低的词条会被推迟应用。 如果没有指定优先级,VNR 默认会使用匹配文本的长度。 所以如果需要,我个人建议大家约定估计的匹配文本的长度为这个属性的值。不过你也可以不遵守这个约定。

8/23/2015 SUN [Game Engine] * Add support for games from 玉藻スタジオ. Tested 閃光の騎士 ~カリスティアナイト~ and 冒険者の町を作ろう!2. 为玉藻スタジオ社的游戏添加了提取文本的支持。 [TAHScript](English, @riz) * Update TAH script for LEC and Atlas. The scripts are from @errzotl sensei, and you can say thanks to him/her at [email protected]. 8/22/2015 SAT [Embed Translation] * Add support for ge-sen18/a-unicorn games. Tested 三極姫 4, 戦極姫 6, and 天極姫. All texts can be translated. However, there are certain in-game texts that are not rendered using standard GDI fonts, where all non-Japanese and non-Chinese characters (English, Korean, ...) might not be properly displayed. en: http://i.imgur.com/bGKujRG.png http://i.imgur.com/M6xriQh.png http://i.imgur.com/wemChRV.png http://i.imgur.com/uHdc6bT.png ko: http://i.imgur.com/7CzC3qo.png http://i.imgur.com/sELiU5M.png http://i.imgur.com/Mhh3drZ.png http://i.imgur.com/EW58YcV.png vi: http://i.imgur.com/2zxE706.png http://i.imgur.com/149p2bm.png http://i.imgur.com/hTLiQmf.png http://i.imgur.com/hbzlQgJ.png zh: http://i.imgur.com/Jb6I7Dn.png http://i.imgur.com/o9HQLbX.png http://i.imgur.com/bfEt47H.png http://i.imgur.com/mlwmxa1.png 为 gesen18 的游戏添加了支持。截图在上边。 8/21/2015 FRI [Text-to-speech] * Update the support of Google TTS, which was broken since the changes of Google APIs. 修正了 Google 语音合成失效的问题。 8/19/2015 WED [Embed Translation] * Add support for Waffle games. Tested 完全時間停止, 漫喫ハプニング, and 巨乳ファンタジー 2 if. Screenshots are as follows: en: http://i.imgur.com/hQr9yDK.png ko: http://i.imgur.com/wjejBXj.png zh: http://i.imgur.com/kuAzN0T.png 为 Waffle 社的游戏添加了支持。截图在上边。

8/16/2015 SUN [Embed Translation] * Translate in-game texts for ウルスラグナ~征戦のデュエリスト~. en: http://i.imgur.com/iqHjV7M.png ko: http://i.imgur.com/0e2oHyL.png zh: http://i.imgur.com/BtQoAhb.png 翻译「ウルスラグナ」游戏内的文本。截图在上边。 * Add support for old GXP engine. Test working for 魔導書の司書 and デモニオン II 魔王と三人の女王. 为老版本的 GXP 引擎的游戏添加了内嵌翻译的支持。 * Add tentative support for Rance03. It only works for English. All texts were surposed to support translation. However, the logic to determine whether it is safe to translate without crashing the games and how to distinguish scenario/name/other texts is currently inaccurate. en: http://i.imgur.com/l1pwGWj.png http://i.imgur.com/52KJbKC.png http://i.imgur.com/FBEX15c.png 8/15/2015 SAT [Embed Translation] * Add support for GXP2 engine. Test working for 塔の下のエクセルキトゥス and ウルスラグナ~征戦のデュエリスト~. Scenario/name/history/choices/popup messages can be translated. It might not support old GXP games. en: http://i.imgur.com/MQPy95V.png ko: http://i.imgur.com/dS6xvav.png zh: http://i.imgur.com/LK0vtCr.png 为 GXP2 引擎的游戏添加了支持。截图在上边。 8/12/2015 WED [Embed Translation] * You can disable embedding translation for a specific game by pressing "Edit" on the bottom of the SpringBoard. 在 SpringBoard 下边点击【编辑】的选项中,可以只对某一个游戏禁用内嵌翻译。 [Game Engine] * Add generic GDI+ hook to GdipAddPathString. Test working for all Rejet games. Game engine is not needed for Rejet games any more. 8/11/2015 TUE [Game Engine] * Update System43 engine to support ランス 03. btw., embed translation support is broken for the new System43 engine. 为「ランス 03」添加了提取文本的支持。 8/10/2015 MON [Shared Dictionary] * Make sure the processing of Shared Dictionary is thread-safe to avoid possible crash caused by thread contention. 加强了处理【共享辞书】的线程安全,修正了多线程快速翻译时可能的崩溃。

8/9/2015 SUN [Embed Translation] * Add support for the latest Malie3 engine. Tested working for シルヴァリオ ヴェンデッタ, 相州戦神館學園, 神咒神威神楽, Vermilion, and BRAVA!! It might not work for old Malie games though. All texts can be translated. Some screenshots are as follows: en: http://i.imgur.com/tATc6SL.png http://i.imgur.com/6TWdtSx.png -- with ruby for Shinigami (God of Death) in the Shared Dictionary ko: http://i.imgur.com/iVCwhQR.png http://i.imgur.com/HVaYOhQ.png zh: http://i.imgur.com/Pt6efBE.png http://i.imgur.com/v1LjadG.png http://i.imgur.com/gvBeeYC.png 为最新版的 Malie 引擎的游戏添加了支持。截图在上边。 8/7/2015 FRI [Embed Translation] * Add support for LC-ScriptEngine. Tested working for 恋姫†無双, 春恋*乙女, and 姦獄学園. Some screenshots are as follows: ko: http://i.imgur.com/wfscBjo.png http://i.imgur.com/uuFdV99.png zh: http://i.imgur.com/jTGaNbh.png en: http://i.imgur.com/OKwkjGY.png 为 LC-ScriptEngine 引擎的游戏添加了支持。截图在上边。 8/6/2015 THU [TAHScript](English, @riz) * Update TAH script for LEC. The scripts are from @errzotl sensei, and you can say thanks to him/her at [email protected]. [Game Information] * Display the number of users that have played the game (unique IP visitors) in the game information page. 在【游戏情报】中会显示玩过这个游戏的人数。 8/4/2015 TUE [Embed Translation] * Add support for Taskforce2 engine. Test working for 神様(仮) and オトメスイッチ. Screenshots are as follows. en: http://i.imgur.com/PfQnckO.png ko: http://i.imgur.com/LHghKA8.png zh: http://i.imgur.com/3DucwGh.png 为 Taskforce2 引擎的游戏添加了支持。截图如上。 * Add support for LunaSoft games. It only works for English. All texts can be translated. en: http://i.imgur.com/N8gR9mC.png

http://i.imgur.com/dFV7laB.png http://i.imgur.com/TBTPsaV.png 8/3/2015 Mon [i18n](Korean, @mireado) * Update VNR's UI translation in Korean made by @mireado sensei. 8/2/2015 SUN [i18n] * Add translation languages of Filipino (Tagalog), Slovenian, Hebrew, Bulgarian, Belarusian, Estonian, Latvian and Lithuanian. 8/1/2015 SAT [Internet] * Fixed the broken proxy to ESG. 修正了代理批评空间仍无法访问的问题。 [Embed Translation] * Add support for Pensil engine. Some screenshots are as follows. Tested working for 大正×対称アリス, はにつま, and 星逢のプリズムギア. Scenario/Name/Choice/History can be translated. ko: http://i.imgur.com/7mvXy77.png http://i.imgur.com/tzmoi1u.png zh: http://i.imgur.com/RFKSyEn.png http://i.imgur.com/R8eYb5Z.png 为 Pensil 引擎的游戏添加了支持加。截图在上边。 * Update support for ShinaRio v2.5 to properly recognize Name thread. Some screenshots for ソーサリージョーカーズ are as follows. en: http://i.imgur.com/jy3cSQW.png ko: http://i.imgur.com/6tEYRYu.png zh: http://i.imgur.com/ozwf2wG.png 修正了「ソーサリージョーカーズ」内嵌姓名翻译可能会出错的问题。 * Add a button to Preferences/Embed to restore default settings. 在【使用偏好/内嵌翻译】中添加了一重置内嵌设定的按钮。 7/31/2015 FRI [Embed Translation](CM3D) * Fix the issue that embedding Other text might cause CM3D 2 to be black out. Thanks for @mireado sama's report! 修正了开启内嵌翻译可能会让 CM3D 2 黑屏的问题。 * New lines are properly handled for CM3D 2. Word wrapping also works for embedded scenario text near line boundaries. [Game Engine] * Update Abel engine to support 不条理世界の探偵令嬢. 为「不条理世界の探偵令嬢」添加了提取文本的支持。 7/30/2015 THU [Embed Translation] * Add support for NEXTON games. Name/scenario/choice/history can be translated.

It does not have the issue of floating signatures and hence recommended also for text extraction. 为 NEXTON 的伞下会社的游戏添加内嵌翻译的支持。 7/29/2015 WED [Game Information] * Fixed the broken youtube download module that was caused by the deprecation of youtube v2 api. [Embed Translation](CM3D) * Fix the issue that embedding Other text might crash CM3D 2. Thanks for @mireado sama's report! 修正了内嵌翻译 CM3D 2 时可能会让游戏崩溃的问题。 [Game Engine](CM3D) * Update the split logic to make it easier to select text threads from CM3D 2. Thanks for @xemnaseternal sama's report! 7/28/2015 TUE [Embed Translation] * Add support for FAVORITE games. Tested working for 星空のメモリア and 紅い瞳に映るセカイ. It can properly handle ruby in text, and hence recommended over getting text from ITH, which will be messed up by ruby. http://i.imgur.com/XXfG7cD.png 为 FAVORITE 的游戏添加了内嵌翻译的支持。截图在上边。 对 FAVORITE 的游戏推荐使用内嵌翻译提取文本。因为 ITH 的提取方式会被游戏文本中的 Ruby 扰乱。 7/27/2015 MON [Embed Translation] * Add support for Mono games. Currently, only tested working for Custom Maid 2, where most texts can be translated. Note that game text speed must be set to maximum. While translation in all languages can be embedded, there is a big known issue that long translation might be truncated. As the result, only language that is much more concise than Japanese (such as Chinese) can be properly displayed. Languages that are much more verbose than Japanese (such as English) will usually be truncated. You might have to turn off embedded translation for Scenario text if being truncated. ko: http://i.imgur.com/ri5Hnjo.png -- As you can see that the scenario translation is truncated http://i.imgur.com/C3434Gq.png http://i.imgur.com/ZdgYs5Z.png -- Maximize Text Speed here in the Message panel zh: http://i.imgur.com/sk7Obtg.png http://i.imgur.com/Fdu6vuA.png http://i.imgur.com/iujRDs5.png -- 这里,一定需要将 Message 里的【文本速度】调整为最 快! http://i.imgur.com/ChJwS5K.png http://i.imgur.com/G6u7XuZ.png

为 Mono 的游戏添加了内嵌翻译的支持。 当前仅有测试 Custom Maid 2,截图在上边。另外,内嵌翻译一定需要将游戏文本速度调整为最快!(参 看上边的截图) * Add support for プレイクラブ. It suffers from the same problem as Custom Maid that long translation might be truncated. And the game text speed must be set to maximum. ko: http://i.imgur.com/2jXY6UE.png http://i.imgur.com/C8GYqR4.png http://i.imgur.com/VNY145m.png zh: http://i.imgur.com/I9IrCSF.png http://i.imgur.com/EHnhROb.png http://i.imgur.com/kQ1MrEp.png 为「プレイクラブ」添加了内嵌翻译的支持。截图在上边。 同样的,文本的速度一定要设定为最快才可以。 7/25/2015 SAT [Embed Translation] * Add support for Lucifen engine. Test working for プリズム・プリンセス and 猫撫ディストーション. Screenshots are as follows. ko: http://imgur.com/dJpfaIq,02M3ypB,tVyQokf,aXyP3IX zh: http://i.imgur.com/kqSp943.png 为 Lucifen 引擎的游戏添加了支持。截图在上边。 * Fix the issue that game window might blackout when Window text translation is enabled. Thanks for @王子夜礼服假面 and @mireado's report! * Add support for old SystemAoi games. Tested working for 「王賊」. 为 SystemAoi 的老游戏添加了引擎。 [Game Engine] * Add support for old SystemAoi games. Tested working for 「王賊」. 为 SystemAoi 的老游戏添加了引擎。 * Disable Mono Unity hook for CM3D, which might slown down the game. Thanks for @xemnaseternal sama's report! 7/24/2015 FRI [Game Engine] * Add support for Escu:de games, which does not require changing game font to "MS Gothic". 为 Escu:de 社的游戏添加了支持。提取文字不再需要修改游戏的字体。 [Embed Translation] * Add support for Esc:ude games. Screenshots are as follows. Test working for Re;Lord, パニカル・コンフュージョン, and 花嫁と魔王. If the translation's language is not English, please change the game's default font to "MS Gothic" in Configure.exe. ko: http://imgur.com/eoujHm7,sz5TemN zh: http://imgur.com/ncrMb0R,VvwBYVA

为 Esc:ude 社的游戏添加了支持。截图在上边。 内嵌翻译需要通过 configure.exe 修改游戏字体为 MS Gothic。 7/21/2015 TUE [Embed Translation] * Embedded translation won't get truncated for "LORD of VERMILION ARENA:LoVA" at http://lova.jp. A screenshot is as follows. en: http://i.imgur.com/ItwyDrI.png zh: http://i.imgur.com/834xGe6.png "LORD of VERMILION ARENA:LoVA" (http://lova.jp) 内嵌的翻译不会被截断了。截图在上边。 * Properly handle ruby for AMUSE CRAFT games. Thanks for @mireado sama's report! 7/20/2015 MON [Embed Translation] * Add support to translate "LORD of VERMILION ARENA:LoVA" at http://lova.jp. Screenshots are below. Almost all texts can be translated. But there are some known issues: + Due to technical difficulties, there is no way to create a ITH engine for this game. If you don't want to embed translation, you can just set Scenario/Name/Other/Window to Disable in Preferences/Embed. + Game font cannot be changed. - If the translation language is English, it should work fine. - If the translation language is Chinese In Preferences/Embed, please turn on the option to use Traditional Chinese and Japanese kanji as preferred Chinese variants instead of Simplified Chinese. - For any languages other than English/Chinese I don't know how to make it working. You might have to looking for ways to change the game font to that support the character set of your language. en: http://i.imgur.com/vMpdbV6.png http://i.imgur.com/2yDfgew.png http://i.imgur.com/fs3YZHm.png http://i.imgur.com/Yyy9yIi.png zh: http://i.imgur.com/i7MPagT.png http://i.imgur.com/J76tYBv.png http://i.imgur.com/Enya1CZ.png http://i.imgur.com/yQ0qQPF.png 支持内嵌翻译 LORD of VERMILION ARENA:LoVA (http://lova.jp). 截图在上边。 游戏内几乎全部的文本都可以翻译。不过,有一些已知的问题: + 由于技术困难,无法通过 ITH 来翻译这个游戏。 + 简体中文字体无法正常显示。 请将用户语言设定为中文,并在【使用偏好/内嵌翻译】中指定优先的中文字符集为正体中文和日本汉字。 [Text Settings] * There is always a Null thread in Text Settings. If you want to disable text extraction, just set scenario thread to Null. 如果你要停止提取文本,可以在文本设定中设定对白文本为 Null。 7/18/2015 SAT [Dictionary](Korean)

* Add support to lookup hanja dictionary for Japanese kanji. The dictionary can be downloaded for free in Preferences/Downloads, and enabled in Preferences/Dictionaries. * Add an option to display hanja pronunciation for kanji in Preferences/Dictionaries. When enabled, for example, click a phrase containing "香" and VNR will popup the following: 【香{향,incense}】[禾{화,grain}, 日{일,sun}] [Embed Translation] * Add support for AMUSE CRAFT games. It currently only works for English. Scenario/Name/Choice/Backlog can be translated. Tested working for 時計仕掛けのレイライン and ManguSta . [Game Engine] * Update AMUSE CRAFT engine so that text threads won't be floating and split. If you are playing AMUSE CRAFT games, please re-adjust Text Settings. 7/17/2015 FRI [Embed Translation] * Add support for old ShinaRio games (ver 2.40 ~ 2.47). Tested working for Vestige and 花と乙女に祝福を. 7/16/2015 THU [Embed Translation] * Update BGI engine to support handling ruby. 7/12/2015 SUN [Yomigana](Vietnamese) * For Vietnamese translation of Japanese names, VNR can display the Phiên âm HánViệt pronunciation above Yomigana as ruby. This behavior is disabled by default, and can be enabled in Preferences/Shared Dictionary. For example, when enabled, given "蓮花 = れんふぁ", VNR will display "Liên Hoa" above "Renfa". [UI] * The growl notification on the Desktop top-right corner can be disabled in Preferences/UI. 在【使用篇好/界面】中可以停止在桌面的右上角显示提醒。 [Game Engine] * The code bases for Windows XP and non-Windows XP are merged. vnrhookxp.dll is removed, and will no longer be recognized as virus. In the old version of VNR, the translated games were much more likely to crash on WinXP comparing to non-WinXP. And PPSSPP game engines did not work on Windows XP. Now, there should be no much difference between WinXP and non-XP. Game engines on Windows XP should be as stable as non-XP. And translation support for PPSSPP games also works on Windows XP now. * Fixed the issue that the game might crash on Wine when VNR is closed. * Properly handle UNC path when the game is launched from a remote network drive. [Embed Translation] * Fix a bug that name translation might not work when enabled.

Thanks for @mireado sama's report! 修正了一个内嵌姓名翻译有时会失效的 bug。 * Automatically-generated ruby for yomigana also works for certain game engines that supports Ruby. http://i.imgur.com/L9u4JUe.png 部分游戏的内嵌翻译也会支持姓名罗马字注音的 Ruby。 截图在上边。"Taiyo" 是 "太陽=たいよう" 的读法词条生成的罗马字。 btw., if you can read Hiragana, it is always recommended to use Yomigana instead of Name rules to define translation for Japanese names in the Shared Dictionary. Yomigana is shared across languages and can really help reduce duplicates. And it usually has more information than direct language-specific name translation, and hence might enable more features in the future. btw., 关于共享辞书中的姓名和读法词条,如果你可以看懂日文的仮名,希望可以尽量用【读法】定义日 文人名的翻译。 读法词条在不同语言之间共享翻译,并可以减少不同语言之间重复定义。 另外,读法词条通常比直接的日中姓名翻译包含更多的信息,可以提供比如罗马字 Ruby 这样的额外的功能。 7/11/2015 SAT [Embed Translation] * Add support for ShinaRio (ver >= 2.48) games. Tested working for 3rdEye games. ko: http://i.imgur.com/4CQtrye.png zh: http://i.imgur.com/tVe2gaO.png 为最近的 ShinaRio 引擎的游戏添加了内嵌翻译的支持。截图在上边。 [Yomigana] * For Korean translation of Japanese names, VNR can display the pronunciation of Hanja above Yomigana as ruby. This behavior is enabled by default, and can be disabled in Preferences/Shared Dictionary. For example: - Given 悠真 = ゆうま, VNR will display 유진 above 유우마 as 悠 is 유 and individual 真 is usually 진. - Given 蓮花 = れんふぁ that is also a Korean phrase, VNR will display 연화 above 렌파 as 蓮花 is 연화 in Korean, although 蓮 can also be 련 when used individually. This only applies to the Yomigana definition of Japanese names that consist of Hanja. If the automatically-generated ruby is inappropriate, you can manually define a ruby to override the default one. * 在日中日文时,对于通过読み仮名定义的姓名翻译,VNR 增加了一个选项可以在翻译的上方显示日文原始的 罗马字读音。 比方说,给定:悠真 = ゆうま,那么 VNR 会在翻译中"悠真"的上方显示 Yuuma。 这个选项可以在【使用偏好/共享辞书】中开启。选项默认是关闭。 这个功能也许仅对想学习日文的同学有一点点帮助。

比方说,很多人知道堀江由衣,但是并不知道在日文里怎么读这个名字(Horie Yui)。 在游戏中,有时也会无法把翻译的中文姓名与日文的读音对应。 如果你在学习日语,这个功能也许可以对熟悉罗马字的发音有些帮助。 * Fix a bug that displaying ruby in the translation might sometimes break layout. 修正了显示翻译 Ruby 有时会造成排版错误的问题。 7/8/2015 WED [i18n](Korean, @mireado) * Update VNR's UI translation in Korean made by @mireado sensei. 7/7/2015 TUE [Embed Translation] * Add support for old QLiE games. http://sakuradite.com/upload/image/899.jpg 为 QLiE1 引擎的游戏添加了内嵌翻译的支持。截图在上边。 7/5/2015 SUN [Embed Translation] * Add support for QLiE2 games. Tested working for recent Navel games. http://i.imgur.com/4FXZxek.png 为 QLiE2 引擎的游戏添加了内嵌翻译的支持。截图在上边。 7/4/2015 SAT [Embed Translation] * Add support for WillPlus games. Tested working with Re:BIRTHDAY SONG 恋を唄う死神 and ゴールデンマリッジ. Scenario/Name/Choice texts can be translated. It also supports embedding ruby definition in the Shared Dictionary. VNR will also fix the game encoding issue so that text can display properly without additional locale switcher on Windows with Japanese locale. ko: http://i.imgur.com/i0nzBZt.png zh: http://i.imgur.com/3ycnXxN.png 为 WillPlus 的游戏添加了内嵌翻译的支持。截图在上边。 [Game Engine] * Update WillPlus engine to support extraction of character names. 7/3/2015 FRI [Shared Dictionary] * Warm up Shared Dictionary after a game is launched. [Embed Translation] * The transcoding option for Windows translation is slightly changed. If your translation's language is English, transcoding is not needed. If your translation's language is Korean, Chinese, or any language that has non-ASCII characters and the Windows text is not properly displayed, you can try enabling the transcoding option. VNR by default won't modify UTF-16 text. When transcoding is enabled, VNR will instead first encode UTF-16 text using

the system encoding, and then decode it using Shift-JIS (i.e. "transcode" wide characters from system encoding to Japanese). It might help fix the encoding issue of windows text. The transcoding option for scenario/name/other text is removed as it could crash certain games. Please use locale switcher such as Locale Emulator instead of replying on embedding translation to fix non-Windows text encoding. 如果窗口的文字出现乱码,你可以尝试在【使用偏好/内嵌翻译】中打开【转码】的选项。 * Add an option in Preferences to change the default machine translator for scenario text. 添加了一个可以修改用来翻译内嵌对话文本的翻译器的选项。 7/2/2015 THU [Embed Translation] * Make sure that game font for SiglusEngine games can always be changed. 修正了 SiglusEngine 的游戏的字体有时无法改变的问题。 7/1/2015 WED [Embed Translation] * Add support for CMVS engine. Tested working with クロノクロック, ハピメア, and 未来ノスタルジア. http://i.imgur.com/koWX7V9.png 为 CMVS 引擎的游戏添加了内嵌翻译的支持。截图在上边。 6/30/2015 TUE [Embed Translation] * Fixed a bug that might crash 「Angel Beats」. 修正了一个可能让「Angel Beats」崩溃的 bug。 * Add support for Cotopha engine. Tested working with キスと魔王と紅茶 and お兄ちゃん、右手の使用を禁止します! http://i.imgur.com/kpktJ5U.png http://i.imgur.com/lUoh6Fa.png 为 Cotopha 引擎的游戏添加了内嵌翻译的支持。截图在上边。 [Game Engine] * Update Cotopha engine to support recent games. 6/29/2015 MON [Embed Translation] * VNR will embed ruby defined in the Shared Dictionary into the game if possible. This only works for game engines that support ruby, currently only Leaf and Debonosu games. 如果游戏引擎支持,VNR 会内嵌共享辞书中的 Ruby 定义到游戏。 * Update Debonosu engine to support translating all texts in アヤカシ散華. 修正了「アヤカシ散華」内部分文本无法翻译的问题。 [Shared Dictionary] * Add a property to each rule to specify whether the rule should be applied only to translate window/name/scenario/other thread texts.

For example, if there are repetitions only in the name text thread. Then we can create a game rule to eliminate repeats with context set to Name so that it only applies to the name thread. Another example: "ロード" appearing in the Window menu is more common to mean "Load" than "Road". Now we can now create a "ロード" = "load" definition and only applies it to translate Window texts. English machine translation tends to prepend "A" or "The" before the translation of individual items. But for Window texts, for example, it is more common to translate "ゲーム" to "Game" instead of "A game" or "The game". Now we can create an output rule to delete leading "A" and "The" for window text translation. 添加了一个语境属性可以指定词条是否仅仅适用于窗口、对话、姓名和其他文本的翻译。 6/28/2015 SUN [Shared Dictionary] * Add a new ruby syntax for displaying translation above the translation. For example, given the following definition in the Shared Dictionary: - Type: Translation - Pattern: 雪 - Translation: Yuki - Ruby: Snow Then, VNR will translate 雪 to Yuki, while displaying Snow above yuki. This might be helpful when you want to translate a word both by pronunciation and by meaning, when you can define Translation = pronunciation and Ruby = its literal meaning. Alternatively, the above definition is equivalent to the following rule: - Type: Translation - Pattern: 雪 - Translation: [ruby=Snow]Yuki[/ruby] This syntax might be helpful if you want to define multiple ruby in the same rule. Here's another example: - Type: Translation - Pattern: 雪ノ花 - Translation: [ruby=Snow]Yuki[/ruby] no [ruby=Flower]Hana[/ruby] If you are familiar with HTML, you can expect [ruby=Snow]Yuki[/ruby] to be transformed to SnowYuki, (although it is not what is actually happening under the water. And it won't work if you use tag directly in translation.) Ruby definition is only allowed when the definition type is Translation, Name, Yomigana, Prefix, Suffix, or Output. If you feel Ruby annoying, you can always disable displaying ruby definitions in Preferences/ShareDictionary. This feature is requested by @mireado sama and thanks for this suggestion! 对共享辞书的词条添加了一个 Ruby 的定义。Ruby 的定义会显示在被定义翻译的上边。 比方说,更定如下定义:

- 类型: 姓名 - 匹配: アイリス - 翻译: 鸢尾花 - Ruby: Iris 那么 VNR 会把"Iris"显示在"鸢尾花"的上方(好像 HTML 中的语法)。 另外,上边的定义和如下的语法是等价的: - 类型: 姓名 - 匹配: アイリス - 翻译: [ruby=Iris]鸢尾花[/ruby] 当前 Ruby 只对翻译、姓名、读法、前缀、后缀和输出词条是有效的。 如果你不喜欢看到 Ruby,可以在【使用偏好/共享辞书】中禁用。 6/26/2015 FRI [Embed Translation] * VNR will do word wrap to the inlined translation if the game engine supports new lines (currently Leaf and Circus) so that a word will not break at new lines for languages having spaces. For other engines, word wrap might only work if you manually enable and specify the Maximum Text Width in Preferences/Embed. 6/25/2015 THU [TAHScript](English, @riz) * Update TAH script for LEC. The scripts are from @errzotl sensei, and you can say thanks to him/her at [email protected]. [Embed Translation] * Fixed the issue that embedded Korean text might be retranslated for SiglusEngine games. Thanks for @mireado sama's report! 6/24/2015 WED [Embed Translation] * Restore the support to embed English translations for CIRCUS games. Tested working with DC3PP and 水夏弐律, where scenario/name/choice/backlog can be translated. It currently only supports English. Here's a sample screenshot: http://i.imgur.com/DS0hj4q.png * Add support to embed English translations for Leaf games. It currently only supports English. Here's a sample screenshot: http://i.imgur.com/gDXlgN3.png * Text Settings will display if the game supported embed translation is for English-only. Currently, embed support for Circus, Leaf, and System43 games is for English only. 文本设定会显示内嵌翻译是否仅限英文。 当前 Leaf、Circus 和 System43 的游戏的内嵌翻译仅限英文。 6/22/2015 MON [Embed Translation]

* Update ARCGameEngine to support translating old Eushully game 神採りアルケミーマイ スター. Here are some screenshots: http://i.imgur.com/eSUJaZT.png http://i.imgur.com/4WwfSjW.png Thanks for @Reality sama's report! 修正了内嵌翻译无法应用于神采的问题。 6/21/2015 SUN [Embed Translation] * Add support to translate games with Retouch engine. Tested working with らぶらぶプリンセス and 箱庭ロジック. http://i.imgur.com/KH5zpr8.png 为 Retouch 的游戏添加了内嵌翻译的支持。截图在上边。 [Game Engine] * Update Retouch engine to properly handle ruby texts that are missing in the scenario thread. If you are playing Retouch games, you will have to manually re-adjust Text Settings. 修正了 Retouch 的游戏中带 Ruby 的文字跑到对白 thread 外边的问题。 如果你在玩 Retouch 的游戏,请重新调整下文本设定。 6/20/2015 SAT [Game Engine] * Add an alternative engine for games from でぼの巣製作所 to extract character name, which might be important for the automatic TTS feature. [Embed Translation] * For games from でぼの巣製作所, fix the inconsistent game locale code so that the game can run on non-Japanese Windows with Japanese locale. I have an English version of Windows 7 that is switched to Japanese locale and UI.

But to run Debonosu games, I still have to use Locale Emulator, etc. to launch the game even on Japanese locale. Now when embed translation is enabled on Japanese locale, Debonosu games will run properly without locale emulation. 在已经转为日文区域的非日文 Windows 下启动「でぼの巣製作所」不再需要 Locale Emulator 等转码工 具。 * Update でぼの巣製作所 engine to translate most GDI+/Direct3D texts. Here are some screenshots from 神楽花莚譚: - ko: http://imgur.com/KLlV5vL,NCLE4OE,PkXwiB9,uspuxpb - zh: http://imgur.com/wm5GAtx,1nKZbEE,WhJuuKM 几乎全部「でぼの巣製作所」最近的游戏内的文字都可以被翻译了。截图在上边。 * Improve caching of Other thread translations to reduce possible slowdown caused by embedding Other thread translations,

esp. for RPG games that might have a large number of Other thread texts. 6/19/2015 FRI [Embed Translation] * Add support to translate games from でぼの巣製作所. Test working for 神楽花莚譚 and 神楽道中記. http://i.imgur.com/oxLHPC2.png http://i.imgur.com/mXugkp2.png 添加了内嵌翻译「でぼの巣製作所」的游戏的支持。截图在上边。 [Game Engine] * Hook to GdipDrawString and GdipMeasureString functions for GDI+ games. These functions are discovered in Debonosu games. But I think they might also help other GDI+ games. 6/17/2015 WED [Game Engine] * Text extraction will be paused when either Control or Shift is pressed. 按下 Control 或者 Shift 会暂停提取文本。 * Add game engine for Silky's new games after leaving Elf. Comparing to GetGlyphOutlineA in old VNR, the new engine will not extract garbage configuration texts and does not have disordered name and scenario. [Embed Translation] * Add game engine for Silky's new games after leaving Elf. Scenario/Name/Choice texts can be translated. Test working with 根雪の幻影 and 堕ちていく新妻. http://i.imgur.com/CEnzaG8.jpg 为 Silky's 离开 Elf 后的新游戏添加了游戏引擎。截图在上边。 6/16/2015 TUE [Game Engine] * Update SiglusEngine to extract text in 円交少女 without any garbage characters. Be careful that there will be several SigusEngine3/4 text threads and only ONE is correct. Thanks for @mireado sama's report! Although the game uses SiglusEngine, embed translation currently does not support 円交少女. Going to fix that soon. 为「円交少女」添加了一个可以提取不带垃圾字符的文本的引擎。 6/13/2015 SAT [Embed Translation] * Update WolfRPG engine to translate most texts. http://i.imgur.com/4Ol75K9.png WolfRPG 的游戏可以内嵌翻译几乎全部的文本。截图在上边。 注:有些 WolfRPG 游戏默认的字体无法显示中文,需要在使用偏好中选定一个既支持中文,又支持日文的 字体。

比如像下边截图那样,设定 Tahoma 为字体才可以正常显示,因为 Tahoma 同时支持中文和日文。 如果使用只包含中文的字体(如 SimSun),那么文字会无法正常显示。 - 正常显示(font family = Tahoma, 字符集 = 不修改): http://i.imgur.com/JP8RN65.png - 不正常(font family = SimSun, 字符集 = 简体中文): http://i.imgur.com/C0GkkXF.png [Shared Dictionary] * The location of the offline data of the Shared Dictionary is moved to Caches/Sync. [Network] * Improve the communication mechanism to reduce the failure when fetching large amount of online data such as Share Dictionary and game database. In the old version of VNR, VNR's server will query the database and render the large response at runtime, which would drain lots of resources, and might cause VNR's server to be less responsive when busy. Now, VNR's server will cache the data in Shared Dictionary and Game Database every day (on 4:00am Japan Standard Time). Then, VNR will first fetch the old cached static data, and then query incremental changes in the database made within 1 day. This will save lots of server resources because serving static data files cost very low memory/CPU and does not require database access. And even when the SQL database is busy, users are guaranteed to get the data updated one day ago. I am going to shutdown the online services for runtime queries of very large amount of data of Shared Dictionary and Game Database at the end of this month, after most users have updated VNR at least to this version. After that, I would expect VNR's server to have less busy time. But the older versions of VNR will be broken and no longer able to update Game Database and Shared Dictionary after this month. Currently, large numbers of user-shared comments/subtitles are still rendered at runtime, and downloading them could still fail when VNR's server is busy. I am going to implement the similar caching mechanism to comments/subtitles later to solve this problem. 改进了 VNR 在下载共享辞书、游戏数据库时的方式。 新的通信方式可以大量节省 VNR 服务器的资源,即使重置数据重新更新,也不那么容失败了。 但是,在大部分用户还没有更新到这版的 VNR 之前,VNR 的服务器在周末可能还是会很忙。 我打算在这个月底左右,关闭旧的更新方式。之后服务器就不会那么忙了,但是届时这个版本以前的老的 VNR 也就不能正常使用了。 6/12/2015 FRI [Game Engine] * Add hooks to CharNextA/CharNextW for unknown game engines. [Embed Translation] * Fixed a bug that might hang WolfRPG games when Korean translation was embedded. 6/11/2015 THU [Embed Translation] * Add support for games developed with Wolf RPG. Here are some screenshots from DRAGON SLAVE: http://i.imgur.com/wKb7Ova.png

http://i.imgur.com/XcXtSYT.png http://i.imgur.com/2yg4qLu.png http://i.imgur.com/VjYOEPj.png 为 WolfRPG 的游戏添加了内嵌翻译的支持。截图在上边。 6/9/2015 TUE [Embed Translation] * Add support for games developed with RPG ツクール VX ACE RTP v3. Here are some screenshots: (魔鎧の少女騎士エルトリンデ) http://i.imgur.com/g1rPMgA.png http://i.imgur.com/VDxFrso.png http://i.imgur.com/tcLTNw6.png http://i.imgur.com/wlIa9sn.png (Mogeko Castle) http://i.imgur.com/r1fuHPJ.png http://i.imgur.com/e3QiTwQ.png http://i.imgur.com/TEblPCi.png 为 RPG ツクール VX ACE RTP v3 的游戏添加了内嵌翻译的支持。截图在上边。 6/7/2015 SUN [Embed Translation] * For ソフトハウスキャラ games, make sure the embed text is always outlined so that it is easier to read. http://i.imgur.com/7rnPIET.png 修正了ソフトハウスキャラ的游戏有时内嵌文本字体没有被 outline 的问题。上边是截图。 6/6/2015 SAT [Embed Translation] * Restore the support for Elf/Mink games. Test working with 愛姉妹 4, 麻呂の患者はガテン系, and SEX ティーチャー剛史, where name/dialog/choice texts can be translated. Here are some screenshots: - en: http://i.imgur.com/crBqxtk.png - ko: http://i.imgur.com/Q9W8yAa.png - zh: http://i.imgur.com/3OxjgWd.png 恢复了对 Elf 和 Mink 社游戏内嵌翻译的支持。上边是一些截图。 * Add support to translate name/scenario/choice for games from ソフトハウスキャラ. Test working with BUNNYBLACK, アウトベジタブルズ, and 悪魔娘の看板料理. Here are some screenshots: http://i.imgur.com/AVh0EnP.png http://i.imgur.com/F75dGuk.png http://i.imgur.com/0iNKRXe.png 添加了内嵌翻译到ソフトハウスキャラ社游戏的支持。 * VNR will display if a game engine supports embedding translation in Text Settings. For all existing embed engines: System43 supports only English, while any other engines support English/Chinese/Korean on Windows Vista or above.

Support for Windows XP and languages other than English/Chinese/Korean are NOT well-tested, which might or might not work properly depending on whether the game font for the embedded character set can be properly customized. 如果一个游戏支持内嵌翻译,【文本设定】中会显示【支持内嵌】。 当前支持内嵌的游戏引擎中,只有 System43 不支持中文;其他的引擎都可以内嵌中文。 6/5/2015 FRI [Yomigana] * The default romanization standard for Japanese name is slightly changed to be consistent with Wikipedia. Additionally, I added an option to Preferences/Translation to toggle whether display macron for Japanese names, which is enabled by default. Personally, I feel macron is ugly, but it might contain more information. If you don't like having macron displayed, you can always disable it in Preferences/Translation. Here are some example romaji for Japanese names when macron is enabled (first) or disabled (second): - 佐藤(さとう) = Satō, Satou - 佐藤(さとー) = Satō, Sato - 佐藤院(さとういん) = Satōin, Satoin - 曹操(そうそう) = Sōsō, Soso - 曹操(そーそー) = Sōsō, Soso - 龍神(りゅうじん) = Ryūjin, Ryujin - かーくん = Kākun, Kakun For the yomigana definitions in the Shared Dictionary, only hiragana will have macron added, and katakana won't. For example: さとう will be translated to Satō, while サトウ will still be translated to Satou. The reasons behind this behavior are: 1. Hiragana is usually used for Japanese names, while katakana for English names. And macron does not exist in English. 2. You can use katakana definition to always disable macron. [Embed Translation] * Restore the support for all BGI games. Tested working with 世界征服彼女, 世界と世界の真ん中で, 恋想リレーション, and ピュア×コ ネクト. Scenario, name, and choice texts can be translated. Here are some screenshots from ピュア×コネクト: - Korean http://i.imgur.com/Hys4wRh.png http://i.imgur.com/Q0gApLu.png http://i.imgur.com/N365rDE.png - Chinese http://i.imgur.com/78ASEUC.png http://i.imgur.com/nXuERbQ.png 恢复了内嵌翻译到 BGI 游戏的支持。 全部 BGI 游戏都可以支持才是。对话、姓名、和選択肢都可以翻译。上边是截图。 [Game Engine] * Hook to more GDI functions below:

-

GetCharABCWidthsFloat GetCharWidth32 GetCharWidthFloat GetCharacterPlacement GetGlyphIndices GetTabbedTextExtent

6/4/2015 THU [Game Engine] * Add general hooks to GetTextExtentExPointA/W functions in GDI32. [Embed Translation] * Update Enshully engine to support embedding all languages. Here are some screenshots: - Korean http://i.imgur.com/wI2bv19.png http://i.imgur.com/H8YnZHi.png http://i.imgur.com/S7B5xqx.png - Chinese http://i.imgur.com/JriS8jT.png http://i.imgur.com/DJ4ye5p.png http://i.imgur.com/dFCPHb5.png http://i.imgur.com/BRxxAzj.png Eshully 的游戏支持内嵌中文翻译了。上边是一些截图。 下边是一些 related 的注意事项。 - 要开启内嵌翻译,直接在【使用偏好/内嵌翻译】里选择打开就好了。所有设定保持默认就好了。 - 打开内嵌翻译后,VNR 会自动删掉 Eshully 游戏内产生弹窗的函数。游戏不会产出任何弹窗才是。 - 打开内嵌翻译后,【文本设定】会变成只读的。 内嵌翻译的过程可以完全自动化,并不需要手动调整文本设定。文本设定仅供 debug 用。 - 要开启内嵌翻译,非常建议至少安装一个离线的日中翻译工具。 如果只使用在线的翻译器如百度,游戏可能会会卡卡的。 如果你同时打开百度和 J 北京,那么 J 北京的翻译会被内嵌,而百度的翻译会和以前一样外挂到游戏。 - VNR 默认会尽力去内嵌人工翻译,比如第一章截图就是。 但是,如果游戏文本包含 ruby,由于技术困难就没有办法内嵌人工翻译了。 - 如果你只想看到内嵌翻译,而不想看到外挂翻译,那么在左边的 dock 里,关闭游戏文本、姓名和翻译就 好了。 * Update Eushully engine that its global font can be changed. Here are some screenshots for embedding Vietnamese with customized font (family = Tahoma, weight = Ultralight): http://i.imgur.com/zwSFlC4.png http://i.imgur.com/LicFTRe.png btw, regarding the embedded font settings, it might be different for different OSes/languages/games. Here are some observations I found mostly from 神のラプソディ and AngleBeats, which might be served as a reference for other games. + Changing font might have not effect, and might require restarting the game, depending on the game. For example:

- Changing font for AngelBeats requires restarting the game. - Changing font for 神のラプソディ does not require restarting the game - Changing font for System43 currently has no effect + If the translation is English, you might always want to DISABLE font customization. There is no need to change font family or charset to embed English translation in most cases. But if the font is too fat, you could try reducing its scale and weight (such as changing weight to Ultralight). + If the translation is in Chinese or Korean - If the OS is Japanese and >= Windows Vista Usually, the font don't have to be changed. But we might need to adjust space settings manually. - If the OS is Windows XP or not Japanese Usually, the font family or charset has to be changed to the one that support both Japanese and the target language. + If the translation is not in English, Chinese, and Korean Usually, the font has to be changed to the one that support both Japanese and the target language. Again to Vietnamese users, as far as I known, JBeijing/FastAIT+HanViet is currently the only way to have offline Japanese-Vietnamese translation. If you want to embed Vietnamese translation, I strongly recommend you to unban Chinese in Preferences/i18n, and manually get JBeijing installed. Otherwise, if you rely on online translators like Excite instead of the offline ones, it could significantly slowdown the game. 修正了 Eushully 的游戏自定义字体无效的问题。 6/3/2015 WED [JBeijing](Chinese, @djz020815) * 更新了 djz 大先生的 J 北京词库。 [Embed Translation] * VNR will automatically disable any msgbox-like popups for Eushully games. * Update Eushully engine to support translating some in-game texts. Here are some screenshots: 神のラプソディ http://i.imgur.com/4JV3bEc.png http://i.imgur.com/Fk52rvI.png http://i.imgur.com/QVrFpOa.png 魔導巧殻 http://i.imgur.com/ceWWhvF.png http://i.imgur.com/3HK0eKJ.png http://i.imgur.com/Dtr3u2w.png 創刻のアテリアル http://i.imgur.com/OmW4ef0.png http://i.imgur.com/M37LyX9.png 6/2/2015 TUE [Embed Translation] * Restore the support for embedding translation for Eushully games. A screenshot of 神のラプソディ is as follows:

http://i.imgur.com/7sWgSfr.png Known issues: 1. It currently only supports embedding English translation 2. Translation could go out of screen if being too long (since English is usually much more verbose than CJK languages) 3. For Eushully games, when there are Ruby in the text, it will be broken into pieces, which will significantly downgrade machine translation quality because the sentence structure of Japanese and English is so different. I am going to check if it is possible to totally disable Eushully ruby in the future. Because of 2. and 3., I would suggest to turn on both embed and external subtitles at the same time. When the embed translation is too long or broken into pieces, you can check the external subtitle instead. btw, I recently changed the underlying hook implementation, and all previous embedded game engines were broken as the result. Currently, only SiglusEngine, System43, and Eushully(ARCGameEngine) support embedding translation. And only UTF16 engines support embedding all languages. SHIFT-JIS engines currently only support English. I will restore the support for other previous embed engines later, such as BGI, Circus, Elf, and Majiro. 6/1/2015 MON [Embed Translation] * Fix the issue that customized font with non-ascii family name might not work. Thanks for @mireado sama's report! * Fixed a bug in SiglusEngine that sometimes choice text is not translated. Thanks for @mireado sama's report! * Add options to adjust font size and weight. But depending on the game engine, the font settings might or might not work. Currently, it works for SiglusEngine, but has no effect to System43. 5/31/2015 SUN [TAHScript](English, @riz) * Update TAH script for LEC/ATLAS. The scripts are from @errzotl sensei, and you can say thanks to him/her at [email protected]. [Yomigana] * Fixed a issue that text might go out-of-screen when ruby is displayed below instead of above kanji. Thanks for @Onurtag sama's report! [Embed Translation] * Modify the System43 engine to support other AliceSoft games to embed English translation. Tested working with ランス 9 and 武想少女隊. However, since English is usually more verbose than Japanese, the text might sometimes go out of screen. Here are some screenshots: http://i.imgur.com/vUxx9o0.png

http://i.imgur.com/KhkOBCf.png http://i.imgur.com/E6R1GW2.png http://i.imgur.com/HCWdxuc.png * Add an option to limit the maximum scenario text width by inserting new lines so that it won't go out of screen. This option only works if "\n" can be interpreted as new lines in a game. It currently does not work for System43 where \n has no effect. * Update SiglusEngine to support translating choices and names for AngelBeats as well. Here's a screenshot: http://i.imgur.com/ZOFpgsN.png AngelBeats 可以翻译姓名和选项了。截图如上。 5/30/2015 SAT [Embed Translation] * Add embed translation support for Evenicle. Currently, it only supports English, and might not work for other System43 games. Scenario/name threads, windows texts, and some in-game texts can be translated. Here are some screenshots: AVG part: http://i.imgur.com/aIM4dWN.png RPG part: http://i.imgur.com/1HIIwSR.png Note that the Text Settings for embedding translation is changed to be readonly and left only for debugging purposes. Since everything can be automated to embed translation, there is no need for manually adjusting Text Settings. 5/25/2015 MON [Game Engine] * System43+ engine is slightly modified to get rid of illegal characters from the text. But you will have to re-adjust Text Settings if you are using System43+. 如果你在用 System43+的文本,请重新调整下文本设定。 5/24/2015 SUN [Embed Translation] * Game is no longer required to be launched with AppLocale. There are no longer any requirements for launching the game to embed translation. But if the game is launched in Japanese locale, you might need to select a different font that support the character set of the embedded translation in Preferences/Embed. Tested working on Windows XP and Wine now. 内嵌翻译不再需要用 AppLocale 运行游戏。 如果游戏在日文环境中打开,那么会需要在【使用偏好/内嵌翻译】中修改游戏字体的编码为中文。 另外,内嵌翻译可以在 Windows XP 和 Wine 上正常运行了。 * Embedding translation is now working for all languages. Here's a screenshot for AngelBeats with JBeijing+HanViet offline Vietnamese translation embedded: http://i.imgur.com/ZjDpVkJ.png

To display non-English language properly, it is critical to select a proper font. You might have to tune the font and space settings a little bit in Preferences/Embed. Changing font family might require restarting the game, which is currently painful to tune though. The best font should ideally support both the character sets of Japanese and the target language (such as Vietnamese), which, however, might not exist in Windows's default fonts. For example, to display Japanese-Vietnamese properly, I used SimSun (仿宋), which is indeed a Chinese font. If you don't want to manually specify the font, you can also enforce the character set of the font, and let Windows to automatically pick one for you. Here's a screenshot for embedded Thai translation from Bing without explicit font selection: http://i.imgur.com/itNhEeB.png There are weird spaces in the middle though, as I don't have a proper Thai font installed in my Japanese Windows. 5/23/2015 SAT [Game Engine] * Add Bootup engine for games containing Bootup.dat in the game folder. Tested working with 仏蘭西少女, 三国恋戦記, 神学校, and 絶対階級学園 from PIL/Daisy^2. 为一些 PIL 和 Daisy^2 的游戏添加了提取文本的支持。 [Embed Translation] * Create multiple communication channels so that concurrent translation requests won't hang the game. There should be no more hanging problem with user-shared subtitles or offline machine translation. * You can press SHIFT or CTRL to temporarily pause embedding translation. 按下 Shift 或者 Ctrl 可以暂停内嵌翻译。 * Add an option to change game's default font. If game's default font cannot properly display the characters of the embedded language, you can change it to another font. Note: If you want to select VNR's fonts in Library/Fonts as game's font (such as Nanum Barun Gothic), you have to manually install that font file in Library/Fonts to your $windir/Fonts directory first. 添加了一个修改内嵌字体的选项。 如果游戏默认的字体无法正常显示中文,可以用这个选项来强迫更换字体。 5/22/2015 FRI [Embed Translation] * Add an option to insert spaces between text to fix the text overlapping issue. Depending on different OSes/Locales/Languages/Fonts of the host system, sometimes certain characters might overlap with each other.

When all characters overlap like the following one, it can be fixed by turning on the Insert Spaces After Every Character option. http://i.imgur.com/mUXTk6w.png When only a few characters overlap like the following one (覚 and め overlapped), it can be fixed by turning on the Insert Spaces Only Between Overlapped Characters option. http://i.imgur.com/m5MZDfk.png * Fixed the jittering issue. I removed the "alpha" tag for embed translation, as I feel it has no critical issues now (at least for SiglusEngine). Feel free to give it a try if you are speaking English/Chinese/Korean and NOT using Windows XP. More details could be found here: http://sakuradite.com/wiki/en/VNR/Embedded_Translation There are two issues left though that I am going to work on later: - Support changing game's fonts Currently, embedded non-Japanese characters might or might not be rendered well on Windows XP, because it's system default fonts do not support a wide range of character sets. Changing game default font might help fix this issue. - Support translating choices and other texts, which might be important esp to RPG games. Here are some related hints that might be helpful: - Even if embedded translation is enabled, VNR will still display external subtitles. If you want to disable external subtitles, just toggle off Text, Name, and Translation in the left option dock. And automatic TTS will not get affected by whether displaying subtitles or not. - Machine translation quality is usually not good for non CJK languages Both translation and original text can be displayed together by toggling Preferences/Embed in case the machine translation does not make sense. - To turn on Embed Translation, I strongly recommend to have at least one offline machine translator installed. Otherwise, the latency of online translation might cause game to get jittered and slowdown. 修正了内嵌翻译会卡住的问题。 我觉得内嵌翻译的功能已经没有什么大问题了。 如果你没有在用 Windows XP,那么也许可以尝试下打开这个机能。 下边是关于这个功能的一些简单介绍。一些细节可以在这里找到: http://sakuradite.com/wiki/zh/VNR/内嵌翻译 所谓内嵌翻译,其实就是把游戏中日文的文本用中文的人工或者机器翻译直接替换掉。 不过当前,只有很少一部分游戏的对话可以被替换,游戏选项等文本和大部分游戏都不支持的。

在只有 SiglusEngine 的游戏有很好的测试过,其他的支持内嵌的引擎(比如 Eushully)我还没有测试。 另外,内嵌的文字在日文的 Windows XP 上,可能无法正常显示,会变成点状乱码。 我只有日文的 Windows XP,没有中文的 Windows XP,不清楚内嵌翻译在中文 Windows XP 上是否可以 正常工作(估计不能)。 在 Windows Vista 以上的操作系统没有这个问题。 开启这个技能的方法如下: 1. 在【使用偏好/内嵌翻译】中打开内嵌的选项 2. a. 如果你在使用日文的 Windows,那么在 Spring Board 中点击【编辑】,修改游戏的启动方式为 AppLocale,并改区域为中文。 b. 如果你在使用中文的 Windows,那么在 Spring Board 中点击【编辑】,修改游戏的启动方式为 禁止转区。 推荐使用 a 方法,因为 b 方法很多游戏如果不转区根本不能启动。 一些用处不大的 tip: - 即使打开内嵌翻译,VNR 默认还是会渲染外挂字幕。 如果你只希望看到内嵌而不像看到外挂字幕,可以在左边的选项里关闭游戏文本、姓名文本、机器翻译、 人工字幕四个就好了。 另外,自动语音合成不会因为关闭外挂字幕而受到影响。 - 由于机器翻译的准确度不高,你也可以在【使用偏好/内嵌翻译】里设定同时显示日文原文和中文翻译。 - 如果要使用内嵌翻译,强烈推荐至少安装可开启一个离线的日中翻译器。 由于在线翻译(比如百度)的延时,可能会然游戏一卡一卡的。 如果你一定要用比如百度,那么可能会需要在【使用偏好/内嵌翻译】里增加最大翻译延时。 - 如果你在使用正体中文,那么最好在【使用偏好/翻译/中文】中打开强制将简体字幕转换为正体中文的选 项。 5/21/2015 THU [Yomigana] * The option to display ruby below instead of above kanji is restored in Preferences. A screenshot is as follows: http://i.imgur.com/L4Wkbp2.png 恢复了上下颠倒振仮名的使用偏好的选项。 截图在上边。 [Fonts](Korean) * UI font changed to "Nanum Barun Gothic" when UI language in Preferences is Korean. [Embed Translation] * Add option in to display both original Japanese text and translation in separate lines. When enabled, the translation will be appended after Japanese, instead of replacing Japanese. Here's an example: http://i.imgur.com/u6uFyHu.png 5/20/2015 WED [Name Detection] * To be aware of more quotes while guessing speaker's name of a sentence. In the old version, VNR was only aware of 【】 and 「」. Now, the following pairs of quotes are added:

-

「」 『』 《》 () () <>

〝〟 “” (full-width) ‘’ (full-width)

Some features that get affected because of this: - Name guess accuracy for automatic Text-to-speech is improved - User-shared subtitle/danmaku matching accuracy is better - Sentence split for machine translation is slightly changed to be aware of quotes For example, given the following Japanese sentence: 爽(悠真くんを攻略すれば210円か) It will be split into: 爽, (, 悠真くんを攻略すれば210円から, ) However, the following two Japanese sentences will NOT get split by VNR. 爽(悠真くんを攻略すれば210円か)なるほどなぁ 悠真くんを攻略すれば210000円か(なるほどなぁ) Because VNR will think () here are not sentence deliminators. - For the first sentence, it does not end with ")". - For the second sentence, the text before "(" is too long to be a Japanese name. 改善了从日文文本中猜测姓名时,对各种引号的处理。 * The assigned name for TTS is slightly changed when VNR failed to guess speaker's name. For example, given three sentences below. The assigned name for the first sentence will be "Aside", and that for the last two sentences will be "Unknown". Though being unknown, you can now select voices for unknown characters. 悠真くんを攻略すれば210円か -- aside 「悠真くんを攻略すれば210円か」 -- unknown (悠真くんを攻略すれば210円か) -- unknown 稍稍修改了下 TTS 配音时识别人物姓名失败时的行为。 比方说,给定上边的三句话。 那么第一句话的人名会被识别为“旁白”,而第二和第三句话为“未知”。 [Shared Dictionary UI] * If you have either KanjiDic or Radical dictionary enabled in Preferences, VNR will display the decomposed radicals and translations of all kanji in the pattern (such as Japanese names). It might be helpful for learning CJK hanzi. [Embed Translation] * Update SigusEngine to support embedding translation for AngelBeats. Some screenshots are as follows:

http://sakuradite.com/images/screenshots/angelbeats_ko.jpg (Korean translation made by created by @mireado) http://sakuradite.com/images/screenshots/angelbeats_zh.jpg (Chinese translation made by @直入哑然) The encoding issue for CJK is fixed for SiglusEngine. It might still not work for other languages/engines though. Some known issues: + When embedded translation is enabled, the game might periodically get jittered/hanged, which is very annoying. This jittering problem is very very very annoying. I am going to try to fix this problem soon. + Encoding issue for non-English languages - Chinese and Korean The game must be launched in Chinese/Korean locales instead of Japanese. This can be done by either using AppLocale to launch AngelBeats in Chinese/Korean locale on Japanese Windows, or switching Windows locale directly to Chinese/Korean. - Traditional Chinese When the game is launched in Traditional Chinese locale, the option of Traditional Chinese variants in Preferences/Translation/Chinese must be enabled. - Other languages I didn't test support for other languages myself. It might or might not work. + While choices can be translated, there is currently no way to add manual translation for choices. Only machine translations will be used. 我在尝试改善对 AngelBeats 嵌入翻译的支持。 现在还有一些问题,等改好了再说吧。 5/18/2015 MON [Shared Dictionary] * Output rules can have grammatic roles in it. For example, given two definitions: 1. 悠真 => Yuuma, type = translation, role = m 2. University of [[m]] => [[m]] University, type = output It will transform "University of Yuuma" to "Yuuma University". However, the "Role" column of an Output definition itself is currently unused. (Korean) * The roles of noun(n)/name(m) for Korean translation will be automatically changed to reflect the final hangul character of the last syllable. For example, given a name definition 悠真 = 유우마 with role = m, VNR will replace m by m$o, where $o indicates "유우마" ends with a vowel (ㅏ).

Similarly, given a suffix definition 君 = 군 with role = m, VNR will replace m by m$x$n, where $x means "군" ends with a consonant, and $n means that consonant is ㄴ. Additionally, "$" is similar to "_" that implies the inheritance relation. For example, m$x$n inherits all rules for [[m]] and [[m$x]]. Here are some output definitions that might syntax: - [[m$x]]를 => [[]]을 It will replace 를 after all names ([[m]]) - [[m$o]]을 => [[]]를 It will replace 을 after all names ([[m]]) - [[m$x$l]]로 => [[]]으로 It will replace 로 after all names ([[m]]) - [[m$x,n$x]]를 => [[]]을 It will replace 를 after both name (m) and by 을. A -

illustrate the usage of this ending with a consonant by 을. ending with a vowel by 를. ending with ㄹ by 으로. noun (n) ending with a consonant

list of $ suffices that will be automatically added to n/m are as follows: $o: the last hangul character ends with a vowel $x: the last hangul character ends with a consonant $x$g: ᆨ $x$gg: ᆩ $x$gs: ᆪ $x$n: ᆫ $x$nj: ᆪ $x$nh: ᆪ $x$d: ᆮ $x$l: ᆯ $x$lg: ᆪ $x$lm: ᆪ $x$lb: ᆪ $x$ls: ᆪ $x$lt: ᆪ $x$lp: ᆪ $x$lh: ᆪ $x$m: ᆷ $x$b: ᆸ $x$bs: ᆪ $x$s: ᆺ $x$ss: ᆻ $x$ng: ᆼ $x$j: ᆽ $x$c: ᆾ $x$k: ᆿ $x$t: ᇀ $x$p: ᇁ $x$h: ᇂ

Special thanks for @mireado sama's extensive help and ideas on this topic! 5/17/2015 SUN [Shared Dictionary] * Add some kind of implicit inheritance to the grammar roles. Given two rules, say, "abc" and "abc_de", then "abc_de" will automatic inherit all patterns of "abc". Basically, the role whose name like "baserole_somevariant" with a "_" in the

middle will always inherit "baserole". Similarly, "a_b_c_1_2" will inherit "a", "a_b", "a_b_c", and "a_b_c_1" as well. This behavior is designed in order to solve Korean post-positioned particle problem, but might help other languages as well. For example, "adj_to" and "adj_na" will automatically inherit "adj". And here's what I mean by "inheritance", given two rules for example: #1 pattern = "兎", translation = "Rabbit", role = m_animal #2 pattern = "[[m]]さん", translation = "[[m]]-san", role = m Because m_animal can inherit m, "兎さん" will be translated to "Rabbit-san". i.e. #1's role m_animal will match #2's "[[m]]さん". Additionally, such inheritance relation is Partially Ordered. For example: #1 pattern = "兎", translation = "Rabbit", role = m #2 pattern = "[[m_animal]]さん", translation = "[[m_animal]]-san", role = m Then, "兎さん" will only be translated to "Rabbit さん" instead of "Rabbit-san". Because m will NOT inherit m_animal. (Korean) * Insert a space between name and suffix for Korean. For example: "悠真くん" will be translated to "유마 군" instead of "유마군". 5/16/2015 SAT [TAHScript](English, @riz) * Update TAH script for LEC/ATLAS. The scripts are from @errzotl sensei, and you can say thanks to him/her at [email protected]. [Text Settings] * Fixed a bug that selected Other Threads were not saved. Thanks for @mireado sama's report! 修正了文本设定中的【其他】文本没有保存的 bug。 [Game Engine] * When Text Settings window is visible, VNR will always inject built-in engines, no matter H-code is set or not. When there is H-code available, VNR will not inject game engines unless H-code is deleted or Text Settings is opened. I am worried a wrong H-code might prevent VNR from injecting, and hence changed to this way. 当文本设定的窗口打开时,不论是否有特殊码,VNR 都会注入游戏引擎的。 这样是为了防止错误的特殊码让 VNR 的游戏引擎失效。 [Fonts](Korean) * VNR by default uses DFGirl (a multilingual lolita font) to render Korean texts. @mireado requested changing it to Nanum Barun Gothic, which is a free web font family made by Naver.com. Unlike Hanazono font (花園明朝), Nanum font is not required by VNR to work normally at all. But Korean texts might look better after switching to this font. VNR can automatically download NanumBarunGothic in Preferences/Downloads/Fonts. And the Font for Korean can be changed at Preferences/Fonts. Alternatively, you can get NanumBarunGothic manually in the following location: https://github.com/hiun/NanumBarunGothic And here's the set of all Nanum fonts: http://hangeul.naver.com/2014/nanum

5/14/2015 THU [Yomigana](Korean) * "っ" is handled slight differently while converting to hangul as requested by @mireado. For example: ゆりっぺ will now be translated to 유릿페 instead of 유맆페 in old VNR. When "っ" cannot be patched to the previous hangul character, it will be replaced by "ㅅ". For example: って => ㅅ테 and ゆりっっぺ => 유릿ㅅ페 [Game Launch] * When VNR is not launched as Administrator, it will always force launching games as non-administrator, even if the game itself requires Administrator privileges. This applies to launching games with or without launchers like AppLocale, but except LocaleSwitch. It might or might not work for all games that require admin privileges though. 当 VNR 不是以管理员身份启动时,会强制用非管理员的身份启动游戏。 即使游戏本身需要管理员权限,VNR 仍旧会无视权限,而以非管理员的身份强迫游戏启动。 [Game Engine] * Update RealLive engine to support new games from 裸足少女. 添加了对裸足少女社游戏提取文本的支持。 * Fix the issue that BALDRSKY ZERO games might be spammed by mono_string functions. * If there are user-defined H-code for a game, VNR will not hook to any places other than the one defined by that H-code. VNR's entire built-in hooks/engines will not be injected when H-code is available. This will avoid potential issues caused by Lstr functions and outdated built-in game engines. 当用户自定义的特殊码存在时,VNR 就不会去 hook 游戏的其他地方了。 btw., I noticed that text extraction is totally broken for certain games (such as ショコラ) on Windows 10. I haven't figured out the reason yet. But if you find other games not working only on win10, just let me know! btw., 注意到在 win10 上 VNR 无法从部分游戏(比如:ショコラ)提取文本了。 如果你有发现其他游戏只在 win10 有无法提取文本的问题,可以让我知道! 5/12/2015 TUE [Game Engine] * Add an alternative hook for イブニクル. Unlike the old System43 hook, the new one has no garbage threads and can extract character names, which might be helpful for VNR's automatic TTS function. 5/9/2015 SAT [Shared Dictionary](Chinese) * 对于带正则表达式的读法词条,转换为中文时词首和词尾的括号和问号会被删掉。 比方说: - "愛(?!情)" 会被转换为 "愛" - "愛{{bos}}" 会被转换为 "愛" - "愛(情)?" 会被转换为 "愛" - 然而,"愛(情)?君" 不会被转换为 "愛君",因为括号不在句首、句尾。

[Dictionary] * Add options to lookup KanjiDic in French, Spanish, and Portuguese. 5/8/2015 FRI [Game Engine] * Add text detection support for イブニクル的 with AliceRunPatch.dll. 为イブニクル的 1.0.1 版添加了提取文本的支持。 btw, I am gradually moving game engines written in C to Python. This allows me to directly use regular expressions to search memory, which is so expressive and convenient. The instruction pattern for AliceRunPatch is just expressed in a simple regex instead of a while-loop in C. I am thinking maybe I can create another independent app for developers just for memory debugging with regex. Additionally, the current memory search implementation in ITH does not work well for emulators like PPSSPP with huge memory space, which is very slow, not scalable, and will crash in WinXP. Switching to Python to search outside of the game process will fix this issue. This will also allows me to scriptify game engines maybe in javascript and allows users to edit in the future, since altering engines does not require compilation like in C. 5/7/2015 THU [Dictionary] * Add an option to display decomposed radicals of kanji. For example, "香" can be split into "禾(grain)" and "日(sun/day)". To display the radical properly, additional Hanazono font (花園明朝) is needed to be installed in Preferences/Downloads. btw, I wrote a topic on how Chinese hanzi are being designed and combined, which might be helpful to understand how kanji are made from these decomposed radicals. http://sakuradite.com/topic/826 添加了一个显示汉字偏旁部首的选项。 如果你的中文超过了小学水平,那么无视这个选项好了。 另外,在【使用偏好/下载】中添加了一个花園明朝的字体。 这个字体主要是用来显示偏旁部首的,大家也无视好了。 * Add an option to display individual kanji translation using KanjiDic. KanjiDic can be downloaded for free in Preferences/Downloads. When enabled, combining with radical dictionary, a kanji might be rendered like this: 戦{war}: [単{simple}, 戈{spear}] 5/3/2015 SUN [i18n](Korean, @mireado) * Update VNR's UI translation in Korean made by @mireado sensei. [MeCab] * Add option to highlight Japanese phrases based on their grammatic roles. It is enabled by default, and can be turned off in Preferences/Translation/Dictionaries.

A screenshot is as follows: http://sakuradite.com/images/screenshots/ex_role.png Here's the current set of grammar roles (if you click the role, VNR will popup explanation): - m: 名前, name, probably human's - mp: 地名, place name - n: 名詞, noun - pn: 代名詞, pronoun - v: 動詞, verb - a: 形状詞, stem of adjective/adverb - adn: 連体詞, adnominal - adj: 形容詞, adjective - adv: 副詞, adverb - p: 助詞, particle - aux: 助動詞, auxiliary verb - suf: 接尾辞, suffix - pref: 接頭辞, prefix - int: 感動詞, interjection - conj: 接続詞, conjunction - w: 記号, word in latin or other special characters - punct: 補助記号, punctuation - x: other common phrases And here's the current color theme: - noun-based phrase: green - verb-based phrase: purple - adjective-based phrase: yellow - name and pronoun: red - conjunction: blue Currently, I haven't added an interface to change these colors. 添加了对日文词组做语法加亮和显示日文词性的选项。 这个选项默认是打开的,在【使用偏好/翻译/辞书】中可以关闭。 下边是截图: http://sakuradite.com/images/screenshots/ex_role.png 5/2/2015 SAT [Shared Dictionary](Russian, Ukrainian) * English name definitions will be converted to Russian/Ukrainian alphabet. For example, given a name definition ヘルマン => Helman in English, VNR will translate ヘルマン to Хелман in Russian and Гелман in Ukrainian instead. * Russian name definitions will be converted to Ukrainian alphabet. [Yomigana](Korean) * Properly handle "っ" while converting Japanese kana to Korean hangul. For example, ゆっき will now be converted to 윸키 instead of 유키. 5/1/2015 FRI [Yomigana](Greek) * Support generating translation from yomigana in Greek alphabet. 4/30/2015 THU [Dictionary] * Add an option in Preferences to use OVDP to provide English translation.

OVDP (Open Vietnamese Dictionary Project) developed a set of open-source dictionaries for Vietnamese. Though originally for Vietnamese, OVDP also provides a short English explanation before each entry. It could be used together with EDICT to provide more English translations. * Add option in Preferences to display Dutch/French/Russian translations above Japanese phrases. JMDict is needed to be installed. Since the vocabulary of JMDict is relatively small, you can combine JMDict with EDICT/OVDP. When both non-English and English translations are enabled, VNR will lookup non-English dictionaries (JMDict) first. If there is no match, it will then fallback to English (such as EDICT). Note to Russian users: If you would like to enable displaying Russian translation, I would strongly recommend to change the Japanese font in Preferences/Fonts from "MS Gothic" to "Tahoma", or any other fonts that include both Japanese and Cyrillic characters. Otherwise, Russian characters will look ugly in VNR and might sometimes go out of screen. VNR by default uses MS Gothic to render Japanese, which always shows Cyrillic characters in full-width. This will break VNR's assumption that non-CJK characters are all in half-width, and might break how VNR calculates text width. Changing the font to "Tahoma" will fix this issue. [Machine Translation](Russian, Ukrainian, Greek) * Add an option in Preferences/Translation to convert English in the translation to the alphabet of the user language, including Greek letters, Russian Cyrillic letters, and Ukrainian Cyrillic letters. Since many machine translators use English as the intermediate language, there are usually untranslated English words leaving in the result translation. And in the Shared Dictionary, there are also a lot of translations that are for English only. This option when enabled will force converting these untranslated words to the letters in the target language's alphabet. [Yomigana](Ukrainian) * Support generating translation from yomigana in Ukrainian. [Game Engine] * Add hooks to TabbedTextOutA/TabbedTextOutW in GDI. It is intended to support extracting texts for games from らすこう, might support some other games as well.

but it

为「らすこう」社的游戏添加了提取文本的支持。 感谢@lambl sama 的报告! 4/29/2015 WED [Language] * Add translation support for Norwegian, Swedish, Finnish, Danish, Hungarian, Czech, Slovak, Greek, Romanian, Ukrainian, and Turkish.

Additionally, Ukrainian is sharing vocabulary with Russian in the Shared Dictionary. [TAHScript](English, @riz) * Update TAH script for ATLAS. The scripts are from @errzotl sensei, and you can say thanks to him/her at [email protected]. [JBeijing](Chinese, @djz020815) * 更新了 djz 大先生的 J 北京词库。 4/27/2015 MON [Dictionary](German) * Add option to display German translation directly above Japanese phrases. It requires Wadoku EPWING dictionary to be installed in Preferences/Downloads. When enabled, a Japanese sentence will be like this: ich 「 俺



Ichijō Akiram 一条 彰 、 デュエリスト だ」

4/26/2015 SUN [Dictionary](Vietnamese) * Add option to display Vietnamese translation directly above Japanese phrases. It requires OVDP Japanese-Vietnamese dictionary to be installed. When enabled, the Japanese will be look like this: forget well 「 忘れた まま、

memory 記憶 の

inside shell nghi vấn quiet shed hair 中 から 疑問 は 静かに 抜け落ち た。」

The translation displayed is usually English, and sometimes Vietnamese (such as nghi vấn). Also, the translation is not guaranteed to be correct, such as: から => shell. * OVDP dictionary support is changed to use StarDict format to save disk space. OVDP dictionary now requires only 40MB. If you have old OVDP dictionary installed, VNR will delete it on the startup. It can be redownloaded for free in Preferences/Downloads. If VNR's download script is slow (it currently picks a DL mirror in US), you can also manually get the dictionary from the following location: http://sourceforge.net/projects/ovdp/ And then extract the downloaded NhatViet.zip to: Caches/Dictionaries/OVDP/NhatViet btw, VNR now supports dictionaries in StarDict format. If you need more StarDict dictionaries support, feel free to let me know. Thanks! [Game Engine] * Update GXP engine to support 「ウルスラグナ」. And don't forget to maximize the game text speed. The issue that old GXP games had floating split is also fixed. If you are playing GXP games (such as Astronauts's), you might have to readjust Text Settings.

添加了对「ウルスラグナ」提取文本的支持。 不要忘记将游戏文字的速度调整为最快。 另外修正了以前的 GXP 引擎的游戏有浮动签名的问题。 如果你在玩以前的 GXP 游戏(比如 Astronauts 社的),会需要重新调整下文本设定。 4/25/2015 SAT [Dictionary] * If you have blocked English, VNR will no longer show EDICT-related options in Preferences. * Add option to display Chinese/Korean translation directly above Japanese phrases. It requires at least one Japanese Lingoes dictionary to be installed for these languages. When enabled, the Japanese will be rendered like this: 「

=そうして そして

생각하기 시작하다 말 울다 영원 정원 기계 놓치다 思い出す こと は なく 、永遠 に その 機会 を 逃す のだった。 」

Here, "=そうして" means "そして" is an alias of "そうして" in spoken Japanese. VNR currently simplify picks the first meaning it has got in the dictionary, which could be wrong. For example, "なく" here should not be "울다", which means "泣く"(verb) instead of "無く"(adj). In the future, I plan to use UniDic's role (verb, noun, adj, etc.) to filter dictionary entries, which might help disambiguate phrases having different meanings. 可以在日文上方直接显示中文或韩文的翻译,也许对学习日文的同学有些帮助。 比如,开启后日文可能会显示成这样:



与其…莫如 那 周围 むしろ 、その 辺 にある

ぼろぬの 充分 那么 喂 ボロ布 でも 充分 なんじゃ ねえの」

开启需要安装至少一本 Lingoes 日中字典。 不过 VNR 只会从辞书中选择第一个解释来显示,翻译可能是错的。 4/20/2015 MON [TAHScript](English, @riz) * Update TAH script for ATLAS/LEC. The scripts are from @errzotl sensei, and you can say thanks to him/her at [email protected]. 4/14/2015 TUE [MeCab] * Fixed a bug that UniDic could not be automatically downloaded. 修正了无法正常下载 UniDic 的问题。 * Restore the feature to display EDICT translation directly above Japanese phrases. It requires EDICT to be aligned with UniDic. VNR will re-align EDICT after first launch if you have EDICT installed by old version of VNR. For example, given a Japanese sentence:

「努力に世界が応えるのよ」 It will be rendered by VNR like this: 「

great effort 努力 に

the world respond 世界 が 応える のよ 」

And the yomigana translator will translate the entire sentence like this when "English" is selected: 「great effort ni the world ga respond no yo」 If you click 努力, the MeCab feature will be like this: 努力,どりょく,doryoku,n,vs,EDICT,great effort The columns immediately before EDICT (n and vs) are the roles of the phrase, which means it is both a noun and a 基本形(s) verb. VNR currently simply pick the first short meaning of an entry in EDICT as its translation, which, however, might not be always correct. And the definition collision between EDICT and UniDic is not well-handled. 恢复了通过查询 EDICT 直接在日文上边显示翻译的选项。 开启后,游戏的文本可能会渲染成好像这样子: 「

great effort 努力 に

the world respond 世界 が 応える のよ 」

4/13/2015 MON [TAHScript](English, @riz) * Update TAH script for ATLAS/LEC. The scripts are from @errzotl sensei, and you can say thanks to him/her at [email protected]. 4/12/2015 SUN [Ehnd](Korean) * Fixed the issue that external native Ehnd plugin did not work. However, due to technical difficulties, toggling the Ehnd option now requires restarting VNR. The logic that which version of the dll will be loaded is as follows: - Enable the Ehnd option in Preferences Use VNR's built-in dll, no matter whether you have installed Ehnd in ezTrans directory. - Disable the Ehnd option in Preferences Use the native Ehnd plugin you put in the ezTrans directory. [Yomigana] * Add option in Preferences/Translation to display ONLY the yomigana (such as romaji) as subtitles. 在【使用偏好/翻译】中添加了显示日文比如罗马字为字幕的选项。 * Conversion support from Japanese kanji to Vietnamese Phiên âm is restored. 4/11/2015 SAT [Dictionary]

* Speedup dictionary lookup. I rewrote the implementation for looking up EDICT and Lingoes dictionaries, which is now extremely fast that the lookup time is less than 0.1 sec, even for some very large dictionaries, such as OVDP for Vietnamese. 改善了查询日中辞书的速度。 [MeCab] * Japanese segmentation implementation using MeCab is now switched to that used by VNR's SMT vtrans. This will allow me to integrate Shared Dictionary with statistical machine translation in the future. There are a couple of changes caused by the switch of the implementation. + Removed features - IPAdic support is removed. UniDic is now the ONLY MeCab dictionary supported by VNR. UniDic must be installed in Preferences/Downloads to enable Japanese word segmentation. - CaboCha highlight support is removed. I will change to highlight phrases according to their roles (name, noun, verb, etc.) instead later. + Broken features that I haven't got time to implement - Displaying Vietnamese Phiên âm above Japanese kanji is broken, and temporarily disabled. - Displaying EDICT translation directly above Japanese phrases is broken, and temporarily disabled. - Displaying Furigana for web page is broken, and temporarily disabled. + New features - Dictionary alignment for EDICT For example, given a Japanese sentence: ごめんなさい、先生! Without EDICT alignment, VNR by default will segment it into: ごめん + なさい + 、+ 先生 + ! With EDICT alignment, because there is a translation entry for ごめんなさい = Sorry in EDICT, VNR will now segment the sentence into: ごめんなさい + 、+ 先生 + ! EDICT.

Now if you click ごめんなさい, VNR will popup the "Sorry" translation in

This methodology is borrowed from vtrans' code to learn word segmentation rules from dictionary entries. Whether enabling EDICT alignment really depends on your need. Without EDICT alignment, VNR will segment ごめん out, and when you click ご めん, VNR will display its UniDic feature like this: 名詞,普通名詞,一般,ごめん,御免,漢 This means 御免 is a "general noun" (普通名詞), and its pronunciation is borrowed from Chinese (漢) (and hence it sounds similar to Chinese). However, after EDICT alignment is enabled, you cannot easily observe such information anymore. VNR will instead display the English translation for the entire ごめんなさい.

Basically, if you cannot read Chinese such as 名詞, and you are an English

speaker,

it might be better to enable EDICT alignment. Otherwise, enabling alignment or not depends on whether you are more comfortable with Chinese or English. In the future, I will use yomigana/name entries in Shared Dictionary to align MeCab as well. And I will add support to align MeCab for other languages, such as: Naver for Korean, OVDP for Vietnamese, and Wadoku for German 修改了 VNR 中使用 MeCab 分词的实现。 这造成关于分词选项的一些比较大的变更。 1. 删除了对 IPAdic 和 CaboCha 的支持。要使用分词功能,只要在使用偏好中下载 UniDic 一个就好了。 2. 添加了一个使用 EDICT 矫正 MeCab 分词的选项。 这个选项主要是针对英文读者的。 如果你的英文不好,那么其实不用下载 EDICT 和打开这个选项。 btw, 关于 VNR 从人工字幕学习的翻译器,由于 VNR 服务器的内存不足以长时间的支持这个翻译器,我暂时在 服务器端关闭了对这个翻译器的服务。我在以后会购买额外的服务器,再来 deploy 这个翻译器的。 当前在 VNR 的使用偏好中打开这个翻译器 or not,对翻译是不会有影响的。如果给你带来误解,很抱歉! [Machine Translator] * Add online translation support for Babylon, SYSTRAN, and @nifty. + Babylon: Multilingual, support all languages in VNR. btw, I also tested SDL, which had the same translation as Babylon, and hence not added to VNR. + SYSTRAN: Support English-focused translation. One critical problem is that the IP might get banned when submitting a couple of translation very quickly. I haven't got a solution for this issue yet. + @nifty: Support translation between Japanese/Chinese/Korean/English. It is using the same translation engine as the famous Fujitsu ATLAS. Additionally, @nifty is set to shared the same TAH script and Shared Dictionary rules as ATLAS. If you would like to add alternative translation support, feel free to edit the following page: http://sakuradite.com/wiki/en/Machine_Translators Here are some tests if you are interested: - Japanese: まあね♪スカートとはおさらばだし。ハーフパンツなんて久しぶり。 LEC (original): Oh, I sleep, and half underpants are after a long absence ♪ skirt とはおさらばだし LEC (VNR+TAH): Oh♪Skirt とはおさらばだし. Half underpants are after a long absence ATLAS (original): Good bye [maane] ♪ skirt is [dashi] . The half pants are after a long time. ATLAS (VNR+TAH): Well♪ Good bye the skirt is [dashi]. The half pants are after a long time. Infoseek (original): まあね ♪ skirt とはおさらばだし. Half underwear is after a long absence

Infoseek (VNR+TAH): Oh♪ Skirt とはおさらばだし. Half underwear is after a long absence SYSTRAN: Don't you think? well, the ♪ skirt the reed mule it puts out. The half underpants how long separation Babylon: Well. My skirt and a farewell. Half-pants long time! @nifty: Good bye [maane] ♪ skirt is [dashi] . The half pants are after a long time. // the same as ATLAS 添加了一些新的翻译器的支持,不过对中文翻译的帮助不大。 4/9/2015 THU [Bing](Arabic) * For Japanese-Arabic translation, fix the issue that Shared Dictionary rules get messed up by Bing. 4/7/2015 TUE [Yomigana](Arabic) * Yomigana definitions in the Shared Dictionary will generate name translation for Arabic as well. If you find errors in the yomigana, please edit the following page, and I will update VNR to add your patch later. http://sakuradite.com/wiki/en/Furigana Now, yomigana will generate name translations for all languages in VNR. * Arabic alphabet can be selected to display yomigana for Japanese. * Baidu translator is no longer blocked in Preferences, even if you have blocked Chinese language in Preferences/i18n. Because Baidu can be used to translate non-Chinese languages as well, such as Arabic and Russian. 4/6/2015 MON [Machine Translator](Chinese, Korean) * Translation using JBeijing and ezTrans are done in parallel to be faster. VNR tends to split input text into sentences and translate each sentence independently. When that happens, VNR now will translate all sentences in parallel. This is not enabled for other translators such as Atlas and LEC, which are tested not thread-safe. 并行处理 JBeijing 断句后的翻译来提高翻译速度。 由于近期大量使用&eos;的词条分割句子,造成 JBeijing 翻译的时间越来越长。翻译一句有很多逗号的话 要几秒钟。 现在,分割后的从句会并行的送入 JBeijing 进行翻译,来成倍减少翻译的时间。 在使用 JBeijing 时,左下角线绿色 spinner 会转动并显示线程的个数。 另外,如果在同时使用比如 JBeijing 和 Baidu,那么两者也会并行的翻译来 overlap 掉网络延时。 但是,这样代价是造成 JBeijing 的翻译有时会出现在 Baidu 的后边。 [Ehnd](Korean) * Fixed an encoding bug that caused Ehnd scripts not properly applied. 4/5/2015 SUN [i18n](Korean, @mireado) * Update VNR's UI translation in Korean made by @mireado sensei.

[Shared Dictionary](Chinese, Korean) * JBeijing and ezTrans are aware of the roles of m (name), n (noun), and x (unknown phrases). As you might have noticed, for example, after defining a noun syntax: n ||| 露西亜 ||| Russia VNR will send ZNAZ to the underlying machine translator (JBeijing/ezTrans), which, however, does not know that ZNAZ is a noun. So, I simply added ZNAZ to the user-defined dictionaries of JBeijing and Ehnd script, after which, I expect, the translator should now be able to recognize ZNAZ as a noun, i.e. 露西亜 as a noun. Some details about the mapping from the roles to the translator's user dict are as follows: - Ehnd, see: Dictionaries/ehnd/UserDict_@jichi_role.txt role pattern noun properties x ZX[A-N]Z 0 m ZM[A-N]Z 1 VHn n ZN[A-N]Z 1 VHn - JBeijing, see: role pattern x ZX[A-G]Z m ZM[A-G]Z n ZN[A-G]Z

Dictionaries/jb/@jichi/JcUserdic input => output 成語 => 成語 人名 => 人名 普通名詞 => 普通名詞

Currently, only m/n/x are recognized. Any other roles that are neither m(name) nor n(noun) are categorized as x (unknown phrase). If you have suggestions for other role mapping such as adj and verb, you can create a topic on it at http://sakuradite.com/topic Regarding English translation, I expect similar things could be done by adding definitions to ATLAS/LEC's user-defined dictionaries. However, VNR currently does not support reading ATLAS/LEC dictionaries. I might investigate on ATLAS/LEC support when I have time later. JBeijng 可以识别共享辞书中的部分 role 了。 简单来说,m(名字)会被识别为 JBeijing 辞书中的【人名】; n(名词)会被识别为 JBeijing 辞书中的【普通名词】; 而任何其他的 role 比如 x(未知词组)会被识别为 JBeijing 辞书中的【成语】。 4/4/2015 SAT [ezTrans](Korean) * Add built-in support for Ehnd plugin, which is enabled by default. No settings are needed to be changed, unless you want to manually edit Ehnd scripts. - Ehnd scripts are enabled by default. But you can disable it in Preferences/Translator below the ezTrans toggle. And in the Test Machine Translation window, Ehnd can be toggled by the Translation Script button. - However, if you have already manually put Ehnd scripts in the ezTrans

directory, VNR will NOT load them. To enable manual Ehnd scripts, you must DISABLE the Ehnd option in VNR's Preferences. VNR's Ehnd scripts are in the Dictionaries/ehnd folder, version 20150402, which I got from mireado. Please DO NOT directly edit those files, which will be reverted back after VNR's update. If you want to manually set up Ehnd, please follow the guide below, and then DISABLE VNR's Ehnd option. Tutorial: http://blog.naver.com/waltherp38/220286266694 Binary: http://blog.naver.com/waltherp38/220267098421 Dictionary: http://sokcuri.neko.kr/220301117949 I modified the source code of Ehnd to better integrate with VNR, and the source code is as follows: https://github.com/jichifly/ehnd-vnr For example, it does not require msvc2013 to be installed, hooking to eztrans is changed to be non-intrusive, logging is disabled for better performance, and building system changed to CMake (I am a Visual Studio hater). It might also allow me to compile Share Dictionary rules to Ehnd dictionary in the future. But currently, there is NO difference for how the Ehnd scripts are applied. So, it is OK to set up manual Ehnd if you like, which will act the same way as VNR's Ehnd mod. Special thanks to @mireado sensei's extensive help on this topic! 4/3/2015 FRI [Shared Dictionary](Chinese) * Yomigana rules will also be used to generate names for Chinese translation. 读法词条的匹配的文本会被用于生成日中姓名的翻译。 比方说,给定:悠真 => ゆうま 那么 VNR 会对【悠真】做日中汉字的变换来生成姓名,而【ゆうま】的读音会被忽略掉。 生成的姓名可以在共享辞书下边的读音中观察到。 如果日文没有办法全部转化为汉字,会显示【无】,日中翻译时 VNR 会忽略这个词条。 如果正体中文和简体中文的汉字变体相同,那么会显示 1 个中文姓名。 如果汉字不同,会显示两个姓名。 如果姓名词条和读法词条同时存在,那么姓名词条会 override 掉读法词条。 由于历史原因,共享辞书中有大量的读法词条。这样可以减少辞书中重复定义的姓名。 [Game Engine] * Fix the issue in Malie engine to make sure texts are extracted sentence-bysentence in 「シルヴァリオ ヴェンデッタ」. 修正了「シルヴァリオ ヴェンデッタ」提取文本时断句错误的问题。 4/2/2015 THU [JBeijing](Chinese, @djz020815) * 更新了 djz 大先生的 J 北京词库。 [TAHScript](English, @riz) * Update TAH script for ATLAS/LEC. The scripts are from @errzotl sensei, and you can say thanks to him/her at [email protected].

[UI] * Remove the option to change global UI font in Preferences. 删掉了【使用偏好】中修改界面字体的选项。 3/14/2015 SAT [Game Engine] * Update Malie engine to correctly capture text annotated with furigana. 修正了 light 的游戏可能无法提取到带振仮名的文字的问题。 3/13/2015 FRI [Game Engine] * Add alternative ShinaRio engine for Guilty games as reported by @jessecf sama. 修正了部分 Guilty 游戏无法正常提取文本的问题。 感谢@jessecf sama 的报告! [Performance] * Reduce memory usage to process subtitles and danmaku. * Reduce memory usage by half to show and edit Shared Dictionary entries. 减少了浏览和编辑共享辞书时的内存。 [Machine Translator](Chinese) * 修正了百度翻译无法正常进行的问题。 由于金山在线翻译无法正常运作,改为使用百度翻译的 API 了。 3/12/2015 THU [Shared Dictionary] * Set of roles can be represented by, for example, [[m,n,v]], which will match any m,n,v roles. And when there are multiple sets, the role name can be omitted in the translation. For example, all the following rules are equivalent: [[m,n]]を[[v]] => [[v]] [[m,n]] [[m,n#1]]を[[v#2]] => [[v#2]] [[m,n#1]] [[m,n#1]]を[[v#2]] => [[#2]] [[#1]] [[m,n#1]]を[[v]] => [[v]] [[#1]] And if there is only one role, the role names in the translation can be omit. For example, all the following rules are equivalent: [[m,n]]の => [[m,n]]'s [[m,n#1]]の => [[m,n#1]]'s [[m,n#1]]の => [[#1]]'s [[m,n#1]]の => [[]]'s [[m,n]]の => [[]]'s [Game Engine] * Update Malie engine so that it won't crash「シルヴァリオ ヴェンデッタ」. 修正了「シルヴァリオ ヴェンデッタ」提取文本可能会崩溃的问题。 3/11/2015 WED [JBeijing](Chinese, @djz020815) * 更新了 djz 大先生的 J 北京词库。 [TAHScript](English, @riz) * Update TAH script for ATLAS/LEC. The scripts are from @errzotl sensei, and you can say thanks to him/her at

[email protected]. [Machine Translator] * (Russian) Fix translation support for translate.ru , which stopped working. * (Chinese) Restore translation support for Youdao.com, since the new translation encoding system for Shared Dictionary can penetrate Youdao now. 恢复了对有道在线翻译的支持,由于新的共享辞书的机制可以穿透有道翻译了。 不过有道翻译的质量和百度、J 北京是没有办法比的。 [Shared Dictionary] * Guest users are no longer allowed to create Prefix/Suffix/Macro/Proxy typed translation rules any more. I feel these typed rules are either dangerous or kind of complicated to understand by new users that most rules in these types submitted by guest are wrong. 匿名账户不可以直接提交前缀、后缀、宏,以及新加的代理类型的词条了。 因为这些类型的词条一般比较难理解,而要么非常重要,要么很少会被用到。 * Macros can be applied to not only the pattern, but also the translation. 宏类型的词条可以被应用到替换的翻译中。 * Macros can also be applied to non-regex terms. The regex option for for macros is no longer locked. But it has NO effect at the moment. If a macro is for representing regex, you can just check that option, to make it more readable. 宏类型的词条会被应用到所有的词条上,而不再仅限于正则表达的词条。 宏类型词条本身的正则表达的选项可以调整了,但是那个选项当前是没有作用的。 不过,如果宏类型词条本身是表达正则表达的,那么做好把那个正则的选项打开,这样可以更 readable 些。 * I made some fundamental changes for how to apply Name/Prefix/Suffix/Yomigana/Translation rules. If you are actively using Shared Dictionary, I think it might be helpful to check the following topic: http://sakuradite.com/topic/724 In short, I changed to apply Shared Dictionary in a new grammar similar to VTrans for Chinese. The grammar is basically the same as SynCFG for SMT, except there is no statistical probability and word segmentation. Here are some major advantages: - The new grammar is implemented 10x faster to apply, and use half memory. - It can be used to describe interaction of translation rules. - There is no more issue of garbage digits. - Name translation etc. can be applied in non-intrusive manner with the help of the new mechanism of "translation delegation". - The name translation is now very cheap to implement. Assume there are N names, S suffices, and P prefices, and the time/space complexity to process Name is reduced from O(N*(S+P)) => O(N+S+P). I would suggest to remove series-specific flags for all names that do not have ambiguity. 我修改了共享辞书翻译词条的机制。 新的机制采用了和 VTrans SMT 相同的语法(除了没有概率统计和分词的支持)。

如果你经常使用共享辞书,那么非常建议你查看下下边的 topic。 http://sakuradite.com/topic/724 另外,新的机制下,姓名词条的处理几近完美了,不论是速度、内存、还是翻译质量。 如果一个姓名的翻译绝大部分情况下没有歧义,那么我建议就不需要打开【系列专用】的选项了。 3/4/2015 WED [Performance] * Reduce memory usage when writing large xml/yaml data (games/subtitles/dictionary) to disk. 3/1/2015 SUN [Proxy] * Update proxy to ErogameScape and Google, which stopped functioning. 更新了对批评空间和 Google 的代理,因为以前的代理可能不能用了。 [Machine Translation](Korean) * Add translation support for TransCAT JKKJ suggested by @mireado sama. I cannot tell if it is better or worse comparing to EzTrans, but I feel you could give it a try. Here are some notes and minor issues about it: - TransCAT's developer ClickQ has disappeared, and I cannot find any place to purchase this soft. If you would like to try it, you might have to ask your friends or @mireado sama where to get it. - TransCAT project was dropped in 2002, which was newer than ezTrans XP (2001) though. - TransCAT's path must not have non-ASCII characters. - VNR must have write permission to TransCAT's directory. For example, on Windows 7, if you have installed TransCAT to $PROGRAMFILES as Administrator. Then, VNR by default might not be able load TransCAT. And it will keep popping up warning messages like "Cannot write to the location". There are at least three ways to fix such issue: + Solution 1 (recommended): Move TransCAT out of $PROGRAMFILES to a location where non-administrator has write permission. + Solution 2 (not recommended): Always launch VNR as administrator. + Solution 3: Use cacls to grant write access to the TransCAT folder in $PROGRAMFILES. - TransCAT might conflict with JBeijing (a Japanese-Chinese translator). When TransCAT starts after JBeijing, it might crash VNR. In order to make both work, TransCAT must be loaded BEFORE JBeijing is loaded. VNR internally will try to initialize TransCAT always before JBeijing if possible, but there are loop-holes when the user is toggling Preferences. Anyway, if you have both JBeijing and TransCAT installed, and if you toggled both JBeijing and TransCAT in Preferences, you might have to restart VNR to make both work. If you don't use JBeijing for Japanese-Chinese translation, you can forget

the above text. Here are some comparisons regarding the translation quality with ezTrans and Naver. Japanese texts are from 「大正×対称アリス」. Japanese: あなた「ここはどこなの……?歩いても歩いても、出口が見つからない」 TransCAT: 당신「여기는 어디다……? 걸어도 걸어도, 출구가 발견되지 않는다」 EzTrans: 당신「여기는 어디야……? 걸어도 걸어도, 출구가 발견되지 않는다」 Naver: 당신「여기는 어딘데……?걸어도 걸어도, 출구가 없다」 Japanese: あなた「私……どうしてこんな所にいるの? 私は……誰なの?」 TransCAT: 당신「나……어째서 이런 곳에 있는 것이다? 나는……누구다?」 EzTrans: 당신「사……어째서 이런 곳에 있는 거야? 나는……누구야?」 Naver: 당신「나……왜 이런 곳에 있니?나는……누구니?」 Japanese: 自者名前 TransCAT: 自 자이름 EzTrans: 차자 이름 Naver: 차자 이름 I feel the overall EzTrans translation is similar to either EzTrans or Naver. However, when there are unrecognized phrases, TransCAT will leave it in the translation, while Naver tends to convert untranslated Kanji to Hangul of the corresponding Hanja in Korean, and EzTrans tends to delete the unrecognized sounds or acts like Naver to convert Kanji to Hanja's Hangul readings. As a result, it will be easier to use Output rules in Shared Dictionary to fix TransCAT's translation. 2/28/2015 SAT [JBeijing](Chinese, @djz020815) * 更新了 djz 大先生的 J 北京词库。 [TAHScript](English, @riz) * Update TAH script for ATLAS/LEC. The scripts are from @errzotl sensei, and you can say thanks to him/her at [email protected]. [Game Engine] * Update Pensil engine to support 大正×対称アリス with Primula's 2XT engine. 修正了「大正×対称アリス」无法提取到文本的问题。 2/18/2015 WED [Script] * Add a ld2db script in the Scripts folder that can be used to convert Lingoes dictionary file to SQLite database. For example: ld2db "Vicon Japanese-English Dictionary.ld2" utf16 utf8 will output a SQLite3 db file for Vicon dictionary where Japanese is encoded in UTF-16 and English is encoded in UTF-8. [Machine Translation] * I made a statistical machine translator from user-contributed subtitles for VNR. It currently only supports Japanese => Chinese translation, which can be enabled in Preferences.

I named it as VTrans, standing for VNR's translator, or WeTrans (our translator), since it is really based on and counted on our subtitles and translation rules for VNs. Its current average translation quality is usually worse comparing to other online translators such as Baidu, though. But I think this might open a new area for VNR in the near future to have our own fully-customized machine translator to improve the translation in whatever ways we like. Here are some advantages that it has and I can am expecting: - Translation quality will be gradually improved from user-submitted subtitles. The current translation is trained from 220k sentences. 96k are user-shared subtitles, and other 120k are sample sentences from JC dictionaries in VNR. Currently, if a user's total subtitle count is > X, all of his/her subtitles will then be used to train the machine translator. X is a large integer. I would like to keep this number X secret to prevent people from adding a large number of garbage texts in order to be included to the machine translation. Basically, if you see a translation is wrong in VTrans, just submit a better subtitle for it, and then VTrans will be better soon later when I update it's translation rules from user subtitles. - Open and easy to customized The translator is implemented in Python and Java. And I have the access to all the source code of the libraries and dictionaries being used. This will allow us to modify the translation in whatever degree we like. For example, I am now able to apply a suffix rule [[N]]さん to all names recognized by the translator. I can know how the input sentence is segmented, and which word is untranslated. And I can directly modify the grammar of the machine translation in a nonintrusive way. I will add interfaces to expose all internal settings of the translator in the future. - Domain-specific to VN It is from users' subtitles, the vocabulary will be more close to 二次元 and oral Japanese. And there is no censorship of certain hentai words. - Possibility for training true-bilingual translation Currently, say, Japanese => Russian is done by Japanese => English => Russian, which might downgrade overall translation quality. If you are speaking an European language, I can instead train the translation directly between Japanese and your language.

However, the translation quality might be affected by how many user-shared subtitles are in your language. - Feasibility for offline translation Currently, the trained grammar data is about 400MB. I can add an offline translator with these data in VNR, which will require users to install Java, though. However, I think there will be a few critical disadvantages about this approach: - Smaller vocabulary Though being close to VNs, the amount of data used to train the translator is far less than the others. If you use VTrans to translate, say, Wikipedia articles, the quality will be too bad to understand. I plan to instead rely on users to submit instant rules to fix the maltranslated sentences. - Slow access speed VTrans is currently set up on the same server that holds VNR's service. I would expect it to stop functioning when lots of users are using VNR .... - Less machine resources to tune the translation quality The statistical machine translation quality is highly affected by tuning. Currently, I don't have powerful machines or cloud clusters to tune all the user-shared subtitles. For the current 220k sentences, I only tuned 500 sentences for the best BLEU score, which took about 2 hours to accomplish on my macbook air. I might not have machine time to tune large data, which will surely downgrade translation quality. Note: Currently, please do not add translator-specific rules for VTrans to the Shared Dictionary. I will change how to integrate Shared Dictionary rules with VTrans in the near future. Regarding how subtitles are trained, there are certain requirements for the subtitles to meet, or the subtitle might confuse VTrans and even downgrade translation quality. I will talk about that after I have finalized Japanese-Chinese support and added Japanese-English support. Anyway, I am going to explore the approaches to integrate user-specified domain knowledge to improve translation quality. If you have suggestions, feel free to let me know! 添加了一个基于统计的在线机器翻译的功能。 翻译的内容主要是有大家提交的日中翻译的字幕来训练的。 不过,当前翻译的质量和 Baidu 等比起来,还有很大的差距的。还是 JBeijing+Baidu 才是最佳组合。 另外,当 VNR 的服务器很忙时,翻译也可能会变得很慢的。 关于共享辞书,大家先不要添加针对这个翻译器的词条。 因为我有翻译器的全部代码,可以在很底层的位置来应用翻译规则。我在以后会针对这个翻译器来改变应用 词条 的方法和机制。在此之前,先不要为这个翻译器添加词条。 关于机器翻译训练,当用户总共的字幕数量大于一个阈值时,那么 VNR 就会使用他或她的字幕来训练机器翻

译了。 Guest 账户的字幕不会被用于训练。这样做的目的是为了减少不良字幕的数目从而降低翻译质量。 由于使用大家的字幕训练,造成翻译上可能会更加贴近口语。 而且基本上,如果你发现翻译出的质量不佳,在提交新的翻译后,翻译以后就会慢慢变好了。 但是有时候不同的游戏之间会串词。 比如:因为有同学在 A 游戏把「スプリング」翻译成了(弹簧)床,结果 B 游戏里 「スプリング」就被翻 成床了。。。 另外由于翻译样本不足而且局限在这个领域,翻译器对长句字以及非二次元的生词的翻译还很差。 翻译口语还好。当前翻译比如 wiki 之类的文章很多都没法看了。 另外,在提交人工翻译时没什么要求,除了: 1. 希望大家在日文原句里没有主语时,不要添加游戏人名为翻译的主语。(否则可能会像上边那样“串 词”) 2. 另外就是如果可能的话,翻译最好能够和原句的标点对齐。 比如,如果日文原句是:「A,B。C?」 那么人工翻译最好也是:「x,y。z!」 标点可以不相同,但是断句最好一致。否则 VNR 的服务器可能会无法判断如何对齐分句。 具体来说,VNR 在断句时分为三个层次: - 段落(paragraph): 用【】「」等分割 - 句子(sentence): 用。?!等分割 - 分句(clause): 用、『』等分割。 如果 1 或 2 没有对齐,那么 VNR 就会忽略而不训练这个字幕。 如果 3 没有对齐,那么 VNR 仍然会去训练句子。比如: だから、ごめんなさいっ。 => 所以对不起。 因为翻译中缺少逗号而无法对齐从句。然而,VNR 仍然会用「だから、ごめんなさいっ。」去训练「所以对 不起。」。 特别的,如果翻译中有逗号,比如: 所以,对不起。 那么,VNR 会自动训练下边所有的翻译: だから、ごめんなさいっ。 => 所以,对不起。 だから、 => 所以, だから => 所以 ごめんなさいっ。 => 对不起。 ごめんなさいっ => 对不起 总之,如果翻译的标点可以和原文对齐,那么 VNR 的在线翻译可以学到更多的关系的。 但是,如果分句句子次序大幅改变,比如: だから、ごめんなさいっ。 => 对不起,所以。 那么,这样可能会让 VNR 的翻译变差,因为这会造成: だから、ごめんなさいっ。 => 对不起,所以。 だから、 => 对不起, だから => 对不起 ごめんなさいっ。 => 所以。 ごめんなさいっ => 所以 这样的话,取决于这种对应关系出现的概率,如果其他游戏都没有出现过「だから」,那么「だから」就看 能会被 错误的判定为「对不起」了。 2/17/2015 TUE

[Internet] * Certain Internet requests, such as query game database when adding new games, query online machine translation, etc, will timeout after 7 seconds so that VNR will not hang waiting for the request to finish. 想查询数据库和在线翻译等操作,会在 7 秒钟之后自行终止。 来防止因为网络问题而让 VNR 卡在比如添加游戏等操作中。 [UI] * Add an option in Preferences/UI to change VNR's default font. 在【使用偏好/界面】中,可以修改 VNR 默认的字体。 2/14/2015 SAT [Game Engine] * Modify ApRicoT engine so that the scenario thread won't split and variate on each launch. Be careful that there are usually two threads for ApRicoT, and only one of them is correct. The other one sometimes is right, but sometimes has repetition. Thanks for @Reality sama 's report! [Shared Dictionary] * You can use HTML escaped entities in the pattern and translation. For example, VNR by default will trim spaces for the pattern and translation. You can use   to force prepending/appending space. You can also use it to express unprintable characters without enabling regex. For example, ASCII 13 (Carriage Return, or CR) can be expressed as " ". 可以用 HTML 的转义语法来插入空格( )什么的。 另外,也可以使用&#d 的语法来插入如法输入的字符,而不必再使用打开正则表达的\u 语法, 比如:ASCII 13 (Carriage Return, or CR) 可以使用" "来表示。 * Add a "&eos;" (end-of-sentence) special symbol, which can be used to force VNR to break input text into sentences and translate them independently. For example, given: みおちゃん、スラマッパギ! If define the following rule: Type: input Pattern: 、 Translation: 、&eos; Then VNR will translate "みおちゃん、" and "スラマッパギ!"

independently.

Note: Under the water, VNR will replace "&eos;" by "…eos…", so that {{bos}}/ {{eos}}/{{boc}}/{{eoc}} macros won't be broken (because :bos:/:eos: also contains "…"). 可以用&eos;的符号来强制 VNR 断句,分别翻译分断后的句子。 比方说,给定: みおちゃん、スラマッパギ! 如果给定如下词条: 类型: 输入

匹配: 、 翻译: 、&eos; 那么 VNR 将会分开翻译「みおちゃん、」和「スラマッパギ!」。 Note: Using escaped symbols such as   or &eos; will break translation for all old versions of VNR. Let's wait for one or two days until people update VNR before adding rules containing these special symbols. 注:使用这些符号将会破坏使用老版本 VNR 同学的翻译。 让我们等待一两天,大家都更新过 VNR 了,再来使用这些符号吧。 2/13/2015 FRI [Shared Dictionary] * Add a Phrase Boundary option to the translation rule. When enabled, VNR will try to only apply the translation when it is at the boundary of a phrase. For example, given a yomigana definition: 愛 => あい Then, it will be applied to 愛ちゃん, but won't be applied to 恋愛、愛情, etc. i.e. 愛 will only be applied if the left of 愛 and right of 愛 are at the word boundary (like \b). My plan is to utilize MeCab to find word boundaries in the future. However, this is not what is happening at the current version. The detailed logic about how pattern is affected is as follows: - If @sourceLanguage is NOT Japanese # i.e. for non-Japanese games - If @type is macro Phrase boundary option is not allowed. - Else if @type is suffix @pattern = @pattern + "\b" - Else if @type is name or yomigana @pattern = "\b" + @pattern - Else # For all other types including translation, pattern will be wrapped with \b @pattern = "\b" + @pattern + "\b" - Else if @sourceLanguage is Japanese # i.e. for Japanese games - If @type is macro Phrase boundary option is not allowed. - Else if @type is suffix @pattern = @pattern + eow(@pattern) - Else if @type is name or yomigana @pattern = bow(@pattern) + @pattern - Else @pattern = bow(@pattern) + @pattern + eow(@pattern) Here, bow (beginning of word) will return the negative category of the first character of @pattern. And eow (end of word) will return the negative category of last character of @pattern. For Japanese games, for example, when the phrase boundary is enabled, 愛 => あい

is almost equivalent to: {{? あい Except that the new approach will also be applied to, say, 愛様, but old {{? English, VNR will first translate Japanese => Chinese using Baidu, an then Chinese => English using Bing, like this:

(first mt) (second mt) Japanese => Baidu.com => Chinese => Bing.com => English (intermediate lang) Here are some special scenario that might be benefit or affected from this feature. - Extend LEC output languages. LEC is by far the best Japanese-English translator, and @riz sensei is actively maintaining translation scripts for LEC to further elevate its translation quality. But VNR currently only supports English/Russian as output language. If you want to translate Japanese to, for example, Spanish, using LEC, then you can now select Bing as the secondary translator of LEC, and select English as Intermediate language. Note: LEC won't show up if you have blocked English in Preferences/i18n. - Translation alignment Translation alignment can only be enabled for the second translator. If enabled, the intermediate translation can be observed from the ruby. Here's an screenshot of the translation through: Japanese => (LEC) => English => (Google.com) => Spanish http://i.imgur.com/4kLn0lv.png - Shared Dictionary Shared Dictionary will be applied to the first and second translators independently. For example, given: Japanese => (LEC) => English => (Google.com) => Spanish VNR will first apply Japanese => English rules to LEC, and then English => Spanish rules to Google. An exception is Chinese. When the intermediate language is Chinese and the source language is Japanese, then VNR will also apply name/yomigana rules in Japanese to Chinese translation to the second translator. This will turn the translation of these names to Romaji instead of Pinyin. - Debugging machine translation There is current lack of support to debug the entire cascaded translation process. The underline mark will always be disabled for the first translator. And in the Test Machine Translation window, only the second translator can be debugged. - Offline Japanese => Vietnamese translation. You can combine a Chinese offline translator with HanViet in VNR to produce offline Vietnamese => Japanese translation.

Here are some screenshots for JBeijing, Fastait, and Baidu plus HanViet. http://i.imgur.com/KJibAwM.png Lots of text are underlined, which means the translation from Chinese => Vietnamese is ambiguous according to VietPhrase. The underline option can be disabled in Preferences/Shared Dictionary. Additionally, VNR also supports offline English-Chinese translation through Dr.eye. Combining Dr.eye with HanViet might produce offline English-Vietnamese translation. Note: If you have blocked Chinese in Preferences/i18n, no Chinese translators would show up. + State-of-art of Chinese translators If you would like to try using Chinese as the intermediate language, here are a summary of Chinese translators supported by VNR: 1. Baidu.com: The best online Japanese-Chinese translator. 2. JBeijing: The best offline Japanese-Chinese translator, but it is not free. 3. FastAIT: The best free offline Japanese-Chinese translator, but it is slow. 4. Dr.eye: The Japanese-Chinese translation quality is not good. But it supports offline English-Chinese translation. + About Chinese variants In VNR, zh means Chinese (because 中's reading is Zhong). zh+t means Chinese Traditional or Chinese Taiwan, and zh+s means Chinese Simplified. Basically, zhs is mostly used by Mainland China, while zht in Taiwan, Hong Kong, and all over the world. VNR will automatically convert different Chinese variants (traditional, simplified, Japanese kanji) internal. So, when select Chinese as the intermediate language, it does not matter a lot whether to use Traditional Chinese or Simplified Chinese. Comparison of some sample translations: Japanese: Google(vi): thấy...」 Infoseek(vi): Bing(vi): giờ...」 LEC(en): see.」 + Bing(vi): hiểu.」 + Google(vi): rồi.」

【爽】「悠真くんを攻略すれば210円か。なるほどなぁ…」 【Shuang】「¥ 210 hoặc nếu chụp các Yuuma-kun. Naa tôi 【Shuang】「Tôi chụp 210 Yuuma-kun có sẵn. Tôi hiểu?…」 【Shuang】「Tôi chụp 210 Yuuma-kun có sẵn. Tôi thấy bây 【It's refreshing】「If it captures Yuuma-kun, is it 210 yen? I 【Nó được làm mới】「Nếu nó bắt Yuuma-kun, là nó 210 yên? Tôi 【Đó là làm mới】「Nếu nó bắt yuuma-kun, nó là ¥ 210? Tôi hiểu

Baidu(zh): 【爽】「悠真君攻略的话,210 日元吗?原来如此啊……」 + HanViet(vi): 【Sảng】「Yuuma-kun tiến công chiếm đóng nói, 210nhật nguyên mạ? thì ra là thế a……」 + Google(vi): 【Sáng】「Yuuma-kun Raiders sau đó 210 ¥ nó? Vì vậy, đó ah......」 + Bing(vi): 【Mát mẻ】「Yuuma-kun Raiders, 210 yên? Oh, Ah......」 JBeijing(zh): 【爽】「如果攻略悠真君 210 日元?原来如此啊……」 + HanViet(vi): 【Sảng】「Nếu như tiến công chiếm đóng Yuuma-kun 210nhật nguyên? Thì ra là thế a……」 + Google(vi): 【Sáng】 「Nếu Raiders Yuuma-kun 210 trong yên? Vì vậy, đó ah......」 + Bing(vi): 【Mát mẻ】「Nếu các cướp Yuuma-kun 210 yên? Oh, Ah......」

a.….」

FastAIT(zh): 【爽】「攻下悠真君的话,210 元吗。原来如此啊。…。」 + HanViet(vi): 【Sảng】「đánh hạ Yuuma-kun nói, 210 nguyên mạ. thì ra là thế

+ Google(vi): ah. ....」 + Bing(vi):

【Sáng】「Yuuma-kun nắm bắt nó, 210 nhân dân tệ bạn. Vì vậy, đó 【Mát mẻ】「Yuuma-kun bị tấn công, tại 210 Yuan. Oh, Ah.…。」

btw, JBeijng is not free. But you might be able to get some help here: http://tieba.baidu.com/f?ie=utf-8&kw=%E5%96%B5%E7%BF%BB 添加了级联不同翻译器来扩展翻译语言的选项。这个和中文没什么关系,大家无视好了。 2/9/2015 MON [Translation Scripts] * VNR will enable TAH script made by @riz sensei by default to all Japanese => non-CJK-language translation. This behavior can be disabled in Preferences/Translation. If you are playing non-Japanese game, or if your language is Chinese/Korean, then you can ignore that option. VNR will NEVER apply TAH script if the source language is not Japanese, or if the target language is Chinese or Korean, even if the translation script option is enabled. The translation script tends to normalize Japanese by removing emotional sounds which usually cannot be recognized by English translators anyway. For example, it will turn: なるほどなぁ… To: なるほど。 Where the trailing なぁ… is deleted. This is never enabled for Chinese/Korean, because なぁ… can affect the emotion of the C/K translation and usually downgrades translation quality if deleted. 在【使用偏好/翻译器】的下边添加了使用日英翻译脚本的选项。大家无视那个选项就好了。 不论那个选项开启还是没有,都不会对中文翻译产生任何影响。 2/8/2015 SUN [i18n]

* VNR UI's language can be different from user language, which can be adjusted in Preferences. 在【使用偏好】中可以选择界面语言与翻译语言不同。 [Translation Scripts](@errzotl) * Update TAH script for LEC from @errzotl sensei. [Shared Dictionary] * The priority of rules is slightly changed that when the pattern have the same length, the language that is more special will be applied first. For example, given: 1. Yomi (ja=>*): クロエ => クロエ 2. Name (ja=>en): クロエ => Chloe 3. Name (ja=>ru): クロエ => Хлоя Then 3 will be applied before 2, and 2 will be applied before 1. If the user want to translate Japanese to Russian, then rule#3 will be used, because 'ru' is more "special" than 'en' and '*'. 当两个词条的匹配文本一样长时,那么语言更加特殊的词条会被优先使用。 比如,如果 A 词条的语言是【全部】,B 是【中文】,那么 B 词条会被优先使用。 * For name/yomigana rules, VNR will deal with 's (en), の (ja), 的 (zh), 의 (ko) suffices for CJK and English translations. For example, given a name definition: Chloe (en) => 克洛伊 (zh) VNR will also translate: Chloe-chan's => 克洛伊酱的 for English-Chinese translation. And given a name definition: 克洛伊 (zh) => Chloe (en) VNR will also translate: 克洛伊酱的 => Chloe-chan's for Chinese-English translation. And given a name definition: 克洛伊 (zh) => 클로이 (ko) VNR will also translate: 克洛伊酱的 => 클로이짱의 for Chinese-Korean translation. etc. 英中翻译时,VNR 会在把姓名词条后边的「‘s」翻译为「的」。 2/7/2015 SAT [Text Settings] * Add more text encodings for games. The underlying encoders being used for different languages are as follows. - Japanese (Shift-JIS): CP932 - Traditional Chinese: BIG5 - Simplified Chinese: GBK - Korean: CP949 - Thai: TIS-620 - Vietnamese: Windows-1258 - Arabic: Windows-1256 - Latin (All Western European languages): Windows-1252 - Central and Eastern Europe (Polish, etc.): Windows-1250 - Cyrillic (Russian, etc.): Windows-1251

I don't have games to test these encodings. If the texts are not displayed properly in the encoding, just let me know! [Shared Dictionary] * Translation rules can be specific to more than one translators. 词条可以选择仅限多个翻译器。 2/6/2015 FRI [Game Engine] * Add FocasLens engine to get text in 「幻想人形演舞」. 为「幻想人形演舞」添加了提取文本的支持。 * Add Syuntada engine for games made by 平安亭. Note: You might need Ntleas to run the game on Windows 7, including Japanese Windows. LocaleEmulator might not work. 为平安亭制作的游戏添加了提取文本的支持。. 注:即使在日文编码的 Windows 7 上,仍然会需要 Ntleas 来启动游戏,不然会有乱码的。 * Text Settings will warn if the scenario thread in the VNR's online database is unknown to the current VNR. When it happens, an update of VNR might be needed to support the game. 当在线数据中的对话文本 VNR 不知道如何提取时,文本设定中会显示红色的警告。 这时,也许需要更新 VNR 才可以正常的提取文本。 [Game Information] * Allow to associate the game with the app on Steam. [i18n](Korean, @mireado) * Update VNR's UI translation in Korean made by @mireado sama. 2/5/2015 THU [Machine Translation](Vietnamese) * Add an option to display Phiên âm above Japanese kanji in Preferences/Translation. * When there multiple definitions for a Chinese phrase in VietPhrase.txt, VNR will underline the translated text. Clicking the translation, and VNR will popup the alternative Vietnamese translation. The underline behavior can be disabled in Preferences/Shared Dictionary. * Add option to display translation alignment between Chinese and Vietnamese for HanViet translation in Preferences. 2/4/2015 WED [JBeijing](Chinese, @djz020815) * 更新了 djz 大先生的 J 北京词库。 [Game Settings] * Game text language can be adjusted by clicking Edit on the SpringBoard. It should be Japanese for a Japanese game, English for an English game, etc. 在 SpringBoard 上点击【编辑】,可以变更游戏文本的语言。 如果是日文的游戏,那里应该选择日文。如果是英文游戏,那里应该选择英文,etc.

[Machine Translation](Vietnamese) * VNR's HanViet translator will use VietPhrase.txt from QuickTranslatorTAO to translate Chinese to Vietnamese. A screenshot is as follows: http://i.imgur.com/kL6cxUv.png Note: If you are playing a traditional Chinese game such as NEKOPARA, the language in Text Settings must be set to Chinese instead of Simplified Chinese so that VNR will convert Traditional Chinese characters to Simplified Chinese. Otherwise, Traditional Chinese characters might not be recognized by HanViet. * HanViet translator will also apply translation rules in the Shared Dictionary. As a result, a Japanese name in the Chinese translation will be translated to Romaji instead of Phiên âm if there are name/yomi rules defined in the Shared Dictionary. * Add an option to display Phiên âm above Chinese texts in Preferences/Translation. 2/3/2015 TUE [Windows 10] * Fix the issue that VNR would crash on Windows 10 build 9926. 修正了 VNR 在 win10 上可能会崩溃的问题。 2/2/2014 MON [Game Engine] * Add new 5pb text engine for 「超次次元ゲイム ネプテューヌ Re;Birth1」. Note: If you are playing an English version, don't forget to change the language in Text Settings to English. 为「超次次元ゲイム ネプテューヌ Re;Birth1」添加了提取文本的引擎。 注:如果你在玩英文的版本,要在【文本设定】中修改语言为【英文】才好。 [Machine Translator](Korean) * Support English-Korean translation alignment for Naver.com. 2/1/2015 SUN [Shared Dictionary] * Add a case-insensitive option to the translation rules. 词条添加了【不区分大小写】的选项。 [Game Launch] * Fix an issue that VNR sometimes is not able to recognize the game when launched with Locale Emulator, or in a symbolic link directory, or from a network location. 修正了启动游戏后,VNR 有时无法立刻识别游戏的问题。 * Game can be launched in non-Japanese locale. This might be helpful if you want to play a non-Japanese game. For half-translated games with hybrid languages, I am not sure which locale to

use.

According to my experience: - If it is a Japanese game half-translated to English, Japanese locale might be used.

- If it is a Japanese game half-translated to Chinese, Chinese locale might be used. For other language pairs, I am not sure. For Chinese games, be careful if it is in Traditional Chinese or Simplified Chinese. Usually, fan-patched games are in Simplified Chinese; while officially translated games are in Traditional Chinese. 可以选择指定非日文的语言区域来启动游戏。 特别的,对于翻译了一半的游戏: - 如果是日文游戏翻译为中文,那么启动时也许应该选择中文区域。 - 如果是日文游戏翻译为英文,那么启动时也许还是应该选择日文区域。 对于其他的语言的搭配,我不太清楚该使用何种语言。 1/30/2015 FRI [OCR] * Fix a bug that HTML tags could mess up the OCR translation popup. 修正了 OCR 翻译中有时会出现 HTML 标签垃圾的问题。 [Shared Dictionary] * There are now two language properties for a translation rule: - Source language (From): The language of the original text, i.e. Japanese for a Japanese game. - Target language (To): The language the user want to translate to. The target language is the same as the old language property. If you are playing a Japanese game, just put source language as Japanese, and everything is the same as before. If you are playing a non-Japanese game (English, or Chinese, etc.), you can create translation rules specific for that source language. 共享辞书中的词条现在有两个【语言】的属性了。 - To: 目标语言。这个和以前版本 VNR 中的【语言】是一样的。 - From: 游戏的语言。如果是日文游戏,那么这个属性总是【日文】。 如果你在玩日文游戏,那么什么都不需要变更。 如果你在玩英文的游戏,那么可以添加 From 为英文的词条。 [Game Engine] * Update KiriKiriZ engine to work with 「サノバウィッチ」. btw, since this version, KiriKiri stopped using GDI function to draw text by default. The traditional way to find KiriKiri hooks by backtracking callgraph to GDI APIs no longer works. As a result, I do not have a portable way to hook to KiriKiriZ games anymore. VNR's game engine might keep becoming outdated whenever KiriKiriZ implementation is changed. 修正 KiriKiriZ 来支持「サノバウィッチ」。 感谢 djz020815 sensei 的报告! 1/28/2015 WED [Wine] * Fixed a bug that caused LEC translation fail to work on Wine.

1/26/2015 MON [Machine Translation] * Google/Bing/Infoseek translation can also display the alignment between the translation and the original text. With Google/Infoseek, the alignment works for any supported language pairs. With Bing, only Japanese to English/Korean translations can be aligned. [i18n](Korean, @mireado) * Update VNR's UI translation in Korean made by @mireado sama. 1/25/2015 SUN [Machine Translation] * Add an option to display mapping of translations for Baidu.com/Naver.com. VNR will display the original text above the translation except for those modified by the Shared Dictionary. A screenshot is as follows. It can be enabled/disabled in Preferences/Translation. http://i.imgur.com/6Zf5XTw.png VNR 默认会显示 Baidu 和 Naver 的对照翻译。截图在上边。 如果翻译没有被共享辞书修改,那么 VNR 会在中文翻译的上边显示被翻译的日文。 如果你不想看到,可以在【使用偏好/翻译】中禁用这个选项。 * I temporarily disabled Japanese syntax-based translation. I will enable it later after I finish implementing this feature. 暂时禁止开启基于的语法翻译了。 1/24/2015 SAT [Translation Scripts](English, @errzotl) * Update TAH script for LEC from @errzotl sensei. [Machine Translation](English) * Share translation rules (Shared Dictionary and TAH script) between offline LEC and online LEC translators. * Handle jittering for non CJK languages (such as English) as well. For example, given: すみません! => I am sorry! Then: すっ、すみません! => I, I am sorry! You might not observe such translation for LEC/ATLAS though, since @errzotl's TAHScript tend to delete dangling sounds such as "すっ、". * I dropped the old translation mechanism for non-CJK languages (such as English), and changed to use the same mechanism as CJK. Using the new system for English, it is now possible to observe changes made by the Shared Dictionary for ouput/translation/name/yomi/suffix rules. A screenshot is as follows, where the changes are marked with underline. Click the underlined text and VNR will show the term that causes the changes. http://i.imgur.com/uWnRBkD.png If you are speaking Chinese/Korean, you can ignore the following long texts,

as it is already how CJK translation works since the first version of VNR. For example, given a yomigana definition in the Shared Dictionary: 悠真 => ゆうま (ID=12345) If I want To translate the following sentence to English using LEC: 悠真くんを攻略すれば210円か。 In the old VNR, the translation pipeline is like this: 悠真くんを攻略すれば210円か。 => Apply Shared Dictionary Yuuma-kun を攻略すれば210円か。 => Send to LEC If it captures Yuuma-kun, is it 210 yen? The new translation process is like this, which I called "translation escaping": 悠真くんを攻略すれば210円か。 => Apply Shared Dictionary SN12345 を攻略すれば210円か。 => Send to LEC If it captures SN12345, is it 210 yen? => Apply Shared Dictionary again If it captures {id=12345}Yuuma-kun{/id}, is it 210 yen? There are a couple of advantages for the new mechanism. 1. It can hide the translation contents from the machine translators. A machine translator cannot see Yuuma-kun but SN12345. This prevents translation from messing up the original Japanese text, which is critical to for Japanese-Chinese translation, because Chinese translation also consists of kanji. This will also enable re-translating text where the translation's language is not the same as the machine translator's output language. For example, if I want to use ATLAS to translate Japanese to Russian, I can first use ATLAS to translate Japanese to English, and LEC to retranslate English to Russian. Given a yomigana definition: 悠真 => ゆうま => Юума I can hide non-English word Юума from being visible to ATLAS in this way. I will add retranslation support to VNR soon. 2. It can hide non Shift-JIS characters in the translation. Certain translators such as ezTrans require the input Japanese text to be Shift-JIS, which makes it impossible to use simple TAH-like replacement for translation

having

characters not in the Shift-JIS character set.

3. It allows us to track the changes made by Shared Dictionary like in the screenshot. While applying translation escaping, VNR currently will avoid escaping fullwidth Japanese punctuations at the beginning/ending of the translation. For example, given a translation definition in the Shared Dictionary: はい、 => Yes。 (ID=5678) And to translate the following sentence to English using LEC: はい、そうですよ。 VNR's translation pipeline will be like this: はい、そうですよ。 => Apply Shared Dictionary SN5678。そうですよ。 => Send to LEC: SN5678. It is so. => Apply Shared Dictionary again {id=5678}Yes{/id}. It is so. As you can see, VNR will avoid escaping "。" in the end of "Yes。". For details on how it works, please try Test Machine Translation on the SpringBoard. [Shared Dictionary] * VNR will automatically translate の after a name or name+suffix. For example, given a yomigana definition: 悠真 = ゆうま And some suffix definition: English: くん => -kun Korean: くん => 군 Then, VNR will translate "悠真くんの" to: English: 悠真くんの => Yuuma-kun's Korean: 悠真くんの => 유우마군의 1/23/2015 FRI [Shared Dictionary] * You can right click the translation subs to add an Output term to the Shared Dictionary. 可以右键点击翻译字幕中的单词来添加输出词条。 [Game Management] * VNR does not require valid Text Settings to add a new game to VNR. To add a game, you can simplify drag/drop the game's executable or shortcut file, i.e *.exe or *.lnk, to the SpringBoard like before.

But even if VNR is offline or the game does not exist in VNR's database, VNR will still add the game and won't open the Game Wizard anymore. i.e. You can add WHATEVER game/exe to VNR in this way no matter text hook can extract texts or not. This might be helpful if you want to use OCR to extract game text instead of text hook. You will have to re-adjust Text Settings if you still need VNR's text hook to extract text. Please DO NOT add non-game Windows system process (such as Explorer.exe) to VNR.

If you do, I might block your IP to access VNR's database depending on the processes added. I might totally remove the GameWizard in the future. 添加新游戏时,VNR 不再要求有效的文本设定。 你可以把游戏程式的 exe 或者快捷方式(lnk)文件直接拖入 SpringBoard 来添加新游戏。 即便游戏不在 VNR 的数据库中,或者 VNR 是 offline 的,VNR 也仍然会添加游戏而不再打开【游戏向导】。 也就是说,即使是 VNR 不可以提取文本的游戏,你也可以通过这种方式添加到 VNR 中。 如果你想要使用 OCR 来提取文本,而 VNR 又不支持从该游戏提取文本,也许可以通过这种方式来添加游戏。 如果你仍然需要 VNR 来提取文本,那么还是要在启动游戏后重新调整【文本设定】。 但是,请不要添加好像 explorer 这样的非游戏的系统进程到 VNR。 否则取决于添加的程式,我可能禁止你的 IP 来访问 VNR 的数据库。 我在以后也许会删掉【游戏向导】的功能。 1/22/2015 THU [Shared Dictionary] * VNR no longer downloads entries in the Shared Dictionary that has been disabled for more than 6 months, which might help reduce same some memory and time. If you still want to find these disabled entries, you can search them at sakuradite.com/dict. 共享辞书中被禁用六个月以上的词条不会再被下载。 如果你一定要看到这些被禁用的词条,可以到 VNR 的网站上去搜索。 * Input/output/translation/name/yomi entries can be translator-specific. By default, a translation rule will be applied to all machine translators. You can now change it to be enabled on specific translator instead. 用于改善翻译的词条可以只对某个翻译器开启。 [Machine Translator] * Google translation speed improved. 提高了 Google 翻译的速度。 [i18n](Korean, @mireado) * Update VNR's UI translation in Korean made by @mireado sama. [Machine Translator](Korean) * Add Naver.com online translation support for Korean as suggested by @mireado

sama. Naver can be enabled in Preferences/Translation. [TTS] * Add Naver.com online TTS support. If you are using Online Japanese TTS while playing games, maybe you can try Naver TTS. Naver TTS supports less languages (only CJK and English). But Naver Japanese TTS sounds better, has higher bitrate, voice pitch can be adjusted, and it supports both Male/Female voices. For example, in Voices Settings, if you assign a Male gender to a character, VNR will use Naver's male TTS to speak out the text. 添加了对 Naver 在线语音合成的支持。 如果你在用百度的日文 TTS 来读出游戏对话,那么非常建议你尝试下 Naver 的日文 TTS。 和 Baidu 比起来,Naver 的 TTS 更清晰,bitrate 更高,可以调整音调,并且同时支持男声和女声。 比方说,如果在语音设定中,指定某个角色的性别是男性,那么 VNR 会用 Naver 的男声来读出日文。 1/21/2015 WED [Shared Dictionary] * Slightly modified the jitter pattern to eliminate xtsu in the middle. An example is as follows: すっ、すみません! => Chinese: 对,对不起! => Korean: 미, 미안합니다! 稍微修改该了下处理口吃的逻辑来删掉中间的 xtsu。例句如上。 1/20/2015 TUE [Yomigana](Russian) * Support converting Japanese kana to Russian alphabet. The current mapping could be found in the following page: http://sakuradite.com/wiki/en/Furigana If you find errors in the mapping, please let me know! * Add an option to display ruby in Russian for Japanese in Preferences/Translation. When selected, for example, VNR will display каваий instead of kawaii above 可 愛い. * For yomi typed terms in the Shared Dictionary, VNR will generate names in Russian instead of English when a Russian translator is used. For example, given a yomi term: 悠真 => ゆうま VNR will then translate 悠真ちゃん => Юума-Чан instead of Yuuma-chan. btw., If you want to add name translation to the Shared Dictionary, I hope you can use Yomi type instead of Name type, so that different languages don't have to have duplicate

translations for the same set of Japanese names. On the bottom of the Game Information, there is an Import Name widget that might help make creating Yomi names easier. [Yomigana](Thai) * I disabled generating names for Thai since the current kana mapping for Thai seems to be totally wrong. If you are using VNR to translate Japanese games to Thai, I hope if you could give me a hand to fix the mapping on the following wiki page: http://sakuradite.com/wiki/en/Furigana [Translation Scripts](English/Russian, @errzotl) * Update TAH script for LEC from @errzotl sensei. [Machine Translator](Russian) * Support using LEC to provide offline Japanese to Russian and English to Russian translation. LEC will translate to English by default. You can enable Russian translation by selecting Russian as VNR's language in Preferences. Finally, I managed to get this work, which has been obsessing me for two years ... I am using the same method as my old post on hongfire two years ago. How time flies. After reading assembly for many games, I finally could understand the logic behind LEC's assembly. LEC also supports I am going to add I have ime. And I will add an translate LEC/ATLAS English Vietnamese.

a couple of European languages as well as Chinese and Korean. translation support for other languages supported by LEC when option to use LEC/Google/Bing as secondary translator to retranslation/subtitles to other languages, such as Russian and

btw., I created a page below for browsing the Shared Dictionary online. It could be used to look up dictionary entries without opening VNR. Currently, all entries are read-only on that page. http://sakuradite.com/dict 创建了一个可以浏览和检索共享辞书词条的网页,在上边。 不过,网页上的词条是只读的,还不可以修改的。 1/19/2015 MON [Game Engine] * Update old WillPlus engine to work with new Honeybee games. 修正了 WillPlus 引擎失效和无法提取部分 Honeybee 游戏文本的问题。 [Command Line] * As request, add command line options to minimize VNR to system tray after launch. You can do it this way: Library\Frameworks\Sakura\bin\reader.exe --minimize --nosplash

运行上边的命令,那么 VNR 启动后会最小化到 system tray。 1/17/2015 SAT [Shared Dictionary] * 如果你在【使用偏好/国际化】中屏蔽了英文和韩文,那么更新共享辞书时就不会下载 【读法】词条了。因为这类词条对中文翻译是没有用处的。 如果你屏蔽了英文和韩文,那么,在这次更新共享辞书的时候,可以先点击下【重置】 来删掉本地的读法词条。 * When generating names from yomigana, VNR will remove う after the o-column hiragana. For example, given 佐藤院 = さとういん, the generated names will be Satoin/사토인 instead of Satouin/사토우인. The removal will only be applied if there are at least 4 characters in the yomigana. For example, 章(しょう) will still be translated to Shou instead of Sho because the original yomigana has only 3 characters (< 4). If you don't want VNR to remove う, you can use katakana instead of hiragana as yomigana. For example, if the yomigana of 佐藤院 is defined as サトウイン instead of さとうい ん, then VNR will not remove ウ in the middle. 1/16/2015 FRI [Game Engine] * Fix the issue that text hook might stop working for games for Black Cyc, MIO, etc. 修正了 Black Cyc、MIO 等会社的游戏提取文本一段时间后会失效的问题。 * Fix a bug existing for a long time that certain game engine (Malie, PPSSPP, etc.) that generating large numbers of text threads might crash VNR with vnrsrv.dll exception. 修正了一个存在很久的 Malie,PPSSPP 等产生大量文本 thread 时会崩溃的问题。 1/15/2015 THU [Shared Dictionary] * Fixed a bug that sometimes not all name entries are applied. Thanks for @djz020815 sensei's report! * VNR will try to handle jittering Japanese sentences for Chinese/Korean, such as: す、す、すみません! => Chinese: 对,对,对不起! => Korean: 미, 미, 미안합니다! Note that this only works for Chinese/Korean. For English, I don't have a way to handle this pattern. So, I add a rule to the Shared Dictionary to delete leading "す、す、" instead. For Chinese/Korean, VNR will identify the jitter in the following pattern: {{boc}}({{kana}})[、…]\1

As a result, VNR cannot identify, for example: す、済みません Because す and 済 are different. VNR 会处理口吃那样的日文。 比如说,如果已知「すみません!」会被翻译为「对不起!」。 那么 VNR 会自动将 「す、す、すみません!」 翻译为「对,对,对不起!」。 1/14/2015 WED [Web Browser] * Aero effect is removed which is not portable to different Windows. 1/12/2015 MON [UI] * Texts in the inspector at the bottom of views (SpringBoard, Shared Dictionary, etc.) are selectable by mouse and copyable using CTRL+C. SpringBoard、共享辞书等下边的 inspector 中的文本可以用鼠标选定和 CTRL+C 来复制。 [Shared Dictionary] * Reduce the time and memory to process large numbers of name entries for machine translation. 减少了处理姓名词条占用的内存和时间。 * Fixed a regression that newly submitted rules might not be immediately applied. 修正了新创建的词条可能会无效的 bug。 * Append a space after English translation term just like Korean. For example, given two translation rule: かわいい = cute 女の子 = girl Then, "かわいい女の子" will be translated to "cute girl" instead of "cutegirl", where a space will be inserted in the middle. 1/11/2015 SUN [Shared Subtitle] * Avoid showing duplicate subtitles. The first-created subtitle will overshadow later duplicates. Thanks for @s793016 sensei's report! 不显示重复的字幕。 第一个同学创建的字幕会禁止后边重复的字幕。 感谢 s793016 sensei 的报告! [Shared Dictionary] * VNR will validate correctness of the entries in Shared Dictionary. There is a new Check column which shows the possible errors in for the entry. - When the check value is in green, the entry seems to be OK. - When the check value is in orange, it is a warning and the entry might be inappropriate. - When the check value is in red, it is an error and the entry is definitely wrong. The detailed error message Some sample error messages - Useless error: the entry - Parenthesis warning: the

can be find the bottom of the Shared Dictionary. are as follows: has no effect and should be deleted regular expression might have mismatched

parentheses/brackets (This check is not accurate) You can find all incorrect entries by sorting the Check column. VNR 会检查辞书词条的正确性。 在共享辞书的 table 中添加了一个【验证】列。 - 当列值是绿色的,那么词条大概是正确的。 - 当列值是 orange(表示警告),那么词条可能是有问题的。 - 当列值是红色的(表示错误),那么词条一定是有问题的。 错误的信息可以在共享辞书下边找到。 一些比较重要的错误如下: - 无用:词条是没有作用的,应该删掉。 - 括号:正则表达式中的括号可能不匹配(不过这个检查并不准确,可能会错)。 - 中文:语言是中文的词条中不应该包含函简体字。 - 简中:不包含简体字的词条的语言应该设定为正体中文。 可以点击【验证】列来显示所有被警告的词条。 1/10/2015 SAT [Word Dictionary] * Display term ID in Shared Dictionary. The ID is a number used by VNR internally to uniquely identify a dictionary entry. This number can also be found in the popup when click an underlined translation text. If you search an integer, such as 1234, VNR will show the ID=1234 entry. When create new entry, before saved online, the ID column will display "Unsaved" in red. 共享辞书会显示词条的 ID。 这个 ID 在点击下划线的词条后出现的窗口里也可以找到。 如果在共享辞书中检索整数,比如 1234,那么 VNR 会显示 ID=1234 的词条。 在创建词条后,当词条还没有成功保存时,ID 栏会用红字显示未保存。 * In the machine translation test, click the underlined text and VNR will popup the dictionary entry that causes the change. 测试机器翻译中,点击下划线的文字后,VNR 会显示造成变更的相应的词条。 [Shared Subtitle] * Javascript can be used in [url] for subtitles. Some examples are as follows. It is still useless, though. - [url=javascript://growl.msg('hello world")]Click to growl a "hello world" message[/url] - [url=javascript://main.showSpringBoard()]Click to open SpringBoard[/url] - [url=javascript://main.showUser('jichi')]Click to display user information of @jichi[/url] - [url=javascript://main.searchDictionary("jichi", "user")]Click to search dictionary entries made by @jichi[/url] 1/9/2015 FRI [Word Dictionary]

* Improve dictionary rendering to make it more readable. 改进了对日文单词字典的渲染。 [Shared Dictionary] * When click the underlined machine translation text, VNR will popup to show the dictionary entry that causes the changes. Due to technical difficulties, the underline trick only works for the entries with the follow types and languages: - Output (all languages, including English) - Translation (Chinese/Japanese/Korean only) - Name (Chinese/Japanese/Korean only) - Yomi (Chinese/Japanese/Korean only) 点击机器翻译字幕的下划线的文字,会填出显示是哪一条规则导致了这个变更。 不过这只对如下类型和语言的词条造成的变更有效,对其他类型和语言的词条无效: - 输出词条(任何语言) - 翻译词条(仅限中日韩) - 姓名词条(仅限中日韩) - 读音词条(仅限中日韩) [Shared Subtitle] * This is kind of useless, but you can now use [url] bbcode in subtitles/danmaku. For example, given the following subtitle, it will render 茶道 with underline. And if user clicks that underlined word, VNR will open the wiki link in the web browser. [url=http://ja.wikipedia.org/wiki/茶道]茶道[/url] 在弹幕、人工字幕中可以使用[url]的标签了。 比方说,给定上边字幕或者弹幕,那么 VNR 会为【茶道】下划线。 如果其他同学点击【茶道】,那么 VNR 会用浏览器打开对应的 wiki 的链接。 btw., I am thinking to expose Python/Javascript API though danmaku with bbcode. For example, maybe, given the following danmaku: [script=python]environ['hentai'] = 1[/script] It could be used as a trigger to change the translation environment or whatever properties of VNR at specific game scene. i.e. the script will only be executed when the game reaches at specific scene where the danmaku is submitted. Or, the script could also be used to create animated danmaku/subtitle, like this: [script=javascript] var self = this; setInterval(1000, function() { self.x += 100; self.color = Qt.rgb(self.x % 255, 0, 0); }); [/script] And it might also be possible to use [url] to simulate clickable buttons: [url="javascript://this.speed=10"]Speedup[/url] Enabling Python/Javascript in danmaku is quite simple to implement. But I feel it is still kind of useless.

If you have suggestions to make use of it, feel free to discuss with me! 我在想,也许,可以在弹幕中内嵌 Javascript 或者 Python 的代码。 比如说,当游戏进入到一定的情节,那么,可以用如下的弹幕来告诉 VNR 打开 hentai 词条: [script=javascript]environment.hentai = true[/script] 这样,这个 script 就只有在游戏进入到发弹幕的那个 scene 的时候才会执行。 这个其实很好实现,不过感觉还是用处不大。 如果你有其他的建议,可以让我知道! 1/7/2015 WED [ezTrans](Korean) * Preserve "『』" in the translation. Prevent ezTrans XP from replacing "『』" with "「」". [Ruby](Chinese) * Display tone for Pinyin. 拼音注音会显示声调。 1/6/2015 TUE [Translation Scripts](English, @errzotl) * Update TAH script for LEC from @errzotl sensei. * I wrote some scripts to enable macro support while composing TAH scripts. I wrote these scripts originally for @riz sensei to improve English translation quality. You can ignore the following text if you have never manually written a TAH script. The basic idea is that instead of directly writing a TAH script manually, first write translation rules in one or several files, and then use a Python script to combine them together to generate a legal TAH script. My script could be found at Scripts/tahcompile.sh. It will take several translation scripts with a new macro syntax and generate a single TAH script. It will also do syntax checking to the regular expressions in the translation scripts. An example could be found at Library/Examples/TAHScript. [Chinese Variants](Korean) * Add a toggle in Preferences to use Korean Hanja as Chinese variants. 【使用偏好】中添加了使用朝鲜汉字为默认中文汉字变体的选项。 [Ruby](Korean) * Add an option to recover hanja for hangul text in Preferences. For example, given a sentence as follows (which is picked from Korean Wikipedia): 자유 콘텐츠는 저작권이 소멸된 퍼블릭 도메인은 물론, 저작권이 있지만 위 기준에 따라 자유롭 게 이용이 허락된 콘텐츠도 포함한다. VNR is able to recover hanja like this, which mixes hangul with hanja just like Japanese: 自由 콘텐츠는 著作權이 消滅된 퍼블릭 도메인은 勿論, 著作權이 있지만 위 基準에 따라 自由롭 게 利用이 許諾된 콘텐츠도 包含한다.

In this way, it might make it easier to understand for Korean learners who already know Chinese/Japanese. A screenshot with hanja and romaja as ruby is as follows: http://i859.photobucket.com/albums/ab155/jichi/hanja_zps0638299d.png However, the hanja might not be 100% correct, because the meaning of hangul could be ambiguous, whose meaning is usually context-sensitive. For example, "이용이" in the above sentence can be either "利用이" or "이容易". When that happens, VNR will pick the hanja at beginning of the word (i.e. 利用 이) over the others, which might be right or wrong depending on the context. Additionally, due to ambiguity, VNR currently will not guess hanja for individual hangul. I will add support of displaying romaja and hanja for Korean to Website Reader later when I have time. 在【使用偏好/翻译/读音】中添加选项来恢复韩文中的汉字。 比方说,给定下边的韩文 Wikipedia 上的一句话: 자유 콘텐츠는 저작권이 소멸된 퍼블릭 도메인은 물론, 저작권이 있지만 위 기준에 따라 자유롭 게 이용이 허락된 콘텐츠도 포함한다. VNR 可以将其中的部分汉字恢复出来,变成好像假名和汉字混合的日文一样: 自由 콘텐츠는 著作權이 消滅된 퍼블릭 도메인은 勿論, 著作權이 있지만 위 基準에 따라 自由롭 게 利用이 許諾된 콘텐츠도 包含한다. 这样,也许可以帮助学习韩文的同学来阅读。 下边是用汉字和罗马字为韩文注音后的截图: http://i859.photobucket.com/albums/ab155/jichi/hanja_zps0638299d.png 不过,由于韩文本身很容易有歧义,标注的汉字并不能保证 100%正确。 比方说,在上边的例句中,「이용이」既可能是「利用이」又可能是「이容易」。 这时,VNR 会选择位置在单词左边边界的汉字,即:「利用이」。 不过,这种策略并不一定都是正确的。 另外,由于单个韩文字母可能对应的汉字太多,VNR 不会对单个韩文恢复汉字。 我以后有时间的话,会把对韩文的支持添加到 Website Reader 中。 1/5/2015 MON [Korean] * Add KS_C_5601 encoding to Text Settings for translating Korean games. 文本设定添加了韩文的文字编码(KS_C_5601)。 如果要翻译韩文化的游戏,可以选择这个编码。 [Ruby] * Add an option in Preferences/Translation to display romaji as ruby for nonJapanese texts. This is useless unless you want to play non-Japanese games using VNR. A screenshot of translation with ruby for Chinese Pinyi and Korean Romaja is as follows: http://i859.photobucket.com/albums/ab155/jichi/Ruby_zps6c4331ff.png

在【使用偏好/翻译】中添加一个对非日文语言显示注音的选项。 这个选项是没有用的,除非你打算用 VNR 来玩非日文的游戏。 上边的是包含中文拼音和韩文罗马字注音文本的截图。 1/4/2015 SUN [Shared Dictionary] * If you have Microsoft Japanese IME installed, when create new dictionary entry, the popup dialog will display the guessed kanji of Japanese kana. 如果有安装微软日文输入法,那么在创建词条时,会显示猜测的假名对应的汉字。 * In the bottom of Game Information window, there is a new "Import Name" button, which might help you add names to Shared Dictionary. In the name wizard window, it will display all guessed names for the game. - For non-Chinese languages You can press "Yomi" buttons to add yomi entries to Shared Dictionary. As mentioned before, Yomi names will be automatically converted to English/Korean/Thai translations. - For Chinese You can press "Name" buttons to add name entries to Shared Dictionary. VNR will automatically guess the Chinese kanji for Japanese names. 在【游戏情报】的下边,添加了一个【导入名字】的按钮,可以用来帮助创建姓名词条。 打开后,弹出的窗口会显示猜测的名字。 - 对于中文语言 可以点击【名字】来添加人名词条。VNR 会自动猜测日文对应的正体中文或者简体中文的。 - 对于非中文的语言 可以点击【读法】来添加读法词条。这里就不细说了。 * At the bottom of Shared Dictionary, VNR will display Romaji of translation for all languages (such as Chinese Pinyin and Korean Romaja) except Japanese and English. This is useless unless you want to understand dictionary entries in foreign languages like me. 在共享辞书的下边,会显示除去英文和日文外全部语言的翻译的罗马字(比如韩语)。 1/2/2015 FRI [Forum] * Display topics of questions and reviews VNR 会显示与游戏有关的问题和感想。

per-game.

[Proxy] * If you are blocked by ErogameScape, you can turn on proxy in Preferences/Internet. Due to technical difficulties, it currently only works in VNR, not the Website Reader. 如果你无法访问批评空间,可以在【使用偏好/Internet】中打开代理。 不过当且只对 VNR 有效,而对 Website Reader 无效。 * If it is very slow to access Baidu.com, you can turn on proxy in Preferences/Internet. 如果你不在中国大陆地区居住,而造成百度翻译很慢很慢,那么你也许可以尝试打开 【使用偏好/Internet】中对百度的代理。 * 恢复了大陆地区对 Google 翻译的访问。

但是速度比直接访问 Google 会慢很多。 [Shared Dictionary] * Add a "private" toggle in the Create Dictionary Entry dialog as requested by @Venomg3 sama. 12/31/2014 WED [JBeijing](Chinese, @djz020815) * 更新了 djz 大先生的 J 北京词库。 12/30/2014 TUE [i18n](Korean, @mireado) * Update VNR's UI translation in Korean made by @mireado sensei. 12/28/2014 SUN [Game Engine] * Do not hijack Lstr functions for games made by Chartreux Inc. (Rosebleu, MORE, etc.) It might cause text hook to stop working. 修正了 Chartreux 旗下的 Rosebleu、MORE 等社的游戏提取文本一段时间后会失效的问题。 [Online TTS](Korean) * Fixed a bug that Baidu TTS did not speak Korean text. btw., if you are learning Korean, you could try ezTrans to translate Japanese eroge to Korean. Due to the similarity of the two languages especially the pronunciation, combining with TTS for Japanese and Korean, it might give you a hand to learn Korean at the same time. 修正了百度 TTS 无法读出韩文的 bug。 btw., 如果你在学习韩语,也许,可以尝试下载 ezTrans XP 来将日文的游戏翻译成韩文。 ezTrans 是最流行的日韩翻译程式了。 由于日韩语言极度的相似性(尤其是单词的发音),结合在线日语和韩语的 TTS, 也许可以帮助大家学习韩语。 12/27/2014 SAT [Game Engine] * Add LunaSoft engine for 「悪堕ラビリンス」. 为「悪堕ラビリンス」添加了提取文本的引擎。 * Add new YU-RIS engine for 「鯨神のティアスティラ」. The old engine might not work and will crash the game on Windows XP. 为「鯨神のティアスティラ」添加了新的 YU-RIS 引擎。 * Fixed a bug in Leaf engine which might crash White Album. 修正了一个可能会让 White Album 崩溃的 bug。 12/26/2014 FRI [Machine Translation](English) * VNR will capitalize the first letter of a sentence for machine translation. [Game Engine] * Add game engine for 「ハーレムめいと」. However, the Text Settings have to be re-adjusted every time the game is restarted.

VNR now will hook to several functions in mono.dll, which might also work for non-eroge C# games: MonoString* mono_unichar2* char* gchar* gunichar2* gchar*

mono_string_from_utf16 mono_string_to_utf16 mono_string_to_utf8 mono_utf8_from_external mono_unicode_from_external mono_unicode_to_external

(gunichar2 *data); (MonoString *s); (MonoString *s); (const gchar *in); (const gchar *in, gsize *bytes); (const gunichar2 *uni);

为「ハーレムめいと」添加了提取文本的引擎。 不过这个提取方法不太好,每次游戏重新启动,都需要重新调整文本设定。 12/25/2014 THU [Game Engine] * Add Leaf engine for 「WHITE ALBUM2 ミニアフターストーリー」. 为「WHITE ALBUM2 ミニアフターストーリー」添加了提取文本的引擎。 [Yomigana](Korean, @Reality) * Fix the errors in the mapping from Furigana to Hangul. Thanks for @Reality sensei's help! 12/23/2014 TUE [Game Engine] * Remove garbage text in HorkEye engine for 「結城友奈は勇者である」. 去除「結城友奈は勇者である」文本中的垃圾字符。 * Add new CatSystem engine for FrontWing games. The old engine has been broken for a long time. 修正了 CatSystem 引擎提取文本会分裂的问题。 * Add Mink engine for 「しすたー・すきーむ 3」. My current hook is kind of crappy that it contains a large number of garbage threads. If you have a better way to handle Mink games, feel free to let me know! 为 Mink 的游戏添加了提取文本的引擎。 [Yomigana] * Add an option in Preferences/Translation to change position of kanji's yomigana (such as romaji). By default, VNR will render big kanji on the bottom, and small yomigana as ruby on the top. When that option is toggled, VNR will instead show big yomigana on the bottom, but kanji as ruby. This option might be helpful if you are uncomfortable with Kanji but only want to see Romaji. Here's a sample screenshot: http://i859.photobucket.com/albums/ab155/jichi/yomigana_zps1dd31f9f.png 在【使用偏好/翻译】中添加了一个选项来颠倒显示的汉字和振仮名(比如罗马字)的位置。 VNR 默认会在下面用大字显示日文,在上方用小字显示注音。 这个选项开启后,VNR 会改为用大字在下边显示注音,用小字在上边显示注音。 截图在上边。 12/21/2014 SUN [i18n](Korean, @mireado) * Update VNR's UI translation in Korean made by @mireado sensei.

12/20/2014 SAT [Translation Scripts](English, @errzotl) * Update TAH script for LEC from @errzotl sensei. [Shared Dictionary](Korean) * Fixed a bug that might cause translation to become floating numbers. * Append a space after each Korean translation. For example, given two names: 桜小路 = 사쿠라코우지, ルナ = 루나 Then, 「桜小路ルナ」 will be translated to "사쿠라코우지 루나", where a space will be inserted in the middle. [Shared Dictionary] * Name suffices now support regular expressions and macros. But please do not use back references in regex suffices, such as: (abc) => \1 Because this might break the regex names that also use back references. And if you need regex groups, please use "(?:)" instead of "()". For example, please use "(?:さま|サマ)" instead of "(さま|サマ)". I am going to clean up the existing suffices in the Shared Dictionary using regex and macros. Then, I will delete old non-regex suffices after Two Weeks when most users have updated VNR. 后缀词条可以使用正则表达和宏定义了。 不过,请不要使用好像\1、\2、\3 这样的表达式作为后缀。 因为这些表达式可能会破坏正则表达的名字词条。 使用新的表达方式,可以提高处理名字词条的速度和减少内存的使用量,以及便于管理。 我在两周后,等大部分同学都更新过 VNR 了,会删掉共享辞书中以前的非正则的后缀。 * Add a new Yomi type to the Shared Dictionary for specifying furigana of Japanese names. VNR will automatically generate name translation from the furigana into Romaji, Hangul, or Thai. Yomi terms have no effect for Chinese translation. I notice that there are duplicate character names for various languages, esp. English and Korean. Such terms might help share name translations between different languages, and allow me to import character names on Getchu in the future. For example, given a yomi term in either katakana or hiragana: 桜小路 = さくらこうじ VNR will automatically generate the following three names depending on the language to translate to. 桜小路 = 사쿠라코우지 桜小路 = สะขขหละโขะอขจจ

-- for Korean -- for Thai

(ignored) 桜小路 = Sakurakouji

-- for Chinese -- for any other languages including English

I am going to create an UI to let us selectively import Yomi names on Getchu later, which might save us from manually adding character names. 添加了一个新的【读法】词条。 这类词条对中文是没有意义的。VNR 在进行中文翻译时会忽略此类词条。 当前版本的 VNR 中,大家无视这种词条就好了。 我在以后会添加一个从 Getchu 导入人物姓名的界面,这类词条到时候再说吧。 12/17/2014 WED [Subtitle Sharing] * Add an alternative way to import/export/edit offline subtitles. The idea is motivated by the offline subtitles made by @bayooooo sensei for several games. For example, you can find the uploaded subtitles for「プリンセスラバー」here, where the subtitles are converted from the XML format offline subtitles made by @bayooooo sensei for VNR. http://sakuradite.com/game/PRINCESS_LOVER The new subtitles are expressed in YAML format. If you don't know YAML, please check: http://en.wikipedia.org/wiki/YAML YAML is selected as VNR's subtitle format, because it is easy for human to read. Here's an example subtitle file to create new subtitles: # The root item in YAML file is a list of dictionaries. # The first dictionary describes the global options - subLang: en textLang: ja # The following dictionaries are the subtitles. - text: こんにちは! sub: Hello! - text: お花の匂い sub: Smell of flower The web server will compare the uploaded subtitles with the existing ones in the database. If there are no existing subtitles for 「こんにちは!」 and 「お花の匂い」in the online DB, the web server will create two new subtitles for them. Otherwise, if there are existing subtitles, it will create new *revisions* of the subtitles, instead of overwriting the existing ones. After uploading, the subtitles can be redownloaded, which might look like this: - subLang: en textLang: ja - id: 101 text: こんにちは! sub: Hello! - id: 102 text: お花の匂い

sub: Smell of flower For example, if I want to replace "Smell" by "Fragrance", I can create the following file and re-upload it to the server. - subLang: en textLang: ja - id: 102 text: お花の匂い sub: Fragrance of flower Here, the "id: 102" part is optional. The following file also works. But keeping the id will help the server speed up the subtitle comparison process. - subLang: en textLang: ja - text: お花の匂い sub: Fragrance of flower Note that VNR will create a new revision of the subtitle, instead of simply replacing the string. The subtitles are saved in a wiki-like way. In the future, I am going to create UI to allow people to revise/revert to previous revisions. Currently, there is a limit of 200 changes that each upload can made to the existing subtitles. It is intended to prevent malicious/by mistake sabotage to the existing subtitles. After upload, the server will categorize the subtitles into five groups: - total: it contains all subtitles that are processed - create: it contains new subtitles that do not exist in the database - update: it contains subtitles that have modified existing subtitles - ignore: it contains subtitles that are the same as the existing subtitles - error: it contains the subtitles that are rejected, and the reject reasons After uploading the subtitles, VNR will render the them in game in the old subtitles. The new subtitles is implemented in very efficient way, which is faster and takes few memory. For examples, all Chinese subtitles of PRINCESS LOVER takes only 15MB RAM. Currently, I haven't finished implementing the support to submit/edit new subtitles in VNR. The only way to add/edit subtitles is to upload YAML files. I am going to implement a new subtitle editing interface to expose revisions of subtitles later allowing people to revise and revert changes. And I am also going to add support to record game text into YAML files to allow users to create or edit subtitles offline without opening VNR. btw., I also created some scripts to manipulate YAML subtitles, which you can find in Scripts. - Script/sublint.cmd This script can check if there are syntax errors in the YAML subtitle file.

- Script/subx2y.cmd This script can convert existing XML subtitle file to YAML format. It is intended to help @bayooooo sensei convert his external XML subtitles to new YAML format. Please don't use it to convert subtitles already existing in VNR. I plan to change the subtitle sharing mechanism in VNR to a new wiki-like way. Because I don't want to break the existing subtitles in VNR, I will first finish implementing the new sharing mechanism and then port existing subtitles to the new system. There are some major differences comparing the organizations of the new and old subtitles. - Old subtitle sharing mechanism Multiple subtitles are allowed for the same text. One subtitle is saved with one text. Each subtitle is owned by a user. Illustration example: User1 (lang1): text1 = sub1 User2 (lang1): text1 = sub2 User3 (lang2): text2 = sub3 - New subtitle sharing mechanism Only one subtitle is allowed for the same text per language. The editing history of each subtitle is saved. Each change made to a subtitle is owned by a user. Illustration text1 - lang1 - user1: - user2: - lang2 - user3:

example: sub revision 1 sub revision 2 sub revision 1

Here's an example translation in XML format that might help illustrate the organization:

こんにちは!

Hello!

Hello

Good morning!



你好!



It defines two subtitles in two languages (en and zh-CN) for the same text 「こ んにちは!」 for game 425 (game ID of PRINCESS LOVER is 425). For the en subtitle, there are 3 versions. User "jichi" first created an initial translation "Good morning!" on 1418887533. Then, the subtitle was changed to "Hello" on 1418887819. Finally, another user "bayooooo" modified the subtitle to "Hello!" on 1418887533. If you have suggestions or concerns for the new subtitle sharing system, feel free to let me know! 我在修改保存和编辑人工字幕的方式。 当前,只支持上传和下载 YAML 格式的人工字幕。 这个想法是收到 @bayooooo sensei 制作的 VNR 的离线字幕的启发的。 比方说,在下边可以找到导入到 PRINCESS LOVER 中的字幕。 新的字幕采用 YAML 格式保存,转换自 @bayooooo sensei 以前制作的 XML 格式的字幕。 http://sakuradite.com/game/PRINCESS_LOVER 新的字幕保存机制采用类似 Wiki 的方式。 新的字幕保存机制和老的字幕保存机制的最大的区别在于: - 老的机制 每字幕都被一个同学拥有。 同一个文本可能出现多个同学的多个字幕。 - 新的机制 对同一个文本,同一种语言,只允许有一条字幕。 保留每条字幕的全部编辑历史。允许 revise 和 revert 到不同的 revision。 对字幕的每个修改都被一个同学拥有。然而,整条字幕不再被一个同学拥有。 另外,VNR 对新版本字幕的处理更加有效率。字幕的更新采用增量更新。 新版的字幕不会像老版的字幕那样占用很多内存和带宽了。 比方说,载入全部 PRINCESS LOVER 的字幕只需要 15MB 的内存。 不过,VNR 端对于新版字幕的编辑和提交还没有写完。 字幕在下载到 VNR 中后,是只读的。 我在以后会添加新的字幕编辑的界面,好像 Wiki 那样可以显示字幕编辑的历史和允许 revert changes。 另外,我也会添加将游戏的文本提取出来并保存为 YAML 的格式,来便于大家离线修改字幕。 btw, 在 Script 文件夹中有一些字幕格式有关的工具。 - sublint:检查字幕中是否有语法错误 - subx2y:将 xml 格式的字幕转换为 yaml 如果你要生成 yaml 的字幕,也许可以参考这两个脚本的源码。 源码在 Library/Frameworks/Sakura/py/scripts 中可以找到。 如果你有建议或者担心,可以让我知道! 12/13/2014 SAT * Proxy to ErogameScape no longer works. 对批评空间的代理失效了。 看起来,VNR 服务器的 ip 被批评空间屏蔽了。 查看了下批评空间 11 月的流量统计,VNR 代理的访问排在所有访问的第 47 位,也许被站长发现了吧。 12/10/2014 WED

[Machine Translator] * Fix Bing online translator, which stopped working due to the changes of Microsoft website. 修正了 Bing 在线翻译失效的问题。由于微软网站的变更,老版本 VNR 的 Bing 无法使用了。 12/9/2014 TUE I put VNR's recent changes in the following page. If you don't like updates, you can check the changes to determine whether update VNR. http://sakuradite.com/app/vnr/changes 我把 VNR 最近的变更放在上边的地方了。 如果你不喜欢经常更新程式,也许可以查看下上边的变更来决定是否值得更新 VNR。 [JBeijing](Chinese, @djz020815) * 更新了 djz 大先生的 J 北京词库。 [Translation Scripts](English, @errzotl) * Update TAH script for ATLAS/LEC from @errzotl sensei. [Shared Dictionary] * VNR now will do incremental update to the Shared Dictionary by default, which

is

much faster and uses less memory and network bandwidth. VNR 更新共享辞书时改为增量更新,这样可以大幅减少更新所用的时间、内存和带宽。 But if the local Shared Dictionary is corrupted for whatever reason, you can press "Reset" in the update prompt to discard local data and redownload the entire Shared Dictionary (which will be slower). 但是如果由于未知的原因,本地的共享辞书损坏了,那么在更新时可以选择【重置】 来重新下载辞书的数据(这样会慢些)。 12/4/2014 THU [OCR] * As requested, add a keyboard shortcut to start/stop monitoring game window to OCR. The shortcut can be adjusted in Preferences/Shortcuts. 添加了一个快捷键来开启、停止监视要 OCR 的游戏窗口。 [Speech Recognition](Windows XP) * Selecting audio devices for speech recognition is always disabled on Windows XP, as it might hang VNR on startup on certain hardware. 在 Windows XP 上,禁止选择内录的音频设备来语音识别。 否则因为在个别的 Windows XP 的机器上会让 VNR 无法启动。 [Game Engine] * The logic of Majiro2 engine is changed so that it can remove 振仮名 from game text, as these 振仮名 would mess up machine translation. If you are playing Majiro2 games such as 残念な俺達の青春事情 and 流され妻 released this month, you will have to re-adjust Text Settings. Sorry for the inconvenience! 修改了 Majiro2 引擎的逻辑来删掉文本中的振仮名。 因为这些振仮名会扰乱机器翻译。

如果你在玩本月的 Majiro2 的游戏,比如:「残念な俺達の青春事情」和「流され妻」, 那么你将不得不重新调整【文本设定】。 带来不便很抱歉! P.S. 看到有同学将「残念な俺達の青春事情」的文本设定的编码修改为了 BIG5。 所谓的文字编码,就和 Chrome、Safari、Firefox 等浏览器中网页的文字编码的含义是一样的。 但是 BIG5 和 GBK 都是中文的编码。 除非是汉化的游戏,否则绝对不要选择这两个编码,不然提取的文本会变成乱码的。 在【文本设定】每个提取文本的右边,都用黑色的字写着文本的编码的。 除非是汉化的游戏,否则【文本设定】的编码一定要与选择的【对话】文本右边的编码相同才可以。 12/2/2014 TUE [Game Engine] * Add 5pb engine for「CROSS+CHANNEL Final Complete」. It might also work for other 5pb PSP/PS3 games ported to PC. 为「CROSS+CHANNEL Final Complete」添加了提取文本的引起。 这个引擎也许还会支持其他的移植到 PC 版的 5pb PSP/PS3 的游戏。 * 屏蔽添加 CalendarMain.exe 为游戏。 11/28/2014 FRI [Game Engine] * Add text engine for new Majiro game「流され妻、綾乃の"ネトラレ"報告」. The old Majiro engine cannot extract text any more and will crash the game on Windows XP. 为「流され妻、綾乃の"ネトラレ"報告」添加了新的 Majiro 引擎。 感谢@天音老师 sama 的报告! [Preferences] * As requested, add an option to select the location to save game screenshot in Preferences/Recordings. 在【使用偏好/录制】中可以选择保存游戏截图的位置。 [Shared Dictionary] * As requested, add a combobox to select the column to search the Shared Dictionary. 在共享辞书中添加了一个可以选择搜索列的选项。 11/24/2014 MON [Game Engine] * Fixed a bug that might crash KiriKiriZ games such as「VenusBlood HYPNO」. 修正了一个可能会让「VenusBlood HYPNO」崩溃的 bug。 11/22/2014 SAT [Preferences] * Add an option to disable auto-hiding the left dock. This might be useful if you are running VNR on a tablet. 在左边 Dock 的右键菜单中可以禁止自动隐藏 Dock。 如果你在平板电脑上使用 VNR,这样也许会方便些。 感谢@青穹牧云 sama 的建议。 11/20/2014 THU * Automatic speech recognition (ASR) is temporarily disabled. Going to re-enable it after adding offline ASR support. 因为性能太差,暂时禁用了自动语音识别(ASR)。 * Allow uploading images in the messages.

在留言板可以上传图片。 11/16/2014 SUN * Update LocaleSwitch to the latest version 1.0.1.1. Thanks for @867258173 sama's report! * In Website Reader, make sure Japan-only pages will not be blocked by DMM. 确保 Website Reader 的网页不会被 DMM 屏蔽。 * Add alternative KAGParserEx hook engine for KiriKiriZ games. 11/15/2014 SAT * Add very primitive support to translate online galgame 「対魔忍アサギ~決戦アリー ナ~」 using Website Reader. A screenshot is as follows: http://i.imgur.com/kkVo36l.png The subtitles can be turned on by clicking the 遊 button on the toolbar. Currently, only machine translation is supported. Any other features in VNR such as TTS, MeCab, and Shared Dictionary have not been implemented. And 対魔忍アサギ is the only supported game. I am planning to allow users to specify the location of the text to translate using simple jQuery selectors in the future. If you would like to have other online games supported, feel free to let me know! Note:VNR is using Apple's WebKit to access Internet, which requires QuickTime to play multimedia. The online game might not have sound if Apple's QuickTime is not installed. 添加了对翻译在线日文游戏的非常简陋的支持。 下边是「対魔忍アサギ」的截图。 http://i.imgur.com/kkVo36l.png 这个机能可以在 Website Reader 点击工具栏中的【遊】按钮来开启。 当前仅支持机器翻译。TTS、分词、共享辞书什么的全都不支持。 而且 VNR 只支持从「対魔忍アサギ」提取 scenario 的文本,并不能翻译全部文本。 我在以后会添加界面来让大家可以用非常简单的 jQuery 的语法来指定要翻译的文字的位置。 如果你希望添加其他在线游戏的支持,也可以让我知道! 注:VNR 内部使用的是苹果的 WebKit,需要 QuickTime 来播放在线媒体。 如果没有安装 QuickTime 的话,在线的游戏可能会没有声音。 QuickTime 可以在苹果的官网免费下载到的,安装完成后需要 71MB。 11/14/2014 FRI * Add text hook engine for 結城友奈は勇者である from みなとそふと. 为「結城友奈は勇者である」添加了提取文本的引擎。 11/5/2014 WED * Update TAH script for LEC from @errzotl sensei. * 更新了 djz 大先生的 J 北京词库。

by djz,针对 10 月的新作有很多修正。如果你希望添加新词到 J 北京,可以到下边向先生反馈: http://sakuradite.com/topic/220 * Fixed a bug that VNR might crash when EDICT is enabled while clicking Japanese words to lookup very fast. 11/4/2014 TUE * Enable context menu for full screen Adobe Flash 10 games. Adobe Flash Player 10 的游戏在全屏后仍然可以使用右键菜单。 11/2/2014 SUN * Support using Google Speech Recognition (SR) online service to extract text from game audio. There is a Speech Recognition Tester on the SpringBoard. You can also enable periodical recognition on the left dock after a game is launched. There is also a keyboard shortcut (Alt+R) that can trigger the SR. By default, the sound is recorded through Microphone, where the quality is low. If you want to record audio in games, it is better to specify which device to use in Preferences/SR. However, on Wine or Virtual Machines (such as Parallels Desktop) where the emulated sound card does not support recording, only Microphone can be used to record speech. The current support is very primitive. - It requires high-speed Internet access to Google. - There are no OCR-like customized filters to eliminate BGM behind speech. The accuracy of the recognition can not adjusted. - VNR's algorithm is not clever enough to detect when a sentence has finished. Currently, an audio is divided into sentences by "silence". But if there is no silence, VNR will keep recording and never do recognition. You might usually have to manually trigger the recognition (Alt+R) before/after a sentence. 添加了通过 Google 语音识别(Speech recognition, or SR)来提取文本的功能。 在 SpringBoard 上有一个测试的 app。 在游戏启动后,在左边的 Dock 里也可以打开自动语音识别。 另外,在【使用偏好/快捷键】中可以指定快捷键(默认是 Alt+R)。 默认时,VNR 会录制麦克风的声音(所谓的外录,质量会很差)。 如果要对游戏使用语音识别,那么最好在使用偏好里选择声卡支持的录制设备(内录)。 但是,如果在 Wine 上或者虚拟机中(比如 Parallels Desktop),声卡不支持录制,那么 只好通过麦克风来录制声音。 当前的支持还很原始的。 - 语音识别需要和 Google 之间的高速的网络连接。 如果你暂时居住在大陆地区,那么需要在【使用偏好/Internet】打开中国大陆选项。 但是即使打开,速度还是会很慢。 - 现在还没有 OCR 的过滤器那样可以手工过滤掉声音背后的 BGM 的功能。 - VNR 不能够很聪明的检测到一句话何时完成。 VNR 当前只是简单地检查声音的强度是否很低,来分割录制的声音。 但是,当录制的声音一直都没有停止(比如有背景音乐),那么 VNR 会一直录制而不开始识别。

当前暂时只好手动的点击【识别】(或者 Alt+R)来告诉 VNR 一句话何时开始何时结束。 11/1/2014 SAT * Fix a bug that the mouse/keyboard shortcuts might stop working after a while. 修正了快捷键有时会失效的问题。 10/31/2014 FRI Since so many users were using VNR simultaneously this weekend, VNR's server was overloaded. You might experience failure to update VNR's Shared Dictionary and game database around JST 10:00pm this Friday. VNR's services are written in Python and Java. I temporarily shut down the Java server so that the Python server could serve the large amount of queries to the game database the Shared Dictionary normally. But you are no longer to post or register new accounts online like before. I am going to fix scalability issue of the current service implementation when I have time. Sorry for the inconvenience! 因为这个周末使用 VNR 的同学太多了,造成服务器超负荷了。 VNR 在周五晚上可能出现了无法登陆,无法更新辞书等问题。 为了节省服务器的资源,使得 VNR 可以正常更新辞书和游戏数据库,我暂时关掉了 VNR 的网站的 Web UI。 带来不便,很抱歉! * Add Adobe Flash Player 10 game engine for 輪舞曲 Duo from TinkerBell. 为 TinkerBell 的「輪舞曲 Duo」添加了提取文本的引擎。 10/28/2014 TUE * Update TAH script for ATLAS/LEC. The scripts are from @errzotl sensei, and you can say thanks to him/her at [email protected]. 10/25/2014 SAT * Add alternative SiglusEngine that can extract character name thread. 为 SiglusEngine 添加了可以提取人物姓名的 thread。 * VNR no long hooks to GDI functions when the game engine is known to be sufficient to extract all texts. This might save some memory and reduce the possible game slowdown caused by text extraction. 10/24/2014 FRI * Remove garbage texts for KAGParser and CIRCUS engines so that Share Dictionary rules to repair text are no longer needed. Additionally, ITH is extended to allow removing garbage text per game engine. If you find certain game engine always has similar kind of garbage, feel free to let me know! 自动移除 KAGParser 和 CIRCUS 引擎文本中的垃圾。 * Add new KiriKiriZ game engine that can extract character name. * 禁止把 NK-Frontend.exe 当做游戏添加到 VNR。 10/21/2014 TUE

* Add a new KAGParser game engine for 「VenusBlood HYPNO」, which uses KiriKiriZ. The existing KiriKiri1/KiriKiri2 seem to be broken for KiriKiriZ games. However, the new engine currently cannot extract character name, and the extracted text contains "[r]" garbage which requires Shared Dictionary rules to clean-up. As you known, KiriKiri is a very popular game engine. If you find a better way to handle KiriKiriZ games, feel free to let me know! btw., the context menu of VNR still works when KiriKiriZ games enter full screen. 为 VenusBlood HYPNO 添加了新的 KiriKiriZ 引擎。 感谢 jin70908469 sama 的报告! 另外,在 KiriKiriZ 的游戏全屏后,VNR 的右键菜单仍然可以使用。 * 修正了正体中文时的【我】会被替换为【緸】的问题。 带来不便,很抱歉! 10/20/2014 MON * Fix a bug in 東北ずん子 TTS that sometimes only half of the sentence was read. 修正了東北ずん子有时只读出半句日文的 bug。 10/19/2014 SUN * Use OpenCC instead of Google to convert different Chinese variants. Add an option in Preferences/Translation/Chinese for selecting default Kanji variants among Taiwan Standard Chinese (default), Hong Kong traditional Chinese, and Japanese Kanji. VNR's default Chinese UI is changed to use Taiwan Standard Chinese. 改为使用 OpenCC 而不再用 Google 来做中文变体的转换。 在【使用偏好/翻译/中文】中添加了选择中文变体的选项,可以在 中华民国正体字(默认),香港繁体字,和日本汉字之间选择。 另外,VNR 默认的中文界面改为使用 OpenCC 的正体中文。 马英九总统有提倡简体中文的使用者「识正书简」。希望这样可以帮助大家回归正体中文。 * vnrcli.dll and vnreng.dll are merged into a single vnrhook.dll If you have anti-virus soft installed, you might have to add that dll onto the whitelist. 用于提取文本的 vnrcli.dll 和 vnreng.dll 合并为了一个 vnrhook.dll。 如果你在使用杀毒软体,也许需要将那个 dll 加入白名单中。 * For certain game engines such as SiglusEngine, VNR no longer disables context menu when game enters full screen. 对于某些游戏引擎比方说 SiglusEngine,VNR 在游戏全屏后不再禁用右键菜单。 10/18/2014 SAT * Add new SiglusEngine for リア充クラスメイト孕ませ催眠. 为「リア充クラスメイト孕ませ催眠」添加了新的游戏引擎。 * Bugfix for the correctness of the generated romaji and hangul furigana. 修正了罗马字和韩文的振仮名的部分错误。

10/17/2014 FRI * Add variable syntax to VNR's new machine translation system. It can be enabled in Preferences/Shared Dictionary. Current, it is still at testing stage. Please do NOT enable it to translate real-world games except for testing purpose!! Regarding the syntax, for example, $x can be used to match any single node in the syntax tree. And @x can be used to match a list of any adjacent nodes in the syntax tree. Here's some example illustrating how it works: Given a syntax tree: ((((お前 の) (物 は)) (俺 の)) 物) The following replacement will translate の at the end of an adjective to "的" in Chinese. - ($x の) => ($x 的) -- $x = お前 - (($x の) $y) => (($x 的) $y) -- $x = お前, $y = 物は Here's an example for list variables: - ((@adj) 物) => ((@adj) 东西) -- @adj = ((お前 の) (物 は)) and (俺 の), totally two nodes 向 VNR 的翻译系统添加了变量的语法。 在使用偏好的共享辞书中可以开启这个选项。 现在,这个技能还在测试中。除非测试目的,请不要打开这个选项!! 比方说,给定: ((((お前 の) (物 は)) (俺 の)) 物) 下边是 scalar 形变量的例子,可以把形容词后边的【の】翻译为【的】: - ($x の) => ($x 的) -- $x = お前 - (($x の) $y) => (($x 的) $y) -- $x = お前, $y = 物は 下边是 list 型变量的例子: - ((@adj) 物) => ((@adj) 东西) -- @adj 可以捕获【((お前 の) (物 は))】和【(俺 の)】一共 两个 node 比方说:こう言う時どんな顔すればいいのか分からないの。 百度的翻译:这么说的时候,什么样的表情比较好懂的。 给定语法树:(((こう 言う) 時) どんな) (顔 すれ ば いい の か)) (分から ない の 。)) 当前可以这样定义翻译规则的: 顔 => 脸(表情) ($vi すれ ば いい の か) => ($vi 才好呢) ($adv どんな) => ($adv 什么样的) (分から ない の 。) => (不 知道 的 。) ((こう 言う) 時) => ((这样 说的) 时候) 这些规则,会按照它们根节点孩子的数目排序。 根节点的孩子最多的规则(也就是第二条)会先执行,最少的(也就是第一条)会最后执行。 使用这些规则后,最终的翻译的结果是: 这样说的时候什么样的脸(表情)才好呢不知道的。 10/13/2014 MON * Improve the support for 東北ずん子. VNR can directly play the TTS without launching zunko's program. I dissembled zunko into C# code and reimplemented the logic using C++.

.NET and clipboard are not needed, and there is no blacklist of H-words. But currently, the pitch/speed/range of the voice cannot be adjusted like in zunko. 改善了对「東北ずん子」的支持。VNR 不需要启动她,就可以直接调用 TTS 了。 这个功能不需要.NET,不需要剪贴板,也没有ずん子的 H 黑名单的问题。 不过,当前还不支持调整ずん子的音调、语速和重音。 * VNR's UI is flatter. 改为扁平界面了。 10/11/2014 SAT * Add rUGP2 engine for new マブラヴ series games from アージュ. 为アージュ社的新游戏添加了 rUGP2 的引擎。 10/9/2014 THU * Add support for all VOICEROID+ and VoiceText online TTS. You can select your favorite TTS in Preferences/Text-to-speech or per-game Voice Settings. But the online TTS is relatively slow comparing to the offline version. 添加了对全部 VOICEROID+和 VoiceText 的在线 TTS 的支持。 在【使用偏好】或者【语音设定】中可以选择这些 TTS。 在线的版本比离线的版本要慢。 * 修正了金山快译使用一段时间后可能会失效的问题。 10/8/2014 WED * Add a toggle in Preferences/Translation to convert Mandarin to Yue Chinese. 添加了使用百度将国语字幕转换为粤语的选项。在【使用偏好/翻译】中可以开启。 * Display game sizes on the Game Board. You can also search "GB" for large games >= 1GB, or "MB" for small game < 1GB. Game Board 会显示游戏的大小。 你也可以搜索“GB”来得到大于 1GB 的游戏,或者“MB”来得到小于 1GB 的游戏。 * The texts modified by the Shared Dictionary are underlined by default now. This could help remove the redundant spaces for Chinese/Korean escape terms. If you don't like the underline, it can be disabled in Preferences/Shared Dictionary. VNR 现在默认会下划线被共享辞书修改的文本。 这样可以帮助删掉被替换文本两边的多余的空格。 如果你不希望看到下划线,可以在【使用偏好/共享辞书】中禁用下划线。 10/7/2014 TUE * Fixed a severe regression that might crash VNR. I am very sorry for the inconvenience! m(_ _)m 修正了一个可能会让 VNR 崩溃的问题。 给大家带来不便,非常抱歉!m(_ _)m * Add Baidu TTS. The voice is the same as VW Misaki from Korea, except that the bitrate is lower than the offline version. 添加了对百度 TTS 的支持。 百度的日文 TTS 使用的是韩国的 VoiceText Misaki。 和离线版本比起来,百度 TTS 的 bitrate 更低,音质要差些。除此之外,没有区别。 * Add Bing TTS.

添加了对 Bing TTS 的支持。 * The volume and speed for online TTS can be adjusted in Preferences. 在使用偏好中可以调整在线 TTS 的速度和音量。 * The pitch for SAPI TTS can be adjusted in Preferences. Higher pitch will make the voice to sound younger. 在使用偏好中可以调整 SAPI TTS 的音调。 音调变大时,声音听起来会更年轻些。 * You can toggle "Speak -> Original" or "Speak -> Translation" on the left dock to select whether to read the original game texts or the subtitles. 运行游戏后,点击左边的【朗读】=> 【翻译】,VNR 会使用在线或离线 TTS 读出中文字幕。 * Online TTS support for VNR's website reader has not been implemented yet. VNR 内置的浏览器暂时不支持在线的 TTS。 10/6/2014 MON * The online TTS implementation is switched from Apple QuickTime to native Windows Media Player (WMP). If you have a genuine Windows, WMP has already been installed. So, nothing is required to use the online TTS. The performance of the online TTS is improved. You can find the cached TTS audios in MP3 format in Caches/tmp/reader/tts. The new online TTS implementation is surprisingly very fast. Even as fast as offline TTS. And it works both with and without administrator privileges. I am going to add more online TTS and support for adjusting TTS volume and speed soon. 在线 TTS 的音频改为使用 Windows Media Player(WMP)来播放,而不再使用 QuickTime。 如果你在使用的是正版的 Windows,那么 WMP 默认已经安装了的。 另外改善了在线 TTS 的 performance。 在线 TTS 的音频会以 MP3 的格式保存在 Caches/tmp/reader/tts。 新的在线 TTS 的实现非常非常的快,甚至和离线的 TTS 一样快。 并且在线 TTS 在管理员和非管理员权限下都可以正常使用的。 我在之后会添加更多的在线 TTS,和添加调整 TTS 语调和音量的设定。 10/4/2014 SAT * Fixed a cache inconsistency bug for the Shared Dictionary. * Add a new kind of syntax-based translation terms to the Shared Dictionary. It might help improve machine translation quality. Comparing to the old terms which work at Japanese-character level, the new terms can catch lexical or syntactical patterns. You can enable it in Preferences/Shared Dictionary. The new translation system requires MeCab, CaboCha, and UniDic to work. All of them are open-sourced libraries and can be downloaded for free in Preferences/Downloads. You can ignore the following text if you don't know any Japanese or have never used the Shared Dictionary before. There is a also a Japanese Syntax Tester for debugging the terms. But currently, the new syntax terms cannot be debugged in the Machine

Translation Tester (I haven't got time to implemented the support in this tester yet). Currently, guest account is not allowed to create syntax terms. As none of the existing machine translators is open-sourced, we cannot have fine-control over the translation process, and the machine translation quality is always bound by the 3rd-party translator being used. Though there are Shared Dictionary and TAH scripts, but all of the existing rules are context-insensitive lexical-level text replacement, and their capabilities are quite limited. My ultimate goal is to a design new rule-based machine translator in VNR based only on the community-contributed translation rules in the Shared Dictionary. The other machine translators will become optional, and only serve as alternatives or dictionaries for looking up seldom used words. The current syntax-based translation system is still very primitive, though. I guess it might take at least half a year to get every thing done and have enough translation rules for daily Japanese sentences. If you have questions or suggestions, feel free to post them to the following topic. http://sakuradite.com/topic/471 You can play with the new syntax terms, but please don't extensively add tons of rules at the moment. I am going to add more grammar to describe the syntax soon. Currently, my focus is on Japanese-Chinese translation. It might also work well for Japanese-Korean translation. But my current focus is NOT on Japanese-English translation. The current translation system does not address the challenges in English translation, such as how to deal with plurals/articles, which do not exist in Chinese/Japanese/Korean. I might come back to think about English and other languages after the Chinese/Korean translation support is mostly done. In the following text, I am going to discuss the new system and the future plan in my mind. I. Motivation Let's start with an example: 白い髪の娘は白ちゃんです。 If I want to translate, say, 【白】=>【Haku】using a Translation term, it will break 【白い】. This problem can be solved in the new translation system.

In the new system, VNR will first construct a Syntax Parse Tree for the sentence, as follows: (((白い (髪 の)) (娘 は)) (白 ちゃん です 。)) There are 9 leaves in total: 白い, 髪, の, 娘, は, 白, ちゃん, です, and 。. These nodes are separated by either " " (space) or "()" (parentheses). The content in-out of the parentheses are parent-child. The content next to each other are sibling nodes. For instance: (白い (髪 の)) is the parent of(髪 の), and the grand-parent of 【髪】. And 【髪】 and 【の】are siblings. Additionally, I also have the types of each node, such as if the node is a noun, name, verb, etc. The current VNR does not support matching the types of the nodes, though. Going to add this support soon. After the syntax parse tree is constructed, VNR will use the syntax terms from the community to translate the tree. The pattern of the term will be used to match any subtree in the Syntax Tree. If matched, the node will be replaced by the subtree created from the replacement text. You can debug this process in the "Japanese Syntax Tester" widget. For example, 【白】 will match 白 which used independently, but will not match 白 い. And【髪 の】won't match【白髪 の】, because,【白髪】will be a single node. Additionally, nested parentheses can be used to express trees whose height > 1, such as 【(白い (髪 の))】. Besides, just one to mention that a list with/without parentheses are different. 【白髪 の】and【(白髪 の)】 are different. For example, giving the following two syntax trees: (((((こう 言う) 時) どんな) (顔 すれ ば いい の か)) (分から ない の)) (((((こう 言う) 時) どんな) (顔 すれ ば いい の か)) (分から ない の です か)) 【分から ない の】(without parentheses) will match the nodes in both of the sentences. But 【(分から ない の)】(with parentheses) will only match the first sentence. II. Translation workflow If you know Compiler, the translation process is quite similar to compiling one language to another: back-end

front-end

mid-end

Japanese sentence => token stream => Japanese parse tree => Chinese parse tree => token stream => Chinese sentence (lexical tokenizer) (syntax parser) (translator) (unparser) (join)

Below is the the actual translation workflow in VNR: back-end

front-end

mid-end

Japanese sentence => word stream => Japanese parse tree => Chinese parse tree => Chinese sentence (MeCab+CaboCha+UniDic) (VNR syntax parser) (VNR translator) (VNR unparser) Current, our shared syntax translation rules are applied at mid-end (VNR translator). Later, I am going to add syntax support for Input/Output terms as well, which will be applied to front-end parser and back-end unparser respectively. After the translation, if VNR has found there are untranslated nodes, VNR will use the existing machine translator you have selected, such as Google, to translate the left untranslated subtrees. The order to apply the syntax rules and the other existing types of the terms are as follows: Apply input term => Apply general translation term => (Apply syntax translation terms) => Apply machine translation => Apply output terms It is done like this which is easier to implement. But it does not make sense. I am going to change the order to the following one soon. Apply input term => (Apply syntax translation terms) => Apply general translation term => Apply machine translation => Apply output terms III. Future work The current grammar for the pattern still cannot describe all Japanese syntax. I am planning to add the following grammars one by one. Capture variables. Below is a Japanese-Chinese example (I don't know how to express this in a single English word): ($x の) => ($x 的) -- $x represents a single node ($x $y の) => ($x $y 的) -- $x and $y represent two different nodes (@x の) => (@x 的) -- @x represents a list of sibling nodes, similar to @array in Perl You might know that Japanese is an Agglutinative language. The above rules can be used to express the trailing の in Japanese adjectives. Types of the words. Japanese-Chinese Example: ($x:noun:name の) => ($x 的) -- here, :noun:name means $x must be either a noun or a name ($x:verb で) => (通过 $x:verb) -- :verb means $x must be a verb. Express optional nodes. Example: ($x? の) => ($x 的) -- "?" means $x can be optional (分から ない の? です? 。?) -- の? and です? can be optional Integrate regular expressions. Example: (/[わ分]から/ ない の) -- the text within // is a regular expression (/[わ分]から/:v ない の) -- the ":v" means the regular expression must be a verb

($x=/[わ分]から/:v ない の) -- capture the regular expression using $x Use quotes to escape special characters $x="English word with space" -- the quotes here is used to escape " " (space) Currently, we cannot directly modify the generated parse tree from CaboCha. I am going to add a new MeCab typed terms that will be compiled into MeCab user-defined dictionary. The term will have a weight parameter used to express the expected frequency of the word. This might be a way to combine the syntax-based MT with the statistical MT. If you have other suggestions, for instance, if a Japanese syntax cannot be expressed under the current system, feel free to suggest to me. 添加了一个新的基于语法的日文翻译体系开改进日文翻译的质量。 可以在【使用偏好/共享辞书】中开启。 打开这个选项会需要在【使用偏好/下载】中安装 MeCab、CaboCha 和 UniDic。 你可以忽略下边如果你从来没有使用过共享辞书。 我在共享辞书中添加了新的【语法】的选项。 当前,只有翻译词条可以开启这个选项。其他类型的词条我还没有实现。 开启了【语法】的词条和以往的词条截然不同。 以往的词条都不过是简单的文本替换。而语法词条可以识别和描述日文的文法。 新添加的【语法】词条可以使用新添加的【测试日文文法】的 widget 来 debug。 【测试机器翻译】的 widget 暂时不能够 debug 语法词条。 Guest 用户暂时不可以提交语法词条。 我的最终的目标,是希望可以最终实现 VNR 自己的基于 community 的日文翻译系统, 而不再依赖第三方的 J 北京之类的翻译器。 不过当前的实现还是原始。另外,有很多我想做的东西还没有来的及实现。 如果你有需要或者建议,比方说,你想要实现的逻辑在当前的体系中不支持, 那么可以下边的 topic 里留言。 http://sakuradite.com/topic/471 You can play with the new syntax terms, 但是请暂时不要大量添加这个类型的词条。 我在以后马上会添加更多的语法的。 I. Motivation 还是举个例子吧。 白い髪の娘は白ちゃんです。 彼方说,如果简单的定义【白】=>【白】的人物词条, 那么会破坏掉【白い】。 这个问题在新的翻译模式下就可以解决了的。 在新的翻译模式下,VNR 会先利用 UniDic 创建一棵 Syntax Parse Tree,如下: (((白い (髪 の)) (娘 は)) (白 ちゃん です 。)) 上边的树有 9 个 leaves,分别是:白い、髪、の、娘、は、白、ちゃん、です、"。"

这些节点是靠空格或者括号分割的。 然后呢,括号内外表示父子关系,相邻的括号或者节点表示 sibling 的关系。 比方说:【(白い (髪 の))】是【(髪 の)】的爸爸,是【髪】的爷爷。 而【髪】和【の】互为兄弟。 除此之外,我可以知道所有节点的词性,比如名词、动词、名字,拟声词等。 不过当前版本的 VNR 的匹配文本的语法还不支持描述词性。 在建好树后,VNR 用会大家提交的词条的【匹配的文本】来匹配这课语法树中的 subtree。 当匹配时,VNR 会用【替换的文本】来创建一个新的 subtree,并替换掉原来的。 你可以在【测试日文语法】的 widget 中来尝试。 比方说:【白】只会匹配到【白】单独使用的情况,而不会匹配到【白い】。 而【髪 の】不会匹配到【白髪 の】,因为【白髪】是一个完整的词。 除此之外,比方说,还可以用【(白い (髪 の))】来匹配 parse tree 内部中间的一个 高度=2 的 subtree。 另外要说明的是,【白髪 の】和【(白髪 の)】这里加不加括号是不同的。 比方说,给定下边的两棵 syntax tree: (((((こう 言う) 時) どんな) (顔 すれ ば いい の か)) (分から ない の)) (((((こう 言う) 時) どんな) (顔 すれ ば いい の か)) (分から ない の です か)) 那么【分から ない の】(没有括号)这两句话都可以匹配到。 而【(分から ない の)】(有括号)只会匹配到第一句,而匹配不到第二句。 II. 翻译的 workflow 如果你有学过编译原理,那么不妨把翻译的过程想象成 compiler 编译语言的过程。 front-end mid-end back-end Japanese sentence => token stream => Japanese parse tree => Chinese parse tree => stream => Chinese sentence (lexical tokenizer) (syntax parser) (translator) (unparser) (join) VNR 实际的翻译过程如下: front-end mid-end back-end Japanese sentence => word stream => Japanese parse tree => Chinese parse tree => Chinese sentence (MeCab+CaboCha+UniDic) (VNR syntax parser) (VNR translator) (VNR unparser) 当前,大家定义的规则是作用在 mid-end 的 VNR translator 的步骤上的。 我在之后,会为 Input、Ouput 的词条也添加语法的选项。 添加后,它们会分别作用在 front-end 和 back-end 的 parser 和 unparser 上。 当翻译后,VNR 发现有部分节点没有被大家的词条翻译到,那么 VNR 会改用用户选择的其他翻译器, 比方说百度或者金山快译,来翻译剩余的节点。 当前语法词条和其他非语法词条作用的顺序如下: 应用输入词条 => 应用一般翻译词条 => (应用语法翻译词条) => 进行机器翻译 => 应用输出词条

这样子做主要是因为好实现,但是并不 make sense。我在以后会把顺序改成下边这样: 应用输入词条 => (应用语法翻译词条) => 应用一般翻译词条 => 进行机器翻译 => 应用输出词条 III. Future work 当前的匹配文本的语法还远远不能表达很多很多的日文文法。 我在之后会逐渐添加下边的语法,希望最终可以利用这个翻译体系来描述绝大部分日文的文法。 下边是一些例子。 capture 变量,比如: ($x の) => ($x 的) -- 这里$x 代表单个节点。 ($x $y の) => ($x $y 的) -- 这里$x 和$y 代表两个节点。 (@x の) => (@x 的) -- 这里@x 代表 a list of 节点,参考 Perl 中的 array 你可能知道,日语是粘滞语言(Agglutinative language)。 上边的逻辑表示仅仅用于修饰语后边的【的】(仅仅出现在形容词词组的最右边)。 表达词性,比如: ($x:noun:name の) => ($x 的) -- 这里:noun:name 表示$x 必需是名词或者名字。 ($x:verb で) => (通过 $x:verb) -- 这里:verb 表示$x 必需是动名词。 表达可选,比如: ($x? の) => ($x 的) -- 这里?代表单$x 可以为空 (分から ない の? です? 。?) -- 这里的【の?】【です?】这些节点可以是空。 结合正则表达式,比如: (/[わ分]から/ ない の) -- 这里的//表示中间的是正则表达式,参考 Perl 和 JavaScript 的语 法 (/[わ分]から/:v ない の) -- 这里的//表示中间的是正则表达式,并且是个动词 ($x=/[わ分]から/:v ない の) -- 这里将正则表达式用$x 的变量来 capture 用引号来转义特殊的字符,比如: $x="English word with space" -- 这里用引号来避免 VNR 把空格当成节点的分隔符。 另外,现在还不能直接修改搭建的 parse tree。我打算在以后再添加一个 MeCab 的类型的词条,用来编 译成 MeCab 的词典来控制 parse tree 的生成。 MeCab 的词条会需要一个权重(即单词频度)的参数,这样就可以把 syntax-based MT 和 statistical MT 结合在一起了。 如果你有其他的建议,或者觉得这样定义语法并不方便,或者还是有很多逻辑无法表达,可以让我知道的。 10/2/2014 THU * 更新了 djz 大先生的 J 北京辞书到 141001 的版本。 你可以通过下边的 qq 向 djz 大先生表示感谢,或者询问关于 J 北京问题。 [email protected] * Reduce VNR's memory usage by 70MB by adding __slots__ to Python classes. 减少了 VNR 的内存使用量。 9/30/2014 TUE * The types of the terms in the Shared Dictionary are slightly changed. You can ignore the following text if you have never used it before. + For Chinese and Korean Nothing has been changed except the names of the term types, as follows: - Translation: the same as "Escape" -- the translation will be escaped before/after the machine translation. - Input: the same as "Japanese" -- used to repair the Japanese text

before applying machine translation - Output: the same as "Translation" text after applying machine translation - Name: the same as "Chara" - Suffix: the same as "Title" such as 「ちゃん」 - Game: the same as "Original text" from the game - TTS: not changed applying TTS - OCR: not changed applying OCR - Macro: not changed

-- used to repair the Chinese/Korean -- Japanese names, such as 「釘宮」 -- the titles after Japanese names, -- used to repair the text extracted -- used to repair the text before -- used to repair the text after -- reusable regular expression patterns

+ For any other languages including English 1. The "escape" type is removed 2. A new "translation" type is added, which is the same as the old "Japanese" terms 3. The names of the terms are changed, as follows: - Translation: the same as "Japanese" -- the same as the old "Japanese" type, different from Chinese/Korean -

Input: the same as "Japanese" Output: the same as "Translation" Name: the same as "Chara" Suffix: the same as "Title" Game: the same as "Original text" TTS: not changed OCR: not changed Macro: not changed

---------

(the (the (the (the (the (the (the (the

same same same same same same same same

as as as as as as as as

Chinese/Korean) Chinese/Korean) Chinese/Korean) Chinese/Korean) Chinese/Korean) Chinese/Korean) Chinese/Korean) Chinese/Korean)

The "Translation" terms should be used to translate Japanese to English or any other Latin languages. The "Input" terms should be used to translate Japanese to Japanese. Currently, the "Translation" and the "Input" terms are handled the same way for Latin languages, both of which are equivalent to the old "Japanese" terms. But they will be handled differently soon in the future version of VNR. If you would like to add new rules to the Shared Dictionary, I hope if you could distinguish "Translation" and "Input" types. For example: - to transform "あたし" to "I", "Translation" should be used - to transform "あたし" to "私", "Input" should be used Let's wait for two weeks until most people have updated to this version of VNR.

And then I am going to revise the Shared Dictionary to distinguish Translation from Input type for old terms in Latin languages. 主要是变更了处理中文和韩文以外语言的共享辞书词条的方法。 对中文,只是词条类型的名字改变了,如下。除此之外,词条的功能上没有被任何变化。 - 翻译: 即以前的【转义】词条 -- 通过转义来将日文翻译为中文 - 输入: 即以前的【日文】词条 -- 在翻译前,修正输入的日文文字 - 输出: 即以前的【翻译】词条 -- 在翻译后,修正输出的中文文字

-

名字: 即以前的【人物】词条 后缀: 即以前的【称谓】词条 游戏: 即以前的【原文】词条 语音合成: 和以前一样 光学识别: 和以前一样 宏: 和以前一样

-------

日本人的名字,比如「釘宮」 跟在名字后边的称谓,比如「ちゃん」 在翻译前首先修正从游戏中提取出的文字 在 TTS 前修正输入的文字 在 OCR 后修正输出的文字 可以重用的正则表达式

9/28/2014 SUN * Fixed a severe bug that OCR might stop working when the inserting space option is enabled. Sorry for the issue! 修正了插入空格打开时,OCR 无法使用的问题。 带来不便很抱歉! 9/27/2014 SAT * Modify the ScenarioPlayer engine to support new すたじお緑茶 games. 修正了本月「南十字星恋歌」的游戏引擎。 * Fix the ApRicoT engine to support イセカイ・ラヴァーズ this month. 修正了本月「イセカイ・ラヴァーズ」的游戏引擎。 9/26/2014 FRI * The text processing using the Shared Dictionary is reimplemented using C++ with Boost.Regex. It is more powerful, much faster (time < 0.01 second) and using less memory (about 20MB for 20k rules). If you have never used the Shared Dictionary before, you can ignore the following text. The major changes about the Shared Dictionary are as follows: + VNR no longer processes the Shared Dictionary on the startup any more. + VNR won't process the Shared Dictionary until the first time you use it, such as

when a sentence is translated, or when TTS is triggered. The bad thing is, for example, that the first machine translated subtitle will not use the Shared Dictionary, and the translation quality might be bad. But after that, the follow-up translations will be processed by the Shared Dictionary. + After the first time the Shared Dictionary is used, you can find the enabled text replacement rules in the following directory: Caches/tmp/reader/dict VNR will rebuild the cache there whenever the Shared Dictionary is modified, or the current game is changed, or your language is changed. You can also open that directory by pressing the "Browse" tool button in the Shared Dictionary. + The regex library used in the Shared Dictionary is changed from Python.re to Boost.Regex. Boost's implementation is a superset of Python's and is more powerful, which supports recursive syntax. More details about Boost.Regex's syntax could be found in

the following pages. http://www.boost.org/doc/libs/1_56_0/libs/regex/doc/html/boost_regex/syntax.html http://www.boost.org/doc/libs/1_56_0/libs/regex/doc/html/boost_regex/syntax/perl_sy ntax.html I haven't explored all available features in boost.regex yet. But here are some usage examples of the recursive syntax "(?+-N", which might be interesting: - Multiple replacement. For example: 薫(?:(ちゃん)|(さん)|(くん)) => Kaoru-(?1chan)(?2san)(?3kun) The above rule could translate "薫ちゃん" to Kaoru-chan, "薫さん" to Kaoru-

san, and

"薫くん" to Kaoru-kun at the same time. - Conditionals. For example: 薫(ちゃん) => Kaoru-(?1chan:san) The above rule will translate "薫ちゃん" to "Kaoru-chan", and "薫 otherwise" to "Kaoru-san otherwise" + Boost is intentionally not compiled with ICU so that regex is not aware of unicode characters. For instance: - "\s" will match ascii spaces, but won't match \u3000. - :digit: only matches ascii [0-9], and won't match "一", "二", "三", etc. 共享辞书处理文本改为用 C++来实现。正则表达式从 Python.re 改为 Boost.Regex。 处理辞书花费的时间和内存都比以前要小很多了。 如果你并没有使用过共享辞书,那么忽略下边的文字吧。 + VNR 会将当前开启的规则保存到下边,也许可以帮助大家编辑和了解辞书。 Caches/tmp/reader/dict 点击共享辞书上边的【浏览】按钮也可以打开这个文件夹的。 每当共享辞书被编辑,游戏改变,或者你的语言改变,VNR 都重新生成上边的 Caches。 + VNR 在启动后,默认不再处理辞书。直到辞书第一次使用后(比方说处理机器翻译或者 TTS), 才会去生成上边的 Caches。生成 Caches 大概会花费不到 1 秒钟。 + Boost.Regex 比 Python.re 要支持更多的正则表达式语法(主要是增加了递归语法)。 具体的可以参看下边的文献。 http://www.boost.org/doc/libs/1_56_0/libs/regex/doc/html/boost_regex/syntax.html http://www.boost.org/doc/libs/1_56_0/libs/regex/doc/html/boost_regex/syntax/perl_sy ntax.html 9/23/2014 TUE * Dictionary lookup was moved to threads. When "Popup when hover" is enabled, it won't block GUI any more.

即时【翻译鼠标下边的文本】不会卡 GUI 了。 9/22/2014 MON * Disable the keeping spaces option in Text Settings for Japanese/Chinese games. It does not make sense to keep spaces for these languages. 如果游戏语言是日文或中文,VNR 会禁止文本设定中【保存单词空格】的选项。 这样做没有道理。 9/21/2014 SUN * Bypass the issue for embedding Chinese translations where Kanji becomes "?". 内嵌正体中文翻译到游戏可以正常显示了。 但是简体中文仍然无法正常显示。VNR 会自动将简体中文转换为正体中文来绕过这个问题。 下边是内嵌对话和选项的中文翻译到 BGI 引擎的截图: http://sakuradite.com/images/screenshots/sekai_bgi2_zh.jpg http://sakuradite.com/images/screenshots/sekai_bgi2_choice_zh.jpg 不过目前,只有非常少的几个引擎支持内嵌翻译,绝大部分游戏都不支持。 感谢青龙 sama 的报告! 9/20/2014 SAT * Fix a bug that might crash the Elf engine on Windows XP. Thanks for @goodboyye sama's report! 修正了 Elf 引擎在 Windows XP 上可能会崩溃的问题。 带来不便很抱歉! * SAPI TTS is moved to a different thread so that it won't block GUI. 9/18/2014 THU * The mouse hotkey to select OCR region can be changed in Preferences (default is SHIFT). 在使用偏好中可以变更选定 OCR 区域的快捷键(之前默认是 SHIFT)。 * Bugfix for the hue calculation in OCR filter. 修正了对 OCR 中色度过滤的计算方法。 * Add support for Kingsoft FastAIT that is a free Chinese offline translator. You can use it to re-translate Chinese-translated VNs to English if you want. It can be downloaded here for free: http://ky.iciba.com

(534MB after installation)

It does not contain any nasty ads like Baidu products. So, feel free to use. 添加了对金山快译的支持。 这个程式是免费的,可以提供离线的日中、英中翻译。可以从上边链接的地方下载到。 我个人非常建议你来尝试下这个翻译器,作为百度或 J 北京的补充。 下边是我个人感觉和百度、J 北京比起来的一些优缺点。 + 优点 - 这个程式是免费的。 - 倾向直接翻译,不打乱语序,translate as it is。我很喜欢这一点了。一些例子在下边。 这样也许会对学习日语的同学做日中的对比更有些帮助吧。 - 和 J 北京一样,VNR 支持金山快译的用户定义的辞书。 - 本身支持正体中文,不像百度,还需要 VNR 做简繁转换。

- 支持离线的中英翻译,但是个人感觉中英翻译质量不如 Dr.eye。 比如,金山快译总是把「you」翻译成「您」orz。 + 缺点 - 慢。 比北京慢。尤其当有些不常用的词语查找词条失败时(怀疑),可能会需要两三秒才翻译好。 另外,金山快译自带一系列专业辞书(比如计算机、健康、金融),但是当都加载后,会导致翻译时间 x2 到 3 倍。 *** VNR 暂时禁用了全部专业辞书。*** 我个人没发现这些辞书对翻译 galgame 有什么帮助,开启 or not,翻译都一样。 如果你觉得哪个辞书还是打开好,可以让我知道。 关于翻译的速度,金山快译支持多线程,但是实现起来比较 tricky(DLL 中的函数不是 reentrant 的,访问需要独立的 key)。 我想在以后有时间,再来用多线程来解决翻译个别句子突然变得很慢的问题。 下边是对「レミニセンス」中一些对话翻译的比较: 日文:最悪の事態が起こる前に助け出せたようだ。 人工:看起来,在最糟糕的事情发生前被救下了。 百度:最糟糕的事態發生之前,助け出せ。 北京:好像在發生最壞的事態之前能救出了。 快译:發生最壞的局勢前幫助能拿出各式各樣。 日文:と、足音が聞こえた。 人工:…那样的脚步声传来。 百度:和,腳步聲。 北京:腳步聲聽得見了。 快译:和,聽得見了腳步聲。

-- 「聞こえた」被删掉了

日文:「そこの女は、こっちのなんだが、何か迷惑をかけたか?」 人工:「那个女人是我的,给你们添麻烦了吗?」 百度:「那裏的女人,這邊的什麽,不過,什麽添麻煩了嗎?」 北京:「那裡的女人,是這邊的,不過,是什麼是不是添了麻煩?」 快译:「那裏的女人,這邊的是什麼,但是給您增添什麼麻煩了嗎?」 日文: 人工: 百度: 北京: 快译:

そんな声が届く。 那样的声音传过来。 那樣的聲響。 那樣的聲音傳達。 那樣的聲音送往。

-- 动词「届く」被删掉了

日文:「その人を連れて逃げる準備をしてくれ……」 人工:「快准备好带着那个人一起逃走……」 百度:「那個帶人逃跑的準備……」 -- 宾语「準備」的谓语「してくれ」被删掉了 北京:「帶那個人準備……逃跑」 -- 从句顺序被打乱了 快译:「做帶那個人逃的準備……」 -- exact 原始的逻辑,虽然有些拗口 总的感觉吧,百度更倾向于润色翻译,但是从而导致一些日文单词直接被删掉。 J 北京则很少删词,但是有时会根据上下文替换单词的含义,或者改变词组或从句的顺序。 而金山快译则倾向于直译,使用日文本来的含义,保留本来的词语顺序。 这样也许在中文翻译和日文之间更容易建立一对一的关系吧。 9/16/2014 TUE * Add a new Macro type to the Shared Dictionary.

You can ignore the following text if you don't know Japanese. Macro terms will be used to replace regular expression patterns. For example, I defined the following macro to express the beginning of a sentence. bos => (?:^|(? あ-ん -- use a pair of ":" to represent a character set, just like :digit: in regex. hira => [{{:hira:}}] -- express positive predicate by default !hira => [^{{:hira:}}] -- use leading "!" to represent negative predicate You can also name the macro as, say, KiriKiriRemoveRepeat, or kiri_remove_repeat, etc. If you need intermediate tmp macros, you might give it a name starting with "_". 在共享辞书中添加了宏类型词条。 如果你不懂日文,那么可以忽略下边的文字的。 比方说,下边会定义一个叫 bos 的宏来代表句子的开始: bos => (?:^|(? あ-ん

-- 用一对":"来代表字符集,这和正则表达中的:digit:之类的是类似

的 hira => [{{:hira:}}]

-- 默认使用肯定语气的逻辑

!hira => [^{{:hira:}}] -- 用!来表达否定语气的逻辑 大家也可以将宏命名为,比方说:KiriKiriRemoveRepeat, or kirikiri_remove_repeat 如果需要定义一些临时的变量,最好使用_(下划线)来作为宏名称的开头。 9/15/2014 MON 由于众所周之的原因,VNR 在沦陷区不可以使用 google 翻译了。我会想办法修正这个问题的。 * OCR operations are moved to threads so that the GUI won't get blocked while analyzing images. 修正了 OCR 时可能会卡屏的问题。 9/14/2014 SUN * When the underline option in Shared Dictionary is enabled, character names defined by Chara terms for Kanji-based languages (Chinese, Korean, etc.) will also be underlined. Due to technical difficulties, character names of Latin-based languages such as English will not be underlined. 当共享辞书中的下划线选项开启后,中文和韩文的人物词条的翻译也会显示下划线。 * Add global keyboard shortcuts for taking snapshot as request. 添加了为游戏窗口截图的快捷键 as request。 * Add more image filters for OCR, mainly filters for HSI color model. - Usually, if the font color is always white/black, the "I" (intensity) filter might be sufficient. - Otherwise, if the font is in a single color, the "H" (hue) might help. - The worse case, if the font color usually changes, but always in a pure color, the "S" (saturation) might help. You can find the formulation of these terminologies here: https://en.wikipedia.org/wiki/HSL_and_HSV#Lightness - Additionally, if the game text is extremely large/small, then the "Z" (zoom) filter could be used. 为 OCR 提取文本添加了更多的过滤器。 - 通常情况下,如果文字是白色或者黑色的,那么亮度过滤器就足够了。 - 否则,如果文字总是其他的某个颜色,那么,色度过滤器也许可以帮上忙。 - 最差的情况,如果文字的颜色经常变化,但是总是纯净的,那么,也许可以尝试饱和度过滤器。 - 此外,如果文字的字体非常大或者非常小,那么可以使用缩放过滤器。 9/13/2014 SAT * Add an option to underline the modified text by escape or translation terms in the Shared Dictionary. The changes that made by Japanese terms are not marked, which might sacrifice the translation quality in order to implement the marks. You don't have to bother this unless you are actively editing the Shared Dictionary. 在共享辞书中,添加了选项可以下划线被转义或翻译词条修改了的文字。 日文词条还不可以被下划线,因为如果实现这个功能,将可能以降低机翻质量为代价。 如果你不常编辑共享辞书,那么并不需要打开这个选项。 * Fix a bug existing for a long time that the subtitles are sometimes displayed

below the game window. 修正了字幕有时候会跑到游戏窗口的下边去的 bug。 * Add a Desktop button to the game OCR dock. By default, VNR will only capture images in the game window for OCR. However, certain images might not be captured this way, such as MPEG videos. When that happen, you can toggle the Desktop button so that VNR will capture the entire visible desktop to make sure the images are visible. btw, when the "Desktop" button is enabled, the OCR region can also track other windows outside of the game, such as anime subtitles in video players. Here's a screenshot of the captured subtitles on Youtube: http://i859.photobucket.com/albums/ab155/jichi/youtube_zpscd6bf9cb.png However, currently, one game has to be launched in VNR in order to capture the video players, which is very inconvenient. I am going to create an independent app for OCR videos in the future. 在 OCR 的按钮中添加了【桌面】按钮。 VNR 默认只会从游戏窗口截图,这样可能会无法从,比如,MPEG 的动画中截图。 打开【桌面】后,VNR 会转而从桌面的截图中提取文本。 btw, 当这个选项开启后,VNR 其实就可以,彼方说,通过 OCR 提取动画中的字幕了。 下边是从 Youtube 的动画中提取字幕的截图: http://i859.photobucket.com/albums/ab155/jichi/youtube_zpscd6bf9cb.png 不过,VNR 当前需要先启动任何一个游戏,才可以从屏幕任何地方截图。这样很不方便。 我在以后会把这部分功能从 VNR 中分离出来,OCR 时就不需要打开游戏了。 9/12/2014 FRI * Able to select OCR regions where VNR will periodically capture the image and extracing text in them. I hope if this could serve as an alternative text extractor when the game does have supported game engines. A screenshot is as follows: http://i859.photobucket.com/albums/ab155/jichi/ocr-region_zps009469c1.png (Note that 「剣の街の異邦人」 does have an EXP game engine, and it does not need OCR to work.) As you know, by default, you can Shift+Mouse to select one region for instant machine translation. After launching the game, there is a new OCR button on the left dock which contains two sub buttons. - Edit: The new Shift+Mouse region will become persistent. - Monitor: Monitor the persistent regions and periodically extract texts in them. The interval of the capturing can be adjusted in Preferences/OCR. The region can be both resized and moved. There are current three buttons on the top-left of the persistent regions: - × : Permanently destroy the region. - ◯ : Temporarily enable/disable the region. - ⌘ : Edit the image filtering option for the region.

Comparing to ITH, the texts from OCR are slower and more unreliable. It is still better to stick to ITH if it works. The subtitles and danmaku are temporarily disabled for OCR texts as they are unreliable. I will turn them on after I finish implementing all the image filters for OCR. It also works for full-screen games, but context menu will be disabled as usual. Currently, this feature cannot be enabled unless a game is launched. I will move this feature out of VNR into a standalone application in the future. 添加了通过 OCR 来从选定的区域连续提取文本的功能。 如果 VNR 不支持从某个游戏的内存提取文本,那么,OCR 也许可以作为暂时的提取文本的方法。 下边是一张截图: http://i859.photobucket.com/albums/ab155/jichi/ocr-region_zps009469c1.png (注:「剣の街の異邦人」已有 EXP 的游戏引擎,并不需要 OCR 来提取文本。) 打开游戏后,这个功能可以在左边的 OCR 按钮中开启。 在 OCR 按钮中包含有两个子按钮: - 编辑:开启后可以用 Shift+鼠标来选定 OCR 的区域。 - 有效:开启后,VNR 会不断的从选定的区域提取文字。提取的时间间隔可以在使用偏好中调整。 由于 OCR 会占用很多 CPU,并且提取的文本并不准确,所以如果 VNR 的文本设定可以工作, 还是不建议使用 OCR 提取文本。 OCR 可以在游戏全屏时使用,但是和往常一样右键菜单会被禁用(因为包含的 focus 会导致游戏退出全屏)。 由于从 OCR 提取的文本经常包含错误,暂时对 OCR 禁止了字幕和弹幕的机能。 当前,开启这个功能需要先用 VNR 打开游戏。我在以后会将这个功能从 VNR 和游戏中分离出来的。 9/10/2014 WED * Update the TAH script for LEC from @errzotl sensei. * 更新了 djz 大先生的 J 北京辞书。 你可以通过下边的 qq 向 djz 大先生表示感谢,或者询问关于 J 北京问题。 [email protected] 9/9/2014 TUE * I made a wiki as follows for what to do if you cannot find correct text in the game. http://sakuradite.com/wiki/en/VNR/Game_Settings The above link can also be found in Text Settings. Sometimes, the game settings has to be adjusted in order to work with VNR, such as changing Text Speed to fastest or changing Text Font to MS Gothic. You can find these game-specific information on that page. 创建了一个 wiki 来总结下哪些会社的游戏需要调整文本速度到最快,哪些游戏需要设置字体为 MS Gothic,

在找不到正确的文本时该怎么做什么的。 http://sakuradite.com/wiki/zh/VNR/Game_Settings 这个链接也可以在文本设定中找到。 9/8/2014 MON * Add TAH script for LEC online/offline Japanese-English translation. The script is from @errzotl sensei, and you can say thanks to him/her at [email protected]. * Add EXP engine for 剣の街の異邦人 released last month. 为八月的「剣の街の異邦人」添加了引擎。 * Add an option to select the range of the color intensity to identify the target text. This might help eliminate irregular colorful background behind the target text. A screenshot is as follows. Windows native UI widgets (buttons, text editors, etc.) are not used so that it could work with full screen games. http://i859.photobucket.com/albums/ab155/jichi/VNROCRColorIntensity_zps48f059b6.png Let's say, if the selected range is from 30% to 70%. Then, only the pixel whose color satisfy the following logic will be identified as "text". function isTextColor(color) { var intensity = sqrt(color.red*color.red + color.green*color.green + color.blue*color.blue); var min = 0.3 * 255 * sqrt(3); var max = 0.7 * 255 * sqrt(3); return min @Goodboyye:

迷惑かける = 添麻烦 //(动词、不及物、过去式:迷惑かけた、没有宾语) 時間かかる = 花费时间 //(动词、不及物、过去式:時間かかった、没有宾语) 2/7/2014 FRI * 修正转义词条规则中的 bug。 非常感谢 djz sensei 的帮助! 2/5/2014 WED * The BGI2 engine is changed so that the text thread location can be saved. * @djz020815 更新了 JBeijing 的词条如下。 另外,关于 VNR 中 J 北京的自定义辞书,我把所有的变更贴到了 wiki 上以防丢失掉。 如果你在 J 北京辞书中发现了问题,或者希望添加新的词汇,那么可以编辑那里。 http://sakuradite.com/wiki/zh/VNR/JBeijing @Hdgdyl,@Goodboyye,@Zhugeqiu:オペラ = 欧培拉 //删除,影响翻译【歌剧】,人名辞书里添加 @Goodboyye:お = 哦 //删除,影响句中「お料理」之类的 @Hdgdyl:なの = 的说 //删除,影响其他翻译 @Hdgdyl,@Goodboyye,@Zhugeqiu:羽音 = 羽音 //删除,影响翻译【振翅声】,人名辞书里添加 @Hdgdyl,@Goodboyye:う = 呜 //删除,影响句中「歌う」之类的 @Hdgdyl,@Goodboyye,@Zhugeqiu:見た = 看到 //删除,影响句中翻译 @Hdgdyl,@Goodboyye,@Zhugeqiu:だろ = 然后/吧 //删除【然后】,留下【吧】 @Hdgdyl:いだ = 疼 //删除,影响句中 @Hdgdyl,@Goodboyye,@Zhugeqiu:ウザ = 浏览 //删除 @Hdgdyl,@Goodboyye,@Zhugeqiu:言ってる = 说 //删除,影响句中 @Goodboyye:ロリコン = 萝莉腔 //删掉吧,错字了,其他词库里是正确的 @Hdgdyl,@Goodboyye,@Zhugeqiu:というわけ = 总之就是 //删除,影响句末 => @Goodboyye: 綻ばせる = 绽开 //(动词、及物、过去式:綻ばせた、单宾) 務まる = 胜任 //(动词、及物、过去式:務まった、单宾) 気もする = 感觉 //(动词、不及物、过去式:気もした、单宾) 気がする = 感觉 //(动词、不及物、过去式:気がした、单宾) 気を散らせる = 分心 //(动词、不及物、过去式:気を散らせた、单宾) 気を散らす = 分心 //(动词、不及物、单宾) 見る = 看 //(动词、及物、过去式:見た、单宾) 掴まる = 抓住 //(动词、不及物、过去式:掴まった、单宾) 見える = 能看见 //(动词、不及物、过去式:見えた、单宾) 伸びをする = 伸懒腰 //(动词、不及物、过去式:伸びをした、单宾) 割を食う = 吃亏 //(动词、不及物、单宾) ウザい = 好烦 //(形容词、名词) 手を引っ込める = 缩回手 //(动词、不及物、过去式:手を引っ込めた、单宾) 手を上げる = 举起手 //(动词、不及物、过去式:手を上げた、单宾) 目を付ける = 看中(盯住) //(动词、不及物、过去式:目を付けた、单宾) 気になる = 在意 //(动词、不及物、过去式:気になった、单宾) 気にかける = 在意 //(动词、及物、过去式:気にかけた、单宾) 気にかかる = 在意 //(动词、不及物、过去式:気にかかった、单宾) 噤む = 闭 //(动词、及物、单宾) 気に召す = 中意 //(动词、及物、单宾) 向きになる = 当真 //(动词、不及物、过去式:向きになった、单宾) 支え合う = 互相支撑 //(动词、及物、单宾) 力になる = 帮上忙 //(动词、不及物、过去式:力になった、单宾) 力になれる = 帮上忙 //(动词、不及物、过去式:力になれた、单宾) 心配かける = 让人担心 //(动词、不及物、过去式:心配かけた、单宾) 声かける = 打招呼 //(动词、不及物、过去式:声かけた、单宾) ==@Goodboyye:

落っこちる = 掉落 //(动词、两者都是【不及物】、过去式:落っこちた、单宾) 捕まれる = 被抓住 //(动词、及物【不及物】、过去式:捕まれた、单宾) 1/31/2014: FRI * Add a BGI2 engine for new BGI games like 「コトバの消えた日」. You can find both scenario text and character names in Text Settings. Please also update the Shared Dictionary to eliminate "" in the game text. 为「コトバの消えた日」添加了新的 BGI2 引擎。 在【文本设定】中指定下对话和人物姓名就好了。 另外,还需要更新下【共享辞书】来删掉文本中的""这样的字符。 btw, I am creating a wiki page as follows to describe the behaviors of game engines in VNR. http://sakuradite.com/wiki/en/VNR/Game_Engine It is currently incomplete, though. If you don't want to use VNR but need VNR's game engine, that page might help you to create H-code manually. 1/26/2014: SUN * I created some discussion pages online for VNR and Japanese games. If you have questions regarding VNR or the game you are playing, you might be able to get help there. Here are some links that might be useful: there

http://sakuradite.com/game

You can search for games in VNR's database

http://sakuradite.com/topic http://sakuradite.com/subject

All the topics Non-game subjects such as VNR

These discussion pages are basically light-weighted forums. I wrote the framework from scratch, and the UI might be felt differently from conventional forums, though. - The topics are associated with games. For each game, there is a discussion place. Currently, there is no useful information about the game online, though. - You can use it for chatting. If you create/edit a post, other people viewing the same topic will see your changes immediately without refreshing the web page. The underlying communication is implemented using WebSocket technology, which requires a modern web browser such as Google Chrome, Firefox, or Apple Safari. - You can upload images and BGM in the post as well. There is a Full Screen mode that will render the post text like VNR's subtitles over the image. If you want to post screenshots of the game with a few explanations/translations, I am not sure if it could be a good way to render your translations. Other people can comment on each uploaded image. - Most of the floating portals are draggable and closable. Regarding the focus of the website, I am still not sure at the moment. I think you can post whatever things there, but please AVOID POSTING LINKS OF PIRATE SOFTWARE AND PIRATE GAMES. Anything else is fine.

Currently, the website is at alpha stage. Just let me know if you have suggestions or find bugs. 添加了一些在线讨论的地方。 如果你有 VNR 或者日文和游戏有关的问题,也许可以在那里发问。 - VNR 数据库中的游戏可以在这里找到: http://sakuradite.com/game 不过现在还没有什么有用的信息在上面。 - 所有的帖子都是“直播”的。你也许可以在上面聊天的。 如果你新创建或者编辑了帖子,那么其他在浏览相同主题或游戏的同学会立刻看到你的更改而不需要刷新 页面。 这个机能需要支持 WebSocket 的 modern 的浏览器,比如:Google Chrome,Firefox,或者 Apple 的 Safari。 - 你可以上传图片和音乐。 在帖子里有一个【全屏模式】,会将帖子的文本像 VNR 的字幕那样打在图片上。那些字幕也是可以拖动的。 如果你想要直播上传喜欢的游戏的截图,那么这个模式也许可以帮上忙吧。 因为“直播”的原因,其他的同学会直接看到你新上传的图片、你也可以看到图片下面看到他们的评论而 不需要刷新页面。 - 页面上大部分元素都是可以拖动和关闭的。 关于讨论的内容,除了【不要粘贴盗版软件和游戏的下载链接】,其他的我想什么都可以吧。 另外,网站在技术上上会确保你的帖子的内容绝对不会被 google,baidu 之类的检索到。 我想即时偶尔帖到一些敏感的东西,大概也不太会出什么问题吧。 现在网站还在测试阶段。如果你发现了问题或者有什么需要,可以让我知道! 1/20/2014: MON * Not sure if people know this, in the Shared Dictionary, you can search terms only in specific language. For example, if you want to search Korean translations, just type "Korean" and press enter. I added a "language" button to the search bar of the Shared Dictionary for this to make it easier. 其实在共享辞书中,是可以仅检索某个语言的翻译的。 比如,要仅显示中文的翻译的话,在搜索栏中输入【中文】并回车就好了。 我在翻译栏的右边添加了【语言】按钮,点击后和搜索【中文】是一样的。 1/17/2014: FRI * Some of the cached contents were moved to the Caches folder, including subtitles, images, etc. Since these caches might be useful to you, I moved them to a place where you could reach them easier. It is OK to delete the entire Caches folder if you want. VNR will re-cache everything the next time . 部分缓冲的信息比如图片和字幕什么的移动到 VNR 的 Caches 文件夹下。 你可以自由的删除 Caches 文件夹。 如果你删掉了它,那么 VNR 在下次启动后会重新 cache 这些东西。 * Create indices in SQLite database of lingoes dictionaries to speed up translation queries. 1/16/2014: THU

* (Korean) Correct the Korean translation for the VNR's UI. The translation comes from @mireado sensei. * Speed up processing lingoes dictionaries. 修正了 Lingoes 辞书处理很慢的问题。 * Improve the rendering of Vietnamese LD2 dictionaries. 1/15/2014: WED * VNR can read LD2 format Lingoes dictionaries now. I also added some free dictionaries from Lingoes for Chinese, Korean, and Vietnamese. You can turn on these dictionaries in Preferences/Translation. If you need other LD dictionaries for your language, just let me know. Here are the links of the dictionaries on the Lingoes website. You don't have to download them manually for VNR. Just provide the links as references. Though free, not sure if they have violated the copyright law. - 新日汉大辞典(New Japanese-Chinese dictionary) http://www.lingoes.net/en/dictionary/dict_down.php? id=054A857FF8D2F3458F849148F6BE5CE9 - Naver 일본어사전 (Naver Japanese-Korean dictionary) http://www.lingoes.net/en/dictionary/dict_down.php? id=63332AAFE6159C448748FF073FAA1157 - OVDP Japanese-Vietnamese Dictionary http://www.lingoes.net/en/dictionary/dict_down.php? id=D2B4817958C3E644B3B2B6788B9B9E1C I also checked the source code of StarDict, and I think it is possible and kind of simple to add support for it in VNR. But I didn't find any useful Japanese dictionaries in StarDict format, as its original sourceforge website has been shut down. If you need support for specific StarDict dictionaries, you can also let me know. NOTE: My current implementation to process lingoes dictionaries is primitive and stupid. It would take a bunch of memory and could slow down VNR "a little bit" on the startup. My Windows laptop is about 5 years old, and here "a little bit" is about 20 seconds ... T_T If your laptop is as old as mine, you might have to wait for one or two weeks for me to fix the performance issue. 添加了对读取 Lingoes 辞书的支持。 另外,VNR 内置了 Ligoes 的新日汉大辞典。在使用偏好/翻译中直接打开就好了,不需要下载额外的软件。 我也不清楚哪个辞书最好的,只是这个辞书是 Lingoes 网站上面体积最大的。 如果你需要其他的 lingoes 辞书的支持,可以让我知道。 和 EPWING 的小学馆的辞书比起来,我觉得 Lingoes 的那个辞书要好很多。 比如说吧,对【悪びれる】的翻译如下: Lingoes:

わる怯れる 自下一 [下接否定]不打怵,不胆怯。 少しも悪びれるれずに毫不怯场地,大胆地。 悪びれる,わるびれ,動詞,自立,一段,連用形 EPWING: わるびれる【悪びれる】 发怵 fāchù,打怵 dǎchù.¶悪びれずに返事をする/大模大样地回答.¶逮捕されても悪びれた様子がな い/被逮捕了,还不在乎. 感觉小学馆的那本更像是给日本人看的日中辞书,而不是给中国人看的。 小学馆辞书的好处是有很多例句,但是对单词的解释过于简略的,而且没有单词的词性。 如果你在通过 VNR 学习日语,我觉得,也许新编日中辞书会比小学馆的辞书更有帮助些吧。 注: 现在 VNR 对于 Lingoes 辞书的处理还很不成熟,会占用一些内存,还会让 VNR 启动变慢些。 如果你的笔记本很老很慢,那么在打开 Lingoes 的辞书后,也许会造成 VNR 启动变慢很多。 如果是这样的话,也许只好再等一两周,等我来解决辞书载入过慢的问题。 1/14/2014: TUE VNR needs your help >< Currently, VNR only has complete translations of the user interface in English and Chinese. Japanese is partially translated manually. Other languages are partially translated automatically by Google, which has pretty bad quality T_T If you find errors in the translation of the user interface, you can edit the following wiki page: http://sakuradite.com/wiki/en/VNR/Translation You can put down the correct translation there, and I will incorporate your translation to VNR. The user name and password of the wiki is the same as the VNR's account. If you have issues or other suggestions, just let me know! 1/11/2014: SAT * (Korean) The mapping from Hangul to Furigana is changed. The rule is described here: http://www.geocities.jp/p451640/moji/skm/gjo/utfgjo_02.html There some ambiguities for mapping か and た lines. 「語中」is used for 「か」and「た」families while 「語頭」is used for「つ」family. If this is not the right way to go, just let me know. * (Thai) Add an option to use Thai as Furigana in Preferences/Translation. The mapping is described here: http://www.itagaki.net/trv/thai/language/Japanese_syllabary.htm According to that page,「ふ」could be mapped either to「หข」or「ฟข」. I used the first one. Just let me know if it is the wrong character to use. * (Thai) The categorization of Thai is changed to Asian character language from Latin character based language. The way to apply Thai terms in the Shared Dictionary is now the same as Chinese/Korean but different from English. And it does not share translations with English terms any more. * (Thai) If VNR discovers character names for the game, it will automatically translate them to Thai.

The character names could be found in the Game Information window. You don't have to manually add them to the Shared Dictionary any more. 1/10/2014: FRI * The screenshot button is moved from the popup window to the left dock so that it is easier to click. 截图按钮移动到左边的侧边栏。 * Add a "Private" toggle to the Shared Dictionary. A "Private" term in the Shared Dictionary will only be visible to its creator. The private terms will still be saved online. But other people including me and moderators will never see them. If you want to do aggressive modifications to the game text specific to your purpose, it might be better to mark it as private so that others will not get affected. For example, if you want to change the hero's name to your the heroine's name to your boyfriend or girlfriend, you can simply create some translation terms and mark them as "Private" so that other people will not see your real names. For example in 「幻創のイデア」, the hero character is「優真」. And there is already a chara term of 「優真」= "Yuma". If I want to change the hero's name to "jichi", I can either add a new "Translation" term of "Yuma"="jichi", or a new "Chara" term of 「優真」="jichi". Don't forget to mark these terms as series-specific as well so that they will not pollute other games. Note: - The private terms have higher priority then non-private ones. If there are two terms for the same character name, the private one will be applied first. - Currently the guest account cannot create private terms, since I am not able to distinguish different guests to be private. - If you are not familiar with the Shared Dictionary, you must be very careful about the private terms. If you add a bad private term, it could mess up the machine translation. Since the term is private, no one will double-check the translation for you. You might want to keep the following criteria in mind when adding Private terms so that it will not hurt you: 1. Avoid adding translation for ambiguous (I mean "context-sensitive") Japanese word. For example, you should not add translation of: 「ちゃん」 = 「chan」 Because 「ちゃん」 does not always mean 「chan」. Say, 「ちゃんと」 = just Additionally, when a word contains only 1 character, it is usually ambiguous and should be avoided. 2. If it is ambiguous but you really want to add it, mark it as gamespecific. For example in 「レミニセンス」,「希望」is a character name read as 「Nozomi」. But it is ambiguous since it could also means "Hope". If you want to add a term of 「希望」=「Nozomi」, it is better to mark this term as series-specific to reduce the damage to the other games. The detailed explanations for the meaning of each toggles in the Shared Dictionary could be found here:

http://sakuradite.com/wiki/en/VNR/Shared_Dictionary 在【共享辞书】中添加了【非公开】的选项。 设定为【非公开】的翻译只有翻译的创建者才可以看到,其他任何人,包括我和辞书特权用户都不会看到。 如果你想添加的翻译很特殊,那么这个也许可以帮上忙。 比如,你可以利用【非公开】的词条,来将游戏的主人公的名字换成你的名字,将其他角色的名字换成你的 男朋友或者女朋友的名字。 比如在「幻創のイデア」中,主人公的名字是「優真」,会被百度翻译为【优真】。 如果我想要把【優真】替换为【jichi】,那么有两个方法: - 方法 1:添加一个【人物】词条【優真】=【jichi】 - 方法 2:添加一个【翻译】词条【优真】=【jichi】 然后将添加的词条设定为【非公开】和【系列专用】就好了。 其中【非公开】保证其他同学不会看到我的名字,而【系列专用】使得其他游戏中的【優真】不会被替换为 【jichi】。 两种方法中方法 2 是推荐的。因为方法 2 不会影响机器翻译,而方法 1 对机器翻译可能会有一些影响。 注: 如果你对【共享辞书】并不熟悉,那么在使用【非公开】的词条时一定要小心,小心,再小心! 如果词条的设定有问题,可能会严重降低机翻的质量。 因为是【非公开的】,所以没有其他同学会帮助你检查和修正词条中的错误。 如果你要添加【非公开】的词条,最好能够小心以下两点: 1. 避免添加有歧义(所谓的【上下文相关】)的单词的翻译。 比如:【ちゃん】=【酱】就是有歧义的。 因为在比如【ちゃんと】时,就不当【酱】讲。 特别是那些只有一个字符的单词,通常都是有歧义的。 2. 如果一定要添加,那么最好把词条设定为【系列固有】的,这样让有歧义的词条不会影响到其他的游戏。 辞书中选项的具体介绍可以在这里找到: http://sakuradite.com/wiki/zh/VNR/Shared_Dictionary * (Korean) Add an option in Preferences/Translation that can use Hangul as Furigana. I am studying Korean now, and I am not sure the correctness of the mapping from katakana to hangul. The current map is as follows. Feel free to let me know if it contains errors. Hiragana: がぎぐげござじずぜぞだぢづでどばびぶべぼぱぴぷぺぽあいうえおかきくけこさしすせそたちつてとな にぬねのはひふへほまみむめもやゆよらりるれろわをんぁぃぅぇぉゃゅょっ Hangul: 가기구게고자지즈제조다지즈데도파피푸페포바비부메보아이우에오가기구게고사시스세소다지쓰데도나 니누네노하히후헤호마미무메모야유요라리루레로와로ㄴㅏㅣㅜㅔㅗㅑㅠㅛ* (Korean) If VNR discovers character names for the game, it will automatically translate them to Hangul. The character names could be found in the Game Information window. You don't have to manually add them to the Shared Dictionary any more. But the same as another languages, VNR will not automatically translate the character name that has only 1 character to Hangul. And it will not automatically translate names that only contains katakana (hiragana is fine). Because katakana name sometimes is just an English word. It could be wrong to translate it to Hangul by the pronunciation of furigana. 1/5/2014: SUN * Add Polish language support as requested by @platinum.

You can set the language to Polish in Preferences/Account. Currently, only Microsoft and Google translators do support Polish language. 1/3/2014: FRI * Fix ApRicot engine to split character names from dialog texts. 1/2/2014: THU * The way to split sentences for LEC and Atlas is changed. This will significantly improve the quality to translate multiple sentences. Thanks for @andrix sama's report! * Add Taskforce2 engine. Tested working with different versions of「 オトメスイッチ」 and 「神様(仮)」. Feel free to update those games to the latest version, and select Taskforce2 in Text Settings. Note: It only guarantees to work with Taskforce2.exe instead of Taskforce2_safe.exe. 添加了 Taskforce2 引擎。 试了下不同版本的「 オトメスイッチ」和 「神様(仮)」都可以用的。 你可以放心的将这些游戏更新到最新版了。更新游戏后,在文本设定中选择 Taskforce2 的文本就好了。 注:这个仅保证对 Taskforce2.exe 工作。不要通过 Taskforce2_safe.exe 打开游戏。 btw, I updated the wiki for using VNR on Wine. If you are using VNR on Mac or Linux, the following articles might be helpful: http://sakuradite.com/wiki/en/vnr/mac http://sakuradite.com/wiki/en/vnr/linux 12/31/2013: TUE * No need to install msvcrt 2008/2010 manually on Windows XP/7/8 x86/x64. No external libraries are needed to be installed to launch VNR on a newlyinstalled Windows. 在 Windows 系统上不需要安装 msvcrt 了。 确保在裸的 Windows 上不需要安装任何 library 即可启动 VNR。 * By default, VNR will automatically detect whether you have got Internet access. If the detection does not work well, you can force enabling/disabling the Internet in Preferences/Features. VNR 默认时会自动检测网卡是否有网络连接。 如果检测不能正常工作,你可以在【使用偏好/功能】中强制连接或者切断网络。 * As requested by @nixanol, VNR will not popup translations when all dictionaries are disabled in Preferences. * @djz020815: jbeijing 词库 @Hdgdyl:水を差す = 挑拨离间 //还有【泼冷水】的意思,感觉两个都挺常用的,要不改为【泼冷水(挑 拨离间)】 @Hdgdyl,@Goodboyye,@Zhugeqiu:ような = 有那种 //改为【一样的】吧,「**ような」之类的 @Hdgdyl,@Goodboyye,@Zhugeqiu:いこ = 走吧 //删除,影响到「**いこと」 => @Goodboyye: 落っこちる = 掉落 //(动词、两者都是、过去式:落っこちた、单宾) 捕まれる = 被抓住 //(动词、及物、过去式:捕まれた、单宾) * 修正了 JBeijing 辞书一个非常严重的 bug that 部分辞书没有录入。 非常感谢@djz020815 sama 的 debug!

12/30/2013: MON * Reduce the resource usage when VNR is idle. Thanks for @winter3d sama's report. 12/28/2013: SAT * Add a few translations for different languages. Most of the new translations come from Google, some of which might be inaccurate. * Offline help text is reduce to only cover basic usage. Advance help text is moved to the online wiki at: http://sakuradite.com/wiki/en/vnr It will make me easier to render and maintain the help text for different languages. You can use your VNR's account to log in to the wiki to edit the text as well. 部分帮助信息引动到在线的 Wiki 上: http://sakuradite.com/wiki/zh/vnr 你也可以通过你的 VNR 的账号来编辑 Wiki 上的文字。 12/27/2013: FRI * Extend the Rejet engine to support 「剣が君」. Tested working with 体験版, version 1.00 and 1.02. 修正了 Rejet 引擎,添加了对「剣が君」的支持。 12/26/2013: THU * Add System43 game engine for Rance series games. Tested working with 「ランスクエスト」and 「ランス 01 光をもとめて」. The global repetition elimination option in Text Settings is disabled for System43 engine. You can update Shared Dictionary to get the terms to eliminate repetition and garbage text for Rance games. 为 Rance 的游戏添加了 System43 的引擎。 另外需要更新下【共享辞书】来删除 System43 文本中的重复和垃圾。 * Add hooks to MultiByteToWideChar and WideCharToMultiByte. Tested working with 「AlterEgo」. Some BL games might also need these functions (http://blgames.proboards.com/thread/265). Thanks for @Goodboyye sama's suggestion. 添加了对 MultiByteToWideChar 和 WideCharToMultiByte 函数的提取。 感谢@Goodboyye sama 的建议! 12/25/2013: WED * Fix the issue that VNR might crash VenusBlood series games. Thanks for @winter3d & @hsz10102007's help on reproducing the crash. 修正了 VNR 有时会让 VenusBlood 崩溃的问题。 感谢@winter3d & @hsz10102007 sama 对于重现崩溃问题的帮助! * The "Glow" button in the left dock is renamed to "Transp" standing for transparency. The functionality is not changed. 左边的【光晕】按钮重命名为【透明】。功能上并没有变化。 12/22/2013: SUN

* Add game engine for Rejet games. Tested working with 「Tiny Machinegune」, 「ドットカレシ I」, and 「ドットカレシ II」. The text threads are displayed as Rejet@CaoNiMaGeBi crediting to CaoNiMaGeBi sensei's work. 为 Rejet 的游戏添加了引擎。 在文本设定中指定【Rejet@CaoNiMaGeBi】的文本为对话就好了。 * Fix a bug that might cause VNR fails to sync with VOICEROID+. 修正了一个可能会让 VNR 与 VOICEROID 同步失败的 bug。 * Fix a bug that when the game crashes during screen resolution change, it might cause SpringBoard to have zero size and hence disappear. Thanks for @艾美拉达 sama's report. 修正了 bug that 当游戏刚好在变更分辨率时崩溃的话,可能会让 SpringBoard 消失的问题。 感谢@艾美拉达 sama 的报告! 12/21/2013: SAT * 修正了由于 cdnjs 被牠们 q 掉,而造成 GameBoard 和游戏情报载入失败的问题。 * Add Bruns2 engine to support recent games like 「オーク・キングダム~モン娘繁殖の豚人 王~」. 「オーク・キングダム~モン娘繁殖の豚人王~」可以工作了。 在文本设定中选择 Bruns2 就好了。 * I tried to add dlls to the blacklist to prevent game from being crashed by VNR. I suspect certain DLLs on some specific platforms could crash the game, but I am not sure what they are. If VNR still crashes games on your laptop, esp. when you are using Windows XP, could you try following steps and email me the list of dlls the problematic game is using? 1. Download listdlls from Microsoft: http://technet.microsoft.com/enus/sysinternals/bb896656.aspx 2. Launch the game with or without VNR 3. Open Command Prompt 3.1 Find ProcsssID of the application by executing: tasklist 3.2 Get list of dlls by: listdlls _game_process_id > output.txt It the game crashes, it would be quite helpful if you can email me that output.txt. 我尝试通过将 DLL 添加到黑名单来避免游戏崩溃。 因为游戏在我的笔记本上不会崩溃,我怀疑某些软件特有的 dll 会让游戏崩溃,但是我不确定是什么。 如果在更新后,VNR 还是会让你的游戏崩溃,尤其当你在使用 Windows XP 时, 可以麻烦你通过如下方法把游戏在用的 dll 发给我吗? 1. 下载 listdlls 从 Microsoft: http://technet.microsoft.com/enus/sysinternals/bb896656.aspx 2. 启动游戏(用不用 VNR 启动无所谓) 3. 打开 Command Prompt 3.1 执行 tasklist 来找到游戏的 PID 3.2 通过如下方法把 dll 列表保存到 output.txt 中 listdlls _game_process_id > output.txt * Add a button to the left docked panel which can toggle whether split long translation

into sentences by punctuations. If the game text is very long in, say, Electro Arms, splitting the translations might make it easier to read. 在左边的选项中添加了可以分行显示翻译的选项。 当游戏文本很长很长时,比如在 Electro Arms 中,那么分行显示后,也许,翻译看起来会容易些。 * By default, VNR will popup translation for CLICKED Japanese word. I added a toggle to the left docked panel which can change this behavior to popup translations for HOVERED text. 默认时,VNR 会弹出点击的日文单词的翻译。 在左边的选项中添加了一个 toggle,打开后,VNR 会弹出鼠标指着的(hover)的日文单词的翻译。 * The option to disable Dub Voices is removed from the left dock. If you want to disable Dubbing Voices, you can press the Disable button in Voice Settings. 从左边选项中删掉了禁用角色配音的选项。 如果你想要把禁用角色配音的选项,你可以在【语音设定】中点击禁用。 12/18/2013: WED * I forgot to push the changes to Malie2 to the repository yesterday...>< Electro Arms should work now. Sorry for the inconvenience! Just disable all options in Text Settings and reselect correct Chara and Scenario threads. Here's a screenshot of Text Settings for that game which might be helpful. http://i859.photobucket.com/albums/ab155/jichi/7121984C2_zps5141b0d5.png 更新了 Malie2 引擎。 昨天忘记 push 变更的 dll 了>< 带来不便,非常抱歉! 上边的是 Electro Arms 的文本设定,也许会有些帮助。 12/17/2013: TUE * I rewrote the Malie2 engine for new games from light.co.jp. It can extract both character names and the complete game text now. Tested to work perfectly for Electro Arms and BRAVA!!. The old signature for text threads cannot match new Malie2's threads. Please reselect correct text in Text Settings. btw., I had to write an extern_fun for Malie2 to dispatch game text at runtime. So, there is no equivalent H-code for this engine. Thanks for @大橋歩夕 sama's report for the issue. 为 liight 社的游戏修改了 Malie2 引擎。 新的引擎可以提取人物的名字和完整的文本了。 试了下 Electro Arms 和 BRAVA!!都可以提取文本的。 请在【文本设定】中重新调整下文本就好了。 12/16/2013: MON * Fix the regression on x64 Windows that VNR sometimes crash the game. Really sorry for the inconvenience because of the crash! VNR 在修正了 64 位系统上会让游戏崩溃的问题。 带来各种不便,非常抱歉! * Disable "Keep all scenario threads" options for Malie and Malie2. 禁止 light 社的 Malie 和 Malie2 引擎【保留所有对话文本】的选项。

12/15/2013: SUN * @Kodoku sensei 添加了 JBeijing 词条 - 何かしている = 做着什么 - 何かしたい = 想做什么 - 何かしてる = 做着什么 - 何かしていて = 做着什么 - 何かして = 做点什么 - 何かしよう = 做点什么 - 何かしてた = 做了什么 - 何かされた = 被做了什么 - 何かした = 做了什么 - 何かしたら = 做了什么的话 - 何かしていれば = 做点什么的话 - 何かしていないと = 不做点什么的话 - 何かされてからじゃ = 被做了什么之后 - 何かしそう = 快要怎么了 12/14/2013: SAT * Add a button to the left docked option menu which can toggle displaying current time as requested by @大橋歩夕. 在左边的选项中可以选择显示当前的时间。 * I rewrote the exception handling mechanism in ITH. If VNR still periodically crashes your games, just let me know! Additionally, dlls for Windows 7, XP, and Wine were merged together. There are no more vnr*xp.dll and vnr*ux.dll. If you have anti-virus soft installed, please re-add VNR's dlls to your whitelist. Special thanks to @Zinc Zhou for helping me identify the issue from exceptions. 修正了下 VNR。如果 VNR 还是会让你的游戏崩溃,可以让我知道。 另外,如果你有安装杀毒软件,请重新将 VNR 的 dll 加入白名单才好。 特别感谢@Zinc Zhou sama 的对于找到异常原因的帮助! 12/12/2013: THU * Add a Padding button to the docked FS button group which can toggle the black padding in full screen. It might be helpful if the game is not able to enter full screen, say, on Wine. 在左边的全屏按钮中添加了【填充】按钮,可以显示/隐藏全屏时黑色的填充。 这个按钮也许会有些用,如果游戏因为某些原因无法进入全屏,比如在 Wine 上。 btw., VOICEROID+ works out of box with VNR on Wine 1.7. - For 結月ゆかり, nothing extra is needed to do. - For 民安ずんこ, .NET is needed to be installed through winetricks. btw., VOICEROID+可以和 VNR 在 Wine 1.7 上运行的,其中: - 結月ゆかり:什么额外的东西都不需要做的。 - 民安ずんこ:需要安装.NET,比如通过 winetricks。 12/10/2013: TUE * Always disable keeping all scenario threads for text threads ending with 'A' or 'W'. 对以 A 或 W 结尾的文本,总是禁止使用文本设定中的保留所有对话文本。 * djz020815 より

@Hdgdyl,@Goodboyye,@Zhugeqiu:そう = 是吗/这样 //删除,影响大,例:「ていうか、お前らそ う言う関係か!」 @Hdgdyl,@Goodboyye,@Zhugeqiu:やった = 太好了 //删除,影响句中,例:「これ、あんた一人で やったの……?」 @Hdgdyl,@Goodboyye,@Zhugeqiu:あるのか = 有吗 //删除,影响句中,例:「霊にスタミナがある のか分からない」 @Goodboyye:るな = 琉奈 //删除 @Hdgdyl,@Goodboyye,@Zhugeqiu:って = 是 //删除,影响句中,例:「いや、商店街で似顔絵やっ てたんだよ」 @Hdgdyl:ってことは = 这样的话 //删除,影响句中,例:「身体に染み付いてるってことは、よっぽ ど苦手なんだな。」 @Hdgdyl,@Goodboyye,@Zhugeqiu:リア = 莉雅 等 //删除 @Hdgdyl:いいんじゃない = 不是很好吗 //删除,影响句中,例:「食材は各自持ち寄ってもいいんじ ゃないかって話もあがってるわ」 @Hdgdyl,@Zhugeqiu:いつか = 总有一天/某日 //删除,影响「いつから」会变成【某日们】 @Goodboyye,@Zhugeqiu:だから = 说以说 //说以说=>所以说 @Hdgdyl,@Zhugeqiu:リーフ = ‘利夫’ //删除,影响到【leaf/绿叶】,人名在辞书里添加 @Hdgdyl,@Goodboyye,@Zhugeqiu:元気 = 精神 //删除,「元気そうね」之类的反而翻译不对了 @Hdgdyl,@Zhugeqiu:ササミ = ‘沙沙米’ //删除,其实也可以是「ささ身」的,人名在辞书里添加 @Hdgdyl,@Zhugeqiu:ハニー = ‘哈尼’ //删除,影响到「ハニー」「ハニーチキン」之类的翻译了, 人名在辞书里添加 @Hdgdyl,@Goodboyye,@Zhugeqiu:かや = 叶子 //删除,这也可以指其他的,会影响到其他,例: 「何かやってないと」 @Hdgdyl:悪いな = 不好意思 //删除,影响到其他,例:「すっげ性格悪いな!」 @Hdgdyl,@Goodboyye,@Zhugeqiu:そうだ = 对了 //删除,影响句中 @Hdgdyl,@Goodboyye,@Zhugeqiu:雫 = 零 //删除,人名在辞书里添加 @Zhugeqiu:カラー = ‘卡拉’ //删除,人名在辞书里添加 12/9/2013: MON * Bugfix for the Shared Dictionary. 修正了对共享辞书的修改有时会滞后的 bug。 感谢@天與楓 sama 的报告。 12/7/2013 SAT * It seems that certain options in Text Settings are misused for a large amount of games. Now, VNR will force disabling certain options for the following game engines: NEVER KEEP ALL SCENARIO THREADS: - CIRCUS - KiriKiri1 - KiriKiri2 - MAJIRO NEVER TURN ON GLOBAL REPETITION FILTERS: - CIRCUS - KiriKiri1 - KiriKiri2 - MAJIRO -

Artemis BALDR BGI Gesen18 RealLive QLIE QLIE2 NEXTON

- ShinaRio - SiglusEngine - SiglusEngine2 The explanations for these two options are as follows: 1. Regarding the first option, it should never be enabled UNLESS the scenario text thread FLOATS each time you launch the game. I mean, UNLESS the NUMBER after the thread name in Text Settings changes every time you launch the game, such as in BALDRSKY ZERO. By default a text thread is identified by its address, context and subcontext. The NUMBER after the thread name is combined from these factors. For games like BALDRSKY ZERO, the address of the text changed every time you launch the game. As the result, VNR is not able to locate the text thread. When that option is turned on, VNR will instead identify the text threads by the names of the functions being hijacked, so that even the address or the context of the text threads varies each time you launch the game, VNR can still identify the text from the function that the text comes from. UNLESS the above case (the NUMBER above the text thread varies) happens, this option SHOULD NEVER BE TURNED ON. For common game engines like KiriKiri and Majiro, this option should NEVER be turned on. 2. Regarding global repetition filters, it is NOT needed for most of game engines. The only engine that I know might need global filters is MALIE (not MALIE2) from light.co.jp. When this option is turned on for games that do not need it, it could, say, turn 「かわいい(可愛い)」 into 「かわい(河井)」. This will significantly downgrade the correctness of the machine translation. ITH does have built-in repetition filter to smooth repetitive text like "AABBCCDD". And this filter is ALWAYS TURNED ON. But, the filter requires one or two input texts to get trained and warmed up. As the result, you might find the first one or two sentences to have repetitions and the later texts do not have repetitions. BUT, YOU DONT'T WANT TO TURN ON GLOBAL REPETITION FILTER FOR THE FIRST FEW SENTENCES. Otherwise, it will mess up any other texts after the first two sentences. This phenomenon is quite common in KiriKiri games. For KiriKiri games, there are usually two kinds of text threads: KiriKiri1 and KiriKiri2. KIRIKI1 is ALWAYS PREFERRED OVER KIRIKIRI2. Because KiriKiri2 sometimes fails to detect repeating texts, and the difference between KiriKiri2 and the original game text is very subtle and hence difficult to tell. One example was found by @lambl in 「貸し出し妻」where ぱぱ (father) becomes ぱ in KiriKiri2: Game Text: さっきからぱぱの事ずっとよんでたのに KiriKiri2: さっきからぱの事ずっとよんでたのに So, if KiriKiri1 exists, please always use KiriKiri1 instead of KiriKiri2!

Sometimes, there are repetitions that only appear in certain part of the game text, such as KiriKiri1's name thread. For example, in 天色, the repetition only appears in the name thread like this: 名前名前名前「シナリオ」 Such repetition can be accurately removed by adding regular expression rules to the Shared Dictionary RATHER THAN ENABLING GLOBAL REPETITION FILTER. If you don't know how to do this, you can search for "repetition" in Shared Dictionary or shoot me an email for help. * 看起来文本设定中的一些设置被滥用了。 现在,VNR 会根据不同的游戏引擎强制禁用一些文本设定中的选项。 禁止保存所有对话文本: - CIRCUS - KiriKiri1 - KiriKiri2 - MAJIRO 禁止全局的去除重复: - CIRCUS - KiriKiri1 - KiriKiri2 - MAJIRO -

Artemis BALDR BGI Gesen18 RealLive QLIE QLIE2 NEXTON ShinaRio SiglusEngine SiglusEngine2

这样做的原因如下: 1. 对于第一个选项,它不应该被打开除非游戏的文本 thread 是“浮动的”。 这里的除非“浮动”指的是:除非文本设定中的文本上方的【数字】在每次启动游戏后都不同, 比如 BALDRSKY ZERO。 VNR 中的文本默认是通过文本的地址,context 和 subcontext 来定位的。 文本设定中文本上方的【数字】就是包含这些信息的代码。 但是对于像 BALDRSKY ZERO 这样的游戏,文本的地址在每次启动游戏都会改变。 这样使得 VNR 没有办法通过文本的地址来定位文本。 这时,如果打开了这个选项,那么 VNR 就会转为通过文本的劫持的函数来定位文本, 使得即使文本地址改变也仍然可以定位到文本。 总之,除非如上情况(就是文本上方的数字不断变化)发生,否则一定不需要打开这个选项。 像 KiriKiri 和 Majiro 这样的通用引擎,这个选项一定不要打开。 2. 关于全局的过滤重复,它对绝大部分游戏都不需要。 迄今为止,我唯一发现可能需要这个选项的引擎是 light 社的 MALIE(不是包括 MALIE2)。 如果在本身没有重复的游戏中打开这个选项,会造成,比如: 将「かわいい(可愛い)」过滤为「かわい(河井)」

这会严重降低机翻的质量。 ITH 本身是自带了去除好像"AABBCCDD"这样的重复的。 并且这个重复过滤器总是打开的,不论你是否愿意。 但是,这个重复过滤器会需要一两个句子来 train 和 warm up。 这个造成的结果是,有时候第一个和第二个提取到的句子中会有重复,但是后来的就没有了。 但是,即使是这样,你也不会想要仅仅为了开始的两句话而打开全局重复过滤。 否则会造成这两句之后的文本出现上面说的由于过滤了不该过滤的重复而降低机翻的质量的情况。 这个需要 warmup 的情况在 KiriKiri 的游戏中很普遍。即时出现这个情况,也不要打开全局过滤。 开始的一两句忍忍就会好了。否则之后的全部文本都会很糟糕。 KiriKiri 的很多游戏可以通过 KiriKiri1 和 KiriKiri2 两种方式提取文本。 当两者同时存在时,总是应该选择 KiriKiri1 over KiriKiri2! 因为 KiriKiri2 经常会有提取文本不完全尤其是过滤了不该过滤的重复的情况。 而这个 KiriKiri2 和原始文本间的差别非常难发现,使得一些同学错误的以为 KiriKiri2 中的文本是 完全正确的。 比如,@lambl 在「貸し出し妻」中曾经遇到 KiriKiri2 将【ぱぱ】(爸爸)错误的提取为了【ぱ】 (啪): Game Text: さっきからぱぱの事ずっとよんでたのに KiriKiri2: さっきからぱの事ずっとよんでたのに 所以,如果 KiriKiri1 存在,那么最好总是选择 KiriKiri1 而不要选择 KiriKiri2。 另外,有时游戏文本中会有部分地方重复,而不是全部都重复,比如在 KiriKiri1 的姓名 thread 中。 比如在【天色】,前端的人物名字会重复有限次,而对话中不包含重复: 名前名前名前「シナリオ」 这样的重复通常是可以通过向【共享辞书】中添加正则表达式来非常精确的移除的。 如果你不清楚如何写正则表达式,可以在【共享辞书】中搜索 repetition,也可以发信给我 而不要打开全局重复过滤了。 12/4/2013 WED * djz020815 より @Hdgdyl:なよ = 不要啊 //删除,影响句子 @Hdgdyl,@Goodboyye,@Zhugeqiu:なのか = 为什么/那样吗 //删除,影响句中,例:「一瞬、百戦 錬磨なのかと疑ったよ」 @Hdgdyl:そ、それは = 那、那个是 //感觉删除比较好,影响到句中了,例:「そ、それは美味しいは ず、だな」 @Hdgdyl,@Goodboyye,@Zhugeqiu:る、な = 琉奈 //删除,影响到其他了,例:「……見ている、 な。」 @Hdgdyl:嬉しいっ = 好开心 //删除,影响到句中了,例:「……どっちにしても嬉しいってことでい いのか?」 12/3/2013 TUE * You can search for games by 原画、シナリオ、音楽 creators in the game board. 在 GameBoard 中可以搜索游戏的原画,脚本和音乐作者。 12/2/2013 MON * 禁止 VNR 与射手播放器同步。 12/1/2013 SUN * Add hooks to MultiByteToWideChar (SHIFT-JIS) and WideCharToMultiByte (UTF-16) 添加对 MultiByteToWideChar 和 WideCharToMultiByte 的 hook。 If you have anti-virus installed, don't forget to re-add VNR's dlls to your white list. 如果你有安装杀毒软件,不要忘记重新将 VNR 的 dll 加入白名单才好的。 11/30/2013 SAT

* 添加了一个很简陋的在大陆地区可用的下载游戏有关动画的工具。 如果你暂时居住在沦陷地区,那么 VNR 会尝试使用这个工具来下载游戏情报中游戏的 OP,ED 和 Trailers 动画。 * I tried to fix the mysterious crash issue for Venus Blood series by reverting some of the code. But I could not reproduce the issue on my laptop, and I am not if the issue is fixed now. If the game still crashes esp. on Windows XP, feel free to complain to me! 尝试修正了下 Venus Blood 中崩溃的问题。 但是,因为我无法在我的笔记本上 reproduce 这个问题,我不清楚问题是不是已经修正了。 如果游戏还是会崩溃,尤其是在 Windows XP 的电脑上,可以让我知道! 11/27/2013 WED * Add support for associating games with DLsite in game information. 在游戏情报中可以将游戏与 dlsite 关联。 如果你暂时居住在中国大陆,那么要在使用偏好的功能中打开中国大陆的选项才好。 11/25/2013 MON * djz020815 より - @Hdgdyl 別に = 没什么啊,影响句中翻译,删除 - @Hdgdyl,@Goodboyye,@Zhugeqiu: は = 哈,「これはなんだ」变成了【这哈】,删除 - @Hdgdyl,@Goodboyye,@Zhugeqiu: けて = 唯一,「届けて」变成了【报告唯一】,删除 11/24/2013 SUN * 按照 djz せんせい的要求,变更了 JBeijing 自定义辞书 - @Hdgdyl,@Zhugeqiu,@Goodboyye: 删除 なんだ = 是什么 - @Hdgdyl: か = …吗 => か = 吗 * Locale Emulator (>=1.0.7.4) no longer requires administrator privileges to work. Thanks for Paddy Xu sensei's time and effort! Since it seems to always work well than NTLEA in Windows Vista/7/8, I changed it to the recommended locale changer for VNR. You can get the latest version of Locale Emulator here: https://app.box.com/LocaleEmulator You can say THANKS to Paddy Xu sensei here: http://bbs.sumisora.org/read.php?tid=11045407 Locale Emulator(>=1.0.7.4)不再需要管理员权限来工作了 感谢 Paddy Xu せんせい的时间和努力! 因为它对 Windows Vista/7/8 的支持大都比 NTLEA 要好, VNR 变更 Locale Emulator 作为推荐的转区工具。 你可以在这里下载到最新的版本: https://app.box.com/LocaleEmulator 你可以在这里向 Paddy Xu せんせい表示感谢: http://bbs.sumisora.org/read.php?tid=11045407 * I tried debugging VNR for XP. I suspected the issue was cause by illegal heap permission. But I am not sure if the issue is fixed or not since I am not able to reproduce the issue myself. If VNR still crashes your game on Windows XP, just let me know. 尝试修正了下 VNR,但是我不确定是否解决 VNR 在 XP 上会让游戏崩溃的问题。 如果问题仍然存在,可以让我知道。

11/23/2013 SAT * Bug fix for machine translation. * Add a machine translation testing app to the Spring Board. It might be helpful to debug Shared Dictionary. 添加了一个检验机翻的工具。也许可以帮助修正共享辞书吧。 * 修正了由于 G 网被屏蔽而造成的各种卡主的问题。 如果你暂时居住在中国大陆,那么不要忘记打开【使用偏好/功能】中中国大陆的选项。 btw.,无法访问的原因完全是牠们造成的,不是 G 网造成的。 11/20/2013 WED * Fix the bug that the h-code in the Hook Code Dialog was sometimes inconsistent with the current game. 修正了编辑特殊码界面中的特殊码有时候和游戏不一致的 bug。 感谢@天與楓 sama 的报告! 11/19/2013 TUE * By default, VNR will automatically change SpringBoard wallpaper for different games. You can disable this behavior in Preferences/UI. VNR 默认会根据选定的游戏自动更换 SpringBoard 的壁纸。 在【使用偏好/界面】中可以禁用这个行为。 * The hentai button in the left docked toobar is moved to the popup options. 左边的 Hentai 按钮移动到了弹出的选项中。 11/18/2013 MON * Ensure that texts are copied to the clipboard. * Google TTS performance is improved. 改进了 Google TTS 的速度。 如果你暂时居住在大陆地区,那么要在功能中打开大陆地区的选项才好。 * Add support for VOICEROID+ 結月ゆかり and 東北ずん子. You can specify the locations of voiceroids in Preferences/Locations/TTS. Additionally, the interface of TTS is simplified. Note: Due to technical difficulties, the integration with VOICEROID+ is not as good as SAPI. - Currently, only 結月ゆかり and 東北ずん子 are supported. Other voiceroids such as 民安★TALK are not supported. - VNR has to launch the voiceroid application. - Communication with 結月ゆかり will mess up the Clipboard. 添加了对 VOICEROID+結月ゆかり和東北ずん子的支持。 在【使用偏好/位置/语音】中可以设定 VOICEROID+程序的位置。 另外,简化了下语音合成的界面。 注:由于技术困难,VNR 对 VOICEROID+的支持并不如 SAPI。 - VNR 现在只支持結月ゆかり和東北ずん子,并不支持其他的 VOICEROID(比如:民安★TALK)。 - VNR 需要打开 VOICEROID 的程序。 - 和結月ゆかり的通信会需要占用剪贴板。 11/12/2013 TUE * 修正简繁转换的 bug。感谢 Kodoku せんせい的报告!

依照 Kodoku せんせい的指示,修改了 JBeijing 的自定义辞书。变更如下: @Hdgdyl 淡い期待 = 淡淡的脐带――啊呀,可能打错了 @Hdgdyl にな = 变成――影响到“気になってしょうがない”,删掉吧 @Hdgdyl まあ = 算了——统一用“嘛”吧,“まあな”的时候会影响到,看着好不习惯 @Hdgdyl 妙 = 秒——删掉吧,人名的话在辞书里改固有吧 @Hdgdyl それは = 那个啊——影响太多,“それは**”之后的会影响到,我已经碰到好多次了 ORZ,直接 在辞书里加条正则表达吧 @Zhugeqiu それは = 那个啊——同上 @Goodboyye それは = 那个啊——同上 @Goodboyye 妙 = 秒——同上 11/10/2013 SUN * Fix the bug that the character name text thread could not be disabled in Text Settings. Thanks for @天與楓 sama's report! 修正了文本设定中姓名文本无法被取消的 bug。 感谢@天與楓 sama 的报告! * VNR will compile character names in Game Information into MeCab dictionary at runtime. This ensures that the character names can be recognized by MeCab. However, VNR will skip pure katakana and hiragana names which have less than 2 characters. Compiled csv and dic files could be found in the following location if you want to use them for other purposes: %APPDATA%/org.sakuradite.reader/caches/mecab VNR 会将游戏情报中的人物姓名编译为 MeCab 的辞书,来提高日文分词的正确性。 不过,VNR 会跳过仅包含平假名和片假名并且少于两个字符的名字。 btw, Yahoo JLP is said to be the best Japanese language parser out there. But it is an online service and would be too slow to add to VNR. I found a Perl script that could compile Wikipedia with YahooJLP into offline MeCab dictionary. http://chasen.org/~taku/blog/archives/2007/06/yahoomecab.html This should improve the accuracy of MeCab parser a lot. I will add this to VNR when I have time. 11/9/2013 SAT * Fix the issue that fullscreen-ed game might have black border on the top. Fix the issue that VNR sometimes went out of screen after launching the game. 修正了游戏通过【全屏】按钮全屏后顶部可能会有黑边的问题。 修正了游戏启动后 VNR 有时会消失的问题。 * Fix the bug that certain chara terms in Shared Dictionary are not applied. 修正了有些人物姓名的词条没有被应用的问题。 * VNR will check integrity of itself on the startup. It will warn you if it notices certain files are missing. This could happen when, for example, vnrcli.dll or pydasm.pyd is quarantined by your anti-virus soft after update. VNR 在启动时会检查自身文件的完整性。当发现问题时,会发出警告。 比如,如果 vnrcli.dll 或者 pydasm.pyd 在 VNR 更新时被你的杀毒软件屏蔽了,那么 VNR 就会发出文件 缺失的警告。

11/7/2013 THU * I wrote a simple script to ease downloading VNR. If you want to re-download VNR, just paste the command below to your Command Prompt, It will automatically set up VNR at the current folder (only works for Windows 7 or above). You don't have to go to Google Code to manually download the zipped installer. @powershell -NoProfile -ExecutionPolicy unrestricted -Command "iex ((newobject net.webclient).DownloadString('http://sakuradite.org/reader.ps1'))" 写了一个简单的安装 VNR 的脚本。 如果你需要安装或重新安装新的 VNR,那么直接把上面的那行@powershell 开头的命令粘贴到 Command Prompt 里执行下就好了。 这个命令会自动在当前的文件夹下设置好 VNR 的。 这样就不需要到 Google Code 的网页上下载 Installer 来手动安装 VNR 了。 另外,这个脚本采取的通信方式不会被大陆屏蔽。不会出现 Google Code 上的 installer 在大陆可能出 现的卡主的现象。 如果你暂时居住在大陆地区,那么这行命令也许可以帮上忙吧。 注:这个命令仅对 Windows 7 以上的操作系统有效。如果你在使用 Windows XP,那么只好去手动下载 VNR 了。 * NEXTON engine is updated following CaoNiMaGeBi sensei's instructions. The new game engine can extract game characters and work for new games like 「魔王のくせに生イキだっ!2 ~今度は性戦だ!~」. Note: If you are using anti-virus soft, don't forget to re-add VNR's dlls to the whitelist. 在 CaoNiMaGeBi せんせい的指引下更新了 NEXTON 引擎。 新的引擎可以提取人物的名字了。 另外,「魔王のくせに生イキだっ!2 ~今度は性戦だ!~」这样的新游戏可以提取文本了。 注:如果你有安装杀毒软件,不要忘记重新将 VNR 的 dll 加入白名单才好。 11/7/2013 WED * Fix issue that newly added games are not showing up. Thanks for @lambl's report! 修正了新添加的游戏没有能够正确显示游戏信息的问题。 感谢 lambl sama 的报告! 11/3/2013 SUN * Software Update will also update EDICT dictionary. 软件更新会同时更新 EDICT 辞书。 * VNR will update EDICT at most once a month instead of once a day. EDICT 每月最多更新一次。 11/2/2013 SAT * Able to render the translation in EDICT and Shared Dictionary as Furigana. This might be useful if you know 50 音 and are familiar with Japanese syntax, but have difficulties to understand kanji. An example of rendered texts from ChuSinGura is as follows: 【小平太】 deplorable

kyoto and vicinity

okuno

feudal retainer or warrior

big portion 「 残念 ながら とめちまってるようです」

上方

では 奥野 さんが

藩士



大部分

をま

【安兵衛】 「 なら、

kyoto and vicinity vengance same mind search 上方 で 仇討ち の 同志 を 探す のは 難しい

difficult のか……」

You can turn this on in Preferences/Translation. The game story in Game Information will also be translated in this way. 可以直接使用英文辞书中的翻译来作为【振仮名】。在【使用偏好/翻译】中可以开启。 不过,除非你懂得英文,否则并不需要这个功能。 * Able to translate Japanese to ルー語(http://ja.wikipedia.org/wiki/ルー大柴). ルー語 is an intermediate language between Japanese and English. It might be helpful you know basic Japanese but have difficulties to recognize kanji. ルー語 in VNR is similar to lou5 in Perl, except the translation is represented in English instead of 片仮名. You can turn this on in Preferences/Translation. An example is as follows: 日本語: 「その目録に犬の数を記すのを忘れていてな」 ルー語: 「 その catalogue に dog の number を write down の を forget て い て な 」 添加了可以将日语翻译为ルー語(http://ja.wikipedia.org/wiki/ルー大柴)的选项。 ルー語作为日英的过渡性语言,对那些使用语法相似但是不兼容汉字语言(英语,尤其是韩语)的同学, 也许会有些帮助。 * 因为用的人很少,删掉了对有道翻译的支持。 11/1/2013 FRI * Thai is changed to non-Asian language which will share translations with English. The only Asian languages left are Chinese, Japanese, and Korean. 10/31/2013 THU * 从的 JBeijing 的自定义词库中删除了如下词条。感谢 djz せいせ的 efforts! 【好大个的鸭梨】 - い人 = 好人 - い子 = 好孩子 - い虐め = 欺负 - い加減にしなさい = 适可而止 - いん = 好 - いわよ = 可以 - いろ = 在 - いようです = 好 - いよ = 不错哦 - いの = 好 【Goodboyye】 - な = 什 - さ = 接下来 10/28/2013 MON * Add download buttons to the Game Information window which can download all images or YouTube videos (in mp4 format) to the Desktop.

在游戏情报中添加了保存页面上全部画像和 YouTube 動画(编码 mp4)的按钮(不包括中国大陆地区)。 * I added an option to Text Settings which can preserve SPACES in game text. If you want to preserve spaces between words, especially for English games, you can simply toggle that option in Text Settings. Don't forget to change the game language from Japanese to English in Text Settings as well if you want to have VNR to translate English to your own language. This option might also be useful for RPG games such as 神楽道中記. When enabled, VNR will insert spaces between words like 攻撃力、生命値とかの messages。 I plan to add an alternative way for rendering translations for such messages in a way similar to the current Mac-like Growl pop-up notifications. 在文本设定中添加了【保留文本中空格】的选项。 比如,如果你想要保留英文游戏中文本的空格,那么这个选项也许可以帮上忙。 另外,不要忘记在文本设定中将游戏的语言从日语变更为英语。 另外,对于好像「神楽道中記」这样的 RPG 游戏,开启这个选项还会在好像【攻击力】、【生命值】 之类的信息中间插入空格。 因为 RPG 的游戏中这里信息经常是一坨一坨出现的堆满了屏幕,我想,如果我有时间的话, 把这些信息用好像 Mac 上的 Growl 那样弹出 message 的方式来渲染也许会比现在的字幕的方式更好些吧。 * The interval when guest users are allowed to edit shared dictionary is reduced from 15 days to 7 days. Some guest users messed up the anonymous entries in the shared dictionary last week end. I had to manually examine and revert their changes to the database in past 15 days which is really a waste of time. I am thinking to track the IP addresses of anonymous users to prevent them from editing other anonymous entries. If you are relying on the Shared Dictionary, it might be better to get an account instead of using guest account to protect your efforts from being messed up by others. 匿名账户可以编辑共享辞书的时间从 15 天减小到了 7 天。 上周末,有同学大量删除了其他同学 15 天内的匿名词条。我不得不花时间来检查数据库并撤销这些变更。 如果你经常编辑共享辞书,也许可以使用账户登录而不要用 guest。 这样可以防止其他刚刚使用 VNR 不久的匿名用户稀里糊涂的将你的翻译删掉。 10/24/2013 THU * Bugfix while rendering romaji furigana when MSIME is not installed. Note: If you are relying on the Furigana feature in VNR to help read Japanese, it is highly recommended to install Microsoft Japanese IME, whose dictionary could improve the correctness of furigana a lot. You can find whether VNR has detected MSIME in Preferences/Location. 修正了没有安装微软日文输入法时,显示罗马字会有很多错误的问题。 注:如果你在使用 VNR 的振仮名来帮助阅读,那么强烈推荐安装微软日文输入法。 微软日文输入法的字典可以大幅改善日文分词的正确性。 在【使用偏好/位置】中可以看到是否有安装微软日文输入法。 10/23/2013 WED

* Vietnamese and Indonesian languages are categorized as European languages instead of Asian ones. BTW, internally, languages in VNR are categorized as either Asian or non-Asian. Currently, the only Asian languages are: Japanese, Chinese, Korean, and Thai. Vietnamese and Indonesian are used to be treated as Asian. Text processing for Asian and non-Asian languages are very different. - Non-Asian languages will share translation with English, while Asian ones will not. - Characters in Asian language will be transcoded, while non-Asian ones will not. - Character names in Asian language will be escaped, while non-Asian ones will not. - Text to translate to Asian languages will be split into paragraphs; text to translate to non-Asian languages will be split into sentences. - The algorithm to render Asian and non-Asian fonts are different. * Display game characters and their CVs in Game Information. If you have TTS installed, VNR will read the Japanese name you clicked. VNR will also copy the clicked text to the Clipboard. 在游戏情报中会显示人物的名字和 CV 什么的。 如果有安装 TTS,VNR 会读出点击的日文姓名。 另外,VNR 也会自动将点击的日文复制到剪贴板。 * VNR will try to search game character names online, and use the names to correct MeCab's 振仮名 as well as machine translation. Note: Looking up character names for machine translation works for all languages EXCEPT KOREAN AND THAI. Take 「Dies irae」 as an example. 1. You can find "綾瀬 香純(あやせ かすみ)" in Game Information. VNR will automatically translate: - 綾瀬 => Ayase - 香純 => Kasumi - 綾瀬さん => Kasumi-san - 香純ちゃん => Kasumi-chan - 綾瀬香純 => Ayase Kasumi - 綾瀬 香純 => Ayase Kasumi Additionally, it will force MeCab to parse 綾瀬 to あやせ and 香純 to かすみ. Basically, if the character name is like "A B C" or "A・B・C", then VNR will automatically translate "A B C" and combinations of "A" and "C" with the title terms in the Shared Dictionary, UNLESS the following exception happens. 2. There is one exception that VNR will skip the character name if it has only 1 character or contains 片仮名 (but 平仮名 is ok). For example, given 「藤井 蓮(ふじい れん)」, VNR will only translate 藤井 and 藤井 蓮, but will not translate 「蓮」 which only has one character. Similarly, VNR will not translate ラインハルト・ハイドリヒ which contains 片仮名. You can find the automatically detected character names in Game Information. Currently, there is no way to alter or disable the character names. If you don't like the automatically translated names, you have to create an entry in the Shared Dictionary to override the bad character name.

The definitions of character names in the Shared Dictionary have higher priority comparing to the ones in Game Information. VNR 会尝试搜索游戏中人物的姓名,来改善日文分词和机器翻译的质量。 以「Dies irae」为例。 1. 在【游戏情报】中可以看到名为"綾瀬 香純(あやせ かすみ)"的人物。 那么,VNR 会自动做出如下翻译: - 綾瀬 => 綾瀬 - 香純 => 香純 - 綾瀬さん => 綾瀬桑 - 香純ちゃん => 香純酱 - 綾瀬香純 => 綾瀬香純 - 綾瀬 香純 => 綾瀬 香純 另外,VNR 在分词时还会强迫 MeCab 来将「綾瀬」标注为「あやせ」,「香純」标注为「かすみ」。 基本上,如果人物的姓名好像"A B C"或者"A・B・C",那么 VNR 会自动翻译"A B C"以及 "A"、"C"和共享辞书中人物称谓搭配后的各种组合,除非以下特例发生。 2. 特例是:VNR 不会翻译仅包含一个字符的名字,也不会翻译包含片仮名 的名字(but 平仮名 is ok). 比如,给定「藤井 蓮(ふじい れん)」,那么 VNR 会翻译「藤井」和「藤井蓮」,但是不会自动翻译 「蓮」,因为后者只包含一个字符。 同理,VNR 也不会自动翻译包含了片仮名的「ラインハルト・ハイドリヒ」。 在【游戏情报】中可以看到自动翻译的游戏人物的姓名。 不过,现在还不可以手动编辑和修改那些姓名。 如果你不喜欢 VNR 自动翻译的人物的名字,那么你可以在【共享辞书】中添加一个人物词条 来覆盖掉 VNR 自动生成的人物翻译。 【共享辞书】中的人物词条总是比自动生成的翻译有更高的优先级。 注:VNR 会到 getchu 上去查询人物的姓名。但是,我不清楚在世界上的极少数地方是否可以正常的访问 getchu。 如果 getchu 被屏蔽,那么可能会造成 VNR 在打开游戏后卡主很久才会显示翻译。 如果你在打开【情报】页面后,VNR 要卡十几秒钟才会显示,那么很可能是 getchu 被屏蔽了。 如果你恰好居住在那极少数的地方,并且发现 getchu 会被那个地方屏蔽,那么也许可以向我抱怨。 10/18/2013 FRI * Bugfix for WolfRPG engine. Games like othErs should work without /H code now. Thanks for @asdzx257 sama's report! 修正了 WolfRPG 引擎。othErs 的游戏不再需要特殊码了。 感谢@asdzx257 sama 的报告! 10/16/2013 WED * Show keywords on Game Board. Game Board 可以按关键词筛选游戏。 10/13/2013 SUN * Add game engine for RPG maker. The text threads are marked as WolfRPG. 为 Wolf RPG 添加了游戏引擎。 * VNR will popup machine translation as tooltip for game titles, story, etc. in Game Information. 游戏情报中的标题呀简介什么的日文的旁边会弹出机翻的 tooltip。 10/12/2013 SAT * 更新了@好大个的鸭梨せんせい编辑的 JBeijing 的词库。 * Modify Bruns engine so that it can recognize 「陵辱催眠姦」.

btw., instead of checking "bruns.exe", VNR will check existence of "args.txt" to identify Bruns games. 修正了 Bruns 引擎。可以识别好像「陵辱催眠姦」这样的游戏了。 * It seems that the option of keeping all scenario text threads in Text Settings is misused for a large amount of games. Now, VNR will popup following WARNING if you are trying to turn on that option. Are you sure to keep all scenario text threads? You might NOT want to enable this unless the ADDRESS OF TEXT (the gray the number) varies each time you launch the game! WARNING: For example, if there are several threads marked as KiriKiri, when you turn this option on, VNR will translate ALL KIRIKIRI TEXTS. This could result in A LARGE AMOUNT OF GARBAGE, which is NOT what you want! 看起来【文本设定】中【保留所有对话文本】被大量的错误使用了。 现在,如果你尝试勾选那个选项的话,VNR 将会弹出下面这样的警告: 你真的要保留所有对话文本吗? 你不会想这样做,除非文本的地址(就是旁边的灰色数字) 每次启动都会发生变化。 警告: 比如说,如果文本设定中显示有很多很多个 KiriKiri 的文本。 那么,如果你打开这个选项,VNR 将会翻译全部 KiriKiri 的文本。 这样将会产生大量的垃圾文本,而这不会是你想要达到的! 10/11/2013 FRI * Clicking sentences in Game Information will trigger TTS to read the text out. Double-clicking words in Game Information will pop up translation from EDICT and EPWING dictionaries.. 对【游戏情报】中的日文,单击时会用 TTS 读出鼠标下的句子,双击时会弹出 EDICT 和 EPWING 辞书中的翻译。 10/10/2013 THU * Japanese text in Game Information is also parsed with MeCab and MSIME the same way as game text. 对【游戏情报】中的日文进行分词。 10/6/2013 SUN * Updater is slightly changed. 变更了更新方式,在世界上的某些地方不会被屏蔽了。 * Updater can run on Wine now. 软件更新可以通过 Wine 在 Mac 上运行了。 10/4/2013 FRI * Bugfix for BALDRSKY ZERO's game engine. Thanks so much for @ok123 sama's help! 修正了 VNR 可能会让 BALDRSKY ZERO 崩溃的问题。之前带来不便,非常抱歉! 非常感谢 ok123 sama 的帮助! 10/3/2013 THU * Display sample images, story, and reviews from Amazon.co.jp in Game Information.

游戏情报下面会显示 Amazon 上的图片,日文故事,和评论什么的。 * 当 VNR 的语言是中文时,会将共享辞书简体中文的人物姓名转换为正体中文。 感谢@天與楓 sama 的建议! * Add game engine for BALDRSKY ZERO. You can find the correct thread marked as BALDR@ok123 in Text Settings. Thanks so much for @ok123 sensei's /H code! 为 BALDRSKY ZERO 添加了游戏引擎。 在【文本设定】中选择标记为 BALDR@ok123 的文本就好了呢。 非常感谢@ok123 せんせい的特殊码! btw, the new game engine for BDZ is implemented in Python using pydbg instead of using C++ in ITH engine dll. I am planning to gradually move existing game engines in ITH to Python side and finally get rid of the C++ ITH engine from VNR. It will be much more stable and flexible to manipulate game engines out of game in Python instead of within the game like ITH. Additionally, it will allow me to "scriptify" the logic of the game engines. I am planning to create some kind of sharing mechanism so that everyone can easily add new game engines to VNR. The mechanism might be similar to the current Shared Dictionary except that the shared things will be Python scripts instead of dictionary entries. I feel describing a game engine logic in Python is extremely simple. As an example, my Python script to define BALDR engine is as follows. I feel it might be a better way to preserve hooks than using plain /H code since a game engine can identify a bunch of similar games and it can expose the logic behind the /H code. import os from sakurakit import skwin name = skwin.get_process_name(pid) if name == 'bsz.exe': # BALDRSKY ZERO from gamedebugger import GameDebugger dbg = GameDebugger(pid) if dbg.active(): # See (ok123): http://9baka.com/read.php?tid=411756 pattern = 0x90, 0xff, 0x50, 0x3c, 0x83, 0xc4, 0x20, 0x8b, 0x45, 0xec addr = dbg.searchbytes(pattern) if addr > 0: code = "/HQN4@%x" % addr from texthook import texthook texthook.global_().addHook(code, name="BALDR") 10/2/2013 WED * Enable SEH to reduce the change that ITH gets crashed. * Ensure that Python will recompile byte code after updating VNR. 确保每次更新 VNR 后 Python 会重新编译代码来避免 VNR 在更新后崩溃。 * Fix the issue that VNR cannot extract correct text from「Magical Marriage Lunatics」. Thanks a lot for @w774908117 sama's report 修正了「Magical Marriage Lunatics」无法正确提取文本的问题。 非常感谢@w774908117 sama 的报告!

* VNR will extract text from Lstr functions if and only if it cannot find a game engine for the game. I made this decision as I feel Lstr threads usually produce rubbish text than being helpful, If the game already has an engine, texts from Lstr are useless. Also, Hijacking Lstr may crash ITH in games like「Magical Marriage Lunatics」. 仅且仅当 VNR 无法识别游戏引擎时,才会尝试去从 Lstr 的函数提取文本。 我做出这个决定,是因为考虑到 Lstr 的函数在绝大多数情况下生成的都是垃圾文本。 如果已经为游戏匹配到了引擎,就没有必要再从 Lstr 函数那里提取文本了。 另外,从 Lstr 函数提取文本还可能会让「Magical Marriage Lunatics」之类的游戏崩溃掉。 10/1/2013 TUE * Fix infinite repetition elimination algorithm so that VNR can extract text from 「Dies irae」. 修正了 VNR 无法从正确处理「Dies irae」中无限重复文本的问题。 * Bugfix for rUGP game engine * The terms for TTS and character names in the Shared Dictionary will also be used to improve the quality to unparse Japanese text to furigana. Here's the description added to the help page: Improving Unparsing Furigana VNR could use MeCab and MS Japanese IME to unparse Japanese text to furigana. Non-regular-expression terms for TTS and character names will also be used to improve unparsing furigana. Their patterns will be used to split Japanese text. Additionally, the translation of TTS terms will be used to replace the furigana from MeCab or MS Japanese IME. VNR 会利用共享辞书中的人物和语音的词条来改善日文分词的质量。 下面是在帮助中的描述: 改善日文分词 VNR 会用 MeCab 和微软日文输入法来为日文分词。 非正则表达的人物姓名和语音合成的词条还会被用来改善日文分词的质量。 它们的匹配的文本会被用来分割日文。 此外,语音合成词条的替换文本还会取代来自 MeCab 或者微软日文输入法的振仮名。 * Add Artemis@CaoNiMaGeBi engine. It covers a large amount of games (ohp: http://www.ies-net.com/). Cite @CaoNiMaGeBi's original post: RECENT GAMES: [130927]妹スパイラル [130927]サムライホルモン [131025]ツゴウノイイ家族 CLIENT ORGANIZAIONS: CROWD D:drive. Hands-Aid Corporation iMel 株式会社 SHANNON SkyFish

SNACK-FACTORY team flap Zodiac くらむちゃうだ~ まかろんソフト アイディアファクトリー株式会社 カラクリズム 合资会社ファーストリーム 有限会社ウルクスへブン 有限会社ロータス 株式会社 CUCURI 株式会社アバン 株式会社インタラクティブブレインズ 株式会社ウィンディール 株式会社エヴァンジェ 株式会社ポニーキャニオン 株式会社大福エンターテインメント 9/30/2013 MON * Prevent VNR from hooking to Windows Media Player * Bugfix for Waffle and Nitro+ game engine * Fix the bug for adding/removing games in SpringBoard * Show visit count in Game Board * It seems the repetition filters in Text Settings are over-used. Now, VNR will pop up a warning as follows if you are trying to turn on global repetition elimination in Text Settings: Are you sure to turn on repetition filter? You might NOT want to turn this on unless the game text is FULL OF repeats. Few games really need this option. This option only serves to eliminate repetition. It has NOTHING to do with finding NEW game text. WARNING: If the game do NOT have repetition but you turn it on, it might significantly downgrade the translation quality. If only some of the game text repeat while some not, it is better to add some regular expressions to Shared Dictionary than turning on global repetition filters here. 看起来很多根本不需要【去除重复】的游戏被在【文本设定】中打开了去重复的选项。 现在,VNR 会弹出如下警告,当你尝试在文本设定中打开除去有限或者无限重复的选项时。 你真的决定要过滤文本中的重复吗? 除非文本中真的布满了重复,否则千万不要打开这个选项。 极少有游戏真的需要开启全局过滤重复。 这个选项仅仅会除去既有的文本中的重复。 如果文本压根就不正确,那么这个选项丝毫帮不上忙。 警告:如果提取的文本本身并没有重复,而你却打开了这个选项, 那么它很可能会严重的降低文本翻译的质量。

如果文本仅仅只有一部分有重复而一部分没有, 那么最好通过向共享辞书添加正则表达式来去除重复, 而不要在这里打开全局的重复过滤。 If you find repetition filters are turned on in Text Settings, you might consider turning them off which might improve translation quality. 如果你发现【文本设定】中有关重复的选项被打开了,那么你可以考虑将它关闭。 这样也许可以改善机器翻译的质量。 9/29/2013 SUN * Spring Board filter will not show unmatched games. Thanks for @lambl sama's suggestions. 修改了下 SpringBoard 对游戏的查找。感谢 lambl sama 的建议! * Debug ITH extensively. It took me a week to debug ITH on Mac. Several bugs were fixed on the way. * Rewrite ITH so that it can work on wine. I only tested VNR on my MacBook, but I believe it would work on Linux as well. Some screen shots are as follows: Normal window with manual/machine/online translations http://sakuradite.com/images/screenshots/mac1.jpg Full screen mode and EPWING http://sakuradite.com/images/screenshots/mac2.jpg Preferences and text settings http://sakuradite.com/images/screenshots/mac3.jpg Shared dictionary and manual translation http://sakuradite.com/images/screenshots/mac4.jpg SpringBoard and game information http://sakuradite.com/images/screenshots/mac5.jpg Currently, support for Wine on Mac is at primitive stage. I am not sure if I should put the entire VNR on wine, or to put wine on native Python/Qt in the future. And I don't know exactly which features are broken on wine. If you are interested, you could try getting wine and run VNR on it. Following is a summary of working/broken functionalities that I tested on Mac OS X 10.8.5 using Wine 1.7. + Tested games that work out of box - CROSS CHANNEL (English version) - ChuSinGura47+1 - レミニセンス - ハピメア + Features that work out-of-box - General hooks ending with A or W, game engines, and /H code - Online machine translation such as Baidu - Offline translators like JBeijing - Manual subtitles and comments - Shared database of game profiles

-

Shared dictionary MeCab, EDICT, and EPWING Flashy GUI including Growl, SpringBoard and GameBoard Translate window text and menu Game wizard and game detection Locale changing Wine could be launched with Japanese locale Apps including AppLocale or NTLEA are not needed and are disabled

+ Features that partially work with issues - Full screen mode Stretching game window works out-of-box. But changing screen resolution does not work well. - Update Updater on Wine does not work. If you have MacPorts installed, you can install Mecurial using port install mercurial And then, execute "Library/Debug Update (Mac).sh" to perform update. + Broken features - Offline TTS such as VoiceText Misaki - Looking up Microsoft Japanese IME's dictionary - Drag-drop game to SpringBoard + Crash - Injecting game might crash it - Closing VNR before closing game might crash the game You might have to close the game before closing VNR. You will need Wine and some knowledge of unix command line to set up VNR on

Mac.

I am not sure if I should package and distribute pre-configured Wine binary. Wine is kind of too large to distribute (up to 1GB), and it might violate copyright if I distribute Microsoft binaries together like d3dx. I think I might write some scripts to simplify installing VNR for Mac in the future. Currently, here's what I did to make VNR work on Wine manually. 1. Get Wine from either Darwine or MacPorts Option 1: - Download Darwine from: http://sourceforge.net/projects/darwine/ - You don't have to install Wine, which is be broken anyway. Just drag-drop Wine.app to your /Applications folder. You can find Wine.app in a HIDDEN folder in the downloaded Darwine dmg Option 2: - Install Xcode from AppStore - Install MacPorts from http://www.macports.org/ - Execute: port install wine 2. Install msvcrt and DirectX 9 from winetricks Get winetricks here: http://wiki.winehq.org/winetricks Or from MacPorts: port install winetricks Then execute the following command in terminal: winetricks vcrun2008 winetricks vcrun2010 winetricks d3dx9

3. Installing windows fronts // 安装 Windows 的字体 Copy fonts from you Windows/Fonts to ~/.wine/driver_c/windows/fonts 4. Get VNR from http://sakuradite.org/reader.7z Then, you can launch "Library/VNR for Mac (pre-alpha).sh" Or manually execute following commands: export LC_ALL=ja_JP.UTF-8 wine "Visual Novel Reader.exe" If you have got questions or issues or suggestions, feel free to let me know! btw, I figured out how to detect spaces in game text by accident. This will solve the missing-space issue for most English games like「裸執 事」and「your diary」. I will try to add this to VNR in two weeks when I have time. VNR 可以在 Wine 上运行了。Mac 上的一些截图如下: 一般窗口,翻译来自人工字幕、百度和 JBeijing http://sakuradite.com/images/screenshots/mac1.jpg 全屏模式和 EPWING 辞书 http://sakuradite.com/images/screenshots/mac2.jpg 使用偏好和文本设定 http://sakuradite.com/images/screenshots/mac3.jpg 共享辞书和人工翻译 http://sakuradite.com/images/screenshots/mac4.jpg SpringBoard 和游戏情报 http://sakuradite.com/images/screenshots/mac5.jpg 现在,VNR 对 Mac 的支持还很不稳定。一些功能可以工作,一些不能。 如果你很希望能在 Mac 上使用,那么也许可以下载下 Wine,然后把你在 Windows 下的 VNR 呀 JBeijng 呀游戏呀什么的拷贝到 Mac 上就好了呢。 下面是我在 Mac OS X 10.8.5 上用 Wine 1.7 测试的可以和暂时不可以工作的功能。 + 测试可以正常工作的游戏 - CROSS CHANNEL (English version) - ChuSinGura47+1 - レミニセンス - ハピメア + 正常工作的功能 - 文本提取、游戏引擎和特殊码 - 在线翻译比如 Baidu - 离线翻译比如 JBeijing - 人工翻译和弹幕 - 共享的游戏设定数据 - 共享辞书 - 日文分词和 EPWING 辞书 - VNR 的全部图形界面 - 翻译窗口文本 - 游戏向导和游戏侦测 - 更改日文编码 其实 Wine 是可以直接用日文编码打开的。 AppLocale 呀 NTLEA 什么的都不需要了。VNR 在 Mac 上会自动隐藏这些选项。

+ 部分工作的功能 - 全屏模式 拉伸窗口实现全屏可以工作。改变分辨率全屏不能正常工作。 - 软件更新 Windows 下的 Update 不能工作。 更新 VNR 可以先从 MacPorts 安装 Mercurial: port install mercurial 然后执行 Library 下的 Debug Update (Mac).sh 来更新。 + 暂时无法工作的功能 - 离线 TTS 比如 VoiceText Misaki - 查询微软日文输入法的辞书 - 拖动游戏到 SpringBoard 来添加游戏 + 崩溃的问题 - 打开游戏时,ITH 有时会让游戏崩溃 - 先关闭 VNR,再关闭游戏可能会让游戏崩溃。 暂时只好先关闭游戏,再关闭 VNR,就不会出现崩溃的问题了。 在 Mac 下使用 VNR 需要 Wine 和一些 Unix 命令行的知识。暂时只能手工完成。步骤如下: 1. 从 Darwine 或者 MacPorts 得到 Wine 选项 1: - 从这里下载 Darwine: http://sourceforge.net/projects/darwine/ - 打开下载的 dmg 文件,在其中的一个*隐藏文件夹*中可以找到 Wine.app。 直接把 Wine.app 拖动到/Applications 下就好了 选项 2: - 从 AppStore 安装 Xcode - 从这里安装 MacPorts:http://www.macports.org/ - 执行如下命令安装 wine port install wine 2. 通过 winetricks 安装 msvcrt 和 DirectX 从这里下载 winetricks: http://wiki.winehq.org/winetricks 或者通过本 MacPorts 安装: port install winetricks 然后执行如下命令: winetricks vcrun2008 winetricks vcrun2010 winetricks d3dx9 3. 安装 Windows 的字体 把你的 Windows7 或者 XP 中的 Windows/Fonts 复制到~/.wine/driver_c/windows/fonts 4. 下载 VNR:http://sakuradite.org/reader.7z 之后,执行"Library/VNR for Mac (pre-alpha).sh"就好了。 或者,也可以这样手动打开 VNR: export LC_ALL=ja_JP.UTF-8 wine "Visual Novel Reader.exe" btw,我找到了提取英文化 galgame 的中空格的方法。 这样绝大部分英化游戏就会不出现丢失空格的问题了。 我会在这两周加上这个功能的,如果有时间的话。 9/27/2013 FRI * Debug Update 会更新 Changes.txt。 注:如果你居住在大陆地区,那么也许只能用 Library 下的 Debug Update 来更新 VNR 的。

9/21/2013 SAT * Display twitter updates from makers and users in Game Info if you are not living in Mainland China. * Game Board performance improved. 改进了 Game Board 的速度。 * Fixed a severe bug when applying translation for character names. Thanks a lot for @f841202 and @lambl sama's report! 修正了人物词条会出现乱码的问题。 非常感谢@f841202 和@lambl 的报告! 9/19/2013 THU * Distinguish 抜きゲー and 非抜きゲー. 区分纯爱作和拔作。 * Show data count and 楽しい時間 on ErogameScape. 显示批評空間上的得点数和游戏中有趣部分的时间什么的。 9/17/2013 TUE * Make sure that adding/removing bad /H code will not crash on Windows Vista and later. On Windows XP, ITH will still crash with a C00005 exception and you have to manually restart the apps. 确保在添加或删除错误的特殊码时不会崩溃。 这个仅对 Windows Vista 和之后有效。 在 Windows XP,ITH 仍旧会和以前一样会抛出 C00005 的异常并崩溃。 9/16/2013 MON * Add a new game engine to ITH for games from a-unicorn/げーせん 18 「三極姫」and「戦極姫」do notreceive require /H code to work any more. The correct text thread is marked as Gesen18@CaoNiMaGeBi crediting to @CaoNiMaGeBi daisensei. 为げーせん 18 的游戏添加了文本提取的引擎。 「三極姫」和「戦極姫」不再需要特殊码了。 文本设定中正确的文本会标记为 Gesen18@CaoNiMaGeBi 来纪念@CaoNiMaGeBi 大先生。 9/15/2013 SUN * Add an Otome filter to Game Board to find 女性向け games. 在 Game Board 中可以筛选女性向的游戏。 * Display median scores from 批評空間 in Game Board. 在 Game Board 会显示游戏在批評空間上的分数。 * Access to 批評空間 is restored. 恢复了对批評空間的查询。 如果你暂时居住中国大陆地区,那么需要在【使用偏好/功能】中打开大陆地区的选项。 9/14/2013 SAT * Handling exceptions in ITH to make sure that ITH's game engines will not crash the game. This might impact a large number of games. Games like 「隣りのぷ~さん」could work now. Thanks for @yuan2k sama's report!

修正了 ITH 的游戏引擎可能会让游戏崩溃的问题。这个大概会影响到很多游戏吧。 非常感谢@yuan2k sama 的报告! * Distinguish different anonymous users using randomized avatars. If you did not upload an avatar, VNR will also assign a random one for you. 用随机的头像来区分不同的 guest。 如果你并没有上传头像,那么 VNR 也会为你随机指定一个。 * The "Game-specific" toggle in the Shared Dictionary is renamed to "Seriesspecific". "Series-specific" terms will not only be enabled in the specified games, but also in the games that fall in the same "series". For example, BUNNYBLACK, BUNNYBLACK2, and BUNNYBLACK3 will share the same terms automatically as they are in the same series of "BUNNYBLACK". You don't have to, say, clone your existing game-specific character names for FD any more. You can find the game's series in Game Information. You can find the games in the same series in Game Board. Currently, VNR is lacking an interface to manually alter the "series", though. Thanks for @djz020815 sensei's suggestion! 共享辞书中【游戏固有】的选项被改为【系列专用】了。 【系列专用】的词条不但会对选定的游戏有效,还会对在相同“系列”中的前作呀 FD 什么的也有效。 比如:BUNNYBLACK,BUNNYBLACK2,和 BUNNYBLACK3 之间会自动共享词条翻译。 你不再需要,比如说,将原作中的人物姓名的词条为 FD 再克隆一遍了。 游戏的“系列”可以在【游戏情报】中看到。 相同系列的不同游戏可以在【Game Board】中查找到。 不过,现在 VNR 还没有 interface 可以手动编辑游戏的“系列”。 感谢@djz020815 sensei 的建议! 9/13/2013 FRI * Update Baidu Chinese online translator. 修正了百度在线翻译。 注:由于百度修改了翻译的 API,造成之前版本的 VNR 无法再正常使用百度翻译了。 带来不便,非常抱歉! 9/11/2013 WED * Display game series in Game Board. 如果游戏有前作或者 FD,在 GameBoard 中会显示这一系列的标题。 * Add Youdao.com Chinese online translation service support. 添加了有道在线中文翻译,支持日中、英中、俄中等。 在【使用偏好/翻译】中可以打开。 btw, 有时会看到有同学在使用微软的日中翻译(默认是绿色的)。 其实,VNR 选择微软为默认的翻译器并不是因为微软的机翻质量有多好,而是因为微软 支持包括泰文、越南文这些小语种在内的全部语言,而又不会被大陆政府屏蔽。 这样,来自世界各地的同学就都可以使用了。 不过,我觉得微软的日中翻译其实蛮渣的。如果你在使用的机翻只有绿色的微软一个, 那么,也许可以尝试下在【使用偏好】中打开百度、有道什么的,也许会比微软好些吧。 9/10/2013 TUE * Access to ErogameScape is disabled since ErogameScape is down.

由于エロゲ批評空間消失了,暂时禁止了从批評空間查询游戏。 9/8/2013 SUN * Add common hook functions lstrlenA and lstrlenW to ITH. Games like「神学校」from PIL/SLASH should work without /H code now. 向 ITH 添加了对 lstrlenA 和 lstrlenW 的 hook。 PLI/SLASH 的「神学校」可以正常提取文本。 * Make sure that VNR will not go out-of-screen after the screen resolution is changed. * VNR no longer launches games in Japan/Tokyo time zone by default. You can toggle per-game time zone settings by clicking Edit button on the Spring Board. You can also enable the previous time zone hack globally in Preferences/Launch. VNR 默认在启动游戏时不再变更本地时区为东京时间。 你可以在 SpringBoard 中点击【编辑】来调整每个游戏是否用东京时间打开。 你也可以在【使用偏好/启动】中来调整默认是否变更时区。 * VNR will speak the current game text using TTS if you click the text box using middle button. This shortcut might be helpful if automatic TTS cannot catch the character names. 鼠标中键单击字幕或者背景阴影的话,VNR 会用 TTS 读出当前的日文文本。 如果自动语音合成无法识别人物姓名的话,这个快捷键也许缓解下不便。 9/7/2013 SAT * Add a new game engine for games from ネクストン. ネクストングループ owns several game brands including BaseSon, Liquid, Nomad, Luxury, SCORE, and recent cinematograph. The text threads are marked as NEXTON@CaoNiMaGeBi crediting to @CaoNiMaGeBi. Note: NEXTON games do not require /H code to work any more. But you have to manually adjust the text threads from HCode to CaoNiMaGeBi. For example, if you are playing recent「イノセントバレット」、「アクマでオシオキっ」 or 「恋せよ!!妹番長」, please open Text Settings, click the game window, and then click the "dialog" button above the NEXTON@CaoNiMaGeBi thread. 为ネクストン的游戏添加了新的游戏引擎。 ネクストングループ拥有包括 BaseSon、Liquid、Luxury、Nomad、SCORE 以及最近的 cinematograph 等众多 brand。 新的文本命名为 NEXTON@CaoNiMaGeBi 来 credit 它的发现者@CaoNiMaGeBi。 注:NEXTON 的游戏不再需要特殊码。 但是,如果你已经为游戏添加了特殊码,那么需要在文本设定中手动将特殊码变更为 CaoNiMaGeBi。 比如,如果你在玩最近发售的「イノセントバレット」、「アクマでオシオキっ」 或是「恋せよ!!妹番長」,那么请打开【文本设定】,点击几下游戏,然后在 标记为 NEXTON@CaoNiMaGeBi 的文本旁边点击【对白】并【保存】。 9/5/2013 THU * I added a new type of terms for helping translate Japanese titles. The descriptions in the Help of Shared Dictionary are as follows: The titles can be specified using title terms.

It's pattern must matches the text immediately following a Japanese name. For example, if you define a chara term to translate 「ヴァイス」 to "Weiss", and a title term 「将軍」 as "-general", then VNR will try to translate 「ヴァイス将軍」 to "Weiss-general". Note: To reduce the time to process large number of names X titles, VNR internally will compile all names and titles into a regular expression. As trade-off, there are certain limitations for describing names and terms using regular expressions. When regular expression is enabled, "|" (the "or" operator) and captures like "\1" cannot be used, or it will mess up your name translation. 在共享辞书中添加了用来翻译称谓的词条。帮助中的描述如下: 人物的称谓可以使用称谓词条来定义。 称谓词条的匹配文本会用来描述姓名后面日文。 比如,如果你定义了从「ヴァイス」到"Weiss"的人物词条,以及「殿」到"大人"的称谓词条, 那么 VNR 将会把「ヴァイス殿」翻译为"Weiss 大人"。 注: 为了缓解大量人物姓名×称谓的处理时间,VNR 在内部会将全部姓名和称谓编译为一个正则表达式。 但是这样做的代价是人物词条在使用正则表达时会有一些限制: "|"(“或”运算符)和"\1"那样的引用是不能使用的,否则它们会将你的姓名词条搞乱的。 9/3/2013 TUE * I removed flashy animations in Game Board. Since there are so many games, removing animations will reduce navigation time. 删掉了 Game Board 中的动画效果,以便于让搜索什么的快一些。 9/2/2013 MON * VNR will hide certain tool tips in full screen mode. 切换为全屏模式后,VNR 会隐藏部分 tooltip。 * Add a new type of terms to Shared Dictionary for translate character names. The descriptions from the Help page are as follows. Character Name Terms You can identify your translations as Japanese names. If your language is an European language, it is similar to Japanese terms. Otherwise, if your language is an Asian language, it is similar to Escaped

terms.

The difference is that VNR will try to translate titles around character

names.

For example, if you define a term to translate 「海斗」 to "Kaido", then VNR will also try to translate 「海斗ちゃん」 to "Kaido-chan" and 「海斗さま」 to "Kaido-sama", etc. 在共享辞书中添加了新类型的词条用来专门翻译人物的姓名。 帮助中的有关描述如下: 人物詞條 你可以將你的翻譯指定為人物的姓名。 如果詞條的語言是歐洲的語言,那麼這個詞條會和日文詞條很相似。 如果詞條的語言是亞洲的語言,那麼這個詞條會和轉義詞條很相似。

唯一的區別是 VNR 會嘗試去翻譯人物附近的稱謂。 比如,如果你定義了從「海斗」到"海斗"的翻譯。 那麼 VNR 將會把「海斗ちゃん」翻譯為"海斗醬",將「海斗さま」翻譯為"海斗撒嘛",之類的。 Note: Currently, the titles are hard-coded within VNR, as follows. It only has English/Chinese translations, and there is no way to modify the titles. I will add interface to allow modifying titles later. 注:人物的称谓暂时写死在了 VNR 内部,不可以更改。当前的定义如下。 TR_TITLES_EN = { u"さん" : "-san", u"さぁん" : "-san", u"さーん" : "-san", u"さ~ん" : "-san", u"様" : "-sama", u"さま" : "-sama", u"さーま" : "-sama", u"さーまー" : "-sama", u"さ~ま" : "-sama", u"君" : "-kun", u"くん" : "-kun", u"くーん" : "-kun", u"く~ん" : "-kun", u"殿" : "-dono", u"ちゃん" : "-chan", u"ちゃーん" : "-chan", u"ちゃ~ん" : "-chan", u"しゃん" : "-shan", u"ちん" : "-chin", u"ち" : "-chi", u"っち" : "-chi", u"たん" : "-tan", u"たーん" : "-tan", u"た~ん" : "-tan", u"先生" : "-sensei", u"せんせい" : "-sensei", u"せんせ" : "-sensei", u"せんせー" : "-sensei", u"せんせ~" : "-sensei", u"センセイ" : "-sensei", u"センセ" : "-sensei", u"センセー" : "-sensei", u"センセ~" : "-sensei", u"先輩" : "-senpai", u"せんぱい" : "-senpai", u"センパイ" : "-senpai",

u"兄" : "-ni", u"兄ちゃん" : "-nichan", u"兄様" : "-nisama", u"兄さま" : "-nisama", u"兄さん" : "-nisan", u"兄貴" : "-aniki", u"の兄貴" : "-aniki", u"姉" : "-ne", u"姉ちゃん" : "-nechan", u"姉様" : "-nesama", u"姉さま" : "-nesama", u"姉さん" : "-nesan", u"お姉様" : "-onesama", u"お姉さま" : "-onesan",

}

u"お嬢様" : "-sama", u"お嬢さま" : "-sama",

TR_TITLES_ZH = { u"さん" : u"桑", u"さぁん" : u"桑", u"さーん" : u"桑", u"さ~ん" : u"桑", u"様" : u"撒嘛", u"さま" : u"撒嘛", u"さーま" : u"撒嘛", u"さーまー" : u"撒嘛", u"さ~ま" : u"撒嘛", u"殿" : u"殿下", u"君" : u"君", u"くん" : u"君", u"くーん" : u"君", u"く~ん" : u"君", u"ちゃん" : u"酱", u"ちゃーん" : u"酱", u"ちゃ~ん" : u"酱", u"しゃん" : u"香", u"ちん" : u"亲", u"ち" : u"亲", u"っち" : u"亲", u"たん" : u"糖", u"たーん" : u"糖", u"た~ん" : u"糖", u"先生" : u"森賽", u"せんせい" : u"森賽", u"せんせ" : u"森賽", u"せんせー" : u"森賽",

u"せんせ~" u"センセイ" u"センセ" : u"センセー" u"センセ~"

: u"森賽", : u"森賽", u"森賽", : u"森賽", : u"森賽",

u"先輩" : u"先輩", u"せんぱい" : u"先輩", u"センパイ" : u"先輩", u"兄" : u"哥哥", u"兄ちゃん" : u"泥酱", u"兄さん" : u"泥桑", u"兄様" : u"泥撒嘛", u"兄さま" : u"泥撒嘛", u"兄貴" : u"大哥", u"の兄貴" : u"大哥", u"姉" : u"姐", u"姉ちゃん" : u"捏酱", u"姉さん" : u"捏桑", u"姉様" : u"捏撒嘛", u"姉さま" : u"捏撒嘛", u"お姉様" : u"哦捏撒嘛", u"お姉さま" : u"哦捏撒嘛",

}

u"お嬢様" : u"大小姐", u"お嬢さま" : u"大小姐",

9/1/2013 SUN * Automatically remove repetition text for games like 「はぴとら」 and Fault. I am not sure which game could affected. If you have turned on finite repetition removal in Text Settings, I think you could try turning it off now. 自动移除部分游戏中重复的文本。 我不太清楚有多少游戏会受到影响。如果你有开启移除有限重复的选项,你也许可以尝试 将选项关闭了(如果关闭后不再有重复的话)。 如果不关闭的话,可能会造成比如「ぱぱ」(爸爸)被过滤成「ぱ」(啪)。 * I added some text to the help of Shared Dictionary to explain how to use it to eliminate finite repetition in a more accurate way, as follows. As it is kind of complicated, you can ignore the following if you don't have any experience in programming or regular expression. Repetition Elimination There are options in Text Settings for removing repeating text. But the granularity is so coarse that you cannot control how exactly to remove repetitions. It might remove more things than what you want. If the default repetition filters do not work well, you can use the regular expression in Shared Dictionary for fine-grain finite repetition removal. For example, in 「天色*アイルノーツ」, the original game text is like

"CharaCharaChara「Dialog」", where the character names at the beginning repeat for exact 3 times. We want to to change it to "Chara「Dialog」". The default repetition filter will remove repeats in not only Chara, but also Dialog, which is not what we want. So, it will be better to add the following term to rewrite source text: * Pattern: ^(.+)\1\1 * Replacement: \1 In English, it means that "to replace whatever is repeating for 3 times at the beginning of the sentence with the repeated text". Here, ".+" means whatever. "(.+)" means to let whatever = "\1". "(.+)\1" means whatever has repeated twice. "(.+)\1\1" means whatever has repeated three times. The "^" sign means it only happens at the beginning of a sentence. Actually, the built-in finite repetition filter in Text Settings is achieved using similar regular expressions. It is similar to the following logic: * Pattern: (.+)\1+ * Replacement: \1 In English, it means to remove whatever has repeated for more than one times. It might sound dangerous. However, for example, "AAABAAAB" will become "AAAB" instead of "ABAB". This is because the regular expression will try to match maximum number of repeated characters, which will be "AAAB" instead of "A". 我在【共享辞书】的帮助中添加了一些关于如何通过正则表达式来移除重复文字的描述。 因为过程比较复杂,如果大家没有一定的编程或者使用正则表达式的经验,那么就无视下面这些文字吧! 過濾重复 在【文本設定】中有一些可以過濾重复字符的選項。 但是,過濾的粒度很粗。比如,我們不能夠精確的控制到底如何過濾。它可能會過濾掉過多的重复。 如果默認的過濾器工作的並不好,那麼也許可以使用共享辭書和正則表達來實現更精確的過濾。 比如,在「天色*アイルノーツ」中,日文的原文會是好像"人物人物人物「對話」"。 人物的名字會重复正好 3 次。 我們希望將原文改寫為"人物「對話」"。 如果打開【文本設定】中默認的過濾器,那麼它不但會過濾掉人物中的重复,還可能會過濾掉對話中的重 复。 而這並不是我們希望看到的。 這時,可以在共享辭書中添加好像如下這樣的詞條: * 匹配的文本: ^(.+)\1\1 * 替換的文本: \1 用中文來說,它的含義是"替換句子開始出現的重复了 3 次的任何文本為重复的文本"。 這裡,".+"表示任何文本。 "(.+)"表示指定"\1"來表示任何文本。 "(.+)\1"表示這個\1 的文本重复了 1 次,一共出現了 2 次。 "(.+)\1\1"表示這個\1 的文本重复了 2 次,一共出現了 3 次。

開頭的"^"符號表示重复僅僅出現在句子的開始。 實際上,VNR 文本設定中內置的有限重复過濾器也是通過正則表達式來實現的。 邏輯上好像是這樣的: * 匹配的文本: (.+)\1+ * 替換掉的文本: \1 用中文來說,就是要去除任何重复了至少一次了的文本。 這個聽起來也許滿危險的呢。 但是其實,比方說,"AAABAAAB"會變成"AAAB",而不會變成"ABAB"。 這是因為正則表達式在匹配時會做“最大匹配”,努力去匹配更多的文本。 所以重复的部分會被識別为更長的"AAAB"而不是"A"。 8/30/2013 FRI * Bugfix for parsing /H code that contains spaces. 修正了处理包含空格的特殊码的 bug。 8/28/2013 WED * Bugfix for escaped hentai terms. Thanks @BlueRex sama's report! 修正了 Hentai 开关对转义的词条无效的问题。 感谢@克子 sama 的报告! * Display game makers and their twitter avatars in Game Information. 在【游戏情报】中会显示游戏的作者和他们在 Twitter 上的头像。 警告:如果你居住在大陆地区,那么请在【使用篇好/功能】中打开【我居住在大陆地区的选项】。 8/27/2013 TUE * Fix the bug for showing random numbers (like xxx.97) in the machine translation. 修正了出现随机数字乱码的 bug。 感谢@天與楓 sama 的报告! Warning: When adding terms to the Shared Dictionary, you should avoid adding translation for AMBIGUOUS Japanese words. For example, you should never add translation for a single character like 「わ」, which could have different meaning under different contexts. 警告: 在向共享辞书中添加词条时,应该尽量避免为***有歧义的日文***添加翻译。 尤其是不要添加好像「わ」=【哇】这样对单个片假名的翻译。 因为像「わ」这样的单词在不同的语境下会有不同的含义。 如果都翻成【哇】会严重降低机器翻译的质量。 * Modify ITH's ShinaRio engine to work with games from アトリエさくら. * Add a new ITH engine for games from Sweet Light, which is marked as Malie2. 8/26/2013 MON * I added a Hentai flag to the terms in the Shared Dictionary. Hentai terms will only be enabled after the user enable them from the left dock. Basically, you don't want to enable hentai terms unless in H-scene or 抜きゲー. Otherwise, the machine translation might become overly erotic. The motivation of Hentai terms could be find in the Help of Shared Dictionary, as follows:

Certain Japanese words have special meaning when come to H-scene. For example,「出る」 usually means "ejaculation" instead of "getting out" under the context. Also, some translations might be offensive to certain group of people. You could mark these terms as Hentai so that the users could select whether to enable them or not. 在【共享辞书】中添加了【Hentai】的标示。 被标记为 Hentai 的词条仅当其他同学在左边的选项中开启了【Hentai】后才会有效。 简单的说,如果你在推抜きゲー或者 H-scene,而希望翻译变得更加糟糕更加 Êerotic, 那么也许可以打开左边的 Hentai 选项。 如果只是一般的纯爱作或者乙女作,那么最好不要打开 Hentai 的选项。 下面是【共享辞书】的帮助中对于 Hentai 词条的描述: 有些日文單詞在 H-scene 時會有不同的含義。 比如,在 H 的語境下「出る」通常是指“射精” 而不是指“出去”。 另外,有些重口味的翻譯可能會讓一些同學感到不舒服。 你可以將這樣的詞條標記為 Hentai,讓其他同學就可以選擇是否使用這些詞條。 8/25/2013 SUN * ITH is optimized specific to VNR. Additionally, ITH and VNR can run at the same time now. But when /H code is applied or game-specific engine are selected, either VNR or ITH could work rather than both. Note: Since this version, the dlls in VNR are no longer compatible with ITHv3 any more. I removed the dead code and a few ITH features that VNR do not need. As the result, the dlls in VNR do not work with the original ITHv3 any more. 优化了文本提取。另外,ITH 可以和 VNR 同时运行了。 但是当使用了特殊码或者游戏引擎时,两者中只有一个才可以工作。 注:从这个版本开始,VNR 的文本提取引擎不再与 ITHv3 兼容。 比如,将 VNR 的 dll 文件复制到 ITHv3 下将无法再正常工作。 8/23/2013 FRI * While rendering Japanese, noun/verb will be in red/yellow, while others in blue/green. 渲染日文时,名词或动词会被渲染为红色或黄色,其他的助动词什么的渲染为蓝色或绿色。 8/22/2013 THU * 屏蔽淘宝浏览器。屏蔽任何以 Baidu 开头的程序。 * Bugfix for the new SiglusEngine. Credits and special thanks to @CaoNiMaGeBi sensei! 8/19/2013 MON * The MSIME parser option is removed. VNR now always uses MeCab to parse Japanese. When MeCab fails to parse certain Japanese word (such like 「巨乳」), VNR will use MSIME as fallback if installed. 删除了使用微软日文输入法分词的选项。 当 MeCab 分词失败后,VNR 会自动使用微软日文输入法来分词(如果有安装)。 8/18/2013 SUN * Add new engine for QLIE games. The text threads are named as QLIE2@CaoNiMaGeBi to memorize @CaoNiMaGeBi who found it. Games including「催眠演舞」and「乙女理論とその周辺」do not need /H code any more.

添加了新的 QLIE 引擎。非常非常感谢@CaoNiMaGeBi 对这个引擎的特殊码! 8/17/2013 SAT * Japanese parser - When MeCab parser is used, VNR will show the 品詞 of the clicked text that is formated as: 表層形:原形,発音,品詞,品詞細分類 1,品詞細分類 2,品詞細分類 3,活用形 An example for 「憎しみは憎しみしか生まない」 is as follows: 憎しみ:憎しみにくしみ,名詞,一般 は:は,わ,助詞,係助詞 憎しみ:憎しみにくしみ,名詞,一般, しか:しか,助詞,係助詞 うま:生む,うま,動詞,自立,五段・マ行,未然形 ない:ない,助動詞,特殊・ナイ,基本形 当分词器设定为 MeCab 时,VNR 会显示点击的日文单词的品詞。显示的格式以及例子如上。 关于MeCab和微软拼音输入法的优劣如下: - MeCab:可以显示品詞,但是因为字典不全,遇到生僻字可能会缺少振仮名 - 微软拼音输入法:字典更大,但是不能显示日文单词的品詞 - When MeCab parser is used, VNR look up the original form of the selected word in the dictionary. For example, when 「ござい」 in 「お早うございます」is clicked, VNR will look up 「ござる」 instead of「ござい」. 当 MeCab 开启时,VNR 会用点击词语的原型来查询辞书。 比如:当「お早うございます」中的「ござい」被点击时,VNR 会查询动词原型「ござる」 而不会查询「ござい」。 * Text settings - The hook dialog will also display the most recent hcode deleted by other users. 特殊码的输入界面可以看到之前被其他同学删掉的特殊码。 - The "keeping all threads generate from /H code" in Text Settings is changed

to

"keeping all threads generated by the selected scenario engine". For example, if the address of SignusEngine text thread varies on each launch, you can turn on that option catch it. 文本设定中【保留所有特殊码生成的文本】变更为【保留所有来自对话引擎的文本】。 比如,当来自 SigusEngine 的文本的地址在每次打开游戏都不断变化时,那么可以 开启这个选项来保留所有 SignusEngine 的文本。 * Launch settings - Always convert dos 8.3 game path like ABC~1.exe to full path name. 总是将 DOS 8.3 格式的好像 ABC~1.exe 一样的文件名转换为原始路径。 * ITH fixes - Fix the issue that ITH sometimes fails to recognize game engine launched by NTLEA. 修正了用 NTLEA 打开游戏会造成 ITH 无法识别部分引擎的问题。 - Fix the issue that ITH Brus engine cannot recognize game with msvcrt 2010. 修正了 ITH 的 Brus engine 无法和 msvc2010 的游戏同步的问题。 - Fix the issue that ITH might crash recent SiglusEngine. You no longer have to launch the game with NTLEA any more. 修正了 ITH 会让最近的 SiglusEngine 的游戏崩溃的问题。 打开这些游戏不再需要使用 NTLEA 转区。

- I added a new hook to ITH to identify the recent SiglusEngine. The text thread will be identified as Siglus@杀死妹妹 with the credits to @杀死妹妹 who found the hcode for these games.

code.

Note: VNR does not need HCode for SiglusEngine games any more. Additionally, the new ITH engine will override the text thread from the /H If you are playing, say,「聖娼女 ~性奴育成学園~」, then you have to manually change the scenario thread from HCode to Signus@杀死妹妹 in Text Settings. 添加了识别 SiglusEngine 的游戏的引擎。 来自引擎的文本在【文本设定】中会显示为【Siglus@杀死妹妹】以感谢来自杀死妹妹的特殊码。 注:VNR 不再需要特殊码来启动 SigplusEngine 的游戏了。 并且,新的引擎会造成这些游戏的特殊码失效。 如果你在玩,比如,「聖娼女 ~性奴育成学園~」,那么你不得不在【文本设定】 中将【对话】文本从【特殊码】调整为【Signus@杀死妹妹】。

* Notes - I removed the "beta" tag from the VNR as I feel VNR is out of severe bugs now. 去掉了 VNR 名称中的 Beta 标签。 - I added some text to the help of Text Settings regarding the name of the executable, as follows: 【Game executable name】 The name of the game's executable file might be used by ITH to help identify the game engine. If you rename the executable, VNR might not be able to find the game engine any more. So, unless the executable contains Japanese characters, YOU DO NOT WANT TO RENAME THE EXECUTABLE. 在文本设定的帮助中添加了一些关于游戏文件名的描述,如下: 【關于遊戲可執行文件的名字】 有些同學喜歡給可執行文件重命名。 但是,因為可執行文件的名字可以幫助 ITH 識別遊戲引擎,所以一旦重命名就可能會讓 VNR 的文本提 取失效。 因此,除非遊戲文件名包含日文字符,***否則不要去重命名遊戲程序的名字***。 8/16/2013 FRI * Fixed the text repetition issue in 「ギャングスタ・リパブリカ」. If you are playing this game, just update the Shared Dictionary and the text will be correct. 修正了「ギャングスタ・リパブリカ」中重复文本的问题。 如果你在玩这个游戏,那么还需要更新下【共享辞书】,就不会有重复的问题了。 感谢@七世ミクい sama 的报告! 8/15/2013 THU * Show game OP and demo on Youtube in the game information window. You can download Youtube video to your desktop by clicking the "↓" button. 游戏情报会显示游戏在 Youtube 上的 OP 和 Demo。 点击动画右边的↓按钮可以直接下载动画到桌面。 如果你居住在中国大陆,那么最好打开【使用偏好/功能】中【你居住在中国大陆】的选项。 否则游戏情报页面可能会卡主。 * Fixed the regression that VNR might disappear after the game window is

minimized. 修正了 VNR 在游戏窗口最小化回复后可能会小时的问题。 感谢@浅墨悠离 sama 的报告! 8/14/2013 WED * Fix the issue that ITH would crash the game「ノーブレスオブリージュ」. 修正了 ITH 会让「ノーブレスオブリージュ」崩溃的 bug。 感谢@血腥更加暴力 sama 的报告! * Fixed the ITH's deficiency on removing INFINITE cyclic repetition in game text. The option can be toggled in Text Settings. I only tested 「Lover's Collection」, and not sure how good this approach works. If you still have repeat text that VNR still cannot handle, feel free to let me know the game name. VNR currently have two kinds of repetition filters, the old finite filter and the

new infinite filter. The old one is always preferred than the new one. I mean, if the old finite filter is sufficient, you do NOT want to turn on the new one. Some technical details follows. - The finite filter is applied AFTER extracting the game text from ITH. The infinite filter is applied WHILE extracting the game text in ITH. As a result, in Text Settings, toggling finite filter will change existing texts at once, while toggling infinite filter will only impact new texts than the existing ones. - The infinite filter is slower and takes much more memory than the finite one. The finite filter is applied to the game text per paragraph, while the infinite one is applied while processing each character. If the finite filter take O(T(s)) time to process string s, then the infinite one might take up to O(T(s) * lengthOf(s)) time to finish. - The finite one can handle whatever kinds of repetitions, while infinite one can only recognize cyclic repetition, But you can turn on both finite and infinite filters together to deal with whatever repetition patterns. 修正了 ITH 无法处理无限循环重复文本的问题。 在【文本设定】中开启出去循环重复的选项就好了。 如果你遇到无法处理循环的游戏,可以让我知道! VNR 现在有两种去除循环的选项了(旧的除去有限循环的选项,和新的除去无线循环的选项)。 但是新的选项比旧的选项要慢很多很多,而且只能够识别循环重复(cyclic repetition)。 总之,如果开启去除有限重复的选项足够了,那么就***不要***开启无线重复的选项了! 如果遇到无限的循环重复+非循环重复的文本(比如「Lover‘s Collection」), 那么 也可以将两个过滤选项同时打开。 * Support adding games from erogetrailers.com. The game information on ErogeTrailers is more accurate, and it will help VNR automatically adding links on amazon, dmm, and getchu. Manually adding Getchu games is disabled. 支持添加 ErogeTrailers.com 上的游戏。 VNR 会自动从 ErogeTrailers 上找到 Getfchu 的链接。手动添加 Getchu 链接被禁止了。

* You can right-click the game CG in the game information window to save the images to the desktop, or drag the images to wherever you want. 游戏情报中的 CG 之类的图片可以用右键点击选择保存图片或者拖动的方法保存到桌面上。 8/11/2013 SUN * Permissions changed for guest users. Guest users can delete anonymous shared subs and terms. But they can no longer modify entires added 15 days ago. 匿名用户可以删除来自其他匿名同学的字幕和词条了。 但是,匿名用户不再能修改在 15 天以前提交的匿名数据了。 8/9/2013 FRI * Automatically remove garbage character "^L" from the game text which might crash VNR. Subtitles in games like the English version of Rewrite should work fine now. * You can browse/export the manual subtitles and their creators of the game in Game Board without downloading the game. 在 Game Board 中可以浏览和导出字幕,查看字幕的作者和语言等,而不再需要事先下载游戏。 * Fix the ITH bug for finding texts for certain versions of 「幻創のイデア」. Well, if you have purchased that game, ITH should have no problem to find the text for the original game. But if you were using certain illegal nodvd cracker, ITH might not be able to find the correct ShinaRio text. I modified ITH source code in order to fix the issue. Since this version, VNR started to use its modified branch of ITH. The C++ source code could be found in Library/Frameworks/Sakura/cpp/plugins/ith. If you do not want to use VNR, but want the features of VNR's ITH, you can manually copy the following dlls to your old ITH directory: Library/Frameworks/Python/ITH*.dll Library/Frameworks/Python/IHF*.dll If you have found bugs or suggestions on new common game engine for ITH itself, feel free to let me know! Special thanks to @微熱秋刀魚's bug report for 「幻創のイデア」. 修正了 ITH 无法找到破解掉的「幻創のイデア」的文本的问题。 Well,如果你购买了正版的游戏,那么 ITH 是可以找到原版游戏的文本的。 如果无法找到,那么你一定是使用了免 DVD 的破解文件>< 为了修正这个问题,不得不修改了 ITH 本身。 从这个版本起,VNR 开始使用自己修改版本的 ITH。 C++的源代码可以在 Library/Frameworks/Sakura/cpp/plugins/ith 中找到。 如果你不喜欢 VNR,但是需要修改后 ITH 的功能,那么可以将 VNR 中如下文件拷贝到老版本的 ITH 就好了: Library/Frameworks/Python/ITH*.dll Library/Frameworks/Python/IHF*.dll 如果你找到了 ITH 本身的 bug,或者是需要对新的游戏通用引擎的支持,也可以让我知道! 感谢@微熱秋刀魚 sama 对「幻創のイデア」中问题的报告!。 8/7/2013 WED * If you choose to block, say, Chinese, VNR will no longer download Chinese terms and subtitles any more.

如果你选择屏蔽,比如:英文,那么 VNR 不会再下载英文的词条和人工翻译。 * Fix the timezone bug while processing Japanese date time. * The exported terms/subs will be saved in Excel-compatible CSV format. CSV is easier to read by human and parse by program than XML. If you are a normal user, you can open the CSV files using Excel. If you are a developer, it might be easier to integrate the terms to your machine translator or make a patch from the subs in CSV format than XML. 导出的人工字幕和词条会以 Excel 兼容的 CSV 格式保存,而不再以 XML 格式保存。 你可以直接用 Excel 打开导出的文件。 如果你是程序员,需要将导出词条加入你的机翻软件,或者将字幕作成 patch, 那么 CSV 也许会比 XML 会容易处理些吧。 8/6/2013 TUE * Fix a bug in the underlying text hooking code that has existed since the beginning of VNR, which might mess up the game text order, say, ABCD => BCDA. Thanks so much for @lambl's report! 修正了一个从 VNR 第一版就存在的会扰乱文本顺序的 bug(比如:让 ABCD 变成 BCDA)。 非常感谢@六翼恶魔兰姆 1 sama 的报告! * You can double-click the text in the popup translation window to read the text using TTS and copy it to the clipboard. 双击弹出的翻译框框中的文字,会使用日文 TTS 读出其中的文字并拷贝文字到剪贴板。 8/5/2013 MON * Bug fix for getting getchu games. * 当使用偏好中【居住在大陆】的选项打开后,VNR 会使用 Excite 搜索来替换 Google 搜索。 8/4/2013 SUN * Bug fix for the full screen mode. * Allow adding game reference from Getchu.com. But due to copyright concerns, VNR will NOT save game information on Getchu. 可以为游戏添加 Getchu 上的链接。 但是因为著作权的原因,VNR 不会保存 Getchu 上得到的图片之类的信息。 感谢@goodboyye sama 的建议! * Allow editing game information in the Shared Dictionary. If you have game-specific terms for older versions of the game, you can edit its information so that both old and new versions of the same game would share the terms. 在共享辞书中可以编辑游戏的信息了。 如果你在辞书中的游戏固有的词条和老版本的游戏绑定了,那么可以通过编辑游戏信息, 来将相同游戏的不同版本绑定到一起,来共享游戏固有的词条。 * You can turn off furigana from the left docked option window. If you do not want to learn Japanese, turning off furigana might make VNR to run faster. 在左边的选项中可以关闭显示日文的振仮名。 如果你不想学习日语,那么关闭振仮名可以让字幕的渲染快一些。 * There were lots of terms from guest users in the Shared Dictionary, which could be deleted by any other guest. To protect existing terms from guest, I removed the permission for guest to delete terms.

If you sign in as guest, you can still disable guest terms, but no longer delete them. 共享辞书中有很多词条是来此匿名用户的。匿名用户的词条本来是任何人都可以删除的。 为了保护这些匿名用户的词条,VNR 不再允许匿名用户删除其他匿名用户的词条。 不过匿名用户仍旧可以禁用词条。 8/3/2013 SAT * The Game Window Text Translation feature docked left supports online translators now. But as online translators are much slower and less stable than offline ones, VNR will use online translators to translate window texts, iff you don't have any offline translators enabled in Preferences/Translation. 左边【选项】中的【翻译窗口文本】可以使用在线翻译器了。 但是因为在线翻译的稳定性和速度比离线翻译要差很多,所以除非在【文本设定/翻译】 中没有安装任何一个离线翻译软件时,VNR 才会使用在线翻译服务来翻译窗口文本。 * Add Google translator support. I feel its English translation quality is not good. But it might help minority languages like Thai and Vietnamese. 添加了 Google 在线翻译。 * 如果你居住在中国大陆,并且希望使用 Google 的翻译和 TTS,那么可以在 【使用偏好/功能】中打开【你现在居住在中国大陆】的选项。 * Add a new "Ratio" button to the "FS" popup. The differences of "Window", "Screen", and "Ratio" are: - Window: Keep the resolution - Screen: Change the resolution without respecting the display aspect ratio - Ratio: Change the resolution while forcing the current display aspect ratio * 在【全屏】按钮中,添加了【比例】按钮。 【窗口】,【屏幕】,和【比例】在实现全屏时的区别是: - 窗口: 不改变屏幕的分辨率 - 屏幕:改变分辨率,不考虑屏幕的长宽比 - 比例:改变分辨率,并保持屏幕的长宽比 感谢@杀死妹妹 sama 的报告! 8/2/2013 FRI * Fix a bug for searching games in DMM. * Add a Game Board where you can find known games in VNR's online game database. 添加了 Game Board 可以找到 VNR 的服务器上已知的游戏。 * Force keeping display aspect while changing resolution for full screen. 在切换屏幕分辨率来实现全屏时,强迫保持长宽比。 感谢@鞭打妹妹 sama 的建议! 7/30/2013 TUE * You can adjust the maximum length of game text in the left dock. Game text longer than that will be ignored. 在左边的【选项】中可以调整最大文本长度。 大于指定长度的文本会被 VNR 认为过长为而忽略掉。 7/29/2013 MON * Improve performance to render glowing text. * The "Transp" button on the left dock is renamed to "Glow". Nothing else is changed. 左边的【透明】按钮被重命名为【光晕】。功能上没有变化。

7/28/2013 SUN * The Show/Hide button in the left dock is renamed to Pause to be more accurate. The functionality is the same as before. 左边的显示/隐藏按钮重命名为【暂停】。按钮的功能没有变化。 * I improved the image blurring algorithm to render the subtitles. Now, you can adjust the text glowing intensity and range from the left dock. Increasing these factors will make the text more readable, esp. after turning off the background shadow. You can press the Transp button on the left dock to toggle these factors. Warning: Increasing glow factors will also increase CPU cycles to render the text halo, especially when you have turned off the background shadow. If you have a very old laptop, you might want to keep the glowing factors small, and keep the background shadow. 在左边的选项中可以调节字体发光的强度和范围。增大这些参数会让字体变得更清晰和易读。 参数变得很大时,在没有背景阴影的时候也可以看清楚字幕了。 点击左边的【透明】按钮会自动调节这些参数。 警告:增大发光参数也会增加渲染光晕需要的运算,尤其在关闭了背景阴影的时候。 如果你的笔记本很老很慢,那么最好不要让发光的参数太大,也不要关闭背景阴影。 不然在字幕移动的时候会变得一卡一卡的。 * Add DMM.co.jp as an alternative reference of Amazon.co.jp. It covers more recent games than Amazon, such as 「まじこい S2」. After adding a DMM reference, you can find sample CG in game information. 添加了 DMM.co.jp 作为 Amazon.co.jp 的候补。 添加 DMM 的链接后,在【情报】中将可以看到游戏的 CG 和画师的信息。 * Display game names in the Spring Board using the names from Amazon or DMM 7/26/2013 FRI * Fix the issue that VNR might slow down certain games. 修正了 VNR 会让部分游戏变得很慢的问题。感谢@沈萧峰 sama 的报告! * Fix the issue that has been existed for long that changing display resolution might crash VNR. 修正了显示器分辨率改变可能会让 VNR 崩溃这个存在很久了的问题。 * Automatically zoom UI when VNR realizes the display resolution is changed. 当 VNR 发现显示器的分辨率改变时,会自动缩放部分界面控件的大小。 7/24/2013 WED * Add a button for changing display's resolution to achieve full screen. When you press the FS button, VNR will show two more buttons: - Window: Change the game window to fit the screen size - Screen: Change the display resolution to fit the game window 添加了通过修改显示器解析度来实现全屏的按钮。点击【全屏】按钮就可以看到了。 感谢@鞭打妹妹 sama 的建议! 7/23/2013 TUE * The game images are cached for offline access. * You can clear the text box from its context menu, or "⏎" button on the header. 当文本太多时,可以通过右键菜单或者顶部的按钮来清空文本框框。

7/21/2013 SUN * The user-defined threads generated from h-code are renamed to "HCode". Nothing is changed except the naming. 由特殊码生成的文本由【User-defined】重命名为【特殊码】。在功能上,没有任何变化。 * The "Speak" button on the left dock is togglable now. You can use it to toggle the automatic TTS option. 【朗读】按钮可以按下了。当按下时,VNR 会开启【自动语音合成】的功能。 * If you are really bothered by TTS, you can disable it in Preferences/Features. 如果你不需要语音合成的功能,可以在【使用偏好/功能】中禁用它。 禁用后 VNR 就不会再抱怨没有安装 TTS 的了。 * Switch to lxml to reduce xml processing time. * Fix the issue the for some games like 「Zero Infinity」, FS failed to remove the border of the game window. 修正了部分游戏全屏时,VNR 没有完全移除游戏窗口边框的问题。 * I added a Slim button to the left dock.. When toggled, VNR will switch back to the old GUI. When pressed, the old blue button is also restored. 添加了一个 Slim 的按钮。 按下后,VNR 会切换回老版的界面,包括显示之前被删掉的蓝色按钮。 * I added a new feature to VNR that you can specify/select the name of the game. The games that are assigned with the same name will share game-specific subtitles and terms. Here are some texts from the help for the newly-added Game Information: - Motivation In VNR, game settings including user-contributed subtitles and game-specific dictionary terms are bound with the game's executable. However, usually the same game has different versions of executables from 「初回版」,「通常版」,「廉価版」, and different updates. For example, if you have game-specific character names in the Shared Dictionary, after the game is updated, the old terms might not work with the latest game anymore. When that happens, you can create a reference for different versions of the same game. The games sharing the same reference will share the game-specific translations. 添加了可以为游戏指指定名字的功能。相同名字的游戏会共享人工翻译和共享辞书中游戏固有的词条。 下面是来自新添加的游戏情报中帮助的文字: 【簡介】 在 VNR 中,遊戲的各種設定,包括大家的人工字幕和共享辭書辭書中遊戲固有的條目, 都是和遊戲的程 序文件關聯的。 但是,即便是同一個遊戲也經常會有不同版本的文件。 這些版本可能來自不同的「初回版」、「通常版」、「廉価版」,以及遊戲的更新文件。 比如,如果你在共享辭書中添加了遊戲固有的人物的姓名,那麼更新遊戲將可能會使得這些人工翻譯失效 呢。 當這樣的問題出現時,你可以為不同的遊戲指定相同的名字。具有相同的名字的不同的遊戲之間,將會共

享人工翻譯和字幕。 7/17/2013 WED * Fix the issue that VNR might crash when there are too many unfinished online translation tasks. 修正了网速很慢而又快速点击游戏时,过多的在线翻译任务会让 VNR 崩溃的问题。 * Make sure that the FS (full screen) function will preserve game window's aspect. * 屏蔽所有以 360 开头的程序。 如果你发现你的游戏程序的名字正巧是以 360 开头,可以向我抱怨! 7/15/2013 MON * Automatically recognize and block wrong or malicious user-defined hook code. 自动识别和屏蔽错误的或恶意的特殊码。 7/14/2013 SUN * Hide the green spinner in full screen mode. 全屏时不再显示绿色的圈圈。 * Automatically bold small fonts. 当字体太小时会自动加粗. * I added some help text for the Shared Dictionary to show how to use regexp to help identify character names, as follows: The regular expression could also help VNR identify character names in the game text. For example, in 「まじこい S-1」, the original game text is like: 「Scenario」CharaName. And we want to change it to: CharaName「Scenario」. You can achieve it by adding a term as follows: * Target: Original text * Language: Japanese * Game-specific: YES -- i.e. only apply to this game * Regular expression: YES * Pattern: (「.*」)(.*) -- Match scenarios as \1 and chara as \2 * Replacement: \2\1 -- swap \1 and \2 Another example, in 「媚肉の香り」, the original game text is like: <CharaName >:Scenario. And if you want to change it to: CharaName「Scenario」, you can add a term as follows to achieve it: * Target: Original text * Language: Japanese * Game-specific: YES -- i.e. only apply to this game * Regular expression: YES * Pattern: <(.*?)>:(.*) -- Match chara as \1 and scenarios as \2 * Replacement: \1「\2」 -- wrap \2 with「」 在共享辞书的帮助中添加了一下关于如何使用正字表达式来帮助识别人物名字的文字,如下: 正則表達式也可以幫助 VNR 來識別對話中人物的名字。 比如 在「まじこい S-1」中,遊戲的文本好像:「對話什麼的」人物名字。 而我們想要把文本變為:人物名字「對話什麼的」。 那麼,可以通過添加如下的文本來實現: * 目標:原文 * 語言:日文

* * * *

遊戲固有:是 -- i.e. 僅僅對まじこい有效 正則表達:是 匹配的文本:(「.*」)(.*) -- 匹配對話什麼的為\1, 人物名字為\2 替換的文本:\2\1 -- 交換\1 和\2 的位置

再比如,在「媚肉の香り」的遊戲文本好像:<人物名字>:對話什麼的。 如果你想要把它變為人物名 字「對話什麼的」,可以通過添加如下的詞條來實現: * 目標:原文 * 語言:日文 * 遊戲固有:是 -- i.e. 僅僅對媚肉の香り有效 * 正則表達:是 * 匹配的文本:<(.*?)>:(.*) -- 匹配人物名字為\1, 對話什麼的為\2 * 替換的文本:\1「\2」 -- 將\2 放到「」裡 7/13/2013 SAT * I tried increasing the limit for max recursion to ease the exception of "maximum recursion depth exceeded". But I am not sure if this could help or not. If you have got the same issue, feel free to complain to me! 做了一些对于"maximum recursion depth exceeded"的异常的修正,非常抱歉! 如果这个问题再次出现,可以向我抱怨! * Automatically hide the task bar after switching to full screen model. 在进入全屏模式后会自动隐藏任务栏。 * Fixed the issue that VNR sometimes failed to find game window after restored from being minimized. 修正了部分游戏最小化后 VNR 无法找到游戏窗口的问题。 * 如果你无法使用 Update 正常的更新,那么很可能是 FTP 的端口被你的大陆地区屏蔽了呢。 现在,只好手动执行 Library 中的 Debug Update.cmd 来暂时缓解这个问题。 Library 中的 Debug Update.cmd 和 Update.exe 几乎只一样的。 只是 Update 可能会针对不同的版本而删掉以前版本产生的无用的文件,而 Debug Update 不会。 所以,Debug Update 后的 Library 文件夹可能会大一些。 * Remove the "always on top" attribute from some of the VNR's windows. * Prevent VNR from adding HCODE to 「少女騎士物語」 and 「Berry's」. These games do NOT need AGTH code to work. Please STOP ADDING HCODE TO IT! I am really confused! There are already correct texts existing in Text Settings. But why people are still trying to add AGTH hcode to it?! Please make sure there are no correct texts before adding HCODE to the game! I mean, please try adjusting the text encoding and examining each text thread ONE BY ONE first before adding new AGTH code! VNR is NOT using AGTH at all. And bad AGTH code could mess up the game text! 阻止 VNR 向「少女騎士物語」和「Berry's」添加特殊码。 这两个游戏根部不需要特殊码就可以工作了。 我实在是不明白,在【文本设定】中明明已经有正确的文本了,大家为什么还要去添加特殊码! 大家在添加新的特殊码前,请先***仔细的***检查下文本设定中的文本到底有没有和游戏相同的。 我的意思是,***调整下文本编码,然后一个文本一个文本的看***,有没有和游戏相同的。 另外 VNR 和喵翻在底层上不同。 请***不要看都不看文本设定***,就直接把喵翻中的 AGTH 特殊码添加到 VNR 中!

7/12/2013 FRI * Support IVONA TTS for European languages to dub character voices. Thanks for molitar sama's report! * Make sure that you can close the left docked panel window. 修正了左边的窗口有时候无法关闭的问题。 * I added a FS button to the left docked panel, where you can FORCE stretching the game window to full screen. As you know, some games like RPG Maker require changing the resolution to work in full screen, which does not feel well, and might mess up the game's aspect. Some games like 「星彩のレゾナンス」 do not allow VNR to paint subtitles on it after switched to full screen. Additionally, after the game enters full screen, VNR has to restrict itself from obtaining the focus, which will break the game's full screen status. As the result, you cannot access VNR's native GUI components like context menus, Text Settings and Preferences. When that bothers you, you could try pressing the FS button to let VNR take the control over the game window's full screen status. This feature works only for certain games like RPG maker,「星彩のレゾナンス」, and 「レミニセンス」, but does not work well for some GDI games like 「あやかしび と」>< Thanks for spoxxy sama's suggestion! 在屏幕左边的框框中添加了一个【全屏】的按钮,可以强迫游戏窗口进入全屏状态。 正如你知道的,有些游戏(比如:RGP Maker)需要改变屏幕的分辨率才可以进入全屏。 这样不但看起来会很难看,而且还可能会毁坏游戏本身的长宽比而使人物变形。 有些游戏(比如 「星彩のレゾナンス」)在进入全屏状态后,就不允许 VNR 在它的上面 绘制字幕了。 另外,为了避免破坏游戏的全屏状态,VNR 在游戏进入全屏后不得不禁止使用 Windows native 的控件,比如右键菜单、文本设定、和使用偏好。 当你遇到这些问题的时候,可以尝试点击左边的【全屏】按钮,来把对游戏全屏的控制 交托给 VNR。 这个功能支持 RPG maker、「星彩のレゾナンス」、和 「レミニセンス」等的部分游戏, 但是有些游戏在被 VNR 全屏后会变得很丑 >< 7/11/2013 THU * Fixed a severe bug existing for long time that very long game text might crash VNR. CTRL game will not crash VNR now. Thanks so much to @六翼恶魔兰姆 1 and 梁 sama for pin-pointing me to reproduce the issue by enabling text correction. 修正了非常长的文本可能会让 VNR 崩溃这个存在了很久的问题。 CTRL 游戏不会再让 VNR 崩溃了。 非常感谢@六翼恶魔兰姆 1 和梁 sama 关于问题的报告!

7/10/2013 WED * Fixed the regression that pymsime.pyd might crash VNR. Thanks for @molitar sama's report! 修正了 pymsime.pyd 会让 VNR 崩溃的问题。感谢@邪客 0 sama 的报告! * The GUI of the word translation popup is slightly changed. 7/9/2013 TUE * Distribute MSVC redist 2008&2010 together with VNR. VNR is self-contained now. New users no long have to install these libraries for using VNR. 添加了 MSVC 2008 和 2010 需要的文件。新的同学不再需要安装任何微软的软件库就可以使用 VNR 了。 * The underlying GUI framework (PySide/Qt4) is updated. But Qt5 is still not supported by PySide. * Fix the bug that sometimes VNR becomes zombie process after exit. 修正了 VNR 偶尔无法正常退出的问题。 * When the user language is Chinese, always convert Simplified Chinese to Traditional Chinese for terms in Shared Dictionary. 当账户语言为中文时,不论在【使用偏好/翻译】中是否有开启简繁转换,总是将共享辞书中 简体中文的词条转换为繁体中文。 如果你不希望使用繁体中文,那么可以将只用偏好中账户的语言由【中文】变更为【简体中文】。 7/8/2013 MON * Update Qt * Prevent VNR from adding hcode to 「媚肉の香り」, which will crash the game. If you find your HCODE would crash the game, please, PLEASE DON'T FORGET TO DELETE IT! I might block the users/ips leaving bad hcode within games as punishment! Again, ITH and AGTH are different. Please make sure there are NO correct texts in VNR before adding your AGTH code to ITH engine! 禁止 VNR 向「媚肉の香り」添加会让游戏崩溃的特殊码。 如果你发现你添加的特殊码会让游戏崩溃,请***不要忘记删除错误的特殊码***! 我以后也许会屏蔽遗留了错误特殊码的用户和 IP 作为惩罚! 另外,AGTH 和 ITH 是不同的。请先仔细检查【文本设定】中的文本,在确定没有正确文本前 不要将 AGTH 的特殊码直接添加到 ITH 中! * The 「speak」 button in the left-docked option window is moved to the top of the text box and displayed as 「♪」. 左边选项中的【朗读】按钮移动到了文本框框的顶端,显示为【♪】。 * 修正了 VoiceText 的中文 TTS 无法朗读繁体中文的问题。 7/7/2013 SUN * Bug fix to auto-hide the docked option window. 修正了左边的选项框框有时候不能自动隐藏的问题。 * Add a button to the option window to show context menu in case new users cannot find it. 在左边的悬浮窗中添加【菜单】按钮来显示菜单,以避免新的同学找不到菜单。

* The green spinner is moved to the left bottom corner. It's color and width indicates how many parallel threads are running in the background. For example, when the spinner becomes red, you might want to wait a few seconds until VNR finishes the scheduled tasks. 绿色的圆圈移动到左下角。 圆圈的颜色和宽度表明在后台运行的并行任务的个数。 比如,当圆圈变得又红又粗时,你可以等待几秒钟,直到 VNR 完成当前的任务。 * I added some help text reading the name of the text threads, as follows: Each text thread has a name to identify what kind of procedure is being hooked, such as "User-defined", "CIRCUS", and "TextOutA". Usually, you can find the correct text threads according to their names. There are three kinds of thread names, as follows: - User-defined: This thread is generated by user-defined hcode. The thread name is rendered in red. - The name does not end with "A" and "W" like "CIRCUS": This thread is specific to this kind of game engine. The thread name is rendered in blue. - The name ends with "A" or "W" like "TextOutA": This thread is general to all games. The thread name is rendered in black. When there are user-defined threads, they usually (90%) have the correct texts.

Otherwise, if there are threads whose names are ends with neither with "A" nor "W", they have more chances to be correct than threads ending with either "A" or "W". * 我在文本设定的帮助中添加了一点关于文本名字的文字,如下: 每个文本框框上面都有它的名字,比如“User-defined”,“CIRCUS”,和“TextOutA”. 这些名字是用来表明文本的来源的。 你通常可以通过文本的名字来判断他们是否正确呢。 根据不同的名字,文本可分为如下三类: - “User-defined”: 这类文本是由特殊码生成的。 文本的名字会被渲染为红色。 - 不是以“A”或“W”结尾的名字,比如“CIRCUS”: 这个文本来自这个游戏特有的引擎。 文本的名字会被渲染为蓝色。 - 以“A”或“W”结尾的文本,比如“TextOutA”: 这个文本来自大多数游戏共有的函数。 文本的名字会被渲染为黑色。 当存在 User-defined 的文本时,那么它通常(90%)包含正确的文本呢。

另外那么比起“A”或“W”结尾的文本,名字不是以“A”或“W”结尾的文本有更大的可能性是正确的呢。 7/6/2013 SAT * The blue button is removed. You can right click the floating option window to access the context menu. 移除了左下蓝色的按钮。你可以右键点击游戏左边的选项窗口来访问以前的右键菜单。 * Improve JBeijing, Dr.eye and ezTrans by splitting Japanese into sentences. JBeijing 和 Dr.eye 会被分割翻译。 人名和短句的翻译会被缓冲,以缓解分割翻译造成的 JBeijing 翻译时间加长的问题。 * Fixed the regression that the "repetition removal" option in Text Settings was not saved. * Improve garbage text filtering, esp. for 「瑠璃色の雪」. 改进了对垃圾字符的过滤。感谢梁 sama 的报告! * Bing replaces Yahoo as the default online translator. Yahoo! Honyaku is removed because its translation is almost the same as infoseek, except it does not support Vietnamese, Thai, and Indonesian. The reason I made Bing as the default is not that bing is always better than Infoseek, but it supports all languages. 微软 Bing 取代雅虎!成为默认的翻译器。 移除雅虎!主要是因为雅虎的翻译和 Infoseek 几乎相同,而且雅虎中文是半角而 Infoseek 是全角, 感觉还不如 Infoseek。 另外 Bing 支持英中翻译,可以帮助翻译英文化的游戏。 * The left docked option window is moved out of the game window. 左边的选项窗口移动到游戏外面了。 7/5/2013 FRI * By default, VNR will split the long game text into sentences in different lines. You can disable this behavior by toggling [Option/Purge new lines]. 默认时,VNR 会按照标点将长句子分割为不同的行。 如果你不希望这样,点击左边的【选项/去除文本分行】可以取消文本中的分行。 感谢@夢見 feat 瑠璃 sama 的建议! * Bug fix for English machine translators. 改进了百度翻译对标点的识别。 由于百度不能识别日文的标点(如【】「」『』), 这些标点会扰乱翻译的质量。 修正后,VNR 在翻译前会先将标点转换为引号, 在翻译后再转换回来。 * Game text will be splitted into sentences before sending to online translators. This might slowdown translation time a little bit. But I feel translation quality might be more important than the spent time. 在线翻译会被分割为段逐个翻译。 感谢@鞭打妹妹 sama 的建议! * Online translators will be applied in parallel instead of one by one. The appearing order of online translators becomes undefined. * Automatically remove illegal characters (ASCII code < 32) from the game text. 自动移除 ASCII 值小于 32 的垃圾字符。

* I added an option to Text Settings to allow capturing all user-defined threads generated by hcode. Games including 「Bunny Black 3」, 「らぶおぶ恋愛皇帝 ofLOVE!」and 「らぶらぼ」 should work now. Here's the text copied from the help of Text Settings: The text threads generated by user-defined hook code is named as "Userdefined". The text threads are identified by their addresses in VNR. But the address of the user-defined thread might vary on different launches. When that happens, you can choose to keep all user-defined threads. 在【文本设定】中添加了保留所有 User-defined 文本的选项。 包括「Bunny Black 3」,「らぶおぶ恋愛皇帝 ofLOVE!」,和「らぶらぼ」在内的游戏不再需要 每次启动都调整文本设定了。 下面是文本设定的帮助中的描述: 特殊碼生成的文本的名稱一定會是【User-defined】。 VNR 是通過文本的地址來定位文本的。 但是自定義特殊碼的文本有可能每次啟動遊戲都不同。 這個問題可以通過開啟【保留所有特殊碼生成的文本】的選項來解決。 * Able to monitor clipboard in Text Reader. 可以使用文本翻译器来翻译剪贴板中的日文。 感谢@六翼恶魔兰姆 1sama 的建议! 7/4/2013 THU * Block following wrong hook codes for 「幻創のイデア」。 屏蔽如下「幻創のイデア」的错误的特殊码。 - /HB8*0:D4@0:GDI32.dll:GetTextExtentPoint32A - /HA-C:40@0:GDI32.dll:GetTextMetricsA - /HA8@394F8:gdi32.dll  This game DOES NOT REQUIRE HCODE AT ALL! Please stop adding hcode to it! 这个游戏根本不需要特殊码,请大家不要再添加特殊码了! Note: ITH and AGTH are different. Many games where AGTH requires hcode, do NOT need hcode in ITH. On the contrary, a correct AGTH hcode might mess up text detection in ITH. So, before adding AGTH hcode to VNR, PLEASE FIRST CHECK IF THERE ARE ALREADY CORRECT TEXT IN TEXT SETTINGS!! Additionally, if you find your AGTH hcode does not work, PLEASE DON'T FORGET TO DELETE IT IN VNR!! 另外,如果大家发现自己添加的特殊码无法工作或是没有效果,**不要忘记删除它**! * You can access the context menu by right-clicking the left docked panel in case the blue button is not visible. 右键点击左边的选项栏会出现和蓝色按钮一样的右键菜单。 * Show user avatar in Preferences. * Bug fix for Text Reader. * The left docked panel changed a little bit. * I removed the "Φ" button, which I feel was causing more issues and confusing than being helpful. If you really need that button, feel free to complain to me! * The English names of the thread categorization in Text Settings changed to shorter ones. The functionality remains the same. The current categorization follows:

-

Dialog (old name: scenario) Chara (old name: character) Other (old name: extra) Ignore (old name: ignored)

7/3/2013 WED * Shared dictionary terms and comments in the tables will be rendered by the colors of their creators. An exception is that the term whose language is Japanese or whose target is original text will be in red color, because those two kinds of terms could impact a large number of users. You might want to avoid using these two terms unless you are pretty sure what you are doing. 7/2/2013 TUE * I added a new feature (Text Reader) to translate hovered text as requested by @Denobo. Here's a screenshot for BL game 「聖 Crain 学園 DX」 that could demonstrate how it works: http://i859.photobucket.com/albums/ab155/jichi/crain_zpsbfe74f96.png - Intro You can open Text Reader on the right side of the Spring Board. I am hoping it could ease reading Japanese text in website, blog, or light novels. For example, it can translate hovered Japanese Wikipedia articles in Firefox, online visual novels, or light novel paragraphs in Notepad. This feature is in pre-alpha stage and has only primitive functionality. Any suggestions are welcomed! As it is not limited to VNs, Text Reader might be forked out of VNR into another stand-alone app in the future. - Limitations Only the text in traditional NORMAL window can be translated. The current Text Reader cannot detect the window text that is rendered in non-native way. For example, Text Reader can detect texts in game's menus, buttons, and dialogs, but cannot detect texts rendered by GDI or DirectX. Application-wise, Text Reader can work with Notepad, Internet Explore, and Firefox. But it does not support Google Chrome and Foxit Reader. 添加了可以翻译窗口文本的日文文本阅读器(Text Reader)。 这里有一个在线 VN 游戏的截图: http://i859.photobucket.com/albums/ab155/jichi/crain_zpsbfe74f96.png 我希望这个功能可以帮助阅读日文的网站,博客,在线的 VN,以及轻小说的文本。 比如,Text Reader 可以翻译 Firefox 和 Notepad 中的全部日文文本。 这个功能还处在 alpha 阶段。欢迎大家的建议和抱怨! * I added some help text to Text Settings regarding how text font could impact text detection, as follows: If there is no game text appearing, adjusting game font might help.

For example, VNR could not detect the game text in 「時計仕掛けのレイライン」 unless you have changed its font from MS Mincho (MS 明朝) to MS Gothic (MS ゴ シック). 我在文本设定的帮助中添加了一些文字来解释游戏字体对文本的影响,如下: 如果沒有任何文本出現,調整下遊戲的字體也許可以解決這個問題。 比如「時計仕掛けのレイライン」,只有在將遊戲設置中的字體從 MS Mincho(MS 明朝) 變更為 MS Gothic(MS ゴシック),VNR 才能夠提取到正確的文本。 6/30/2013 SUN * Add an option in Voice Settings to toggle whether dub voices for newly discovered characters. Thanks for @DinX's suggestion! * Fixed the issue that VNR sometimes failed to find the correct window when it was restored from being minimized. Thanks for @kylin130's report! 修正了部分游戏(如:「恋の話と」)在最小化后,VNR 找到错误的游戏窗口的问题。 感谢@kylin130 sama 的报告! 6/29/2013 SAT * You can inspect the basic information of users for shared dictionary and subtitles. 可以显示共享辞书和字幕中些其他同学简单的信息。 * Make sure the new line ("\n") in machine translation and user-contributed subtitles will generate a '
'. 保证渲染在机翻和人工翻译字幕中的分行(替换"\n"为"
")。 * VNR can use non-Japanese TTS to read machine/shared subtitles now. If you are too lazy to read subtitles on the screen, you could install TTS in your own language, and turn on "Speak subtitles" in the left docked panel. Then, VNR will read the translation for you in your language. btw, VoiceText from Korea has support for many languages like VoiceText Paul

for

English, which is also used by Stephen Hawking hakase. You can add them to VNR as non-Japanese TTS. Here's a demo video that might give you an idea how dubbed games look like in VNR:

http://www.youtube.com/watch?v=dC0qEoV3XvI VNR 可以使用中文语音合成来读出机翻和其他同学的人工翻译的字幕了。 首先需要安装下中文的 TTS(比如 VoiceText Hui(女生)和 Liang(男生)), 然后在漂浮的设定栏中选定【中文字幕配音】就可以了。 下边是为「恋と選挙とチョコレート」添加了中文配音后的演示动画。 感谢@maxrc sama 的中文字幕! http://v.youku.com/v_show/id_XNTc3MTQ4NTcy.html

6/28/2013 FRI * Update Baidu Chinese translator. 更新了百度在线翻译。 因为百度再次更换了在线翻译的 API,旧版本 VNR 中的百度翻译无法使用了呢。 * Excite is replaced by Yahoo! Honyaku.

Excite 被雅虎!翻译替换。 * Performance improved to process large number of parallel text threads. * User comments will be rendered with the submitter's avatar when VNR has Internet access. 在 VNR 有网络连接时,社区评论的旁边会显示发布者的头像。 * You can specify the color to render your subtitles shared to others in Preferences/Account. 在【使用偏好/账户】中可以指定你希望别人看到的你的人工字幕的颜色。 * I add some help text in Text Settings to explain how to use Source Term in the Shared Dictionary to remove game-specific garbage characters. The following text are copied from the help of Text Settings: Sometimes, there might be garbage characters in the detected game text. You can use the Shared Dictionary to remove the garbage text. For example, in 「らぶらぼ」, there are redundant "^[^C" at the end of each sentence. Google tells us that the ASCII code of "^[" is "0x1b", and that of "^C" is "0x03". Then, you can add following term to the Shared Dictionary to remove those two characters: * Target: Source text * Language: Japanese * Regular expression: YES * Game-specific: YES * Pattern: \x1b\x03 * Translation: (leave this column empty) * Comment: Remove garbage characters "^[^C" 我在【文本设定】的帮助中,添加了一些文字来解释如何使用【共享辞书】来移除垃圾字符的帮助。 下面这些是【文本设定】的帮助中的文字: 有的遊戲的文本中含有多餘的垃圾字符。 這時,可以使用【共享辭書】來移除不需要的文字。 比如,在遊戲「らぶらぼ」中,每句話的末尾都有多餘的"^[^C"。 Google 告訴我們, "^["字符的 ASCII 數值是"0x1b", 而"^C"字符的數值是"0x03"。 隨后,你可以在共享辭書中添加如下詞條來移除這兩個字符: * 目標:原文 * 語言:日文 * 正則表達:是 * 遊戲固有:是 * 式樣:\x1b\x03 * 翻譯:(空着什麼都不填) * 評論:移除垃圾字符"^[^C" 6/27/2013 THU * You can assign colors to different translators in Preferences/Text. 在【使用偏好/文本】中可以为不同翻译指定不同的颜色。 * I changed the default font to DF Girl (少女体). DF Girl is designed by Chinese. It covers not only English, but also Japanese, Chinese, Korean, and many other alphabets. I feel it might be a good fit for rendering a text in mixed languages. If you don't like it, you can change to other fonts in Preferences/Text. If you prefer other fonts for your language, feel free to let me know, and

I will set your flavor as VNR's default. VNR 默认的字体修改为了しょ、しょ、少女体 >< 如果你不喜欢这个字体,可以在【使用偏好/文本】中将中文的字体修改为以前的 YouYuan(幼圆)体。 如果你更喜欢其他的字体,可以 email 我,我可以把它设定为 VNR 的默认字体。 6/26/2013 WED * Add user-defined dictionary to JBeijing Chinese translator. 添加了@好大个的鸭梨整理的自定义辞书。 * Prevent VNR from hooking with Xunlei and Windows system process DWM. Please do not add non-game applications to VNR! If this happens again, I might have to block the user doing this in the future. The IP address adding DWM to VNR follows as a punishment! 122.150.208.* (Last month from Hoppers Crossing, Victoria, Australia) 禁止 VNR 与迅雷和系统进程 DWM 同步。 感谢@六翼恶魔兰姆 1 的报告! 希望大家不要将非游戏的程序添加到 VNR 中。 如果这样的事再次发生,我将不得不屏蔽添加非游戏程序到 VNR 的账户。 添加迅雷到 VNR 的 IP 如下,作为惩罚: 118.251.198.*(湖南向塘,这个月) 6/25/2013 TUE * Bug fix for rendering translation, danmaku, and comments. * Support extracting character names for games like 「恋と選挙とチョコレート」. 可以为「恋と選挙とチョコレート」之类的游戏提取人物名称了。 非常感谢@在下梁众华的报告! * Prevent VNR from blocking Japanese language which might cause problems. 禁止 VNR 屏蔽日本语。 6/24/2013 MON * You can add new games to VNR using Game Wizard without Internet access now. 在离线状态下或者 VNR 的服务器连接不畅时,不会影响添加新游戏了。 * Update Baidu Chinese translator. 更新了百度在线翻译。 因为百度更换了在线翻译的 API,旧版本 VNR 中的百度翻译无法使用了呢。 * Prevent VNR from hooking to the following applications. PLEASE, PLEASE DO NOT TRY TO ADD NON-GAME APPLICATIONS TO VNR! - Baidu Player - Media Info - MPC Player - Pot Player - QQ Player - Sogou Explorer - Storm Player - The World Browser - Xunlei Kankan - Youku Client 阻止 VNR 和上述程序同步。 希望大家不要将非游戏的程序添加到 VNR 中! 希望大家不要将非游戏的程序添加到 VNR 中! * MSIME correction will not be applied to the text for TTS. 微软日文输入法的拼写纠正不会应用到语音合成的文本上。 感谢@在下梁众华的建议!

* Bug fix for extracting character names for games like 「女剣闘士ミネルヴァ」. 修正了对部分游戏人物名称的提取。 感谢@在下梁众华的报告! * I just notice that there are a couple of games that will temporarily rename their executables (*.exe) to *.000 after launched. There are only 22 known games that fall in to such category, but some of them are famous, including「月光のカルネヴァーレ」,「Little Busters」,「聖なるかな」, and 「最果てのイ マ」. You can add these games to VNR now. 6/22/2013 SAT * Fixed the issue that character names sometimes didn't show up. * Fixed the issue that MSIME sometimes failed to parse Japanese text. * You can specify the TTS voice to use for specific game characters. As you know, in many games, not all characters are covered by voice actors. You can use this feature to add voices to characters that do not have CVs. You can click the Help button in Voice Settings for more details. 添加了使用 TTS 为指定人物配音的功能。 因为很多游戏中,部分角色是没有声优的配音的(比如主角和旁白)。 这个新的功能可以为没有 CV 的角色指定声音。 详情请参看【语音设定】中的【帮助】。 * I added a new kind of target, "original text", to the Shared Dictionary. It is similar to "Japanese" terms, except it will effect not only machine translation, but all follow-up text processing. It is not for improving machine translation, but for fixing game texts received from ITH. For example, if the game text contains garbage characters, you can use such term to remove garbages before all text processing. btw., I am running of English vocabulary. If you have better words to represent "Japanese" and "Original text", feel free to let me know, and I will modify the current terminologies. 在共享辞书中添加了【原文】词条。该词条拥有最高的优先级。 它和日文词条很相似,但是它不只会影响机翻,而且会影响到之后所有的文本处理。 比如,如果游戏的原文中包含垃圾的字符,你可以使用该词条来去除垃圾。 I am so sorry that VNR's server periodically went down on weekends this month. When the server is down, you might experience issues while downloading VNR, updating VNR, adding new games, modifying the Shared Dictionary, or submitting subtitles and comments. I have complained to the service provider in Japan several times, but the issue remains and seems to become worse. I am planning to switch to other server providers after the current lease expires (which will be 105 days later ...). Before that, I will modify VNR to allow adding new games while offline to ease the issue.

I am really sorry for the inconvenience! m(_ _)m 非常抱歉,这个月不知道为什么,每到周末 VNR 的服务器都会间歇的无法访问。 在服务器无法访问时,VNR 就无法正常的下载,更新,添加游戏,修改共享辞书,以及提交字幕和弹幕了呢。 我已经向日本的服务商抱怨过很多次了,但是问题仍旧存在而且越来越严重。 我打算在三个月后,当前的契约期满后,更换服务商来解决这个问题。 在这之前,我会修改 VNR 来允许在离线状态时添加新的游戏,希望能够缓解这个问题。 对给大家带来的不便,真的非常的抱歉!m(_ _)m 6/20/2013 THU * Add language support for Indonesian. Currently, Infoseek.co.jp is the only machine translator that supports this language. * You can specify the font's filling color in Preferences/Text. VNR's default color is 'snow' ('#ffafaf'). For example, now you can revert text and background colors from white-on-black to black-on-white. 在【使用偏好/文本】中可以指定字体填充的颜色。默认为雪白色(#ffafaf)。 * I changed the categorization for text threads in Text Settings. As you know, previously it was Primary/Secondary/Ignored. The current categorization follows: - Scenario (the same as Primary): This text thread is the scenario or dialogue thread. - Character: The contents are names of game characters. - Extra (similar to Secondary): The text thread is neither scenario nor character, but still translate it. - Ignored (the same as Ignored): Do not translate this text thread. If you don't want to see the character names, you can disable it in the left docked panel. But please don't remove existing correct character name thread in Text Settings. I am planning to use the character thread to enable other features. Because the thread settings are shared by all users, if you remove character thread in Text Settings, it might impact other users. 我修改了下【文本设定】中对游戏文本的分类。 正如你知道的,以前的分类方式是【主要】、【次要】和【忽略】。 而新的分类方式为: - 【对白】:和以前的【主要】相同,为游戏中主要的对话。 - 【人物】:文本为游戏中人物的姓名。 - 【其他】:和以前【次要】相似,为其他的对话。 - 【忽略】:不要翻译这些文字。 如果你不希望看到人物的姓名,可以在游戏窗口左边的悬浮设定中禁止【人物姓名】。 但是请不要直接在【文本设定】中删除正确的人物文本。 因为文本设定是共享的,在【文本设定】中删除文本可能会影响到其他的同学呢。 6/19/2013 WED * I changed the service port from 8080 to 80, which is more common. The old versions of VNR will not work properly any more. Sorry for the inconvenience for update! 我将 VNR 的服务的端口从 8080 变更为 80。 老版本的 VNR 可能不能够正常使用了呢。

更给你带来不便,非常的抱歉! 6/15/2013 SAT * Fonts to render Japanese and subtitles can be modified in Preferences/Text. If your favorite font is more popular than VNR's default one in your country, feel free to let me know and I will change VNR's default font to your favorite one. 在【使用偏好/文本】中,可以修改显示文本的字体。 6/14/2013 FRI * Fix the issue that the game path resolved from shortcut contains "~". Thanks for @toze's report! * Support using Wadoku EPWING dictionary to provide Japanese-German word translation. Wadoku is free, and you can get it from wadoku.de: http://www.wadoku.de/wiki/display/WAD/Downloads+und+Links Here's the direct download link to the latest version: http://www.wadoku.de/downloads/epwing/wadoku_epwing_jan2012.zip If you don't need this, you can block German language in Preferences/i18n. 6/13/2013 THU * Fix the issue to resolve game shortcut that contains Japanese characters on English-localed OS. * Bound the text box in full screen mode. Thanks for Chris' suggestion! 6/12/2013 WED * Fix the string decoding issue when handle *.lnk on non-Japanese Windows. * After installing a game, usually there will be a shortcut on your Desktop/. You can simply drag-drop that shortcut (*.lnk) to Spring Board to add the game. By default, VNR will launch the game file dropped to the Spring Board. But you can disable this behavior in Preferences/Launch. Thanks for @toze's suggestion! Note: Drag-drop won't work when VNR is launched as Administrator. 在游戏安装完成后,通常会在你的桌面留下启动的快捷方式。 你可以将快捷方式**拖曳**到 SpringBoard 上来添加游戏。 VNR 默认会立即启动新添加的游戏。 不过你可以在【使用偏好/启动】中禁止 VNR 立刻启动游戏。 注:拖曳功能在 VNR 以管理员身份运行时是无效的。 6/11/2013 TUE * Fix the issue that non Japanese characters in game text might crash English/Korean offline translators. * VNR supports game path to have non-ascii Japanese characters on non-Japanese OS now. But it is still NOT recommended to have Japanese characters in the game path, which might crash the game on the startup. 游戏的路径可以包含日文了。 尽管如此,如果你没有日文的操作系统,还是建议你不要在路径中包含日文。因为很多日文游戏会因此而崩 溃的。 * Fix window title text decoding issue on non-Japanese Windows. * Bugfix for ezTrans Korean translator.

Thanks for @foolmaker's help! 6/10/2013 MON * Fix the regression that removing Shared Dictionary terms might crash VNR. 修正了移除字典条目后可能会导致 VNR 崩溃的 bug。 如果这个问题给你带来了不便,非常的抱歉!m(_ _)m 6/9/2013 SUN * Fix the issue that launching with LocaleEmulator option cannot be saved when Editing Game Properties. Thanks for @toze's report! * I just noticed that offline TTS might NOT work properly when VNR is launched with admin privileges. Currently, I haven't found a way to fix the conflicts between TTS and admin privileges. 以管理会员权限运行 VNR 可能会造成离线的语音合成(TTS)的功能失效。 这个问题现在还没有找到解决的方法。 6/8/2013 SAT * You can click any column to sort entries in Shared Dictionary or Subtitle Editor. * Add a language chart in Statistics dialog. * Fix the issue that sometimes in Shared Dictionary game ID cannot be saved. Thanks for @DinX's report! * Fix the bug that subtitle's comments were not saved. * Fix the bug in Subtitle Editor to remove/duplicate subs. * Speed-up XML processing. Fix the slow subtitle loading issue in DC3. * By default, VNR will launch the game in Japanese Time Zone. You can disable this behavior in Preferences/Launch. 6/7/2013 FRI * I removed Japanese characters from the update scripts to avoid issues on English OS. If the updater of VNR still malfunctions, feel free to complains to me! * Support ezTrans XP offline Japanese-Korean translator. Thanks a lot for @foolmaker's suggestion and pointing me to Taeho Oh's library! If you don't need Korean language support, you can block Korean in Preferences/i18n. 添加了对 ezTrans XP 离线日韩翻译软件的支持。 如果你并不需要对韩语的支持,可以在【使用偏好/国际化】中选择屏蔽韩语。 6/6/2013 THU * Subtitle Maker is improved. 6/5/2013 WED * Improve XML processing speed. 6/4/2013 TUE * Allow editing subtitles without launching the game. * Make sure that the terms in the Shared Dictionary are sorted by the length of their patterns. Thanks for @katana's bug report! 6/2/2013 SUN * Prevent VNR from hooking to QQBrowser.

禁止 VNR 和 QQ 浏览器同步。感谢@goodboyye 的报告! * You can export subtitles or existing dictionary entries to XML by clicking the Export button. * Fix the issue of the "Text to clibpoard" option. Thanks for @basicvnlts's report! * Add Chinese translation for Subtitle Editor's help. 为字幕编辑器的帮助添加了中文翻译。其中解释了 VNR 人工字幕的部分工作原理。 6/1/2013 SAT * The "Copy when click" option in the dock is restored as requested by @sorc. * Backlog is renamed to Subtitle Creator. Nothing changed there. * I add a Subtitle Editor for revising/editing subtitles like Shared Dictionary. You can find more details by clicking the Help button in Subtitle Editor. It explains how to sub a visual novel in VNR. 5/31/2013 FRI * Support using LocaleSwitch to change game locale. LocaleSwitch is distributed together with VNR. 可以使用 LocaleSwitch 改变游戏的编码了。LocaleSwitch 已经放入 VNR 中了。 * Fix the issue that sometimes changes in Shared Dictionary couldn't be saved. Thanks for @DinX's report! 5/30/2013 FRI * Fix some font rendering issues for European languages. * Add translation support for Vietnamese and Thai. Currently, Infoseek.co.jp is the only translator that supports these two languages. * Fix a JBeijing translation issue that shows unescaped numbers. 修正了 J 北京中字符会显示为_数字_的问题。 感谢@goodboyye 的报告! 又出现了此类问题,非常的抱歉 m(_ _)m 5/29/2013 WED * Add some help descriptions for Text Settings. 为【文本设定】添加了一些帮助的信息。 * Render GUI with Apple's marble background. 修改了界面背景。 5/28/2013 TUE * Add a context menu item to upload local cached game database. 在右键菜单中添加了更新本地缓冲的游戏数据库的选项。 * Fix the broken STOP button in Game Wizard. Thanks @tobira's report! 修正了【游戏向导】中【停止】按钮无法按下的问题。感谢@tobira 的报告! 5/27/2013 MON * Minor bug fix. 5/25/2013 SAT * Fix a JBeijing translation issue that shows unescaped numbers. 修正了 J 北京中字符会显示为(数字)的问题。 感谢@goodboyye 的报告! * Prevent VNR from applying user-defined hook to DC3. That game does NOT require user-defined hook code. And please stop adding hook

code to it. * Infoseek replaces Excite as the default online translator. Infoseek's translation quality is not necessarily better than Excite. I made this change only because Excite.co.jp was blocked in Mainland China and could hang VNR there. * Prevent VNR from hooking to web browsers. 禁止 VNR 与遨游之类的浏览器同步。 希望大家不要将浏览器作为游戏添加到 VNR 中! 5/24/2013 FRI * Add an option to the left dock to copy game text to the clipboard, as requested by @basicvnlts. * Fix the issue that VNR might try to launch the game again and again if the game doesn't start in time. Thanks for @katana's report! 修正了当游戏启动很慢时,VNR 会尝试不断的打开游戏的问题。 感谢@katana 的报告! * Put machine translation into threads, so that it will not hang VNR. Especially when Windows Text Translation is enabled. 修正了【翻译窗口文本】开启时,VNR 可能会卡住的问题。 * Fix the "game text is too long" issue for light's 「Zero Infinity」. 修正了 light 社的「Zero Infinity」中【游戏文本过长】的问题。 * Japanese game text will be rendered sentence by sentenceà, so that it is easier to read. 显示日文原文时会按照标点分割为句子,以便于阅读。 5/23/2013 THU * Allow the terms in the Shared Dictionary to be game-specific. 在共享辞书中,可以添加仅对特定游戏有效(游戏固有)的翻译词条。 * Allow utilizing the Shared Dictionary to rewrite texts for TTS as requested by @DinX. 5/22/2013 WED * Improve English machine translation by splitting the text into sentences. Thanks for suggestions from @DinX and @spoxxy! * Add a few Chinese translation for notifications. 添加了一些中文翻译。 5/20/2013 MON * Modify the text threads aggregation rules to apply only to games from light.co.jp. * Fix the thread detection issue for Zero Infinity. Thanks for @CaoNiMaGeBi's report! * Add support for Dr.eye Chinese offline translator. If you are playing a Chinese galgame, Dr.eye can also help translate Chinese to English. 添加了对 Dr.eye 译典通离线翻译的支持。 使用方法和 JBeijing 相似:在【使用偏好/位置】中设定位置,然后在【使用偏好/翻译】中开启就可以了。 和 JBeijing 不同的是,Dr.eye 同时支持日中,日英和中英翻译。 如果你需要 play 英文的 galgame,可以使用 Dr.eye 来将英文对白翻译为中文。

* Fix the issue of sometimes showing unescaped {numbers} in the translation. 修正了翻译中有时会出现{数字}的问题。 * If the online translation is delayed, it will be rendered in the previous page instead of the current one. 如果在线翻译太慢了,它会被放到前一页中,而不会被放到当前页上。 感谢@杀死妹妹的报告! 5/19/2013 SUN * Add a useless feature that renders comments like nico's danmaku floating on the top of the game. You can drag or edit danmaku just like subtitles. As it is useless, if it bothers you, you can disable danmaku support in Preferences/Features. 添加了一个无用的功能,可以持将评论渲染成 nico 的弹幕一样,在游戏顶端浮动显示。 和人工字幕相同,可以拖动和编辑已发出的的弹幕。 如果你很讨厌这个功能,可以在【使用偏好/功能】中从底层禁用弹幕支持。 * I added some heuristics to aggregate text threads. As reported by @CaoNiMaGeBi, VNR sometimes split the same text into different threads. I found this issue exists in many games from light and C:Drive. So, I added some code to recognize and aggregate the split text threads. But I am not sure if it could have side effects on other games. If my changes break your old games, please let me know! 修改了下识别文本的方式,以解决部分游戏文本错误分裂的问题。 如果新的版本造成过去可以提取文本的游戏无法提取文本,请向我抱怨! 非常感谢@CaoNiMaGeBi 的报告! * Add Excite online translation support. Excite replaces Infoseek as the default online translator. Bing online translation support is removed. 添加 Excite 在线翻译的支持。 Excite 代替 Infoseek 为默认的在线翻译器。 移除了对微软必应翻译的支持。 感谢@63232128 的建议! * Add support to translate visual novel other than Japanese. I mean, you can use VNR to translator a, say, Chinese galgame to English. You can specify the language of the game in Text Threads. However, Infoseek is the only translator in VNR that supports non-Japanese multilingual translation. If you want to translate a non-Japanese game, don't forget to turn on Infoseek in Preferences/Translation! Thanks for @tobira's suggestion! 添加了对非日文游戏的支持。比如,可以使用 VNR 来翻译英文的 galgame 为中文。 启动游戏后,在【文本设定】中修改游戏的语言为英文就可以了。 但是,当前 VNR 中只有 Infoseek 支持非日本语到中文的翻译。 如果你需要翻译英文游戏的话,不要忘记在【使用偏好/翻译】中开启 Infoseek! * Add Baidu online translation support. 添加对百度中文日文英文翻译的支持。 5/17/2013 FRI

* Microsoft online translator support is restored. 恢复了对微软在线翻译的支持。 * Rewrite a few GUI rendering code with Twitter Bootstrap theme. 使用 Twitter Bootstrap 主题改进了部分界面。 * "Game Settings" is renamed to "Text Settings". The functionalities are the same. 【游戏设定】改名为【文本设定】。功能没有变化。 5/16/2013 THU * Check whether Microsoft onling translator is running out of quota. It seems that many users were using Microsoft translator , and VNR has run out of free quota this month. The translator will not be available until next month TT 检查微软在线翻译是否过期。由于使用的人过多,VNR 已经用完了这个月的免费的流量。 只好等到下个月才能继续使用微软翻译了 TT * You can edit some game settings in the SpringBoard before the game is launched. 在 SpringBoard 中可以编辑一部分游戏属性,而不再需要启动游戏。 5/15/2013 WED * Case-sensitivity and BBCode options are removed from Shared Dictionaries to make text processing faster. I found few people are using them. If this feature is important to you, just let me know! 5/6/2013 MON * You can block specific languages in Preferences/i18n. For example, if you select to block "Chinese", VNR will not show comments and subtitles in Chinese. Also, Chinese-specific settings in Preferences will become hidden after restart. Thanks for suggestions from Saru Wakaranai! 在【使用偏好/国际化】中可以选择屏蔽其他国家的语言。 比如,如果选定屏蔽【英语】,那么英语的评论和字幕就不会显示了。 另外,【使用偏好】中和英语有关的设定在下次启动时也会隐藏。 感谢 Saru Wakaranai 的建议! 5/4/2013 SAT * Terms in the shared directory are sorted based on the length of the pattern. 共享辞书中的词条在使用时会按词条长度排序。感谢@诸葛秋的建议! * You can adjust game-specific loader (such like NTLEA) in Game Settings. 在【游戏设定】中可以为游戏单独指定启动方式。感谢@微热秋刀鱼的建议! * Support using Locale Emulator to change game locale to Japanese. Locale Emulator is free, and you can get it here: http://www.hongfire.com/forum/showthread.php/418962-Locale-Emulator-anothertool-for-japanese-locale-emulation Locale Emulator (LE) is similar to NTLEA. It is not always better, but it is said to have better support for Windows 7/8. As NTLEA is dead, I feel LE is the future. LE is open source on Github. It is written in C# with WPF, comparing to NTLEA which is written in assembly orz. So, even if the author drops the project when he is busy, or get kidnapped by UFO, I believe another hero could come to help and keep the project long alive for future Windows.

添加了对 Locale Emulator(LE)的支持。感谢@微热秋刀鱼的建议! LE 和 NTLEA 相似。尽管现阶段 LE 并不总是优于 NTLEA,但是 LE 对 Windows 7/8 的支持要更好。 由于 NTLEA 已经很久没有更新了,我相信开源的 LE 会成为未来。 LE 可以在这里免费下载: http://bbs.sumisora.org/read.php?tid=11045407 5/1/2013 WED * You can adjust the TTS voice speed in Preferences/Speech. Thanks to @zero7510's suggestion! 在【使用偏好/語音】中可以調整語音合成的朗讀速度。 感謝@zero7510 的建議! 4/30/2013 TUE * Window text translation is disabled by default. * Clicking the "X" button in the left docked panel will stop VNR from listening to game text. 點擊左邊懸浮的【X】按鈕會停止接收遊戲文本。 4/29/2013 MON * Fix the regression when translating「魔導巧殻」. 修正了【魔導巧殻】翻譯的問題。 如果之前給你帶來不便,非常抱歉!m(_ _)m 4/27/2013 SAT * Text-to-speech (TTS) function improved. Thanks to @DinX's suggestion! I made a demo video for VNR+TTS here: http://www.youtube.com/watch?v=CPmOc2Ktfy4 If you are using VNR to learn Japanese, TTS might help, esp. when you are in a stage that you can understand Japanese voice but not read the text. 改進了語音合成(TTS)。感謝@DinX 的建議! 這裡是關於 TTS 使用動畫: http://www.youtube.com/watch?v=CPmOc2Ktfy4 http://v.youku.com/v_show/id_XNTQ5Mzg2MzIw.html 如果你在使用 VNR 學習日語,那麼 TTS 也許可以幫上忙,特別是當處於可以聽懂日語,但是無法讀懂文字的 階段。 * Window text hook improved. It can work with NTLEA now. As it is stable now, and it is enabled by default. If it bothers you, you can disable it in the left Dock. 改進了對窗口的翻譯。修正了和 NTLEA 兼容性的 bug。 窗口翻譯功能已經穩定,默認改為開啟。 如果這個功能給你帶來麻煩,你可以在左邊的 Dock 中禁用它。 * Add Bing as an alternative online translator, which support all languages. I add this only because Infoseek does not support Russian language. I feel Bing's Japanese-English translation quality is no better than Infoseek, which is powered by the same engine (Transer SDK) as the old OCN translation service. If your language is supported by Bing but not by VNR, just let me know and I will add the feature. 添加對微軟 Bing 翻譯的支持。 添加的原因是只因為 Infoseek 不自持俄語。

我感覺 Bing 除了比 Infoseek 快,日中翻譯質量並不如 Infoseek。Infoseek 採用的是和已經閉鎖的 OCN 相同的引擎。 * Fix a regression that VNR kept rewinding Game Wizard while adding new game. Thanks for @殺死妹妹's report! 修正了【遊戲嚮導】打開時被 VNR 干擾的問題。感謝@殺死妹妹! * Add some Chinese translation. 添加了【共享辭書】中【幫助】的中文翻譯。 4/24/2013 WED * Add user-defined dictionary for JBeijing from @Zhugeqiu. 添加了@★诸葛秋★编辑的 JBeijing 辞书(http://tieba.baidu.com/p/2287516521)。 感谢@★诸葛秋★sama 的支援! 4/23/2013 TUE * Allow using BBCode and HTML tags to format translated text in Shared Dictionary. For example: * A term that defines "」" as "」
" will create a new line after every "」". * A term that defines "「(.*?)」" as "[color=red]\1[/color]" will turn the text within "「」" to red. Thanks to @DinX's suggestion! 4/22/2013 MON * NTLEA is distributed together with VNR now. You can enable it on in Preferences/Launch. Both NTLEA and Microsoft AppLocale could help run Japanese game on non-Japanese environment. NTLEA is usually better. But I just noticed that it conflicted with the Windows text hook in VNR. VNR would be able to translate/replace texts in menus, context menu, and dialogs for games launched by NTLEA. Please give me some time fo fix this bug! NTLEA 和 VNR 放到一起了,不再需要额外设定。在【使用偏好】/【启动】中选择开启即可。 NTLEA 和微软的 AppLocale 都可以帮助在非日文环境中运行日文编码的游戏。 NTLEA 通常要好些。但是刚刚发现 NTLEA 和 VNR 自带的 Windows 文本翻译功能冲突。 比如,对使用 NTLEA 打开的游戏,VNR 将不能够翻译和替换菜单,右键菜单,和对话框中的日文。 请给我一些时间来修正这个问题。 * Support user-defined dictionaries in JBeijing (a Japanese-Chinese translation soft) 添加了对 JBeijing 自定义辞书的支持。 这个功能不需要额外开启。VNR 会自动读取你在 JBeijing 的 JCT 中自定义的词条。 此外,VNR 还自带了 JBeijing 的自定辞书,版本为@goodboyye 发布的 JcUserdic1289。 不过,你在 JCT 中定义的辞书中的条目优先于 VNR 自带的版本。 感谢@goodboyye 的 JBeijing 的自定义辞书! 4/14/2013 SUN * Add some instructions in Readme.txt.

在【Readme.txt】中添加了一些使用说明。 4/12/2013 FRI * You can temporarily disable user-defined hook code in Preferences/Launch. * Fixed a severe regression that in-game comments were not displayed. 4/11/2013 THU * Always show the header for dragging the text box, no matter its position is locked or not. * Add some explanations of the "target" column in the Shared Dictionary. You can find it by clicking the Help button there. 4/9/2013 TUE * The curtain on the top of the SpringBoard was temporarily removed. The game launch settings there were moved to Preferences. * Support NTLEA as an alternative of AppLocale. You can specify its location and enable it in Preferences. Just type "NTLEA" in Preferences and you will find the options. 4/8/2013 MON * Add a few Chinese translations for the GUI. 4/7/2013 SUN * Support using Windows Text-To-Speech (TTS) as an alternative of default Google TTS. There are several Japanese TTS engines out there. VoiceText is probably the best, as follows: http://voicetext.jp/samplevoice.html Thanks for @DinX's suggestion! 支持使用 Windows 自带的语音合成(TTS)作为墙内无法使用的 Google TTS 的替补。 日文 TTS 需要额外安装,推荐使用 VoiceText 的引擎。VoiceText 的试听页面如下: http://voicetext.jp/samplevoice.html 4/6/2013 SAT * Create a primitive GUI for software update. 4/5/2013 FRI * MS Japanese IME parser improved. * You can use the search edit in Preferences to search any text in each view. 4/4/2013 THU * Rewrite the UI of Preferences. * Support for utilizing Microsoft Japanese IME (IMJP). * Able to use IMJP to parse Japanese, as a replacement to MeCab. * Able to use IMJP to convert Japanase kana back to kanji before sending to machine translator. For example, すもももももももものうち will become スモモも桃も桃のうち. This only applies to confusing phrases, such as みじん=>微塵. Common Japanese phrases such as かわいい will not be corrected to 可愛い. Because these kana usually confuses machine translator, such conversion might significantly improve the quality of machine translation, given the large set of dictionaries from Microsoft. The latest JMJP is free to download for Office Enterprise users here (version 14): http://www.microsoft.com/ja-jp/office/2010/ime/ Here's an illustration of how to update its dictionaries. http://support.microsoft.com/kb/978478/ JMJP also comes with any Windows OS, but the version is old (version9 or

version10). And it would be better to do an update. btw, if you are using MS JP IME instead of Google's, your typing will actually improve machine translation quality>< Special thanks to @dg8806 for his/her suggesions and source code to help me exploit IMJP! 添加了对微软日文输入法的支持(IMJP) - 在【使用偏好/翻译】中,可以选择用 IMJP 替代 MeCab 来解析日文 - 在【使用偏好/翻译】中,可以开启使用 IMJP 来纠正日文中的假名,进而改进机器翻译的质量。 比如:「すもももももももものうち」会变换为「スモモも桃も桃のうち」。 这个变换只会应用在那些不常用的假名,比如:みじん=>微塵。 常用的包含假名的词汇比如「かわいい」不会被纠正成「可愛い」。 由于假名是造成机翻不准的原因之一,↑这样通过 IMJP,利用微软的辞书,可以大幅改进机翻的质量。 如果你有装 Office 企业版,可以到这里免费下载 IMJP 的最新版(版本 14): http://www.microsoft.com/ja-jp/office/2010/ime/ 这里是如何升级各种辞书的教程: http://support.microsoft.com/kb/978478/ 如果你在使用日文 Windows,那么 JMJP 已经自带了。不过版本已经好老了呢(版本 9 或 10)。 还是推荐更新到最新的版本。 btw,如果你经常使用微软日文输入法,你打的日文单词同时也会改进机翻的质量>< 非常感谢@dg8806 对于 IMJP 的建议和源码! 4/2/2013 TUE * Fix a severe regression that prevents Game Wizard from adding new games. 3/31/2013 SUN * Render GAIJI for EPWING dictionaries. * Support using 小学館 日中統合辞典(a epwing dictionary)to provide Chinese translation for Japanese phrases 可以使用【小学館 日中統合辞典】(epwing 格式字典)为鼠标点击的日文词语提供中文解释。 设定方法如下: * 首先获得 EPWING 格式的电子字典(去掉声音,影像和插图的版本大概 30MB)。 * 在【使用偏好】的【位置】中,指定字典文件夹的位置(文件夹下需要有 CATALOG 或者 CATALOGS 文件) * 在【使用偏好】的【翻译】中,开启日中字典。 设定完成后,点击日文单词,就可以看到中文的解释了。 截图好像这样:http://sakuradite.com/images/screenshots/ayakashibito.jpg 如果你来自台湾,在【使用偏好】的【翻译】里开启简繁转换,就可以将日中字典的中文转换为繁体中文了。 * Fix a severe bug when detecting running game is enabled. * Add Chinese translation for Game Wizard. 3/30/2013 SAT * Able to utilize EPWING dictionaries to enhance translations. Currently, only 広辞苑(a Japanese dictionary) is supported to enable ja-ja translation of phrases (see Preferences). Due to copyright reason, the dictionary is not distributed together with VNR. You could purchase one from amazon, or google "岩波書店 広辞苑 第六版". EPWING gives VNR access to a large set of high-quality offline commercial dictionaries (as follows). I am thinking how to use them to improve translation, especially for Japanese learners. If you have suggestions on it, feel free to discuss with me by email! * Syntax helpers and terms PDD 人名辞典, 角川類語新辞典, 四字熟語辞典, 日本語表現活用辞, 現代用語の基礎知識, 新編英和

活用大辞典 * Encyclopedia JP WIKI, 漢字源, 万葉集, 歴史データ大型版, 小学館日本大百科, 平凡社 世界大百科事典, 経済 ビジネス用語辞典, 三修社 科学技術英独日辞典 * Conventional JJ 三省堂大辞林, 学研 Super 日本語大辞典 * Foreign languages 英和大辞典(ja-en), wadoku(ja-de), 小学館中日-日中統合辞書(ja-zh) Special thanks to @0xCCBA696 for the request of EPWING support! 3/26/2013 WED * Fixed a regression bug in the shared dictionary. Thanks for @makaplayer's report! 3/26/2013 TUE * Reduce VNR's memory usage. Though VNR is still leaking memory, the leak speed is much slower now. 3/24/2013 SUN * Due to performance concerns, Japanese text-to-speech (TTS) and running game detection are disabled by default as suggested by @HunterHughes. * TTS could be reanbled in Preferences/Features. * Running game detection could be renabled in SpringBoard's dropdown menu. 3/23/2013 SAT * Add a simple bbcode scratchpad. 3/22/2013 FRI * Add a toggle in Game Settings to eliminate repetition in game text. Most games that need agth /K options, such as 「デデンデン!」, shoud work now. 3/21/2013 THU * Subtitle default syntax changed from LaTeX to BBCode. * Added a context menu item for restarting VNR. If VNR is consuming too much memory, restart it might save you some memory. Currently, I don't have a way to reduce VNR's memory usage. Have to wait for Qt5 whose V8 engine will be a savor to the current Javascript memory leaking issue. Sorry for the inconvenience at the moment! 3/19/2013 TUE * The online machine translation is disabled by default. You could re-enable the translators in Preferences/Translation. If you have got issues in getting @Aaeru subs for DC3, it is all my fault of not putting up tutorials for how to use VNR, and I am sorry for it m(_ _)m But please don't blame Aaeru for her hard work! Thanks. 3/11/2013 MON * Automatically hide left dock buttons as requested by @Kira. 3/10/2013 SUN * Add a few Chinese translation for the UI. 3/9/2013 SAT * Make the text threads to run in parallel and thread-safe so that game texts won't get lost while clicking fast. * Fixed a severe regression that might mess up the text thread title.

3/5/2013 TUE * Prevent VNR from hooking to Google Chrome and 360 Chrome. Please don't try to hook VNR to non-game applications orz. 3/4/2013 MON * Add a "Japanese" target type in the Shared Dictionary. It could be used to explain Japanese with Japanese. I will create a wiki to explain it soon. 3/3/2013 SUN * Add a toggle to SpringBoard to prevent VNR from applying user-defined /h-code after game starts. If an incorrect hook code crash the game on the startup, you can use this toggle to temporarily disable the hcode, and then add the correct one in Game Settings. Special thanks to @杀死妹妹 for the bug report! 感谢@杀死妹妹的反馈! 3/2/2013 SAT * Bug fix for the shared dictionary. 2/28/2013 THU * Fix the bug which will crash VNR when there are non-utf8 characters in PATH or in the location of VNR. * Make sure the changes to subs and dictionary entries are saved before refresh. * Make sure the python process is terminated after VNR quit. * Bug fix for window text translation. 2/27/2013 WED * Bug fix for the shared dictionary. * Add a regular expression scratchpad for testing regex used by the dictionary. 2/26/2013 TUE * Prevent guest user from modifying other users' subtitles and dictionary entries. * Annot Player and Installer are removed from VNR. 2/25/2013 MON * Prevent users from hooking VNR to 360SE. * The shared dictionary is improved. * Allow the pattern to be regular expression. * Allow the pattern to be case-insenstive. * Allow the text to be empty, when the words matched by pattern will be deleted. 2/24/2013 SUN * Automatically detect and sync with running game. You can disable it at Springboard's sliding sheet on the top. 2/23/2013 SAT * Add a few Japanese/Chinese translations for Javascript code. 2/21/2013 THU * Steal keyboard focus back to VNR when work with subtitles. * Add a user-defined dictionary shared by all users for improving machine translation. It is a simplified version of TA's replacement script, and will affect translations

for both game texts and window texts. You can click the "Help" button in the Dictionary dialog for more details. Special thanks to @spoxxy and @DinX for the suggestions! 2/19/2013 TUE * Fix the bugs that would crash VNR on the startup when there are unicode characters in the environment variables, such as PATH and USERPROFILE. 2/18/2013 MON * Fix a bug that prevents using the launch icon in the Spring Board to add new game. * Add an option to force converting Simplified Chinese to Traditional Chinese in Preferences/Translator. 2/17/2013 SUN * Prevent users from hooking VNR to Google Chrome orz * Added some translations of Japanese and Chinese (not completed yet). You can switch the GUI's language in Preferences/Account. 2/16/2013 SAT * Add a launch button to the Spring Board for adding new game to VNR. It will compare running processes with the online database to find new game. If the running game exists in the online database, VNR will set up everything for you, and you don't have to bother Game Wizard any more. 2/15/2013 FRI * Add a button to delete hook code in GameSettings/Text/HookDialog. After deletion, the hook code will not be deleted from the online datase, but be marked as deletion. Others who plays the same game with this hook will automatically revert the deletion. If the hook code appears again, please re-delete it again in the hook dialog. 2/14/2013 THU * VNR will not search for user-contributed subtitles in the same day. 2/13/2013 WED * You can edit the game's display name in Game Settings / Properties. * Always show the "Browse" buttons in Preferences/External. * To reduce the memory usage of VNR, I limited the # of texts in Backlog to 100. I also removed the button to show all subtitles in the Backlog. This change is a regression as the trade-off of better performance. If you want to edit your previous subs without loading the game to that scene, please try the "Edit subtitles online" menu item from the blue button instead. 2/12/2013 TUE * Turn the blue button to an ajax indicator to show status of async Internet access. It will be spinning while VNR is: * Checking for updates online * Signing in with a different account * Searching for game thread and hook information online * Fetching online translations * Saving your subtitles online after VNR is idle for 5 seconds * Saving your modification to subtitles online after VNR is idle for 5 seconds 2/11/2013 MON * Saving/modifying subtitles are put into threads, so that sub VN will not hang the GUI.

2/9/2013 SAT * I changed the initial values of subtitles' font size, position and alignment. I must appologize if it overrode your previous settings. If you prefer the previous settings, please adjust the options from the left dock. 2/8/2013 FRI * Fixed the "Browse" button in GameSettings/Location for specifying alternative game launcher. 2/7/2013 THU * Bug fix for window text translation. * Bug fix for D.C.III. 2/6/2013 WED * Bug fix for window text translation. * Update the window text translation lively when you change your language or translator. * Add an option to the blue button to display the orignal window text. For example: "はい" will become "はい