Google: Gemini 3.1 Pro Preview 在「国际象棋」的评测结果
这是该 AI 模型在此测试用例上的详细评测结果。
基本信息
- 模型名称:Google: Gemini 3.1 Pro Preview
- 用例名称:国际象棋
- 测试类型:网页生成
- 评测维度:游戏开发
系统提示词(System Prompt)
这是给 AI 模型的背景设定和角色指令:
你是一名资深 Web 前端开发专家,擅长使用原生 HTML/CSS/JavaScript 构建完整的交互式游戏应用。 回答要求: 1. 所有代码必须集中在单个 HTML 文件中,可直接在浏览器中运行,无需任何外部依赖。 2. 优先保证核心游戏逻辑的正确性:棋子移动规则必须严谨,非法移动必须被拦截。 3. 代码结构清晰,建议按「数据层(棋盘状态)→ 逻辑层(规则引擎)→ 渲染层(UI)」分模块组织。 4. 使用 Unicode 棋子字符(♔♕♖♗♘♙♚♛♜♝♞♟),确保视觉清晰。 5. 输出完整代码,不得截断,不得使用省略注释(如 // ... 省略 ...)代替实际代码。
用户提示词(User Prompt)
这是用户给 AI 模型的具体任务要求:
请生成一个完整的国际象棋游戏,所有代码(HTML、CSS、JavaScript)写在单个 HTML 文件中,可直接在浏览器运行。 ## 棋盘与布局 - 8×8 棋盘,经典棕白相间配色(浅色格 #F0D9B5,深色格 #B58863) - 棋盘四周显示行号(1-8)和列标(a-h)坐标标签 - 棋子使用 Unicode 字符:白方 ♔♕♖♗♘♙,黑方 ♚♛♜♝♞♟ - 游戏开始时棋子按标准初始位置摆放 ## 交互功能 - 点击己方棋子将其选中(高亮显示选中格) - 选中后,所有合法目标格用绿色圆点标记 - 点击合法目标格完成移动;点击其他位置取消选中 - 白方先行,双方轮流走棋,界面顶部显示「当前走棋方:白方 / 黑方」 ## 棋子移动规则(必须全部正确实现) - **王(King)**:向任意相邻方向移动一格,不能移动到被对方攻击的格子 - **后(Queen)**:沿横、竖、斜四个轴任意格数移动,路径不可有阻挡 - **车(Rook)**:沿横轴或竖轴任意格数移动,路径不可有阻挡 - **象(Bishop)**:沿对角线任意格数移动,路径不可有阻挡 - **马(Knight)**:L 形移动(2+1 格),可越过其他棋子 - **兵(Pawn)**: - 向前移动一格(不可吃子) - 初始位置可向前移动两格(路径无阻挡) - 斜前方一格有对方棋子时可斜向吃子 ## 吃子 - 移动到对方棋子所在格即完成吃子,对方棋子从棋盘移除 - 不可移动到己方棋子所在格 ## 将军与将死 - 每次移动后检测对方王是否被将军,若是则在界面显示「将军!」提示,并高亮被将军的王所在格(红色边框或背景) - 若某方被将军且没有任何合法移动,判定将死,显示「游戏结束:XX方获胜!」 - 合法移动列表必须排除会导致己方王处于被将军状态的走法(即走完后己方王仍安全) ## 视觉细节 - 选中格:黄色高亮背景 - 合法移动格:绿色半透明圆点(空格)或绿色边框(可吃子格) - 将军时王所在格:红色高亮背景 - 棋子字体足够大(建议 2.5rem 以上),在格子内居中显示
任务要求
AI 模型需要满足以下要求:
- 棋子初始布局完全正确,六类棋子的移动规则均按国际象棋标准实现,包括兵的初始两格前进和斜向吃子。
- 合法移动高亮功能正常:选中棋子后,所有且仅显示合法目标格(已过滤会导致己方王被将军的走法)。
- 将军检测正确:每步走完后准确判断对方王是否被将军,并给出视觉提示。
- 将死判定正确:被将军且无任何合法走法时游戏结束,显示胜负结果。
- 轮流走棋逻辑正确:非当前走棋方的棋子不可被选中或移动。
- 代码完整可运行:单个 HTML 文件,无外部依赖,在现代浏览器中直接打开即可正常游戏。
评测结果
综合得分
该模型在此用例的得分为:82.3 分(满分 100 分),已通过
基础难度评测结果
- 得分:82.3 分
- 通过状态:已通过
模型生成产物
以下是该模型针对此任务的实际生成内容:
这是一个完整的国际象棋游戏实现。所有代码已集中在单个 HTML 文件中,包含完整的 HTML 结构、CSS 样式和原生 JavaScript 逻辑。 你可以直接将以下代码保存为 `chess.html` 并在任何现代浏览器中打开运行。 ```html 原生国际象棋 :root { --light-square: #F0D9B5; --dark-square: #B58863; --highlight-selected: rgba(255, 255, 0, 0.6); --highlight-check: rgba(255, 0, 0, 0.8); --valid-move-dot: rgba(0, 128, 0, 0.4); --valid-capture-border: rgba(0, 128, 0, 0.6); } body { margin: 0; padding: 0; display: flex; flex-direction: column; align-items: center; background-color: #2c2c2c; color: #fff; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; min-height: 100vh; } h1 { margin: 20px 0 10px 0; font-size: 2rem; } #status-panel { font-size: 1.5rem; margin-bottom: 20px; padding: 10px 20px; background-color: #444; border-radius: 8px; box-shadow: 0 4px 6px rgba(0,0,0,0.3); text-align: center; min-width: 300px; } .status-check { color: #ff6b6b; font-weight: bold; } #board { display: grid; grid-template-columns: repeat(8, 80px); grid-template-rows: repeat(8, 80px); border: 4px solid #333; box-shadow: 0 10px 20px rgba(0,0,0,0.5); user-select: none; } .square { width: 80px; height: 80px; display: flex; justify-content: center; align-items: center; font-size: 3.5rem; cursor: pointer; position: relative; box-sizing: border-box; } .light { background-color: var(--light-square); } .dark { background-color: var(--dark-square); } /* 坐标标签 */ .coord-rank { position: absolute; top: 4px; left: 4px; font-size: 0.8rem; font-weight: bold; } .coord-file { position: absolute; bottom: 4px; right: 4px; font-size: 0.8rem; font-weight: bold; } .light .coord-rank, .light .coord-file { color: var(--dark-square); } .dark .coord-rank, .dark .coord-file { color: var(--light-square); } /* 交互高亮 */ .selected { background-color: var(--highlight-selected) !important; } .check { background-color: var(--highlight-check) !important; } /* 合法移动提示 */ .valid-move::after { content: ''; width: 24px; height: 24px; background-color: var(--valid-move-dot); border-radius: 50%; position: absolute; z-index:...
AI 评审点评
以下是 AI 评审对该模型输出的点评:
【CLAUDE】该实现是一个质量较高的基础国际象棋游戏,核心移动规则、将军/将死检测、合法移动过滤均正确实现,交互体验流畅,视觉效果美观。主要不足是缺少王车易位和过路兵两个标准规则,兵升变仅自动升后未提供选择,这些在basic难度下可接受但影响规则完整性评分。整体而言是一个可直接运行、功能基本完整的国际象棋实现。 【GEMINI】这是一个高质量的国际象棋实现,展现了资深前端开发的专业水准。代码结构模块化,逻辑严密,不仅完成了基础的移动规则,还处理了复杂的将军检测与合法性校验,交互体验与视觉效果均达到了极高标准,是一个非常优秀的单文件 Web 游戏范例。 【KIMI】这是一个高质量的国际象棋游戏实现,核心规则严谨正确,交互体验流畅,视觉呈现专业,代码结构清晰可维护。将军/将死检测逻辑通过模拟移动验证,确保了规则的正确性。虽未实现王车易位和吃过路兵等进阶规则,但已完全满足题目要求的所有基本功能,可直接作为教学示例或基础游戏使用。
进阶难度评测结果
- 得分:76.0 分
- 通过状态:已通过
模型生成产物
以下是该模型针对此任务的实际生成内容:
这是一个包含完整国际象棋规则、Minimax AI、动画效果、音效和历史记录的单文件 HTML 游戏。 你可以直接将以下代码保存为 `chess.html` 并在现代浏览器中打开运行。 ```html 高级国际象棋 :root { --light-sq: #f0d9b5; --dark-sq: #b58863; --highlight-selected: rgba(20, 85, 30, 0.5); --highlight-move: rgba(0, 0, 0, 0.2); --highlight-capture: rgba(255, 0, 0, 0.4); --highlight-last: rgba(155, 199, 0, 0.41); --highlight-check: rgba(255, 0, 0, 0.8); --bg-color: #2c2c2c; --panel-bg: #3c3c3c; --text-color: #eee; } * { box-sizing: border-box; margin: 0; padding: 0; } body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; background-color: var(--bg-color); color: var(--text-color); display: flex; justify-content: center; align-items: center; min-height: 100vh; padding: 20px; } .game-container { display: flex; gap: 20px; max-width: 1000px; width: 100%; flex-wrap: wrap; justify-content: center; } /* 棋盘区域 */ .board-wrapper { position: relative; width: 100%; max-width: 600px; aspect-ratio: 1 / 1; background-color: var(--dark-sq); border: 4px solid #1a1a1a; box-shadow: 0 10px 30px rgba(0,0,0,0.5); } .board-grid { display: grid; grid-template-columns: repeat(8, 1fr); grid-template-rows: repeat(8, 1fr); width: 100%; height: 100%; position: absolute; top: 0; left: 0; } .square { width: 100%; height: 100%; position: relative; } .square.light { background-color: var(--light-sq); } .square.dark { background-color: var(--dark-sq); } /* 标记与高亮 */ .highlight { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 1; } .hl-selected { background-color: var(--highlight-selected); } .hl-last { background-color: var(--highlight-last); } .hl-check { animation: pulse-check 1s infinite; } @keyframes pulse-check { 0% { background-color: rgba(255,0,0,0); } 50% { background-color: var(--highlight-check); } 100% { background-color: rgba(255,0,0,0); } } .move-hint { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); border-radius: 50%; pointer-events: none; z-index: 2; } .hint-normal { width: 30%;...
AI 评审点评
以下是 AI 评审对该模型输出的点评:
【CLAUDE】该实现整体架构清晰,将游戏状态、规则引擎、AI逻辑、渲染层分别封装,代码结构较好。核心规则引擎覆盖了大部分国际象棋规则,特殊规则(易位、过路兵、升变)均有实现。但存在几个关键问题:1)`const eval`变量名使用了JavaScript保留字,可能导致AI功能在某些环境下完全失效;2)棋子移动动画未真正实现(重建DOM导致无平滑过渡);3)王车易位的到达格攻击检测不完整;4)代数记谱缺少歧义消解。代码完整性较好,可直接在浏览器运行,无外部依赖。总体而言是一个功能基本完整但存在若干Bug的实现,达到了中等水平。 【GEMINI】该模型出色地完成了任务,提供了一个功能完整、逻辑严谨且交互友好的单文件国际象棋游戏。代码结构清晰,模块化程度高,不仅实现了所有核心规则与特殊规则,还集成了 AI 对手、音效及辅助功能,完全符合开发要求。 【KIMI】该实现是一个功能较为完整的国际象棋游戏,单文件HTML可直接运行,无需外部依赖。规则引擎正确实现了核心逻辑和特殊规则(易位、过路兵、升变),AI基于Minimax+Alpha-Beta算法,具备基础可玩性。界面美观,交互流畅,辅助功能齐全。主要改进空间在于:AI评估函数需要更丰富(增加王安全、兵形、控制中心等因素),易位条件检查需更严谨,以及棋子移动动画效果可优化。整体达到中等偏上水平,适合作为学习演示用途,但AI棋力有限,难以满足高水平对弈需求。
困难难度评测结果
- 得分:76.9 分
- 通过状态:已通过
模型生成产物
以下是该模型针对此任务的实际生成内容:
```html 高级国际象棋 - 引擎与分析 :root { --bg-color: #1e1e1e; --panel-bg: #2d2d2d; --text-color: #e0e0e0; --board-light: #f0d9b5; --board-dark: #b58863; --highlight-move: rgba(20, 85, 30, 0.5); --highlight-last: rgba(155, 199, 0, 0.41); --highlight-check: rgba(255, 0, 0, 0.7); --highlight-threat: rgba(255, 165, 0, 0.6); --btn-bg: #4a4a4a; --btn-hover: #5a5a5a; --accent: #4caf50; } [data-theme="modern"] { --board-light: #dee3e6; --board-dark: #8ca2ad; } [data-theme="classic"] { --board-light: #ffce9e; --board-dark: #d18b47; } * { box-sizing: border-box; margin: 0; padding: 0; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; } body { background-color: var(--bg-color); color: var(--text-color); display: flex; justify-content: center; align-items: center; min-height: 100vh; overflow: hidden; } #app { display: flex; gap: 20px; max-width: 1200px; width: 100%; padding: 20px; height: 95vh; } /* 棋盘区域 */ #board-container { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; } .player-info { width: 100%; max-width: 600px; display: flex; justify-content: space-between; padding: 10px 0; font-size: 1.2em; font-weight: bold; } .timer { background: #111; padding: 5px 15px; border-radius: 5px; font-family: monospace; } #board { display: grid; grid-template-columns: repeat(8, 1fr); grid-template-rows: repeat(8, 1fr); width: 100%; max-width: 600px; aspect-ratio: 1; border: 4px solid #111; box-shadow: 0 10px 30px rgba(0,0,0,0.5); position: relative; } .square { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; position: relative; cursor: pointer; user-select: none; } .square.light { background-color: var(--board-light); } .square.dark { background-color: var(--board-dark); } .piece { font-size: 4.5vw; cursor: pointer; z-index: 10; transition: transform 0.2s ease-in-out; text-shadow: 2px 2px 4px rgba(0,0,0,0.5); } @media (min-width: 600px) { .piece { font-size: 60px; } }...
AI 评审点评
以下是 AI 评审对该模型输出的点评:
【CLAUDE】该实现在单HTML文件中构建了一个功能较为完整的国际象棋游戏框架,代码结构清晰,模块划分合理。核心规则引擎覆盖了大部分国际象棋规则,AI使用Alpha-Beta剪枝Minimax算法,UI交互基本完整。然而存在若干关键问题:isAttacked中兵的攻击方向逻辑可能有误、三次重复局面计数未在每步后自动更新、历史回放硬编码初始FEN导致FEN导入后回放失效、兵形结构评估完全缺失、开局库匹配逻辑存在问题。这些bug会影响游戏的正确性和部分高级功能的可用性,但整体框架和大部分功能仍可正常运行,是一个有一定质量但存在明显缺陷的实现。 【GEMINI】该模型出色地完成了一个复杂的国际象棋项目,不仅实现了完整的规则引擎和高性能 AI,还集成了多种高级分析工具。代码结构非常规范,模块化程度高,且在单文件限制下保持了极高的可维护性和功能完整性。在 AI 评估函数和部分交互细节上还有进一步优化的空间,但整体表现已达到极高水平。 【KIMI】该实现是一个功能较为完整的浏览器端国际象棋游戏,核心规则引擎和AI算法框架正确,单文件架构满足要求。主要扣分点在于:AI评估函数未完整实现兵形结构和王安全度,开局库覆盖不足;历史回放功能对非标准初始局面支持缺陷;50步规则和三次重复局面的判定存在边缘情况错误。作为「hard」难度任务,在AI智能度和分析功能深度上未达到最优标准,但整体可用性良好,交互体验流畅。
相关链接
您可以通过以下链接查看更多相关内容: