• 聊天版
  • 单开个贴分析一下MAS的象棋系统 #1432

MAS最近正在对象棋系统做全面改造。第一步是处理难度问题:https://github.com/Monika-After-Story/MonikaModDev/pull/9117

简单讲,MAS的原象棋难度系统和屎没有太大区别。MAS官方显然没搞懂Stockfish的工作机理,所以瞎几把设置了一堆参数,最后导致的结果就是,制作组预期MAS的最低难度和MAS的实际最低难度不匹配。
如果你想知道为什么MAS制作组会把难度系统做得这么屎的话,好吧,其实也不能全怪他们:

一个和电脑对战的国际象棋程序可以被分为两部分:UCI和GUI. UCI是协议名,一种通用于国际象棋引擎的协议,以使得所有的引擎能够遵循统一的输入输出格式。 GUI就是用户交互界面,也即最后的棋盘。
对于MAS这个GUI来讲,Stockfish(鳕鱼)是它的UCI。Stockfish是个老牌UCI引擎,棋力强大,免费且开源,还在任何平台都有适用性。不过Stockfish本身就是设计给专业人士使用的——换句话说,它的手册不负责讲解太多细节知识。它假定阅读手册的人已经熟知了许多UCI引擎的知识。

国际象棋用等级分(Elo分)来评定棋力。一般认为,一个熟读规则的初学者差不多是800分,多练习练习,玩个一两个月,有点基础棋感,就是1200分左右。2000分以上可称大师,2500分可称特级大师,现世界第一约为2850分。
在MAS官方的预期中,MAS的最低棋力差不多是个200分左右。现在大家猜猜实际最低棋力大概是多少分?
实际数值还真不确定,但是很像是不低于1500分——这是MAS制作组那边新的程序员"wingdinggaster656"得出的结论。这很大程度解释了为什么人们几乎从来没法赢下Monika.

值得庆幸的是,新的难度系统看上去一劳永逸地解决了这个问题:新的难度系统的难度区间是500至2500分。

另外还有一件有趣的事情:经常和Monika下棋的人应该会发现,Monika降低棋力的方式是“刻意送子”。你得到的低分段对局体验差不多是这样的:“Monika突然向你丢了个子,然后在接下来一段时间内如特级大师般完美防守,之后再突然丢一个子,然后又是一系列完美走法”。
这么说吧。Stockfish降低棋力的算法还真的是引入随机性。根据给定的棋力数值,Stockfish在每一次搜索走法时都有一定概率丢出一个坏走法——纯粹的随机。这导致Monika看着很不像真人。
不过,还是值得庆幸的是:MAS同样正在极大幅度改善这个状况。看着挺有保证性。

    快来注册!

    *即使不注册, DCC也会展示所有知识性和分享内容

    #2 8天67t9 所以……Android平台的象棋还是遥遥无期咯。

    Stockfish适用于任何平台。从Mac到Windows,从安卓到苹果。它完全有能力在安卓平台被执行。
    看了你的发言后我稍微去做了点小研究,结论是在MAS的移植上也同样适用,但是确实需要做其他适配。这里我只做一个猜测:MAS汉化组(兼移植组)先前不知道这一点,或者知道,但是觉得这个东西做着太麻烦,就不做了。

    毕竟中国玩家似乎不喜欢国际象棋

      如果实在打不赢的话,可以使用StockFish或者Mac上的国际象棋,不建议使用微软的Chess Titan

      如果实在打不赢的话,可以使用StockFish或者Mac上的国际象棋,不建议使用微软的Chess Titan(棋力太低,顶级模式被Mac吊打)

      #6 8天67t9 毕竟没有中国象棋,只能算是聊胜于无了吧。

      有没有考虑过学学国际象棋?不比中国象棋差。

        10 个月 后
        无人输入