Skip to main content
All settings live in one file: rco-gym/config/config.lua. Open it with any text editor (Notepad works, VS Code is nicer).
Only change what comes after the = sign. Keep the quotes '...', the commas and the brackets exactly as they are. After saving, restart the server.

The basics

Another language

Copy locales/en.json, translate the texts on the right side of each line, save it as for example locales/es.json and set Config.Locale = 'es'. Anything you didn’t translate shows in English.

The gyms

Config.Gyms lists every gym of your server. The Strawberry gym comes ready as the first one, with its 16 stations. You can add as many gyms as you like, anywhere on the map, and place each station on its own.

Build a gym piece by piece

  1. Copy the Strawberry entry, give the copy a name and set building = 'props'.
  2. Keep only the station lines you want. Copy a line to have that station twice (two benches: two supino lines).
  3. For each station, stand where the player should use it, facing the way he should face, and take your position and heading with the coords tool your server already uses. Write them as vector4(x, y, z, heading).
  4. Restart the server.
The coords are the player’s own position while standing on the floor, so take them on foot, not on a horse or in a vehicle.

The station types

Keep about 0.7 m between stations. Each exercise has its own camera, 1.5 to 3.5 m from the station, mostly in front and to one side: a wall in that spot puts the camera behind the wall. The rings, the climbing rope and the heavy bag look best under a beam or a ceiling about 4 m up.
cam = 2 on a bench line uses the bench’s other camera, from its other side. The second bench of the Strawberry gym uses it.

Removing the Strawberry gym

Delete (or comment out) its entry in Config.Gyms: its stations and its blip are gone. The Strawberry building comes with the resource’s files (the stream/mlo and stream/placas folders) and no setting stops it from loading. To take the house back to the game’s own, delete those two folders too.

Keys

Keys are written as the game’s control hashes (like 0xCEFD9220), not as letters: the hash of each key is on the Keys page. In the load picker and on the record board the arrows and Esc also work.

The minigames

All of them are inside Config.Minigame = { ... }.

Strength

Inside Config.Progression = { ... }:

Titles

Config.Titles = { 5, 30, 70, 120, 180, 230 }: the sum of the five groups’ levels (5 to 250) where each title of the period starts. Their names are in the locales (title_1 to title_6): Weakling, Beginner, Amateur athlete, Athlete, Strongman / Strongwoman, Champion.

Tiredness, training every day and the spotter

Warm-up and strains

Inside Config.Injury = { ... }. A light set (half the top load or less, or an exercise without a load) of WarmupReps good repetitions warms the player up for WarmupMinutes. A missed repetition with a heavy load while not warmed up may strain the muscle group: the set ends and that group can’t be trained for StrainHours.

Loads

Config.MaxLoad sets the top load of each exercise with gear, in pounds: the first number at level 1, the second at the top level. The player’s top load grows between them with the level of the exercise’s main group.

Muscle on the body

Inside Config.Muscle = { ... }. The look stays the appearance creator’s: the gym adds the muscle on top of it each time the creator puts the body on, and never changes what the creator saved.

Outside the gym

Inside Config.Benefits = { ... }. Each one is turned off with 0.

Sounds

For developers

Another resource can read a player’s levels on the server, for example to let strong characters carry more: