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.
  • 豬 豬愿你安好

    @鬼才琪露诺
    如果翻译修正按照从上到下的顺序进行替换的话
    假如:
    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
                  • 鬼 Offline
                    鬼 Offline
                    鬼才琪露诺
                    wrote on last edited by
                    #22

                    图片.png

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

                      图片.png

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

                        图片.png

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

                        @鬼才琪露诺
                        这个非常好,一目了然。
                        就是现在出现一个问题,我新增一条规则然后点击保存的时候弹出
                        ScreenShot_2025-11-13_204709_388.png
                        然后重启游戏,发现翻译修正里面新增的这条没有了,也就是没保存上。

                        刚才又试验了一下,不需要重启,点击保存后直接关闭当前翻译修正再打开,
                        发现新增的记录不存在。
                        操作步骤:
                        1.png
                        2.png
                        点击保存后:
                        3.png
                        点击确定后:
                        4.png
                        再次点击确定:显示“Saved”提示
                        5.png
                        然后右上点×退出,再点开这个翻译修正,发现新增的内容没有
                        6.png
                        ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
                        工具自带的游戏库页面
                        原本游戏的封面可以拖动某个图片放置
                        现在拖动图片无法设置封面,使用【选择封面图片】这个按钮也没法设置
                        ScreenShot_2025-11-13_210643_037.png
                        有没有可能和翻译修正保存不了是一个问题造成的

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

                          ....两码事...
                          这些版本我改的东西太多了....
                          翻译修正改好了 现在就可以正常使用了..

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

                            封面图的问题 下次更新修..

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

                              最近几个版本工具所有的列表都优化了.
                              现在应该流畅得多.
                              当然没检查出的问题也会多...

                              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