.comment-link {margin-left:.6em;}
Moriash Moreau: My Second Life
Tuesday, January 11, 2005
 
SkyPod
After a few days of negotiation and shopping around, a RL friend and I have purchased some land in Second Life. (The software is free, and they have a free 7-day trial. You ought to give it a try. Tell them Moriash Moreau sent you, and I'll split my referral bonus with you if you decide to stay.) Or, more precisely, after a few days of me buzzing around and acting neurotic about losing choice virtual land, I bludgeoned said RL friend into forming a group (Pinkerton-Moreau Industries) and getting adjacent plots of newbie land (from the First Land project, which offers low-priced land to first time buyers). We now have 1024 square meters on the relatively new Louise sim, a stone's throw from the edge of the world. (It's not the tourist attraction one might imagine.)

Unfortunately, in order to form a group, you must have a minimum of three members. I didn't find this out until after we'd bought the land. So, in the great American middle class tradition, I threw money at the problem until it went away. In this case, I ended up purchasing a new Basic account. (There are two account types: Basic and Premium. Basic is a one time $9.95 fee for lifetime access. Premium starts at $9.95 a month. Premium members get to own their own land, and get a much larger weekly in-game cash allowance. Basic members are poor, landless serfs... Unless they join a group with group-owned land.) So, with this dummy account, we now have the necessary silent partner. And with the referral bonuses, I'd break even, were I to sell them on the open market. (It's interesting to have a sanctioned money trade system, as opposed to the ban-worthy black market I had to use for Everquest. But that's a post for another time, should I ever actually make in-game money selling in-game artifacts.) I won't sell the game money back, mind you, but it's good to feel like I didn't just waste real money to clean up my own mistakes. At least I'm starting out with a tidy little nestegg as a bonus.

While I'm on the subject, I'd like to take a moment to formally apologize to the unnamed RL friend (aka Howel Pinkerton) for all the confusion, and thank him for his patience. Howel, I think I still owe you $488L of your share of the referral bonus.

Anyway, for the past three or four days, I've been building my first major virtual project. It's a little flying home-away-from-home, suspended some 80 meters above the ground. The smog is an unfortunate visual mix of the incipient sunset and the fog effect applied as the distance nears your render maximum, where the game stops showing rendered objects. The simulation engine can't handle showing you every object between you and infinity without grinding to a halt. The fog is a reasonable compromise.



Here's the SkyPod, in all its glory. Actually, I'm looking for a better name. I'm considering "SkyPad" instead, but that sounds too '70s. (Which may fit the decor, actually.) Anyone have any better ideas? It needs to be short, under 8 or 9 letters, so that I can use it in selection menus and such without it being truncated.

As you can see, the pod is held aloft by four huge (10 meters, tip-to-tip) propellers. This is not strictly necessary, mind you. Second Life is quite happy to let you build castles in the air. (In fact, a neighbor is currently building an glittering soap bubble construction just to my north. That, and the upcoming Aztec pyramid to the northwest, will improve my view immensely. Fortunately, people on Louise and neighboring Abitibi seem to have restrained tastes. No strip clubs or shopping malls right next door... Yet. SL needs zoning laws!) But the physical justification is a nod to my concrete worldview in a fantasy world. The propellers are designed to (theoretically) prevent spin (by counter-rotating two of them) and precession (by spinning them slower, and thus reducing their angular momentum, as they get further away from the center of mass). Fortunately, I don't have to make the exacting calculations required to control the prop speeds while accounting for lift, reaction moments, and precessional counterforces. I can just fake it. If nothing else, it's kind of an interesting visual effect.

The first floor is unfurnished at the moment, as I'm still working out the kinks for some of the basic systems. I'd like to make it an observation deck of some sort, perhaps with several telescopes (or maybe remote cameras, or crystal balls) pointed at different interesting local landmarks (using the scripted camera controls, provided I can trick them into giving me any magnification). At least one will focus on the Pinkerton-Moreau garden below, and maybe one more will be programmed to show various landmarks on demand. If this works, I'll have to make a set of surveying tools to scout out points of interest and collect distance and direction vectors back to the telescope. Perhaps a longterm project for another time.

The silver hatch in the middle of the first floor leads to an escape tunnel out the bottom of the pod. You wouldn't believe how long it took me to interlock the two hatch doors (bottom and top) to open simultaneously, rig the necessary kludges to work around undocumented quirks, and dredge up enough trig to get the rotations right. Hopefully, this kind of thing will come faster and easier when I'm no longer just a script kiddy. It better... I need my sleep!



Most of the interior decor work has gone into the second level. I'm kind of proud of how it turned out. The giant semi-circular couch is upholstered in full-grain virtual leather (it looks kind of washed out in the picture). The light fixture is a suspended halo, to match Moriash's trademark headgear (at least until I get tired of it), which turns on and off with a simple touch (one of my first successful scripts). This shines down on an opening to the floor below, which is surrounded by appropriately contemporary steel and cable handrail. I lucked into finding an intricate wood inlay texture for the dome at the top. The green glass at back was another lucky texture find, although this one took considerable stretching and distorting to get it right. The red velvet curtains open and close for privacy on demand (another early script). Eventually, I will have a free-standing fireplace, tucked between the ends of the couches (which will be shortened a bit) opposite the decorative glasswork.

My current project is the in-house teleportation system. Each of the steel discs with the translucent black monoliths is a teleport pad. Just click on the green button, and it will teleport you up to the next floor, or to the roof. (Teleporting down again is tonight's project.) There's another T-port pad at ground level, in what will eventually be Howel's garden.

Local teleportation is kind of an interesting hack. There are various methods of in-game long distance teleportation, including the use of public pads, preset "home" points, and site-to-site teleport invitations invoked by friends (requiring said friend to be at the destination point already). But, with the partial exception of the teleport home and land eject commands, there's no script code to teleport a player from arbitrary point A to arbitrary point B.

(The llTeleportAgentHome and llEjectFromLand commands are primarily there to deal with rowdies and griefers. Be an assjack, and the owner can use various bouncer scripts to either send you to your home point, or kick you to the nearest point outside of his land. Then he'll probably add you to a temporary or permanent ban list to keep you from returning.)

However, there is an interesting application of the llSitTarget command. This command was designed to allow furniture designers to exert fine control of where and how a user sits on his sofa and loveseats. With it, you can tell the avatar to sit in a certain place when he selects "sit here," instead of the sometimes awkward placements generated by the default sit code. (Often this is combined with custom animations, using 3D character design software like Poser. These can be used to make the avatar lean back on the cushions, or lie down, or throw an arm across the back, or whatever. There are even animations for couples only, to make two avatars cuddle side by side in a hammock, for example, or do considerably more explicit things in specially designed beds. Disturbingly, untold manhours have been spent by dozens of designers to perfect the latter.) This is handy for custom designed furniture, as well as for car seats and other vehicles where the specific placement of the driver matters.

Now, this is all well and good, but what does it have to do with teleportation? Well, someone discovered- probably by accident- that you can set your llSitTarget vector to be nowhere near the furniture in question. In fact, you can set it such that, when the user chooses "sit here," he will end up sitting up to 300 meters away! (As an aside, there's no command to force an avatar to sit. He must choose to do so himself. So no sneaking up and llSitTarget teleporting someone to your own personal den of iniquity... They have to enter it willingly.) This, combined with the llUnSit command (which makes an avatar seated at a given location stand up- useful for keeping would-be car thieves from stealing your virtual Ferrari) equals teleportation. Pretty sneaky! In my case, the teleporter on the ground tells the user to sit down some 80 meters in the air, in a spot that corresponds to the teleport pad on the first level. The remaining teleporters bounce the avatar up or down as required, effectively acting like an elevator.

At one point, I had a full teleport booth assembly, which completely enclosed the user when activated. However, in a virtual reproduction of all too many sci-fi scenes, the hacked together code kept materializing the subject halfway through the wall or ceiling of the booth. Fortunately, this isn't fatal. But it can be a massive inconvenience. Thus, for safety's sake, I've had to switch to open pads.

So, anyway, that's what I've been doing for the past few days, anyway. Sad, isn't it?
Comments:
Hey.
Im interested. Can you build anything there?
I mean can I upload a 3dmax model of a house and use it there for example?
 
No, you can't directly import models from 3-D modeling software. (Not yet, anyway. I hear AutoDesk is working on a CAD plugin, but that's likely years away.) But you can build houses, or just about anything else, using Second Life's built in build tool.
 
Post a Comment



Return to Main Page