My friend Floober brought some recent changes VRChat is making in chat, and I thought I’d jot down my thoughts.
The problem with the VRC economy is the same problem as with most “platform economies”: everyone is buying lots in a company town.
This was the precipitating announcement: VRChat releasing a beta for an in-game real-money store.
Paid Subscriptions: Now in Open Beta! — VRChat Over the last few years, we’ve talked about introducing something we’ve called the “Creator Economy,” and we’re finally ready to reveal what the first step of that effort is going to look like: Paid Subscriptions!
As it stands now, creators within VRChat have to jump through a series of complicated, frustrating hoops if they want to make money from their creations. For creators, this means having to set up a veritable Rube Goldberg machine, often requiring multiple external platforms and a lot of jank. For supporters, it means having to sign up for those same platforms… and then hope that the creator you’re trying to support set everything up correctly.
(The problem, of course, is that “frustrating jank” was designed by VRChat, and their “solution” is rentiering.)
Currently, the only thing to purchase is nebulous “subscriptions” that would map to different world or avatar features depending on the content. But more importantly, this creates a virtual in-game currency, and opens the door to future transaction opportunities. I’m especially thinking of something like an avatar store.
I quit playing VRChat two years ago, when they started to crack down on client-side modifications (which are good) by force-installing malware (which is bad) on players’ computers. Since then I’ve actually had a draft sitting somewhere about software architecture in general, and how you to evaluate whether it’s safe or a trap. And, how just by looking at the way VRChat is designed, you can tell it’s a trap they’re trying to spring on people.
The Store of Tomorrow🔗
Currently, the VRC Creator Economy is just a currency store and a developer api. Prior to this, there was no way for mapmakers to “charge users” for individual features; code is sandboxed, and you only know what VRC tells you, so you can’t just check against Patreon from within the game1.
But the real jackpot for VRC is an avatar store. Currently, the real VRC economy works by creators creating avatars, maps, and other assets in the (mostly-)interchangeable Unity format, and then selling those to people. Most commonly this is seen in selling avatars, avatar templates, or custom commissioned avatars. Users buy these assets peer-to-peer.
This is the crucial point: individuals cannot get any content in the game without going through VRC. When you play VRChat, all content is streamed from VRChat’s servers anonymously by the proprietary client. There are no URLs, no files, no addressable content of any kind. (In fact, in the edge cases where avatars are discretely stored in files, in the cache, users get angry because of theft!) VRChat isn’t a layer over an open protocol, it’s its own closed system. Even with platforms like Twitter, at least there are files somewhere. But VRChat attacks the entire concept of files, structurally. The user knows nothing and trusts the server, end of story.
In order to use custom avatars, users register with VRC and upload them to their VRC account. Once the assets are uploaded to the server, they become available in game. There is no way to self-host a game, and no way to sideload an asset.
This gatekeeping power VRC has reserved to itself is the only chance it has to get creators — now keeping 100% of their profit — to switch to a model where they’re charged 50% of their gross income in rent.
Boiling the Frog🔗
VRC can’t just shut down user assets now, or they’d be a riot. But the strategy is usually to boil the frog. Every change for the worse will piss people off a little bit, but VRChat is primarily a social experience, and so you stay in VRChat to stay with your friends. The switching costs are astronomically high, they’re your entire social life. All VRChat needs to do is make the developer process worse and worse, push people to the official store, and eventually “end support” for user-uploaded content.
Here’s how they do it. Every single asset has to go through vrchat’s servers. I would say they require everything to be “notarized” by them, but it’s worse than that: they only let people consume the game streamed directly from them, so what they send the client is entirely up to them.
All they have to do now to shut down the existing ecosystem is lock down and license the “developer program”. By default, users could only use avatars they get or buy in-game; you wouldn’t be able to upload assets without paying for some sort of “developer account”. The developer program would be prohibitively expensive to “buy into” just for one user’s worth of content, so individuals would choose to use the storefront because custom assets are too expensive to use, and developers would have to sell on the rent-siphoned storefront just to break even to pay for their own licenses. It’s the same as Apple.
VRChat’s architecture is also designed to separate the play-world from the real world, which means there are lots of free avatars that you can’t buy or download because there’s no linked download. Public avatars aren’t portable, and are frequently abandonware: you can’t export them, you can’t save them, you can’t edit them, you can’t reuse them. VRC’s architecture locks them up.
So even free avatars are a problem. And if you see someone with a paid or commissioned avatar, there’s no great way currently to get that source, even if you wanted to pay for it. Which, in hindsight, seems like a problem VRChat created so they could fix it with an integrated avatar store.
The current VRChat ecosystem works by doing everything twice: there’s a “master” set of content in the model files people actually have and sell and circulate, and there’s the ephemeral, in-game “experience” part. The former is the only part that works well, because VRChat doesn’t control it, and they’re trying to push people away from that toward the in-game interface.
Like I said, the whole architecture reads as a big springtrap to me, and that’s one way you could easily trigger it. It is conspicuously easy for them to snap the trap shut, and their entire architecture seems to be building to that. It’s been building to that for years. No self-hosting is a part of that, no local asset pipeline is part of that, no client mods is a part of that, even not being able to export avatars you picked-up-but-didn’t-make is part of that! Trap, trap, it’s a trap.
People do sometimes have maps with special features for patrons, but they do this by hard-coding their VRC ids into the map, rebuilding it, and republishing the “current” version. It’s not dynamic or scalable. ↩