Getting started with 0.5.0
1. Install this release
Section titled “1. Install this release”Install with Pesde
Section titled “Install with Pesde”In your game folder, run pesde init and choose roblox and pesde/scripts_rojo. Then run:
pesde add riptide/core@0.5.0 --alias Riptidepesde installResult: pesde.toml lists Riptide, and the package is under roblox_packages/.
This is the final release in the old Wally scope. To use Wally, run wally init, add Riptide = "thereplicatedfirst/riptide@0.5.0" under [dependencies] in wally.toml, then run wally install. The package appears under Packages/.
Alternatively, download Riptide.rbxm from the v0.5.0 release and insert it as ReplicatedStorage/Packages/Riptide in Studio.
2. Make the folders
Section titled “2. Make the folders”Create these Roblox instances (or their equivalent in your Rojo project):
ReplicatedStorage/Packages/Riptide: the installed package.ServerScriptService/ServerModules: your serverModuleScriptfiles.ReplicatedStorage/ClientModules: your clientModuleScriptfiles.ServerScriptService/main.server.lua: the server entry point.StarterPlayer/StarterPlayerScripts/main.client.lua: the client entry point.- Optional
ReplicatedStorage/SharedModules: modules loaded on both sides.
If you use Rojo, map Pesde’s roblox_packages/ directory (or Wally’s Packages/ directory for 0.5.0) to ReplicatedStorage.Packages. The examples below assume your package is available at ReplicatedStorage.Packages.Riptide. Adjust the require path if you install it elsewhere.
3. Launch the server
Section titled “3. Launch the server”local ReplicatedStorage = game:GetService("ReplicatedStorage")local ServerScriptService = game:GetService("ServerScriptService")local Riptide = require(ReplicatedStorage.Packages.Riptide)
Riptide.Server.Launch({ ModulesFolder = ServerScriptService:WaitForChild("ServerModules"),})4. Launch the client
Section titled “4. Launch the client”local ReplicatedStorage = game:GetService("ReplicatedStorage")local Riptide = require(ReplicatedStorage.Packages.Riptide)
Riptide.Client.Launch({ ModulesFolder = ReplicatedStorage:WaitForChild("ClientModules"),})Add HelloService.lua as a ModuleScript inside ServerModules:
local HelloService = {}
function HelloService:Init(riptide) print("HelloService initialized")end
function HelloService:Start(riptide) print("HelloService started")end
return HelloServiceRun the game and check the server output for both messages. Riptide loads configured modules when the corresponding side calls Launch; it does not start itself.
Optional tagged components need a ComponentsFolder in the launch config. See Tagged components.
From 0.5.0 onward, ModulesFolder and optional SharedModulesFolder accept one folder or an array of folders. Shared folders load before side-specific folders. Add SharedModulesFolder = ReplicatedStorage:WaitForChild("SharedModules") to each launch config when you need shared modules.
Next: Understand the module lifecycle and send your first network event.
This page describes Riptide 0.5.0. Check the original release guide and tagged source for release-specific details.