|
[技术]Arbiter语法教程【第三版】.精 (7/3314) |
|
|
|
|
Goodbye,Minesweeper Clone 0.97.
关于arbiter(from JSD): 1、arbiter只需要解压就可以玩,所有的相关文件都在一个主文件夹内; 2、arbiter的设置保存在 arbiter.dat 文件内,这个文件包括了所有的设置,包括你的标识; 3、arbiter所有的数据保存在 stats.dat 和 statszini.dat 内; 4、counter 和 autosave 文件可以直接在文件里修改,但是需要先关掉arbiter(如果不关掉会被程序重写)。 5、在打开arbiter的情况下,传输文件可能会导致 statszini.dat 损坏(不知何故,不明真相,求高手指点)。
arbiter 于8月4号正式成为扫雷网接受录像软件,不过其Counter和autosave设置太过复杂(可能是因为用pascal 开发的)。现终于搞清楚了它的语法规则,特拿出来共享。(高考后闲着没事干)欢迎指教,欢迎吐槽。
PS:毛叔和JSD先后做了Arbiter的汉化,不过毛叔的版本有点老,是0.39版本的,JSD的好像没有汉化完成(可能认为剩下的没必要汉化),然后两版对照还有一些不同,所以自己做了一个,将所有可以汉化的基本都翻译过来了。汉化文件可以在雷网主群群共享中找到。不过还是建议用英文版。任何汉化都不能完全表达原版的意思。
好了开始正文
autosave 语法规则
每个条件分为3行: 第一行:设置自动保存录像的条件:这个貌似和Clone差不多。 第二行:设置自动保存录像的文件名:这个貌似也和Clone差不多,然后设置中文名好像也没有bug。 第三行:设置文件保存路径:那个path=xxxxx 是指arbiter 所在目录里的xxxxx (即相对路径)。(注意只能设置一层文件夹,无法设置到子文件夹)
以";"开头的语句将被忽略。 读取时以三行为一组。
结尾带有TERMINAL的语句,满足其条件后将不再读取其他语句。 可以作为自动保存条件的数据:(只翻译常用的数据) <name>(你的名字) <mode>(级别) <time>(时间) <inttime> <completion>(完成度) <3bv> <3bv/s> (这两个就不用翻译了吧) <hh> <min> <sec> <dd> <ddd> <mm> <mmm> <mmmm> <yy> <yyyy>(这些应该是时分秒年月日什么的)
例子: mode=1 and time<2 and completion=100 <mode>_<time>_3BV=<3bv>_3BVs=<3bv/s>_<name> PATH=Time 说明: Mode=1,2,3分别对应初级、中级和高级 time 时间 and 用and连接的语句只有所有条件都满足才会保存录像(不知能否使用or语句) completion 完成度(一般设置为completion=100,雷网只承认completion=100的录像)
这三句话的意思是: 保存初级少于2秒的录像到arbiter目录下的Time文件夹(如果文件夹不存在就自动创建)
counter 语法规则
"|"的左边是数据的名称,右边是一个单独的函数。 以"#"开头的行,"|"右边的函数会以文字形式插入到上一行的函数结果之后。 以"@"开头的行,"|"右边的函数会以运算结果的形式插入到上一行的函数结果之后。 最多可以写50个函数。占用CPU太多没有意义。 空行无效。 以";"开头的行无效。 含有错误语句的行无效。 例子: 说明: RTime | TIMEREAL{2} 数据名称 RTime | 函数 TIMEREAL{2} #| ( 在上一行的结果后插入"(" @| TIMEINT 在上一行的结果后插入"TIMEINT"的结果 #|) 在上一行的结果后插入")"
PS:"{}"内的是精确度({2}表示精确到两位小数)
另外,arbiter自带的counter太过复杂,有许多无用的数据,现提供JSD制作的counter供大家参考:(如果直接复制粘贴,请调整counter窗口宽度,在统计窗口设置中可以找到) EStTime|TIMEESTREAL #| @ @|BBBV/TIMEESTREAL{3} #| 3BV/s 3BV|BBBVDONE #|/ @|BBBV #|~~ @|BBBVDONE/BBBV*100 #|% QG|(TIMEESTREAL^1.7)/BBBV{3} IOE|TOTALEFF/TOTALCLK*100 #|% * @|BBBVDONE/TOTALEFF{3} #| = @|BBBVDONE/TOTALCLK{3} Path|PATH #| @ @|PATH/TIMEREAL{1} #| pix/s Rank|RANKTIME #| th Time @|RANKBBBVS #| th 3BV/s Left|LCLK #| @ @|LCLK/TIMEREAL{3} #| click/s Right|RCLK #| @ @|RCLK/TIMEREAL{3} #| click/s Double|DCLK #| @ @|DCLK/TIMEREAL{3} #| click/s Cl|TOTALCLK #| @ @|TOTALCLK/TIMEREAL{3} #| click/s
最后是传送门: 【Arbiter使用教程一】 【Arbiter使用教程二】
【随时漏算,随时更新】
|
|
这个语言文件没啥版权吧,我的那版没有翻译的部分有些是我觉得本身的意思足够清晰了没必要翻译,有些是涉及到第三方GUI的因素,翻译了会有问题。
|
|
猜对了。。。果然是觉得没必要。。。
然后GUI 是什么。。。
|
|
原作者的解释:Arbiter uses some third-party GUI components apparently unable to display any characters but Latin. Massive GUI changes are needed to fix that. I've neither time, nor desire to do that.
|
|
|
|