Slashdot Mirror


What Nobody Tells You About Being a Game Dev

An anonymous reader writes "Alex Norton is the man behind Malevolence: The Sword of Ahkranox, an upcoming indie action-RPG. What makes Malevolence interesting is that it's infinite. It uses procedural generation to create a world that's actually endless. Norton jumped into this project without having worked at any big gaming studios, and in this article he shares what he's learned as an independent game developer. Quoting: "A large, loud portion of the public will openly hate you regardless of what you do. Learn to live with it. No-one will ever take your project as seriously as you, or fully realize what you're going through. ... The odds of you making money out of it are slim. If you want to succeed, you'll likely have to sell out. Just how MUCH you sell out is up to you.' He also suggests new game devs avoid RPGs for their first titles, making a thorough plan before you begin (i.e. game concepts explained well enough that a non-gamer could understand), and considering carefully whether the game will benefit from a public development process."

43 of 181 comments (clear)

  1. Wait... by Anonymous Coward · · Score: 5, Insightful

    People didn't know this?

    1. Re:Wait... by Canazza · · Score: 4, Funny

      People do, that's why no-one tells you it.

      --
      It pays to be obvious, especially if you have a reputation for being subtle.
    2. Re:Wait... by Anonymous Coward · · Score: 5, Insightful

      Young people never listen to other people's advice.

      It's very good, because it means young people will sometimes succeed where older people failed.

    3. Re:Wait... by Mitchell314 · · Score: 2

      Heh, reminds me of a clip from "Triumph of the Nerds" where one of the personal computer pioneers admitted to getting involved because they were too naive to see how crazy it was. Now look where we are.

      --
      I read TFA and all I got was this lousy cookie
    4. Re:Wait... by uninformedLuddite · · Score: 3, Funny

      You have just reduced a multitude of Winnie the Pooh laptop hackers to tears. I hope you are proud of yourself.

      --
      The new right fascists are bilingual. They speak English and Bullshit.
  2. Agree with the first project warning by Anonymous Coward · · Score: 3, Insightful

    I fully agree about not making the first project an RPG. A good RPG needs good story, graphics, game balance, hopefully multiplayer and there are a lot of "gotchas" to be found. Plus any good-sized RPG will end up being huge. Almost any other type of game is probably easier for a single-developer studio to create.

    1. Re:Agree with the first project warning by sammyF70 · · Score: 2

      NWN ...

      --
      "DRM is like the Ford Pinto: it's a smooth ride, right up the point at which it explodes and ruins your day."-C.Doctorow
    2. Re:Agree with the first project warning by preaction · · Score: 3, Interesting

      You get a Real Job (tm). At my Real Job I make enough money to pay some contractors at my game company, and I spend my nights and weekends coding for the game.

      No, I don't have a spouse or a social life to speak of, why do you ask?

  3. Why? by Kral_Blbec · · Score: 3, Interesting

    In the article he claims that it would take three weeks to walk across one segment of the map, even with noclip enabled, and then it would just create a new segment.
    I just am wondering who would play a game that much that they would even care? Few people are going to really "complete" even Skyrim much less an "infinite" world.

    1. Re:Why? by arth1 · · Score: 4, Interesting

      In the article he claims that it would take three weeks to walk across one segment of the map, even with noclip enabled, and then it would just create a new segment.
      I just am wondering who would play a game that much that they would even care?

      For an MMORPG, it would matter a great deal. Being able to find a pristine area for yourself that 14 year old Kevin and gold farmer Deng Wu are statistically unlikely to ever find would be great.

    2. Re:Why? by loneDreamer · · Score: 3, Insightful

      Why are you playing an MMORPG if you prefer not to interact with other players? You would probably be better with a plain old RPG.

    3. Re:Why? by slippyblade · · Score: 2

      I keep saying this over and over and over.

      Real life is the biggest MMO out there, and strangely enough, I like to do things by myself sometimes. So why shouldn't I be allowed to do stuff by myself in MMO's occasionally. I've played far to many MMO's where you have to be in a group to wipe your ass for crying out loud.

      Just because a game has multi-player in the title does NOT mean I should HAVE to be in a group to accomplish every little thing.

    4. Re:Why? by vux984 · · Score: 3, Insightful

      Why are you playing an MMORPG if you prefer not to interact with other players?

      I'm happy to interact with other players. Doesn't mean I want to interact with every single asshole in the game.

    5. Re:Why? by arth1 · · Score: 2

      Why are you playing an MMORPG if you prefer not to interact with other players? You would probably be better with a plain old RPG.

      I could turn your question around at you and say why do you play in an MMORPG at all if all you want to do is interact? Why not have a dogpile party where ALL you do is interact?

      It's really simple. Wanting to be alone some of the time does not imply wanting to be alone all of the time.

      Nor does wanting to avoid 14 year old Kevins and Chinese gold farmers imply that you do not want to play with a trusted group of people. You may want the latter without the former.

      Instancing doesn't solve the problem - it imposes limitations, and by nature makes the world non-persistent. An infinite world would solve it nicely.

    6. Re:Why? by Tackhead · · Score: 2

      You don't see how it would enhance MMORPGs to be able to have a bigger world, so that players could create locations you're unlikely to stumble upon by accident?

      Back in the day, SWG actually had that feature - you could buy certain scriptable items and set up a player-driven quest/event. IIRC you could even arrange a event coordinator (a human-controlled NPC working on behalf of the game company) to show up for 5-10 minutes as Vader, Solo, Leia, etc...

      The problem is that if you give MMORPG players too much freedom to create, you get the Spore problem: every dungeon entrance looks like Goatse.

    7. Re:Why? by bfandreas · · Score: 4, Insightful

      well.. daggerfall, an older game in the elder scrolls series, is actually much bigger than skyrim(iirc about the size of england in real life), because it uses generated content. which on that days graphics and level complexity worked pretty nice.

      No, it didn't. The generated dungeons very often had unreachable segments that contained the McGuffin you had to find for the mages guild. It was a soulless game all in all. I wouldn't call it a successful application of procedurally generated content but rather a cautionary tale.

      TES has had a rightfully deserved reputation of shallowness. Especially RPGs live and die by carefully crafted worlds. Given the choice between Planescape: Torment and Daggerfall I know which one I'd choose.
      Of course there is the other extreme of RPG where you are basically on rails and you are basically relegated to the position of spectator. Or the game isn't about the world but constant repitition of the same old. MMOs and ARPGs fall into the latter category.

      --
      20 minutes into the future
  4. Re:Um,,, by fph+il+quozientatore · · Score: 2, Insightful

    I know almost nothing about Minecraft, but why should it be absolutely mentioned? Is it the first of the genre? The most successful? Is it an innovative modification of the original idea?

    --
    My first program:

    Hell Segmentation fault

  5. Infinite by arth1 · · Score: 3, Interesting

    Ok, so how do you create an infinite world with procedural generation?
    You can't limit yourself to, say, a 64-bit int, cause that's not infinite. You could, presumably, use linked lists, but then you'd run into speed issues. Arbitrary length BCD (or similar)? Yeah, but the procedural generation routines have to be able to handle them. The memory required quickly grows towards infinity too.

    Also, a procedural generation based on coordinates (which, when all comes to all, just is a seed number) has to be robust enough to not repeat as the seed becomes arbitrarily large. A simple PRNG won't do, or someone may find out that the world repeats if going flaxtythree billion miles in either direction.

    Too bad there are no details in just how this is done, because that's clearly the interesting part.

    1. Re:Infinite by arth1 · · Score: 5, Funny

      </I>

       

       

    2. Re:Infinite by ThunderBird89 · · Score: 2

      If the game is offline, it could just as easily unload portions of the map that are outside of line-of-sight, or a given radius from the character. Events taking place in the unloaded areas that impact the visible ones may be abstracted away to use less memory, with terrain and mob states saved and loaded as the player approaches them again. That should take care of repetition as well as keeping the memory use constant.

      --
      Hyperbole: I use it liberally!
    3. Re:Infinite by Nationless · · Score: 3, Insightful

      In fact surely by definition an infinite world will repeat itself due to it being infinite and therefore an infinite amount of repetition?

      Isn't it like saying the second full rendition of Shakespeare that was just created is a bug and the infinite monkeys will be adjusted accordingly?

    4. Re:Infinite by nabsltd · · Score: 5, Informative

      However, from a mortal human's perspective, 64-bit is infinite.

      You're presuming that you'll be limited to walking or other slow means of transportation. And that there are no bots involved.

      Actually, no, he isn't.

      Let's just say that you have millimeter precision in a 64-bit integer, which would make the world 18,446,744,073,709,551 meters across. Even at the speed of light, it would take 61,531,714 seconds to traverse that distance, or nearly two years. Got that...we're talking about a world that is two light years across.

      So, as long as you limit travel to some reasonable speed (e.g., 300km/sec, or nearly 10 times faster than anything man-made has ever travelled), the world is infinite for all practical purposes, even with a "faster time passage" UI. Likewise, teleportation could have a limited distance (even thousands of miles) and not be a problem unless it took literally zero time to complete.

      And, this is assuming that the 64-bit number is used to directly map each millimeter. If, instead, it is a more granular area and the sub-areas are procedurally generated (which is what TFA says), then perhaps the resolution is a somewhere between 1 and 100 meters. This increases the world size to anywhere from 2,000 to 200,000 light years.

      I bet even with a world as big as the Milky Way galaxy, there will be people who complain that the game is overpriced.

    5. Re:Infinite by fuzzyfuzzyfungus · · Score: 4, Insightful

      In fact surely by definition an infinite world will repeat itself due to it being infinite and therefore an infinite amount of repetition?

      The set of integers is infinite; but has no repeated elements. There isn't anything forbidding an infinite world from being repetitive; but infinite size does not require repetition.

    6. Re:Infinite by Baloroth · · Score: 4, Insightful

      There is a slight disconnect of what is meant by calling something "infinite". Technically, it means "without boundary", which in this context simply means I can walk in one direction and never reach an end. You don't need to generate the whole thing or store it in memory all at once (that would be absolutely impossible), you just need to be able to generate as much as would ever be needed. That is still a technical challenge. I'm guessing that if you really expanded far enough, your computer would run out of memory. Either that or he destroys segments of the world that aren't in use. There is literally no other option. As others have pointed out, the world can and probably will repeat over some segment, that isn't actually a problem or a qualification for infinite at all.

      You can never generate something that is actually infinite, it will always have some boundary. You can, however, extend that boundary as far as your physical limitations (computer memory, in this case), will allow. In that sense, it is infinite (indefinite in size is a better word and is what he actually means).

      --
      "None can love freedom heartily, but good men; the rest love not freedom, but license." --John Milton
    7. Re:Infinite by Your.Master · · Score: 2

      1. If you make the universe wrap-around as suggested above, how would you even *know* that you'd gone "past the edge"? A single wormhole taking you from (1, 0, 0) to (-1, 0, 0) is only giving you 2 millimetres of travel, not (2^64 - 2) mm!

      2. Let's say your answer to the previous question is something like, you're in a space game examining the parallax of the distant stars. Even so you can only notice this if you can teleport a significant fraction of a light year (without spending a significant fraction of a year...). That's really just unnecessary. Limit the teleport radius to 1 light-second (if your wormholes are mobile, it's sufficient to constrain their initial state to be like that). You can still teleport a distance many times the length of Earth's equator, and yet you're still not going to reach anywhere near the limits. A light year is *big* and there's just almost no good reason in a non-space game to have a teleporter that takes you halfway across the universe to the edge in a reasonable timeframe; if you think there is you aren't grasping the enormity of a light year. For a space game you can address at much lower granularity, and planets can be instanced with one more 64-bit coordinate. Or your wormholes can travel between instances using that extra coordinate. Or...you could just have planets be much closer than they are in real life (it's not like it's any less realistic than the FTL travel to get there, or even relativistic travel).

    8. Re:Infinite by wrp103 · · Score: 2

      Ok, so how do you create an infinite world with procedural generation? You can't limit yourself to, say, a 64-bit int, cause that's not infinite. You could, presumably, use linked lists, but then you'd run into speed issues.

      You seem to be assume the use of integers to identify the rooms. And there are many alternatives to linked lists.

      A simple method would be to generate a pair of unique strings for each entrance/exit of a room. The first string would identify the current room / board, and the second string could represent the destination room. If you want to get really interesting, you can have one-way doorways, or even a different destination based on various factors. A simple hash table or an indexed database table could be used to locate the rooms. If the target string doesn't have a room associated with it, then you create a new room, save it, and then load the new room.

      Just because an exit from one room takes you to a previously visited room doesn't mean the world repeats. In fact, if that never happened, the game would be boringly linear.

      There is no reason that the entire world has to be in memory at one time, only the rooms where players are located. When memory gets tight, you can page out any rooms that are now empty, or perhaps where there has been no recent activity. When a new room is loaded, you can control its contents based on if the player has been there before, or if this is the first time that any player has been there within some time period. That would allow some one-time objects, others to be regenerated periodically, other items to be limited to one per party, etc.

    9. Re:Infinite by Hognoxious · · Score: 2

      The ability to teleport (via wormhole, naturally) destroys your thesis entirely.

      The ability to do anything magical destroys any thesis grounded in reality.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  6. Really. by Frosty+Piss · · Score: 2

    What Nobody Tells You About Being a Game Dev

    Unless you follow Slashdot and all the stories about the Game Dev Surfs and the sweatshops they work in... How many times a year? 5 or 6 or 10?

    Poor, poor Game Devs... One really hurts for these people working in servitude...

    --
    If you want news from today, you have to come back tomorrow.
  7. Re:Um,,, by arth1 · · Score: 4, Informative

    Forgive me for breaking in here, but TFA mentions both Minecraft and Elite.

    But then again, this is slashdot, so...

  8. " If you want to succeed..." by blogagog · · Score: 4, Insightful

    " If you want to succeed, you'll likely have to sell out." I'm fine with that. What are the steps required to sell out? Count me in.

    1. Re:" If you want to succeed..." by Frosty+Piss · · Score: 3, Funny

      " If you want to succeed, you'll likely have to sell out." I'm fine with that. What are the steps required to sell out? Count me in.

      Seriously. I don't live in mom's basement, I've got a mortgage to pay. Where is the line to "sell out"? Are they playing Green Day in the background?

      --
      If you want news from today, you have to come back tomorrow.
    2. Re:" If you want to succeed..." by phantomfive · · Score: 4, Insightful

      "Selling out" means half your idea is good. Then someone tells you the rest of your idea sucks, and if you listen to them and make it better, it's "selling out."

      So start by coming up with a half-good idea.

      --
      "First they came for the slanderers and i said nothing."
    3. Re:" If you want to succeed..." by bzipitidoo · · Score: 2

      Allow me to amplify "sellout", just in case anyone doesn't fully understand.

      If your name, reputation, education, or whatever is seemingly worth anything, they'll want your endorsement. They want to slap your name on some product, report, or even just an idea. It might even be a good thing that you'd want to be associated with, but it is far more likely they are trying to take a shortcut and think that your name will help polish a turd. They may not even bother with the formality of asking for your permission or real opinion before using your credentials. They are likely to feel they already have your permission for such things because you are working for them. Probably slipped it into your contract.

      Once your good name has been trashed because it was used on a few stinkers, then they want to get rid of you. Your reputation has been spent, and now you are no longer of any value. You're just an overpriced code monkey. They'll be extra anxious to see your back before you learn that you were slimed and figure out why you no longer get any traction. You might even cause trouble. They may also find it convenient to blame you for the stinkers being so stinky, to try to hang on to their own reputations, and you will be less able to trouble them or defend yourself if you aren't present.

      --
      Intellectual Property is a monopolistic, selfish, and defective concept. It is "tyranny over the mind of man"
  9. Re:Um,,, by Baloroth · · Score: 4, Insightful

    ....and almost none of that has anything whatsoever to do with the procedural generation, which is actually pretty boring as far as it goes. Games have been doing complex procedural generated terrain since.... well, I don't even know (Rogue, at least), with complex variations much more sophisticated than Minecraft. Minecraft is insanely popular, but as far as good procedural generation goes, it's really not at all spectacular. I mean, hell, Dwarf Fortress (while non-infinite, it could be made so, if it was practical to do so as far as gameplay goes) procedurally generates weather pattern effects on terrain and political/economic shifts in population over an indefinite (user-set) period of time.

    --
    "None can love freedom heartily, but good men; the rest love not freedom, but license." --John Milton
  10. Re:true if you're a n00b developer by Dunge · · Score: 2

    "A large, loud portion of the public will openly hate you regardless of what you do. Learn to live with it. No-one will ever take your project as seriously as you, or fully realize what you're going through. ... The odds of you making money out of it are slim. If you want to succeed, you'll likely have to sell out. Just how MUCH you sell out is up to you.' This apply to every games. From indie title to AAA games.

  11. Nobody hates your game? by griego · · Score: 5, Insightful

    If I were a game developer and nobody hated my game, I might be worried about that. If all the public does is collectively shrug its shoulders at your work, you might be in trouble.

  12. Re:Randomly generated terrain... by lahvak · · Score: 3, Funny

    Not true, terain in nethack looks simply awesome!

    --
    AccountKiller
  13. Sensationalist and stereotyped by Runesabre · · Score: 5, Insightful

    After reading through the first couple paragraphs, the tone of his whole article feels sensationalist and stereotyped to the point I really didn't care what he had to say. While it's fun to spout of hyperbole like "my computer illiterate producer who's only game play experience is Bejeweled" as if it represents what one thinks a whole industry is like regardless of reality, it's not very useful or constructive except for generating page hits.

    I've spent 18 years in the game development industry (LoL, UO, TR, SWG, LOTRO, DDO) and while there are those occasional low points, it's not the norm.

    One piece of advice he has which all budding indie game developers need to take to heart is do it for love and passion and don't expect to make any money out of it. If you do it for love and passion, players will notice and provide the greatest possible path to financial gain if your product is worth it. Regardless of financial world, you will have something that you created with that's genuinely yours and can leverage to land you bigger and better paying game gigs down the road. The key is to create something you love.

    --
    Runesabre
    Enspira Online
    1. Re:Sensationalist and stereotyped by ShakaUVM · · Score: 2

      >>After reading through the first couple paragraphs, the tone of his whole article feels sensationalist and stereotyped to the point I really didn't care what he had to say.

      I more took out of it that he was bragging that he could create a procedural world THAT WAS BIGGER THAN SKYRIM to "the disbelief" of nay-sayers.

      Well, yeah, great. Procedural worlds can be infinitely large. The actual size doesn't matter, but how much interesting content there is. Which is why there is less Daggerfall-esque generation and more hand-placed stuff like in Skyrim.

      Procedural world generators around for a long time, even ElendorMUSH had a pretty sophisticated one back in the 90s. I wrote one in the same time period when I was working on creating VR arcade games. Heightmaps and his other tools have also been around and used for a really long time.

      This tells me absolutely nothing about how interesting the game will actually be, just that he's proud of how large it is.

  14. Re:Um,,, by Zalbik · · Score: 4, Insightful

    Most successful? Someone at Blizzard [wikipedia.org] might not think the same way...

    Yes, most successful

    Diablo I sold 2.5 million million copies
    Diablo 2 sold 4.2 million copies
    Diablo 3 was not by any stretch of the imagination procedurally generated.

    Minecraft has so far sold 11 million copies. Almost double what Diablo 1 and 2 ever did. And it's still selling very well.

    Stats sourced from here and here

  15. incorect header by leaen · · Score: 3, Funny

    should be What Internet Nobody Tells You About Being A Game Dev

  16. Optimax, a genetic optimzer by Press2ToContinue · · Score: 2

    It's an add-on for Tradestation. It enables traders to optimize the code which implements investment strategies.

    --
    Sent from my ENIAC
  17. Re:Um,,, by mrchaotica · · Score: 4, Funny

    I was going to post "And it should have mentioned Daggerfall!" but then I did a search to check whether Daggerfall really was procedurally generated, and the 3rd result of the search turned out to be TFA...

    --

    "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz