roblox-game-development
Use this skill for any Roblox related tasks
What this skill does
# Roblox Game Development Skill
## Description
Expert Roblox game developer specializing in Luau scripting, game mechanics, UI/UX design, and monetization strategies. Assists with everything from simple scripts to complex multiplayer experiences.
## Resource Library
This skill includes a comprehensive collection of production-ready resources:
- **๐ [Helper Scripts](scripts/)** - Professional utility modules for data management, networking, UI, game flow, and audio
- **๐ [Document Templates](templates/)** - Complete project documentation templates including Game Design Documents, Technical Specifications, Testing Plans, and Marketing Strategies
- **๐ [Development Resources](resources/)** - Game templates, asset libraries, debugging guides, performance optimization tools, and quick reference materials
## Core Capabilities
### Luau Programming
- **Modern Luau Features**: Utilize type annotations, generics, the New Type Solver (general release), improved type inference/autocomplete, and performance optimizations
- **Script Architecture**: Implement clean, modular code with proper separation of concerns
- **Performance Optimization**: Write efficient scripts that handle large player counts
- **Error Handling**: Robust error management and debugging techniques
### Luau Type System Updates
- **New Type Solver**: General release (no longer a Studio Beta); enabled by default for `nonstrict` and `nocheck` modes starting January 7, 2026
- **Key Improvements**: Better type inference, fewer false positives, stronger generics support, and improved autocomplete
- **Legacy Solver Timeline**: The legacy solver remains available through 2026, but it is slated for removal
- **Migration Guidance**: Most code works without changes, but a few edge cases may need explicit type annotations or cleanup
- **Best Practices**: Prefer explicit annotations on public APIs, use generics where appropriate, and lean on improved autocomplete for faster iteration
```lua
-- New Type Solver infers types more accurately
local function processPlayer(player: Player)
local name: string = player.Name -- inferred correctly
local team = player.Team -- Team? properly inferred
end
```
### Game Systems Development
- **Player Data Management**: DataStore implementation with backup systems (see [DataManager.lua](scripts/DataManager.lua))
- **Inventory Systems**: Item management, trading, and equipment systems
- **Economy Design**: Currency systems, shops, and balanced progression
- **Combat Mechanics**: Damage systems, weapons, abilities, and PvP/PvE gameplay
- **Social Features**: Friends, guilds, chat systems, and player interactions
### Roblox Studio Expertise
- **Workspace Organization**: Proper model hierarchy and asset management
- **Terrain Sculpting**: Advanced terrain tools and environmental design
- **Lighting & Atmosphere**: Realistic lighting setups and mood creation
- **Animation**: Rig creation, keyframe animation, and scripted animations
- **Physics Simulation**: Custom physics, constraints, and interactive objects
### User Interface Design
- **Modern UI Frameworks**: Clean, responsive interface design (see [UIManager.lua](scripts/UIManager.lua))
- **Mobile Optimization**: Touch-friendly controls and adaptive layouts
- **Accessibility**: Colorblind-friendly palettes and readable fonts
- **UX Patterns**: Intuitive navigation and user flow optimization
### Multiplayer & Networking
- **Client-Server Architecture**: Proper remote event/function usage (see [RemoteManager.lua](scripts/RemoteManager.lua))
- **Anti-Exploit Measures**: Server-side validation and security best practices
- **Synchronization**: Real-time multiplayer mechanics and state management
- **Scaling Solutions**: Performance optimization for high player counts
### Monetization & Analytics
- **Developer Products**: Robux purchases and virtual currency
- **Game Passes**: Premium features and subscription models
- **Analytics Integration**: Player behavior tracking and retention metrics
- **A/B Testing**: Feature testing and conversion optimization
## Development Workflow
### Project Setup
1. **Game Concept Development**: Genre analysis, target audience, and core loop design (see [Game Design Document template](templates/game_design_document.md))
2. **Technical Architecture**: Script organization, module system, and dependency management (see [Technical Specification template](templates/technical_specification.md))
3. **Asset Pipeline**: Model importing, texture optimization, and version control (see [Asset Library](resources/asset_library.md))
4. **Testing Framework**: Unit tests, integration tests, and QA processes (see [Testing Plan template](templates/testing_plan.md))
### Implementation Phases
1. **Core Mechanics**: Basic gameplay loop and player controls (use [Game Templates](resources/game_templates.md) for rapid prototyping)
2. **System Integration**: Connecting different game systems (see [GameManager.lua](scripts/GameManager.lua))
3. **Content Creation**: Levels, quests, items, and progression systems
4. **Polish & Optimization**: Performance tuning and bug fixes (see [Performance Optimization Guide](resources/performance_optimization.md))
5. **Launch Preparation**: Store assets, descriptions, and marketing materials (see [Marketing Plan template](templates/marketing_plan.md))
### Best Practices
- **Code Organization**: Use ModuleScripts for reusable components
- **Security First**: Always validate on server-side
- **Performance Monitoring**: Regular profiling and optimization
- **Player Feedback**: Iterative development based on player data
- **Version Control**: Proper backup and collaboration workflows
## Common Patterns & Solutions
### DataStore Access and Storage Updates
- **Per-Experience Quotas**: Each experience gets its own DataStore read/write quota, and Roblox is enforcing these limits starting in early 2026
- **Throttle Behavior**: Exceeding limits throttles requests instead of throwing hard errors, so code should gracefully retry or fall back
- **Best Practices**: Batch operations, cache locally, and keep transient state in session data tables instead of writing every change immediately
- **Studio Tooling**: Use **Data Stores Manager** in Roblox Studio to view, edit, and delete entries directly without publishing (`Studio โ View โ Data Stores Manager`)
### Data Persistence
Complete implementation available in [DataManager.lua](scripts/DataManager.lua)
```lua
-- DataStore best practices with retry logic, caching, and rate limiting awareness
local DataStoreService = game:GetService("DataStoreService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local PlayerDataModule = {}
local dataStore = DataStoreService:GetDataStore("PlayerData_v1")
local sessionData = {}
local cachedData = {}
local function safeGetAsync(dataStore, key)
local success, result = pcall(function()
return dataStore:GetAsync(key)
end)
if not success then
warn("DataStore request failed, using cached data")
return cachedData[key]
end
return result
end
function PlayerDataModule:LoadData(player)
local data = safeGetAsync(dataStore, player.UserId)
if data then
sessionData[player.UserId] = data
else
-- Default data structure
sessionData[player.UserId] = {
level = 1,
coins = 100,
inventory = {},
settings = {}
}
end
cachedData[player.UserId] = sessionData[player.UserId]
return sessionData[player.UserId]
end
```
### DataStore2 Migration Guidance
- **Deprecation Status**: Berezaa/DataStore2 is deprecated; prefer native `DataStoreService` for new and existing projects
- **Why Migrate**: Per-experience quotas and the built-in Data Stores Manager reduce the need for an extra caching layer
- **Migration Steps**:
- Replace `DataStore2()` calls with `DataStoreService:GetDataStore()`
- Manage session caching manually with tables for transiRelated in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.