Tribal Net, which goes into public Beta at the end of this week, not only brings us the long awaited OpenSim on your PC but by creating new back end protocols for OpenSim the Tribal Media team has introduced a key innovation to OpenSim – the decentralized grid. I interviewed the two founders of Tribal Media last week, Darren Guard who is also the founder of OpenSim and Stefan Andersson who was the first to join Darren on the OpenSim project. Stefan also led the development of “Playahead Island” in Second Life â„¢ (A registered Trademark of Linden Lab). Stefan has deep roots in web development and Playahead is one of Sweden’s largest web communities. Stefan explained the heart of the Tribal Net concept:
Everybody brings their own computing power [to Tribal Net] and we’ve packaged it for end users. I mean that basically joe schmoe can install it, set it up, and run it. Because OpenSim’s been very tech heavy, our goal with Tribal Net is to make Opensim more accessible for the wider layers so to speak. Also we’ve done some work on the map so that now when people go online their regions show up on the map. When they go off line the region disappears [it can also be persistent]. That is also a radically different approach from Second Life .
Yes! It is very easy to install and you will find your region immediately embedded in a network of other regions running on other PCs.
After I had set up my Ugotrade region, I clicked on map and it was a real thrill to see the Ugotrade come up in a neighborhood of other regions (even though I am apparently one of the first five people to try it outside of Tribal!) and immediately begin my first adventure in sim hopping – NOT across a grid run on a bunch of servers NOT on some huge server farm somewhere, but simply by teleporting to other peoples regions run on their own PC’s located across the globe. W00t!
Ugotrade Jr. got into it immediately and his terraforming and building skills are blossoming! Picture below shows his mountain retreat 2.0.
Tribal is still using the Second Life client but Darren said they hope to support the realXtend client at some point. Check out the awesome new avatar technology from realXtend in a new video out this week that shows off character morph controls, inverse kinematics, and clothing physics.
Below is a picture of Stefan And Darren enjoying a game of chess in one of the first regions I visited – a Tribal Net region running on Stefan’s laptop. Stefan explained:
The chess game application installed on the desktop is developed in c# by a third party – and anybody can create their own set of pieces and share it as an xml file
Tribal Media’s Vision
Tribal Net is the first public application from Tribal Media but it is only the beginning of their venture. Stefan explained their vision:
We see a virtual web world much more like the Web works today. Instead of a closed bubble, we should have an open, networked model. One size never fits all, so people should be able to make content on their own computers and share it with others, professionals should be able to make their own applications and run on their own servers, or to have it hosted on reliable hardware. Content should also be much more moveable, people should be able to transfer objects not only between worlds, but also via the web, blogs or e-mails. Tribal Net lets them do that. Our goal is to supply the tools to make this vision come true.
And as Darren noted: “At the moment our back end is basically customized for this one application. Each new application is going to need slightly different customization. Stefan also talked about a Facebook application they have been working on. There is not a general solution at the moment. Darren explained some of what they are hoping to achieve with Tribal Net.
From a engineering side, I think the main point is at the moment we are working on making it easier for people to start up and host their own region. TribalNet is our first demo of that process. Then we hope to make it easier for people to host their own small grids with this easy hosting of regions, so say any school or college could have their own small grid without the admin level that is needed currently for opensim. A important part of our concept is having a GUI for the regions, so that we can later provide add on modules for these GUI’s so for instant maybe we would provide a game construction toolset add on, or a presentation addon , that made it easier to host and control presentations. Some of these then at a later time could move into the viewer. Then at a higher level we have our set of extension api’s which I think its a bit too early to go into detail of.
What follows is the full transcript of my interview with Darren and Stefan. The first bit is about the history of the OpenSim project and then we discuss a number of topics including interoperability with Second Life, the Tribal teams’ view on virtual economies, asset development on Open Source grids, and what application they are most important in Tribal’s vision.
Interview with Darren Guard and Stefan Andersson.
Tish: How did OpenSim begin?
Darren Guard: For a number of years, I had thought about starting or getting involved with a open source virtual world project. But none of them seemed to be going anywhere. One of the problems was trying to create a client and server at the same time. Then in January 2007, I was looking around again at the various options, for use by my ex-employer. At the same time Linden Labs released the code for their client. Which I think from a legal point of view made creating a server that it could connect to a much more easy “sell”. So I started work on writing a very quick prototype server, to see if there was any problems with getting the SL viewer to connect to it and be able to move around. A number of people had the same idea of writing a server which was compatible with the SL viewer, it was even listed in the roadmap on libsecondlife’s website.
So, as much as we all moan about the SL client and wished there was something at least more generic, we do owe opensim’s existence to them releasing the source code. As I just wouldn’t have started Opensim if the
client was a closed proprietary one.
My initial thoughts on what I wanted to use the platform for, were very much on what would be useful in my old job. Simulation (Robotics) and 3d visualisation of data. This is why one of the stated goals of opensim is
it being a 3d application platform and not a SL clone. I see the social grids as just one small subset of the applications that a 3d virtual environment platform could be used for.
This is one of the biggest points of confusion when it comes to opensim. Most people think its goal is just to clone SL and behave exactly how that does, and support all the features out of the box. And we have to repeatedly tell them that its not the goal and that opensim will most likely never have all the features of SL as part of the main project. Other people will have to create the modules to add those features.
The goal of Opensim and Tribalmedia is to produce a common server that can be used as the base of a lot of different applications. I don’t think we can even really start guessing at what the most sucessful applications
will be in the future.
Tish: How did you meet Darren, Stefan?
Stefan Andersson: I’ve been working quite a lot with web, I mean I was quite early in the web development and I’ve been doing that for quite a lot of years. And, I was very interested in web and 3D integration. That’s actually how I stumbled upon Darren, when he first came on-line in lib second life chat room, and said hey I’ve got a prototypic open source second life server here.
Tish: Was the big moment in February 2007, Darren?
Darren: It was January.
Stefan: And I jumped on it. The first thing I did was to tweak his code, and give him some patches so I could connect his Second Life server to my then employers user database. The Employer at that time was Playahead. It’s one of Sweden’s largest web communities. So basically what I did was within an hour of getting my hands on the zip file, Darren’s first unpublished zip file, was to make sure that I could log into the SL viewer with my web community name and my web community password. When I came into a personalized world where all my friends and my friend lists were avatars, and when I chatted with them and I got guestbook messages into their guestbooks, that’s when I sat there and said WOW!
Tish: Not everyone recognised the potential then?
Stefan: I think they still don’t. You ask what’s important to us. We are very application oriented. We are very integration oriented. At the moment OpenSim is not very accessible and understandable for a large audience. We’re trying to show the world that there can be commercial application on this not just social networking applications, but actual 3D application. It’s a bit like the web, everybody thought that the web was about static HTML pages, and then now today we do much of our daily work on HTML. That’s kinda like the grand big hand motions. What we did when we started OpenSim, we had a very clear agenda, that we wanted this to be a shared experience 3D application platform.
Tish: When you say application, are you thinking more vertical applications or are you thinking vertical or horizontal on these distributed grids?
Darren: We don’t see one big monolithic grid, we sort of see, like Stefan said, like a web where you can link from one web site to another. You wouldn’t really say that every web site is part of one grid. When we talk about applications, its custom, i.e., you might go into one application to do one function then hop to do something else.
Stefan: So for example, now we have actually done Tribal Net as a showcase for our product Tribal server. And we did another showcase that we haven’t publicized yet, but basically that was web community integration.
Tish: What do you mean by web community integration?
Darren: That was a Facebook integration.
Tish: There are 2 basic models it seems being tried, a) embedding Opensims within the web or b) embedding the web in Opensims. Which model do you lean towars, or do you see a sort of heterogeneous mix of embedding in web pages and people who grid OpenSim out into larger communities and embed web pages in them?
Stefan: Actually that will probably be very much a per application decision. Some application are very suitable for 2 dimensional presentation and some application are very well suited for 3 dimensional. and we’ve done some prototypes with integrating web and 3D and obviously there’s going to be a lot of that coming.
Tish: How do you differentiate yourself from say an initiative like RealXtend?
Stefan: RealXtend? They are trying to do quite a lot of things. We are not competing with RealXtend. We would probably use Real Xtend.
Darren: Yes. From what I understand of Real Xtend, they’re focusing on the client. They have a central avatar system. I don’t really have that much knowledge of that. The main focus that we spoke about is on the client side. So we’re not really competition for them, we hope to support their client sometime.
Tish: I have heard on the grapevine you are using dynamic sims. What is a dynamic sim?
Stefan: Dynamic Sim! That can mean anything! We have quite a lot of concepts.
Darren: I think what they’re talking about is we’ve got this concept where we can bring a region up quickly when it’s needed so when you login we can bring your region up so that you wouldn’t even know it wasn’t up all the time. If there’s nobody there we can take it down.
Tish:
How have you done that?
Stefan: If you think about how Second Life works right now, how everybody seems to think about that, It’s kind of like a static model, the thing is there, whether anybody wants it or not. So you have like thousands of regions producing air. It’s a terrible waste of CPU. We wanted to do something like a web page, a dynamic web page. It’s constructed when you need it.
Tish: Are other people using this concept?
Darren: I think Adam has done something like it I’m not sure what exactly. But from what I hear Adam has similar ideas.
Stefan: That’s the thing about dynamic regions, It’s a feature of our tribal worlds platform. We used that as a proof of concept in that Facebook application where anybody could add a Facebook application and then they just went into their own private region, which was constructed on the fly for them. And when the last person leaves the room, he just turns the lights off.
Tish: And what kind of concurrencies can you get in these dynamic regions though?
Darren: I don’t think we’ve actually pushed it, but we can certainly get more because it’s basically where Second Life is based on total regions and they have to have a server up for each region, we only have to have a server or an instance of a region up for every person who wants to let a region have somebody in it. So if there’s nobody in a region we just don’t have it up.
Tish: I know everyone’s talking about putting OpenSim in clouds. Is this going to be workable with that idea too? Just in terms of being more efficient about the server side of this. Is that something that works with this or are you another direction than that?
Darren: I think it can work yes. It’s complimentary to our project.
Stefan: What we did with Tribal Net – It’s kind of like OS grid. Everybody brings their own computing power and what we’ve done is that we’ve packaged it for end users. I mean so that basically joe schmoe can install it, set it up, and run it. Because OpenSim’s been very tech heavy, our goal with Tribalnet is to make OpenSim more accessible for the wider layers so to speak. Also we’ve done some work on the map so that now when people go online their regions show up on the map. When they go off line the region disappears. That is also a radically different approach from Second Life.
Darren: To clarify that a little bit. What he means is that instead of a region having a set position on the map, we have a center of the map and the regions brought online are thrust around the center and if a region goes off it’ll be replaced by a new region that comes up.
Tish: What it’s sounding like when you describe this is you’re trying to use some of the ideas of P2P in a distributed grid.
Stefan: Yes definitely. I used to say Hey look Microsoft messenger, it should be like that. I know Darren isn’t that fond of that. But I think of it like that.
Tish: The development curve seems to have been rather slow thus far in P2P virtual worlds like Croquet and Solipsis. How do you see a lot of rich and interesting assets being built up on this kind of distributed grid
Darren: I think it’s too early for even us to say. Yes we’re more sort of a model of decentralized rather than a big monolithic grid like Second Life. One problem with Second Life is all the assets are centralized. That makes you responsible for making sure any users are updated with current textures etc. And you’ve got the problem of trying to police that to make sure there’s no textures that you don’t want there.
Stefan: We’re trying to move to P2P because that’s the only viable solution if we’re going to see web scalability. It just is. And we can’t really have stuff like central avatar repositories and things like that. We have to have a base case, which is the single server, and the single client. And then just have to grow from there. But what I wanted to say is that Darren made a brilliant choice way back when he was pondering what he would do. That was to take something that had proven itself on the market and to the user base. That is the Second Life client. What Darren did was that he combined that with another immensly popular and available technology. And that is .NET (dotnet). Basing this off .NET made it reasonably available to a community of programmers.
Tish: Second Life is the treasure chest of assets at the moment and also great content developers do not want to have to develop different content with different tools for tons of different VWs. What’s your stance on encouraging good content developers in Tribal Net? Are you aiming to be potentially interoperable with Second Life? Are you part of the Linden Lab Architectural Working Group initiative? Or are you going to try and go it alone?
Darren: First of all I need you to clarify the question. Do you mean like some people want to have OpenSim regions that are part of the Second Life grid like IBM, is that what you mean?
Tish: Oh I’m almost assuming from what you have said so far that you’re not going to do that. But are you going to aim for some level of interoperability?
Darren: I’m part of a working group that’s trying to get a common client protocol. We’ve got a sister project called Open Viewer. It’s started a few weeks ago but we’re attempting to incorporate elements of many clients like Croquet in an effort to achieve some degree of universality. Peter Fin from I.B.M. do you know him? He arranged it. We have a common protocol that you might not be able to do every feature in well. But you can at least connect, see the world and move around. We are also part of the Architectural Working Group but the focus is on Second Life there.
Stefan: If you look at what the architecture group has come up with so far, it’s Linden Lab’s protocol version 2 or not even that, it’s Second Life 1.5 – a big wish list basically. What we have, I guess, you could say that we have the small company rogue – a bit decentralized slash anarchistic – approach. We have a saying in OpenSim, I don’t know if you have seen it. I think actually I coined it but it’s “let a thousand worlds bloom.”
What we mean is that it’s too early to start drafting universal protocols. So what we’re doing with OpenSim is, and we’ve been very clear about this often repeating it over and over and over again, not to try to build a free and open source Second Life. We’re trying to build a platform, (we are not trying to make THE protocol) so that people who want to make protocols, should be able to do that with less effort. So when we’ve had our taste of applications, social applications, business applications, marketing applications, everything, then somewhere in there we can see probably something like http.
In Tribal net we have our own backend protocols. We have changed large chunks of the communication stack at the backend, the regions you install on your pc – some parts we have changed because this application needs other data and other processes. So I think we have implemented four different stacks. So we talk from experience.
Tish: Will you be publishing all your protocols?
Stefan: It is way too early to go into that. Right now we do not know what will bring everything forward. This is just one application now.
Darren: At the moment our backend is basically customized for this one application. Each new application is going to need slightly different customization. There is not a general solution at the moment.
Tish: So if it is all in the application, what are the killer apps?!
Stefan: Well we have done integration with web communities and 3D integration, that in combination with marketing applications, for example, being able to go on to say a Toyota site and click on a link and be on a Toyota showroom, not necessarily in the browser like everybody is visualizing because we have seen problems with that. We need something a bit more intelligent. The interplay between 2D and 3D is very intricate.
Tish: Everyone asks me about when they will be able to use OpenSim to create content they can upload into Second Life?
Darren: The big problem with that is SL terms and conditions, you aren’t actually allowed to export your creations out of SL. Now while it would be possible to import creations from OpenSim into SL, really until Linden Labs allows creations to be exported, there isn’t really the reason for people to work too much on adding those features to opensim. As only Linden labs really gains, as its one way traffic
Tish: Is there anything else notable about Tribal Net that hasn’t come up yet?
Darren: From a engineering side, I think the main point is at the moment we are working on making it easier for people to start up and host their own region. TribalNet is our first demo of that process. Then we hope to make it easier for people to host their own small grids with this easy hosting of regions, so say any school or college could have their own small grid without the admin lvel that is needed currently for opensim. A important part of our concept is having a GUI for the regions, so that we can later provide addon modules for these GUI’s so for instant maybe we would provide a game construction toolset addon, or a presentation addon , that made it easier to host and control presentations. Some of these then at a later time could move into the viewer. Then at a higher level we have our set of extenstion api’s which I think its a bit too early to go into detail of.
Tish: My big question is still without a virtual economy what do you see driving rich content production?
Stefan Andersson: Yeah; we’re all about content, actually; Tribal Net is about creating a content producer platform. A complete ‘ladder’ from consumer, over enthusiast, semi-pro and pro. Yeah; basically, we offer empowerment. It’s like ‘your world’ but for real.
I guess you know that content production and systems integration in a third-party hosted environment is a drag.
How many complex games and functions have you seen in SL? Stuff that would be a small thing to code if you had proper tools, becomes a nightmare.
But to me also it seems your definition of ‘content’ is close to the Linden notion of ‘content.’ The Lindens created an economy based on artificial scarcity you pay to stop somebody from sharing something but ‘content’ also often play a role in the execution of a service.
Just an example : you have a medieval battle sim with castles with all kind of nifty storytelling bound to them the busines model is subscription, perhaps; combined with added value like buying weapons well, the actual assets are for free – the service owner couldn’t care less if you walk away with the sword into another world because it only functions in a context, the context of the battle system.
So, yeah, you could have a static snapshot of a weapon or you could have the customizable weapon that actually functions in a system now, the former will be very hard to charge enough for to make up for the production cost but the latter you definitively could. charge enough for to make up for the production cost.
Tish: You have a very innovative idea for a distributed grid. Will people have problems with their firewalls though?
Stefan: That’s the big hurdle we’ve done everything we can to make everything else easy but the server still needs to be accessible from the net.
Now, next week we’re launching the next version, which has a built-in sandbox too so you can terraform and build without being public
I don’t know if you saw that in the gui, but we’re adding ‘load/save’ to it so that you can easily export terrain and objects.
Well the private mode is sharing content db with the public mode. so, basically, you just go public or, you save it to your hard disk and upload it onto a hosted region.
At the moment, it’s just “save all object definitions” and “load all object definitions” but even that’s enough to export objects, tweak them, re-import them that’s how the superprim was done and the chessboard pieces. The chessboard coder has access to objects and object definitions on a whole other level that the SL coder, for example notepad, basically. It’s like, text editing html pages all over again.
Tish: hmmm a very interesting concept…..
Stefan: well, it becomes even more interesting when you have a program creating those definitions.
Tish: Are you planning on Linux support?
Stefan: We’re planning on linux support. It’s just that these versions, that are very end-user oriented, windows is the main demography. Our commercial Tribal Server runs linux just fine. And, as I said, we’re planning for even the end-user versions to run on linux.
At this point in the interview, Stefan encouraged me to try Tribal Net myself! I was at first resistant. After all I already have an OpenSim up. But it was truly a revelation to so quickly get set up and find myself with a region (a full on free form 3D programmable space on a PC!!!) – a virtual world of my own that let me interact with my neighbors and yes, for me, Tribal Net was “an easy-to-install, easy-to-configure express version of the full Tribal Server” as the Tribal Net website proclaims!
Beta Phase
Currently, Tribal Net is in ‘Beta’ phase. They write:
This means we have made the software available to the public in order to get feedback and hunt down bugs. If you want to try the Beta out, or simply want to be notified when the 1.0 version is released, you can ‘register’ here.
See you soon in Tribal Net!!
May 15th, 2008 at 9:19 pm
Woot! I installed it and after half an hour manually configuring my hub was waay. Worked a treat and took me just seconds to terraform a personal mess – something I have never even attempted in Eselle. My island was next to yours, but now I’ve read the full interview guess that will not always be the case if lots of people go online. Still, it’s a very effective solution for something so early in it’s cycle.
The drawback was having nothing but basic prims to play with and no working friends function i could see. The dysfuctional parts of the linden viewer made using that client awkward – Tribal really need a user interface of their own stripped down to existing functions and with plug-ins for new ones as they become available.
Good start though.
May 15th, 2008 at 9:22 pm
I’m not sure why Darren suggests that you aren’t allowed to copy your data out of Second Life. In looking over the TOS, it does appear that LL owns the account and the data, but you still retain copyright of any content you create. I’m not a lawyer, but it would seem to me that the characteristics to anything you make in SL would be what was copyrighted.
This means if you were able to export that data (say through libSL) then it would merely be storing your copyrighted content in another form (say as a backup) as long as you owned the copyright to that material.
With your data stored off of LL’s servers, you would then be free to import it into opensim or vice-versa at will.
May 20th, 2008 at 2:37 am
If it is so wonderful and open, why is it called “Tribal”? Tribal suggests conformism, groupism, keeping people in line for the good of the group, etc. Sounds like the machine whereby all the openness of opensource is clawed back.
I’m also puzzled by the celebration of non-persistence. The heart of SL has been that you can come to a place and see it and interact with it even if the owner isn’t there. That enables people in different time zones and with different schedules to collaborate or interact more casually. To have the whole thing shut down just because your are offline seems limiting — if the whole point of decentralizing the virtual world grid is putting the burden of computation on people’s individual computers, why would it be necessary to blank out the view and access centrally for something hosted on your own computer?
May 30th, 2008 at 2:38 am
I’ve started reading the “Metaverse Roadmap” (from metaverseroadmap.org), about the 3D web. When I put that together with the above description of a decentralized grid, and your posts about the RealXtend viewer, I start to have an idea where the 3D web could be going.
First, I should say that while the possibility of people running sims off of their own computers is interesting, websites are generally run off of remote servers on web hosting services, so my vision of the 3D web is based on that classic model. The root idea is that the standard protocol for 3D worlds needs to stay SIMPLE. When Berners-Lee developed the original web protocol in the early 1990s, other developers were working on much more complicated systems, and criticized the web’s lack of advanced functions. But it was precisely this simplicity that made it universal. Likewise, the 3D web needs to be based on a simple standard protocol, with any more advanced functions provided by plug-ins.
Thus the individual 3D website will be a virtual world using the standard protocol. Your avatar will be embedded in your browser, and will be automatically generated when you enter any new world. Teleporting from one world to another will use an address that takes the form of /world/sim/coordinates, and IM from one world to another will use an address of the form /world/avatar (or maybe just /unique_avatar, without being world-specific). Each world will have its own map, but it is useless to try to put the different worlds on a map, just as there is no “map” of websites: you just click from one website to the next without worrying where each is “situated” in cyberspace. More advanced functions in particular worlds could be provided by plug-ins to the 3D browser – on the condition that the basic simple protocol is still respected.
Am I the first to have said this, hehe, or at least some of it?