Jump to content

OpenSimulator Internals/Walkthroughs/Avatar Goes HG

From Open Simulator Technical Help
Revision as of 23:29, 7 July 2026 by Jwbshaw (talk | contribs) (Added material from opensimulator.org wiki)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

OpenSimulator Internals/Walkthroughs/Avatar Goes HG

[edit]

Overview

[edit]

Traces what happens in code, connectors, and database when an avatar HyperGrid teleports from their home grid to a foreign grid, and when they return.

Assumes the home grid runs ROBUST + OpenSim with HGEntityTransferModule enabled.


Part 1: Departing the Home Grid

[edit]

1. HG Destination Resolved

[edit]
OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs -- GetFinalDestination()
OpenSim/Services/Connectors/Hypergrid/GatekeeperServiceConnector.cs
  1. Avatar clicks a HG link or enters a HG URI (e.g. hg.example.com:8002:RegionName).
  2. GridService on source region looks up the destination -- finds a region with RegionFlags.Hyperlink set. This is a local stub entry, not a real region.
  3. GetFinalDestination() detects the Hyperlink flag.
  4. Calls GatekeeperServiceConnector.GetHyperlinkRegion() -- HTTP POST to the foreign grid's Gatekeeper service (hg.example.com:8002).
    • Gatekeeper validates the request and returns a real GridRegion descriptor for the destination on the foreign grid.
  5. ValidateGenericConditions() checks appearance restrictions if RestrictAppearanceAbroad=true.

2. Pre-flight at Foreign Gatekeeper

[edit]
EntityTransferModule -- DoTeleportInternal()
  1. SimulationService.QueryAccess() --