tabooharmony/roblox-brain

roblox-server-data

Use for Roblox server or cross-server data: OrderedDataStore leaderboards, MessagingService, world state, seasons, or guilds.

Trending #9764 First seen Jul 5, 2026

Installation

$ npx skills add tabooharmony/roblox-brain --skill roblox-server-data

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from tabooharmony/roblox-brain · top by installs.

npx skills add tabooharmony/roblox-brain

Browse all from tabooharmony/roblox-brain

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 42
License LICENSE
Default branch main
Open issues 0
Status Active

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 2,861 B
  • docs SUMMARY.md 151 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 381 installs

SKILL.md

Roblox Server & Shared Data

When to Load

Load for server-level or cross-server data: leaderboards (OrderedDataStore), cross-server messaging (MessagingService), temporary queues and sorted maps (MemoryStoreService), shared world state, persistent non-player data, season/guild data. For player data (DataStore, ProfileStore, session locking), use roblox-data; for Open Cloud and external APIs, use roblox-cloud.

Quick Reference

OrderedDataStore (Leaderboards)

  • Sortable DataStore. Keys are strings; use a stable key such as tostring(UserId).
  • Values are integers used for sorting; choose the sign and ordering intentionally.
  • GetSortedAsync(ascending, pageSize, minValue, maxValue) → sorted pages
  • For leaderboards only, not player data
local D = game:GetService("DataStoreService")
local store = D:GetOrderedDataStore("LeaderboardCoins")
store:SetAsync(tostring(player.UserId), playerCoins)
local top10 = store:GetSortedAsync(false, 10):GetCurrentPage()

MessagingService (Cross-Server)

  • Real-time server communication: SubscribeAsync / PublishAsync
  • No delivery or ordering guarantee; design for idempotency.

GlobalDataStore (Shared State)

  • Persistent non-player state such as guilds, seasons, and counters.
  • Use UpdateAsync; never use it for player session data.

MemoryStoreService (Temporary Coordination)

  • Queues and sorted maps for expiring matchmaking, leases, and coordination.
  • Remove a read batch only after successful, idempotent processing.
  • Use MessagingService or TeleportData for notification and handoff.

Cross-Server Patterns

  • Register servers with expiring heartbeats; use MessagingService for notifications.

Pitfalls

  • MessagingService is fire-and-forget: no delivery guarantee, no ordering
  • GlobalDataStore has same rate limits as player DataStores; don't spam
  • OrderedDataStore keys are strings; values are integers used for sorting
  • Never store Instances; serialize to primitives first
  • UpdateAsync for any shared counter to prevent lost updates

Need more detail? Load references/full.md for the complete reference with code examples, API tables, and edge cases.