mcpField
R
roblox-data

roblox-data

github.com/tabooharmony数据与数据库1382.0k 次安装2 周前更新
代码仓库

关于 roblox-data

roblox-data 是面向 Roblox 开发者的玩家数据持久化参考技能,涵盖保存、迁移、重试和会话所有权。重点是安全使用 DataStore 并处理生命周期边界。

主要功能

  1. 01基于模板的数据与迁移
  2. 02UpdateAsync 与暂时性错误处理
  3. 03使用 ProfileStore 管理会话所有权
  4. 04结合生命周期保存并处理关服
  5. 05数据校验与缓存写入验证

适用场景

  1. 01设计带版本的玩家存档
  2. 02迁移现有玩家档案
  3. 03处理并发会话与重试
  4. 04验证关服时的保存结果

安装

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

$npx skills add https://github.com/tabooharmony/roblox-brain --skill roblox-data

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

附带文件references/full.md

详细介绍

Roblox 数据持久化

何时加载

用于玩家存档、迁移、重试、关闭或会话所有权。排行榜/消息/世界数据:roblox-server-data;Open Cloud:roblox-cloud。

快速参考

  • 存储玩家状态前,先定义可序列化的模板和版本字段。深拷贝模板,避免嵌套默认值被共享;先迁移,再根据模板补齐缺失字段。按环境限定存储名称(PlayerData_Studio),确保 Studio 写入不会进入生产环境。
  • 使用 UpdateAsync 执行读取-修改-写入;处理限流和暂时性错误。
  • 使用会话所有权协议,防止并发修改档案。
  • 使用 ProfileStore 时,按文档使用 StartSessionAsync、Profile.OnSessionEnd、EndSession;正常加载时不要使用 Steal;使用 ProfileStore.Mock 进行临时的 Studio 写入。
  • 在有意义的变更和生命周期边界时保存;仅依靠 PlayerRemoving 不够;BindToClose 会完成待处理的工作。
  • 存储基元值/数组/字典;先转换 Instances/userdata/functions/循环表。验证数字(不能是 NaN/inf)、字符串(utf8.len)和嵌套表:任何一个值无效都会导致写入失败。
  • RTBF:在键中将用户 ID 保留为静态子字符串(player_<UserId>),以便 {UserId} 删除模板匹配;哈希键/随机键会导致必须手动擦除。
  • GetAsync 使用 4 秒本地缓存(DataStoreGetOptions.UseCache,默认值为 true);使用 UseCache = false 验证写入。
  • 通过 DataStoreService:GetRequestBudgetForRequestType 轮询实时剩余容量;配额会随并发用户数扩展(体验读取:每分钟 300 + CCU x 40)。
  • 新代码使用 player.User(User.Id、DomainType、DomainId)标识用户;UserId 仍然有效,但切勿在同一键方案中混用这两种 ID。
  • 首次会话跟踪记录:roblox-analytics §8。

持久化工作流:references/full.md

评论

支持 Markdown