An interesting look back over the last decade at open worlds in games.
What do you think are the best open world games and why?
Do you think open world games are beyond the scope of small teams or do you think automation and procedural generation can cover the labour gap between indie and AAA?
How well does Unity do with open world games development?
The biggest difficulty to open world games for small teams is you can end up with a large but empty or repetitive world. It takes a lot of work to prevent that.
Unity of course can do open world games, but if Unity would implement double precision world space positioning and physics interactions you wouldn’t have to resort to as much trickery.
I think procedural generation is very interesting and can produce some great results, but it isn’t a magic bullet. Proc-gen multiplies your content, but it doesn’t really increase it exponentially. Sure, you may technically have 2^500 possible town layouts and inhabitants, but if those are assembled from the same small set of parts then players are going to notice and lose interest quickly.
What it can do is spread your content across large areas in a plausible way. You just still need points of interest in there. And/or the ability to create those points by modifying the world (Minecraft, for example). That oddly-shaped mesa is a lot more meaningful when you can build a tower on top of it and someone else can lay siege to said tower.
People always say that, but who actually runs into this problem? Most people who I’ve seen posting about this start having trouble at something like 5000 unit’s from the origin (I understand it depends on the use case) but that’s a huge world if that’s your limit.
For example, Skyrim is estimated to be 37.1 km square which is only about 6x6 km. so assuming 1unit = 1 meter you could achieve a map about that same size as Skyrim with only going a little over 3000 units away from the origin in any direction. As you alluded to in your post, even if you limit your map to fraction of that size, a small team would struggle to fill an empty space like that with interesting content.
Depends on the type of game you’re making. I ended up shelving a space game I was working on some years ago over it, and the size of the zones in my current game are dictated by this issue rather than borders which would make more sense otherwise.
Like we’ve mentioned in every single thread where you make this proposal to bridge the game between indies and AAA, the AAAs are already using automation and procedural generation where it is practical. It’s not like we don’t have examples of what happens when you take it past the point of being practical either. No Man’s Sky is a great example.
Furthermore any improvements we make will just be added to their arsenol so the best thing you can do is pretend that the AAA industry doesn’t exist and just make something fun as an indie developer. If you discover a great idea for procedural generation knock out the best game you can with it but don’t try to use it to catch up to a large studio.
Which is why most games that dial procedural generation to eleven focus the actual gameplay not on the world but on the mechanics of the game. Roguelikes, for example, have a wide array of monsters, items, etc but the world itself is almost always just basic rooms with very little setting them apart from each other.
There are exceptions though. Brogue has fantastic world generation for a roguelike with distinct differences between the levels as well as monsters and puzzles that complement them. I highly recommend checking it out if anyone is interested in procedural generation as it comes with full source code.
Skyrim is the best one I’ve seen. It was hard to get away from that game. So much to do and see, and the world was compelling. I haven’t really sat down and thought about exactly why, but I think part of it was that the sandbox elements were fairly simple in design and easy to intuit. You never felt trapped inside some complicated, highly designed system with caveats about what you can ‘really’ do or not.
Wrong question. It’s not a labour gap that is in question, computers have already won that. it’s a quality gap.
No idea. My wip game is sort of ‘open world’ but it (space game) is really a bunch of relatively small sectors linked together. Events will influence the entire world, but it’s not exactly just ‘point and go’ to any position in the world.
Unless you need to use physics when you are moving at light speed, I’ve found that it is fairly straightforward to model a solar system in double precision. You set up your universe as layers of objects that correspond to different scales, and position them relative to the player’s position, according to their scale. For example my planets and such were at 1 unit = 1 AU scale. Since each ‘sector’ in the solar system had a double precision position recorded, and was located at the center upon warp arrival, the player’s universe position in dp was the ‘sector’ position plus the distance from center.
It’s trickery, but once the system is set up it’s fairly automatic, and you only need to consider the scale when setting up a level.
At least for my game, that sort of thing is perfectly sufficient.
I think what matters to players and what developers think matters to players, is often quite different here.
I did some research on what players perceive as ‘open world’ about a year ago when I had to make a final decision on zones vs origin shifting. What I found is players don’t know and don’t care about that. There are a couple of games that do very nice almost seamless zoning, but to players it’s open world. One game that is obviously zoned even made a big deal of calling itself open world, and that’s exactly how players perceive it and it’s a hugely popular game.
Open is just generally about the overall ‘freeness’ of what you can do coupled with size I think. The mostly seamless zone transitions I think help some, but I’m not convinced even with obvious zone transitions it’s something players really care much about.
Surprised nobody has yet to mention that in 2019.3 (at least in HDRP), that the camera is now the scene origin, rather than 0,0,0 in the scene. So that definitely opens up a lot of possibilities.
Procedural generation is already being used in AAA studios to help with their content issues, so no, it’s not going to magically help smaller indies bridge the gap. The only way these kinds of arguments make sense is if you somehow assume that AAA studios haven’t changed how they do things since 2004.
Zoning is the thing you do when you are being chased by a mob that’s too high level for you and you need to get rid of it by changing zones If it’s multiple mobs, make sure to yell TRAAAAAIN in chat first.
cough
I’m guessing he means instead of having a big open world, have it broken up in smaller scenes where you either straight up sync load between, or you use a more seamless method (and presumably you reset origin in each scene, so the floating origin is not really needed).
How well does Unity do with open world games development?
Well, Unity is fine for open world. Just cut the whole world into chunks and stream it in parallel. Then you just move only loaded chunk and player back to origin when needed. I make some test on the huge terrain.(in HDRP) From the image below, it’s 5km x 4km world. I found that even this size, the world is so huge and I can barely see the character from the editor. I mean character is very small compare to terrain. Yes, it depends on type of game but I don’t think I can fill the whole gigantic world without boring procedural generation.
You can also play with player vision. Using mountain or high building would do the job. If you want to make the world feel big and empty, you can use fog to cover the far area.(just likes silent hill) There are many ways to make the world look better and work well with chunk.