Hacker News new | past | comments | ask | show | jobs | submit login
Create Previously Impossible Games (improbable.io)
60 points by ColinWright on May 26, 2018 | hide | past | favorite | 35 comments



Um, I was a developer on PlanetSide 2, and we had zones that supported over a thousand concurrent players. It remains a problem only of having experienced developers analyzing the problem and iterating on solutions until you've reached your target. Not only is there no magic bullet, there's no secret sauce, either. Proximity systems are key to scaling. If you have two player characters who are within a given range of each other, they will be grouped together into a batch of clients that share updates with each other. Clients on a conventional arena shooter all share updates with each other each network timeslice. But for MMOs, these update groups are dynamic.


What do you mean by "zones"? 1000 players sending to all other 1000 players?

Where these group batches P2P or client/server?

My solution to scaling is to only send packets when an action is taken, I will cut up the rotation in pie angles so analogue movement does not spam the server.

Only allows for one-shooters though, no spraying.


Planetside 2 has (it's still active?!) a borderless map of continent with players' actions sended by server to clients based on range AFAIK.

Disclosure: not even close to development, just played a couple of hours.


Yes, that is accurate.


Ok, but how, with square grid neighbors?


If there's a square grid in that process for Planetside 2, it'd have to be for coarse culling, not anything final. The game is pretty precise about ranging this stuff, if not always responsive (pop-in can be pretty bad in dense fights).

The US East server had ~900 people on it an hour ago, and this isn't a peak time. With that many people, there are two continents open, but usually most of the players are on one continent or the other. Continents are big, and support many separate battles at once (spatially separated, no hard lines). A very big battle may have 200+ players, and with certain exceptions players in it won't need to know anything about players outside that particular battle.

If there are actually 200+ other players near you (within the nominal 300 meter range where updates should be sent), the server won't be sending you data on all at once, just whatever it thinks is the most relevant subset (hence the pop-in). It also breaks the 300-meter default to send data on and for snipers (and probably some other stuff) a bit further out.


I can’t describe how little I trust this company’s software for an actual production system. There is so much nonsense in the marketing of this product with very little in the way of a technical whitepaper explaining how things work. Backends for MMO type software typically are highly specialized depending on the game itself and it would not surprise me in the slightest if this was all overfunded vaporware


Remember the Unlimited Detail tech demo? While that looked cool I still don't see those techniques in use in any way a decade later.

Your criticism is well made.


Well, point cloud renderers are a real thing. There are open source libraries that let you explore millions of points in your browser: http://potree.org/. I even saw a demo (http://nurulize.com/) showcasing animations but I think the main problem with point clouds is that there is no good solution for physics/lighting yet.


The thing that always gets me is people advertising game server engines using pretty in-game footage. That's not the server, that's CryEngine or whatever.


Unreal and Unity's marketing revolves primarily around flashy studio-funded PBR-based real-time rendered cinematic animations driven by people with far more than just a decade of experience.

The people paid to create these promotions could build the same shit out of absolutely nothing, completely from scratch. They are all highly experienced and don't need to lean on either platform. It's all a ruse, and perusing projects built with either "engine" (which neither of them are by any stretch of the historical definition) show how much leverage they truly provide developers.

You'd just as easily find that you could hammer a nail with your wallet as you'd find yourself able to quickly build a prototype with either sorry excuse for software.


Anecdotal single point of evidence: I was trying something for a project at work, and between raw OpenGL, unity, and unreal, the latter two let me get a POC up and running way faster. I work with dozens of ex game industry people, and none of them have done anything from scratch for AAA. Every major studio has tons and tons of layers of engine abstractions to make development easier and faster.

An apt analogy in the service world is that when I want to write a service, regardless of how many years experience I have, I don't implement my own load balancer. Could I? Yes. Should I? Only if my project is a load balancer.

Build what you need. Buy/ participate in OSS for the rest.


The issue is that Unity/Unreal are not designed from ground up for open world simulations. That’s why majority of open world games have custom engine behind them.

A lot of engine parts are off the shelf solutions for physics, animation, production tools etc,but they are all put together in a specific way for a specific project.

Also if you use 3rd party software in games it creates huge risk, especially when you don’t have access to source code or support is bad.

So in the end of the day a lot things are written from scratch or have an extremely custom integration.


As I understand it, this case of third party code not fitting the bill is part of the reason Star Citizen is so behind. They’re using CryEngine and have had to rip out or change a lot of the internals.


I assume with their money, they would have full license with source code.

The bigger reason is scope, fun factor and bugs.

Scope is huge, fun might be not there and bugs probably in 100 thousands.


Bossa Studios are using it.

I agree that it is quite customised, but at best they might have 5-10 customers in next 2-5 years, so they should be able to support them.


I was recently contacted by someone looking to hire me to Improbable. They linked this puff piece which made its way into Wired, and I had a chuckle: http://www.wired.co.uk/article/improbable-quest-to-build-the...

> MetaWorld, a SpatialOS app being developed by San Francisco-based HelloVR, lets two people play chess in virtual reality together. MetaWorld is also persistent – which seemed like a great idea, until players started throwing virtual chess pieces into the grass, and the Improbable team had to crawl around on their virtual hands and knees to find them.

Either Improbable made it impossible to add a reset button to object positions in their SpatialOS product... or they're hyping their product by showing how much busywork their employees are doing.

Technology isn't the reason that nobody's making hyper-realistic video games, game design is. A lot of new game developers starts out with the idea of "the game where you can do anything", and then slowly learns why other games don't attempt to do that: real life is honestly quite boring and tedious.


The only time I've seen "the game where you can do anything" work out is VR Chat. But that's only because "anything" here means "anything you can make in Unity and publish to the servers", so it's less a game and more a multiplayer creative experience.


That valuation is a total joke. How are they ever going to grow a 1 billion dollar business based on a server engine for videogames? The market for MMO server engines is tiny. So either they must sell it for millions per customer or their real goal is realtime HPC simulations. Even if they do find customers they are still at risk of google or amazon commoditizing SpatialOS.


It is very nice video.

I am still not too sure why Improbable just don’t make their own games.

That’s how Epic basically marketed their engine.

This type of games require massive investment of time and resources.

I feel it will be much easier developing your own game vs trying to pursuade studios spend millions of dollars on development, which is inherently risky.


> I feel it will be much easier developing your own game vs trying to pursuade studios spend millions of dollars on development, which is inherently risky.

In general it's easier and much less risky to persuade someone else to spend millions of dollars on something than it is to spend millions of dollars on the thing yourself. That's basically what venture capital is, right?


Well you need to have huge marketing and support for B2B. And then B has to actually make money for you to get anything.

It is really hard sell in gaming world to get paid for engine licence upfront, because developer is only going to make money on launch. So even if you sign somebody you are only going to see this revenue when they launch 2-5 years from signing date.

On top of that gaming ecosystem is very much platform and IP driven. So if I want to distribute MMO on Steam using existent IP, about 50-40% of revenue is gone. If I use Unreal it is another 5%. Then there is marketing, live support. It is super hard to take more from this cake.

It is not the same as selling enterprise software where enterprise already has core business and revenue.

So in Improbable case with 0.5 B raised spending 20m on game should be no brainer. It might be complete waste, but they are going to learn so much more what industry needs and develop much bigger set of tools for this kind of games.

I really like idea of the company, just implementation very much VC driven and they are clearly not experts in the field.


Before Unreal Engine 4, it was actually easier to build games with Unreal, because you had a platform to build off of with modding as a starting point. In UE4, you do _everything_ yourself; this isn't an exaggeration.

A brief look at Unreal Tournament results in viewing an abandoned project. Working with the engine feels just the same.


The title feels a bit clickbait, perhaps "Create multiplayer games with unprecedented scale" might be an improvement.


Doesn't seem like it would be a great business decision to bind the core of your game to a proprietary cloud service.


There are often agreements put in place for situations like this, where the source code and instructions for running it would be put in escrow so that should the company go under or disappear in some way, their client would be able to carry on running the service in some form.

I believe this happened with FoundationDB when it got bought by Apple. The bigger companies who were paying for it didn’t lose out too badly, although it’s obviously an inconvenience.


Thousands of companies do that with AWS.


If you want to sell a game engine, sell a game first.


Are previously impossible games necessarily better games?


No, but they're previously impossible. You have at least a passing chance of producing something novel and good.


I'm biased by sunk cost (http://fuse.rupy.se/about.html) and skeptic of SpatialOS (which looks like a pile of garbage on top of netty/akka).

But I would have to say a resounding _yes_.

Action MMOs are the final medium, one day we will all be either living in Mad Max or we will be plugged into one, or both!

Imagine WoW, then PUBG; and extrapolate.


The problem with MMOs is that there’s so many people though.


People are fun, specially if you remove their ability to be mean: https://store.steampowered.com/app/486310/Meadow/


If you think that's "removed their ability to be mean" you're not thinking hard enough.

Ferinstance, Chinese players could make a grass mud horse...


Rupy's so focused it's an example in design.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: