Client / Server Setup
Start off your setup by creating two special WCS objects: Client
and Server
handlers.
The objects should register your directories containing skills and status effects.
Provide the directories by using RegisterDirectory
method on both of them.
- TypeScript
- Luau
server.ts
import { ReplicatedStorage } from "@rbxts/services";
import { CreateServer } from "@rbxts/wcs";
const Server = CreateServer();
Server.RegisterDirectory(ReplicatedStorage.TS.movesets);
Server.RegisterDirectory(ReplicatedStorage.TS.skills);
Server.RegisterDirectory(ReplicatedStorage.TS.statusEffects);
server.lua
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local WCS = require(ReplicatedStorage.WCS)
local Server = WCS.CreateServer()
Server:RegisterDirectory(ReplicatedStorage.movesets)
Server:RegisterDirectory(ReplicatedStorage.skills)
Server:RegisterDirectory(ReplicatedStorage.statusEffects)
Right after, proceed to start the handler:
- TypeScript
- Luau
server.ts
Server.Start();
server.lua
Server:Start()
Do the same thing on the client side, except use the CreateClient()
function:
- TypeScript
- Luau
client.ts
import { ReplicatedStorage } from "@rbxts/services";
import { CreateClient } from "@rbxts/wcs";
const Client = CreateClient();
Client.RegisterDirectory(ReplicatedStorage.TS.movesets);
Client.RegisterDirectory(ReplicatedStorage.TS.skills);
Client.RegisterDirectory(ReplicatedStorage.TS.statusEffects);
Client.Start()
client.lua
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local WCS = require(ReplicatedStorage.WCS)
local Client = WCS.CreateClient()
Client:RegisterDirectory(ReplicatedStorage.movesets)
Client:RegisterDirectory(ReplicatedStorage.skills)
Client:RegisterDirectory(ReplicatedStorage.statusEffects)
Client:Start()