The MICA OpenSim Regions

'''If you don't want to read a lot of introductory text, but "just want to get to the MICA OpenSim regions", jump to below.



Overview
While MICA and the MODEST workshops are currently based entirely in Second Life, we do hope to use OpenSim more and more, for a few reasons. Primarily, this is because OpenSim is open source, and as such we will have the ability to modify the code to do things we want&mdash; things maybe relevant to scientific and academic endeavors that wouldn't have the market appeal necessary for Linden Lab ever to do with Second Life. What's more, depending on where we run OpenSim, we can have more control over our regions. We aren't subject to some limitations of Second Life (such as nobody under 18 being allowed, a challenge for many educators) and will have access to backend server statistics and diagnostics to figure out what's going on.

What is OpenSim
It is unfortunate that may, including me in the "Overview", talk about OpenSim and Second Life as being parallel concepts, because they are not. Second Life is a service, a specific world, that includes with it the "Second Life Server" and the "Second Life Viewer". OpenSim is a 3d applications platform that supports presence, real-time interaction, and a virtual 3d space. OpenSim is close to parallel to the "Second Life Server", but even that is different. The Second Life Server is a server that runs a virtual world, whereas OpenSim is a platform upon which 3d applications using virtual world may be built, one of which supported out of the box is a virtual world.

Consider the analogy to Google and Apache. Google is a service, whereas Apache is web server software. You can have an account on Google, and you can log in to your Google Docs account (for example), but it doesn't make any sense to "log in to Apache". Lots of web sites use Apache as the software on which they run their server, but you wouldn't expect your account on manybody.org and wikipedia.org to be the same account, nor would you expect those two organizations to have anything to do with each other. Similarly, it doesn't make any sense to have "an OpenSim account" or to "log in to OpenSim", because there are many different services using the OpenSim software as their infrastructure.

OpenSim is currently in the alpha stage of development. It's very much in active development, there are some things that are still very rough around the edges, and the various APIs associated with it can be expected to change in the coming year. However, while there are a few things in Second Life not currently well-supported by OpenSim (including Voice), it is already very usable as a virtual worlds platform.

Advantages
The first and foremost advantage of OpenSim is that it is open source. This means that you can download and run it yourself. It's not dedicated software for a single service; if you have problems with the service running your servers, you can always switch to another one, or set it up yourself. You aren't subject to the terms of service, policies, and whims of a third party service provider; you can choose a service provider that has terms you can accept, or run your own virtual world. Because the source code is freely available, you can implement things that don't exist, or pay somebody to implement things that don't exist.

A second advantage (although one that may turn into an albatross) of OpenSim is that it uses the same protocol for communicating with the viewer software as Second Life. This means that you can use the Second Life viewer to connect to a service running OpenSim, and that skills you've learned for navigating Second Life will carry over to services running OpenSim.

Limitations
As mentioned above, many things in OpenSim are not yet fully stable, and the APIs will continue to change until the OpenSim core developers decide that it's time to stabilize things and declare a "1.0" release.

The most significant limitations of OpenSim are, in my opinion:


 * It doesn't currently have a Voice service that comes anywhere near the power of Second Life voice. There are some OpenSim voice possibilities.  One is Vivox (the Voice service that Second Life users), but you need an account on the Vivox service to use it... which undermines many of the open source advantages that OpenSim started with.  Another is "Freeswitch", but reports are that it's not as good quality as Vivox, it's tough to set up, and it's not clear if it includes the visual feedback in-world about who's talking (lip sync and the green "radio lines" over your head, crucial feedback for integrating Voice with an immersive virutal world).


 * There's nobody there.... Again, OpenSim isn't a place the way Second Life is a place, so this statement doesn't make any sense.  However, if you look at some of the popular OpenSim grids, including OSGrid, ScienceSim, and ReactionGrid, you will typically see less than 100 people logged in, in comparison to 40,000 to 70,000 people that are always logged in to Second Life.  Until the interoperable metaverse catches on and people start having accounts on different grids, and until they can take those accounts to arbitrary grids (just as we can freely hop between websites with one web browser now), it will not make much sense to hold public events in ScienceSim or any other OpenSim grid.  Until that happens, Second Life remains the only viable option for holding public events of the sort that MICA and MODEST want to hold.


 * At the moment, there aren't really any easy to use "distributions" of OpenSim. Those who use it download and build the source code, either form a source archive on http://www.opensimulator.org, or directly from a git archive.  The building is fairly straightforward, but there is no easy installation the way there is with source distribution for a lot of open source packages.  You can get Diva Distribution if its assumptions happen to match exactly what you want to run-- a standalone single 512m by 512m megaregion with HyperGrid enabled.  One of the goals of ScienceSim in the future is hopefully to create a distribution of OpenSim that will be straightforward to download and install.

Some OpenSim Grids

 * OSGrid is the primary "experimental" and "wild west" OpenSim grid. The people who run it have close ties with the core OpenSim developers (and there may be some overlap, I'm not sure).  The core OpenSim developers will often use regions on OSGrid for load testing and other sorts of tests.  Anybody can connect a region to OSGrid, and many have.  (Including Rob Knop-- visit "Prospero's Island", a place where he plays around with OpenSim technology.  Rob is Prospero Frobozz on OSGrid, just as he is in Second Life.)


 * ScienceSim is an experimental grid put together by Intel for purposes of the Supercomputing '09 conference that occurred in November 2009. It has also been the site of active development.  This is the grid where MICA currently is hosting its regions.


 * Reaction Grid is a commercial grid that intends to focus on education. It is not clear how much it has caught on yet.

The Second Life Viewer
The best viewer for OpenSim is the Second Life Viewer&mdash; the same client software you use to log in to Second Life. This is a bit unfortunate, because the Second Life Viewer, while able to log into any grid, is designed only to make it easy to log into OpenSim. The most general way to log into an OpenSim grid with the Second Life Viewer is to get the "LoginURI" for the viewer, and pass this on the command line. To do that, of course, you may need to know where the executable is on your system. If you're a Linux user, you probably use the command line anyway; if you're a Windows or Mac user, this may be a bit of a barrier. However, typically the location of the application is:


 * Windows : C:\Program Files\SecondLife\SecondLife.exe
 * Mac : /Applications/Second\ Life.app/Contents/MacOS/Second\ Life

(Note that the backslashes in the name on the Mac are not actually part of the name, but are for the Unix command line to know that you aren't ending the executable and starting arguments with those spaces.) If the applications aren't in those directories, you're on your own finding them on your system.

To log in to an OpenSim viewer, you then run:


 * viewer_executable -loginuri loginURI

Some examples.... (Note that Linux assumes that you've cd'ed to the directory where the "secondlife" executable lives; I think you need to do this for everything to work. Myself, I created a two-line shell script in /usr/local/bin that does that cd and then does "exec ./secondlife $*", so that I can just run "secondlife" on the command line anywhere.)


 * OSGrid
 * Linux : ./secondlife -loginuri http://osgrid.org:8002/
 * Mac : /Applications/Second\ Life.app/Contents/MacOS/Second\ Life -loginuri http://osgrid.org:8002/
 * Windows : C:\Program Files\SecondLife\SecondLife.exe -loginuri http://osgrid.org:8002/</tt>


 * ScienceSim
 * Linux : ./secondlife -loginuri http://grid.sciencesim.com/</tt>
 * Mac : /Applications/Second\ Life.app/Contents/MacOS/Second\ Life -loginuri http://grid.sciencesim.com/</tt>
 * Windows : C:\Program Files\SecondLife\SecondLife.exe -loginuri http://grid.sciencesim.com/</tt>

Alternative for Windows : Install the software here. Once done with that, start using the Linux instructions.

Some Caveats about the Second Life Viewer
Second Life has introduced a new API to interface with its Map server (the thing you see when you click "Map" on the client). This hasn't shown up in the release viewer yet, but there are some versions of the Second Life viewer out there, including Snowglobe and (I believe) Emerald that use it. If you use one of these viewers to connect to an OpenSim grid, the map will be broken for you.

The Hippo OpenSim Viewer
The Hippo OpenSim Viewer used to be the easiest way to connect to OpenSim grids. Unfortunately, it's no longer being actively supported, and as such is falling behind and will eventually not be usable any more. For now, it probably remains the easiest way to log in to OpenSim grids, and is what Rob Knop primarily uses.

The login screen of the Hippo OpenSim Viewer includes a "Grids" button that opens up a dialog that lets you either select the grid you wish to connect to from a dropdown list, or to enter login information from that grid. You can save that information so it shows up on the dropdown list thereafter. This is of course an extremely convenient way to log in to OpenSim grids, and it's a pity that the Second Life viewer doesn't have this support. (But, how can you expect them to?)

The Hippo OpenSim viewer, like any other currently viable viewer, is just a modification of the GPL Second Life Viewer code. This does introduce some complications; see below.

Choosing your grid in Hippo : Click the "Grids" button on the login screen. Look at the dropdown list at the top; if the grid you want is there, select it, and select "OK" at the bottom. If it is not, click the "Add" button. Enter the LoginURI for the grid in "Login URI" and click "Get Grid Info". That may or may not fill in the rest of the text fields. If it does not, enter a "Grid Nickname", and don't worry about the rest. Click "OK".

Complications Arising From Second Life Viewer Derived Viewers
Currently, every viable viewer for OpenSim and/or Second Life is either released as proprietary software (for zero cost) from Linden Lab, or is based on the GPL Second Life Viewer source code. OpenSim, in contrast, is licensed under a BSD-style license. The OpenSim core developers have set a policy that nobody who has even looked at the GPLed SL viewer code in the previous six months can commit anything to the OpenSim core repository. What this means is that developers can't actively participate in core OpenSim development and modify practical viewer code at the same time. The OpenSim core developers worry about Linden Lab bringing suit against them, saying that their GPL code was incorporated into the BSD OpenSim viewer, thereby requiring OpenSim to turn GPL and/or stop being distributed altogether. I believe that they are being too paranoid here, but they've asked lawyers who of course advised them to be paranoid, and they don't want to get into legal entanglements with Linden Lab. To be honest, given Linden Lab's about face on some of its best fans over trademarks (see for example this story about the SLEducation wiki), I can't blame them for being a bit afraid of Linden Lab's legal and business team.

I suspect this is part of why the Hippo viewer has fallen into ill support; those who would care most to maintain it have a reason why they can't. (NOTE that you are allowed to edit and release code for both the viewer and OpenSim; nothing in the licenses stop you!  However, it does mean that your modifications won't be able to get into OpenSim core, and it is of course the OpenSim core developers who are most active in working on OpenSim core functionality.  What's more, if you're creating something that you want to be part of core functionality, you probably want there to be a chance to get it into the core of OpenSim.

One can hope that in the future, there will be a completely independent viewer which will allow these concerns to evaporate. Indeed, if the open and interoperable metaverse is to take off, this will need to happen. Although most people use Apache, there are numerous http server packages out there. On the client side, web browsers are mostly split between IE (ugh), Firefox, Safari, and Opera, and there are of course many other web browsers (including elinks, and libraries for many popular languages such as perl, python, and Java).

Running OpenSim yourself
to be written

MICA Regions on ScienceSim
Right now, MICA and MODEST have two regions on ScienceSim:


 * MICA Lobby
 * MICA StarSim

Read Below for information about finding them.

Getting a ScienceSim Account
Because our regions are connected to the ScienceSim grid, if you want to get to them you will need a ScienceSim account. Go to the ScienceSim account creation page and enter the required information. Note that you can freely choose your own firstname and lastname in ScienceSim, so nothing is stopping you from using your real first and last names if you want to...!

After you enter the information, the server will send you an e-mail with instructions for activating the account. If you don't receive that e-mail, something has gone wrong. Anecdotally, there are problems with e-mail from this server getting into at least Leiden University. If you're having trouble, please either contact Mic Bowman, or let Rob Knop know, and he'll talk to Mic Bowman about it.

Forgot your password?
Go to the ScienceSim account creation page; there's a "forgot my password" link there.

Viewers for ScienceSim &amp; Logging In to ScienceSim
To log into ScienceSim, you can launch your current Second Life Viewer from the command line.

./secondlife -loginurl http://grid.sciencesim.com/</tt> /Applications/Second\ Life.app/Contents/MacOS/Second\ Life -loginuri http://grid.sciencesim.com/</tt> C:\Program Files\SecondLife\SecondLife.exe -loginuri http://grid.sciencesim.com/</tt>
 * Linux : cd to the right directory and run
 * Mac :
 * Windows :

If you are on Windows: you may want to try the Cable Beach Launcher.

NOTE : as of 2009-12-07, some current versions of the Second Life Viewer (including Snowglobe and, I believe, Emerald) use an incompatable protocol for the Map, so the Map will be broken if you use them. I believe that the current release version of the Second Life Viewer is fully compatable.

See above for more information about using viewers to connect to OpenSim services. In particular, you may find that using the the Hippo OpenSim Viewer makes things easier. If you're on Linux, you may want to try the Open Metaverse Viewer.

Avatar Customization, Textures, Gadgets, Etc.
So now you're on ScienceSim, and all of a sudden all the stuff you're used to having in Second Life isn't there. Plus, you don't want to loo like Ruth! Visit the ScienceSim Travelogue for some suggestions.

The MICA Regions in ScienceSim
Once you have logged into ScienceSim, you can find a given region by pressing the "Map" button at the bottom of your screen. That will bring up the Map interface. Type the name of the region you wish to find into the search box on the right, and press "search". Select the region in the list that results. Optionally, you can also click on the map if you want to choose a spot within the region.

If you search for just "MICA", you will find all of the MICA regions that are up on ScienceSim.

Note: Some viewers, including Snowglobe and (I think) Emerald, use a newer version of the Map protocol that isn't supported by OpenSim. As such, the map may not function fully with those viewers. I do not believe there is the equivalent of a SLURL on ScienceSim.

MICA Lobby
This is our "home" on ScienceSim. It's currently one big flat empty region. The goal is to make this into a meeting area and the public face of MICA and MODEST on ScienceSim, similar to what StellaNova is on Second Life. We want to have meeting and presentation areas, as well as some general information about MICA and MODEST for the public, and possibly some small demos.

MICA StarSim
The first experimental region. This region, when it is online and connected, is running the NewtonPhysics physics module. This is an N-body simulator.

To get there, go to MICA Lobby (128, 128, 25). (The very center of MICA Lobby.) There's a box there with instructions. Click the box to get a landmark to the right spot in MICA StarSim. Make sure you're flying (press "f"), and teleport to follow the landmark. If the teleport fails keep trying; it should work sooner or later. When you get there, turn around; to the south you'll see a bunch of things you can click on. Start by clicking on the grey panel on the floor; there are some instructions (and warnings) in there.

Right now, there are some things broken. In particular, cleaning up the stars (to remove them) doesn't seem to get rid of all of them.

NOTE : you probably want to set your draw distance very high (say 512m). Even with that, stars that get far away will stop being rendered, but the problem is less with a large draw distance. This is a very visually simple region, so you will not have the bad fps problems with a high draw distance that you might expect from "typical" Second Life or OpenSim regions. To set your draw distance high, Go to "Edit", select "Preferences", and select "Graphics". Make sure "Custom" is checked; if it is, just below the Custom checkbox is a slider "Draw Distance".

MICA People in Science Sim
The following MICA and MODEST people have accounts on ScienceSim. Feel free to submit a friend request at least to Rob Knop!

To learn more about OpenSim
Jump to the top of this page.