
OGS-TS 发布本地局域网游戏遥测开放标准
来源标题:Show HN: OGS-TS, an open standard for game telemetry on the local network
OGS-TS 是一项面向游戏与模拟器的开放遥测标准,让设备通过本地局域网广播实时遥测数据,无需云服务、账号或联网。局域网内任意数量的接收端可同时消费同一数据流,用于运动平台、触觉设备、座舱硬件和仪表盘等。该标准自 2024 年启动,定义了最小必需遥测集、网络协议及多游戏引擎实现工具。
以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。
OGS 遥测标准(OGS-TS)为游戏和模拟器定义了一套标准化方法和格式,用于向用户局域网(LAN)上的设备和软件广播实时遥测数据。
社区与支持:Discord · 开发由赞助资助
局域网上的任意数量接收端可以同时消费同一数据流:运动平台、触觉背心和换能器、实体座舱硬件、仪表盘以及性能记录器。运行在主机或 PC 上的游戏可以驱动同一家庭中其他机器上的运动模拟器、触觉设备或仪表面板——不涉及云服务、账户或互联网连接。
OGS-TS 遥测数据始终留在本地网络中。它不是分析或崩溃报告:数据广播是为了让用户自己的设备实时读取,绝不会离开局域网。
它定义了满足标准所需的一组逻辑上的最小遥测数据,同时也允许开发者以文档完善的结构和格式灵活地包含额外的遥测数据。它定义了网络协议,并提供了辅助在多种游戏引擎中实现的工具。
OGS 遥测标准(OGS-TS)由 Brian Gilbert(@BrianGilbert)于 2024 年发起。它以开放方式在 GitHub 组织 Open-Game-Standards 下开发。该组织目前是一个非正式的社区载体;没有独立的法律实体。设计决策、验证证据以及规范本身都存于本仓库中,任何人均可在 MIT 许可证下自由实现。Brian 仍是主要维护者。欢迎通过 pull request 和 issue 参与贡献。如果项目发展出更广泛的维护者群体或日后成立了正式组织,本节将相应更新。
OGS-TS 由 Brian Gilbert 以开放方式开发。如果该标准对您或您的产品有用,您可以直接支持其持续开发:赞助将给予主要维护者,用于资助持续的设计、验证、参考实现和社区协调工作。目前没有独立的法律实体或项目银行账户。
OGS-TS 标志位于 assets/logo,提供 SVG 以及 512 px 和 1024 px 的 PNG 格式:
正在构建发送端或接收端(任何语言、任何引擎——包括自定义引擎)?请从 IMPLEMENTING.md 开始——其中包含实现者路径、最低合规发送端检查清单、合规级别(发送端 Core / Motion / Full,接收端 Core / Hardware)、语料验证,以及各引擎的最快实现路径。
经过验证的引擎插件,作为同级仓库维护:
OGS-TS Monitor——适用于 Windows、Linux 和 macOS 的桌面接收端:显示网络上的每个发送端(对象、通道、姿态、轨迹、事件),并依据本标准检查每一帧,按规则列出所有不合规项。
约定
帧、四元数策略、单位(SI 加一个封闭白名单)、旋转符号、控制输入符号、值同一性、风约定、时间戳和精度均在 CONVENTIONS.md 中统一一次定义——每个字段注释和通道族都引用其条款。转向正方向是左还是右、弧度还是角度、方向盘还是路面车轮:答案只需查一次,而不是每个字段各自的口口相传。
EventFrame 携带离散刺激(撞击、枪声、脚步声),用于触觉背心、换能器和提示效果,通过短重放 + id 去重(CONVENTIONS C-10)在有损传输上实现冗余。运动模拟器、触觉设备、力反馈中间件、仪表盘和记录器都是一等消费端——参见 DESIGN.md 的 Consumer classes。
我们提议使用 Cap'n Proto 作为数据格式。Cap'n Proto 是一种零拷贝的二进制序列化格式,针对速度和效率进行了优化,是通过 UDP 发送运动遥测数据的绝佳选择。它通过使用内存对齐布局避免了编码/解码开销,并高效支持可选字段和嵌套结构。
Cap'n Proto 数据格式的实现细节。
数据传输采用纯 UDP 组播(IPv4,并为仅 IPv6 网络提供 IPv6 组)——一个 socket,无 broker,无驱动进程——使用 8 字节信封标识帧类型。多个本地客户端(仪表盘、运动模拟器、触觉设备、记录器)加入同一组播组;无需额外端口或代理。
UDP 数据传输的实现细节。
各游戏的实现参考:核心 schema 映射加上发送端声明的通道表,可直接用于构建。
该标准已针对真实数据源进行验证——跨 6 个来源类别(有文档的游戏格式、社区内存偏移、厂商封装的集成、游戏原生 UDP 输出、注入式提供者、消费端文档)的 16 项测试,100+ 游戏输出,零未解决缺口。
一次捕获的会话可在没有游戏的情况下重放到模拟器、触觉设备和工具中:.ogsrec 格式存储每个数据报及其到达时间和来源——recording.md。
黄金数据报 + 语义清单,用于跨引擎实现的字节级编码器一致性——conformance/。
该 schema 将静态元数据与逐帧样本分离:低频率的 DiscoveryFrame(环境、驱动点描述符、自描述通道声明,含值类型/单位/范围——标准的扩展机制)和高频率的 MotionFrame(最小姿态核心加上以 discovery id 为键的类型化值)。参见 DESIGN.md、ogs_telemetry.capnp,以及 Common Channels 附录中已批准的跨游戏通道名称和单位。
OGS-TS 的范围涵盖以下关键领域:
OGS-TS 定义了通用方法和协议,用于将广泛的遥测数据传输到本地软件/硬件,为以下方面提供扩展能力:
- 运动模拟
- 触觉与反馈
- 环境效果(风、光照)
- 仪表盘、仪器和第二屏幕
- 无障碍(音频和视觉信息的替代提示)
- 性能记录、跟踪和报告工具
数据格式化
(原文较长,此处译出前 6000 字,完整内容请点「打开原文」。)
正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。