In the past few weeks here at eleVR, we have been exploring Anyland, yet another creative and social VR playground, created by Scott Lowe & Philipp Lenssen. Anyland is a successor to its two-dimensional counterpart, Manyland. In Anyland, there are customized, user-created virtual worlds that you can visit and interact within. Everything from the landscapes and architecture, to the avatars and objects, are all created and scripted from scratch by the users themselves.
When you first launch Anyland, you start as a formless avatar, with only hands, on an empty island. To create objects to interact with, you click on a ring on your thumb. This brings you to a menu that shows you three-dimensional primitives to choose from. Ifyou wanted to build something that looked like a house, you’d create one by putting the appropriate primitives together and coloring them, etc.
Home island and the object creation menu
If you wanted your object to have a bit of animation or to be interactive, you could go further into the menus to script behavior on your object by using a customized scripting language that is half visual and half textual.
Scripted flashlight and the scripting window
If instead you wanted to explore other worlds, you’d click the ‘Areas’ button from the thumb menu and choose from any of the areas that show up in a list. Traveling to other areas lets you expore the diversity of lands created by other users, from insect kingdoms where you are the size of the ant, to dance clubs in the sky where you can play YouTube videos and host rave parties. These lands are usually filled with all kinds of custom user-created objects, which you can sometimes clone and keep for yourself in your inventory to bring back to your own land.
One of the more exciting things that can happen in these user worlds is meeting other users. Since Anyland is still pretty new, the community is small and dedicated to building out the worlds. Pretty much all of the social interactions we’ve had involved long sessions with other users showing us around the various worlds in Anyland, teaching us how to create our own avatars, and teaching us how to use and create objects. There is little in the way of tutorials in Anyland save for an introduction video, so most of the exploration and learning happens by talking to the other, very welcoming users.
Meeting other users in the various areas in Anyland
Design Principles in Anyland
After spending time in Anyland, and seeing the rich diversity of the landscapes, objects and avatars created by the users, it became clear to me that the app was designed with this diversity of user-defined possibilities in mind. There are no preset avatars, objects, buildings or landscapes, everything is 100% user-created. Because of this reliance on the user community’s creativity, the richness of the creations and worlds in Anyland reflects the richness of its community. There are also seemingly no limits to how extensive and involved the created worlds are, and some users have really taken the time to build unique and immersive worlds. With the same primitives, you can make something as simple as a bouncing ball or as complex as a working piano.
The diversity of object behaviors in Anyland: A standing chicken, a burning fire, a bouncing ball, and a fully functioning piano.
The diversity of worlds in Anyland: Welcome Town, Nightclub, Insect Town, and eleVR’s Virtual Office
During our explorations, we had the opportunity to speak with Philipp, one of the creators of Anyland. We asked him about the decision to make all the creation tools in Anyland accessible to beginners from the start, and he confirmed that it was an explicit decision to keep the world-building in Anyland democratic. He also says he believes strongly in not allowing external 3D-model importing into Anyland, so that all creations have the same limitations, and experts don’t overwhelm beginning users.
Design Principles in Scratch
After hearing Philipp describe the design principles behind Anyland, I was immediately reminded of the design principles behind our decisions in building the children’s media programming tool, Scratch. I spent seven years as a designer and software engineer on the Scratch team, and I remember much of that time being spent on design meetings where we discussed very similar goals for the Scratch community. In Scratch, there are minimal premade templates, and all tools are accessible to all users from the very beginning. And, while it is easy to get started in Scratch for a novice programmer, the tool is also highly extensible and programmable in complex ways. We had a guiding metaphor to keep these design principles in place while creating this tool for creativity, which Mitchel Resnick calls ‘low floor, wide walls and high ceilings’:
Low floor = it should be easy to get started with the tool
Wide walls = there should be a large variety of types of projects you can make
High ceilings = there should be a high limit to how complicated your projects can get
These design decisions led to an extensive mix of types of projects and aesthetics around them. On the Scratch website, you can find everything from 8-bit side-scrolling video games, to hand-drawn cartoon series, functioning science experiment interfaces and lengthy music videos. Each project has a unique flavor to it, reflecting the uniqueness of the community, which is international and spans a wide age range. After almost 10 years since Scratch was first released, the 18 million diverse projects that have been shared are a result of those initial design principles. This publication and this one both go into some more details behind our design decisions for the Scratch tool and community website. The comments and forum posts on the Scratch website are the main way that Scratch users learn how to use the tool, so the active user community is also a strong component.
Anyland and Scratch: A Shared Philosophy
I think Anyland and Scratch are both tools that share a philosophy that is inclusive of skillsets, viewpoints and motivations. By designing these creative spaces with both simplicity and extensibility in mind, both tools are accessible to beginners while still being highly generative for expert users. The tools build on a longer tradition of world-building games and tools such as Habitat, LambdaMOO and older, text-based MUDs from the 1970’s, which also generated interesting alternative worlds. Examples of creative systems that are less open-ended include things like pre-designed video games, where players are only allowed minimal customization of avatars, or modern LEGO sets that are designed for users to build the same exact model (as opposed to the more open-ended sets of the past).
In summary, some similarities of the open-ended approach of both Anyland and Scratch are:
– Affordable and easy to get started: the tools are accessible to a large group of people
– Template-less: the users contribute to the richness of the media
– “Low floor, wide walls, high ceilings”: the tools are welcome to beginners and also open for extension
– Socially-scaffolded: users learn to grow their use of the tool by interacting with each other
Some cons of this open-ended approach include:
– Abuse: It can be hard to monitor open environments, especially those open to children (see: A Rape in Cyberspace)
– Creative dilution: Diversity comes at a loss of a coherent aesthetic for the tool, which might be important for branding
– Decision fatigue: Too many choices can leave users at a loss for what to make
However, I believe these and other sacrifices come with the benefit of a truly blank slate where the only limit of creativity is what the users want to imagine for themselves. If you are interested in trying out VR world-building for yourself, I highly recommend exploring Anyland!
Many thanks to Chaim Gingold for references used in this post and to Philipp Lessen for impromptu design discussions in Anyland.
Scratch: Programming for All, Communications of the ACM, by Mitchel Resnick, John Maloney, Andrés Monroy-Hernández, Natalie Rusk, Evelyn Eastmond, Karen Brennan, Amon Millner, Eric Rosenbaum, Jay Silver, Brian Silverman, and Yasmin Kafai
The Scratch Programming Language and Environment, ACM Transactions on Computing Education, by John Maloney, Mitchel Resnick, Natalie Rusk, Brian Silverman and Evelyn Eastmond
Designing for Wide Walls, design.blog, by Mitchel Resnick
A Rape in Cyberspace, Julian Dibbell
Habitat (video game), Wikipedia