Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse

MTool Forum

  1. Home
  2. 翻译修正
  3. 关于翻译修正的逻辑

关于翻译修正的逻辑

Scheduled Pinned Locked Moved 翻译修正
27 Posts 2 Posters 110 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • 鬼 Offline
    鬼 Offline
    鬼才琪露诺
    wrote on last edited by
    #2

    就是按照从上到下的顺序的.
    至少我没调整过
    从 colldata.json 拉出所有翻译修正然后从上到下依次塞进一个数组, 每次翻译结束都循环一次替换.

    1 Reply Last reply
    • 鬼 Offline
      鬼 Offline
      鬼才琪露诺
      wrote on last edited by
      #3

      可能是有的快速返回时略过了这个替换..
      我还得查查. 我现在的翻译流程不是简单的从大到小替换. 整个方法一千多行, 很多个返回点....

      1 Reply Last reply
      • 鬼 Offline
        鬼 Offline
        鬼才琪露诺
        wrote on last edited by
        #4

        你可以等下次更新再看看...
        但我不确定到底是哪里有影响, 为了兼容各种游戏已经搞得太臃肿了...

        豬 1 Reply Last reply
        • 鬼 鬼才琪露诺

          你可以等下次更新再看看...
          但我不确定到底是哪里有影响, 为了兼容各种游戏已经搞得太臃肿了...

          豬 Offline
          豬 Offline
          豬愿你安好
          wrote on last edited by 豬愿你安好
          #5

          @鬼才琪露诺 ScreenShot_2025-11-07_190416_297.png
          刚更新完,原本的翻译修正不生效了,然后我打算删除了重新加载,
          点击应用至运行中的游戏的时候报没有正在运行的游戏

          1 Reply Last reply
          • 鬼 Offline
            鬼 Offline
            鬼才琪露诺
            wrote on last edited by
            #6

            ....那等下次更新再看看吧.................
            改的东西太多 顾首不顾尾了.

            1 Reply Last reply
            • 鬼 Offline
              鬼 Offline
              鬼才琪露诺
              wrote on last edited by
              #7

              我先推到测试频道更新了.你可以试试

              豬 1 Reply Last reply
              • 鬼 鬼才琪露诺

                我先推到测试频道更新了.你可以试试

                豬 Offline
                豬 Offline
                豬愿你安好
                wrote on last edited by 豬愿你安好
                #8

                @鬼才琪露诺 刚跟新到最新,【应用至运行中的游戏】这个按钮点完倒是和之前一样了。
                但是翻译修正的所有内容似乎没有生效,并没有进行翻译修正
                ScreenShot_2025-11-08_174911_067.png
                原本翻译是
                シュバイン・ラムダ
                希瓦恩·兰姆达
                按照我写的应该会被翻译成☣舒拜因・拉姆达☣
                ScreenShot_2025-11-08_175431_109.png
                之后我看了一下,应该是所有的翻译修正都没有执行
                db13cf2c-7d0a-4d04-af76-d48909a0b5fa-image.png
                我的翻译修正的名字:装脱騎士ニンフォリア Ver1.07
                可以在翻译修正里面搜索到
                然后我发现,现在的翻译
                ScreenShot_2025-11-08_175659_976.png
                会把名字和下面说话的内容合行,不知道是GPT本身的原因,还是您在翻译后对原始翻译内容进行了分行处理
                整个游戏里面不管是对话还是名字那一行,
                经常会出现整体名字被拆开变成两行的情况,然后还会多一些符号在中间。如下图:
                ScreenShot_2025-11-08_180014_867.png
                这个对应的Mtool日志输出
                ScreenShot_2025-11-08_180038_332.png
                这个人物的名字原始翻译会有如下的名称:
                尼姑芙莉亚 尼姬福利亚 尼姬福莉亚 尼姑罗亚 尼姆福利亚 妮芙莉亚
                ScreenShot_2025-11-08_180722_070.png
                上图是对话中名字被拆分的情况:尼姆福利亚 被拆分成2行
                而且这种情况还找不到很好的方法进行翻译修正,我试图在翻译修正中利用【\n】进行修正但是只能有部分实际上是利用\n的文本才能修正,很多不能修正,这种情况应该怎么处理呢?

                如果需要什么我配合的提供的咱们继续沟通

                1 Reply Last reply
                • 鬼 Offline
                  鬼 Offline
                  鬼才琪露诺
                  wrote on last edited by
                  #9

                  不如提供下游戏名官方地址和你的翻译修正的id让我自己去看

                  豬 1 Reply Last reply
                  • 鬼 鬼才琪露诺

                    不如提供下游戏名官方地址和你的翻译修正的id让我自己去看

                    豬 Offline
                    豬 Offline
                    豬愿你安好
                    wrote on last edited by
                    #10

                    @鬼才琪露诺
                    官方地址:
                    https://www.dlsite.com/maniax/dlaf/=/t/n/link/work/aid/dlwatcher/id/RJ287373.html
                    游戏名称:装脱騎士ニンフォリア
                    翻译修正ID: 39748
                    翻译用的ChatGPT 3.5

                    save_20251109_001649.rar
                    存档是第16个,因为游戏还没有玩通关,可以在回想房里面看看一部分回想

                    1 Reply Last reply
                    • 鬼 Offline
                      鬼 Offline
                      鬼才琪露诺
                      wrote on last edited by
                      #11

                      下次更新应该能好...

                      豬 2 Replies Last reply
                      • 鬼 鬼才琪露诺

                        下次更新应该能好...

                        豬 Offline
                        豬 Offline
                        豬愿你安好
                        wrote on last edited by
                        #12

                        @鬼才琪露诺
                        dfaf1475-25c5-4eef-9fef-6828172c181a-b49be9af3ec26882a93aeae4bc390db0_1762595841903-screenshot_2025-11-08_175659_976.png
                        如上图的这种人物名称出现在第二行的情况解决了么?
                        需要重新提交翻译不?
                        翻译修正能加载了,等我再试试别的。

                        1 Reply Last reply
                        • 鬼 鬼才琪露诺

                          下次更新应该能好...

                          豬 Offline
                          豬 Offline
                          豬愿你安好
                          wrote on last edited by 豬愿你安好
                          #13

                          @鬼才琪露诺
                          如果翻译修正按照从上到下的顺序进行替换的话
                          假如:
                          ScreenShot_2025-11-10_215747_840.png
                          原始日文:戦闘装備
                          翻译之后:戦闘装備
                          我增加了如下的翻译修正:
                          ScreenShot_2025-11-10_215807_553.png
                          第一行修正的意思就是
                          B如果行开始后面没有【 (「】三个符号,或者没有【存档】【配件】
                          C则在行首增加一个【 】
                          ①按照第一行的内容新的翻译会被先替换为 【 戦闘装備】

                          第二行的意思是如果
                          A原文是【戦闘装備】,
                          B翻译后的是【 戦闘装備】或者【戦闘装備】
                          C则替换成【㊣战斗装备】
                          ②按照第二行的内容的翻译会被替换为【㊣战斗装备】

                          但现在实际上没有进行第二行的替换,直接输出了 【 戦闘装備】
                          所以到底翻译修正的具体替换规则是怎么样的?
                          按照我的理解当前的两个修正都是满足条件的,应该按照顺序进行替换

                          这个测试的翻译修正ID:40017
                          游戏内选择任意存档都可以,进入游戏直接按ESC或者X建打开菜单,就能直接看到需要被替换的内容了

                          鬼 1 Reply Last reply
                          • 豬 豬愿你安好

                            @鬼才琪露诺
                            如果翻译修正按照从上到下的顺序进行替换的话
                            假如:
                            ScreenShot_2025-11-10_215747_840.png
                            原始日文:戦闘装備
                            翻译之后:戦闘装備
                            我增加了如下的翻译修正:
                            ScreenShot_2025-11-10_215807_553.png
                            第一行修正的意思就是
                            B如果行开始后面没有【 (「】三个符号,或者没有【存档】【配件】
                            C则在行首增加一个【 】
                            ①按照第一行的内容新的翻译会被先替换为 【 戦闘装備】

                            第二行的意思是如果
                            A原文是【戦闘装備】,
                            B翻译后的是【 戦闘装備】或者【戦闘装備】
                            C则替换成【㊣战斗装备】
                            ②按照第二行的内容的翻译会被替换为【㊣战斗装备】

                            但现在实际上没有进行第二行的替换,直接输出了 【 戦闘装備】
                            所以到底翻译修正的具体替换规则是怎么样的?
                            按照我的理解当前的两个修正都是满足条件的,应该按照顺序进行替换

                            这个测试的翻译修正ID:40017
                            游戏内选择任意存档都可以,进入游戏直接按ESC或者X建打开菜单,就能直接看到需要被替换的内容了

                            鬼 Offline
                            鬼 Offline
                            鬼才琪露诺
                            wrote on last edited by 鬼才琪露诺
                            #14

                            @豬愿你安好
                            没有再复杂的逻辑了....

                            function fixStringWithCollRegexp(str, oriText) {
                                    if (collRegxps instanceof Array) {
                                        for (let i = 0; i < collRegxps.length; i++) {
                                            let ifFindInOri = collRegxps[i][0];
                                            if (ifFindInOri) {
                                                ifFindInOri.lastIndex = 0;
                                                if (!oriText.match(ifFindInOri)) {
                                                    continue;
                                                }
                                            }
                                            let count = replaceCounts.get(collRegxps[i][1]) || 0;
                                            collRegxps[i][1].lastIndex = 0;
                                            let nstr = str.replace(collRegxps[i][1], collRegxps[i][2]);
                                            if (nstr !== str) {
                                                count++;
                                                replaceCounts.set(collRegxps[i][1], count);
                                                if (count > 10) {
                                                    mainTask("alert", `Regex ${collRegxps[i][1]} exceeded 10 replacements in 0.5sec .\nCheck your Translate Fix!!!!!\n正则 ${collRegxps[i][1]} 在0.5秒内被替换超过了 10 次.\n 检查你的翻译修正!!!`);
                                                    return nstr;
                                                }
                                            }
                                            str = nstr;
                                        }
                                    }
                                    return str;
                                }
                            
                            1 Reply Last reply
                            • 鬼 Offline
                              鬼 Offline
                              鬼才琪露诺
                              wrote on last edited by
                              #15

                              如果还搞不懂 下回我考虑做个可视化替换过程的方法吧

                              豬 1 Reply Last reply
                              • 鬼 鬼才琪露诺

                                如果还搞不懂 下回我考虑做个可视化替换过程的方法吧

                                豬 Offline
                                豬 Offline
                                豬愿你安好
                                wrote on last edited by
                                #16

                                @鬼才琪露诺
                                大致看明白了,但是就是不知道为啥替换的结果和想象中不太一样
                                如果能有个专门的可视化测试工具
                                然后日志输出每次循环,AB规则是否执行,执行后替换结果,方便找问题

                                鬼 1 Reply Last reply
                                • 豬 豬愿你安好

                                  @鬼才琪露诺
                                  大致看明白了,但是就是不知道为啥替换的结果和想象中不太一样
                                  如果能有个专门的可视化测试工具
                                  然后日志输出每次循环,AB规则是否执行,执行后替换结果,方便找问题

                                  鬼 Offline
                                  鬼 Offline
                                  鬼才琪露诺
                                  wrote on last edited by
                                  #17

                                  @豬愿你安好 对于这种功能我大概不会做很详细的测试功能
                                  很边角也很少人用。

                                  1 Reply Last reply
                                  • 鬼 Offline
                                    鬼 Offline
                                    鬼才琪露诺
                                    wrote on last edited by
                                    #18

                                    而且由于这个设计 对用户的要求也高 问题会很多

                                    1 Reply Last reply
                                    • 鬼 Offline
                                      鬼 Offline
                                      鬼才琪露诺
                                      wrote on last edited by
                                      #19

                                      我更想在以后的更新中在翻译质量上直接优化
                                      现在的流程还是受机翻时代的影响 很局限。
                                      我这个在ai热起来前就有很多用户了。

                                      要想完整的发挥潜力,整个翻译流程从文字提取到服务端翻译都要彻底修改。。。

                                      1 Reply Last reply
                                      • 鬼 Offline
                                        鬼 Offline
                                        鬼才琪露诺
                                        wrote on last edited by
                                        #20

                                        最近的更新有一些尝试 但每次都干出不少负面影响。。
                                        翻译质量甚至是下滑的。。。

                                        豬 1 Reply Last reply
                                        • 鬼 鬼才琪露诺

                                          最近的更新有一些尝试 但每次都干出不少负面影响。。
                                          翻译质量甚至是下滑的。。。

                                          豬 Offline
                                          豬 Offline
                                          豬愿你安好
                                          wrote on last edited by
                                          #21

                                          @鬼才琪露诺
                                          没事儿,那我就先这么对付用着吧。
                                          其实主要是原版翻译后同一个名字的翻译有好多的称呼,
                                          还有就是莫名其妙的多出几个字符,
                                          再就是莫名其妙的名字翻译最后的部分会跑到下一行的开头。
                                          用工具翻译出来的文件还是不可编辑的,要不还能直接改翻译内容。
                                          所以才要用翻译修正弄,最起码折腾完了能比原本的翻译要好看许多。
                                          renpy做的大部分游戏基本用不到翻译修正
                                          绝大多数需要用到的主要还是rpgmaker系列
                                          wolf系列引擎的游戏
                                          你还是先专注去处理其他的问题吧。
                                          这个翻译修正确实用的人不多

                                          1 Reply Last reply
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups