mcpField
R
roblox-datastore-persistence

roblox-datastore-persistence

github.com/ashexplained数据与数据库3899 次安装17 周前更新
代码仓库

关于 roblox-datastore-persistence

用于设计和审查 Roblox 玩家数据持久化的技能,涵盖数据架构、保存、迁移和故障处理,并提供使用 Roblox 脚本工具的审查流程及待测场景指引。

主要功能

  1. 01带版本号的规范档案架构
  2. 02加载校验与数据迁移
  3. 03服务器端内存档案
  4. 04防抖保存与失败重试
  5. 05有超时限制的关服保存
  6. 06持久化审查与测试流程

适用场景

  1. 01规划玩家档案数据结构
  2. 02处理旧版或不完整的存档
  3. 03减少不必要及频繁写入
  4. 04审查保存、加载和关服流程

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/ashexplained/roblox-skills --skill roblox-datastore-persistence

安装后在 Claude Code 中输入/roblox-datastore-persistence确认已加载。

详细介绍

Roblox DataStore 持久化

目标

可靠地保存玩家进度,避免宝贵状态损坏或丢失。

架构规则

  • 存储精简、规范的状态,而非 UI 状态。
  • 包含 schemaVersion。
  • 集中管理默认值。
  • 使用已加载的数据前先进行验证。
  • 编写能够处理旧数据、缺失数据或部分数据的迁移逻辑。
  • 将临时对局/会话状态与永久档案状态分开。

保存策略

  • 玩家加入时只加载一次。
  • 在服务端维护权威的内存档案。
  • 按有意义的时间间隔保存,并在玩家离开时保存。
  • 服务端关闭时,在有界超时时间内保存。
  • 对频繁的保存请求进行防抖处理。
  • 对临时性故障采用退避策略重试。
  • 标记脏档案,避免不必要的写入。

宝贵状态

谨慎处理以下内容:

  • 货币和高级货币。
  • 背包、宠物、外观道具、增益、任务进度、成就。
  • 购买记录和通过收据发放的物品。
  • 交易或赠礼结果。
  • 每日连续签到和有时间限制的奖励。

MCP 审查工作流

  1. 使用 script_grep 搜索 DataStore、UpdateAsync、SetAsync、GetAsync、profile、save 和 load。
  2. 使用 script_read 阅读所有持久化脚本。
  3. 梳理加载、状态变更、保存和关闭流程。
  4. 使用 multi_edit 修改。
  5. 在可能的情况下,对类似加入/更改/离开的流程进行试玩测试,并检查 get_console_output。

输出

返回:

  • 档案架构。
  • 保存/加载流程。
  • 迁移计划。
  • 已处理的故障模式。
  • 仍需在已发布环境或多服务器条件下进行的手动测试。

下一步

使用 roblox-security-economy 加固保存流程,防范漏洞利用,然后使用 roblox-playtest-qa 验证玩家重新加入和服务端关闭后数据仍能保存。

评论

支持 Markdown