[HN Gopher] The Cabal: Valve's Design Process for Creating Half-...
       ___________________________________________________________________
        
       The Cabal: Valve's Design Process for Creating Half-Life
        
       Author : thisismyswamp
       Score  : 76 points
       Date   : 2021-01-16 18:31 UTC (4 hours ago)
        
 (HTM) web link (www.gamasutra.com)
 (TXT) w3m dump (www.gamasutra.com)
        
       | ArtWomb wrote:
       | Cabal. Design Bible. All grounded in the Single Source of Truth
       | philosophy. With feedback from 200+ playtest sessions directly
       | incorporated into the stream. And the result is the cohesive
       | narrative vision in Half-Life.
       | 
       | Contrast this with "What Went Wrong with Cyberpunk 2077" exegesis
       | from Bloomberg this morning and I'm still not sure anyone can
       | point to a single reason beyond "we were too ambitious". I wish
       | this breakdown were more technical in nature. Like a good
       | GamaSutra postmortem. I suspect tooling plays an enormous role.
       | UE4 Blueprints are phenomenal for visual development. But does it
       | scale to teams of hundreds of designers?
       | 
       | Inside Cyberpunk 2077's Disastrous Rollout
       | 
       | https://www.bloomberg.com/news/articles/2021-01-16/cyberpunk...
        
         | klmadfejno wrote:
         | >UE4 Blueprints are phenomenal for visual development. But does
         | it scale to teams of hundreds of designers?
         | 
         | This comment seems to come out of nowhere. Cyberpunk isn't
         | written in UE4 to the best of my knowledge. But rant time! I
         | love ue4 blueprints. I think they're the bees knees because
         | documentation of things is so hard, but blueprints make that so
         | easy! The ability to grab a bunch of nodes and collapse them
         | into one node means you can comfortably make your top level
         | view of things just a series of collapsed nodes with long form
         | descriptions in full sentences. So your high level stuff is
         | basically pseudocode.
         | 
         | Most people don't do this of course. But then most people don't
         | write good code, and lots of people writing blueprints one sees
         | in the wild don't even know how to code to begin with.
         | 
         | Blueprints are, imo, what people really want when they think
         | they want jupyter notebooks for data science.
        
         | ffhhj wrote:
         | It's interesting to me how the physics bugs such as characters
         | and object getting stuck inside walls, flying cars, failed
         | inverse kinematics and so on have been the usual bugs for so
         | many years now, but there isn't yet a methodology to prevent
         | gamedevs from falling in those old known pitholes. These are
         | very difficult to detect by QA and the way to fix them is
         | tweaking some parameters and geometry here and there. There
         | should be a way to supervise the physics engine, find whether
         | future calculations will cause an invalid state on some object
         | and choose a transformation that won't produce such conflict.
        
           | programzeta wrote:
           | Some devs do focus on it - this blog post goes into detail
           | about how someone worked through making sure you could walk
           | everywhere in The Witness:
           | https://caseymuratori.com/blog_0005
        
           | smogcutter wrote:
           | > There should be a way to supervise the physics engine, find
           | whether future calculations will cause an invalid state on
           | some object and choose a transformation that won't produce
           | such conflict.
           | 
           | This is probably just me not really understanding the domain,
           | but this sounds like a version of the halting problem?
           | 
           | Even if it's not, isn't that just an extra layer doing what
           | the collision engine is meant to do in the first place? And
           | if you can monitor a system to ensure correctness, couldn't
           | you use a similar mechanism to make the original system
           | correct to begin with? And if you _can't_ do that, how can
           | you expect to make the supervisory layer correct?
        
             | ffhhj wrote:
             | Let's say when a cylinder of the car, a wheel, bumps into
             | the infinitesimally sharp edge of the road, it could
             | somehow result in a "singularity" that launches the wheel,
             | the vehicle and its occupants to the sky, and that could be
             | a perfectly valid result of that algorithm. The algo's task
             | is not to determine whether that produces some "weird"
             | animation from the player's perspective.
             | 
             | For that reason there should be a "user level"
             | interpretation of the physics engine results, looking ahead
             | in time and correcting.
        
           | vvanders wrote:
           | As with everything in gamedev it comes down to one thing:
           | performance. Anything that can be faked, approximated our
           | outright hacked in the name of perf or memory will be.
           | 
           | The canonical example for me(which was ironically is in Half-
           | Life) is that the AI for the grunts is surprisingly simple.
           | If you throw a grenade they were scripted to shout "grenade"
           | and navigate to the nearest nav node.
           | 
           | Tons of people thought there was really complex AI behind
           | that behavior but it was just a couple of really well
           | telegraphed "if()" checks.
        
       | PeterisP wrote:
       | "The meetings were only six hours a day" ... ahhh ... (for five
       | months straight)
        
       | jgilias wrote:
       | > If the players are in the mood for more action, all they need
       | to do is move forward and within a few seconds something will
       | happen.
       | 
       | This! I remember being scared to move around when playing Half-
       | Life the first time. Flickering lights still make an instant
       | association with crowbars to me. Great to read a bit more in
       | detail how they managed to make something so great!
        
       | Blikkentrekker wrote:
       | > _If they walk into a room with other characters, those
       | characters should acknowledge them by at least looking at them,
       | if not calling out their name._
       | 
       | If only Gordon returned this courtesy.
       | 
       | Silent protagonists are such an awful thing.
        
         | nitrogen wrote:
         | You are Gordon. Did you acknowledge the NPCs by looking at
         | them?
        
           | Blikkentrekker wrote:
           | I realize why they do it, but it can never work because the
           | n.p.c.'s do not react to me in return. I can talk to them,
           | say things to them, but they will never respond to anything I
           | say.
           | 
           | Thus, the end result is that Gordon Freeman is a man whom
           | many speak to, yet who never speaks back, and no one
           | considers this to odd to say the least. -- the conversations
           | thus appear ridiculous.
           | 
           | It worked better with Chell, because others do not that Chell
           | does not speak back, and Chell actually canonically refuses
           | to speak out of stubbornness, so it's amusing to see Wheatley
           | being obviously uncomfortable from the fact that Chell does
           | not speak back and is simply blabbering to fill the awkward
           | silence.
        
         | dx87 wrote:
         | I'd much rather the protagonist be silent in an FPS. It ruins
         | the immersion for me, unless there are dialogue choices so I
         | still have some agency. I quit playing Dishonored 2 after a
         | couple of hours because the protagonist keeps talking as a way
         | to narrate things for the player, but it's just silly being a
         | stealth assassin constantly talking to yourself.
        
           | Blikkentrekker wrote:
           | Obviously in a stealth game it makes no sense for the
           | protagonist to talk.
           | 
           | But it does not make sense either that a protagonist not
           | answer when he be spoken to.
           | 
           | It was quite ridiculous in _StarCraft_ where there was a
           | player character who had a rank and was an actual character,
           | his allies discuss strategic plans with him and talk to him,
           | but he never speaks back, and is only addressed by title, for
           | he lacks a name.
           | 
           | In _StarCraft II_ , the game withdrew from the notion of a
           | "player character" and the player simply took control of
           | various different actual characters with dialog and a face.
        
       | Netcob wrote:
       | That's a refreshingly good example of "design by ...cabal..."
       | actually working out pretty well. I think the key element is how
       | the members actually had to implement their designs. If you just
       | come up with a lazy compromise, it'll start haunting you
       | immediately, and not just after the worker bees did their thing.
       | 
       | I think the "cabal" responsible for USB 3.1.1.1.gen2-420gig-
       | whatever should have done the same, with each meeting ending in
       | every member having to explain to their grandma why she can't
       | connect her monitor to her laptop even though the cable fits
       | perfectly, and that it's somehow _both_ the wrong cable and the
       | wrong laptop port.
        
         | danbolt wrote:
         | I've noticed that happening a lot in my time in the games
         | industry as well. The person making top-down design role isn't
         | exposed to the friction that their decisions are making down
         | the hierarchy. I think the worst part is that they're not even
         | necessarily as invested in the product as someone else, so
         | they're kind of structurally going along with the inefficient
         | situation they're in.
        
       | wgjordan wrote:
       | (1999)
        
       | jimbob45 wrote:
       | " Include an expert from every functional area (programming, art,
       | and so on). Arguing over an issue that no one at the meeting
       | actually understands is a sure way to waste everyone's time."
       | 
       | This always sounds good in theory but ends up with unnecessary
       | individuals falling asleep during meetings. I prefer either a
       | staggered approach to meetings where the likely unnecessary
       | people are only invited to the end of the meeting OR are simply
       | "on-hand" for the meeting in case they need to be pulled in.
       | 
       | I don't care how critical the input is, if you pull someone into
       | a three hour meeting and they only contribute five sentences,
       | they're not going to be happy with you.
        
         | danielscrubs wrote:
         | They where the ones that where going to be responsible for it
         | so how can they be unnecessary? He even said they started to
         | say no more and more as the deadline started to loom over them.
        
         | Jare wrote:
         | In most significant decisions in gamedev you want art, design
         | and engineering (at least - QA, audio, animation and a number
         | of others as well) to be involved. Some people from one
         | discipline may be versed enough in another to cover the role,
         | but the role must still be present, or there will be pain and
         | work thrown away later on.
         | 
         | (incidentally, the ability to understand an issue from these
         | multiple but interrelated angles is what makes experienced
         | people so valuable in gamedev, and their constant loss to other
         | less crazy industries so painful)
        
         | kaba0 wrote:
         | It depends on the program domain, but I think it must have been
         | quite fun designing a game as opposed to the client still
         | doesn't know what it wants and this API should instead do this.
        
       | walrus01 wrote:
       | In the context of Cabal and video games, I was expecting
       | something about Destiny 1/2
        
       | throwaway3699 wrote:
       | I think the Cabal concept is especially interesting in the wider
       | context of Valve's "self organising" culture. It doesn't seem
       | that this structure was designed, but was emergent.
        
         | PicassoCTs wrote:
         | This structure is definitely not emergent, if left alone, human
         | groups form little fiefdoms around local "lords", the hierarchy
         | and bureaucracy of a feudal system emerges. To have working
         | anarcho-syndicalism is a constant fight against this mechanism.
         | 
         | Who decides how much anyone gets paid, and how many virtual
         | crystal gold smileys someone gets for doing what he currently
         | does?
         | 
         | How many golden-smileys do you have to have on your shoulder to
         | influence that decision?
        
       | jokethrowaway wrote:
       | The Cabal sounds great and I'm looking forward to try it.
       | 
       | I'll pick the projects carefully though, as it's impossible to
       | ship more than two products with this methodology.
        
       ___________________________________________________________________
       (page generated 2021-01-16 23:00 UTC)