Yeah, it feels like Softbank is paying out someone and channeling it through this company. Either that or someone with too much money and no sense just finished bingeing RPO.
I honestly could not help but laugh at the Softbank for burning their money like this. But what do I know, I haven't raised that kind of funding before, maybe running boxes on aws with persistent storage is too difficult for most game developers.
$500MM though? The skeptic in me is saying they're going to write the majority of this down in 5 years.
Yup, and they recently wrote down half a billion in Ola and Snapdeal in India.
Basically, this investment gives Improbable a 5-10 year time horizon to basically do whatever they want. But they can't just work with every game dev studio under the sun -- they actually have to grow the entire MMO market in order to actually turn a profit for investors.
Wow, that's a big jump from their last round a couple years ago with a16z that valued them probably somewhere around 60m-70m. I'm surprised since they don't seem to have real customers yet, just some demo games they partially funded. But it's quite possible the investors know something I don't.
If a Telecom like SoftBank has piles of money to spent gambling buying and selling international companies (ARM, Improbable, Supercell, and others), may be there is not enough competition in Japan. Do they have huge profits because of not having enough competition, or because they don't they have to return profits to the investors?
Whatever their problem is, they're not the only ones to have it. Japan's been in the doldrums for decades; my understanding is that the country turns a profit, as it were, but doesn't have many opportunities for further investment.
Of course, Japanese capital isn't the only capital that chases stupid stuff, especially not right now. We're all Japan these days. :)
You can buy SoftBank telecom suscriptions and services [1], with its trademark, while e.g. Berkshire don't sell soft-drinks (Berkshire has Coca-Cola stock, but it is not Cola-Cola). So, in my opinion, it is not the same thing. Not even close.
I think that's more of a branding thing.
Telecom is just one of the things SoftBank does and it just happens to be more visible to consumers.
Berkshire owns Geico but you wouldn't call Berkshire a insurance company.
You can buy Berkshire Hathaway real estate services, with its trademark. Their logo appears on signs outside private homes for sale all over the place.
Sure, the point is what is their core business. E.g. Sony core business is electronics, despite having financial, entertainment, and other branches. Same thing for SoftBank: yes, it is a holding, but its main business is telecommunications.
Specifically the two ends of the market; direct-to-consumer insurance (GEICO) and insuring things no-one else can, particularly reinsurance and muni debt (Berkshire Hathaway Assurance, Gen Re).
If you're good at writing insurance it's essentially a great way of getting interest-free loans which they then spin into a huge pile of low-risk, cash-generating businesses (e.g. Duracell, Fruit of the Loom, See's Candies, to pick three Berkshire brands...).
> Do they have huge profits because of not having enough competition, or because they don't they have to return profits to the investors?
Apple has huge profits and a cash pile despite a) having lots of competition, and b) returning profits to investors via dividends and share buybacks. Perhaps there are more options than the two you present?
SoftBank is actually not the largest telecom company in Japan. Though SoftBank does a lot more than just telecom. Telecom just happens to be the more consumer facing business. Also, SoftBank made $50 billion by investing $20M in Alibaba 17 years ago.
> Do they have huge profits because of not having enough competition, or because they don't they have to return profits to the investors?
The second alternative doesn't make sense. You can't say a company has lots of profits because they don't return it to investors.
Earnings (profits) is basically Revenue - Expenses. Whether the company chooses to retain earnings to reinvest in itself, or to return profits to investors (by paying a dividend or repurchasing stock) doesn't change the value of earnings.
In any case Softbank does pay dividends to its investors.
Japan's telecom used to be rather non-competitive, with 3 major carriers dominating the market, mandating locked phones and very likely colluding on pricing and fees. But since we got guaranteed number portability and MVNOs things have been better (I've just switched from Softbank to a MVNO, going from paying $70 monthly to about $25).
Softbank's earnings come not only from domestic telecom but also from its stakes in Yahoo Japan (search/advertising, auctions, loyalty points etc) and Alibaba.
I poked my nose into the Improbable's public API docs. What I saw looked like an OK Entity-Component-System straight out of /r/gamedev + some C# serialization so that you could have Systems (aka "functions") run on different nodes on a network.
My understanding is that their twist on the problem is some kind of dynamic sharding of game entities across a cluster of servers. Different games seem to try to deal with this in different ways:
- WoW - Several servers hosting copies of the main game world, dedicated party servers for instances
- Second Life - A server maps to a specific volumetric "box" that is estimated to be able to handle whatever activity and whatever entities end up in that box
- Eve - A server maps to a star system, local game time can slow down to accommodate more activity
My understanding is that these guys do something else, where they determine sets of entities (players, NPCs and non-player entities) that are likely to interact and shard off the controlling logic to a server. As the world-state changes, the clustering and mapping of entity groups to servers changes and they have some kind of way to move likely interacting clusters of entities seamlessly within the infrastructure.
This has the possibility of supporting huge persistent game worlds with tens of thousands of players at a time without the kinds of ill effects we see with the other approaches.
Interesting, so I guess this still limits the number of entities that can interact with each other on one server but allows for much more non-interacting entities spread out over a large world. But couldn't then lots of players (maybe by accident) meet in one spot and then slow that server down?
I honestly have no idea. Clearly given the number of smart people and amount of money being thrown at the problem (without being able to produce a real seamless massive persistent on-line world without compromises) this is very hard.
I also wonder how it handles very large entities that might span across clusters (say a large spaceship with thousands of entities spread across multiple decks and in different area). Since all of those things are entities in a sense, and there might be many ships, how does it handle this?
No idea, but the fact that this can be asked at all is pretty interesting.
> Clearly given the number of smart people and amount of money being thrown at the problem (without being able to produce a real seamless massive persistent on-line world without compromises) this is very hard.
It's just not worth it. The technical back-end challenge isn't the hard part here, it's the game design. WoW with 10,000 players idling in Orgrimmar isn't fun. WoW with 100 players in a single dungeon isn't fun either, for that matter.
Do those simulations need to be real time and massively multiplayer?
I don't see the need for this tech in the high fidelity city simulation cited in the linked article: that would much easier to implement as an offline simulation.
Training seems like the most likely usage: eg. disaster response or large scale military scenarios.
I have to agree with the earlier poster that tech is not the limiting factor for massively multiplayer games.
No the simulations don't have to be real time or massively multiplayer. A simulation has no players at all so I'm not sure how it could be massively multiplayer.
It would most likely be used to test infrastructure or policy decisions. For example, what happens to your traffic in your city if you add this bus route, or how would a contagious bioweapon spread under certain conditions.
If you don't need real time then why use improbable?
If you want to simulate a new bus route then run an offline simulation using whatever tools you like with as much complexity as you like.
In fact you'd likely want to run your simulation much faster than real time to answer specific questions quickly, like finding traffic or passenger hotspots.
I doubt you'd want to sit there watching virtual buses driving around a 3d city, but rather quickly see heat maps change as you play with parameters.
We deal with such a situation through the fact that SpatialOS dynamically scales the zones that each game engine is responsible for. So if you have many players gathering in the same reduced area then there will actually be multiple game engines allocated to that specific zone and extra engines might even be started if the load requires it. This also works in reverse so that if your player density falls drastically and a single game engine would suffice for your entire world you will only have one running, so you always have the right amount of resources at your disposal.
Such game engines are what is referred to as workers in SpatialOS (https://spatialos.improbable.io/docs/reference/10.3/getting-...) and workers can be of many types: game engines like Unreal or Unity to manage the physics of the simulation, custom workers based on one of the language SDKs that implement AI-like functions, or any other behaviour you want to put in your world: it's entirely up to you to take this as far as you like.
This sounds exciting for large multiplayer games. Are there any games coming out soon that you can share with us that use your technology? (Please be Destiny 2!)
How does this handle a load too large for a single server in an extremely small area? Say, the Halloween War in Eve or just a bunch of morons - say 10k people - gather within a single small valley in a game?
Sure, you can subdivide it as small as you want, but that just increases the overhead by requiring the servers to communicate more. But even if the servers can figure it out, what the client sees seems like a hard problem too.
To answer eximius. In your valley battle example there would be multiple game engines handling the valley.
Whereas it is entirely true that you can always find a counter-example that would break a given technology, troymc is absolutely right in the fact that those counter-examples still leave an overwhelming majority of use-cases that we can handle perfectly well with our approach.
I don't mean to disparage the technology, but I disagree with that my examples are unrealistic. I think people would love large scale battles like that.
No problem. You should definitely ask such questions. If you want to dive into the technicalities, see what people are already doing with SpatialOS and ask your own questions I really recommend having a look at the forums (https://forums.improbable.io).
That said, my previous response was actually targeting your example as being a use-case that falls into the 'realistic' category that we want to address with SpatialOS.
Again, I am not suggesting that you can and should pile-up 1000 players onto 10 square meters, but if you take care when defining your world's characteristics (SpatialOS's entity & components) you will be able to scale up your player density in your battle scenario to a level that significantly exceeds anything that you could achieve with any existing monolithic game server and for a fraction of the trouble as you do not really have to deal with any of the usual networking issues because SpatialOS takes care of that.
I have to admit I'm also quite confused. How does the hand-over of entities between shards work? Surely the shards must reach a consensus about who own each entity... but wouldn't this be too slow for a game loop?
Last time I looked there was a set of coordinating processes that deal with this problem of not just which entity is where but spinning up new instances to run the simulation. It occurs asynchronously to the game state being updated.
> The company believes it has developed revolutionary technology with its Spatial OS operating system ... allowing small developers to create massive simulations without much infrastructure of their own.
If that's the case I can't help but feel this is a gross misuse of the VR buzzword in the headline. This is cool stuff, but we call that cloud computing, not VR.
Because the older meaning of "virtual reality" is similar in meaning to "cyberspace" and not just a euphemism for "3D immersive display". It meant exactly what the phrase implied -- a virtual reality. Displays like the Oculus are a way to experience a virtual reality, but are not full immersion (eg, tactile feedback) and are not the only way we could theoretically experience one. Things like advanced cockpit or vehicle simulators arguably count. (Think things with a mocked up vehicle interior, but windows are replaced by monitors. Often, these are mounted on systems that provide motion feedback.)
That meaning has largely been transitioned to the term "virtual world" (eg, in Second Life's marketing materials) because of the terminology collision around 3D headsets.
I personally think this is an abuse of marketing that destroyed a useful term to a reductionist view because they wanted to co-opt the interest and goodwill around the long history of literature on the original meaning. Other people feel differently.
In your case, you're being downvoted because you're insisting people only use the reductive new meaning of the term, when it was used perfectly sensibly in the older style in the title. (As it would apply, in calling Second Life "VR", since it's a "virtual reality".)
The goal of the simulations can be for example to render some particle system or create some procedurally generated content for use in a game. Many of their tutorials are focused on including their technology in game engines such as Unity. Hence, I would rather call it cloud computing for VR.
This company has to be satirical. "Improbable"? When it crashes and burns it will all be revealed as art, like that time the KLF burned a million pounds.
That reduces to the absurd conclusion that otherwise smart people doing $500m investments do zero due diligence and don't care about being legally bound by fiduciary duty.
I knew one of the founders when they were starting out... one of the other founders is the son of an Indian multi-billionaire, which probably opens a few doors.
The founder I knew told me excitedly their vision for a dynamic interactive world - I thought this sounded like pure nerd crack though wasn't sure if it would actually work as a game. (I built a much more basic dynamic world MMO in university and it ended up with huge drama amongst the player base). I think they pivoted to building a platform rather than a game about a year later.
Wish I'd stayed in touch now, though that seems to happen a lot in the start-up world.
Improbable's SpatialOS is actually a really, really neat piece of tech. For the first time it's becoming easy for an independent developer to build an MMO type application.
With the impending growth of VR (and virtual worlds in general), this is a great candidate for being the foundation of a new generation of apps.
Unity has done this for game development. It's the de facto engine of many research projects, video games, and some applications.
Unity lacks the ability to scale to large projects, however, which is where SpatialOS comes in. It's for projects that are large in scope (encourages/requires better programming practices) and is literally made for scale. The nice thing is that the SpatialOS tech uses Unity, but doesn't require it. It can be used with any engine if desired.
Core of this, is a distributed system that fires of events, and synchronises state between nodes. And to be able to dynamically add and remove nodes as required. Then some integration with games engines.
Does it particularly matter what language it's in? You can build distributed system in any language.
Their documentation and demos shows that you describe the entities, entity state and events in their own domain specific language as a schema. The engine that manages all of these entities can be in whatever language they want, they haven't publically stated. But I have feeling it's in scala. This is the cool bit.
Then they have integration with unity, and other engines. The unity integration has something that will read the schema and auto gen some code, which will allow you send off command/events to the distributed system they've built.
Defiantly useful. But it's easy to replicate with a good team of engineers.
If it were just games, I think you'd be right in there being a relatively low value cap. Gaming is a huge industry, but the issue with persistent words is that to provide value, they need to have addicted users. If i'm not going to keep logging into a game, do I really care that it's supporting a huge number of users or that a tree I felled a year ago is still decaying on the floor somewhere?
There's a low upper limit to how many such games an individual would be willing to invest in (a number not far off 1?). Some MMORPG players will play a few of them, but I suspect most will focus on just one.
I think the real value of this tech lies in its applications outside of gaming, namely huge-scale simulations. There's plenty of opportunity for lucrative contracts with governments, academia, and R&D departments.
No idea to be honest, but i'll speculate about an application of this:
Let's say you're simulating an ant colony, there's going to be a lot of empty space, there'll be choke points with a high number of interactions, and quiet areas with not much going on. You could do a totally offline simulation, and it'll take an unpredictable amount of time to do some number of ticks - because the complexity of each tick is unknowable ahead of time. But if you want reasonable guarantees about how long a simulation will take to run (and assuming there's an upper bound to the complexity), being able to easily and automatically scale up the computing power would be very valuable.
So the utility isn't restricted to real-time, but more generally about having a predictable execution time per tick regardless of simulation complexity.
Of course, this is all speculation, I'd love to hear some real world applications of this.
Wow, are the founders around 26 year old? They managed to build something like this a virtual reality technology from ground up? Or am I missing something.
The big question is, what do you do in a big virtual world?
There's a "build it and they will come" assumption here. There's Second Life, which peaked years ago. There's "There". There's High Fidelity, which is a higher-resolution Second Life with few users. Most of those can be used with a VR headset. But nobody cares.
It's not a technology problem. The current technology is marginally adequate. It's lack of market interest.
Very good point - I guess it could work of someone somehow invented an economy in there that allowed for people to exchange time for money (as in work). No idea what it could be, but in theory - why not, right.
Besides games, there is potential to run real-world simulations. If you can describe the behaviour of a single agent, you can accurately predict how a large number of such agents, e.g. humans, would act given an environment, say a city. Their blog [0] is showing a few such examples, incl. a simulation of the internet [1].
Making it really easy to develop such simulations could open this tech up for people who have applications for it but can't afford to build this kind of thing from scratch as the companies building things like Second Life.
How does VR impact agent based modelling techniques? I could be missing something, but real-world simulations seem entirely possible without needing the extra work for visualisation.
Improbable's SpatialOS is not a VR platform in the Oculus-way. Real-time simulations can be (and are) used as the backbone for super-expansive game universes which are visualised using VR graphics engines (or any other technology, really).
They were discussing this on BBC Today programme this morning. Apparently, it can be used to in fields like biology, economics, geography, where you want to see a model play out.
Of course, whether it will be good enough that researchers will want to pay for it is another matter.
Thinking about geospatial use, there are already plenty of tools that model complex systems and allow realtime or near-realtime exploration of cause/effect - for example a tool called ArcFM that I have worked with allows modelling of utility networks and as a very simple example you could disconnect part of the system and see how the rest of the system is impacted. This type of system implies a significant up front and ongoing cost, and these days is usually based on one of the established COTS solutions. I think Improbable would find this a difficult niche to sell into.
I can see that a utility network could be just one part of a larger system i.e. a rich city model with all key systems modelled, such that you could simulate a tsunami and see what power networks go down, how this affects rail links, where that strands people in the city, what evacuation they may need, etc. etc. The trouble with this is that the investment in creating such a model may vastly outweigh cheaper simulation that provides a good enough result, and that you may end up with such complex interactions that you can no longer get results in a timely manner.
SDSS's find application with NP-complete problems, and work around this NP-completeness in various ways to find solutions that are good enough. Instead of modelling all possible outcomes, single parameters are varied to view their impact, and in this way the nature of the problem can be ascertained. I can see that this methodology could work within SpatialOS, with the system providing a container for vastly scaled up models.
Further edit: I wonder what coordinate systems are available. If they are serious about geospatial they may have some work to do.
I don't know much about Improbable but from what I've read they shouldn't be viewed as VR firm, simply you could use their technology to create a massive virtual world that you could then explore using VR. I think the media (and maybe Improbable's PR) just likes to go with the VR angle as it's a recognised, understood term
The product is 'Spatial OS'. Want to build a massive simulation of various agents interacting in different ways than cannot possibly fit on a single server? That's where 'Spatial OS' comes in.
Interesting blog post here: https://improbable.io/2016/03/24/what-we-found-when-we-simul... a couple of people from the UK government visit improbable for 3 days, successfully build a detailed simulation of the internet (at the routing level, so simulating all routers involved in BGP). Looks pretty impressive.
Having just finished "Ready Player One" (Ernest Cline, recommended), I think the 'if you build it' approach may work here.
If the virtual world essentially becomes where you go for TV / film / music (which isn't impossible, when you look at how we're starting to consume) and where you chat whilst getting to be the version of yourself you really want to be, or using it for an escapist 'coworking space', or whatever else - I could see it having some future.
It would probably encourage interest if the inequality gap broadened and people struggled with terrible living conditions, or a more dystopian world, and looked for escapism.
This isn't necessarily for end users. You could test games with it (simulate loads of users hitting your game, find out where the bugs and choke points are). You could also run an MMO using this infrastructure instead of building your own infrastructure to run games - I think that might be their target market.
There are other applications of course (crowd simulation for architectures, planners, or despotic dictators), but for now the money will mostly be in game testing/simulation.
From reading the article, it seems like the best case scenario (aside from unforeseen tech advances or alternative usecases) is that online gaming will become easier through cloud platforms and a lot more indie MMOs will start popping up. A bit like mobile games did ~10 years ago.
Just to clarify - Improbable are a simulation company, right? As in, VR would just be one application/interface to their software, but the point is simulating things at scale?
reply