遇见数据集

wh40k-11e-mfm

收藏
github2026-06-21 更新2026-06-22 收录
官方服务:

资源简介:

该数据集从官方战锤40,000 Munitorum Field Manual网站抓取,并转换为干净、版本化的YAML格式,跟踪点数随时间的变化。数据集包含每个派系的可读文件,存储在data/目录中,并通过Git历史记录精确追踪每个点数变更。

This dataset was scraped from the official Warhammer 40,000 Munitorum Field Manual website, converted into a clean, versioned YAML format to track changes in point values over time, includes human-readable files for each faction stored in the data/ directory, and precisely tracks every point value alteration through its Git history.

创建时间:
2026-06-18
原始信息汇总

数据集概述

这是一个非官方的 Warhammer 40,000 Munitorum Field Manual 数据抓取与整理项目,专注于将官方在线版军备手册中的分值数据提取为结构化的 YAML 文件,并记录分值的历史变更。

核心特性

  • 数据集格式:每个阵营对应一个独立文件,位于 data/ 目录下,文件为人类可读的 YAML 格式。
  • 变更追踪:利用 Git 的 git log -p data/ 精确记录每次分值变动。当 Games Workshop 更新手册时,自动化任务会生成变更日志并提交 Pull Request。

数据获取方式

  • 主要数据通过 HTTP GET 请求和 HTML 解析(使用 cheerio 库)获取,因为大多数数据是服务端渲染的。
  • Legends 单位及可展开的 "Welcome…" 注释依赖客户端渲染,需通过 Playwright 无头浏览器捕获。可通过 --no-legends 参数跳过此步骤。

运行方式

命令 说明
pnpm scrape --faction necrons 抓取单个阵营(如 necrons)
pnpm scrape --no-legends 仅 HTTP 快速抓取(不加载浏览器)
pnpm scrape 完整抓取所有阵营(包含 Legends 和注释)

数据质量保障

  • 抓取结果通过 zod 模式验证(src/model.ts)后才写入文件。
  • 解析器基于真实页面快照进行测试(test/fixtures/),网站变更会在 CI 中捕获。
  • 每日通过 GitHub Action 重新抓取,发现变更时自动创建 PR,解析失败时自动提交 Issue。

技术栈

TypeScript (Node 22, ESM) · cheerio · zod · yaml · Vitest · Biome · pnpm

维护参考

  • 项目结构与命令:参见 AGENTS.md
  • 数据合约:参见 specs/ 目录
  • 操作手册:参见 .agents/playbooks/ 目录(尤其是抓取失败时的处理流程)

法律声明

非官方项目。Warhammer 40,000 及 Munitorum Field Manual 版权归 Games Workshop 所有。本项目仅对公开可获取的分值数据进行格式化整理,供个人/社区参考,与 Games Workshop 无关联或认可关系。

搜集汇总
数据集介绍
wh40k-11e-mfm 数据集图片
构建方式
在桌面战棋游戏《战锤40K》的动态平衡背景下,munitorum_field_manual(军务部野战手册)作为官方核心数据源,定期发布各阵营单位的分数调整。该数据集通过构建自动化抓取管线,直接向Games Workshop官方手册页面发起HTTP GET请求并解析服务端渲染的HTML内容。针对Legends单位及可折叠的欢迎说明等客户端专属内容,采用Playwright无头浏览器进行补充捕获。所有原始数据经严格的Zod模式校验后,以人类可读的YAML格式按阵营分类存储于data/目录下。
特点
本数据集的核心价值在于其版本化追踪能力——每次GW更新手册时,预定执行的GitHub Action自动重新抓取数据,通过确定性YAML格式确保git log -p data/能精确记录每一处分数变更,并自动生成变更日志PR。解析过程配备三重防护:Zod模式拒绝不良数据、针对真实存档页面的离线测试捕获站点更新、CI环境中的每日重新抓取触发问题报告机制。
使用方法
使用者可通过pnpm生态快速启动数据操作:执行pnpm scrape --faction necrons即可单阵营获取尼科隆族最新分数至data/necrons.yaml;添加--no-legends跳过浏览器渲染实现纯HTTP高速抓取;pnpm scrape --all发起全阵营完整采集。对于开发者或AI代理,AGENTS.md提供项目地图与命令参考,specs/目录保存源真值合约,.agents/playbooks/包含抓取失败的应急处置手册。
背景与挑战
背景概述
Warhammer 40,000 作为桌面临场战术游戏的巨擘,其单位分数平衡直接决定了竞技环境的生态与战术多样性。Munitorum Field Manual(MFM)作为官方分数手册,是社区对战与赛事组织的核心参考。然而,该手册仅以网页形式呈现,缺乏结构化的机器可读版本,且每次更新都会导致社区基于旧分数的战术分析与列表构建迅速失效。为此,该项目自2023年起由社区开发者维护,旨在将MFM中的分数数据自动化抽取为版本化的YAML文件,按阵营分门别类存储。通过每日抓取与差异追踪,研究者与玩家得以回溯每次分数调整的精确历史,从而支撑从平衡性分析到战术元演变的量化研究,显著提升了游戏数据的可获取性与长期研究价值。
当前挑战
该数据集面临的核心挑战在于克服官方网页的异构渲染架构:大多数分数数据通过服务端渲染以静态HTML返回,可直接解析,但Legends单位与欢迎注释等内容依赖客户端JavaScript动态加载,必须借助无头浏览器捕获,显著增加了抓取的复杂度与运行成本。构建过程中,需同时处理HTML解析的脆弱性——任何网站结构改动都可能导致解析器崩溃,因此项目借助Zod模式验证与离线测试套件确保数据格式的严格一致性,并通过每日CI任务及时捕获异常。此外,数据版本化要求每次抓取必须产出确定性的YAML,以便通过Git差异精准追踪分数变化,这在面对持续更新的在线文档时对错误处理与变更日志的自动化生成提出了严苛要求。
常用场景
经典使用场景
在桌面战棋游戏研究领域,wh40k-11e-mfm数据集被广泛应用于构建战锤40K第十一版部队构成与战术分析系统。研究者利用该数据集中的阵营单位点数数据,结合机器学习算法预测不同阵营的战术偏好和强度等级。数据集的版本化特性使其成为跨版本演变分析的基石,学者通过比对不同时间戳的YAML文件,能够精确追踪Games Workshop每次平衡性调整对单位使用率的影响,进而揭示游戏元数据的动态演化规律。
解决学术问题
该数据集解决了战锤40K学术研究中的核心数据瓶颈问题——官方点数值动态变化导致的实验不可复现性。通过提供结构化的版本化YAML数据和精准的变更历史记录,研究者得以建立标准化的竞技分析基准,显著提升了跨研究之间的结果可比性。这一工程化数据基础设施的建立,使得探讨平衡性调整对策略多样性、种族胜率分布以及锦标赛生态影响等经典课题成为可能,对理解复杂游戏系统的长期平衡机制具有重要的方法论示范意义。
衍生相关工作
该数据集催生了一系列衍生工作,包括基于Cheer.io和Playwright构建的战锤40K竞技数据管道,以及利用Git变更日志自动生成版本差异报告的持续集成工具。社区基于该数据集开发了多款军表推荐系统,通过历史点数变化趋势预测单位强度调整方向。在学术层面,研究者将该数据集的版本化设计范式推广至其他桌面战棋游戏的平衡性研究,形成了可复用的结构化军表数据分析框架。Agents工作流文档的引入更进一步推动了AI辅助对战分析系统的构建。
以上内容由遇见数据集搜集并总结生成
二维码
社区交流群
二维码
科研交流群
商业服务