Hypergrid
From OpenSimulator
Line 78: | Line 78: | ||
== Installing and Running Hypergrid == | == Installing and Running Hypergrid == | ||
− | + | # Checkout the hypergrid project: svn checkout [http://forge.opensimulator.org/svn/hypergrid/trunk]. Usually trunk is in a usable state. If it isn't, you can check the latest stable version from tags: http://forge.opensimulator.org/svn/hypergrid/tags | |
+ | |||
+ | # Read the README.txt file. It has important information about which version of opensim the hypergrid has been tested with. '''No guarantees of what will happen if you use the hypergrid extension with a different version of opensim'''. | ||
+ | |||
+ | # Check out the version of opensim mentioned in the README file. Prebuild build it as normal. | ||
+ | |||
+ | # Copy all the files under hypergrid/.../bin onto opensim/bin | ||
+ | |||
+ | # Make the following changes to your OpenSim.ini: | ||
+ | #* The map: '''WorldMapModule = "HGWorldMap" ''' If you didn't have this setting in your original OpenSim.ini, make sure yo place it under the [Startup] section. | ||
+ | #* If you're running your opensim in grid mode, you're done. If you're running in standalone and you want it to be network-able, change all the [Network] server addresses to '''"http://<external_host_name>:<http_port>"''' | ||
== Public Hypergrid Nodes == | == Public Hypergrid Nodes == | ||
Line 84: | Line 94: | ||
The following is a list of hypergrid-ready nodes that you can use for testing your installation and for linking your world. Please add your public node here if you wish to help build a web of opensims. | The following is a list of hypergrid-ready nodes that you can use for testing your installation and for linking your world. Please add your public node here if you wish to help build a web of opensims. | ||
− | For the time being, and given the security concerns described above, we advise you to be careful about who you link to | + | For the time being, and given the security concerns described above, we advise you to be careful about who you link to. |
Revision as of 08:30, 14 November 2008
Contents |
The OpenSim Hypergrid
What is the hypergrid?
The hypergrid is an extension to opensim that allows you to link your regions to other opensims on the internet, and that supports seamless agent transfers among those opensims. It can be used both in standalone mode and in grid mode. The hypergrid is effectively supporting the emergence of a Web of virtual worlds.
The basic idea for the hypergrid is that region/grid administrations can place hyperlinks on their map to hypergrided regions run by others. Once those hyperlinks are established, users interact with those regions in exactly the same way as they interact with local regions. Specifically, users can choose to teleport there. Once the user reaches the region behind the hyperlink, she is automatically interacting with a different virtual world without having to logout from the world where she came from, and while still having access to her inventory.
The hypergrid is currently a GForge project. Technically, it's implemented as a thin layer on top of the OpenSim core facilities. It's very easy to install, and it is 100% compatible with the standard OpenSim distribution.
Virtual World Hyperlinks
We're all familiar with hypertext links on the Web. But what is a virtual world hyperlink?
In the hypergrid model, we consider the 2D map of the virtual world as the equivalent of a web page. As such, a VW hyperlink is simply a region on that map.
The current walled-garden model of opensim-based virtual worlds already supports this concept of hyperlink. When you teleport from one region to another via the map, chances are you are migrating your agent into a different opensim server. This migration is a glorified "agent transfer" that also exists, in rudimentary form, on the web when hypertext links are followed. The walled-garden model, however, imposes one very strong restriction on these hyperlinks: the entire map of regions is controlled by a central server known as the grid server, whose job is to provide a uniform view of the world to all of its regions.
The hypergrid removes this constraint by allowing individual opensim instances to add "neighbors" to their local map. As such, the hypergrid moves the control of the map down from the grid server to individual opensim instances (although hyperlinks can also be served by grid servers if grid admins so wish). In doing so, the world becomes a lot more interesting and varied. The map that you see in one opensim instance may be completely different from the map that you see after you teleport via an hyperlink. As an opensim administrator, you are free to define what other opensims you want to see on your map.
Usage Scenarios
The following are natural usage scenarios. There isn't a clear separation between these scenarios, there's a large overlap between them. This is also not an exhaustive list. The purpose of these descriptions is to give you some starting ideas for how to use the hypergrid in practice. Please feel free to add other interesting scenarios to this list.
Personal Worlds This first scenario pertains to standalone opensims. Normally, standalones are completely disconnected from the internet. However, when run in hypergrid mode, standalones become network-able. As such, you can run your own world in your own computer, and link your world to whoever you want. For example, you can link to your friends' hypergrided opensims and to hypergrid gateways in open grids such as OSGrid. The great thing about this scenario is that all of your assets are stored on your computer, and not on somebody else's server. You can back them up using ordinary backend tools. The not so great thing about this scenario is that all of your assets are stored on your computer! If your disk goes berserk, you loose them. (so make sure you make external backups regularly) | |
Communities This second scenario is about communities, broadly construed. The idea here is that a group of people come together to support a small community grid, i.e. a common world where shared activities take place. But at the same time, the members of the community maintain their own standalone worlds. The standalones link to the community grid, and the community grid may link back to the individual members' worlds and other places of interest. The members' identities are probably the identities they have on their standalones, and their assets are also probably stored there. The assets present in the community regions, however, are stored on the grid asset server. | |
Grid Public Regions Walled-gardens are here to stay, and they serve many useful purposes. There is a hybrid mode for the hypergrid that some walled-garden grid operators may be interested in supporting. In this hybrid mode, most opensim instances on the grid run in normal, wall-garden mode, so no foreign visitors are allowed there - technically it is impossible to reach them. However, a few opensim instances on that grid can run in hypergrid mode, so that foreign visitors are allowed. This way, there is a gateway for grid-local users and arbitrary visitors to meet. This is also a good strategy for attracting new users to the grid, since random users are able to visit those gateway regions without having to sign up for an account upfront. This hybrid mode is very similar to what happens on the web. For example, anyone can visit Facebook's public pages without having to sign up for a Facebook account. However, only Facebook users can go further inside. | |
Level Games The normal version of OpenSim enforces a common map for all the regions on a grid. The hypergrid removes that constraint. As such, it becomes easy to design VW games where the world looks different depending of where the player is. |
Security Concerns
TODO
Hypergrid Implementation
TODO
Installing and Running Hypergrid
- Checkout the hypergrid project: svn checkout [1]. Usually trunk is in a usable state. If it isn't, you can check the latest stable version from tags: http://forge.opensimulator.org/svn/hypergrid/tags
- Read the README.txt file. It has important information about which version of opensim the hypergrid has been tested with. No guarantees of what will happen if you use the hypergrid extension with a different version of opensim.
- Check out the version of opensim mentioned in the README file. Prebuild build it as normal.
- Copy all the files under hypergrid/.../bin onto opensim/bin
- Make the following changes to your OpenSim.ini:
- The map: WorldMapModule = "HGWorldMap" If you didn't have this setting in your original OpenSim.ini, make sure yo place it under the [Startup] section.
- If you're running your opensim in grid mode, you're done. If you're running in standalone and you want it to be network-able, change all the [Network] server addresses to "http://<external_host_name>:<http_port>"
Public Hypergrid Nodes
The following is a list of hypergrid-ready nodes that you can use for testing your installation and for linking your world. Please add your public node here if you wish to help build a web of opensims.
For the time being, and given the security concerns described above, we advise you to be careful about who you link to.
- osl2.nac.uci.edu 9006
The "UCI Welcome" region connected to OSGrid. It is run by Diva (Crista) on a machine owned by the University of California, Irvine. You can link to it as a way to link to OSGrid.
- ucigrid02.nacs.uci.edu 9000
A region in the UCI Grid. It is run by Diva (Crista) on a machine owned by the University of California, Irvine.