Half a decade ago…

… I was sitting in front of my faithful old Apple PowerBook G4 laptop, on an island in the middle of the Atlantic, looking for a game that my roomie Moon Adamant wouldn’t find boring (she’s the gamer girl; I just enjoy watching her playing!) to play together. Since I had a Mac (while she has a PC), the task was a challenge: after SimCity, The Sims, and the amazing open source, public domain VegaStrike, what else was there for us to enjoy together in our free time?

I decided to fire up Google and type a simple query: “3d game for mac and pc”

The rest, as they say, is history.

Back then in the summer of 2004, the first hit that Google found was from one of Apple’s sites. This was a pretty much an announcement from a totally unknown company that was launching it’s 1.4 version of their software. It featured “custom character animations”, video streaming, and the intriguing “Live Connections to the Real World” using XML-RPC. Whatever they meant by that I had no idea, but I supposed I could give it a try — from the images, it was 3D, it looked like some sort of The Sims on steroids, and it was multiplayer. Cool.

I couldn’t find the original announcement on Apple’s site any more. But it pretty much quoted Linden Lab’s official press release from June 15, 2004:

Linden-Lab-Press-Room-1Linden-Lab-Press-Room-2

Since that date happens to be my real life birthday, I found it very amusing 🙂 and decided to follow the link to Apple’s downloads site (gaming section). While I couldn’t retrieve an image from what it looked like in July 2004, I can show you how it looked (and what it had to say about Second Life back then) a few months afterwards:

Second-Life-Games-RPG-and-Strategy

That was, to say the least, intriguing, but I liked the “Join for free” tag! In those days, Second Life would have a trial phase of a week, and after that you’d be charged US$9.95/monthly. Well, a trial never hurt anyone, so I decided to download the SL client (which was ten times smaller than today!) and give it a try.

As I’ve said very often, I have a relatively low “gaming patience threshold”. There are few, if any, games that truly excite me to spend more than 15 minutes on them. Really, there are very few exceptions. On the other hand, if I find a game thatI enjoy, I’ll be playing it for decades (until it’s so old that it won’t run on my computer any more!), like Sid Meyer’s Alpha Centauri. As a matter of fact, only a few weeks before that, I had mail ordered the last existing copy of SMAC for the Mac from Aspyr. And guess what…? Someone stole it at the mail office!! (after a very depressing email to them, they apologised that they couldn’t do anything, since that was the last copy, so they sent me SimCity 4 instead — great service, btw! The box for SimCity 4 was left shrink-wrapped for… four years!). So I tried to compile Advanced Strategic Command for the Mac and utterly failed; apparently it had never been done before (although now someone nice has provided ASC fans with downloadable binaries).

So, well, with this “new game” I wasn’t expecting much; I just wanted to see if would run at all on the Mac, after so many bad experiences in quick succession. And, oh yes, it did run…

Although I had never played any MMORPG, I always loved The Sims, so I guess this would be familiar enough. When landing on the way old Orientation Island, a dozen or so other users were around, happily changing their avatars, so I guessed that this would be a great place to start — I loved to do that on The Sims too. Guess my surprise at the 200 sliders to change, well, everything! Nothing I had ever seen was so detailed before, and I started to amuse myself pulling at the sliders. I guess that like many newbies I attempted to get my avatar to look as a version of my real self. Like also many newbies, I utterly failed (and much later I realised that it was not a question of skill but of talent, and I have none). But the end result was amusing enough and I let it stay like that; Moon Adamant, who’s an insanely talented person, could always change it later 🙂 After all, I was just beta-testing this strange “Second Life” for her (she’s also both a SMAC and The Sims fan), and she’s the creative mind and the brains of our team 🙂

I couldn’t believe my eyes when I suddenly noticed that one hour and a half had passed while I was tweaking my avatar!

Here’s a preview of how I looked like. The actual picture is from 5 days later, but I didn’t change my avatar at all since then:

Gwyneth-Llewelyn-2004-08-04

Oh yes, I know how ugly I looked back then 🙂 But… here’s the big surprise… I never changed my avatar’s shape since then! I’m pretty sure I look quite different today, but it’s just… skin, clothes, prim hair, and, most important of all, Second Life’s way improved rendering!

Well, at that point I knew that Second Life had to be special. Very, very few “games” attract my attention for that long, and definitely one hour and a half capturing my attention was… mind-boggling.

Staying in-world for a whole 20 hours… was even more so. And four hours of sleep later, I was in-world again… for another session of 16 hours! There was much to see; so much to explore; even more to learn!

The trial week was not even over, and I had already paid for the subscription for a year 🙂 And then, after a while, I thought I should start a blog (there were so very few besides New World Notes back then) to help new users to learn about Second Life. Although I had had “webpages” for over a decade back then, I was not really a regular blogger.

I’ve lost a few of my earlier posts, but I guess it’s not surprising that the ugliness of “Linden clothes” quickly made me to download the Photoshop templates and start doing my own clothes and give them away as freebies 🙂 Dress code in Second Life in 2004 was of two styles: slutty or goth. There were no more choices, unless you did them by yourself…

Two weeks after being in Second Life, I still had no clue on how to turn the camera using the Alt key, and I navigated using the small HUD with the arrows. I was a bit perplexed at how others managed so easily to link prims together, and my attempts at building were an utter disgrace. Well, scripting should be more approachable; so I created a complex device to sell packs of cigarettes, which in turn would hand out individual cigarettes. Since I had no money to create a shop for selling them, my devilish plan was to install my cigarette vending machine on shops and clubs, sell each pack for L$3, give the shop/club owner L$1, and keep L$2 for myself. Since the cigarettes auto-deleted after 6 minutes of fun, I was sure I was going to become filthy rich in a few months 🙂 (such naiveness… but I still sell the cigarettes on the handful locations where I managed to place a cigarette vendor. The scripts have been revamped over the years, as well as the animations, but the whole principle is the same)

At that time, it became clear that shop/club owners would require proof that I was really selling enough cigarettes and giving them their due share; this meant to explore how XML-RPC worked so that I could somehow keep logs of the sales. After I finally figured it out, I wrote a very short tutorial to explain how you cold use XML-RPC to do nifty things like placing an online indicator on your own blog. (These days, Linden Lab recommends using their newest feature, HTTP-in, since XML-RPC support has been deemed to be obsolete and might be dropped in the future; my own original online status indicator has been flawlessly operating on my blog for almost five years now, but I will probably need to finally change it!)

Ironically, at that time, I also had my first permissions problem. When giving the user a pack of cigarettes, the pack would have the right permissions — but the cigarettes inside would not. Frustrated, I tried all possibilities to fix them, but was unable to do so. So I thought, well, if the vendor has no permissions problems, only the pack, why don’t I turn the pack into a vendor itself?

The idea would be that the pack would contact a “central vendor system” which would send the user a cigarette directly, with no permission problems, instead of giving them the one inside the inventory. In a sense, it would be even cooler, since it would allow me to change the animations on the cigarette, and not need to provide all customers with an updated pack.

Since you can’t easily contact remote objects outside the same region (and it was impossible in SL in 2004!), plan B was quite complex: the cigarette would send a message to an external web server, which in turn would send a XML-RPC message to the “central vendor” with the cigarette owner’s name as a parameter — so the “central vendor” would know where to deliver it. If that were fast enough, people wouldn’t even tell the difference from getting a cigarette from your own pack, or from a “central vendor”.

But as you can probably imagine, this is pretty much a full-blown website-based vendor system! I quickly added a few more things: multi-item vendors were already around in SL, but I tied my own to a website. That way, I could have just a single “central vendor” in-world, drop all my content there (at the time, little less than the cigarettes; clothes; and a very primitive, but very low-lag, form of Animation Overrider), a few textures, place the price list on a notecard, and get it all updated on the webserver. People would pay the vendor, it would flag the webserver that there is a new payment for a specific item, and the webserver would tell the “central vendor” to deliver the item to the customer. Everything was logged on the webserver too; and, of course, my next step was to let deliveries happen directly from the web page.

Does this sound familiar to you? Oh yes. Apotheus Silverman launched something similar in October 2004 inside his “SL Exchange” portal (now known as XstreetSL and acquired by Linden Lab), which at the time was mostly an alternative to buy and sell L$ and engage in land auctions as a competing product to the Gaming Open Market (GOM), which pretty much did what the LindeX does today. Integrating a web-based vending system was Apotheus’ novelty.

Well, Apotheus Silverman was even then a programming guru in SL and I had no way to compete with him, specially because he had an unlimited amount of the most precious resource in the universe: time  🙂 so, alas, I never announced my own system — which had the bonus, like the defunct Gigas system from SecondServer and the Linden-acquired-and-discarded OnRez Shop, that it worked integrated with in-world vendors too. Nevertheless, my system still works — I use it for my own vendors, of course 🙂

Also in August, the newest fad were Animation Overriders. Linden Lab had introduced user-created animations in SL on the day of my 35th RL birthday, and Archanox Underthorn, a very creative programmer, and a giant among scripters at that time, found a trick to override animations. No more “duck walk”! His script sold for L$350 and was selling like hot pancakes. Specially because apparently nobody found out what trick he used!

Drama followed on the forums, as other scripters despaired of finding Archanox’s trick and tried to copy his idea. It was the first time I learned about Ulrika Zugzwang, who was outraged that such an useful trick was not released to the public, and she claimed to know how it was done — but decided not to “undercut” Archanox and kept the secret for herself.

I remember that I was even more outraged back then. There was really no “trick”; doing simple animation overriders was immensely easy. So writing as politely as I could, I’ve posted a simple solution, which worked quite well in 2004 (I have no clue if it still works these days). Francis Chung, legendary scripter, contacted me few days after an exchange of posts on the forums, as she was developing a free and open source version of Archanox’s script — the now even more legendary Franimation Overrider. She had been stuck at a crucial point, but after seeing my post, she found a solution — and invited me to help her to write the instruction manual and give technical support to it, since that was Archanox’s best service: his technical support was well worth the cost of L$350, since he gave classes and personal explanations on how to configure it.

The rest is history. The Franimation Overrider, or one of its many derivatives (the ZHAO being the most popular one) is estimated to be at the core of over a 100,000 different AOs all over the grid, and probably way over 20 million AOs were sold. Archanon’s own is a footnote in history. Francis never got a single L$1 from her script and is still shocked at the huge success of her script, which is probably the most used script in Second Life. I still regularly get a few requests every week from people with questions about the Franimation Overrider — since the notecard listing me as one of the support team is still inside every AO in the grid 🙂

Notice that current AOs are very laggy, because they need to check which animation the avatar is currently using, and this check is done… 10 times per second! (By contrast, on OpenSim, just to show how advanced this platform is these days, we have an ANIMATION_CHANGED flag which will simply tell the AO when the avatar changed animations. No more lag due to AOs! Now if only we could persuade LL to do the same in SL… and convince 16 million registered users to change their AO scripts, of course! ). I have no clue if my naive method of achieving the same effect without polling still works at all (probably not, and definitely not inside a HUD).

But can you imagine a Second Life without AOs? I can’t!

August was still not over for me. After Haney Linden posted an announcement that Linden Lab was going to encourage the use of the “new” snow sims, Ulrika Zugzwang, who had seen my posts during the Animation Overrider discussions, suggested that I joined a group that was going to attempt to submit a proposal to Haney Linden’s challenge to get a snow sim to launch a novel idea in Second Life: self-governance. The Neualtenburg Project was born, and although sadly a lot of its early history, which only existed on the official Linden lab forums, was deleted, a few posts still survive. Much of the end of August and most of September was spent in developing the proposal; it was finally accepted, and an official “launch” event was set to be the Oktoberfest ’04, organised by the sadly departed Kendra Bancroft. After that, Ulrika set up the first provisory government; elections were set for January 2005. It was definitely one of the most drama-ridden projects in late 2004/early 2005, and the drama went on for several years. The “project” still goes on. It is now the Confederation of Democratic Simulators and has recently merged with a similarly self-governed, democratic community, Al Andalus; despite all drama, and the several predictions of its end (almost as often as, well, the end of Second Life itself), it’s still around, it’s still democratic, it’s still growing slowly, and it has outlived all its founders except one, and continues to be different in its persistence that self-government is the best form to manage a very long-term community project in Second Life: it’s now probably one of the oldest, uninterrupted projects in SL, besides things like Luskwood or Nexus Prime.

Soooo after such an intense first month in SL, how could I ever leave it? 🙂

Granted, I do miss the old days — the days when I had little else to do but have a low-paying job that managed to afford me to pay my bills and leave hours and hours for SL 🙂 Things were, if anything, hectic — so much to do, so many people to meet, so many ideas to explore, so many places to visit, so much to talk about…

Wait… that’s pretty much what I do today! 🙂

The third things I’ve learned from that first month were some of the most important personal lessons I got: first, that to succeed in SL, you have to invest a lot of time. And when I mean a lot, I really mean a lot! SL’s most successful, creative, talented, and innovative residents are people with a full commitment to it, and no time left to do anything else. It’s pointless to compete with them unless you wish to engage in a similar level of commitment — and few will.

The second thing is that if you commit to something, have in mind what it will look like in 5 or 10 years from now. Too many projects, ideas, or business proposals are started and dropped after a few months, due to lack of commitment (not necessarily laziness, just people moving on to the Next Best Thing). Alas, SL, even more than RL, shows that it’s the long-term commitment that will make things work. There are few examples; they stand out. If you’re not prepared to commit to something for 5 years, don’t even bother to try — it’ll be a waste of your time (and possibly, in some cases, your money). In that case, just enjoy SL for the sake of SL! There is no harm in getting entertained 🙂

And the third, of course, is that Second Life, just like the real world (or possibly even more so!), is all about people — connecting with them, meeting them, chatting with them, discussing and exchanging ideas. SL, more than any other tool, is the ultimate idea marketplace — where the exchange of concepts and ideas is at the forefront of its shaping. At some point in time, SL was “sold” as the ultimate computer game design platform. That was a bad idea, since almost all people in SL don’t design computer games for a living (or even for fun!). Then it was announced as a place where you could “be creative” — appealing to our creative and talented aspects, and SL as a tool to allow you to apply that newly-found creativity into building things (or programming them; or selling clothes). Again, once more, this approach only has limited appeal — while everybody enjoys user-generated content, only a few enjoy creating content: most will not have time, talent, or creativity for that. And they’re the vast majority — possibly over 90% of all active users. Interestingly, a lot of new wannabe competitors are making the same error, announcing their products for “the creative virtual world builders”. Tough luck, guys, most of us are not creative nor builders…

So, well, Second Life is for the third group: people who connect with people. And except for some hermit types — which are really extreme cases and exceptions — almost all of us are in SL to connect. If LL can take a lesson from the past 5 years is that someone like me, without any talent, little creativity, and zero or no skills in building/modelling, can still enjoy SL, since it puts people in touch so well, and allows them to do things together. It’s irrelevant if you just have a sweetheart or belong and actively participate in 25 groups with thousands of users: connecting to your beloved one or to an audience of thousands is the very stuff that Second Life is made of.

In my five years in Second Life, things have definitely changed, and almost always for the best, although I also miss some things from the past: from friends that I will never see again, from places that are long gone, but also from the way things used to be and have totally changed. Nevertheless, everything changes, and, again, SL even more so: it’s the fun I have as I see the whole world changing, sometimes very quickly, that makes me eager to enter my second half-decade in SL 🙂

Oh, and my PowerBook G4 has still not broken down (although I use it seldom now) and with Snowglobe it gets a whopping 15-20 FPS, pretty much consistently all over the world, with reasonable low settings. Gosh! I had 3-6 FPS when I first logged in to SL, five years ago!