《棋谱》、“分”的符号规范

1.PGN简介
PGN是“便携式游戏符号”,这是一个在ASCII文本文件中表达象棋数据的标准设置。PGN旨在使人们易于读写,计算机程序易于分析和生成。定义和传播PGN的目的是促进开放游戏数据的共享和交流,包括来自世界各地的棋手(无论是否有组织)、出版商和计算机象棋研究。
PGN不是万能的;没有什么标准是万能的。它希望成为数据交换的通用可移植表示,这是为了使象棋应用程序组能够从PGN本身导入和导出,以便快速、方便地处理游戏数据。对它的要求是:简洁,它能在不同平台上工作,它能被大多数人和各种处理程序理解、使用和产生,也就是说“同一种语言”,它是开放的,不需要加密,易于扩展和升级,国际化,可继承。【翻译注意:因为是编译的,所以译文的字幕号与原文不对应。以下均为】
2.一个标准的PGN游戏
虽然乍一看似乎冗长,但实际上PGN很简单。下面是一个例子,其重要特征将在后面描述:
[事件’ F/S返回匹配’]
[网站’塞尔维亚贝尔格莱德JUG’]
[日期’ 1992年11月4日’]
[第29回合]
[怀特菲舍尔,罗伯特j . ‘]
[黑色’斯帕斯基,鲍里斯V.’]
[结果’ 1/2-1/2′]
1.e4 e5 2。Nf3 Nc6 3。Bb5 a6 4。Ba4 Nf6 5。O-O Be7 6。Re1 b5 7。Bb3 d6 8。c3 O-O 9。h3 Nb8 10。d4 Nbd7 11。c4 c6 12。cxb5 axb5 13。Nc3 Bb7 14。Bg5 b4 15。Nb1 h6 16。Bh4 c5 17。dxe5 Nxe4 18。Bxe7 Qxe7 19。exd6 Qf6 20。Nbd2 Nxd6 21。Nc4 Nxc4 22。Bxc4 Nb6 23。Ne5 Rae8 24。Bxf7 Rxf7 25。Nxf7 Rxe1 26。Q xe1 Kxf7 27。Qe3 Qg5 28。Qxg5 hxg5 29。b3 Ke6 30。a3 Kd6 31。axb4 cxb4 32。Ra5 Nd5 33。f3 Bc8 34。Kf2 Bf5 35。Ra7 g6 36。Ra6 Kc5 37。Ke1 Nf4 38。g3 Nx h3 39。Kd2 Kb5 40。Rd6 Kc5 41。Ra6 Nf2 42。g4 Bd3 43。Re6 1/2-1/2
3.结构
PGN数据文件是从零到多的一系列PGN象棋游戏。一个空文件也是一个合法的PGN数据文件,尽管它有点不合常规。
PGN国际象棋游戏由两部分组成。第一个是“标签对部分”,第二个是“棋谱部分”。标签部分用于识别棋局,具有标准参数;国际象棋的分数用“标准代数记数法”来表示,这也将在后面描述。
3-1标签对部分
标签对部分由一系列空的或更多的“标签对”组成。标签对由左右方括号、符号符号和字符串符号组成。Symbol是标签的名称,而string symbol一起是标签值,它们的表示方式有一定的标准。同一标记名不能在一个标记对中出现多次。标签区分大小写,所有用于存档存储的标签都以大写字母开头。[翻译注释:那些目前不熟悉PGN的人不应该被这些术语吓倒。与非常详细的原文相比,译文已经尽可能简洁。只要你仔细看上面的标准PGN国际象棋,看到那些方括号了吗?就是标签到零件,很好理解】。
七个标签项目
这是七个基本的标签项目。其实输入的顺序不一定那么严格,可以根据需要进行扩展和添加。七个基本标签项如下:【注意PGN规范不支持汉字,下面“//”后面的中文只是Benvenga的解释】
1)赛事比赛名称。例如:
[事件’ FIDE世界锦标赛’]//国际象棋联合会世界锦标赛
[事件’休闲游戏’] //即兴比赛
[事件’ ‘] //比赛名称未知。
2)现场比赛场地。例如:
[站点’美国纽约州纽约市’] //美国纽约
[地点’中国北京’] //中国北京
3)日期局开始的日期,使用当地时间。例如:
[日期’ 2001.01.01′] //一看就懂!
[日期’ 1993年.’]//1993年,但月日不详。
注意日期的格式是:年、月、日。
4)回合比赛回合。例如:
[回合’ 1′]
[Round ‘3.1’] //第三个大轮子的第一个轮子,用“.”隔开;较小的圆形以类似方式表示。
[Round’ ‘] //回合未知。
5)白方玩家的名字。有一定的书写规律,不容易概括不同民族的人的名字,但至少不难理解。电脑玩家在名字后面加上版本信息。例如:
[怀特’塔尔,米哈伊尔N.’] //米哈伊尔n .塔尔
[白色’卡斯帕罗夫,加里’] //加里卡斯帕罗夫
6)黑玩家的名字和白玩家的规则没什么区别。
7)结果这个局的结果。例如:
[结果’ 0-1′] //黑声
[结果’ 1-0′] //白胜
[结果’ 1/2-1/2′] //平局
[结果’ *’] //可能还在进行中,局可能无效,也可能有其他原因。反正结果未知。
3-2国际象棋得分部分
包括棋步、回合、可选注释以及游戏终止符。棋谱里不能出现非法走法,评论里可以出现。
用“标准代数记数法”用大写英文字母表示棋子:P=士兵,N=马,B=大象,R=车,Q=背,K=王。但军人往往不需要字母,一般会省略。小写字母“X”表示吃,士兵吃的表情与其他棋子略有不同。注意,如果某方有不止一个棋子可以走到特定的格子,为了区分走的是哪一个,有一套规定的记谱法,不过这和平时看到的书上的棋谱记谱法差不多…
车王的短易位用“O-O”表示,长易位用“O-O-O”表示。注意这是大写字母“O”而不是数字“零”。
吃路兵没什么特别的表情。至于士兵的晋升和换装,则由“=”后紧接着的晋升和换装件的符号表示。
如果一步一步走个大概,后面加个” “。垂死的意思是“#”。写一个复杂的棋谱,比如:fxg1=Q#,意思是黑方f2的士兵在g1格子里吃了一个白子,升到了岗位,将会击杀白方。
有六个后缀表示某个游戏的好坏:’!’, ‘ ‘, ‘!’, ‘! ‘, ‘ !’、和”,意思和书上默认的棋谱意思差不多。
必须有一个棋局结束标记,即始终在棋局比分末尾的那个:1-0,或0-1,或1/2-1/2,表示结果。注意是数字“零”而不是字母“O”;如果结果未知,用星号*标记。这里的游戏结束标记必须与前面的结果标记对匹配,但是注意游戏结束标记没有用引号括起来。【翻译注:如果要详细严格定义PGN标签和棋谱的标准表示法,真的可以写成一篇冗长罗嗦的文章。事实上,如果我们对学习甚至编程不感兴趣,我们基本上可以通过查看一些PGN文件来学习。】
4.补充标签项目
补充项目不是必须的。事实上,不同地方的PGN象棋得分往往是不同的。
4-1关于棋手的信息
1) WhiteTitle白色标题,如FM、IM、GM
2) WhiteElo国际评分是指国际象棋联合会的Elo评分。
3)白色一个白色的电子邮件或其他在线地址
4) WhiteType白色类型,human指人类;程序是指软件(计算机)
黑写也一样;如果没有这些补充资料,则以“-”号表示。
4-2与事件相关的信息
1)事件日期,不同于标签对中的日期,是指整个事件的开始日期。
2)活动赞助商赞助商
3)截面面积,如开放或保留
4)阶段阶段,如预赛或决赛
5)板数,即团体赛或车轮战中的板数。
6)时间是指局开始时当地时间的“时:分:秒”。
4-3开业信息
1)打开用字符串表示传统的打开名称。
2)变异改名,以后会细化。
3)子变量分支变量名称
4)在ECO“象棋开局百科全书”中定义的开局数
5)在NIC著名的“新棋局”数据库中定义的开局号码
4-4时间限制
TimeControl用作标签名称,有六种不同的表达式,例如:
1) [TimeControl’ ‘] //时间限制未知。
2) [TimeControl ‘-‘] //无限时间
3)[时间控制’ 40/9000 ‘]//9000秒内走40步(即2个半小时)
4) [TimeControl ‘300’] //双方各下一局300秒,即5分钟快棋。
5) [TimeControl ‘4500 60’] //用于“加时赛”比赛,这里是4500秒(90分钟)的基本时限,然后每一步加60秒。
6) [TimeControl ‘*180′] //每一步的沙漏时间限制,其中星号后面的数字是秒数,即每一步要在180秒内完成。
事实上,您还可以定义额外的时间限制表示。
4-5开始情境
默认的起始情况当然是游戏的原始情况。但如果局方的规定是从某一种情况出发,会使用以下标签。
1)设置如果值为1,则表示该局的初始情况是“阶段性”的
2)芬用“福赛思-爱德华兹记数法”表示情境的开始。下一篇文章将解释分的符号。
4-6游戏结束
在由终止标签名称表示的结果标签项中没有可以公开的附加信息。
1)[终止‘放弃’]//局方放弃。
2)[终止‘裁决’]//结果由第三方宣判。
3)[终止‘死亡’]//哦.
4)[终止‘紧急’]//出现意外情况。
5)[终止’正常’] //一般结束
6)[终止‘违反规则’]//输的一方违反规则。
7)[终止‘时间丧失’]//输的一方超时。
8)[终止’未到期’]//没有结束。
4-7其他
这是一个不能归入上述类别的标签项目。
1)注释者的姓名
2)模式这是下板的方式。例如,OTB代表棋盘,PM代表书面邮件,EM代表电子邮件,ICS代表离线站点,TC代表通常的长途电信。
3) PlyCount表示局中步数,严格来说是“半”步。
5.文件名和目录
也就是,“。pgn”用作文件后缀,例如:worldcup.pgn
至于文件名和目录,如果要用严格的文件命名法来命名的话,有很多条条框框,但一般的使用并没有那么严格。只要它们容易记忆和理解,按照一般的电脑文件来命名就够了,只要注意它们在不同操作系统平台上的通用性就可以了。简而言之,如果是个人或者小范围使用,就很随便了,只规定了后缀。
6.PGN软件公司
编译注:这个.不需要翻译,因为原文写得比较早,引用的处理PGN文件的软件都是“老”的。事实上,winboard,一个今天的免费工具,非常容易使用,你不需要太注意PGN的严格语法。关于winboard的英文帮助文件和教程可以以后翻译。
基本上,原文是严格定义的关于PGN及相关技术的规范性手册或指南,本次翻译仅摘录其中最重要的部分进行汇编。知道如何在一般情况下使用PGN就足够了,尤其是当它仅用于得分、收集和交流棋局时。然而,知道上面的一些定义会使它更容易使用。
但是,如果你想写一个程序,你应该仔细阅读原文。
还有FEN等国际象棋符号格式,也是常用的,将在下一篇文章中编译。
最后,把单个文件内容放入标准的PGN格式,对比一下,就一目了然了。PGN文件不兼容中文字体,“//”后面的中文其实是添加的注释,原文件中没有。PGN实际上是一个文本文件,可以直接用记事本或其他文字处理工具打开。打开一个文件如下。远远没有包括所有提到的标签项目,但这七个基本标签是:
[赛事’中国-RUS巅峰男子’]//赛事名称,中俄至尊赛男团
[地点’上海’] //地点:上海
[日期’ 2001年9月10日’]//本局日期
[第4轮] //第4轮
[白’叶江川’] //白叶江川
[布莱克德列夫,阿列克谢] //布莱克a德列夫
[结果’ 1-0′] //比赛结果是白胜。
【开场’卡罗-卡恩3360经典,6 . H4 ‘]//开场名,卡罗-卡恩防守:经典变奏,6。H4
[eco ‘ B19 ‘]//eco的开头号码是B19。
[NIC ‘CK.11’] //’象棋中的新’编号
[WhiteElo ‘2677’] //白人国际Elo分数
[BlackElo ‘2690’] //黑人国际Elo得分
[PlyCount ’75’] //双方走了75步(不是回合)
[EventDate ‘2001.09.07’] //事件的开始日期
1.e4 c6 2。d4 d5 3。Nd2 dxe4 4。Nxe4 Bf5 5。Ng3 Bg6 6。h4 h6 7。Nf3 e6 8。Ne5
Bh7 9。Bd3 Bxd3 10。Qxd3 Nd7 11。f4 c5 12。Be3 Qa5 13。Bd2 Qa4 14。d5 Ne7 15。
dxe6 Nxe5 16。fxe5 fxe6 17。Bc3 Rd8 18。Qe2 h5 19。O-O a6 20。Ne4 Nf5 21。Nd6
Nxd6 22。exd6 Qg4 23。Qf2 Qg6 24。Be5 Bxd6 25。Bxd6 Rxd6 26。Qxc5 Rc6 27。Qa7
Qxc2 28。Qxb7 Qc5 29。Kh1 Rc7 30。Qb8 Rc8 31。Qg3 g5 32。Rae1 Rh6 33。Qf3 Qe7
34.hxg5 Rh8 35。Qb3 Rc6 36。Rd1 Qc7 37。Qd3 Rg8 38。Qf3 1-0
如果它是一个包含不止一个游戏的PGN文件,那么它实际上是以文本形式写在同一个PGN文件中的一个完整的PGN象棋游戏。
PGN是用来储存游戏的。此外,为了满足国际象棋的其他相关要求,还有其他的数据表示标准。最重要的是FEN和EPD。翻译主要讲分的格式。
1、分
FEN是“Forsyth-Edwards记数法”,这是一种用ASCII字符描述棋局的标准。分是以19世纪报纸记者SD福斯设计的记录情境标准为基础的。后来为了满足象棋软件的需要,爱德华兹做了一些修改。
在需要大量交换和共享形势数据的国际象棋编程中,标准形势标记起着特别重要的作用。其实对于一般的学习和拆棋都很有用,甚至是娱乐,后面会简单说明。
1-1结构描述
FEN记录由不同长度的线表示,由六个区域组成。简单FEN记录文件的后缀应该是”。fen”,例如:kk-1.fen
分描述:棋位、棋轮、易位可行性、路人目标格、半步数、总回合数。所有这些都可以用一行文字符号来表示,非常容易阅读。
看一分的六个区域及其含义。首先,举一个大家都太熟悉的情况的FEN文件:
这是每一场常规比赛的初始情况,一分钱都没动过。
这个围栏中的六个不同区域用不同的颜色表示。它们是:
1)贴片数据的红色部分。
意思是双方的棋子在棋盘的哪一格上。规则是从第8条水平线开始数到第1条水平线(白线在最下面,从上到下),从A线开始数到H线;白棋棋子用大写字母“pnbrqk”表示,黑棋棋子用小写字母“PNBRQK”表示,这是一种英文记数法。每个字母所代表的含义与常规规则相同。数字表示水平行上的连续空格,反斜杠“/”表示水平行描述的结束。
上面的pppppppp是指黑方7横线8兵;最后四个数字,8,表示从第6到第3横线,两边没有棋子,是空格;七个反斜杠“/”把第一个区域分成八段,因为棋盘有八条横线;其他的可以根据图表类比。
2)活动色的深绿色部分。
指示在当前情况下谁应该下棋。小写“W”表示白棋;小写“B”表示黑方走棋;很明显,一开始的情况肯定是先白,所以上面是“W”。
3)易位可用性的紫色部分
这就表明了在目前的情况下(目前不一定,但未来有可能)各方是否具备各种王车易位的潜在可行性。如果没有人,用“-”号表示;大写“K”表示白色短易位的可行性,大写“Q”表示白色长易位的可行性。对应的小写“K”和“Q”代表黑方短、长易位的可行性。书写顺序必须是大写先,小写先,短易位先,长易位先,中间不能有空格。
4)我吃过路兵目标广场的紫色部分。
如果不是,用“-”号表示。如果有,用吃路兵具体完成的网格坐标。很明显,白兵只能在3横线吃,黑兵只能在6横线吃。而且这个标记是并且只有在这种情况下的最后一招是某方刚刚行进前进了两格的时候才会出现。
5)半移动时钟的浅蓝色部分
用一个非负数来表示自上次移动或进食以来已经走了半圈的次数。这是为了适应50步抽签规则。但是在winboard的FEN输出中,这个值好像总是0。
6)棕色部分的回合数(满棋数)
要进行的当前回合数。不管是白人还是黑人,第一步总是用1表示。之后黑方每走一步都会在数字上加1。
1-2个例子
好吧,举个例子:
如果你从头开始,你已经走了1。E4 E5 2。NF3NC6 3。BC4NF6 4。NG5D55。EXD5NX D56。NXF7KXF7。QF3QF6 8。BXC6BXC6 10。QXC6BD6 11。NC3RHD8。
这写为分
1)第一个区域
第八横线r2r4,都是黑子(小写),从左到右是:黑车R,两个连空格,黑车R,然后是四个连空格。这条横线的八个方格都说明了;
第一条横线R1B1K2R写满了白子(大写)。从左到右分别是:白车R,一格,白象B,一格,白王K,二格,白车R,刚好八格;
以此类推,第六条横线和第四条横线就要解释了。
第六横线是2Qbbq2,从左到右是:2个空格,后面是一个白Q(注意这是大写!),黑象B,黑象B,黑Q,2个空格,正好8;第四个横线是空的,所以用“8”表示,表示8个连续的空格。
2)第二个领域
因为轮到白棋,所以是“W”。
3)第三个领域
黑王已经动了,所以失去了易位的可行性;白党之王可以,用“KQ”来表示。
4)第四个区域
上一局没有士兵推进两格,所以没有吃路兵的目标格,用“-”表示。
5)第五区
WinBoard总是输出“0”.但是,此标志的作用有限。
6)第六区
方已经打完了第11轮,现在是第12轮。
1-3其他
其实在使用winboard或chessbase等评分软件时,FEN记录和文件都是自动输入或输出的,非常方便。了解它的规律只是为了深入应用或者自己解决问题。另外,网上传棋牌游戏也不用在纸上画棋或者用文字笨拙地描述,也不用说“王者在e1,然后在XX,……”之类的话。用FEN格式写,或者干脆用winboard等直接输出FEN文件。然后发送甚至要求对方直接“粘贴-复制-粘贴”。几秒钟内,对方就能完全重现当时的情景。
(只有这张图是我做的,其他都是转自。因为群里有人问,我发现了这个信息分享。)
《国际象棋译文苑》摘要
来源:rec.games.chess新闻组
来源:PGN象棋世界档案馆
译者:迈克尔
类型:编译
http://www.xqbase.com/protocol/pgnfen1.htm

影音素材

《第51届奥斯卡》网盘下载 51届奥斯卡获奖名单

2024-7-7 11:26:06

综合资源

加长车在国内并不多见,但一辆200万加长悍马却引起了明星夫妇的关注。

2024-9-4 23:32:10

购物车
优惠劵
搜索