InWorldz Blog

Where your Dreams are our Vision!News about the InWorldz Virtual World

Tech Blog


InWorldz Halcyon 3d virtual world simulator

InWorldz and Halcyon

Over the past year, InWorldz has released source code to the greater 3d simulation and virtual world community in an attempt to make quality solutions for common problems available to the masses. This has been done deliberately to raise the bar of expectations for users coming from larger more well funded companies to smaller grids like ours.

Last week we released the core of the InWorldz simulator source code on GitHub.

As well as being a community oriented virtual world, this release makes InWorldz an open source software company specializing in performance and stability oriented 3d simulation.

Halcyon is the culmination of five years of an intense in-house software development effort to bring the quality of our virtual world software up to par with the expectations of the mass market. During a time of heavy growth we were able to isolate, diagnose, and replace many failing components with implementations designed from the ground up to handle realistic use cases where users can build in 3d freely without having to worry and avoid features of the environment because they perform poorly.

Advantages of the Halcyon architecture

Halcyon has stability, architectural, and performance advantages in several key areas that make it stand above other solutions when it comes to getting real work done. From the Phlox script engine, to the NVIDIA PhysX physics integration, we’ve designed the simulation to take into account the reality that users and large groups of users can be very demanding on the software to perform optimally.

We made a conscious decision to remove redundant options for various subsystem implementations and go with the best available solutions for each component. This choice has led to a streamlining of development where we concentrate on only one best in class way to solve a problem. When we find better solutions that can’t be implemented by improving our existing components, we replace the component entirely and do our best to maintain backwards compatibility rather than leaving multiple libraries in the source tree that solve the exact same problem and lead to redundant maintenance work.

The core tech

The Phlox script engine allows users to design active objects with scripts that get the job done without the worry that using language features like sleeps and while loops will bring the simulator to its knees. Utilizing advanced scheduling and serialization, we’re also able to quickly and efficiently transport your running scripts between separate physical servers in milliseconds, starting them running again in exactly the same state on a new server without ever skipping a beat.

With NVIDIA PhysX, we’ve been able to integrate a stable rigid body physics simulation that looks realistic and that can power your airplanes, cars, boats, and machines. This high fidelity simulation runs at 64 frames per second and provides increased accuracy and realism over many other solutions.

NPCs (bots) are easier to use than ever on Halcyon. Simply dress up an avatar the way that you would like a bot to look, and Halcyon allows you to copy the appearance of your avatar to an NPC for future use. Utilizing a combination of the more than 50 bot specific functions, your creations can take on a life of their own.

Better management of resources means that it takes less hardware to do more with Halcyon. The simulator is tuned and load tested to provide good responsiveness even when under high load.

Better management of bandwidth for both UDP and TCP traffic means that Halcyon does its best to respect the bandwidth limits set by users to minimize packet losses that can create a negative experience for people on weak LTE and slower DSL links.

Battle tested

The Halcyon core architecture has withstood the load of almost 500 simultaneous avatars online in InWorldz at peak and maintains data for over 130,000 registered users. These loads and data sizes give us experience in designing software and systems that just work better. We’ve implemented data components that are infinitely scalable such as our Apache Cassandra based inventory systems, and our Rackspace Cloudfiles (OpenStack Swift) / InWorldz WHIP hybrid asset cloud.

Our implementations of core functionality always come with the conscious decision to never create a temporary solution that sacrifices future improvements to the platform. The InWorldz team has also done our best to minimize wasted resources like disk space wherever possible.

Big things coming next

Though the source code is now available online, it is currently not easily possible to get an instance running on your desktop. To facilitate this, we’re working on a set of simple setup tools and scripts to get a simulator running on .NET for windows. Following the release of those tools, we’ll be putting work into packaging up Halcyon for home use. Later on, we’ll add features to better integrate Halcyon instances with the core InWorldz grid so that a Halcyon instance can be used as a sandbox while the InWorldz grid can be your home base to spend time with your friends and family.

We’re also interested in seeing our virtual world and 3d tech being used by more organizations. If Halcyon looks like a good fit for your projects, drop us a line and we can evaluate your use case for integration.


The hard thing about hosting things

Over the past 6 years, we at InWorldz have put a lot of blood, sweat, and tears into our little virtual world. We’ve done our best as a small company to provide an unparalleled level of service and quality to you, our customers.

During this time it has become increasingly obvious that the biggest “innovation” to the 3d hosting landscape has been a race to try to out-cheap the next guy by finding the lowest priced servers from the lowest rated providers and hosting as much as possible on them. Eventually when enough people join, services begin to get slow, crash, and fail and the host doesn’t have the knowledge or competency to fix the issues.

3d hosting is not web hosting. It is far more resource intensive, and yet the vast majority of people are still trying to price it cheaper than even the cheapest generic web hosts, and making almost no money doing it. The hardware we have at InWorldz to host 1500 regions could probably be used to host 10,000 websites that get moderate traffic. Hosting websites and hosting living, breathing virtual worlds are two entirely different business models. It is easy to power empty regions on just about anything nowadays, but add scripts or visitors, and the game changes quite a bit. It would be extremely odd to have a website with no visitors using a lot of resources, but regions with no visitors using a lot of resources is a very common occurrence in 3d. Unfortunately the only source of press in our small ecosystem mistakenly covers the cut throat pricing models as if they mean 3d hosting has come into its own, when not even huge companies like amazon can offer CPU cores as cheap as some of the people in the 3d hosting space are.

The problem with the very cheap prices goes beyond just the eventual quality of service degradation and crashes that are always seen if the hosts pick up real traffic. Very simple economics paint an interesting picture.

Even if a grid has 500 regions operating with no server costs, charging $10/mo the grid is pulling in $5000/mo. To put that into perspective, someone working 40 hours per week at the lowest available minimum wage in the U.S. right now earns $1,256/mo, or more than 1/4 of the grid’s total revenue. This doesn’t count the many states that have instituted higher minimums already.

This means, assuming the cost for servers that will be required as the business grows stays at or below 25% of total revenues using the cheapest hosts available, it will take 800 region sales just to pay a single software developer full time below the national average. This doesn’t include the owners of the company getting paid, nor any support personnel. With the small size of the market vs the number of grids that exist out there due to heavy fractionalization, don’t expect to have your particular complex bug fixed any time soon.

Having a “staff” of people that you’re paying in favors or regions doesn’t scale out when hard work needs to be done. People’s time is worth money. Everyone has bills to pay. Developing script engines, physics engines, and scalable data components is complex and expensive work where the people involved make top dollar for their contributions. If you don’t pay them what they’re worth, you will lose key people to other ventures and more lucrative opportunities. In the end, this is and will continue to be the biggest loss to the current breed of 3d virtual worlds.

With paid software developers, we’ve been able to develop and release a performant script engine in under a year, and a highly realistic and performant physics engine in even less time. Both work well, and we have no need to replace either. Those same goals have been on the agenda and in development under other software models for much, much longer. When people get paid enough to live, they can concentrate on just a few objectives and accomplish them efficiently.

This is a constant reality under any development model open or closed. The most modern, successful, and active open source projects have people working on them full time from all walks of life usually employed by companies with a commercial interest in the software, or by investors that want to see the software used in some way for commercial purposes. Without the funds to back that development, the projects would suffer and lose software experts because people need to eat, and food isn’t free.

InWorldz pricing is designed to specifically tackle the realities of an always on hosting platform in a small market that requires a lot of innovation. We keep region prices affordable, around the cost of a family night out, but still at a level where we can pay people to fix the bugs that are important to you, and implement the features you absolutely must have. We want to see a future where scale out components can continue to be developed so that grid crashes and data loss don’t have to be inevitable and mar the the reputation of virtual worlds. We want to see a future where everyone involved can continue to concentrate on working virtual world technologies, and not be forced to move on to something else to pay the rent. Finally, we want to see the pace of software development increase so that virtual worlds can be viable solutions for a VR feature, not decrease into obscurity.

Other business models exist beyond hosting, but remember that whatever actually has paying customers will be the project that gets the most development attention. If it’s not hosting, then the simulation software, the thing you actually interact with the most, becomes a secondary concern.


The InWorldz Technology Advantage

Over the course of the past 5 years, InWorldz has dedicated a tremendous amount of time to improving, innovating, and reinventing the virtual world platform. We have spent a ton of time on server side components from the asset storage system, to the script engine, physics, and physical vehicles. This year we’re going to begin putting the time into the client side of our virtual world solution, and adding features that have never been seen anywhere else. However, before we get started on that work, I want to summarize the technical advantages that makes InWorldz a unique and quality focused platform for creative people to build their dreams on.

It all starts with the network

In 2015, the InWorldz virtual world is hosted at Rackspace on our own private network behind two redundant Cisco firewalls. These firewalls operate in a failover configuration and provide a redundant path to the internet should one of them fail. Our network infrastructure supports redundancy from the router level all the way to down each and every server. All servers operate with dual NICs operating in a team to provide failover to two separate switches in a highly available configuration. This means that even if we lose a switch or a router, InWorldz stays up and kicking while talented and friendly Rackspace technicians replace the faulty hardware. This has given InWorldz an uptime advantage and we have seen very few outages. And it should be mentioned that none of which involved the networking setup behind our firewalls.

Highly available and redundant all the way down

Even though we incur increased costs due to the quality of our setup, we believe the advantage comes with customers dealing with as little downtime as possible. At InWorldz, everything from our new asset infrastructure, to inventory, to core data services have been designed to be highly available, replicated, and scalable. We chose Apache Cassandra to store user inventory because it is infinitely expandable, and fault tolerant. We have inventory servers go down a few times a year for maintenance or hardware issues, and no one on the grid is affected. Using Cassandra was and continues to be one of the best technical choices we’ve ever made for mass data storage. Holding over 200 GB of inventory data, we were so impressed with Cassandra that we were compelled to share one possible implementation of inventory storage utilizing the technology on Github complete with full unit tests.

Asset storage has traditionally be a sore point for virtual worlds.  Failed implementations, service overloading, and corruption or loss are common issues that plague virtual environments. In 2015, InWorldz now supports a hybrid native/cloud asset service that ensures we can scale to meet the demands of all future storage and not burden our customers with the costs of us being forced to add servers and disks where they are not needed. This has allowed us to maintain the tradition of quality, redundant storage with a dataset of ever increasing size, while keeping prices steady.

Original code solving complex problems

At InWorldz, we believe in doing the hard work where required to get the job done. We may be a small company, but we keep multiple full time software developers and contractors on staff, and we have tackled some of the most complex and time consuming problems in virtual worlds today.

The Phlox compiler and virtual machine

Phlox is one of InWorldz most crowning achievements. We were tasked with creating a virtual machine and compiler that could run scripts efficiently, while preserving enough context to quickly move entire sets of running programs between different machines. With Phlox, this was achieved. We can stop and start hundreds of scripts, transfer their memory state to a new machine, and fire them up milliseconds later. In less then one simulation frame we can literally move your active and running creations to a new server while you’re enjoying yourself riding a car across our vast landscape. You can find some more details in my personal blog post entitled Virtual machine state transfer.

The Phlox compiler is also very quick and highly compatible with the original LSL spec. Many people have messaged us and expressed pleasant surprise at the amount of imported content that has compiled and run on the first try.

The Phlox runtime is efficient, supports true script sleeps without trying up the engine, supports bytecode sharing, and is highly optimized to run many scripts at once. It has served as the basis for all other advancements that have been built on top of it.

InWorldz NVIDIA® PhysX® based physics

Utilizing Nvidia PhysX® on the server side has given us a huge advantage in the realism of physical movement on InWorldz. We took our time to make sure the integration contained plenty of tricks to reduce memory and CPU usage of the physical simulation. We also took steps to ensure even the most complex physical vehicles can be moved to a new server with all their scripts and other state in tact in under a tenth of a second! This means that when you ride your favorite tall ship or plane over many miles through InWorldz, the servers will spend their time waiting on you rather than you waiting on the servers. You can find a good example of an InWorldz user flying across multiple servers in an airplane on our promotional site titled I’d rather be posting yet another video flying on IW6 sims #InWorldz. This work was completed and debugged by the beginning of 2013 and was considered phase one of the physics implementation.

NVIDIA® PhysX® based vehicle dynamics

We’ve implemented physical vehicles on top of the stable base provided provided by phase one and achieved a high degree of compatibility with existing LSL physical vehicles and content. InWorldz vehicles can be made realistic and respond to collisions and forces in a believable and fluid manner. Custom vehicle types like direct support for motorcycle leaning and banking, as well as wind and water current reactors were added to make the building of all kinds of land, sea, and aircraft easier and more fun. You can read more about advanced vehicle building and InWorldz specific extensions in the advanced vehicle tutorial on our wiki.


We’ve spent many years refining the way that the InWorldz platform works, and the advancements and unique attributes listed above are only a few of the bigger examples of the steps we have taken to make your virtual experience on InWorldz one of a kind. We hope you’ll stick with us while we work the same magic on the viewer side of the equation and begin to look at areas where we can enhance your experience. This is your platform and we’re not afraid to do what it takes to keep it fun, exciting, and viable.


Teleport from the InShape dashboard

The InShape dashboard has been updated so that you can teleport directly from your phone on the InShape dashboard to one of the 14 InShape regions on InWorldz.

To teleport, find the region teleport icon in the dashboard menu:

4f2d99e7d164a05d9ffecb3c6e577f81This will bring you to a list of all currently available InShape regions:


Finally, click on the Teleport here link to be transported directly to the InShape space on the region and get started with your workout!


InWorldz InShape officially released!

Today we have made the InShape 3.0 builder’s kit available as the first non-beta release of InWorldz InShape!

The InShape information pages have been updated to give visitors an updated view of how InShape works, and how to easily get user’s avatars on their televisions during a workout session. See the following link for more information:

For sim owners, the InShape 3.0 kit is available at the following two locations:

We have also released the raw scripts under the Apache 2.0 open source license here:

The video below covers how to create an InShape route on your region with the new kit.

Later on in the week after people have been given a chance to create routes on their regions, we will open up region registration for InShape where you can paste an IZURL for your region to be included as a destination for new users registering to exercise via InShape.

The iOS 1.5 version of InShape that includes the dashboard, registration, and workout data recorder is pending review on the iTunes store and will be available soon. The Google Play store for Android is already loaded with the latest version.

Many thanks go out to Mr. Adam Dyson for his continuing help in the development of all aspects of the InShape system!

Have fun and stay InShape!


InShape entered into Google Fit Developer Challenge!

As of tonight, InWorldz InShape has been updated and entered into the Google Fit developer challenge! This is an exciting opportunity that has the potential to get InWorldz and content developers some time in the spotlight! We hope the judges of this challenge will find InShape as innovative and fresh as many of you have.

You can find information about the challenge here:

One of the requirements for the challenge was to integrate the Google Fit APIs into the application so a bonus of this entry is that InShape for Android now supports heartrate measurements!

Using a Google Fit compatible heart rate tracker, HUDs and other devices can now display your heart rate while you’re working out and keep track of the data for use in exercise programs, fit games, and activities.

This data is exposed to developers through a new data format called tagged metrics in the InShape data stream. If you are a developer working with the InShape platform, you can see an example of extracting tagged metrics on our github page at

Speaking of content, an InWorldz resident has given me a copy of a rather unique InShape powered object.

InShape Mushroom

The InShape bouncing mushroom

With your phone in your pocket logged into InShape you hop your avatar onto the mushroom and jump up and down. The higher you jump in real life, the higher you bounce on the mushroom in InWorldz! I can see this simple type of interaction being refined into a great workout routine and something that would be fun to do with friends.

Keep your thinking caps on. It is great to see these ideas being developed! Feel free to drop me (Tranquillity Dexler) a line in-world if you’ve got some more examples of InShape powered content you think we should know about.


Introducing the “I’d Rather Be #InWorldz” contest and campaign!

One of the most common things we hear from new residents is “What is there to do on InWorldz?”.  At InWorldz, we’ve been trying to not only answer this question with projects like the RP Hub and InShape, but also come up with ways to let people see into your world. We think that while the beauty and vividness of InWorldz speaks for itself, that voice needs to be amplified so that more people can be exposed to the power of virtual reality.

To accomplish this, InWorldz (with some inspiration from one of our residents) has come up with a fun way to help you share your world with your friends and the rest of the internet. When you’re stuck cleaning the house or sitting behind a desk working, will be the place for you to show the world that you’d rather be flying planes, driving cars, or shopping in your favorite virtual world. We’ll be promoting your posts to show the internet how much fun they could be having if they join you.

As part of this promotion, we’ll be offering prizes to the submissions that get the most thumbs up:

1 Grand Prize

  • A full private region for you to use paid in full for the first 3 months, or 3 months paid tier on a region that you own.
  • An “I’d Rather be _______ #InWorldz” tee shirt
  • An “I’d Rather be _______ #InWorldz” coffee mug

1 First Prize

  • A full private region for you to use paid in full for the first month, or 1 month paid tier on a region that you own.
  • An “I’d Rather be _______ #InWorldz” tee shirt

2 Second Prizes

  • 10,000 $iz to spend anywhere in-world on anything you’d like
  • An “I’d Rather be _______ #InWorldz” coffee mug

3 Third Prizes

  • An “I’d Rather be _______ #InWorldz” coffee mug


You can post images, videos, and dreamshare models to Please note that images will be resized, must be JPG or PNG format, and must not have a transparent background. Visit and log in to get started. If you need help posting, check out the instructions on the InWorldz blog at

The contest portion of this promotion will end February 28th 2015 at 11:59:59 PM PST. So get your submissions in and share with your friends!

Many thanks to @dianacacy on twitter for the inspiration for this promo in her tweet You’ll be getting that tee-shirt after all!


Help for posting to

Need help posting an entry to You’ve come to the right place! See the tutorials below to learn how to post images, youtube videos, and dreamshare models to

Login and posting an image

Posting a YouTube video

Posting a dreamshare model


InWorldz Residents Celebrate Holidays with Toys for Tots Donation Drive

Residents give most ever to Toys for Tots in Annual Fundraiser

San Antonio, TX: Last night wrapped up the annual Toys for Tots fundraiser on InWorldz, a 3D
simulation platform that relies on User Generated Content. Events over the last 2 weeks for the
fundraiser included a virtual Fashion Show, oYo Breedables Auction of horses, live auction of
creator items and donation dances with the InWorldz Christmas Angels raised a total of
$3,259.43. The donations will be matched by InWorldz for a grand total of $6,518.86, the largest
donation to date for InWorldz by its residents.

In statement about the donations from InWorldz Co-President Beth Reischl said, “In the years
we’ve been doing this, the generosity of our residents has always astounded us. From our first
little donation of $1,000 to steadily increase to over $6,500, our residents have shown us how
much they can and will give, and continue to give, to kids who sincerely need a light of love on
their Christmas Day. To see so many residents dedicated to giving joy to children, there is no
price you can put on that.”

Historically, InWorldz has sponsored the regions for the fundraiser, while residents volunteer
their varied services to provide a fun experience ranging from DJ’s, to auctions of one of a kind
items, fashion shows and more. While the setup takes a couple of months to get everything
setup, the event is considered the Premier Event of the year for InWorldz.

About InWorldz: InWorldz is a fully interactive 3D platform enabling users to create their own
rich dimensions from realistic to full fantasy settings and everything in between. Users can
socialize with others around the globe, and coming soon, be able to compete with users for
health and fitness.


Introducing InWorldz CloudIDE / LSL

We are happy to announce the general availability of the InWorldz Cloud IDE for LSL. This tool allows you to edit, save, and compile your LSL scripts via a web browser from anywhere!

Screen Shot 2014-10-12 at 12.30.17 PM

To create projects and save files into the cloud, you will need an InWorldz account. However, no login is required to edit scripts on the web page and to check that they compile.

InWorldz CloudIDE features include:

  • Code completion and snippet support (Ctrl + Space to activate)
  • LSL syntax highlighting
  • Phlox powered enhanced error reporting
  • Easy, one click navigation to the location of a compile error
  • Project support: Save files under collections of projects

Coming soon:

  • Support for syntax highlighting of InWorldz constants and functions

More screenshots:

Screen Shot 2014-10-12 at 12.31.05 PM

Check it out and get started with your LSL projects at !  It works on the latest versions of Chrome, Firefox, Internet Explorer, and Safari. Happy coding.

Older posts «

Site Navigation

search engine optimization