⏳ This skill is pending AI review.

Scores will appear once the review pipeline completes.

version unknown

roblox-analytics-liveops

@el4cteo⭐ 88 stars

Analytics and live ops - AnalyticsService economy/funnel/onboarding/progression/custom events, player segments, experience configs via ConfigService, A/B experiments, badges, experience notifications, timed events, daily rewards, season passes. Use when instrumenting a game, tuning economy or onboarding, running A/B tests or feature flags, or planning live events and re-engagement.

Choose how to use this skill

You do not need every option. Choose the path your AI client supports. The stable page stays the same; versioned files are immutable.

1. Native installer

This listing has no registered native installer command. Use the complete package or source fallback below, depending on what your client supports.

Do not guess an installer command or replace an existing version without reviewing the diff.

2. Complete package recommended

Download the ZIP when available. It includes SKILL.md plus the references, security notes and version metadata.

No complete ProSkills package is published for this listing yet.

3. Prompt-only

Copy the prompt above when the agent can read the stable page or when you want to adopt the workflow without installing a skill.

Need only the instruction file?

Download SKILL.md only if your client requires a single file. The complete ZIP is safer for a full installation because it preserves the references and release context.

No path installs or executes anything by itself. Your agent still needs access to the project files. Before updating, compare the installed version and review the diff.

—/10

// RATINGS

⭐GitHub Stars
⭐⭐ 88 on GitHubGitHub ↗

Growing

🟢ProSkills Score
—
📍

Not yet listed on ClawHub or SkillsMP

// README

Roblox Skills for AI Agents

Validate Release License: MIT

23 Agent Skills that keep AI agents' Roblox code current, secure, and correct. They work with Claude Code, Codex, Cursor, OpenCode, Gemini CLI, GitHub Copilot, Windsurf, Cline, Roo Code, Kiro, Goose, Amp, JetBrains Junie, and many more, plus Roblox Studio Assistant.

  • Current: checked against Roblox's API reference (Studio 0.743, October 2026). No wait(), BodyVelocity, or legacy Chat.
  • Verified: CI type-checks every Luau example against the Roblox API (strict mode, new type solver) and flags deprecated APIs. A weekly run catches new deprecations.
  • Efficient: agents see only a short description per skill (~150 tokens) and load the full skill on demand.

Install

Claude Code

/plugin marketplace add EL4CTEO/roblox-skills
/plugin install roblox-skills@roblox-skills

Any other agent (needs Node.js)

npx skills add EL4CTEO/roblox-skills                            # choose agents interactively
npx skills add EL4CTEO/roblox-skills -a cursor -a windsurf -y   # or name them

Without Node.js

git clone https://github.com/EL4CTEO/roblox-skills.git && cd roblox-skills
./scripts/install.sh --project /path/to/game       # .agents/skills (Codex, Cursor, Gemini, Copilot, OpenCode, Amp, ...)
./scripts/install.sh --agent windsurf --global     # or claude, roo, kiro, goose, junie, qwen, ...

docs/agents.md lists every agent id and folder. Add --link to symlink the skills so git pull updates them. On Windows, use scripts\install.ps1 -Agent windsurf.

Roblox Studio Assistant: download roblox-assistant-skills.zip from the latest release, or run python3 scripts/build-assistant.py. Then paste a file into Assistant → Settings → Skills → Add.

Skills

AreaSkills
Code and structureroblox-luau, roblox-architecture, roblox-networking, roblox-security, roblox-code-review
Data and businessroblox-data-stores, roblox-monetization, roblox-analytics-liveops, roblox-open-cloud
Gameplayroblox-game-systems, roblox-characters-animation, roblox-npc-ai, roblox-physics, roblox-input
Presentationroblox-ui, roblox-audio, roblox-world-building, roblox-text-chat
Scale and workflowroblox-performance, roblox-teleport-matchmaking, roblox-tooling, roblox-testing, roblox-studio-mcp

Each skill lives in skills/. For best results, also connect your agent to Studio's built-in MCP server (see roblox-studio-mcp) so it can playtest and verify its changes.

Contributing

./scripts/setup-tools.sh && python3 scripts/validate.py

See CONTRIBUTING.md. Corrections are welcome whenever Roblox changes an API.

MIT. This project is not affiliated with Roblox Corporation.

// HOW IT'S BUILT

// FILES

2 files shipped with this skill. Inline text is the catalog copy. The upstream link is the source repository.

  • skills/roblox-analytics-liveops/SKILL.md6.9 KB26ff04ea8a26upstream ↗
    ---
    name: roblox-analytics-liveops
    description: Analytics and live ops - AnalyticsService economy/funnel/onboarding/progression/custom events, player segments, experience configs via ConfigService, A/B experiments, badges, experience notifications, timed events, daily rewards, season passes. Use when instrumenting a game, tuning economy or onboarding, running A/B tests or feature flags, or planning live events and re-engagement.
    ---
    
    # Analytics and live operations
    
    ## Analytics events (server-side, `AnalyticsService`)
    
    Standard events feed the Creator Hub dashboards automatically (economy, funnels, progression,
    custom). The `Fire*` methods are deprecated; use the `Log*` family.
    
    ```luau
    --!strict
    local AnalyticsService = game:GetService("AnalyticsService")
    
    local Analytics = {}
    
    -- Currency sources and sinks → Economy dashboard.
    function Analytics.coinsEarned(player: Player, amount: number, balance: number, source: string)
    	AnalyticsService:LogEconomyEvent(
    		player,
    		Enum.AnalyticsEconomyFlowType.Source,
    		"Coins", -- currency type
    		amount,
    		balance, -- ending balance
    		Enum.AnalyticsEconomyTransactionType.Gameplay.Name, -- or a custom string like "QuestReward"
    		source -- item SKU / source id
    	)
    end
    
    function Analytics.itemBought(player: Player, price: number, balance: number, itemSku: string)
    	AnalyticsService:LogEconomyEvent(
    		player,
    		Enum.AnalyticsEconomyFlowType.Sink,
    		"Coins",
    		price,
    		balance,
    		Enum.AnalyticsEconomyTransactionType.Shop.Name,
    		itemSku
    	)
    end
    
    -- First-session tutorial funnel (steps must be sequential, 1-based).
    function Analytics.onboarding(player: Player, step: number, stepName: string)
    	AnalyticsService:LogOnboardingFunnelStepEvent(player, step, stepName)
    end
    
    -- Recurring funnels (e.g. shop purchase flow); share a session id per attempt.
    function Analytics.shopFunnel(player: Player, sessionId: string, step: number, stepName: string)
    	AnalyticsService:LogFunnelStepEvent(player, "ShopPurchase", sessionId, step, stepName)
    end
    
    -- Level progression.
    function Analytics.levelStarted(player: Player, level: number)
    	AnalyticsService:LogProgressionStartEvent(player, "MainPath", level, `Level{level}`)
    end
    function Analytics.levelCompleted(player: Player, level: number)
    	AnalyticsService:LogProgressionCompleteEvent(player, "MainPath", level, `Level{level}`)
    end
    
    -- Anything else: numeric custom events, sliced by up to 3 custom fields.
    function Analytics.bossKilled(player: Player, bossId: string, seconds: number)
    	AnalyticsService:LogCustomEvent(player, "BossKillTime", seconds, {
    		[Enum.AnalyticsCustomFieldKeys.CustomField01.Name] = bossId,
    	})
    end
    
    return Analytics
    ```
    
    Guidelines:
    - Log from the **server** (trustworthy, and required by these APIs). Keep event names and custom-field
      values low-cardinality (IDs of categories, not free text or user IDs).
    - Economy events need accurate `endingBalance`; log every source and sink or the dashboard misleads.
    - Design funnels before building features (onboarding steps, shop flow, first purchase).
    - `AnalyticsService:GetPlayerSegmentsAsync(player)` returns segment info (payer status, account age in
      your game, ...) at runtime to tailor onboarding and offers — `pcall` it.
    
    ## Experience configs (live values without republishing)
    
    Create configs in Creator Hub (or Open Cloud) — balance numbers, feature flags, event toggles — and read them
    on the server with `ConfigService`. Published changes arrive in running servers.
    
    ```luau
    --!strict
    local ConfigService = game:GetService("ConfigService")
    
    local ok, snapshot = pcall(function()
    	return ConfigService:GetConfigAsync()
    end)
    
    local function get(key: string, default: any): any
    	if not ok then
    		return default
    	end
    	local value = snapshot:GetValue(key)
    	return if value == nil then default else value
    end
    
    local bossHealth = get("bossHealth", 500)
    print("boss health", bossHealth)
    
    if ok then
    	snapshot.UpdateAvailable:Connect(function()
    		snapshot:Refresh() -- apply newly published values at a safe moment (e.g. between rounds)
    		print("new boss health", get("bossHealth", 500))
    	end)
    end
    ```
    
    - Always code a default: configs may fail to load.
    - **Experiments / targeted configs** evaluate per player: use `ConfigService:GetConfigForPlayerAsync(player)`
      (`GetConfigAsync` ignores targeting). Experiments run 14–60 days, up to two variants plus control; pick a
      goal metric and respect the minimum detectable effect. Manage via Creator Hub or the Open Cloud
      experimentation API (`roblox-open-cloud`). **Early Harm Detection** shows near-real-time playtime, payer
      conversion, and ARPU (every 5 min) for the first 24 h — stop a harmful variant early.
    - Studio testing: `ConfigService:SetTestingValue(key, value)` / `ClearTestingValue`.
    
    ## Badges
    
    `BadgeService:AwardBadgeAsync(userId, badgeId)` (server, `pcall`; skip if `UserHasBadgeAsync` or
    `CheckUserBadgesAsync` already says owned). `AwardBadge`/`UserHasBadge` are deprecated. Badges are
    great onboarding and progression milestones and show on players' profiles.
    
    ## Experience notifications (re-engagement)
    
    1. Ask players to opt in at a meaningful moment: `ExperienceNotificationService:CanPromptOptInAsync()` then
       `PromptOptIn()` (client).
    2. Create notification strings in Creator Hub; send from your backend via Open Cloud
       `POST /cloud/v2/users/{userId}/notifications` (e.g. "your crops are ready", "event starts now").
       Notifications are rate-limited and moderated; send ones players value.
    
    ## Live-ops patterns
    
    - **Timed events**: schedule with UTC timestamps in a config (`eventStart`, `eventEnd`); compare with
      `os.time()` on the server; broadcast state via attributes; clients show countdowns from
      `workspace:GetServerTimeNow()`.
    - **Season pass / rotating shops**: rotation seed = `math.floor(os.time() / 86400)` for daily shops; store
      claimed rewards per season id in player data.
    - **Daily rewards/streaks**: store `lastClaimDay` (UTC day number) and streak count; grant on the server.
    - Ship content behind config flags, validate with a small rollout/experiment, then roll out to 100%.
    - Watch Creator Hub dashboards: retention (D1/D7/D30), session length, conversion, ARPPU, funnels, and
      performance (crash rate, FPS, memory) after every release. Discovery impressions/plays use a new
      measurement pipeline from Oct 12, 2026 (higher counts, slightly lower play-through rate) — don't read the
      jump as a real change.
    - **Before launch**: invite up to 10 friends or group members as early testers from the publish flow.
    - **Player Support** (early access, age-checked 13+): add an in-game "report a problem" button that calls
      `SocialService:PromptFeedbackSubmissionAsync({ FeedbackType = Enum.FeedbackType.PlayerSupport })`
      (client, `pcall`); reports arrive with device info and screenshots in Creator Hub → Audience → Player Support.
    
    ## Related skills
    
    `roblox-monetization` (offers, pricing), `roblox-data-stores` (streaks, season data),
    `roblox-open-cloud` (configs/experiments/notifications APIs), `roblox-game-systems`.
    
  • README.mdupstream ↗

    Contents are not inlined in the catalog. Open the upstream file.

Plain-text copy, no login: /skill-bundles/el4cteo-roblox-skills-skills-roblox-analytics-liveops.md

// REPO STATS

88 stars