15 ms·
No Man’s Sky – Procedural Content
- grenoire 10y agoIt's interesting how the level of variety of the assets does not translate directly to the game. I do actually suspect that there might be some sort of prefabrication going on with the creatures, or maybe some bug with the generation code is simply not using all the available asset combinations.
- stcredzero 10y agoI'm willing to bet a small amount that the leader of the "No Man's Sky" project either "lost the battle" with his subordinates or was unable to fully get his vision across to his team. To meaningfully create an interesting procedurally generated world, you need to approach certain things one step removed. For example: Game Balance. If you're not going just bolt a simple hand-crafted game on top of your procedurally generated world, you might want factors that affect game balance to be significantly affected by the procedural generation, which means you can't directly game balance the game anymore. Instead, you have to indirectly balance the game.
- oelmekki 10y agoI thought balance was a multiplayer thing (it's the only domain I've heard about it, but I'm a casual gamer). I guess balance in single player is about difficulty? Or are there other aspects of single player games that are considered balance?
- stcredzero 10y agoI thought balance was a multiplayer thing No Man's Sky was supposed to be multiplayer, originally. There can also be a notion of balance in single player games. For example, in a 4X game or an RTS in single player mode, you can still have issues of balance with regards to the relative effectiveness of ECM versus weapons. Missiles vs. beams. Fighters vs. small units.
- jheriko 10y agoIt was never meant to be multiplayer in real time afaik... just that you would see the impact of other players in the world... however confused the marketing became
- stcredzero 10y agoMy game is just as vast, practically speaking, and it has 70 client multiplayer, worst case. (That is, all directly interacting in the same spot. If 1000 clients were in the same star-system instance, but not interacting, that would be fine.)
- EpicEng 10y agoThat is not true. It was said that you could run into other players and interact with them in real time, but that it would be exceedingly rare due to the size of the galaxy. Well, happened on day 1 and, nope, not true. Now it was never supposed to have a large focus on multiplayer, but they also mentioned things like a galactic economy, big space battles, a faction system... all BS.
- xamuel 10y ago>you could run into other players ... it would be exceedingly rare This should've tripped everyone's BS detectors. Why would a studio do the huge work to add a multiplayer mode if it would be so rarely seen?
- yankyou 10y agoIt _did_ trip a lot of BS detectors. The sound was drowned out by the overwhelmingly non-technical consumers of the game's PR. It's the modern day version of selling snake oil. Technology progresses, but human nature doesn't.
- EpicEng 10y agoAnd much of the expectant player base didn't want to hear anything negative. Reddit was a complete echo chamber, praising the devs in every post. I suppose it's still an echo chamber, but the conversation has... drifted the other way.
- wongarsu 10y ago>I guess balance in single player is about difficulty? In a sense balance is always about difficulty. But it's also about not ruining all the depth your game offers. If one of the easiest paths becomes objectively the best to achieve a goal, there's no reason for the player to explore or use any of the other paths. This appears in all kinds of systems: if there's one class that's just the best, your class system is unbalanced and most players will barely play the other classes. If there's this "one simple trick" to earn lots of money (e.g. mine that one very common ore, like in No Man's Sky), an interesting economy becomes a boring timesink due to being unbalanced. If one of the early weapons is the best, everyone will use it and all the time you spent designing other weapons was just a waste.
- stcredzero 10y agoOne of the things that I'm going to do in my game, is to make entire categories of items unusable or gimped across entire bands of space. So as you progress (the leaderboards are mainly based on how far in "the direction of difficulty" you can get) you will eventually get to a point where you have to abandon your favorite strategy and come up with a new one. Even without this, due to the rarity of items that have little penalty for benefit, you will often have to improvise, as your required item will likely not be available with exactly the right combination of compatibility and stats.
- lfowles 10y agoProgression rate mainly. Simple Minecraft example (imagine it had more game bolted on, because I can't think of many proc-gen worlds off the top of my head)... Diamond is only available below X depth and at Y rarity. The depth is a hard limit, because it would screw with the intended progression of player crafting if a diamond vein had spawned a block or two under the surface. (Although this example is slightly flawed because you need to craft better equipment to mine diamond, blah blah blah)
- stcredzero 10y agoyou need to craft better equipment to mine diamond, blah blah blah More example of balance.
- lfowles 10y agoHah, yes! Except it's more directly influenced (creating the recipes and what pickaxes can mine which ores) than the indirect influence on the procgen world by defining ore distributions.
- fenomas 10y agoI recently dusted off Minecraft for the first time in a few years and was surprised, in retrospect, at how little effort the game makes at any semblance of balance or progression. One world might start you right next to a village with a chest full of diamonds, while another might start you in a vast desert - with no trees, meaning no wood, tools, or torches, meaning a long walk (and probably many deaths) before progression per-se can begin. MC is best considered as a sandbox simulation rather than a game. (Not that that's a criticism of course - it's just something I'd forgotten after a few years of not playing.)
- zimpenfish 10y agoMy favourite start was on MCPE - island of about 9 blocks, no trees, no other land in sight. Took 15+ minutes of swimming to find land.
- s_m_t 10y agoI don't really view balance in single player games any differently than I do a multiplayer game. A well balanced game has a wealth of options open that promotes dynamic gameplay. A poorly balanced game degenerates into stagnant gameplay because one or two options are much more powerful than the rest. A good example of a well balanced single player game is tetris. All the pieces are useful. It may be easier to complete a line with the straight piece, and in a tight pinch a less skilled player might hold out for it while placing down other pieces willy nilly, but if every piece was as easy to use as the straight piece then the game would have less variety and tension! At certain points in the game you may not want a straight piece because of the way you have laid down your previous pieces, the game is dynamic because the optimal strategy is changing all the time because of how you played the game, this adds even more strategy because you can also influence how the optimal strategy will change. A good example of a poorly balanced single player game is... well in my opinion most single player games are poorly balanced. Either the game is so easy that it really doesn't require you to strategize at all or the game is easily cheesed by using one overpowered technique. This is especially evident in many RPG's, although they try to hide it with a huge skill tree (of which almost invariably a large number of skills are useless and a couple are ridiculously overpowered) or by having you learn a whole bunch of enemy weaknesses and resistances (IMO this is cheating, the challenge isn't dynamic as these stats are unchanging and typically only serve as an overwrought color matching exercise). Pokemon is a good example of this, although you have hundreds of pokemon to collect and train and it seems a variety of enemy types should force you to have a varied party yourself, the easiest way to beat the game is to overlevel your starting pokemon by giving them all the experience points and grab one or two other pokemon along the way to cover your weaknesses in the end stages of the game and load up with necessary non-combat moves.
- stcredzero 10y agoI don't really view balance in single player games any differently than I do a multiplayer game This is a great approach to take. When you let the computer "cheat" it tends to result in less intellectually satisfying enemies. The computer should pretty much be playing by the same rules as the player.
- threeseed 10y agoI don't believe this. Far more likely is that like almost every software project in history they underestimated the time to finish and finish well. And a small team means far fewer testers so that exacerbates the problem.
- stcredzero 10y agoGiven what I've seen from them in the press and online, it looks like they bolted a simple hand crafted game on top of their procedurally generated world. The only question is why they thought they were doing that.
- coldpie 10y agoI suspect Sony paid them a boatload of money, then took a look at the $20 tech demo toy they had on their hands and said "we can't sell this for $60," so they had to tack on the resource grind minigame in order to call it a "game." Hence the delays and lackluster final game.
- GauntletWizard 10y agoI suspect it's actually more about pattern recognition and how humans compress data in our memories. People will recognized and remember the major components of objects, and see that they're being repeated. If you've were to spend a few minutes looking around each of the ships (for example), then shown a bunch of ships from a mixture of NMS's possible designs and all other ships designed or designable in other space videogames, you're nearly instantly recognize the style and get 90+% accuracy if asked to say if it came from within NMS or without. But here's the real kicker: I don't think you'd have any luck telling if there's one that you'd already seen before or not. The distinct features merge together, and you see one ship with a bunch of possible parts - much like how the article says it's stored! Humans are great at pattern recognition and those groupings are intuitive. If you take a dozen variations on one part, a dozen variations on another part, and show only a small smattering of the possible combinations to someone, they'll be able to deduce the existence of the rest of the square, pretty much as soon as they see three combos making an L on the two axis.
- taneq 10y agoI don't think it's that the variety doesn't translate to the game, I think it's more just that this kind of mix-and-match approach doesn't generate anything that creates a strong perception of variety. Once you see one stegosaurus-headed thing, anything else with a stegosaurus head looks familiar even if this time it's got painted toenails or a floppy tail. The result invariably looks about as exciting as one of those mix-and-match flipbooks: https://s-media-cache-ak0.pinimg.com/236x/de/a7/7d/dea77dbbf70b40ef6286faeaa93ac50e.jpg https://s-media-cache-ak0.pinimg.com/236x/de/a7/7d/dea77dbbf...
- stcredzero 10y agoI say this as someone currently developing a vast space game using procedural generation: The danger with procedural generation is "remix boredom." The user can feel, "Oh, this is just a remixed variation of the same stuff." The reason why we don't feel that way about the real world, is because the real world doesn't just have "remix procedural." You have to have some player-significant emergent effects coming out of the procedural generation. You see this in Minecraft. You even see it in the 1st generation of the original Elite game. The player's interest in your procedural world is directly dependent on how deep these emergent effects are. (So the emergent effects can be shallow or deep, with the corresponding amount of interest from the user.) (Which is why my procedural generated world primarily exists to support a procedural generated technology tree.)
- chrisfosterelli 10y agoI definitely know what you mean by remix boredom. Can you elaborate a bit on specific instances of what you mean by "player-significant emergent effects" for example in Minecraft?
- stcredzero 10y agoI'll instead answer you in regards to the original Elite. In the original elite, there was a simple emergent effect with regards to highly profitable but short "milk run" trade routes. Pretty shallow. (I may add to this answer later.)
- Walf 10y agoAnd if it wasn't for them, you couldn't improve your ship and be able to explore the galaxies.
- problems 10y agoFor minecraft: finding a cave or a trench that results in easy mining of "valuable" resources is often pretty exciting, especially for new players. No Man's Sky sort of just had everything everywhere so special features didn't seem so special.
- Cozumel 10y agoI think maybe assets are related to regions of space, at first I got no snow or water planets, then I got loads of them, purely anecdotal though, I don't know one way or the other.
- boardwaalk 10y agoUnfortunately Hello Games didn't go in the most interesting direction I think procedural generation has to offer, which is to, however it is accomplished, create content that is actually interesting to the human player. We're way too smart to not recognize the random planets and creatures and so on as samey and pointless rather then something to be discovered and learned and overcome. Also, using procedural as a "force multiplier" for content developers is really interesting: Letting them make snippets or "mad libs" and have algorithms mix and match and adjust under constraints that make the content make sense (i.e. buildings where the rooms have purpose and their interconnections make sense). I know this has been explored in some games, particularly rogue-likes like Spelunky and Rogue Legacy. What about shipping a trained neural network with your game taught with human-made levels to create even more levels? How neat would that be? I just hope procedural generation doesn't get a bad name and is explored even more.
- flashman 10y agoI think procedural generation needs an AI editor: a second layer that assesses the generated forms and selects only the most interesting and pleasing ones. This could be informed by real-world animal body ratios, and subsequently trained by humans ('silly', 'cool', 'scary' etc) until it mostly stops making awkward shit. And a dictionary of 'what creature types has this player already seen' might go some way to alleviating boredom over the span of dozens of hours (planet types need this too - many people were annoyed at never finding an archetypal paradise planet, myself included). A third layer would allow players to rate cool creatures so that they show up in others' games. No Man's Sky already has the "scan creatures and upload discoveries" mechanic; with a rating system the good ones would have an increased chance of showing up in someone else's game. Procedural generation obviously has legs, but developers need to move beyond the 'infinite monkeys at infinite typewriters' stage, and artificially ensure player enjoyment is less at the mercy of randomness.
- gene-h 10y agoOne interesting means of doing this is grammar induction[0]. NMS's appears to have a defined pattern for say a spacecraft IE wings go here, cockpit goes here, engine goes here and then choosing a block for each of them. With grammar induction one can learn more interesting designs by learning the relationship between parts. IE cockpit A tends to connect to hull C, wings N tend to connect to hull C. This lets us make spacecraft that have different topologies that still follow the same sort of style defined by some exemplars. [0]http://hci.stanford.edu/publications/2012/Talton12LDPBG.pdf http://hci.stanford.edu/publications/2012/Talton12LDPBG.pdf
- jheriko 10y agoIt's a shame there is nothing much about animation. The rest is pretty much the simplest possible approach you could take, and nothing special at all... but the animation seems genuinely interesting.
- Keyframe 10y agoProcedural animation is tough as fuck (to get right). I would love to read more about it too.
- jheriko 10y agothere is an interesting, but quite old, paper here from the spore guys http://chrishecker.com/images/c/cb/Sporeanim-siggraph08.pdf http://chrishecker.com/images/c/cb/Sporeanim-siggraph08.pdf
- kabdib 10y agoDouglas Crockford, in Atari days, remarked on some procedurally generated content: "Never once the same. Never twice very much different." The Diablo 2 / 3 franchises do procedural dungeon generation, as does Spelunky. They have written rather thoughtful articles on some of their techniques. http://tinysubversions.com/spelunkyGen/ http://tinysubversions.com/spelunkyGen/ (Hmmm, can't find anything concrete about Diablo. I'll keep looking).
- wodenokoto 10y agoWhy do you write "Diable 2/3"? Diablo 1 was also procedurally created levels, based around a set of constraints that allowed the story to unfold.
- kabdib 10y agoYou're right, D1 was procedural as well.
- mcv 10y agoRoguelikes too, but there it seems to work fine. The corridors by themselves aren't that interesting, but combined with the chance of encountering monsters that can be weak or life-threatening, and loot that can be either junk or something truly spectacular that you don't find every game, that's what makes it interesting. The unique environment combines with the chance of something truly memorable. But if there are Holy Avengers all over the place, they become less interesting. So I suppose NMS would work better if most planets have either no life, only sea life, or only really tiny life. That makes the occasional encounter with large animals a lot more memorable.
- edem 10y agoThis is in stark contrast with Dwarf Fortress which has literally no graphics but indefinitely more rich in content. My favorite statement about No Man's Sky is: "One feet deep ocean".
- mentalpiracy 10y agoThis may be pedantic, but I wouldn't say DF is content rich exactly. Dwarf Fortress (and similar games, like Banished and RimWorld) shine because you can execute an infinitely different number of stories/scenarios/playthroughs without changing any the fundamental systems of the game. The content there is emergent from the actual gritty gameplay mechanics (rather than the reverse, where the mechanics exist solely to propel an overarching plot).
- edem 10y agoContent in Dwarf Fortress is generated. It does not make a difference when we talk about the term "content" whether it was written by hand or was generated by a function. The emergent behavior is the most interesting part of "content" in DF which is just a generalization really. The concrete type of content which DF is based upon is "story" and Tarn Adams is working on a story generator (which he hopes to achieve by simulating the narratively interesting parts of our world).
- yolesaber 10y agoThe gameplay is the content. You are confusing plot with content which isn't necessarily the case for videogames.
- adamrezich 10y agoIn my opinion, it's not so much about the "content" as much as it is about the number of interacting systems that cause unexpected and emergent gameplay situations. One of my first Dwarf Fortress runs had me embarking to a cold area in the middle of winter. The lake had frozen over and that's where my caravan landed. As I was still learning the basics of the game, I forgot to make beds for my dwarves. They fell asleep on the iced-over lake, and while they were sleeping, spring came, the lake thawed, and seven very surprised dwarves suddenly found themselves struggling to swim. I think one or two died and I laughed my ass off and started over. In No Man's Sky, this one time, I went to a planet and saw some cool stuff and mined some minerals and made some stuff... oh wait, that was every planet, every time. Once I found a neat spaceship! Then a few miles later I found another one. Then I realized that the distribution of procedurally-generated content meant that there was a random, abandoned spaceship every few dozen miles. On every planet. That's around the time when I stopped playing No Man's Sky. Obviously the two games are extremely dissimilar in many ways, but this just goes to show how "shallow" the procedural elements of NMS end up being. Yes, the technical details of the underlying systems are super cool to explore from a programming standpoint... but design-wise, the procedural systems don't really lend themselves to interesting or emergent gameplay. There's like three different AI routines for fauna, or something, the different planetary hazards all amount to different bars with different flavor text that affect gameplay in the exact same ways, etc. etc. The bottom line is, if your procedurally-generated world has enough interacting systems that leads to interesting and emergent gameplay, you'll have your players recounting stories of interesting, unique things that happened to them for years to come. If your procedural generation systems just generate different visuals for the exact same gameplay, it will get very old, very fast. Not every game with procedural generation has to be Dwarf Fortress, of course... but if you're going to hang your game's proverbial hat more or less entirely on its procedural generation systems and sell it for sixty bucks a copy, you should probably make sure that all that work you put into your procedural generation code is going to do more to your game than generate different skins of paint on top of the same mundane gameplay.
- EugeneOZ 10y agoIt will not save this extremely boring game. It will not return trust to the team after lie about multiplayer. Only useful lesson NMS gave us - generated content is pretty boring. I hope there will be games for future generations of computers, maybe quantum computers, where world will be generated on the molecular level. Maybe very small world, but it will be interesting just to increase time speed and bring some action there - just watching of micro-world evolution will be interesting.
- placeybordeaux 10y ago> generated content is pretty boring. Why not let the lesson be that space content is pretty boring, or that resource management is boring. Just because they did it poorly doesn't mean that the type of content they made was the problem. Procedurally generated content has been around for a long time and has been done waaaaay better than NMS did it. There are plenty of rougelikes that have interesting procedurally generated content.
- danatkinson 10y agoI agree. I don't think the point is that generated content is boring, but that HG's generated content depth was quite shallow. As stated in the article, if they doubled the size of the art team, they could have had hundreds of times more models from which to generate creatures. The possibilities could be near-endless but the execution in NMS was poor because clearly not enough effort was spent on building up the assets. The author believes that it would be madness to create such a full-featured engine and then abandon it so soon. I'm inclined to agree, until HG or ASA say otherwise, and then folks will probably start knocking out the NMS clones.
- EugeneOZ 10y agoI also don't understand why your second sentence is controversial to first. I'm not talking about space content, but about generated content in general. Could you please provide an example of the game where generated content is interesting enough to explore? Where it's not just decoration.
- danso 10y agoIt speaks to the clusterfuck that NMS became that this detailed blog post is written by a fan reverse-engineering the code/content, rather than someone from Hello Games doing a post-mortem on Gamasutra who can speak with more authority. I'm not knocking the author's attempt at reverse-engineering -- in fact, it's awesome on a geek level because reverse-engineering is an additional technical hoop to understanding a game's core. It's just that when a game has as much hype and sales as NMS does, usually the creators would be the ones to do a technical post about how clever they were. But the mention of the diplodocus is just one example of how much of a clusterfuck NMS is: The diplodocus and other beautiful dinosaurs were part of the E3 demo that was presented to fans as NMS's procedural code in action. And, as the author notes, it doesn't appear to be something that actually was procedurally generated, but was hand-designed to make the E3 demo footage look good (and, to Hello Games's shame, they used this footage as the official advertising for NMS, even after release). Here's one of the canonical parodies of the shady shit Hello Games pulled: https://www.youtube.com/watch?v=RvAwB7ogkik https://www.youtube.com/watch?v=RvAwB7ogkik edit: grammar fixes
- randomacct44 10y agoThe utterly stupid thing is that the hype is what killed the game. Of course, then I guess they wouldn't have been able to charge AAA price for it and get away with it :/ I'm a fan of the space sim / massive universe concept and pretty much ignored most of the NMS hype, so I had no expectations going in. What I found when I did go in was an immediately recognizable game that I'd describe as Elite + Noctis with modern graphics. Which is fine, really. Particularly, anyone that loved playing Noctis would love playing NMS. The problem is that price tag and the hype though. The game just doesn't have the staying power. I'd feel a bit better about the price tag if the studio communicated what they're doing more. I don't mind paying that price for a game in and of itself - games are expensive to make and I kinda hate the race-to-the-bottom that gives us things like freemium. However at this point, NMS feels abandoned by the studio and that's disappointing. Jim Sterling did two excellent videos exploring the gaming hype culture and what everyone's roles were in this mess (the studio, Sony, the games press at large and the gaming public). They're worth watching in order for anyone that hasn't seen them: Sky Hype (The Jimquisition): https://www.youtube.com/watch?v=l_HEI8ZfDbM&t=847s https://www.youtube.com/watch?v=l_HEI8ZfDbM&t=847s A Video Discussing Whether Or Not Hello Games Lied About No Man's Sky (The Jimquisition): https://www.youtube.com/watch?v=w2qKAX_QaoI&t=72s https://www.youtube.com/watch?v=w2qKAX_QaoI&t=72s
- partycoder 10y agoIf you like procedurally generated stuff, a good exercise is to render a basic Lindermayer system, or L-system for short. You can render some trees and stuff. Very didactic and entertaining.
- chamakits 10y agoA bit of an aside, but WOW. I am amazed both by the dedication and skill needed to reverse the format and protocol of some undocumented binary files without even having access to the code that processes it, and on top of that, the dedication of building a UI to help along. I know it's not the main topic of discussion, but sometimes I find it overwhelming and frustrating to analyze things that I have full access to the codebase, and it's really quite humbling to see this level of success and dedication. Really impressive work.
- coldpie 10y agoIt's tough, but very fun and rewarding. I dipped my toes into it a while ago and reverse-engineered the data formats for an NES game[1], including their data compression format. You start out knowing nothing, then start slowly putting the pieces together as you figure out what each bit of code does, what this piece of memory holds, how the tile and level map data is stored... Obviously a 6502 hooked up to the NES graphics chip is much simpler than a modern graphically intense video game, but it was a fun and intense experience all the same :) Give it a try sometime. [1] https://gitlab.com/mcmapper/mcmapper/blob/master/main.c https://gitlab.com/mcmapper/mcmapper/blob/master/main.c
- Jasper_ 10y agoNot to undermine the work, which is really impressive, but also as someone that's reverse engineered a lot of different proprietary model formats, they all follow a very similar structure. You could do it too if you knew You have your vertex buffer data, your index buffer data telling you how vertices are connected, and a list of commands telling you where in the index buffer to start/stop. It might take you a bit, but after a while you notice the telltale signs of model data (e.g. 0x3F800000 being 1.0 in floating point), and you can usually make a first pass at it pretty quickly. It's definitely a lot of fun if you haven't done it.
- t0mst0n 10y agoThe huge hype. Awful game but 3d and rendering game is great!
- achr2 10y agoThis game would be lauded as one of the greats if each player was given a home planet where they could configure the flora and fauna as they see fit.
- compute_me 10y agoI've been saying from day one of the "debacle" (release day) that it would likely lead to AWESOME mods if the engine was opened to the community for tweaking and the integration with more rich game mechanics with a good chance of something big like counter strike (originally a half-life mod) emerging... A universe builder builder so to say. I'd love that!
- deleted 10y ago[deleted]