欧卡2中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

需要三步,才能开始

只需两步,慢速开始

玩欧卡就用莱仕达V99方向盘欧卡2入门方向盘选莱仕达V9莱仕达折叠便携游戏方向盘支架欢迎地图Mod入驻
查看: 5584|回复: 0
收起左侧

关于对qq游戏的围棋格式wgs格式的分析(kiseigo原创)

[复制链接]
起名字最烦了 发表于 2012-7-13 00:01 | 显示全部楼层 |阅读模式
我在qq上面下过几盘,但是用multigo打开不了,老是一手一手的打开,切换,然后对照着重新复盘,非常麻烦,在网络上面搜索半天也不见有人分析和编写过此程序。所以今天2007.07.09晚上劳驾新认识的网友(吉利亞特)帮忙,一步步的下,一步步的保存,通过研究,发现规律如下。表头未分析,有时间再研究。

从70h行,8列开始的代码是: DD 00 3C 03 0C 0F 3C 0F 0C 02 3C 09……
用UltraEdit-32打开棋谱.wgs文件。总手数保存在第70h行,第8列:DD 00,表示共13 * 16 + 13 = 211手。下面的代码是:3C 03 表示黑的第一手,下在3 * 16 + 12 = 60, 60 / 4 = 15, 15 + 1 = 16 列 (加1是因为x坐标水平从0开始), 03 表示3 + 1 = 4 行。也就是右上角的星位。 第二手:0C 0F,表示下在第12 / 4 + 1 = 4列,15 + 1 = 16 行,也就是左下的星位。以后一直是这样的规律。qqGame是用坐标来保存的,格式是二进制或者16进制。坐标的原点在左上角,水平的是x向右,垂直的是y坐标向下,x的最小单位是4,上边中间的星位的x坐标是24Hex,也就是36DEG(9*4), x的最大坐标是48Hex。 y坐标的最小单位是01,最大的y坐标是12Hex。
  sgf格式的研究。这是网络最流行的围棋棋谱格式了,为最流行软件multigo所支持和推广。现在,我们来研究它的规律:首先,我发现一个值得注意的问题,multigo的棋谱有时候有i列(也就是说,它的边上的星位的坐标显示的不是j,而有可能是k !但是保存的时候没有此问题,边上的星位都是j,J),有时候没有,好象某版本可以变换,但是……,现在我们只针对multigo3.5版本研究。随便新建一个sgf格式,在几个关键的地方下几手棋,然后保存。右上,左上,右下,左下,的坐标分别为:SA,AA,SS,AS 。再分析几手,可以看出来,sgf格式的原点在左上角,
x水平向右,由A-B-C----J------R-S。y垂直向下,也是由A-B------J------R-S。因此,左上是AA,右上是SA。具体如下:B[sa]; W[aa] ;B[ss] ;W[as] ;B[sj] ;W[aj]  ;B[ja] ;W[js] ;B[jj] ;W[ij] ;B[kj] ;W[hj] 。表头略过不分析。
  因此,我们只要用编程工具,读取二进制文件,然后转换成sgf格式,应该是和喝一瓶啤酒一样容易的事情。okieee~~~~Let's do it now~~
下次公布小程序到网上。

转自http://blog.sina.com.cn/s/blog_4c8bb86b010009cd.html

联系我们|手机版|欧卡2中国 ( 湘ICP备11020288号-1 )

GMT+8, 2024-11-25 13:17 , Processed in 0.042711 second(s), 11 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表