MaxproGlitcher

Doc Every Roblox's Services!

Nov 18th, 2025
72
0
Never
5
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 29.65 KB | None | 0 0
  1.  
  2. --========================================================--
  3. -- EVERY ROBLOX SERVICE — GIGA / PART A (EXPANDED) --
  4. -- (Massive doc: Methods • Properties • Events • Examples)--
  5. -- NOTE: This file is documentation-style. Safe to paste. --
  6. --========================================================--
  7.  
  8. --[ THE SERVICE OF PLAYERS ]
  9. local Players = game:GetService("Players")
  10. -- Summary: Player management, events, API for user info, thumbnails, friend requests, leaderboards, player replication.
  11.  
  12. -- PROPERTIES (common)
  13. -- Players.MaxPlayers -- maximum players allowed by the place
  14. -- Players.AutoAssignableGUID -- internal
  15. -- Players.CharacterAutoLoads -- bool; whether character auto-spawns
  16.  
  17. -- METHODS (examples)
  18. -- Players:GetPlayers() -> {Player, ...}
  19. -- Players:GetPlayerByUserId(userId) -> Player | nil
  20. -- Players:GetPlayerFromCharacter(character) -> Player | nil
  21. -- Players:GetHumanoidDescriptionFromUserId(userId) -> HumanoidDescription
  22. -- Players:CreateHumanoidModelFromDescription(desc, rigType) -> Model
  23. -- Players:GetUserThumbnailAsync(userId, thumbnailType, thumbnailSize) -> (imageUrl, isReady)
  24.  
  25. -- EVENTS
  26. -- Players.PlayerAdded:Connect(function(player) end)
  27. -- Players.PlayerRemoving:Connect(function(player) end)
  28. -- Players.PlayerIdResumed (platform/internal)
  29. -- Players.PlayerChatted -> legacy chat hook in some systems
  30.  
  31. -- NOTES & EXAMPLES:
  32. -- Use Players.PlayerAdded to initialize per-player server data.
  33. -- Example (server-side):
  34. -- Players.PlayerAdded:Connect(function(player)
  35. -- print("Welcome", player.Name, "ID:", player.UserId)
  36. -- -- prepare leaderstats, set character listeners
  37. -- end)
  38.  
  39. -- WARNING:
  40. -- Do not trust client-provided data. Always validate on server.
  41.  
  42. ----------------------------------------------------------------
  43.  
  44. --[ THE SERVICE OF WORKSPACE ]
  45. local Workspace = game:GetService("Workspace")
  46. -- Summary: Root 3D environment. Contains Terrain, CurrentCamera, lighting influence points.
  47.  
  48. -- PROPERTIES
  49. -- Workspace.CurrentCamera -- Camera object
  50. -- Workspace.Gravity -- gravity in studs/sec^2 (default 196.2)
  51. -- Workspace.FallenPartsDestroyHeight -- parts destroyed under this Y
  52. -- Workspace.DistributedGameTime -- synchronized game time across servers
  53. -- Workspace.StreamingEnabled -- bool
  54.  
  55. -- METHODS
  56. -- Workspace:Raycast(origin, direction, raycastParams) -> RaycastResult | nil
  57. -- Workspace:FindPartOnRay(ray, ignoreDescendants, terrainCellsRaycasted)
  58. -- Workspace:FindPartOnRayWithIgnoreList(ray, ignoreList)
  59. -- Workspace:IsRegion3Empty(region3, ignoreList)
  60.  
  61. -- EVENTS
  62. -- Workspace.Changed:Connect(function(prop) end) -- generic property change hook
  63. -- Workspace.ChildAdded/ChildRemoved
  64.  
  65. -- TERRAIN (subsystem)
  66. -- Terrain = Workspace.Terrain
  67. -- Terrain methods:
  68. -- Terrain:FillBlock(cframe, sizeVector3, materialEnum)
  69. -- Terrain:FillSphere(position, radius, materialEnum)
  70. -- Terrain:ReadVoxels(region, resolution) -> occupies, materials
  71. -- Terrain:WriteVoxels(region, resolution, materials, occupancies)
  72. -- Terrain:ReplaceMaterial(region, resolution, sourceMaterial, targetMaterial)
  73.  
  74. -- EXAMPLES:
  75. -- Raycast example:
  76. -- local params = RaycastParams.new()
  77. -- params.FilterDescendantsInstances = { someIgnoreInstance }
  78. -- params.FilterType = Enum.RaycastFilterType.Blacklist
  79. -- local result = Workspace:Raycast(origin, direction, params)
  80. -- if result then print("Hit:", result.Instance.Name) end
  81.  
  82. -- WARNING:
  83. -- Raycast and physics heavy use can be expensive at scale. Use broad-phase checks and throttle.
  84.  
  85. ----------------------------------------------------------------
  86.  
  87. --[ THE SERVICE OF RUNSERVICE ]
  88. local RunService = game:GetService("RunService")
  89. -- Summary: Global runtime events for stepping, rendering, simulation hooks.
  90.  
  91. -- METHODS
  92. -- RunService:IsClient(), IsServer(), IsStudio()
  93. -- RunService:BindToRenderStep(name, priority, callback)
  94. -- RunService:Set3dRenderingEnabled(enabled) -- studio-only in some contexts
  95.  
  96. -- EVENTS
  97. -- RunService.Heartbeat:Connect(function(step) end) -- server tick
  98. -- RunService.Stepped:Connect(function(time, delta) end) -- physics step
  99. -- RunService.RenderStepped:Connect(function(delta) end) -- client render step
  100.  
  101. -- USAGE NOTES:
  102. -- Use RenderStepped only on client UI/visual updates. Never yield in RenderStepped.
  103. -- Use Heartbeat for server updates that run each tick (non-physics).
  104.  
  105. ----------------------------------------------------------------
  106.  
  107. --[ THE SERVICE OF REPLICATEDSTORAGE ]
  108. local ReplicatedStorage = game:GetService("ReplicatedStorage")
  109. -- Summary: Shared storage visible to both server & client for Assets, RemoteEvents, RemoteFunctions.
  110.  
  111. -- USAGE PATTERN:
  112. -- Place RemoteEvent objects under ReplicatedStorage for client-server comms:
  113. -- local myRemote = Instance.new("RemoteEvent", ReplicatedStorage); myRemote.Name = "MyRemote"
  114. -- Server: myRemote.OnServerEvent:Connect(function(player, data) end)
  115. -- Client: myRemote:FireServer(data)
  116.  
  117. -- WARNING:
  118. -- Never put secrets or server-only objects you expect clients not to see in ReplicatedStorage.
  119.  
  120. ----------------------------------------------------------------
  121.  
  122. --[ THE SERVICE OF REMOTES (RemoteEvent & RemoteFunction EXAMPLES) ]
  123. -- RemoteEvent (as Instance)
  124. -- local remote = ReplicatedStorage:WaitForChild("MyRemote")
  125. -- Server:
  126. -- remote.OnServerEvent:Connect(function(player, ...)
  127. -- -- validate player then handle
  128. -- end)
  129. -- Client:
  130. -- remote:FireServer(params)
  131.  
  132. -- RemoteFunction
  133. -- local rf = ReplicatedStorage:WaitForChild("MyFunction")
  134. -- Server:
  135. -- function rf.OnServerInvoke(player, ...)
  136. -- return "server response"
  137. -- end
  138. -- Client:
  139. -- local res = rf:InvokeServer(arg1)
  140.  
  141. -- SECURITY NOTE:
  142. -- All client calls must be validated. Never trust client-sent arguments.
  143.  
  144. ----------------------------------------------------------------
  145.  
  146. --[ THE SERVICE OF HTTP SERVICE ]
  147. local HttpService = game:GetService("HttpService")
  148. -- Summary: HTTP requests and JSON encode/decode.
  149.  
  150. -- METHODS
  151. -- HttpService:GetAsync(url, noYield?) -> string/response
  152. -- HttpService:PostAsync(url, body, contentType, compress, headers)
  153. -- HttpService:RequestAsync({Url, Method, Body, Headers, Compress})
  154. -- HttpService:JSONEncode(table)
  155. -- HttpService:JSONDecode(jsonString)
  156. -- HttpService:UrlEncode(str)
  157.  
  158. -- EXAMPLE:
  159. -- local ok, res = pcall(function()
  160. -- return HttpService:GetAsync("https://api.example.com/endpoint")
  161. -- end)
  162. -- if ok then local data = HttpService:JSONDecode(res) end
  163.  
  164. -- WARNING:
  165. -- HTTP must be enabled for the place (Game Settings). Respect privacy & TOS. Rate-limit and error handle.
  166.  
  167. ----------------------------------------------------------------
  168.  
  169. --[ THE SERVICE OF DATASTORE SERVICE ]
  170. local DataStoreService = game:GetService("DataStoreService")
  171. -- Summary: Persistent cross-server storage (key-value) for places.
  172.  
  173. -- METHODS (pattern)
  174. -- local ds = DataStoreService:GetDataStore("MyStore")
  175. -- ds:GetAsync(key)
  176. -- ds:SetAsync(key, value)
  177. -- ds:UpdateAsync(key, function(oldValue) return newValue end)
  178. -- DataStoreService:ListKeysAsync(datastoreName, pageSize, pageToken)
  179.  
  180. -- EXAMPLE (server):
  181. -- local success, result = pcall(function()
  182. -- return ds:UpdateAsync("player_"..player.UserId, function(old)
  183. -- old = old or {coins=0}
  184. -- old.coins = (old.coins or 0) + 100
  185. -- return old
  186. -- end)
  187. -- end)
  188.  
  189. -- WARNING:
  190. -- DataStores are eventually consistent and have rate limits. Use UpdateAsync for concurrency-safe changes.
  191.  
  192. ----------------------------------------------------------------
  193.  
  194. --[ THE SERVICE OF DATASTOREV2SERVICE ]
  195. local DataStoreV2Service = game:GetService("DataStoreV2Service")
  196. -- Summary: Next generation datastores — refer to official docs for transactional/locking modes.
  197.  
  198. -- NOTES:
  199. -- API surface differs slightly; supports scoped data stores & additional operations.
  200.  
  201. ----------------------------------------------------------------
  202.  
  203. --[ THE SERVICE OF MESSAGING SERVICE ]
  204. local MessagingService = game:GetService("MessagingService")
  205. -- Summary: Cross-server pub/sub system for coordinating events across running servers.
  206.  
  207. -- METHODS
  208. -- MessagingService:PublishAsync(topic, message)
  209. -- local conn = MessagingService:SubscribeAsync(topic, function(data) print("Got:", data) end)
  210. -- conn:Disconnect()
  211.  
  212. -- WARNING:
  213. -- Messages are best-effort and may drop; use for non-critical signals.
  214.  
  215. ----------------------------------------------------------------
  216.  
  217. --[ THE SERVICE OF TELEPORT SERVICE ]
  218. local TeleportService = game:GetService("TeleportService")
  219. -- Summary: Teleport players between places or reserved servers.
  220.  
  221. -- METHODS
  222. -- TeleportService:Teleport(placeId, player, teleportData, spawnName)
  223. -- TeleportService:TeleportAsync(placeId, playersList, teleportData)
  224. -- TeleportService:ReserveServer(placeId) -> reservedServerCode
  225. -- TeleportService:TeleportToPrivateServer(placeId, reservedServerCode, players)
  226.  
  227. -- EVENTS
  228. -- TeleportService.TeleportInitFailed:Connect(function(player, err) end)
  229.  
  230. -- NOTES:
  231. -- TeleportData passed to Teleport() arrives in the destination via TeleportData on Players in PlayerAdded or GetPlayerFromUserId.
  232.  
  233. ----------------------------------------------------------------
  234.  
  235. --[ THE SERVICE OF MARKETPLACE SERVICE ]
  236. local MarketplaceService = game:GetService("MarketplaceService")
  237. -- Summary: Purchases, game passes, developer products.
  238.  
  239. -- METHODS
  240. -- MarketplaceService:PromptProductPurchase(player, productId)
  241. -- MarketplaceService:PromptGamePassPurchase(player, passId)
  242. -- MarketplaceService:UserOwnsGamePassAsync(userId, passId)
  243. -- MarketplaceService:ProcessReceipt(receiptInfo) -- implement for dev products
  244.  
  245. -- EXAMPLE (receipt handler):
  246. -- function MarketplaceService.ProcessReceipt(receiptInfo)
  247. -- -- validate and give product
  248. -- return Enum.ProductPurchaseDecision.PurchaseGranted
  249. -- end
  250.  
  251. -- WARNING:
  252. -- Receipt handling must be implemented server-side for developer products.
  253.  
  254. ----------------------------------------------------------------
  255.  
  256. --[ THE SERVICE OF COLLECTION SERVICE ]
  257. local CollectionService = game:GetService("CollectionService")
  258. -- Summary: Tagging system for instances; efficient querying by tag.
  259.  
  260. -- METHODS
  261. -- CollectionService:AddTag(instance, tag)
  262. -- CollectionService:RemoveTag(instance, tag)
  263. -- local items = CollectionService:GetTagged(tag)
  264. -- CollectionService:GetTags(instance)
  265. -- CollectionService:GetInstanceAddedSignal(tag):Connect(function(instance) end)
  266.  
  267. -- USAGE:
  268. -- Use tags for grouping gameplay objects (e.g., "RespawnPoints", "Damageable", "Loot").
  269.  
  270. ----------------------------------------------------------------
  271.  
  272. --[ THE SERVICE OF PATHFINDING SERVICE ]
  273. local PathfindingService = game:GetService("PathfindingService")
  274. -- Summary: Create paths around obstacles.
  275.  
  276. -- METHODS
  277. -- local path = PathfindingService:CreatePath({AgentHeight=5, AgentRadius=2})
  278. -- path:ComputeAsync(startPos, endPos)
  279. -- local waypoints = path:GetWaypoints()
  280. -- path.Status, path.StatusChanged:Connect(fn)
  281.  
  282. -- TIPS:
  283. -- Regenerate path when obstacles or map change. Cache for repeated NPC patterns.
  284.  
  285. ----------------------------------------------------------------
  286.  
  287. --[ THE SERVICE OF TWEEN SERVICE ]
  288. local TweenService = game:GetService("TweenService")
  289. -- Summary: Smooth property interpolations.
  290.  
  291. -- METHODS
  292. -- local tween = TweenService:Create(instance, TweenInfo.new(1, Enum.EasingStyle.Quint), {Position = endPos})
  293. -- tween:Play()
  294. -- tween:Pause(); tween:Cancel()
  295. -- TweenService:CreateGuides? -- internal
  296.  
  297. -- USAGE:
  298. -- Use for UI and movement easing. Do not tween physics-owned properties on server for authoritative simulation.
  299.  
  300. ----------------------------------------------------------------
  301.  
  302. --[ THE SERVICE OF SOUND SERVICE ]
  303. local SoundService = game:GetService("SoundService")
  304. -- Summary: Global audio configuration.
  305.  
  306. -- PROPERTIES
  307. -- SoundService.RolloffScale
  308. -- SoundService.DistanceFactor
  309. -- SoundService.RespectFilteringEnabled
  310.  
  311. -- METHODS/NOTES:
  312. -- SoundService:PlayLocalSound(soundInstance) -- plays for a single client (client context)
  313. -- Use SoundService for ambient and global groups.
  314.  
  315. ----------------------------------------------------------------
  316.  
  317. --[ THE SERVICE OF PHYSICS SERVICE ]
  318. local PhysicsService = game:GetService("PhysicsService")
  319. -- Summary: Collision groups & physics tuning.
  320.  
  321. -- METHODS
  322. -- PhysicsService:SetPartCollisionGroup(part, groupName)
  323. -- PhysicsService:CreateCollisionGroup(groupName)
  324. -- PhysicsService:CollisionGroupSetWeight(groupA, groupB, weight)
  325.  
  326. -- WARNING:
  327. -- Collision group changes should be configured at runtime start. Changing mid-simulation may have odd results.
  328.  
  329. ----------------------------------------------------------------
  330.  
  331. --[ THE SERVICE OF MEMORY STORE SERVICE (MemStorage alternative) ]
  332. local MemoryStoreService = game:GetService("MemoryStoreService") -- sometimes MemStorageService/MemStorageService exists; check runtime
  333. -- Summary: Fast in-memory cross-server data (queues, maps) — use for leaderboards, rate-limiting.
  334.  
  335. -- METHODS
  336. -- MemoryStoreService:GetSortedMap(name)
  337. -- MemoryStoreService:GetQueue(name)
  338. -- MemoryStoreService:GetMap(name)
  339.  
  340. -- NOTE:
  341. -- MemoryStore is ephemeral and may be evicted. Do not use it for permanent player data.
  342.  
  343. ----------------------------------------------------------------
  344.  
  345. --[ THE SERVICE OF MEMSTORAGESERVICE ]
  346. local MemStorageService = game:GetService("MemStorageService")
  347. -- Summary: Fast ephemeral key-value. Check docs for API variants.
  348.  
  349. ----------------------------------------------------------------
  350.  
  351. -- PART A ENDING NOTES:
  352. -- Part A includes dense, practical references for major gameplay services.
  353. -- Part B will continue with Chat/TextChat internals, Avatar, Animations, ContentProvider, InsertService, AssetService, Packages, Localization, NotificationService, SocialService, PolicyService, and more.
  354. -- Part C will finish studio & internal services: StudioService, DebuggerManager, PluginGuiService, VirtualInputManager, HapticService, GestureService, BrowserService, Remote Debugging, VideoCapture, CoreGui/CorePackages, and final housekeeping.
  355.  
  356. --========================================================--
  357. -- EVERY ROBLOX SERVICE — GIGA / PART B (EXPANDED) --
  358. -- (UI • Chat • Avatar • Animation • Content • Notification)
  359. --========================================================--
  360.  
  361. --[ THE SERVICE OF CHAT ]
  362. local Chat = game:GetService("Chat")
  363. -- Summary: Legacy chat API and chat modules (server-side & client-side integration).
  364.  
  365. -- METHODS & USAGE
  366. -- Chat:Chat(sourceInstance, message, chatType) -- sends a system-like chat message from instance
  367. -- Chat:RegisterChatCallback(Enum.ChatCallbackType, function(msg, speakerName) end) -- advanced hooking for moderation or transforms
  368.  
  369. -- NOTES:
  370. -- New projects should prefer TextChatService for modern chat pipelines.
  371.  
  372. ----------------------------------------------------------------
  373.  
  374. --[ THE SERVICE OF TEXT CHATSERVICE ]
  375. local TextChatService = game:GetService("TextChatService")
  376. -- Summary: New chat pipelines — modular, channel-based.
  377.  
  378. -- KEY CONCEPTS
  379. -- TextChatService:RegisterChannel(channelName, settings)
  380. -- TextChatService.ChatChannels -- iterable
  381. -- TextChatService.OnIncomingMessage:Connect(function(message, channel) end)
  382.  
  383. -- EXAMPLE:
  384. -- TextChatService.OnIncomingMessage:Connect(function(msg, channel)
  385. -- if msg.Text:match("badword") then reject or transform
  386. -- end)
  387.  
  388. ----------------------------------------------------------------
  389.  
  390. --[ THE SERVICE OF GUI SERVICE ]
  391. local GuiService = game:GetService("GuiService")
  392. -- Summary: GUI-level helpers (core GUI, selection, menu integration).
  393.  
  394. -- METHODS
  395. -- GuiService:AddSelectionParent(name, instance)
  396. -- GuiService:RemoveSelectionParent(name)
  397. -- GuiService:SetMenuIsOpen(open)
  398.  
  399. -- NOTES:
  400. -- Use Selection for gamepad / keyboard navigation improvements.
  401.  
  402. ----------------------------------------------------------------
  403.  
  404. --[ THE SERVICE OF CONTENT PROVIDER ]
  405. local ContentProvider = game:GetService("ContentProvider")
  406. -- Summary: Preloading assets and controlling content load.
  407.  
  408. -- METHODS
  409. -- ContentProvider:PreloadAsync({instancesOrIds}, progressCallback)
  410. -- ContentProvider:PreloadLocalAsync(list)
  411. -- ContentProvider:IsLoaded(id) -- maybe studio-only
  412.  
  413. -- PERFORMANCE TIPS:
  414. -- Preload UI icons, character accessories during loading screen to avoid hitches.
  415.  
  416. ----------------------------------------------------------------
  417.  
  418. --[ THE SERVICE OF ANIMATION CLIP PROVIDER ]
  419. local AnimationClipProvider = game:GetService("AnimationClipProvider")
  420. -- Summary: Editor/runtime provider for animation clips.
  421.  
  422. -- METHODS
  423. -- AnimationClipProvider:GetAnimationClip(assetId) -> AnimationClip
  424.  
  425. ----------------------------------------------------------------
  426.  
  427. --[ THE SERVICE OF ANIMATION FROM VIDEO CREATOR SERVICE ]
  428. local AnimationFromVideoCreatorService = game:GetService("AnimationFromVideoCreatorService")
  429. -- Summary: Studio tool service to help create animations from video — mostly editor-only.
  430.  
  431. ----------------------------------------------------------------
  432.  
  433. --[ THE SERVICE OF AVATAR EDITOR SERVICE ]
  434. local AvatarEditorService = game:GetService("AvatarEditorService")
  435. -- Summary: Tools to prompt avatar editing UIs, fetch avatar catalogs and outfits.
  436.  
  437. -- METHODS
  438. -- AvatarEditorService:PromptEditor(player) -- prompts UI; studio or platform may gate
  439.  
  440. ----------------------------------------------------------------
  441.  
  442. --[ THE SERVICE OF AVATAR IMPORT SERVICE ]
  443. local AvatarImportService = game:GetService("AvatarImportService")
  444. -- Summary: Import avatar assets programmatically.
  445.  
  446. ----------------------------------------------------------------
  447.  
  448. --[ THE SERVICE OF BADGE SERVICE ]
  449. local BadgeService = game:GetService("BadgeService")
  450. -- Summary: Award badges and check ownership.
  451.  
  452. -- METHODS:
  453. -- BadgeService:AwardBadge(userId, badgeId) -- server
  454. -- BadgeService:UserHasBadgeAsync(userId, badgeId)
  455.  
  456. ----------------------------------------------------------------
  457.  
  458. --[ THE SERVICE OF ASSET SERVICE ]
  459. local AssetService = game:GetService("AssetService")
  460. -- Summary: Asset lifecycle (thumbnailing, moderation), often studio/admin-level.
  461.  
  462. -- METHODS (examples)
  463. -- AssetService:GenerateThumbnailAsync(assetId, settings)
  464. -- AssetService:GetAssetInfoAsync(assetId)
  465.  
  466. ----------------------------------------------------------------
  467.  
  468. --[ THE SERVICE OF INSERT SERVICE ]
  469. local InsertService = game:GetService("InsertService")
  470. -- Summary: Insert models/assets into the place (Studio only).
  471.  
  472. -- METHODS:
  473. -- InsertService:LoadAsset(assetId)
  474. -- InsertService:CreateObjectFromAssetId(assetId)
  475.  
  476. ----------------------------------------------------------------
  477.  
  478. --[ THE SERVICE OF PACKAGE SERVICE ]
  479. local PackageService = game:GetService("PackageService")
  480. -- Summary: Package publish & management (developer-level).
  481.  
  482. ----------------------------------------------------------------
  483.  
  484. --[ THE SERVICE OF LOCALIZATION SERVICE ]
  485. local LocalizationService = game:GetService("LocalizationService")
  486. -- Summary: Translation, localization tables and per-player translators.
  487.  
  488. -- METHODS
  489. -- LocalizationService:GetTranslatorForPlayerAsync(player)
  490. -- LocalizationService:GetLocaleIdAsync(player)
  491. -- LocalizationService:Translate(locale, key, args)
  492.  
  493. -- EXAMPLE:
  494. -- local translator = LocalizationService:GetTranslatorForPlayerAsync(player)
  495. -- local text = translator:FormatByKey("WelcomeMessage", {playerName = player.Name})
  496.  
  497. ----------------------------------------------------------------
  498.  
  499. --[ THE SERVICE OF NOTIFICATION SERVICE ]
  500. local NotificationService = game:GetService("NotificationService")
  501. -- Summary: Sending UI/system notifications.
  502.  
  503. -- METHODS
  504. -- NotificationService:SendNotification(player, title, text, duration)
  505. -- NotificationService:SendSystemNotification(title, text)
  506.  
  507. ----------------------------------------------------------------
  508.  
  509. --[ THE SERVICE OF SOCIAL SERVICE ]
  510. local SocialService = game:GetService("SocialService")
  511. -- Summary: Friend/social features & join prompts.
  512.  
  513. -- METHODS (examples)
  514. -- SocialService:PromptSendFriendRequest(player, targetUserId)
  515. -- SocialService:PromptGameJoin(player, targetUserId)
  516.  
  517. ----------------------------------------------------------------
  518.  
  519. --[ THE SERVICE OF TRUST & POLICY SERVICES ]
  520. local PolicyService = game:GetService("PolicyService")
  521. local TrustAndSafetyService = game:GetService("TrustAndSafetyService")
  522. -- Summary: Moderation, platform policy enforcement.
  523.  
  524. -- METHODS:
  525. -- PolicyService:PlayerHasPermissionAsync(player, permissionName)
  526. -- TrustAndSafetyService:ReportContent(details)
  527.  
  528. -- NOTE:
  529. -- These APIs may be restricted to certain roles and environments.
  530.  
  531. ----------------------------------------------------------------
  532.  
  533. --[ THE SERVICE OF VOICE CHAT SERVICE ]
  534. local VoiceChatService = game:GetService("VoiceChatService")
  535. -- Summary: Manage voice channels, participants; platform-limited.
  536.  
  537. -- METHODS/NOTES:
  538. -- VoiceChatService:JoinChannel(channelId)
  539. -- VoiceChatService:LeaveChannel(channelId)
  540. -- VoiceChatService:EnableVoiceForUserId(userId)
  541.  
  542. -- WARNING:
  543. -- Voice systems often require platform opt-in and safety checks.
  544.  
  545. ----------------------------------------------------------------
  546.  
  547. --[ THE SERVICE OF VIDEO CAPTURE SERVICE ]
  548. local VideoCaptureService = game:GetService("VideoCaptureService")
  549. -- Summary: Client-side recording/streaming; platform-restricted.
  550.  
  551. -- METHODS
  552. -- VideoCaptureService:StartCapture(settings)
  553. -- VideoCaptureService:StopCapture()
  554.  
  555. ----------------------------------------------------------------
  556.  
  557. --[ THE SERVICE OF ANIMATION & SKELETONS (misc) ]
  558. -- Animation & rigging utilities:
  559. -- KeyframeSequenceProvider, KeyframeSequence, AnimationController APIs exist across environments.
  560.  
  561. ----------------------------------------------------------------
  562.  
  563. -- PART B ENDING NOTES:
  564. -- Part B focuses on user-facing, UI, avatar & content systems. These are extremely useful for making polished experiences.
  565. -- Part C will be the full studio/internal/services section — the largest: StudioService, Plugin Gui, Debuggers, VirtualInputManager, DockWidgetService, CoreGui/CorePackages, VersionControlService, RemoteDebuggerServer, RuntimeScriptService, ProcessInstancePhysicsService, etc.
  566.  
  567. --========================================================--
  568. -- EVERY ROBLOX SERVICE — GIGA / PART C (EXPANDED) --
  569. -- (Studio & Internal • Plugins • Debugging • Core • Tools)
  570. --========================================================--
  571.  
  572. --[ THE SERVICE OF STUDIO SERVICE ]
  573. local StudioService = game:GetService("StudioService")
  574. -- Summary: Studio environment hooks — plugin authoring, file openers, test-run controls.
  575.  
  576. -- METHODS
  577. -- StudioService:OpenScript(scriptObject)
  578. -- StudioService:SelectScript(scriptObject)
  579. -- StudioService:PromptImportFile()
  580.  
  581. -- EVENTS
  582. -- StudioService.TestStarted:Connect(function() end)
  583. -- StudioService.TestEnded:Connect(function() end)
  584.  
  585. -- NOTE:
  586. -- StudioService is only available in Roblox Studio.
  587.  
  588. ----------------------------------------------------------------
  589.  
  590. --[ THE SERVICE OF PLUGIN GUI SERVICE ]
  591. local PluginGuiService = game:GetService("PluginGuiService")
  592. -- Summary: Create and manage plugin UI.
  593.  
  594. -- METHODS
  595. -- PluginGuiService:CreateWidget(plugin, name, initialDockState)
  596. -- PluginGuiService:GetGuiForPlugin(plugin)
  597.  
  598. -- EXAMPLE:
  599. -- local widget = plugin:CreateDockWidgetPluginGui("MyWidget", DockWidgetPluginGuiInfo.new(...))
  600. -- widget.Name = "MyTool"
  601.  
  602. ----------------------------------------------------------------
  603.  
  604. --[ THE SERVICE OF PLUGIN DEBUG SERVICE ]
  605. local PluginDebugService = game:GetService("PluginDebugService")
  606. -- Summary: Debug session control for plugins (studio internal).
  607.  
  608. ----------------------------------------------------------------
  609.  
  610. --[ THE SERVICE OF SCRIPT EDITOR SERVICE ]
  611. local ScriptEditorService = game:GetService("ScriptEditorService")
  612. -- Summary: Interact with scripts in the editor; open files, go to definitions.
  613.  
  614. ----------------------------------------------------------------
  615.  
  616. --[ THE SERVICE OF REMOTE DEBUGGER SERVER ]
  617. local RemoteDebuggerServer = game:GetService("RemoteDebuggerServer")
  618. -- Summary: Attach remote debugging sessions to Live events (studio tooling).
  619.  
  620. ----------------------------------------------------------------
  621.  
  622. --[ THE SERVICE OF RUNTIME SCRIPT SERVICE ]
  623. local RuntimeScriptService = game:GetService("RuntimeScriptService")
  624. -- Summary: Runtime dynamic script lifecycle management (private/internal).
  625.  
  626. ----------------------------------------------------------------
  627.  
  628. --[ THE SERVICE OF DEBUGGER MANAGER ]
  629. local DebuggerManager = game:GetService("DebuggerManager")
  630. -- Summary: Manage debugging tools and clients (studio internal).
  631.  
  632. ----------------------------------------------------------------
  633.  
  634. --[ THE SERVICE OF VERSION CONTROL SERVICE ]
  635. local VersionControlService = game:GetService("VersionControlService")
  636. -- Summary: Interacts with version control systems and source control within Studio.
  637.  
  638. -- METHODS:
  639. -- VersionControlService:CheckOutAsset(assetId)
  640.  
  641. ----------------------------------------------------------------
  642.  
  643. --[ THE SERVICE OF TEST SERVICE ]
  644. local TestService = game:GetService("TestService")
  645. -- Summary: Unit testing paired service for test run orchestration.
  646.  
  647. -- METHODS:
  648. -- TestService:RunUnitTests()
  649. -- TestService:ReportResult(testName, success, message)
  650.  
  651. ----------------------------------------------------------------
  652.  
  653. --[ THE SERVICE OF DOCK WIDGET SERVICE ]
  654. local DockWidgetService = game:GetService("DockWidgetService")
  655. -- Summary: Create dock widgets for plugins.
  656.  
  657. -- METHODS:
  658. -- DockWidgetService:CreateDockWidgetPluginGui(widgetId, info)
  659.  
  660. ----------------------------------------------------------------
  661.  
  662. --[ THE SERVICE OF VIRTUAL INPUT MANAGER ]
  663. local VirtualInputManager = game:GetService("VirtualInputManager")
  664. -- Summary: Low-level input injection (executor/studio only).
  665.  
  666. -- METHODS:
  667. -- VirtualInputManager:SendKeyEvent(isDown, keyCode, isRepeat, guiObject)
  668. -- VirtualInputManager:SendMouseButtonEvent(x, y, button, isDown, guiObject)
  669. -- VirtualInputManager:SendMouseMoveEvent(x, y, guiObject)
  670. -- VirtualInputManager:SendTextInput(text)
  671.  
  672. -- WARNING:
  673. -- VirtualInputManager APIs are not allowed in normal games and are restricted for security reasons.
  674.  
  675. ----------------------------------------------------------------
  676.  
  677. --[ THE SERVICE OF VIRTUAL USER ]
  678. local VirtualUser = game:GetService("VirtualUser")
  679. -- Summary: Simulate user input (used for compatibility in some execution environments).
  680.  
  681. -- METHODS:
  682. -- VirtualUser:Button1Down(); VirtualUser:Button1Up()
  683.  
  684. ----------------------------------------------------------------
  685.  
  686. --[ THE SERVICE OF HAPTIC SERVICE ]
  687. local HapticService = game:GetService("HapticService")
  688. -- Summary: Gamepad vibration APIs.
  689.  
  690. -- METHODS:
  691. -- HapticService:SetMotor(gamepad, motor, intensity)
  692. -- HapticService:IsMotorSupported(gamepad, motor)
  693.  
  694. ----------------------------------------------------------------
  695.  
  696. --[ THE SERVICE OF GESTURE SERVICE ]
  697. local GestureService = game:GetService("GestureService")
  698. -- Summary: High-level gesture detection for VR/mobile.
  699.  
  700. -- EVENTS:
  701. -- GestureService.GesturePerformed:Connect(function(gestureType, data) end)
  702.  
  703. ----------------------------------------------------------------
  704.  
  705. --[ THE SERVICE OF BROWSER SERVICE ]
  706. local BrowserService = game:GetService("BrowserService")
  707. -- Summary: Open in-app browser windows (internal/privileged).
  708.  
  709. -- METHODS:
  710. -- BrowserService:OpenBrowserWindow(url)
  711.  
  712. -- WARNING:
  713. -- BrowserService is platform-limited and may be restricted in published games.
  714.  
  715. ----------------------------------------------------------------
  716.  
  717. --[ THE SERVICE OF CORE GUI & CORE PACKAGES ]
  718. local CoreGui = game:GetService("CoreGui")
  719. local CorePackages = game:GetService("CorePackages")
  720. -- Summary: Roblox's internal UI containers and package collections.
  721.  
  722. -- NOTES:
  723. -- CoreGui should not be modified except for approved plugin contexts. CorePackages contains internal modules used by Roblox.
  724.  
  725. ----------------------------------------------------------------
  726.  
  727. --[ THE SERVICE OF REMOTES / RUNTIME HELPERS ]
  728. -- RuntimeScriptService, RemoteDebuggerServer, and related internal services let Studio attach scripts / debug live experiences.
  729.  
  730. ----------------------------------------------------------------
  731.  
  732. --[ THE SERVICE OF VIDEO CAPTURE SERVICE ]
  733. -- (repeated / studio internal)
  734. -- VideoCaptureService:StartCapture(); StopCapture()
  735.  
  736. ----------------------------------------------------------------
  737.  
  738. --[ THE SERVICE OF PROCESS INSTANCE PHYSICS SERVICE ]
  739. local ProcessInstancePhysicsService = game:GetService("ProcessInstancePhysicsService")
  740. -- Summary: Internal physics processing per-instance (editor/internal)
  741.  
  742. ----------------------------------------------------------------
  743.  
  744. --[ THE SERVICE OF VISIT / ANALYTICS / LOGGING ]
  745. local Visit = game:GetService("Visit")
  746. local AnalyticsService = game:GetService("AnalyticsService")
  747. local LogService = game:GetService("LogService")
  748. -- Summary: Telemetry, logging, and visit analytics.
  749.  
  750. -- USE:
  751. -- AnalyticsService:FireEvent("eventName", {properties})
  752. -- LogService.MessageOut:Connect(function(message, type) end)
  753.  
  754. ----------------------------------------------------------------
  755.  
  756. --[ THE SERVICE OF DEBUGGING & TOOLING WRAPUP ]
  757. -- DebuggerManager, RemoteDebuggerServer, ScriptEditorService, PluginDebugService: these are studio-only.
  758. -- They allow plugin authors and studio users to create integrated experiences.
  759.  
  760. ----------------------------------------------------------------
  761.  
  762. -- PART C ENDING NOTES:
  763. -- Part C finishes the internal and studio APIs — everything plugin authors and power users need.
  764. -- This completes the GIGA Multi-Part set.
  765. -- • colorized ScriptBlox markdown with emojis & headers
  766. -- • or helper wrappers that expose method signatures as callable noop functions (for autocompletion)
  767. -- say it and I’ll bake it immediately.
Advertisement
Comments
  • User was banned
  • User was banned
  • User was banned
  • User was banned
  • User was banned
Add Comment
Please, Sign In to add comment