New Kitely Avatars

We changed our default avatars today. When users join Kitely they get a default avatar, and until now we were using the avatars from the Diva Distribution (Ken, Paula and Jessica). We replaced them with seven new avatars, using modified assets based on the ones provided by the designer Linda Kellie. These avatars are better-looking than the previous avatars, and will help newcomers to Kitely to make a good first impression.

Meet the avatars

User-Created Transfer Stations

What are Transfer Stations

In one of our next releases we will be introducing a new feature called Transfer Stations. Transfer Stations are miniature worlds that users wait in while their world is being loaded.

Kitely is a cloud-based virtual world provider, so when a user tries to enter a world that is currently offline we need to start the world first. This is fairly quick, but not instantaneous. Currently users look at a progress bar on our website while the world is being started, and once the world is ready their viewer is automatically launched. Transfer Stations are going to change this: when a user tries to enter an offline world their viewer will start immediately, but they will enter a Transfer Station instead of the desired world. Once the world is ready the user will be teleported to it automatically.

Transfer Stations will be used only when entering the Kitely grid, i.e. when your viewer isn’t already logged into another Kitely world. If you are already logged into Kitely then you will wait in the current world you are in while the world you are heading to is being started (this is also how Kitely currently works).

If several people try to enter the same offline world at once then they will be placed in the same Transfer Station. This will allow you to talk and chat even before the world is ready.

Transfer Stations have several benefits:

  • They reduce the time it takes to enter an offline world, because the time for starting the viewer is spent in parallel with starting the world.
  • They make it possible to enter a world by starting the viewer directly (instead of from our website). Currently that isn’t possible: we require users to click “Enter World” in our website first.
  • Once Kitely supports HyperGrid access, transfer stations will enable people to HyperGrid teleport into Kitely worlds even if their destination worlds are currently offline.
  • You’ll be able to start chatting, dressing up, etc. with other people going to the same world as you even before the world is ready.

User-Created Transfer Stations

We discussed this feature in this week’s Kitely Mentors Group meeting, and a few people asked about the possibility of choosing the theme of the transfer station that will be used for their worlds. Subsequently several people volunteered to create such themed stations. We think this could be a nice touch, so we’ve decided to accept a few themed stations in addition to the standard transfer station that we’ll create. Once Transfer Stations are enabled, world managers will be able to choose which transfer station should be used for their worlds.

If you are interested in creating a Transfer Station then please consider the following guidelines:

Overall Structure

  • A transfer station is a small, self-contained, simple build. Here’s an example (please note that this is an incomplete rough draft):

  • A transfer station is a structure roughly 48m x 48m x 48m in size, which is enclosed within a larger box whose size is 127m x 127m x 127m. The large box must contain skybox textures, as shown in the screenshot above. (You can make the inner platform slightly bigger or smaller than 48m if you want, but the outer box must be exactly 127m.)
  • The station should be open-space with no closed structures. People should be able to see the entire station and everything in it by zooming out. For example, it’s ok to use arches, but not tunnels. The station doesn’t have to be circular.
  • The station can’t include any scripts or physics.
  • The station must be very low on the prim, texture, and mesh counts so that it will rez quickly when people enter it. Textures should be 512×512, unless they are used for big areas in which case 1024×1024 is acceptable.
  • Consider the physics engine load in your design. Don’t use hollow prims/meshes that are non-phantom. To prevent avatars passing through such barriers, simulate the physics mesh with non-linked transparent non-phantom prims. If you use multiple prims to get multiple textures on the ground then make the textured prims phantom and cover them with a single non-phantom megaprim the user can walk on.

Contents

  • Each transfer station has a few required elements:
  • When you enter the transfer station there should be a large sign directly in front of you. This sign will explain what is happening, e.g. “You are currently waiting for your world to load.” The sign should take up at least 50% of the visible space in front of you when you enter the world. Use a blank rectangle as a placeholder for the content, because the real contents of the sign will be rendered via a script by Kitely when the station is set up.
  • If required, attribution for you and other content creators can appear on a small 0.5m x 0.5m plaque near the landing point. The plaque needs to fit the theme of the station and must not stand out visually. It should state “This Kitely Transfer Station was designed by X and includes content which was created by Y, Z, and W” (where X is your name, and Y, Z, and W are the names of the people who created content which you included in your build).
  • Don’t include any links, ads or promotions in the transfer station. The only exception is the attribution plaque which can include the name of your company (not a URL, or logo), e.g.: “This Kitely Transfer Station was designed by John Smith of John’s Designs”.

Legal

  • You will retain your copyrights for anything you build, but you will need to license your submission to Kitely using the Creative Commons CC BY 3.0 license.
  • Don’t include any content which Kitely can’t use commercially or that includes share-alike license requirements. If you use someone else’s content then it must be permissively licensed and you’ll need to give us direct links to all the website pages from which that content was obtained.

What’s Next

If you wish to contribute to this project then please add your name to the comments section below. Once your world(s) are ready, please edit that comment to add a link to your submission’s world page(s). If you wish you can contact us privately instead.

Please keep in mind that we may ask you to make modifications before accepting your submission for inclusion, and that your station might not end up being included in the Kitely Transfer Station world even if it adheres to all the aforementioned requirements. We’re very open to providing feedback, however, so if you have ideas or drafts you can ask us about them.

This entire blog post is a preview of an upcoming feature. We might yet discover that we need to make changes to the way Transfer Stations work, and if that happens then we may ask you to make changes to your build.

We’ll start considering submissions on October 1st so please add your preliminary builds before then. The Kitely Mentors Group will travel to all submitted worlds; information about these field trips will be provided ahead of time.

Advanced Megaregions: Up to 5x Faster, and Working Parcel Media

We’ve updated the service today with improvements and bug fixes for megaregions. Kitely’s implementation of megaregions is significantly better than regular OpenSim, so we’ve decided to give it its own name: “Advanced Megaregions”. (See our previous post for more information about Kitely’s support for big worlds.)

Advanced Megaregions solve many of the problems that occur in regular OpenSim megaregions. One of these improvements is that parcel media works correctly throughout the megaregion, whereas in regular OpenSim it only works in the South-West region. Advanced Megaregions are also faster than regular megaregions, so the user experience is better.

Easily Enable or Disable Advanced Megaregion Mode

Some OpenSim features don’t work with megaregions, e.g. changing terrain textures. This is due to a limitation with the viewers. Kitely solves this problem by allowing you to temporarily disable Advanced Megaregion mode and modify each region separately. If you try to use a feature that doesn’t work in Advanced Megaregion mode then you’ll get this message:

Megaregion Warning

If you click on this link then your browser will automatically show the world’s Manage World dialog, where you can disable Advanced Megaregion mode by simply unchecking a checkbox:

Advanced Megaregion mode

This will change the world to normal (non-megaregion) mode, where you can modify each of the regions separately. When you’re done changing the terrain settings you can re-enable Advanced Megaregion mode by simply checking this checkbox.

When using regular OpenSim megaregions, you will encounter problems if you try to disable them: landmarks may stop working, objects won’t show up without additional manual work, etc. Kitely’s Advanced Megaregions don’t suffer from these problems: the world remains fully usable when not in megaregion mode. You can set landmarks in a world and they will continue working even if the Advanced Megaregion mode is changed. Similarly, objects will appear where they were placed no matter how many times you enable or disable Advanced Megaregion mode.

Speed Improvements

We have made numerous improvements to OpenSim to make big worlds work faster on Kitely. These changes reduce OpenSim’s CPU usage up to 80%! This makes the user experience smoother and allows for the use of more complex worlds and more avatars than regular OpenSim. The following chart shows how much we reduced CPU usage compared to regular OpenSim. These tests were done on a world running in its own server, with one avatar in the world.

World SizeWorld ModeCPU Load Reduction
4 RegionsAdvanced Megaregion45%
16 RegionsSeparate Regions64%
16 RegionsAdvanced Megaregion80%

Kitely uses powerful cloud-based servers to run OpenSim: they have multi-core CPUs, 7.5 GB of RAM, and high-speed I/O. Each server runs between 1 and 4 worlds. Worlds that have many avatars in them automatically get a larger portion of the server’s resources, so when your world needs it it will get its own dedicated server automatically.

High-Performance Big Worlds, and World Pictures

Today we’re introducing one of our most highly-anticipated features: big worlds! We’ve got all the details below.

(Update: we made additional improvements to big worlds; see our post about Advanced Megaregions for more information.)

Another new feature in this release is that the Public Worlds page now shows pictures for each world, which is much better for world discovery than the old text-only list.

Big Worlds

You can now create high-performance worlds on Kitely that are up to 16 regions in size. We support the following world sizes:

  • 1 Region
  • 4 Regions (2 x 2)
  • 9 Regions (3 x 3)
  • 16 Regions (4 x 4)

The size of the world is set when you create the world, and can’t be changed afterwards.

World Size

Each of our plans includes a number of free regions, which you can use to create any combination of worlds. For example, our Gold Plan ($35 / month) includes 20 regions, with which you can create a 16-region world and a 4-region world; or 20 1-region worlds; etc.

You can create additional worlds beyond your plan’s quota by using Kitely Credits (KC). Additional regions cost 10 KC per region per day. For example, a 4-region world costs about 4 (regions) * 10 (KC / region) * 30 (days) = 1200 KC per month, or $4 when buying KC at our maximum discount rate. The costs of copying, exporting, and replacing worlds are also dependent on the number of regions in the world. For example, copying a 4-region world costs 40 KC.

Optimized Big Worlds Performance

We optimized big worlds running on Kitely so that they’ll run better than on standard OpenSim. These optimizations reduce CPU and memory consumption on our servers, thus enabling Kitely to support more prims, scripts and users than can be supported with standard OpenSim.

Big worlds in Kitely provide a seamless single-world experience:

  • Vivox voice works throughout the entire world seamlessly. This means that unlike in standard OpenSim, people in different regions can hear each other.
  • There is a limit of 100,000 prims for the entire world. Every prim you use in the world subtracts from this shared quota, regardless of which region it is rezzed in. Note that the viewer will show that the prim limit is 100,000 in each of the regions separately, but you won’t be able to create more than a total of 100,000 prims throughout the entire world.
  • Region crossings are fast, and they are completely eliminated when megaregion mode is enabled (see the next section for details).

With the addition of this new proprietary big-worlds module, Kitely now has two major services which provide improved performance over standard OpenSim: our cloud-based asset service and our high-performance big worlds. These services cleanly integrate with standard OpenSim, which enables us to provide you with all the latest OpenSim features while adding capabilities that standard OpenSim doesn’t provide.

Megaregions

Big worlds in Kitely use megaregion mode by default. A megaregion is a world that contains multiple regions, where the regions have been merged into one big region. Megaregions work better than multiple small regions in several ways: they smooth performance, enable better vehicle behavior, and make it easier to build without needing to consider region borders.

However, Megaregions are an experimental feature so some OpenSim features don’t work properly. For example, parcel audio doesn’t work except in the root region (the region at the South-West corner of the world). Therefore, some people will prefer not to use megaregion mode.

Kitely allows big worlds to run both as megaregions and as non-megaregions. You can enable and disable megaregion mode as often as you like in the Manage World dialog, and Kitely will convert the world to the new mode automatically. Note that switching modes can only be done when the world is inactive, so you may need to use the world’s Access controls to temporarily eject people from your world when you want to switch modes.

Megaregion Mode

Default Region

The default region is the region users appear in when they enter a big world. Initially, the default region is the root region (the region at the South-West corner of the world). You can change the default region by creating a telehub. (Here are the instructions for creating a telehub.) When a telehub is created, we assume that the region that contains the telehub should be the default region. If you don’t want to keep the telehub then you can delete it afterwards: this won’t cause Kitely to forget the default region that you have chosen.

Universal Campus World Template

We’ve added a new built-in world template which you can use to create worlds: the Universal Campus (visit an example of this world). This is a highly-detailed big world (2 x 2 regions) that is ideal for organizations that need a lot of space for collaborative meetings such as classes, research group meetings, and conferences.

The Universal Campus was created by Michael Emory Cerquoni (a.k.a. Nebadon Izumi), and is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) license. See the Universal Campus homepage for more information.

Multi-Region OAR Files

OpenSim Archive (OAR) files are used to save OpenSim regions. At Kitely we believe that you should have full control over your builds, so we support the use of OAR files to load and save worlds (with some limitations to protect third-party content). Since the current OAR format supports only one region per OAR, we’ve extended the format to allow storing multiple regions per OAR. This makes it possible to save your entire multi-region world in a single OAR file, thus making it easier to restore without having to load separate OAR files for each of the regions that make up the world.

Currently only Kitely can load and save this new multi-region OAR file format, but we’ve submitted the code that we developed to support this capability for inclusion in standard OpenSim. Once it becomes a part of standard OpenSim you will be able to exchange multi-region OARs with other grids, thus making it easier to move your multi-region builds between different OpenSim providers.

When you create a world by uploading an OAR file it’s possible that the number of regions in the OAR won’t match the world size that you selected in the New World dialog. When that happens we make the OAR fit the world as follows:

  • If the OAR contains fewer regions than the world size then we fill the missing regions with empty land. This is what happens when you upload a 1-region OAR into a multi-region world.
  • If the OAR contains more regions than the world size then we discard the extra regions.

There is one caveat: because the multi-region OAR format is still under review for inclusion in standard OpenSim, the file format might still change. If that happens then any multi-region OAR files that you’ve exported from Kitely before the OAR format was finalized may fail to load into other grids. If that happens then you’ll need to export the world again using the final format to get it to load properly. However, this isn’t a problem for single-region OARs (created from single-region worlds) because their format hasn’t changed. We’ll post an announcement to this blog once the OAR file format is finalized.

World Pictures

That’s enough about big worlds. Now let’s talk about the other new feature in this release: world pictures. It’s now possible to upload an image for each world. This image is shown in two places: in the world’s World Page and in the Public Worlds page.

You can set the world picture in two places: in the World Page, and in the Advanced tab of the Manage World dialog. New worlds don’t have a picture, so we show the Kitely logo instead. Here’s what the Manage World dialog looks like when no picture has been set:

Select World Picture

Click on “Select File” to upload a picture for the world. The picture will be resized automatically to fit in the available space. If you like the picture then click “Save”.

New Public Worlds Page

We’ve completely redesigned the Public Worlds page. Instead of the old text-only list we now show world pictures and titles in a grid. Here’s what this looks like:

Please upload screenshots for all of your worlds; doing so has many benefits. First, people are more likely to visit your worlds if they can see what they contain in advance. Second, worlds that have pictures appear earlier in the Public Worlds page than worlds without pictures. And finally, the world picture is shown in social media links (e.g., on Facebook) when people “Like” your world.

Capturing Screenshots

It’s easy to create screenshots of your virtual world: simply press Ctrl+` or Ctrl+Shift+S. For more information, see taking snapshots. When capturing screenshots we recommend that you set your virtual world viewer to the best graphics options that your computer can support: set draw distance to max, enable shadows and full reflections, select environment settings that show your world in attractive lighting, etc.

Lower Priced Plans and New Monetization Options

We updated our service today with several major changes that make Kitely cheaper to use, and add new ways to earn Kitely Credits.

New Subscription Plans

We’re making several changes to our subscription plans. People have told us that they prefer to be able to spend more time in-world instead of getting additional Kitely Credits each month. Therefore, we increased the amount of free time included in each plan, and eliminated the KC that they used to provide. The Bronze Plan now includes 30 hours of monthly use (as Minutes) instead of the 25 hours that it previously provided (in Minutes and KC). Similarly, the Silver Plan now includes 120 hours instead of the 100 hours that it used to provide. This means that the new Bronze and Silver plans provide 20% more time for the same amount of money as before. The new plans will take effect automatically for all existing users on August 1.

The most exciting changes, however, are in our more advanced plans. We’ve eliminated the Platinum Plan, and changed the Gold Plan to include 20 free regions and unlimited time for just $35 / month. This means that you can now get unlimited time on Kitely for 65% less than what we previously charged for the Platinum Plan. Existing Platinum and Gold plan users can continue using their existing plans if they wish, but we recommend switching to the new Gold Plan since it’s cheaper.

Here are the new plans:

Price Changes for Creating and Storing Worlds

In preparation for when we start providing bigger worlds, this update also includes a few world-related price changes. The price for creating a world is now 10 KC (up from 1 KC). Similarly, the price for storing a world is now 10 KC per day, instead of 1 KC per day. This means that each additional world beyond the worlds provided by the plan’s free quota costs about 300 KC per month, which is equivalent to $1 per month when buying KC at our best discount price. As before, users aren’t charged for creating or storing worlds that are included in their plan.

Buying More KC at Once

It is now possible to buy up to $500 worth of Kitely Credits at once (up from $50). As will be explained later, there is a new use for KC so some people will want to buy many of them at once. This change makes it more convenient to do so.

More Free Time for New Free Plan Users

New Free Plan users now get 6 hours of free usage in the month in which they create their account (up from 2 hours). This time is only usable in the first month; afterwards Free Plan users get 2 hours each month, as before.

Payment Methods

It is now possible to pay for the monthly subscription using Kitely Credits instead of PayPal. You can choose which payment method to use in the Settings page. There are three options:

PayPal – your PayPal account will be billed at the beginning of each month. This is how Kitely has worked until now.

PayPal, or Kitely Credits whenever possible – at the beginning of each month, if you have enough Kitely Credits then you will be charged using KC at a rate of 300 KC per $1. Otherwise, your PayPal account will be billed. This option is useful for virtual world business owners: it enables them to use the KC that they earn in order to pay for Kitely. People who earn enough KC won’t have to pay for Kitely using real-world money at all.

Only Kitely Credits – you will be charged using KC at the beginning of each month. If you don’t have enough KC then your plan will be canceled. This option isn’t recommended because it can cause you to lose your plan just because you happened to be low on KC on a particular month (although we do send a warning email before that happens). This option is intended for people who prefer paying for their plan multiple months in advance, and for people who can’t use PayPal subscriptions because they didn’t link a credit card to their PayPal account. If you want to use this option then you should buy a large amount of Kitely Credits in advance, to avoid running out. This is why we increased the number of Kitely Credits that can be bought at once.

Setting a Price for Visiting Worlds

We are introducing a new way of earning KC with virtual worlds: by charging a per-minute access price for visiting a world. In the world’s Access controls you can now set a price in KC for visiting that world. Visitors will pay those KC each minute that they are in your world. This capability has great potential, and we’re excited to see how it will be put to use. For example:

  • Musical performances
  • Conferences
  • Lectures
  • Games
  • And other virtual activities

In addition to charging users for visiting your world, you can also pay users who visit your world. This can be used, for example, to automatically pay performers for the time they spend performing in your world.

In the following example, the world manager is putting on a concert:

Charging a price per-minute (instead of via fixed-price tickets) has many benefits. First, for the visitors, this entails less risk: they can sample the event, and if they want to leave then they’ve only paid a small price. For the world manager, this means it’s easier to get people to sample the event. It’s also possible to let the event start for free, and only turn on premium pricing once the main attraction begins. When that happens users are asked if they agree to remain in the world:

This means the performer can create a direct connection with the world’s visitors before asking them to pay, which increases the chance that they’ll want to stay.

Kitely charges a 10% fee for Kitely Credits that are earned using these monetization options. In other words, for every 10 KC that the world manager or performer earn using these tools, they get 9 KC and Kitely keeps 1 KC. This fee doesn’t apply to any of the other ways people can transfer KC to each another. The 10% fee applies only to the optional monetization features described above.

Kitely Credits as a Virtual Currency, and Web-Based Messaging

We are excited to announce that Kitely now has a fully working virtual currency! You can buy items using Kitely Credits, transfer them to other people, etc. We’ve also added the ability to send messages to other Kitely users from our website, and made a few user-requested improvements.

Kitely Credits as a Virtual Currency

You can now use your Kitely Credits (KC) in-world. This finally makes it possible to sell items, create tip jars, etc. Your KC balance appears in the viewer. (Some viewers show the balance as “L$” instead of “KC”, but it’s still the correct amount.) Unfortunately, the “Buy KC” button doesn’t work in existing viewers because they hard-code it to go to Second Life, so buying KC can still only be done on our website.

All of your KC transactions appear in the History tab. Some transactions can be clicked to get more information, such as the name of the item that you bought or sold.

A “Buy Item” transaction in History

Upcoming Features for Kitely Credits

Kitely Credits are an advanced virtual currency, designed to support low-risk virtual commerce. Every KC is tracked from the moment it is bought until it finally gets redeemed for some Kitely service. We will describe the capabilities of our system in more detail in future posts. In the meantime, we want to let you know about some of the virtual currency features that we’ll be adding soon, so that you can start preparing to take advantage of these opportunities.

In a few weeks we’ll roll out another batch of virtual currency related functionality. First, we’ll add another way for you to earn KC: by setting access charges to your virtual worlds. We’ll also make it possible for you to pay for our monthly plans using Kitely Credits, which means that if you earn enough KC from other people then you will not have to pay any real-world money in order to use Kitely. Finally, and perhaps most importantly, we will introduce various anti-fraud mechanisms, which will make it safe to create ATM’s. We do not recommend creating virtual currency ATM’s before that update, except for testing purposes. If you are interested in creating an ATM or Exchange that uses KC then please contact us for more information.

Send Messages to Other Users from the Kitely Website

Until now you didn’t have an easy way to contact people you see on our website without using a third-party service such as Facebook. We’ve therefore added a feature that lets you contact other users directly. Whenever a user name appears in our website, click it to get a small profile window:

Click on “Send Message” to send an Instant Message to the user. The message appears in-world, just as if you had sent it from your avatar. If the user is offline then the message will be saved until the next time they enter any world.

There is a limit of 25 offline messages per user , so if a user doesn’t login for a long time then their inbox might become full and they’ll no longer be able to receive messages.

As you can see in the screenshot, the profile window shows your profile picture. If your account is connected to Facebook or Twitter then we take your profile picture from those services. If your account uses only an Email and Password then you can setup a profile picture by creating a Gravatar. Gravatars are a widely used standard for linking an image with an email address. Alternatively, if you would like to link your existing Email/Password account with your Facebook and/or Twitter profiles then send an email to contact@kitely.com and we’ll set that up for you.

Changes to Groups Policy

We made a few changes to how OpenSim-based groups (AKA “Avatar Groups”) work in Kitely, to prevent abuse. First, it now costs 100 KC to create a group. Second, users can join a maximum of 100 groups. (Some viewers might show a lower limit, e.g. 42, but we only enforce the limit at 100.) Third, if you create a group then you must add at least one more member (in addition to yourself) within the following 2 days. If the group has only one member after 2 days (or no members) then it will be automatically deleted in order to release the group name for use by a larger group of people.

Existing groups were grandfathered in: they didn’t incur the new charge of 100 KC, and we didn’t delete them even if they had only one member.

Other Improvements

Kitely Plugin now supports the Teapot viewer.

For scripters: we increased the limit of listeners per object to 500 (from 64). The limit per region is still 1000, as before.

We’ve made it easier to view worlds in the Public Worlds page. Previously, if you clicked on a world (which opens its World Page), and then clicked the browser’s Back button, then the search started all over again from the first page of results. Now you will return to the page of results that you were last at, so you can continue browsing where you left off.

Replace Existing Worlds and Automatically Disconnect Idle Users

We’ve updated our system today with new features that make Kitely easier to use. First, we’ve made it easier to work on worlds outside of Kitely by introducing an intelligent way to replace existing worlds with new OAR files. Second, you can now automatically disconnect yourself if you are inactive for a long time. Similarly, you can disconnect visitors to your worlds if they are inactive for a long time. Finally, we added a progress bar during OAR file uploads.

Replace Existing Worlds With New OAR Files

It is now possible to intelligently replace the contents of an existing world with a new OAR file. This is useful if you are working on the world outside of Kitely, and you want to update your Kitely world with the latest version. In the past you had to create a new world, but then all of your settings were lost. The Replace World feature is smarter: it keeps some of your existing settings, so that you don’t have to enter them again. We save the following settings:

  • All of the settings in the Manage World dialog, e.g. the world’s description and its access controls.
  • The world’s URL remains the same.
  • The world keeps all of its Likes and Tweets.
  • If possible, we keep the existing parcel settings. Here’s how this works: normally, an OAR file contains a list of parcels and their settings, so when you load a new OAR file the parcels in that OAR file wipe out the previous parcels. However, often the new OAR file isn’t really a completely different world, but just a newer version of the existing world. In that case the parcels are probably the same, and it would be convenient to keep the parcel settings already in Kitely instead of wiping them out. We recognize this case by comparing the parcel names in the existing world and the new OAR file, and where parcels have the same name we keep their existing settings instead of taking them from the OAR file. This affects the parcel’s flags (e.g., “No Build”), and the parcel’s permissions: which group it belongs to; which users can enter it; etc.

The Replace World feature can be found in the Files tab of the Manage World dialog. (This dialog was previously called Edit World; we renamed it.). We’ve also moved the Export World feature to this tab.

Replacing a world costs 10 KC.

Automatically Disconnect Idle Users

Some people felt anxious about accidentally forgetting to disconnect when they left their computer and losing Minutes because of it. Other people asked for a way to automatically remove people who were “parking” their avatars in their worlds (i.e., remained logged in even when they were inactive for extended periods of time). We’ve listened to your concerns and have added a couple of features that enable you to automatically disconnect yourself, and/or people who visit your worlds, when your avatars haven’t moved or chatted for more than 30 minutes.

Your Kitely account Settings page now includes a setting called “Disconnect from worlds when idle”. When that setting is enabled (which is the default), you will be automatically disconnected from the world you are in if your avatar remains inactive for 30 minutes.

Each world has a similar setting in its Access tab, called “Disconnect idle visitors”. When enabled (which is the default), visitors to the world that are inactive for 30 minutes will be automatically disconnected. This is especially useful when you set the world to allow free access to your friends, because it prevents them from accidentally using up too many of your Kitely Credits.

When a user has been idle for 3o minutes we don’t disconnect them immediately: we show a warning message first. The user then has 1 minute to click on a button labeled “I’m Here” to prove that his or her avatar is still active. If they do so then they can continue being idle for another 30 minutes before the warning message appears again. If they don’t click the button within 1 minute then they’re automatically disconnected from the world.

Updated Kitely Plugin

We’ve updated the Mac version of Kitely Plugin to version 2.0.1. The only difference from version 2.0.0 is that we use a digital certificate to sign the plugin (for the first time on the Mac). The reason we added this certificate is that Apple are about to release a new version of Mac OS X in which only signed applications can be installed.

Avatar Groups, Profiles and Offline IM

We’ve updated our service today with several new features. Most notably, you can now select which groups of users will be able to enter your worlds even if you didn’t use Facebook or Twitter to sign up to Kitely.

Avatar Groups

We now support OpenSim groups. Groups enable you to allow only selected users to build in your worlds. Groups are also useful for sending instant messages to multiple people at the same time. These options are available inside your virtual world viewer; see this page for more information.

A user with a group title

You can also use these Avatar Groups to control who can access your worlds. Previously it was only possible to specify access options using Facebook Groups and Twitter Lists, which means that if you did not sign up for Kitely using Facebook or Twitter then you had only two options for access control: “Only Me” and “Everyone”. Now you have the option of creating or joining a group in a virtual world, and then allowing free access to your world only to members of that group.

Here’s how to add an avatar group to a world’s access permissions:  open the world’s Edit World dialog; press the Add Visitors button; and select the group you want from the Avatar Groups section. It lists all the OpenSim groups that you are a member of.

User Profiles

You can now share details about yourself with other users and view the information that other people have chosen to share about themselves.

Offline Instant Messaging

If you send an instant message to a user that is currently not logged-in then your message will be saved, and delivered the next time that user logs-in.

Security Enhancements

We’ve changed the default world settings in order to prevent unscrupulous users from destroying peoples’ hard work, or annoying other users. All new worlds are now configured to allow only the world manager to build in them. “Pushing” is also disabled by default. In order to protect our existing users, we’ve also applied these settings to all of the worlds currently in Kitely.

If you do want to allow others to build in your world then simply enable that option for that world using your virtual world viewer. However, for your protection we recommend that you don’t allow just anyone to build in your world. Instead, use Groups to give build permissions only to users that you trust.

Improved OAR Format

We’ve updated the OAR format in order to save your region’s Telehub, if you have one. A Telehub is a way to control where users appear when they enter your world. There is one caveat, however: telehubs only work if you disable Allow Direct Teleport in the Estate tab, but that option is not saved in the OAR because technically it isn’t part of the region (it belongs to the Estate). Therefore, if you load an OAR with a Telehub, and the telehub doesn’t work, you may need to disable Allow Direct Teleport.

(By the way, if you want to set the starting position in your world then Telehubs aren’t the easiest way: the easiest way is to use a Landing Point. However, Telehubs have a few features that Landing Points don’t have so they are sometimes useful.)

Updated Kitely Plugin

We’ve updated Kitely Plugin on Windows to version 2.0.1. The only difference from version 2.0.0 is that we use a new digital certificate, because the previous one has expired. The Mac OS X plugin hasn’t changed, so its latest version is still 2.0.0.

Supported OSSL Functions

Here’s the full list of OSSL functions, and who may call each function.

This list was last updated on March 2021, for functions integrated from OpenSim 0.9.2.

Allowed for Everyone

osClearObjectAnimations
osDrawEllipse
osDrawFilledPolygon
osDrawFilledRectangle
osDrawImage
osDrawLine
osDrawPolygon
osDrawRectangle
osDrawText
osForceBreakAllLinks
osForceBreakLink
osForceCreateLink
osFormatString
osGetApparentTime
osGetApparentTimeString
osGetApparentRegionTime
osGetApparentRegionTimeString
osGetCurrentSunHour
osGetDrawStringSize
osGetGender
osGetGridCustom
osGetGridGatekeeperURI
osGetGridHomeURI
osGetGridLoginURI
osGetGridName
osGetGridNick
osGetHealth
osGetInventoryDesc
osGetLinkSitActiveRange
osGetLinkStandTarget
osGetMapTexture
osGetNotecard
osGetNotecardLine
osGetNumberOfAttachments
osGetPhysicsEngineType
osGetRegionSize
osGetRezzingObject
osGetScriptEngineName
osGetSimulatorVersion
osGetSitActiveRange
osGetStandTarget
osGetTerrainHeight
osGetWindParam
osIsNpc
osIsUUID
osLinkParticleSystem
osList2Double
osListenRegex
osMatchString
osMax
osMessageObject
osMin
osMovePen
osNpcLookAt  (*1)
osParseJSON
osParseJSONNew
osParticleSystem
osRegexIsMatch
osReplaceString
osReplaceParcelEnvironment  (*2)
osReplaceRegionEnvironment  (*3)
osResetEnvironment  (*4)
osSetFontName
osSetFontSize
osSetLinkSitActiveRange
osSetLinkStandTarget
osSetPenCap
osSetPenColor
osSetPenSize
osSetPrimFloatOnWater
osSetSitActiveRange
osSetStandTarget
osSHA256
osTeleportOwner
osUnixTimeToTimestamp
osWindActiveModelPluginName

Notes:
(1) Currently anyone can apply this to any NPC, but this may change in the future.
(2) May be called by anyone who has permission to edit the parcel.
(3) May be called by anyone who has permission to edit the region.
(4) May be called by anyone who has permission to edit the parcel or the region (depending on which environment is being reset).

Allowed for the World Manager, Estate Managers and Parcel Owner

osSetParcelMediaURL
osSetParcelMusicURL

Allowed for the World Manager and Estate Managers

osAgentSaveAppearance
osAvatarName2Key
osAvatarPlayAnimation
osAvatarStopAnimation
osCauseDamage
osCauseHealing
osDetectedCountry
osDie
osDropAttachment
osDropAttachmentAt
osEjectFromGroup
osForceAttachToAvatar
osForceAttachToAvatarFromInventory
osForceAttachToOtherAvatarFromInventory
osForceDropAttachment
osForceDropAttachmentAt
osForceOtherSit
osGetAgents
osGetAgentCountry
osGetAvatarHomeURI
osGetAvatarList
osGetLinkPrimitiveParams
osGetNumberOfNotecardLines
osGetPrimitiveParams
osGetRegionMapTexture
osGetSimulatorMemory
osGetSimulatorMemoryKB
osInviteToGroup
osKey2Name
osKickAvatar
osLoadedCreationDate
osLoadedCreationID
osLoadedCreationTime
osMakeNotecard
osMessageAttachments
osNpcCreate
osNpcGetOwner
osNpcGetPos
osNpcGetRot
osNpcLoadAppearance
osNpcMoveTo
osNpcMoveToTarget
osNpcPlayAnimation
osNpcRemove
osNpcSaveAppearance
osNpcSay
osNpcSayTo
osNpcSetProfileAbout
osNpcSetProfileImage
osNpcSetRot
osNpcShout
osNpcSit
osNpcStand
osNpcStopAnimation
osNpcStopMoveToTarget
osNpcTouch
osNpcWhisper
osOwnerSaveAppearance
osParcelJoin
osParcelSubdivide
osRegionNotice
osReplaceAgentEnvironment
osRequestSecureURL
osRequestURL
osSetDynamicTextureData
osSetDynamicTextureDataBlend
osSetDynamicTextureDataBlendFace
osSetDynamicTextureURL
osSetDynamicTextureURLBlend
osSetDynamicTextureURLBlendFace
osSetHealth
osSetHealRate
osSetOwnerSpeed
osSetParcelDetails
osSetPrimitiveParams
osSetProjectionParams
osSetRegionSunSettings
osSetRegionWaterHeight
osSetRot
osSetSpeed
osSetTerrainHeight
osSetTerrainTexture
osSetTerrainTextureHeight
osSetWindParam
osTeleportAgent
osTeleportObject
osTerrainFlush

Not Allowed

osConsoleCommand
osForceDetachFromAvatar
osGetAgentIP
osGetRegionStats
osRegionRestart
osSetContentType
osSetParcelSIPAddress

OpenSim 0.7.3.1 and Additional Script Functions Supported

We’ve updated our service today to use OpenSim 0.7.3.1. This version of OpenSim includes many bug fixes and improvements: see the list of changes here. We also upgraded the version of Mono that we use, to 2.10.8.1. Together, these updates should result in faster and more stable performance.

In addition to these infrastructure upgrades we’ve made several configuration changes that can enable you to create much better worlds:

We’ve enabled many more OSSL functions than before. Most functions with threat level Low or below are enabled for everyone. Most functions with threat level above Medium are also enabled, but only for the world manager. This includes the often-requested functions osTeleportAgent and osKickAvatar. A few dangerous functions, such as osConsoleCommand, are still disabled for everyone. See the full list of supported OSSL functions.

Many people have been asking for the ability to build scripted bots, so we are happy to announce that NPC functions are now available on Kitely. NPC’s have many uses: in simulations, role playing games, as shop vendors, etc.

We’ve also fixed a bug that prevented setting the sun position using OSSL. This enables world managers to make sure that visitors will see their worlds as intended. In addition (but unrelated), we enabled Windlight functions. This means that worlds that have Windlight settings will send them to supporting viewers.

Finally, we fixed a bug related to the avatar walking animation, which sometimes caused avatars to look like they’re walking even when they’re standing still. This problem is almost completely eliminated (on rare occasions it can still happen). We will contribute this patch back to OpenSim.

As with any major upgrade, problems may occur. Please let us know if you encounter any and we’ll fix them.