SL Colonies – Dungeon System Rework & Godot Editor (Development Log)

Hi everyone,

I wanted to share what I’ve been working on behind the scenes and give you a look at what’s coming next for SL Colonies dungeons.

:counterclockwise_arrows_button: Why rework the dungeon system?

A couple of years ago, when the Second Life Experience system was released, I built a modular dungeon system based on rezzable room tiles. It worked well, but it was designed before SL Colonies had grown into the larger ecosystem it is today.

Now I’m updating that system so it:

  • Integrates directly with the SL Colonies servers & database

  • Supports persistent dungeon instances

  • Properly tracks progress, events, and rewards

  • Allows custom dungeon tiles created by owners to be safely recognized and used


:puzzle_piece: How the dungeon tiles work (current & future)

Dungeon rooms are modular objects with names like:

room,0,0,0,1,0,0,Stone
hall,0,0,0,1,0,0,Stone
start,1,1,1,1,0,0,Stone

Where:

  • The numbers represent open paths (North, South, East, West, Up, Down)

  • 1 = open, 0 = closed

  • The final value is the theme (Stone, Crypt, Ice, etc.)

:light_bulb: This system is staying.
What’s changing is how these tiles are managed and validated.


:link: New server integration (what’s being built now)

The in-world dungeon rezzer will now:

  • Register itself with the SL Colonies server

  • Scan its inventory for dungeon tiles

  • Upload a list of available room tiles to the server

  • Automatically re-sync if the owner adds, removes, or edits tiles

This means:

  • Dungeon instances only use tiles that actually exist in the rezzer

  • Custom rooms added by owners are automatically supported

  • The server can safely generate dungeon layouts based on what’s available


:brain: What comes next: a Godot dungeon manager app

Once the server + rezzer integration is solid, the next phase is a Godot-based dungeon management app, which will allow:

  • Creating and editing dungeon layouts visually

  • Defining dungeon rules, themes, and progression

  • Publishing dungeon versions to the server

  • Viewing statistics like completion rates and failure points

This app will be admin-facing and used to manage dungeon content cleanly without touching in-world scripts.


:round_pushpin: Current development status

Right now, I’m focused on:

  • Connecting the existing dungeon rezzer to the SL Colonies server

  • Syncing dungeon tile inventories reliably

  • Laying the groundwork for dungeon instances and tracking

I’ll keep posting updates here as milestones are reached so anyone interested can follow along.


:speech_balloon: Feedback welcome

If you:

  • Build custom dungeon rooms

  • Are interested in dungeon design

  • Have ideas for mechanics, themes, or features

Feel free to reply here — this system is being built to be flexible and expandable.

More updates soon :construction_worker_man::gear:

1 Like

Dungeon System – Development Update (System Registration Milestone)

Today I focused on laying the foundation for the new Dungeon System, specifically the server-side registration of dungeon rezzers.

This step is not about creating dungeon instances yet — it’s about making sure every rezzed Dungeon System in-world has a stable, server-authoritative identity that everything else can reference later.

What was completed today

  • Created a new database schema:
    SLC_Dungeons
    This keeps dungeon-related data cleanly separated from NPCs, items, quests, etc., while still allowing safe interaction with existing systems.

  • Implemented Dungeon System device registration:

    • Each dungeon rezzer now registers itself with the server

    • The server assigns:

      • a unique device_id

      • a secure device_token

    • This prevents spoofing and ensures only the correct rezzer can update its data

  • Added tracking for:

    • rezzer UUID

    • owner UUID

    • HTTP-in URL

    • communication channel

    • version

    • last-seen timestamp

  • Designed and finalized the tile inventory schema:

    • Dungeon tiles (rooms, halls, decor, monsters, etc.) are now tracked server-side

    • Tile types are defined via a lookup table (not ENUMs), allowing future expansion without schema changes

    • Supports custom rooms added by the owner automatically

  • Confirmed end-to-end functionality:

    • Rezzer successfully registers

    • Server records the system

    • Secure token is generated and stored

    • System is now ready to report its available tiles

Why this matters

This gives us a single, trusted reference point for every dungeon system in-world.
All future features — dungeon instances, party runs, loot generation, difficulty scaling — will be built on top of this, rather than being loosely coupled or script-trusted.

In short:
The dungeon system now exists as a first-class server object.

What’s next

Next development session will focus on:

  • Completing the UpdateDungeonRooms endpoint

  • Syncing the rezzer’s inventory (tiles) to the server

  • Preparing the groundwork for dungeon instances (runs), without implementing them yet

That’s it for today — good progress, solid foundation, and no rushed decisions.

2 Likes

Dungeon System – Rezzer & Inventory Sync Progress Update

Hi everyone,

Quick update on the Dungeon System development.

Over the past work session, I focused on finishing and stabilizing the Dungeon Rezzer → Server connection layer, and I’m happy to say that part is now in a really solid place.

:white_check_mark: What’s now working

  • Dungeon Rezzers securely register with the SL Colonies server

  • Each dungeon rezzer receives a unique device ID and secure token

  • The rezzer automatically syncs its inventory (rooms, halls, monsters, treasures, etc.) to the server

  • Any change to the rezzer’s inventory (add/remove items) is immediately reflected in the database

  • Inventory syncing is authoritative and secure (no spoofing, no stale data)

  • Dungeon data now lives in a dedicated Dungeon database schema, keeping it cleanly separated from player/NPC systems

  • Tile types are fully data-driven, allowing custom dungeon content in the future

This gives the server a live, trustworthy snapshot of what each dungeon can use to build instances.

:brick: Why this matters

This layer is the foundation for everything that comes next:

  • Dungeon instances

  • Server-controlled dungeon generation

  • Godot app integration

  • Multiplayer dungeon runs

  • Better balancing and validation

Getting this right first avoids a lot of problems later.

:next_track_button: What’s next

Next session I’ll be starting work on the Dungeon Instance Cube:

  • A new, cleanly rewritten object

  • Responsible only for creating and managing dungeon runs

  • Most logic will move server-side or into the Godot app

  • The old LSL maze logic will not be reused

I’m intentionally stopping here so this milestone stays clean and stable before moving on.

Thanks for following along — more updates soon!

Drakkhis