Roblox Server & Shared Data

SkillCommunication

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

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Roblox Server & Shared Data skill

What this skill tells your AI

The instructions your AI receives, as published by tabooharmony/roblox-brain in skills/roblox-server-data/SKILL.md and read by ahel’s review.

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.

Signals

GitHub stars
44
Forks
3
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
roblox-server-data
Source
github.com/tabooharmony/roblox-brain