7 ms·
WebAssembly is coming for games next. Near native performance, players can join with just a link, and no 30% cut that developers have to deal with.
by astlouis44 5y ago
WebAssembly is coming for games next.
Near native performance, players can join with just a link, and no 30% cut that developers have to deal with.
- anonymousab 5y agoYou only deal with the Steam or EGS or Gog cut if you're utilizing their storefront; if you are just hosting the game on your own site, then whether that game is a webassembly package or a desktop application, you don't have to pay some gatekeeper (other than your file host). Same thing with Android, though there is a bit more friction there.
- flohofwoe 5y agoThe "gatekeeper" in this case is Windows SmartScreen. SmartScreen will pop up a scare dialog unless the installer has enough "reputation points" by being popular or signed with an EV code signing certificate (which is a lot more expensive, and hassle to obtain and use than a regular code signing certificate). In any case, for ease of distribution nothing beats an URL which when clicked immediately starts the game.
- yesco 5y agoThis doesn't really solve the issues with advertising though. I believe the main reason so many developers want their games on Steam is because of the greater attention they get rather than the distribution side of things. That said, I think the niche of casual remote party games would probably work very well here. During the height of the pandemic my friends and I started doing a lot of "remote game nights" with various different kinds of games. However since most of them rarely played games, owned macs and weren't very technically inclined, the games that had the least friction were generally the browser based ones. Since party games by nature tend to be great at organic advertising and benefit the most from quick easy installs, I think there is a big opportunity here that not many have taken notice to yet.
- softfalcon 5y agoThis is it. What kills a game isn't its platform, but where and how you sell it. Sales and user eyeballs matter more than even what game engine you use. We use Steam, Xbox Live, PSN, etc not because we wouldn't prefer to use our own store, but because no one cares about anything else.
- astlouis44 5y agoChrome has over a billion potential users of a game, and the reason it's so compelling is that fun is just a click away. Local installs of a client can be a thing of the past.
- softfalcon 5y agoUnfortunately, choosing to not use Steam, GoG, or similar is simply out of the question. The reality of you selling your game at a profit without the help of one of these app storefronts is improbable. Keep in mind that even if you somehow become successful in this regard, these storefronts have a vested interested in making sure you and your technologies fail. Edit: apologies if I seem dire, I'm actually on your side and WISH that the world was a free market without all these gatekeepers. Myself, my partner, and many of my close friends constantly battle with these "gate keepers" as game devs/designers and I wish they would go away, but the market (users) love (to use) them even when they hate them.
- anonymousab 5y ago> Unfortunately, choosing to not use Steam, GoG, or similar is simply out of the question Sure but that situation doesn't change by simply distributing a webassembly package through a website. Or rather, that situation is no different than if you distribute a desktop binary through your website. In both cases you are eschewing the storefront.
- Elidrake24 5y agoIt's pretty clear you haven't worked in that industry. Per your logic, no one should have that issue now, you can sell your games on your own site without issue (in fact you can sell your own Steam keys without the 30% fee).
- deleted 5y ago[deleted]
- q_andrew 5y agoDownload time is the biggest setback for games in the browser in my experience.
- flohofwoe 5y agoThat's why games running in browsers need a different approach to asset loading, instead of downloading everything upfront, stream the asset data directly from CDN when needed. It's nothing new, games had to deal with streaming data from slow mass storage devices throughout their entire history.
- jbnorth 5y agoThat's not an option for most games. That means I now either need to be online-only with a good enough internet connection and latency to stream this game (a la Stadia but worse since it's not just video) or I need to download it into an offline cache which now brings us back to the same spot.
- flohofwoe 5y agoTraditional MMO games have the same requirements, and it works fine. Some of them also allow starting the game while only a fraction of the asset data has been downloaded and continue downloading while the game is running.
- jcelerier 5y ago> Traditional MMO games have the same requirements, and it works fine. I mean, no. I definitely wouldn't want to endure the waiting time I have every time I play some MMO if I'm playing a single player game.
- astlouis44 5y agoOur team is working on exactly this - an asset streaming system developers can utilize for Unreal Engine that only fetches what a players needs to see at any given moment, nothing more. Combined with compression, you can get players into desktop-quality games in WASM in seconds on most computers.
- skadamat 5y agoYeah there's lots of alternatives to the app stores for windows games. You can also just sell direct to consumer. The real challenge with webassembly as it applies to games (at least large ones) is the asset size. AA - AAA games are 20-100 GB and that can't just live in browser cache. Also, to be honest building a complex game and shipping it to the web is kinda crap shoot for other reasons. Games are power hungry, and don't want to be limited by browsers. Also, a browser is a massive application that sits around consuming resources that a AAA native game could use. But of course, I imagine games will be developed differently to take advantage of the web (smaller games, streaming in levels / textures as needed, etc).
- flohofwoe 5y agoThe total asset size doesn't matter much (see Google Earth which is probably backed by terabytes of data), but how much new data the game needs to present to the player per second (which means the games needs to be designed for a minspec bandwidth just like it needs to be designed for a minspec CPU and GPU).
- lostinroutine 5y agoHow would the problem of huge (dozens of GB) graphics assets be solved? Is there a current/planned way to have the large WASM binaries and assets stored on the computer?
- softfalcon 5y agoI feel your excitement and wish it were true. I'm even building a game to leverage this newly supported tech. The good news is that the tech works really really well and is very performant in the browser. You can do a lot of cool stuff! The bad news is that it's not the tech that is holding back web based game dev. It's the users. Market research and testing has shown that users dislike "just playing" a game in the browser. This is particularly true in the AAA segment that webassembly and its perf gains would best serve. Players who play the high profile games that web assembly would allow you to make games for (think Fortnite, CS:GO, etc) all want to play games from a trusted download from a trusted store, not some random website. Please note, random is used very loosely here to mean "any store/website that isn't Apple Store, Play Store, Xbox Live, PSN, or Steam". I foresee that we'll need some major player with a big game like Fortnite, Roblox or Mojang to spearhead using web deployed games before we'll see anything happen in this space. The existing "install to disk and play" is working just fine and game devs don't really see any reason to change that. The other major thing is that most "slightly" big games (even smaller mobile ones) have assets in the minimum size of 4-10 GB of data. Even if you can render the game in browser, you have to download those assets. Yes, of course you can "load only what you need" but for many many games (source: my wife is a game designer and I'm a game programmer/web dev) that still entails at least 1 GB of data that would need to be loaded and is difficult to cache client side in the browser.
- kitsunesoba 5y ago> Market research and testing has shown that users dislike "just playing" a game in the browser. This is particularly true in the AAA segment that webassembly and its perf gains would best serve. > Players who play the high profile games that web assembly would allow you to make games for (think Fortnite, CS:GO, etc) all want to play games from a trusted download from a trusted store, not some random website. No doubt this is partially thanks to the numerous game-like ads that link to exceptionally cheaply made web games. I remember a time in the late 00s and early 10s when browser based games were starting to flower, but then the spammy stuff took over and their popularity dropped like a rock. I would hazard a guess that the overhead of navigating to a specific site and the clunkiness inherent to browsers being a 1024-in-one multitool doesn’t help matters. It’s nicer to just fire up Steam and have all your games neatly listed, all free of extraneous browser chrome and whatnot.
- hypertele-Xii 5y agoIt's a long way from being a usable gaming interface. There's too much "convenience UI" baked into browsers that trips up gaming. Pressed the wrong button? It was a browser hotkey for history-back and you just unloaded the game. Have add-ons enabled? Whoops they are messing up the controls.
- Kapura 5y agoI've been working in games for the better part of a decade, at AAA scale for the last three years, and this is pure fantasy. It is extremely difficult to develop high-quality games for a console, which has fixed hardware specs and a single vendor for the SDK. Any layer of emulation on top of that creates new problems and dilutes every single aspect of performance, sometimes in unpredictable ways. On top of that, building things that work consistently across browsers and across time is an extremely cursed problem. Insomniac Games, makers of the new Spider-Man games, spent several years trying to port all of their development tools and workflows to be web-based and work in Chrome. And then, when they got there, it turned out to be terrible. Google would update the browser and key tools would break and nobody would know why. The tools folks had to work in Javascript, while the majority of the engine was still in C++. The call was eventually made to migrate the tools back to native exes, which was another multi-year process, but nobody missed the Chrome tools. Clicking a bookmark in a browser turns out to be about as difficult as clicking a desktop icon, and the stability is significantly improved.
- coldtea 5y ago>I've been working in games for the better part of a decade, at AAA scale for the last three years, and this is pure fantasy. Maybe we should stop caring for AAA games then? What happened to gameplay instead of "this new game has 10% more detailed graphic assets"?
- Kapura 5y agoWell, I'm a gameplay programmer and I seem to always be busy somehow, so idk maybe you need to play different things?
- Godel_unicode 5y agoMiles Morales was dope, really nice work.
- coldtea 5y agoA, the 'individual example supposed to refute general trend' fallacy... As if I said/meant that gameplay-based games didn't exist (as opposed that the industry and market has a heavy AAA/get newest GPU/ emphasis). Not to mention that AAA light on gameplay and full on assets also hire gameplay programmers. It's not about gameplay programmers being busy, or gameplay-heavy games existing. It's about having many more gamers stop chasing graphics to the detriment of gameplay - or in fact, stop chasing graphics, period.
- sofixa 5y agoCloud gaming also achieves this, although in quite a different way