"Every Region Has a Story"
A modern, interactive WordPress plugin that displays your OpenSimulator grid as a beautiful, clickable Leaflet.js map. Click any region to get its name, a one-click teleport link, and a registration button β all fully customizable to match your grid's branding.
- πΊοΈ Interactive Leaflet map β zoom, pan, explore your entire grid
- π Region search β live search box with instant dropdown results
- π One-click teleport β dynamically built
hop://links from your grid URL - π¨ Color picker β choose your own accent and button colors in the admin
- π Batch sync with progress bar β syncs regions in batches of 50, no timeouts
- β Featured region marker β highlight your welcome/landing region
- π Dark mode support β popups adapt automatically
- π Simple shortcode β
[lore_map]drops the map anywhere
- WordPress 5.5 or higher
- PHP 7.4 or higher
- An OpenSimulator grid with a MySQL/MariaDB Robust database
- Read access to the Robust database from your WordPress server
- Warp3D or compatible map tile service running on your grid
- Download the latest
lore-opensim-map.zipfrom Releases - In WordPress Admin go to Plugins β Add New β Upload Plugin
- Choose the zip file and click Install Now
- Click Activate Plugin
- Unzip
lore-opensim-map.zip - Upload the
lore-opensim-mapfolder to/wp-content/plugins/ - Go to Plugins in WordPress Admin and activate L.O.R.E.
Go to Settings β L.O.R.E. Map and fill in the sections:
| Setting | Description |
|---|---|
| Grid Name | Your grid's display name (shown in map attribution) |
| Grid URL | Your grid's login URI, e.g. mygrid.com:8002 |
| Registration URL | Link for the "Join Free Today" button in popups |
π‘ The Teleport button URL is built automatically from your Grid URL + the region name. No manual configuration needed!
L.O.R.E. connects directly to your OpenSimulator Robust database to sync region data.
| Setting | Description |
|---|---|
| Database Host | IP or hostname of your Robust database server |
| Database Name | Usually robust |
| Database User | A MySQL user with read access to the regions table |
| Database Password | The database user's password |
π Security note: Use a read-only MySQL user for best practice. L.O.R.E. only ever reads from the
regionstable.
| Setting | Default | Description |
|---|---|---|
| Map Tile URL | (blank) | Your Warp3D tile URL pattern |
| Default Zoom | 3 | Initial zoom level (1β8) |
| Center X | 1000 | Starting X grid coordinate |
| Center Y | 1000 | Starting Y grid coordinate |
Use the color pickers to set:
- Accent Color β popup title, search border, coordinate text
- Button Color β Teleport button gradient
Enter the exact name of a region to highlight with a special marker (pulsing glow, gold star, or pin drop). Leave blank to disable.
Click Sync Regions from Grid to import all regions from your Robust database. The progress bar shows you exactly how many batches have completed. Syncing in batches of 50 ensures no PHP timeouts regardless of grid size.
Basic usage:
[lore_map]
All options:
[lore_map width="100%" height="600px" zoom="3" center_x="1000" center_y="1000" grid_url="mygrid.com:8002"]
| Parameter | Default | Description |
|---|---|---|
width |
100% |
Map width |
height |
600px |
Map height |
zoom |
From settings | Initial zoom (1β8) |
center_x |
From settings | Starting X coordinate |
center_y |
From settings | Starting Y coordinate |
grid_url |
From settings | Override the grid URL for this map instance |
Q: The map shows tiles but clicking regions says "Unknown Region" A: Go to Settings β L.O.R.E. Map and click Sync Regions from Grid. The region database needs to be populated first.
Q: Some large (var) regions only work when clicked in the lower-left corner A: This is normal OpenSimulator behavior. Variable-size regions store only their anchor (lower-left) coordinate in the database. Consider adding a note above the map for visitors.
Q: My grid uses a different coordinate range than 1000β2000 A: Set Center X and Center Y in the admin to match your grid's actual coordinate range. NWG-style grids often use coordinates around 10000.
Q: Teleport links open my viewer but land me somewhere wrong
A: Make sure your Grid URL is correct in settings. The format should be yourgrid.com:8002 without http://.
Q: Can I display multiple maps on the same page?
A: Yes! Each [lore_map] shortcode creates an independent map instance.
lore-opensim-map/
βββ lore-opensim-map.php # Main plugin file
βββ assets/
β βββ lore.js # Map initialization, popups, search
β βββ lore.css # All styles
β βββ compass.png # Plugin icon
βββ screenshots/
β βββ map-overview.png
β βββ region-popup.png
β βββ search.png
β βββ admin-settings.png
βββ README.md
βββ CHANGELOG.md
βββ LICENSE
See CHANGELOG.md
π Need help? Want detailed guides?
Visit the L.O.R.E. Wiki for comprehensive documentation:
- Installation Guide - Step-by-step setup
- Configuration Guide - Every setting explained
- Shortcode Examples - Practical usage examples
- Troubleshooting - Fix common issues
- FAQ - Quick answers
The Wiki has everything you need to get the most out of L.O.R.E.! π
GPL v2 or later β see LICENSE
Gundahar Bravin
- Website: nerdypappy.com
- GitHub: @mteedev
- Leaflet.js β the amazing open-source mapping library
- OpenSimulator β the open-source virtual world platform
- Compass rose image used with appropriate rights - (downloaded from pngegg).
Built with β€οΈ for the OpenSimulator community




