I’m sorry to announce that Skittish will close permanently on December 14, 2022.
In making Skittish, we tried to bring people together in a creative way at a time when meeting in person wasn’t possible. Unfortunately, there isn’t enough demand to keep it going, and it requires ongoing support that I can no longer offer on my own.
As sad as I am to announce it’s going away, I’m also very proud of what we made so quickly with limited resources — and it was so much fun while it lasted. If you’re interested, I’ve written a longer postmortem over on Waxy.org with my thoughts about the closure.
Huge thanks to Grant for the Web for the initial grant funding, all the events and organizations that used Skittish over the last two years, and everyone who worked on it — but especially Simon Hales for his herculean effort on every part of the platform. It couldn’t have existed without you. ❤️
How is it April already?! Since our public launch, we’ve been very busy with tons of new features and updates, including one critical behind-the-scenes change that affects how Skittish works. Let’s get into it.
New Audio Provider
The biggest news is that Skittish has a new audio provider, a huge but necessary infrastructure change for us. At the end of last year, High Fidelity quietly shuttered their spatial audio service, and with a lot of effort, we successfully migrated over to Dolby.io, which launched their excellent spatial audio service last November.
This change should be seamless and largely unnoticeable to you, though you may have noticed an increase in audio performance: switching between channel zones is now nearly instantaneous, for instance, instead of taking a couple seconds to connect.
Unfortunately, this comes with one trade-off: the maximum Skittish users in a single audio channel is now capped to 50 people, down from the previous 150-person limit. Each room and channel zone in a Skittish event uses its own audio channel, so you can still have many more than 50 people in your Skittish event by adding rooms and channel zones, but only a maximum of 50 people can speak or listen in each audio channel.
The Dolby team has assured us this is a temporary change while their spatial audio service is in beta, and they’re actively working to increase that up to 300 users per audio channel, double our capacity with our previous provider. We’ll post an update when that change is made.
We know this may be a huge inconvenience for some of you planning larger events, and we’re so sorry. This limitation can be worked around with creative room design, primarily by adding multiple channel zones and rooms to split up your event, and we’re happy to help with that. If any of you want a refund on your monthly subscription, let us know and we’ll take care of it right away.
You can now use the editor to upload an image, which displays as a resizable and rotatable billboard. Use it for branding, wayfinding signage, or just decorating the world.
Want a better view of the action? You can now change your camera angle using the camera icon next to the minimap in the bottom-right of the screen, or use the scroll gesture on your mouse/trackpad, to choose from three alternate views of the world.
Clicking on any person’s nickname will now show you their profile information, including full name, avatar, bio, and pronouns.
By popular request, you can now add pronouns to your profile and they’ll display next to your name in your badge.
Want players to start somewhere besides the default middle of the room? You can now drop a Room Entrance using the editor, and players will appear there when entering a room or joining the event for the first time.
You can now set your video screens to perpetually loop using the editor.
Better Mobile Support
We’ve improved mobile support so much, we removed the popup warning! You could already move and talk to others in Skittish from your mobile device, but we fixed a bunch of issues with signs, doors, videos, and the editor. Give it a try!
We launched this late last year, but neglected to mention it here: you can now use the Skittish editor to place little animal NPC characters in your world, which you can supply with multiple lines of dialogue that appear automatically or when other players come into range. These are a great alternative to signage for welcoming people into the space, explaining what’s going on, or just giving the space some color.
You can now delete your account from the dashboard. (If you’re currently a paying subscriber, you’ll be prompted to cancel any active subscriptions first.)
We’d love to hear how you’re using (or planning to use) Skittish and what you think of it. We plan to start writing about some of the creative uses of Skittish we’ve seen here, and we’d love to feature you. Drop us a line!
Skittish is now open to everyone, along with a new homepage and public demo showing how it works. Anyone and everyone can now create their own world, start editing, and invite others to join you.
Huge thanks to all the beta testers, event organizers, and creators who used Skittish over the last few months, letting us see what worked and what doesn’t. Your continued feedback keeps making it better.
We have a bunch of fun stuff lined up for the next couple weeks, some teased in the demo, so keep an eye out. We’re so excited to share it with you.
We’ve tried to price Skittish as affordably as possible, but even so, we know there are community events with scarce resources who would love to use Skittish but can’t cover the costs.
Since starting the project, we’ve always wanted to make sure Skittish was accessible to events that are:
Community- or mission-driven events
Non-commercial, not-for-profit, or non-profit organization
Free or low-cost admission
With the help of our friends at Discourse, we’re happy to announce that we’re able to offer Skittish for free to a limited number of events that need the financial assistance.
Last week, for example, Portland Indie Game Squad — a local 501(c)3 support the game development community in Portland — held their second community event in Skittish, in anticipation of their November game jam. Thanks to our sponsors, we were able to offer Skittish to them free-of-charge.
If this sounds like you, we’d love to hear from you. You can fill out an application here and we’ll be in touch soon. We can’t guarantee we can accommodate everyone, but we’ll do our best to get in as many as we can.
And if you’re interested in sponsoring events like these, we’d love to have you too. Get in touch directly for more details.
As of this morning, every single person on the Skittish waitlist has a Skittish invite and thousands of you are now spinning up new events, playing with our all-new interface and new features for the first time. 😱
We’re doing a final round of bug fixes and test events before throwing open the doors to everyone, but thought this would be a good time to look at what’s new since our last big update.
When we built the initial Skittish prototype, we weren’t sure where things were going as we were building it, so it accumulated messy code and an inconsistent UI as it grew. Buttons piled on buttons as we kept adding features, and it was tricky to navigate everything Skittish could do, especially for your first time.
Splitting off from the original prototype, Simon took on the immense task of starting fresh, refactoring everything into a much more consistent and scalable frontend.
Virtually every bit of Skittish was touched by this upgrade, based on the generous feedback of our beta testers. In the process, it’s all shinier and simpler to use, from the camera and editor to the icons and menus for customizing and navigating events, and we hope a much better experience than before.
We added a minimap showing your current location relative to other players, as well as special objects like doors, stages, video screens, and channel zones.
Zoom and pan around to explore the whole space, and you can click anywhere on the map to move there. Never get lost again!
Our redesigned editor shows thumbnails for all objects, and groups together special interactive objects like room portals, video embeds, and stages.
A frequent request was customizable signs, which could be used for navigation and wayfinding, providing schedule information, or just more detailed information about the event.
We added a new Sign object, which can be customized with a title and clicked on for more information, with support for clickable URLs.
The new Attendees menu shows everyone currently online and in the space and which room they’re in, as well as offline registered people. Clicking any attendee will show you their photo and profile information, if available.
For event organizers, they can quickly take admin or moderator actions from this menu: banning users, muting them, or assigning them special roles.
More User Roles
Speaking of roles, we now have more granular permissions. In addition to the existing Speaker and Admin roles, there are new roles for Event Organizer (access to moderator tools), Editor (customizing room layouts), and Video Controller (control embedded video screens).
Animal Avatar Picker
Our improved avatar picker lets you see all the options at once with thumbnails of each, and you can change your avatar at any time in the preferences menu.
Better Mobile Support
Skittish is best experienced on desktop, but it now works pretty great on mobile too. You can tap around, talk to others, chat, and do almost everything that you can do on desktop. Try it out!
Maybe less exciting to some people, but pretty thrilling for us, there’s now self-service billing for our basic Creator/Community tier with Stripe. When you run out of audio minutes in the free tier, you’ll see an alert and can upgrade yourself immediately.
Help & Tooltips
We’ve been adding tooltips for inline help for any of the less obvious features in Skittish, and added a help site, a growing searchable resource of FAQs and documentation with links to contact us.
We’ve added a bunch of new objects, courtesy of the brilliant Joi Fulton, who made our delightful hot dog truck, velvet rope, microphones, bean bags, and other custom objects.
If you’re not on the mailing list and didn’t get an invite, don’t worry — we’re opening to everyone ANY DAY NOW. It’s not too late to sign up to get notified when we throw the doors open. See you soon.
Over the last month, we opened Skittish to our first public events: a select group of conferences, festivals, and social events that run the gamut from casual hangouts and parties to livestreamed talks and film screenings. Throughout it all, we were adding new features and fixing bugs daily.
With luck, this will be the last update before we start sending out invites for people to create their own events. We’ll send them out roughly in the order you signed up for the announcement list, so get on there if you haven’t already!
If you’re interested in hearing more about the project, I did a talk at FutureStack from inside Skittish that was livestreamed on Twitch and broadcast back to Skittish. It was like the inception of conference talks, and gives a good look at some of Skittish’s new features.
With that out of the way, let’s get to all the new features! There’s so much to talk about.
We added global text chat, a way of communicating across an entire event and between rooms. Messages display as notifications at the bottom of the screen and fade away after a time, but the backlog is available by hovering over the chat area or opening a persistent sidebar.
Links and emoji are supported, as well as moderator tools for removing messages individually or banning a user from chat and removing all their messages at once. Rather than deleting messages, they’re hidden from public view but viewable by other admins/moderators.
Access to Skittish events can now be controlled in event settings with three options:
Public. Anyone can join.
Password. Set a global password to join the event.
Invite-Only. Only people signing in using approved email addresses can join, either added to Skittish directly or synced with a shared Google Sheets spreadsheet.
We’re particularly excited about the Google Sheets option, which allows your team to manage the email whitelist without ever touching Skittish. You can use tools like Zapier and Zoho to connect ticketing solutions like Eventbrite to Google Sheets, keeping your list of attendee email addresses up-to-date at all times.
Skittish’s audio supports up to 150 people talking together in a single room, and you can have as many rooms as you like in a Skittish event. But what if you want to have more than 150 people in one room?
We now have a solution: Channel Zones are configurable private audio spaces, allowing you to split a room into multiple separate audio zones, each with their own localized audio settings and up to 150 people talking in each.
Channel Zones can be as big or as small as you like, placed with Skittish’s editor, and the spatial audio can be configured for voices to carry widely, close together, or disabled entirely.
For example, the Flatpack film festival wanted attendees to be able to talk anywhere in the space, but didn’t want nearby conversation to be audible near the screen. They also wanted to silence chatter near the screen during the movies. A Channel Zone placed around the video screen made all of that easily possible.
The Akita Project created multiple meeting rooms in close proximity, and used multiple Channel Zones to make sure that conversation between them didn’t overlap.
And if you need to make an announcement, Stages will let you broadcast to everyone in the room, even if they’re in a Channel Zone.
User Roles and Permissions
In the Event Users list, you can now assign “Speaker” or “Admin” roles to any user, giving them special permissions for the event. Admins have access to the editor and moderation tools, while speakers can use stages to broadcast their voice to the entire room.
Stages, used to broadcast your voice to the entire room, can now be marked private, limiting their use solely to speakers and admins only.
Video Screens, which allow embeddable video from a variety of services, can also now be marked private, only allowing admins to start, pause, or change videos.
Previously, all Skittish events were open all the time. Now, you can control when they’re open for attendees in the Settings.
When an event’s closed, admins and speakers can still join the event, allowing you to customize the space and rehearse with your speakers.
Anyone else attempting to join while it’s closed will see a waiting room message. Once the event’s opened, all waiting attendees will automatically join.
When the event’s over, event admins can close the event and all regular attendees will be kicked!
Improved Video Screens
In addition to our new public/private video screens, we added a few new options to make videos more flexible for everyone.
Videos can be specifically set as livestreams, forcing them to always start at the current real-time timestamp, while non-livestreams will start at the beginning.
Admins can set the master volume for a video, letting you keep it quiet for background music or loud for official programming.
Finally, attendees can now adjust the volume themselves to their personal preference by hovering over the screen.
This is kind of boring to talk about, but it was a tremendous amount of work and we’re really proud of it. In short, we spent a lot of the last couple months making sure that Skittish performs well under load and works with large groups.
We simulated activity with bots, like in the video below, and added optimizations to handle extreme load with clusters of hundreds of attendees piled on top of each other, a situation unlikely to happen in practical use. We reduced avatar detail, in some cases only showing the avatars closest to you, to make sure Skittish always functions even in huge groups.
As far as web apps go, Skittish is pretty intensive with its use of 3D environments, animated avatars, lighting, physics, real-time audio, and embedded video, and our work here is far from over, but it’s something we’re excited to push the limits on. We don’t yet know what the upper capacity for real-world events is — we’ve only done events with around a hundred attendees so far, but it should now be able to handle several hundred with the use of multiple rooms and zones.
The editor now lets you move and rotate individual objects
New objects, including fences, food (sandwiches, pizza!), water, and bean bag chairs
Doors now show a count of people inside the room
Better speaker indicators: characters grow bigger when you talk
Smoother camera movement
New animal avatars: Cheetahs, hippos, pelicans, flamingos, and more!
That’s it for now! We should start rolling out invites later this month, along with pricing and other details. Stay tuned.
So much happened since the announcement last month, it’s hard to know where to start!
Some people wrote nice things about us, including articles in The Verge, WIRED, and New World Notes, and tons of excited tweets, which was nice to see.
And wow, we got so many emails. We’ve spent the last month giving demos to so many interesting event organizers, creators, artists, and others hoping to use Skittish, and every time it’s a sheer delight, showing people around the little world we’ve created.
We’ve added so many new features to Skittish, I decided to make a video tour of the new features since it’s easier to show than tell.
Let’s break down some of what’s new, and talk about what’s coming next.
The biggest change is kind of nerdy but it’s huge: we’ve switched from peer-to-peer WebRTC and WebAudio for our spatial audio to High Fidelity, a new service providing spatial audio for platforms like ours.
What does this mean? In simple terms, instead of trying to connect every person in the space to one another, we now send audio streams and positional information to High Fidelity’s servers, where they transform it into a personalized spatial sound collage for every attendee in Skittish.
This means much better audio quality, more accurate 3D sound, lower latency, more cross-browser compatibility, many more simultaneous audio streams per room, and a much better experience for everyone.
We massively expanded our asset editor with the ability to import new 3D objects, and edit their properties including scale, position, colors, and collision details (i.e. if you can bump into them or not).
What does all this mean? Well, a ton of new objects for you to choose from, from flowers and donuts to lampposts and pirate ships.
But it also means you can import any GLTF/GLB object, of which there are thousands to choose from in stock asset libraries online, both freely-licensed and paid. You’re no longer limited to what we decided to import—although there are limits on the size and complexity of the objects you can import, since that will affect performance.
You can design the space to look however you want, though we plan to offer some nicely-designed starting points for you in the form of room templates you can customize, if a blank slate is too overwhelming.
We added the first moderation tools to Skittish, allowing event creators to view an attendee list with the ability to mute, kick, or ban problem users. These are rudimentary, but an important first step as we build tools to give creators the tools to deal with issues quickly and effectively as they come up.
We’ve also added the ability to open and close event spaces. When closed, attendees attempting to join will go into a waiting room and will join automatically once the event is open.
Finally, we’ve created some tools for enabling and disabling public editing, allowing anyone in the event to use the asset editor to change the space. This can lead to pure chaos, but for a trusted group, it’s really fun.
You can now place stages, highlighted areas of the ground allowing you to amplify your voice to everyone in the room, regardless of their distance to you.
Like in real-life, you’ll still hear audio from people near the stage, allowing for more natural feedback like applause, laughter, and questions from the audience.
We plan on adding additional controls for this, such as assigning speaker roles (so any rando can’t just grab the mic) and quiet areas to prevent distractions during talks.
Video Screen Focus
Skittish already supports adding video screens to events, with support for YouTube (and YouTube Live), Twitch, Facebook, Vimeo, Streamable, SoundCloud, and so on. These screens appear physically in the space, with proximity audio based on your distance to them.
One of the most common features we heard when demoing was the ability to focus on the screens during talks. We could have just made a fullscreen button, but felt that would take people out of the environment.
Instead, we now give you the option of focusing in on video screen to give you a better view, but without leaving the Skittish world.
We’re working hard to open Skittish to the public, but there’s still plenty to do before we can responsibly open it publicly. We plan to continue development and run larger beta tests through April, making sure it’s a stable and safe platform for your community events.
We’re holding our first big public events in May, and hope to start sending out invites for you to launch your own event spaces in late May and early June.
Thanks for your patience, and if you haven’t already, make sure you’re on the announcement list to get notified as we open up.
Oh, and if you have a particularly interesting event or use of Skittish to propose, get in touch.
For the last few months, I’ve been quietly working on a brand-new project and it’s killed me to keep it secret, but I can’t keep it bottled up anymore—partly because I need your help.
Today, I’m announcing Skittish, a playful virtual space for online events. Skittish brings people together into a game-like interactive 3D environment that’s designed from the ground up for socially-driven events, big and small.
With Skittish, I’m trying to make a space that supports the kind of events that I love to organize and attend: creative, experimental, and deeply social.
Here’s a little teaser!
After the pandemic cancelled XOXO last year, I started attending a bunch of virtual events, mostly out of boredom and longing for connecting to other people.
Unfortunately, many of them were pretty uninspiring, basically just fancy webinars with breakout rooms for Zoom. Others were just livestreams with little room for social interaction beyond a global chat room.
Almost all of them left me feeling like I’d either sat through a long meeting or watched a long YouTube video. Was this even an event? Did I actually attend anything?
As depressing as most virtual events were, there were three bright spots of creative experimentation happening over the last year:
Experimental Events. The brilliant MUD-like environment created for Roguelike Celebration and the ongoing series of LIKELIKE events showed how event spaces could draw inspiration from games to great effect.
Proximity Chat. Second Life has supported spatial voice chat for nearly 15 years, but a crop of experimental new platforms started using spatial/positional audio and video to make virtual parties feel more real.
Social Games. Approachable games like Animal Crossing: New Horizons, Among Us, and Fall Guys were breakout stars of the pandemic, giving us new ways to connect to with friends when we couldn’t be together in person.
There are some amazing projects out there, but I started outlining a hybrid of these ideas: an online event venue for large-scale gatherings that used spatial audio, didn’t assume people were comfortable being on camera, with real-time customization of the space, and built in a 3D engine for a more immersive game-like feel.
More than anything, I wanted it to be optimized for fun: interesting to explore on its own, make new friends, and a vibrant place for creators and event organizers to bring together their communities in a new way.
Grant for the Web
As I was working on the first prototype, it was clear this was far more than a side project, and I’d need additional resources to fund development and design.
Desigan Chinniah encouraged me to apply for Grant for the Web, a grant fund he co-created with Coil, Mozilla, and Creative Commons to finance projects pushing forward an open standard for monetization on the web.
So, last June, I submitted a grant proposal to build a “virtual venue for playfully-immersive events in the browser,” in which attendees can financially support creators, organizers, and events they love using the Web Monetization API (or traditional payment methods, of course).
Three months later, I found out I received their flagship level grant. By early November, I received the funds and was able to bring on a contract developer to help out.
How It’s Going
In December, I scrapped my initial Three.js prototype and worked with creative technologist Mike Bodge to build a proof-of-concept prototype in react-three-fiber, a powerful React renderer for Three.js, with a thriving community and helper libraries. Unfortunately, existing client work took Mike off the project a month later.
Through his work on react-three-game-engine, a budding game engine for react-three-fiber, I found Brisbane-based developer Simon Hales, who started working with me on Skittish in January. He hit the ground running, adding much of the functionality you can see in the current app.
It’s still early in development, but this is what Skittish supports so far:
A game-like interactive 3D environment, with a fixed camera perspective, simple navigation controls, and animated avatars
Positional stereo audio, allowing you wander in and out of conversations naturally, with sound playing relative to your current position
Inline creation and editing tools for collaboratively customizing the world in real-time with 3D objects
Embedded inline videos with spatial audio for watching or listening to livestreamed or pre-recorded media from YouTube, Twitch, Facebook, Vimeo, Soundcloud, and more
Support for multiple interconnected rooms
Adding Web Monetization payment pointers for streaming payments to event creators
Special thanks to Sam Buttrick, who created the banners and profile images you can see on social media and at the top of this post. Sam’s a Portland local, a recent PNCA grad, and I loved her work on Instagram so much, I approached her to create some illustrations for this announcement. Go hire her!
What I Need
So that’s what I’m working on! I hope to start running events in Skittish in the next couple months, and opening it up for other people to use for their own communities. In the meantime, I’m currently looking for some help.
Beta Testers. I need a group of willing trusted beta testers to show up once in a while to help load-test, spot performance issues, and give feedback as we build out features. You’ll get work-in-progress previews along the way, and help shape what Skittish becomes. If that sounds interesting, sign up for the mailing list to get notified.
Creators. I’m intent on making Skittish into something that individual artists and creators can use to bring together their own community, whether it’s debuting a new video on YouTube, doing a book reading, a live concert, or playtesting a new game — and make money doing it. If that sounds like something you’d be interested in, get in touch.
Event Organizers. After having co-organized seven years of XOXO, I empathize with the plight facing event organizers right now who are struggling to convince attendees and sponsors to pay for lackluster events. I want to make events that are unique and valuable, worth the time and energy to show up for, and worth paying for, so you can continue to support yourself doing what you love. If you have an idea for an event you’d like to run in Skittish, I’d love to hear it.
Environmental Artist. I’m looking to immediately hire a freelance 3D environmental artist to help design a space for everyone to explore, somewhere between a festival grounds and Disneyland—warm, approachable, and playful. Candidates will be comfortable working in flat-shaded low-polygon constraints optimized for the web. Aesthetically, I’m inspired by games like Alba, WATTAM, Untitled Goose Game, Ooblets, Windosill, Donut County, and I Am Dead. If that sounds like you, email me a link to your portfolio. Introductions welcome!