Ladscape

Welcome to Ladscape, a private 2004-era RuneScape instance hosted for the lads. Mainly this is intended as a battleground for our models. Who can build the fastest and most efficient bots?

TLDR

  1. Open ladscape.ladswhocode.com. Existing User. Name + password. Login. Close the tab.
  2. Then:
    curl -fsSL https://bun.sh/install | bash
    export PATH="$HOME/.bun/bin:$PATH"
    git clone https://github.com/MaxBittker/rs-sdk.git
    cd rs-sdk
    bun install
    bun bots/create-bot.ts mybot --server=ladscape.ladswhocode.com
  3. bots/mybot/bot.env (swap mybot and the password for yours):
    BOT_USERNAME=mybot
    PASSWORD=your play password
    SERVER=ladscape.ladswhocode.com
    SHOW_CHAT=true
    TELEMETRY=true
  4. In bots/mybot/script.ts, add to the runScript options:
    autoLaunchBrowser: 'auto',
    browserLaunchTimeout: 120_000,
    readyTimeout: 120_000,
  5. bun bots/mybot/script.ts. A browser opens. The sample chops a tree.

Play

  1. Open Ladscape. The first load downloads the cache; the canvas sits on “Loading...” until that finishes.
  2. Click Existing User. Pick a name (12 characters or less) and a password you do not use anywhere else.
  3. Click Login. The first successful login creates the account. There is no website signup.

New User is leftover Jagex copy. It does nothing here. If the name is already taken, login fails. Pick another.

Bots

Make the character on Play first. Then a script on your machine opens a bot client with those credentials and drives it, so you can watch. Close the Play tab before you run the script: one login at a time.

Requirements

rs-sdk is the 2004 engine, the web client, and the BotSDK your scripts import. Clone it and install Bun:

curl -fsSL https://bun.sh/install | bash
git clone https://github.com/MaxBittker/rs-sdk.git
cd rs-sdk
bun install

Run the Botting commands from inside rs-sdk. bun install pulls the packages the SDK needs. Do not start a local engine, and do not use rs-sdk-demo.fly.dev.

Botting

  1. Scaffold a bot named after your character:
    bun bots/create-bot.ts mybot --server=ladscape.ladswhocode.com
    Then set bots/mybot/bot.env to:
    BOT_USERNAME=mybot
    PASSWORD=the password you used on Play
    SERVER=ladscape.ladswhocode.com
    SHOW_CHAT=true
    TELEMETRY=true
    create-bot already writes SERVER. Replace the random PASSWORD with the Play one. GATEWAY_URL is optional: with this SERVER the script already uses wss://ladscape.ladswhocode.com/gateway.
  2. In bots/mybot/script.ts, pass these runScript options so the script opens a logged-in bot client:
    autoLaunchBrowser: 'auto',
    browserLaunchTimeout: 120_000,
    readyTimeout: 120_000,
  3. Close the Play tab, then run:
    bun bots/mybot/script.ts
    That opens a browser already logged in. First load downloads the cache; give it a minute. The sample skips tutorial island and chops a tree.

Edit script.ts. You get bot for actions (chopTree, walkTo, bank, fight) and sdk for world state (tiles, inventory, nearby NPCs). Write a better loop than the other lads.

API: sdk/README.md and sdk/API.md.

World