OpenSim needs an installer bundle

I attended UMass in the early eighties when access to DARPAnet first became available to students. In the beginning, all we had was terminal-based FTP access to download TeX markup documents that we could send to the batch printers. It wasn’t until almost ten years later that Mosaic based graphical browsers became common on personal computers that were powerful enough to run Windows 3.1.

For people not in the academic community connecting to the Internet meant dialing-up to a large service provider like Prodigy or CompuServe, and later AOL. These service providers offered access to their limited enclave of data, and as a member, this was all you could use. At the time the argument for these closed systems was that they were limiting access to proprietary content. In time, the cost needed to build low cost Internet Service Providers (ISPs) came down, providing anyone with a dial-up modem the inexpensive option of having server space to post their own web pages. In conjunction with this low cost hosting came the development of an improved markup language that allowed hypertext linking, HTML.

This meant that even individuals who created the simplest web pages could link to other sites located anywhere on the Internet. It was this availability of inexpensive web page hosting and unlimited connectivity that spurred the explosive growth of the Internet to become the ubiquitous feature of our technological lives that it is today. Further promoting this growth has been the increase in high-speed Internet connectivity and low-cost consumer computer hardware.

Parallel to the growth of the Internet, we can follow the development of virtual worlds. The earliest text based virtual worlds were chat applications that ran across the DARPAnet. Prior to the big ISPs, individuals could build their own dial-up electronic bulletin board systems. Many of these systems eventually included chat capability and multiple chat rooms. In time, these chat rooms became more graphical. I remember the excitement I felt when I logged onto my first crude virtual world using my Atari 1040ST on my 320×240 pixel color monitor.

It is clear that Second Life has played the role of AOL in promoting virtual worlds to larger populations. Now with the growth of OpenSim, it is possible for anyone with a web server to host a virtual world, similar to the advent of reduced-cost of web page hosting in the past. This now puts us at that familiar juncture where the keepers of enclave-based systems prevent inter-system linking in the name of proprietary content. Worse, there are new owners of virtual worlds with slick front-end web sites that are creating new closed worlds in an attempt to become the successor to Second Life. The collapse of AOL answers the question of how successful this approach will be.

What is needed now is a standard of OpenSim packaging, management, and inter-grid connection that will allow individuals to install and run their own hypergrid connected sites. This package management could be modeled after the refinement and ease that users can install other open source software using scripted installers. With this advancement, current web developers can then extend their services to include the personalization and customization of virtual worlds. For individuals and companies with web sites, having their own virtual world can simply be an extension of their existing web presence.

The specification for this easy-install virtual world is clear. This development effort is at a similar place to where the development of the Apache web server was in its early stages. Many of the pieces needed are either under construction or well underway and just need to be assembled together. The final product will be a single package that can be installed by a single click using QuickInstall, or Fantastico De Luxe, the standard installers supplied by many ISPs.

Nine easy pieces

There are nine components that already exist within OpenSim, but are not yet bundled:

1. Mono

Since the cost of Linux-based hosting is lower and more common than Windows-based hosting, a Mono installer needs to be part of the standard package to allow for the Microsoft .NET framework that OpenSim is now written on to run on Linux servers. For widest distribution, OpenSim needs to run through this emulation layer since most web hosting now uses Linux servers. In time, OpenSim will need to be rewritten from the ground up completely Linux-native and open source. This is the most labor intensive item on this list, but is essential for the wider distribution of OpenSim to allow installations to run without the memory or processor boundaries in both private and public clouds imposed by the .NET framework.

2. Templates

On installation, a virtual world will be provided which will have stock attributes, including a virtual conference space, a virtual social space, and a virtual storefront. A virtual world owner can delete the areas that they don’t need and duplicate the stock buildings as needed. It is almost valueless for a new virtual world owner to arrive to a completely barren space. Most web sites today are built using templates, and so should virtual worlds. In time, there should be web sites of themed virtual worlds as there are now web sites of CMS (Content Management System) graphical front ends.

3. Stock inventory

Every virtual world needs to come with a library of stock open source buildings, furniture, vehicles, avatars, clothing, and textures. Further, there needs to be one or more large central repositories of OpenSim objects. What is stifling to new virtual world development is the requirement that every new world needs to create all of their objects for themselves. Access to these open source items needs to be provided out-of-world by file download and in-world by standard zero cost purchase.

4. Backup & migration tools

A built in Second-Inventory type tool needs to be included with OpenSim to allow users to download their inventories, and to be able to download items from a variety of websites and upload them as needed to their virtual worlds. Inventory backup and maintenance needs to be provided to users on their own computers. Limiting control of inventory only to in-world is part of the non-distributed virtual world model of Second Life.

5. Easy control panel

It is essential that virtual world owners be provided with an easy to use virtual world control panel. Without this control panel, management of virtual grids will be limited to people who have the interest and skill to adjust user rights by navigating the layers of a Microsoft SQL database and editing values in the tables. The best control panel that I have seen has been distributed by PioneerX. This will either need to be licensed or rewritten as open source. The best scenario will be for a version of this control panel to be released for free to grid owners who don’t need to collect in-world rent, and for a commercial version to be licensed for grids that need recurring billing options.

6. Browser-based viewer

The threshold to new virtual world visitors needs to be reduced. For many software developers, it is hard to keep in mind that most computer users still feel uncomfortable or are unwilling to install new software on their machines. The requirement that virtual worlds can only be accessed by installing a standalone browser creates too high a barrier to entry for many would-be virtual world visitors. At least the initial access to virtual worlds needs to be web browser-based. Second Life is currently in beta for a browser-based viewer and the version that I tested worked well. SpotON3D has an interesting workaround that makes it look to the user as if they are only installing a browser plug-in when they are actually installing a virtual world browser and a utility that allows for a Windows-based application to be viewed through a window in a browser. Whatever the solution, virtual worlds need to become part of the standard web browser interface, not relegated to their own software installations like computer games.

7. Built-in voice

To secure OpenSim as another viable social media service, it needs to provide voice communication. There are a couple of OpenSim add-on voice options available, however both of them require licensing. As with the PioneerX control panel, there need to be free versions of this software available with the stock OpenSim install, and there also need to be licensed versions available to commercial vendors. If entirely open source versions of this software cannot be made available, in time there will need to be ground-up rewrites of OpenSim that include voice. One recommendation I have is that these in-world voice functions need to work uniformly as they do in Second Life, with proximity allowing voice communication. One OpenSim grid that I visited had voice that was region-wide, making it hard to know who was speaking when disembodied voices could be heard out of mini-map range.

8. Web front end

New OpenSim installations need to come with a stock web site front end. For virtual worlds to be an extension of web sites, the barriers between in-world and out-of-world communication need to be brought down. The best solution would be an integration with existing and well established Content Management Systems (CMS) like WordPress or Drupal as the PioneerX currently is. Ideally the web-based control panel for the virtual world management would be plug-ins for these standard CMS tools. These plug-ins could include functions like avatar creation and the ability to see who is in-world from the web site front end. This would allow users who were installing new virtual worlds to have access to the huge existing libraries of front-end site templates, helping them create out-of-world look and feel, and giving them access to well-defined plug-ins. If OpenSim plug-ins could be made available for WordPress, the 55,000,000+ users of this CMS could then develop front-ends to their own virtual worlds.

9. Hypergrid access

It is essential that every grid provide hypergrid transport. Many current grids consider that by providing hypergrid transport, they are leaving themselves open to claims of supporting intellectual property theft. However, by failing to provide this support, they are defeating the purpose of the Internet itself. Web pages would be fairly valueless if they had no external links, and search engines would not exist. For each new grid, there needs to be an option of joining a centralized hypergrid listing, and this list needs to be made available to all grids, both in-world and out-of-world. Further, this hypergrid listing needs to have a rating system that describes quality of the grids, based on available bandwidth and popularity. Of course there will always be the option of having completely private grids that are not linked to the system, in the same way that there are web pages that are only used internally within companies. This would be a good use of Google’s existing search engine indexing, a technology that they already have a clear licensing model for.

Three harder pieces

There are three components that do not yet exist and will need to be incorporated into OpenSim:

1. Distributed inventories

Inventory control needs to be distributed among many grids. With the current big grid model, assets are kept in one location and are generally not accessible through the hypergrid system. My proposal is that assets for each avatar be kept in a home grid and then referenced wherever that avatar travels by hypergrid. This would mean that inventory pointers would not point to local SQL databases, but would point to inventories stored on remote machines. These inventories could be backed up by the user and be moved to another home grid if needed. This would also solve licensing issues. All objects would be paid for and owned by the avatar, and would not be the responsibility of the specific grid. Owners of the grids would not be responsible for any inventory not on their server, allowing universal hypergrid transport without risk.

2. Multi-grid currency

There needs to be a universal handling of currency. This is essential for all in-world transactions, such as tip-based activities in music venues. Universal currency handling is also essential for the purchase of real world products sold through a virtual world interface. I can imagine an in-world clothing store where an avatar can try on items and then have this merchandise sent to them in real life. Rather than creating universal currency specifically for OpenSim, I propose using the existing Google Checkout. This already existing infrastructure allows shoppers to visit various e-commerce web sites, collect items in their cart, and pay in one centralized location. I would imagine that Google would be interested in participating in this integration.

3. Cloud plugin

Finally, with the completely open source rewrite of OpenSim, there should be a restructuring of the underlying databases so that resources can be made cloud-based. Using a cloud-based computing environment, OpenSim installs could use little resources when not in use and then have near infinite resources when needed. SpotOn3D is offering this technology in-world, but I have not tested this feature of their grid. For stand-alone grid installations, I am proposing that there be a CMS plug-in that would enable commercial cloud access. I have been impressed with the power and flexibility of Amazon Web Services and would recommend that when OpenSim is restructured to function better on distributed systems, there be standard controls incorporated to link directly to such commercial clouds.

Keeping it open

Several people with whom I have shared these ideas have proposed that I develop these projects as a private commercial venture. I feel, however, that this is antithetical to the growth of OpenSim.

The growth of the Internet was based on inexpensive, open, and unregulated communication. When open source projects have become regulated and commercial, the open source community has quickly abandoned them.

What I have proposed here is the development of OpenSim as I would like to see it. If and when this virtual world infrastructure is created, it will be determined by the OpenSim community, not by one enterprising individual. I look forward to hearing people’s comments and discussion on these ideas.

You may also like...

Phil — I agree with you about the need for a bundle. Though, personally, I find CPanel too hard to use and run my WordPress sites on Dreamhost, instead, which has an easier-to-use, custom-build installer system.

Some pieces may already be there. Whisper/Mumble voice, for example, sounds as good as Vivox and just needs to be better integrated with the viewers. And Paypal payment and OMC currently modules are already available — in fact, OMC is currently used on 30 different OpenSim grids.

One think you missed which I think is going to make a huge difference is a content management system. Kind of what WordPress is to Apache. After all, how many of us are running a bare-bones HTML website these days? — Maria

oddballotoole

If I want a bundle, i'll go to SL, One-click install, currency, no need for hyper-grid (lots of cool places to visit there), voice enabled, live artists, etc, etc.

The fun in the open-sim based worlds, for me personally, is NOT having a bundle. I like to figure things out myself, I like to get a sim running on a Linux server without any knowledge of Linux! Same goes for SL btw; I don't have a clue how to make a mesh, but gonna learn how to do that!

That is the fun for me, learning new stuff, like Linux, or meshes, or what ever. I don't need a one-click VR, I like to build my own one:)

(Good article though)

Oddball.

bristle

i came to silicon valley to work on DARPAnet and a product that was world-wide. since then i been looking at way to make what is now the internet more VRish. i generally supported vrml/vrml2 until it died, and in oct 2007 looked at sl then fhte following month opensim.

i agree with you. simona-on-a-stick is the right different. diva is the right direction. but because the opensim seems divided and everyone is in for their own part– except for opensim developers themselves, dont think it will happen.

i talked to various people about currency, dynamic animations, actors (npcs run on the system server), and marketplace, true marketplace. in fact one developer as osgrid called me a *something nasty* for suggesting currency. opensim and realXend should join forces and have more resources — like cash. afterall, it was the mod that realXend contribution that make meshes possible on opensim.

sargemisfit

Oddball, that isn't a bundle. SL has all the server end of things. And I'm like you, I like to get 'under the hood'. But face it, the average person out there just wants to plug it in and go. A easy-to-install, ready to go, one shot bundle would result in more people trying OpenSim.

I had a long talk with Revolution Smythe, lead dev of Aurora Sim, and he told me that, ideally, Mesh Networks would offer the best chance of content security across the Hypergrid Network where nothing actually leaves the grid in which it is sold or given away. Mesh Networks acts as a relay – or rather, every grid acts as a relay for distributing data. All grids keep their content regardless and only distribute data about it through the network so no matter where you travel your inventory is drawing on data in the network rather than directly from your home grid. What you create is always stored on your home grid database and you can sell access to the data distributed in the network rather than selling copies that are transferred to some other database. In theory this makes it impossible for content thieves to steal the original items.

sarahblogging

Hm… new names for old things. I thought about the same thing, like with bittorrent, just its called peer to peer from my point of view.

http://www.facebook.com/profile.php?id=1836033834 Nick Zwart

The New World Studio 7.1.1 installs a mega region on your computer including phpmyadmin and the wifi pages to create accounts. and it can easily be connected to the outside world, it is just one click away. And HG works too. One install is needed, it is working.
If you want a bundle, here it is. The only thing that is missing is voice.

http://twitter.com/iliveisl @iliveisl

"nine easy pieces"? if that is so, then create it for us! =p

but i don't want a pre-cluttered inventory, bah on that, i want it stripped down to just a default shape and skin

Dixie — Each of us only has so much time in the day to be creative. Creating a grid is kind of like… like cooking a meal. Do you grow all your own ingredients and cook everything from scratch? Not only does it take a lot of time, but you wind up limited to the stuff that can grow in your area — and is in season. Though some folks do do this, and more power to them!

Other times, you're rushed, and you just grab a frozen meal out of the freezer and reheat it. Boring, but it works, and keeps you fed. Or you can combine ingredients — some fresh, some canned, some frozen — into something unique, using your limited time and energy on the combining part, or the seasonings, or just make the salad from scratch and reheat everything else.

(Okay, I'm a little hungry right now as I write…)

Same thing for the grid. Are you going to make all your plants from scratch? Go outside and take pictures to create original textures? Or is the stock stuff good enough? Personally, what Linda Kellie is doing is way better than anything i can come up with on my own. Yes, the plants on my grid will look "the same" as on other grids (though I may arrange them differently) but at least they won't look worse!

Similarly, does everyone need to create all their office buildings and classrooms from scratch? Or use their time when it comes – in creating unique interactive learning or collaboration experiences?

Having stock plants, buildings, furniture, avatars, even entire regions available doesn't hurt creativity — just creates time and opportunity to be creative in different ways.

http://westernprairie.net WesternPrairie

Ive been in OSgrid for about 6 months, it seems that the most common problem with new installs almost everyone runs into like a brick wall is their router/ports/firewall/port forwarding.
Invariably they run into either the “(region) is not part of an estate” app QUITS… or they get their regions up, on the map but no one can TP to it.
Then you spend a lot of time checking it all and rechecking, and still cant TP in. One fellow only copied his working install to another machine in his house and the two of us spent I dont know how many hours over several days trying to get it to work (he ran into those two errors above) and I finally had to suggest maybe he just rent a region for now.
He decided to put his tower back on which had OS running fine, did so and it ran fine. No idea why his other machine simply would not, he installed everything needed .NETframeworks 3.5, the OSgrid version downloaded fresh several times, recopying over his working install, checkign and rechecking his ip’s internal ip, portforwarding for it, ports, even turning OFF His firewall to try that, verifying his regions.ini and I even teamviewed to look.

There’s GOT to be a better, simpler way to do this, it just can’t be THAT difficult.

Nilemon

From a Guest to a Guest
Your friend story it’s just like mine
Hours and hours over several days with a friend teamviewing to help me.
My region was on map, and regions list. My friend could go there. But me? Never I could see my region or have my feet in there.
Deception it’s my word…