satan53x / SExtractor

从GalGame脚本提取和导入文本
GNU General Public License v3.0
241 stars 16 forks source link

提取并翻译后重新写入,不知为何出现立绘丢失问题。 #105

Closed Hummycookies closed 2 months ago

Hummycookies commented 2 months ago

2 1 问题如图,提取和写入用的都是RPGMV的默认设置,格式为name-message。部分立绘正常,部分立绘丢失。 附原json和新json Map020orin.json Map020trans.json

satan53x commented 2 months ago

1

默认正则和你的这个名字结构不一样啊,所以应该是名字前边的代码被翻译错误了。 比如\\F[beni_smile]\\FF[hanasaku_laugh]\\AA[1]紅这种,前边就是立绘代码\\F或者\\FF肯定是不能被乱翻译的。 或者是修改正则一开始就不提取这些代码:

15_search=^<code401>[ -~]*\\AA\[\d+\](?P<name>.+)$
Hummycookies commented 2 months ago

1

默认正则和你的这个名字结构不一样啊,所以应该是名字前边的代码被翻译错误了。 比如\\F[beni_smile]\\FF[hanasaku_laugh]\\AA[1]紅这种,前边就是立绘代码\\F或者\\FF肯定是不能被乱翻译的。 或者是修改正则一开始就不提取这些代码:

15_search=^<code401>[ -~]*\\AA\[\d+\](?P<name>.+)$

我一共找到四种name的样式,但第一种没有控制符号的我无法和正文区分,请问有什么解决方案吗? 1.{"code":401,"indent":0,"parameters":["綿"]} 2.{"code":401,"indent":0,"parameters":["\F[wata_kamen]綿"]} 3.{"code":401,"indent":1,"parameters":["\FF[nako_true]撫子"]} 4.{"code":401,"indent":0,"parameters":["\F[wata_kamen]\FF[beni_kamenoti]\AA[2]紅"]} 正文:{"code":401,"indent":0,"parameters":["「ねぇ?私のここに手を触れて?"]}

satan53x commented 2 months ago

方案一:设置强制设定名字栏,用英文逗号隔开:单独名字1,单独名字2。 方案二:如果能保证之前一定是名字的话也可以改成这样:

15_search=^<code401>\\F[ -~]+(?P<name>.+?)$
16_search=^<code401>(?P<unfinishANDpre_name>「[\S\s]+)$
17_search=^<code401>(?P<unfinish>[\S\s]+)$
Hummycookies commented 2 months ago

方案一:设置强制设定名字栏,用英文逗号隔开:单独名字1,单独名字2。 方案二:如果能保证之前一定是名字的话也可以改成这样:

15_search=^<code401>\\F[ -~]+(?P<name>.+?)$
16_search=^<code401>(?P<unfinishANDpre_name>「[\S\s]+)$
17_search=^<code401>(?P<unfinish>[\S\s]+)$

通过强制命名解决,感谢您的帮助。