Latest Entries »

Advertisements

Well, my in-world Project Demonstration hasn’t happened yet, but I’ve elected to write up the final blog-post anyway.

If we are to use ‘learning’ as our metric of choice, then I would assert that my project has been a quantifiable success.

I’ve learned a lot.

At the start of the Semester I was but a n00b in the land of Second Life, and could barely walk, talk, or dress myself in one solitary outfit (I tended to inadvertently wear half a dozen or so at the same time – very noobish)..  and I certainly didn’t see myself as being capable of building an actual ‘thing’ in-world that wasn’t, in fact, crap.

I’m now in the position of having some basic building and scripting skills under my belt, with enough of a handle on it all that I can actually see myself as capable of building my own little white-picket-fence house on the prairie replete with pretty lights, shiny gadgets, the occasional oversized endothermic chameleonic lizard, two or three well-hidden rocket turrets, and an underground parking garage that can fit four or five family-sized laser-wielding bomb-dropping gunships from the Nth Dimension… oh, and a pony.

Ponies make excellent targets.. fast, yet squishy!

There have been a few ‘barriers’ this semester, in the context of study and MUV601:

  • Crappy home internet, and lack of reliable access to NMIT computer suites (especially on weekends): The internet at my hostel is generally terrible and continues to have a tendency to drop out entirely later in the working week, and most especially during weekends. If you ever have the misfortune of having your internet provided by Internet Kiosk Services, then you have my sincerest commiserations; I lost count of the number of times that I could not get online at all to do work in-world, or blog about stuff, or check emails. A significant stressor.
  • Work commitments outside school: While I am very grateful to have a job that allows me to eat, pay rent, and generally contribute usefully to society, the whole working thing does tend to make study-life tricky; I’m employed as a casual worker who covers sick leave etc, and as a consequence upcoming work shifts tend to be on short notice. An instance of this is that I found out I’d be working the last week of the term (up til the 1st of July) rather late in the piece (72hrs beforehand), putting somewhat of a damper on my cunning plan to spend the final week on-campus finishing up MUV601 work. In a nutshell: money: good, lost time: bad.
  • Health: The year thus far hasn’t been a good one for me health-wise, and studies have been negatively impacted as a result. The illness is nothing new, though it is exacerbated by prolonged physical inactivity and too much time spent in front of a computer. I’m well aware that being in front of a computer all day every day for several weeks at a time is not at all healthy, but at least it is a means to an end.. right..?

Regardless of hurdles, I got there in the end.

The UFO build started off as a bunch of scribbles on the back of a bank envelope; I got the idea for it all while playing a game called Fallout: New Vegas. In the game I encountered some aliens huddled around a campfire, with what appeared to be a broken-down spaceship perched on the cliff above.

After gunning down the aliens and looting their oozing corpses for shiny things, I took a close look at their broken-down ship and thought .. “I wonder if I could  build something like that..?” .. and my Project idea was born..!

Admittedly, the ships that I ended up building look nothing like that little ship perched on the cliff, but the (UFO) idea was key.

After sketching a few ‘UFOs’ and pondering how they could be built in Second Life, I took another peek at the Assignment sheet .. was the focus to be on scripting, or building .. ? I’d had more luck with script-ey stuff in Second Life up til that point so I elected to focus on the scripting side of things; I already had some scripts that could be used as a basis for doing stuff in the actual build itself (e.g. giving inventory items to an Avatar), and this gave me a bit of confidence that I otherwise would not have had.

First up, in terms of getting actual content on the ground: building the ship.

I found that building my little vehicle was damn frustrating until I finally figured out that if I aligned the root prim of the build (the seat of the ship, as it happens) to a point that had ‘simple’ coordinates (e.g. 10, 20, 610), I could easily calculate where other prims needed to be (x,y,z coordinates) in order to line them up correctly on the model. From there, it was just a case of tinkering with basic prim-types and their attendant modifiers (cuts, skews, tapers, spirals etc) until I found something that fit into what I was trying to do with the model.. at which point I’d put that prim aside, noting what parameters I’d used to make it the way it was, and then rezzing another prim to experiment with.

After getting my head around the mechanics of slotting prims together, I found the building portion of the work to be the most enjoyable and, dare I say it, creative, aspect of the project. While the scripting side of things largely used re-purposed code snippets that I had little to no hope of coding from scratch myself, the actual building of the craft itself was, in my opinion, a much more creative process, that I entirely ‘owned’ – and it was more enjoyable, too. I had fun creating my little craft..!

Less fun was scripting the damn thing, mostly because my traditional ways and means of debugging code weren’t available to me in Second Life .. I sorely missed the debugging functionality of Visual Studio, with all its shiny tools such as watches, the ability to ‘step through’ code one line at a time, etc .. I missed those tools. A Lot. Another significant issue I had with scripting lay in attempting to understand what certain LSL elements actually DID (especially physics-related ones).. I quickly discovered that some online sources were significantly more useful than others in getting a handle on the various elements of the LSL language.

The one significant bug that I’ve failed to squash is the fact that the craft sometimes drops out of the sky, Roswell-style; with about 150 lines of script to rifle through on the flyable craft, I haven’t yet been able to pin down the cause of the issue, though I do have my suspicions on what is going wrong. With a bit more time, I’ll probably track it down .. but not in time for the final assessment for this project, unfortunately.

Otherwise, the UFO does what it is supposed to – and coupled with the oversized video screen and the original, more complicated UFO model, most of the assignment requirements have been addressed and met to a level that I am reasonably satisfied with.

One exception though is the ‘textured’ version of the model – I’m not overly keen on it. I prefer the UFO models that I made without any textures, and only created a model with texturing included in order to fulfill assignment requirements. There’s some texture offsetting, and one texture that is tiled a bit, and one (on the laser heads) that was a pain in the hindquarters to align properly, but I got there eventually .. kinda. In the mad multiverse that my mind frequently traverses, UFOs don’t wear frickin’ textures, and they like it that way..!

If there was one thing I’d change if I had to do the project again, it’s that I would write my vehicle movement script entirely from scratch myself, without using a (GPL’ed) vehicle movement template that another person had created.. with its attendant (literal) crash bug. Vehicle scripts in Second Life can be pretty complicated, and if my level of understanding (of LSL) had blossomed a bit sooner, I’d have felt more confident in going without a template to work by. In hindsight, I should have gone without the vehicle template script anyway- the time spent squashing bugs in it ended up being considerable, and could have been better spend elsewhere. Regardless, the tinkering I did with the script was quite an enlightening experience, and I managed to add the functionality to it that the assignment required;  an example of this is the module I wrote that allows the craft to drop bombs. The bomb-dropping command (entered via main chat) fulfilled the requirement to rez an object from a parent objects inventory. The bombs that the craft drops have physics activated, and are flagged as temporary so that they delete themselves after a minute or so in-world, as they are inert and do not explode.

Script functionality that I absolutely failed to get working adequately on the UFO itself was transferred to a video screen that I made that shows a youtube ‘Mars Attacks!’ video as well as offering nearby avatars a menu of options that offers notecards, links to my blog, and a landmark. The video screen also has a sensor attached that detects nearby avatars and offers the menu of options to them automatically.

If I could get away with it, I’d do another paper focused on building and scripting within Second Life, as it’s the most fun I’ve had doing school stuff since my time as a First Year student. 🙂  I’m rather hoping that I might be allowed to retain my build rights on-campus (in SL) for a while longer, too..

On that note, I can’t think of anything else that needs to be added to this post .. apart from a few of pictures, of course..!

Status update on ‘What is working’, script-wise ..

The Project Requirements state that at least six of the following must be present in the final build, if Complex Interactivity is the route being taken:

    1. A scanning system that will detect the presence of an avatar then interact with the avatar in some manner Present, is attached to the Video Screen. Was a bit too tricky getting it to work on the Saucer itself without trashing other functionality, notably the activation-deactivation-on-touch stuff.
    2. A prim’s inventory item (Content) passed to an avatar Yes, a Notecard and/or Landmark may be passed to an Avatar by the video screen.
    3. An instance of scripted communication with an avatar via main chat Yes; some examples of comm via main chat: UFO says via main chat when it has been activated and is ready to fly, when is is deactivated, when an unauthorised user is touching the vehicle, and when it has dropped a bomb, for example.
    4. An appropriate particle system Yes, the UFO’s under-hull thrusters (cosmetic only) use a basic particle system.
    5. The presentation of a dialog menu with a minimum of three options displayed There are two menu variations in use: a basic list-type menu on the vehicle itself, and a button-type menu that the large video screen presents when an avatar walks near it.
    6. A link out to a web page – Yes, this is an option on the menu of the large Video Screen; it links out to my Course Blog. Further, the video screen itself runs a youtube clip from the film Mars Attacks onclick.
    7. The sitting of an avatar on a prim with the purpose of either “seating” or “teleporting” the avatar Sort-of works, since the Avatar sits on the root prim to pilot the vehicle. Doesn’t do anything flash with posturing, however.
    8. Prim movement through scripting Yes, if you count the entire vehicle moving .. No, if you are only counting child prims on the vehicle itself.
    9. An object rezzed from the inventory of another object Yes, drops a bomb on a command being entered in main chat. The bomb is dropped nose-down to disguise the fact that the script does not do any flash relative-positioning stuff on dropped ordnance. The bomb itself is flagged as Temp and Physical, so it drops like a real bomb, and vanishes after a lifetime of one minute. It is not scripted to explode in any way.

There is a bug somewhere in the main vehicle script that means that the UFO drops out of the sky, Roswell-style, if the thrust level is changed whilst in flight; I cannae figure out why this is happening, but at least it is amusing when it happens to other people.. (yeah, sorry Delosian, my bad…)

This blog post is brought to you by the letter ‘T’, which is the first letter in the word ‘Thermonuclear’, which describes my temper about an hour ago, courtesy of some building/script-related FUBARs in Second Life.

It all started when I found myself in the curious position of having largely finished my project model – no textures yet, and a couple of script additions to be made, but still, largely finished.

I then plonked my primary vehicle script into the root prim (the seat of the craft), intending to see how the ‘real’ model handled compared with my two-prim test craft.

Cue script error, stage left – “Can’t enable physics for objects with more than 32 primitives”.

What The Firetruck??!

So, after all the hard work I did on the model, SL rewards me with a smug assertion that actually, it will not apply physics to a model comprised of more than 32 prims … wonderful. Arbitrary prim limitations for the win..!!

The alternative then was to save another copy of my current model (incidentally, I found out later that the ‘save’ failed silently – communication issues with the Asset server, perhaps .. at any rate, the backup I thought was there was not, and I watched it fail to save once more (in SL2) before it actually saved successfully. I was not impressed).

I then took my currently rezzed model, delinked the prims, and proceeded to prune ordnance, wings, engine nacelles, cockpit instrumentation, and anything else that was even moderately decorative in order to get the prim count down.

I ended up with a very basic-looking model that had no cockpit instrumentation, no wing stubs, no engine nacelles, and one solitary underslung bomb remaining. The model was now 31 prims.

Upon saving the brutalised budget-buggy and verifying that SL2 actually SAVED IT WHEN TOLD TO, I took it for a spin – and it flew alright, thank the Dark One.

I then decided to use the budget-buggy for demonstrating the scripting and vehicle functionality, while continuing to decorate the original model, adding textures, effects etc. – as I utterly refuse to let an arbitrary prim limitation (re:applying physics) prevent me from doing something useful with my original model, which I spent rather a long time building.

I suspect that the combination of low vehicular prim limits and the action of ban-lines on vehicles in-transit make Second Life difficult for anyone who wishes to use a vehicle in-world as anything other than a plaything.

I wonder if OpenSim worlds have similar issues..?

There has been progress, as follows:

  • A scanning system that will detect the presence of an avatar then interact with the avatar in some manner has been implemented, though at present it only lists who has been detected in the Chat window. This will be built upon if there is time.
  • Scripted communication with an avatar via main chat has been implemented, activated when an avatar clicks on the vehicle. The communication consists of instructions on how to bring up the menu; a security warning is also issued if an avatar other than the owner tries to use the vehicle – this informs both the offending avatar and the owner of the vehicle, of the event.
  • Particles have been implemented for the engine exhaust, at a low enough level that they don’t crash my Viewer (much).
  • The dialog menu has several options, mostly dealing with thrust levels for the engines. These are set via main chat.
  • There is no link out to a webpage yet as the main UFO object is not constructed, however I had an idea that I might implement that via an oversized number-plate on the vehicle..
  • An avatar sits on the ‘One True Prim’ (green) in order to fly the machine .. the rest of the saucer will be built around that prim once I’m happy with the functionality of the scripts .. since I’m focusing on the scripting side of things for the Project..
  • The One True Prim, powered by the unholy magic of my plagiarised well-researched scripts, flies about as it should – so the ‘vehicle’ aspect works as advertised, though without implementing anything particularly special apart from some basic inertia stuff.
  • Errr .. that’s it so far. I hope to get all headings under ‘Complex Interactivity’ covered, as per the assignment sheet.. or at least as ‘covered’ as I can get ’em.

The machine itself hasn’t been built yet; instead I’ve been focusing on building sub-modules (engines, etc) with the intent of slotting them together early next week.

So far, so good.

Workspace area

My primary avatar, along with what will be the Root prim of the machine (the green, flat one - it's to be a seat, you see) .. the 'engine' prim is there also in the background, along with the 'Detector' prim (red) that will become a Radar dish on the machine (it detects nearby avatars and lists them, on-click). The guy on the big wavy sign is one of my Alts, and is in-world as a crash-test-dummy / security-testing guy, as needed.

Project Saucer: Inception

Aaaaaaah, the beginning of the end …. of the semester.

Some stuff done on my little project thus far:

  • I’ve collected a large pile of script examples, and have highlighted about a dozen functions for further study that are directly applicable to my little vehicle project (e.g. avatar seating stuff, vehicle movement stuff);
  • Particle-based engine effects have been completed, and they look pretty – unfortunately they are also pretty good at crashing SL2 on my crappy school laptop, so I now leave particles off in the viewer unless I am working with them directly;
  • Can now focus solely on MUV601 project as I’ve handed in all work for other papers taken this term (Yay x lots);
  • There is a plan! -ish. It’s pretty flexible, as I do not really know if I can achieve all I have set out to achieve with this project .. but there is a plan, nonetheless. Yay for plans.

Next on the list of things to do:

  • Sketches of the prototype;
  • Code outline sketch;
  • Get a basic prim to fly like a vehicle – i.e. script basic vehicle functionality into a simple prim;
  • Stock up on coffee, chocolate, coffee, pizza and coffee.

    *EDIT* Oops, forgot to make this post non-private.   =/
    It was written around June 20th, a couple of days before the first ‘progress report’ post.

Assignment III: The Assigning

Dredged from the dread pit of consciousness, quivering and snarling .. here is my idea for Assignment 3: ” ………………….”.

Isn’t it awesome??!!

Plan ‘B’, however,  is to build and script a 50’s-sci-fi-type UFO, and maybe a landing pad thing if there’s time.

Since I seem to be better at scripting than building, the focus would be more on making the model do stuff and less on making it look pretty.

Still, I like the first idea better ..

There are four basic ‘Permissions’ in Second Life: Copy, Modify, Transfer and Move. These Permissions may be applied to objects as well as scripts, and may be set to affect the Owner, a Group, the Next Owner, or Everyone else, offering a degree of granular control to the User over how their created items may be used and distributed by others within Second Life.

The following are brief summaries of the four basic Permissions:

Copy:

The item may be copied as many times as one likes, with the following provisos:

  • Copies retain the information on who created them;
  • Copies can never have ‘greater’ Permissions than the object that was copied;
  • Objects that contain objects may not be copied if the contained objects have ‘no-copy’ permissions set;
  • Objects that are contained within objects may still be copied if they have ‘Copy’ permissions set, even if the containing object is ‘no-copy’.

An example of how ‘Copy’ perms might be used might be if you created a stone-throwing siege engine in Second Life that used a Master-copy (non-transferable, non-modifiable) ‘stone’ as its ammo base, copying it as needed and throwing the copy of the stone at a castle wall .. with the copy destroying itself after impact, or on a timer.

Modify:

If ‘Modify’ permissions are set, the object may be resized, renamed, or deleted. If an object within an object is set as no-modify, then the containing object may still be modified, renamed, resized, etc – if it has ‘modify’ set.

‘No-Modify’ permissions may be used to set whether an object can be the basis of derivative works, e.g. mods, new textures, etc.

An example of ‘Modify’ perms might be for a suit of armour in Second Life; the new owner of the suit may be allowed to add new textures, change bumpmapping etc on their suit, but still be denied the ability to transfer the suit to another owner.

Transfer:

An owner may Transfer an item to another user. If an item is not Transferable, it may not be given away, sold, or contained within another item that is passed along to a new owner. The ‘owner’ field(s) are updated to reflect the identity of their new owner, as appropriate.

An example of ‘Transfer’ perms might be a car that is for sale in Second Life; it has ‘Transfer’ perms set so that when a new owner pays the set price for it, the car is transferred to their inventory, with its Owner field updated to reflect who its new owner is (note that this will not change the Creator information for the car).

Move:

If ‘move’ is enabled, an object may be .. moved.

If you want to give a new owner the ability to shift around, say,  furniture you’ve made for them within Second Life, then it’s probably a good idea to have the ‘Move’ permission set.

Alrighty then .. if you’re still awake, we’ll take a brief look at:

Copybot.

According to Wikipedia (not really an authoritative resource, but it’s the best you’re going to get today) .. Copybot was originally coded up as a debugging tool for Second Life, with functionality that is useful to people such as AI developers, and in-world builders.

Copybot was allegedly developed as an ‘import/export’ tool for Second Life, designed to take backups of in-world content in an XML format – which is all well and good if you’re the owner of that material, but legally not quite so grand if you’re pilfering content from other people and taking it for yourself, aka ‘larceny’, ‘stealing’.

Copybot certainly has useful, legitimate uses:

  • It can be used to take backups of in-world content and ones own Intellectual Property;
  • It can be used to transfer user-owned content between grids, and from online grids to local ones;
  • It can be used to backup Inventory items (officially excluding scripts from such backups, but allegedly there are ways to include those too).

However, Copybot can be used for nefarious purposes too, and therein lies the problem. Versions of the software exist that can be used to pilfer content that one does not actually own – essentially whatever is in view of the avatar (copybot logs into Second Life as an avatar) may be copied to the Users own machine illegally, irrespective of whatever perms the objects that are being copied actually have, or indeed who actually owns them.

While some Residents have allegedly lobbied Linden Lab to ban Copybot from Second Life, there are still legitimate and legal uses for the software; Linden Lab have asserted that it is the infractions upon IP/Terms of Service that they will not tolerate – however legitimate, legal use of Copybot is tolerated by the Lindens .. for now.

Intellectual Property may be broadly defined as: “..Any product of someone’s intellect that has commercial value, especially copyrighted material, patents, and trademarks.” ~(https://secure.wikimedia.org/wiktionary/en/wiki/intellectual_property).

The Permissions System in Second Life serves to protect the Intellectual Property of users by restricting how items in-world may be copied, transferred, modified, and so on. (See: https://muv601r3dakted.wordpress.com/2011/05/10/perms-system-copybot/).

The broad, arguably over-generalised term that is ‘Intellectual Property’ covers applicable copyright, trademark, and right-of-publicity laws; though all of these laws evolved differently and have fundamental differences from each other, it is becoming increasingly common for them to be lumped together and referred to as a singular amorphous entity – ‘Intellectual Property’.

Richard Stallman asserts that:

“..Another problem is that, at the broad scale implicit in the term “intellectual property”, the specific issues raised by the various laws become nearly invisible. These issues arise from the specifics of each law—precisely what the term “intellectual property” encourages people to ignore. For instance, one issue relating to copyright law is whether music sharing should be allowed; patent law has nothing to do with this. Patent law raises issues such as whether poor countries should be allowed to produce life-saving drugs and sell them cheaply to save lives; copyright law has nothing to do with such matters. ” ~ (Richard Stallman, 2008: http://www.gnu.org/philosophy/not-ipr.xhtml).

Thomas Jefferson, principal author of the American Declaration of Independence, had this to say:

“It would be singular to admit a natural and even an hereditary right to inventors… It would be curious… if an idea, the fugitive fermentation of an individual brain, could, of natural right, be claimed in exclusive and stable property. If nature has made any one thing less susceptible than all others of exclusive property, it is the action of the thinking power called an idea, which an individual may exclusively possess as long as he keeps it to himself; but the moment it is divulged, it forces itself into the possession of every one, and the receiver cannot dispossess himself of it. Its peculiar character, too, is that no one possesses the less, because every other possesses the whole of it. He who receives an idea from me, receives instruction himself without lessening mine; as he who lights his taper at mine, receives light without darkening me. That ideas should freely spread from one to another over the globe, for the moral and mutual instruction of man, and improvement of his condition, seems to have been peculiarly and benevolently designed by nature, when she made them, like fire, expansible over all space, without lessening their density in any point, and like the air in which we breathe, move and have our physical being, incapable of confinement or exclusive appropriation. Inventions then cannot, in nature, be a subject of property. Society may give an exclusive right to the profits arising from them, as an encouragement to men to pursue ideas which may produce utility, but this may or may not be done, according to the will and convenience of the society, without claim or complaint from anybody… The exclusive right to invention [is] given not of natural right, but for the benefit of society.” ~(Thomas Jefferson: http://www.famguardian.org/Subjects/Politics/ThomasJefferson/jeff1550.htm)

Lock it down!

Copyright is a common form of Intellectual Property protection that is granted to the creator of an original work:

“Copyright is a form of intellectual property – which is a generic term for a range of
property rights that provide protection for “creations of the mind”. Copyright does not,
however, exist until a work is recorded, in writing or otherwise. Copyright protects the
recorded expression of a work – it does not protect the ideas or knowledge incorporated
in the work. Among other things, copyright law gives to the creator of a work the
exclusive right to do certain specified things in relation to the work, including to copy
it. But copyright is not only about copying: it includes a number of other rights
relating to a work as well – to perform, play or show the work in public, to broadcast
the work, to communicate the work, or to make an adaptation of the work, for example.
These exclusive rights of the copyright owner are, however, qualified by the provision
of certain legislative exceptions, which permit others to make use of the copyright work
under specified conditions without first getting permission. The Copyright Act 1994,
which is the New Zealand law governing copyright, calls these exceptions ‘permitted
acts’.”   ~(“Copyright Guidelines for Research Students,” http://www.waikato.ac.nz/copyright/CopyrightGuidelinesLCoNZ.pdf).

Copyright laws and regulations are at least partially standardised worldwide, with variations in form and implementation existing from country to country.

Personally, I would consider asserting Copyright when I wished to have full control over my work, for as long as (legally) possible.

Free it up!

An alternative to Copyright is ‘Copyleft’, which provides a way of making a work free, and ensuring that subsequent versions of it are free also:

“..To copyleft a program, we first state that it is copyrighted; then we add distribution terms, which are a legal instrument that gives everyone the rights to use, modify, and redistribute the program’s code, or any program derived from it, but only if the distribution terms are unchanged. Thus, the code and the freedoms become legally inseparable.

Proprietary software developers use copyright to take away the users’ freedom; we use copyright to guarantee their freedom. That’s why we reverse the name, changing ‘copyright’ into ‘copyleft.'” ~(http://www.gnu.org/copyleft/)

An alternative to the alternative of ‘Copyleft’ is to release a work under a Creative Commons license. There are six varieties of Creative Commons license, and they vary in three main areas:

  • Whether or not they allow commercial use;
  • Whether or not derivative works are allowed;
  • Whether or not derivative works must also carry the same license.

Creative Commons licenses are used by all sorts of entities, including Wikipedia. Wikipedia uses the ‘Attribution-ShareAlike’ license, which:

“..lets others remix, tweak, and build upon your work even for commercial purposes, as long as they credit you and license their new creations under the identical terms. This license is often compared to “copyleft” free and open source software licenses. All new works based on yours will carry the same license, so any derivatives will also allow commercial use. This is the license used by Wikipedia, and is recommended for materials that would benefit from incorporating content from Wikipedia and similarly licensed projects.” ~(http://creativecommons.org/licenses)

It is worth noting that a Copyleft or Creative Commons license has the same ‘lifetime’ as a normal Copyright license, since Copyleft and Creative Commons licenses are both built upon Copyright law.

How does this IP stuff affect my (Second) Life??

Beyond exercising good common sense within Second Life, as guided by the Terms of Service .. well, try not to build anything that you know full well rips off someone else. Linden can and does enforce IP rights, including deleting infringing content from peoples in-world inventories – though more often than not the infringing item is something that was bought at a store, or was a ‘freebie’, and not something that the user actually created themselves.

Significant IP offenses can result in banishment from Second Life, or worse – lawyers. Be warned.

Since the laws that constitute Intellectual Property legislation are very broad and complex, it can be difficult to ascertain what actually constitutes an infringement; my advice to you would be to use your common sense, and steer clear of creating content that clearly derives from any form of licensed popular culture.

But anyway .. in the interests of making this post slightly less boring, here’s Darth Vader riding a unicorn:  (from io9.com)

Vader and unicorn

"Wheeeeeeee!!!..."

If I get sued by George Lucas and 10,000 scarred-for-life little girls, I’ll be sure to let you know.

Within Second Life, the ‘Big Six’ are Community Standards that, if violated, may result in the suspension or expulsion of the offending Resident.

Enforcement of the Community Standards generally follows a path of escalation that may begin with an initial warning being issued to the offending Resident, moving through account suspension for a certain timeframe, and potentially ending with eventual expulsion from Second Life if the offending continues.

**(The following is from http://secondlife.com/corporate/cs.php – Second Life Community Standards):**

All Second Life Community Standards apply to all areas of Second Life, the Second Life Forums, and the Second Life Website.

  1. Intolerance

    Combating intolerance is a cornerstone of Second Life’s Community Standards. Actions that marginalize, belittle, or defame individuals or groups inhibit the satisfying exchange of ideas and diminish the Second Life community as a whole. The use of derogatory or demeaning language or images in reference to another Resident’s race, ethnicity, gender, religion, or sexual orientation is never allowed in Second Life.

  2. Harassment

    Given the myriad capabilities of Second Life, harassment can take many forms. Communicating or behaving in a manner which is offensively coarse, intimidating or threatening, constitutes unwelcome sexual advances or requests for sexual favors, or is otherwise likely to cause annoyance or alarm is Harassment.

  3. Assault

    Most areas in Second Life are identified as Safe. Assault in Second Life means: shooting, pushing, or shoving another Resident in a Safe Area (see Global Standards below); creating or using scripted objects which singularly or persistently target another Resident in a manner which prevents their enjoyment of Second Life.

  4. Disclosure

    Residents are entitled to a reasonable level of privacy with regard to their Second Life experience. Sharing personal information about your fellow Residents without their consent — including gender, religion, age, marital status, race, sexual preference, alternate account names, and real-world location beyond what is provided by them in their Resident profile — is not allowed. Remotely monitoring conversations in Second Life, posting conversation logs, or sharing conversation logs without the participants’ consent are all prohibited.

  5. Adult Regions, Groups, and Listings

    Second Life is an adult community, but “Adult” content, activity and communication are not permitted on the Second Life “mainland.” Such material is permitted on private regions, or on the Adult Continent, Zindra. In either case, any Adult content, activity, or communication, that falls under our Adult Maturity Definition must be on regions designated as “Adult,” and will be filtered from non-verified accounts. Other regions may be designated as either “Moderate” or “General.” For more information on how to designate land, events, groups, and classified listings, please carefully read the “Maturity Definitions.”

  6. Disturbing the Peace

    Every Resident has a right to live their Second Life. Disrupting scheduled events, repeated transmission of undesired advertising content, the use of repetitive sounds, following or self-spawning items, or other objects that intentionally slow server performance or inhibit another Resident’s ability to enjoy Second Life are examples of Disturbing the Peace.

**(End of excerpt from http://secondlife.com/corporate/cs.php   )**

I think it is necessary for some form of (basic) ‘Code of Conduct’ to exist in most forms of Human society, including within online communities such as Second Life. The SL Community Standards establish a publicly verifiable baseline for avatar conduct within Second Life; one point to note is that if something is  illegal in ‘Real Life’, then chances are high that it is illegal in Second Life, too.

The SL Community Standards are, of course, no substitute for a modicum of common sense. As a sometimes-Resident of SL, I make an effort to keep my eyes and ears open when inworld, especially when entering a sim I haven’t been to before; there’s really no substitute for actively speaking with the locals in terms of finding out about a place – its norms, its rules, its history, and so on. In SL, if in doubt – go find someone who looks like they know stuff, and politely ask them what it is that you wish to know. By treating other Residents politely and with consideration, exploring in Second Life becomes that much more pleasant for all.

The Second Life Community Standards make it fairly clear what the basic rights of Residents are, and provides a useful first port-of-call for those who think their rights may have been infringed by another Second Life user. It is probably a good idea to consult with other Residents before making a formal complaint to Linden Lab – it can be surprising what sorts of behaviours are tolerated in-world, as Second Life caters for all sorts of different people, sub-cultures, activities, and so on, in various sims across the grid.

In saying that, if some deviant furry tries to hump my Dragon avatar without permission, then they are probably in violation of the SL Community Standards. My first instinct may be to sanitize their wayward groin with fire, but this would be a violation of the Community Standards in itself; rather, it is better to note the time, location and the SL name (and perhaps active Group) of the offender, then report them to Linden Lab via the Viewer interface.

Other useful tactics versus Residents who are causing problems include teleporting to another sim on the grid, and blocking the Resident in question via the Viewer controls, as appropriate. It is worth noting too that some sims are likely to have a greater potential for dramas than others, and it might be worth avoiding those entirely, if possible – discretion is very much advised within SL.

In some instances, it may be sufficient to report an infraction to a senior Resident in the sim where the infraction occurred. Say the infraction occurred in a Military sim with its own Code of Conduct (for example, perhaps an avatar was running around with genitalia showing, which was against the rules of the sim), then the senior resident (if they have local admin rights) could then put the offender on the ban-list of the sim, making Linden Lab’s involvement in the issue unnecessary.

Linden Lab are the final port-of-call for complaints against Residents, and they are the ultimate enforcers of the Community Standards. While it appears that complaints against Residents are generally handled well by Linden Lab, it is a little concerning that there is no independent authority that appeals can be made to. Second Life is after all a ‘Lindenocracy’, for want of a better word; if you don’t like a ruling Linden Lab have made, or an alteration Linden Lab has made to SL, or any other thing that Linden Lab has done within SL, then your only recourse is to go sulk in one of the OpenSim worlds, and build your home again from scratch.