Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

平台限制与接入清单

平台限制汇总

项限制
游戏逻辑 bundle≤ 512 KiB,UTF-8,禁用 eval、动态 import、require、process.env、this.constructor
前端包zip ≤ 25 MB,解压 ≤ 75 MB,≤ 2000 文件,根目录含 index.html
单次脚本回调≤ 2 秒,超时会话进入 error 终态
WS 单帧≤ 64 KiB
WS 票据单次有效,30 秒过期
金额64 位整数金币,必须大于 0
回合提交提交超时 15 秒,整回合原子,失败全回滚
未揭示公平种子每引擎 64 个,先进先出
对局回放每回合 ≤ 500 条广播事件
对局结果上报recordResult 每回合 ≤ 64 条,同一玩家重复登记以后一次为准
会话存活最长 2 小时
离席判定正常断开即时,异常断开最迟 2 分钟
广播、状态与定时器无硬性配额。建议控制广播频率与快照体积,定时器在钩子内用完即清

接入清单

按接入阶段自查,全部勾完即可提审。

入驻与创建

  • 开发商账号注册完成并通过平台激活
  • 游戏已创建,title、description、分类、缩略图齐备
  • sessionMode 与玩法匹配:对战类用 quick,好友组局用 room
  • minPlayer 与 maxPlayer 已按玩法确定,除特殊玩法外建议相等

游戏逻辑

  • bundle 不超过 512 KiB,无禁用关键字,兼容 ES5
  • onSync 已实现,重连与切换标签页后可完整恢复
  • 离席处理为座位托管或明确终局,不产生悬挂等待
  • 算法在复杂局面下不会超过 2 秒回调上限
  • 定时器在会话结束时清理,无残留
  • 事件带游戏命名空间前缀,无平台保留名冲突

游戏前端

  • zip 根目录含 index.html,使用 hash 路由,体积达标
  • 通过 requestHostGameConfig 获取配置,未在游戏内硬编码任何地址
  • 返回大厅统一使用 notifyGameExit
  • 余额显示按 version 单调守卫,无轮询
  • 页面恢复可见时调用 sync 对账

资金与公平

  • 所有资金流程包裹在 beginRound 与 endRound 之间
  • endRound 返回 false 的分支已处理,并向玩家展示失败原因
  • 未以 getBalance 预检替代结算失败处理
  • 随机类玩法使用公平随机,承诺先于抽取、结算后揭示
  • 对局结果已通过 recordResult 上报
  • rtpDeclared 与 rakeRateDeclared 与真实玩法参数一致

本地自测

  • 单人开局、满员自动开局、人数不足补位已覆盖
  • 断线重连后状态恢复正常
  • 余额不足时的失败分支与提示已验证
  • 公平随机承诺与揭示时序正确

提审与上线

  • 前端包上传成功,frontendBundleUrl 与 bundleHash 已存证
  • 提审单包含逻辑包全文与申报参数
  • 驳回意见处理完毕后重新提审
  • 首版过审后已在大厅验证:列表可见、可进入、可完成一局完整结算

上线后运营

  • RTP 漂移核查阈值内运行(见资金接入)
  • 线上问题按"新版本修复 + 必要时回滚"处理

常见驳回原因

  1. 游戏逻辑依赖运行环境不提供的能力,如 fetch、DOM、eval。
  2. 资金操作未闭合回合,或以 getBalance 预检代替结算失败处理。
  3. 随机类玩法未使用公平随机,或时序错误,先取随机数后承诺。
  4. 前端缺少 index.html,或使用 history 路由导致刷新 404。
  5. 断线重连后无法恢复对局,未实现 onSync。
  6. 算法在复杂局面下超过 2 秒回调上限。