Skip to Content

Installation

The RoControl Roblox SDK is server-only. Place it and your API key in server containers — never anywhere that replicates to clients.

Requirements

  • HTTP requests enabled for your experience: Studio → Game Settings → Security → Allow HTTP Requests.
  • An SDK API key — create one in your game’s RoControl dashboard (Game → Icon Automation → SDK API Keys). See API Keys.
  • MemoryStore is optional but recommended for reportEvent (it lets one server, not all of them, report each occurrence).
# wally.toml [dependencies] RoControl = "gh-constant/rocontrol-roblox-sdk@0.2.1"
wally install

This is a normal shared Wally package, so it installs into your usual Packages folder (typically mapped to ReplicatedStorage.Packages) — the same place as every other dependency. No special Rojo mapping is needed.

The SDK is inert on the client (init() errors there and the module exposes only metadata), so even though the module replicates, your API key — which you pass to init() from a server script and keep in ServerStorage — never reaches clients.

Option B — Model file (.rbxm)

  1. Download RoControl.rbxm from the latest release .
  2. In Studio, right-click ReplicatedStorage → Insert from File and select it.
  3. Confirm the module lands where your server code can require it (e.g. ReplicatedStorage.Packages.RoControl).

Option C — Source / Rojo

git clone https://github.com/Badacord/rocontrol-sdk cd rocontrol-sdk rokit install wally install rojo build default.project.json --output RoControl.rbxm

Where everything goes

ItemLocation
SDK moduleReplicatedStorage.Packages.RoControl (normal Wally package)
API keyServerStorage/RoControlConfig/ApiKey (a StringValue) — server-only
Bootstrap scriptServerScriptService/RoControlBootstrap.server.luau
Client codenothing in v1 (init() only ever runs on the server)

The SDK module can live in ReplicatedStorage.Packages (it’s inert on the client). What must stay server-only is your API key: keep RoControlConfig / ApiKey in ServerStorage, and only call init() from a server script. The SDK refuses init() on the client as a safeguard.

Updating

  • Wally: bump the version in wally.toml, run wally install.
  • Model file: delete the old RoControl module, insert the new .rbxm.

Next: Quickstart.