'Death Stranding': An AI Postmortem

In this 2021 GDC AI Summit session, programmer Eric Johnson explores the unique AI challenges faced during the development of Kojima Productions' debut title, Death Stranding.
Join the GDC mailing list: www.gdconf.com/subscribe
Follow GDC on Twitter: / official_gdc
GDC talks cover a range of developmental topics including game design, programming, audio, visual arts, business management, production, online games, and much more. We post a fresh GDC video every day. Subscribe to the channel to stay on top of regular updates, and check out GDC Vault for thousands of more in-depth talks from our archives.

Пікірлер: 98

  • @JayJayYUP
    @JayJayYUP2 жыл бұрын

    Man, the whole time playing the game, I would be testing the AI thinking to myself: "Lets see you guys get me from here". Always amazed me how well they behaved. Eric and his team are genius. Also appreciated the LOD AI simulation system, added so much realistic life to the game.

  • @AlexStrook
    @AlexStrook2 жыл бұрын

    The AI ladder part was so interesting! The visualization of the entry/exit points of ladders was amazing

  • @err0rc0degames
    @err0rc0degames2 жыл бұрын

    Death Stranding was seriously technologically impressive

  • @RufusM
    @RufusM2 жыл бұрын

    Absolutely wonderful presentation. Can’t think of how much effort it took to perfect the “Ping” system.

  • @-carlos-danger1891
    @-carlos-danger18912 жыл бұрын

    It blows my brain to bits, to see the lengths some companies will go to create an immersive experience. Great vid!

  • @Lycam
    @Lycam2 жыл бұрын

    Some ideas: if the path is far, the NPC taking a few seconds to visualize the best path would still be realistic and human. When the NPC is following near the player, following the player trail (mimicking the same path) would also be realistic. When a human is speed chasing someone, it normally follow the same steps to avoid wasting time or taking a wrong path.

  • @C3IAM
    @C3IAM2 жыл бұрын

    Finally. I've been wanting some kind of discussion with the programming team of this project. Thank you!

  • @iassenev
    @iassenev2 жыл бұрын

    Thank you for the postmortem, here are a few notes regarding it: * the bottleneck of the A* speed could be slow Recast neighbors retrieval, but one may cache this after the navmesh tile has been created * one may use various NPC speeds in high-cost areas to compare the paths not by their length, but by the time needed to traverse them * it seems, the explanation of the problem with completely different routes is inexact While it is hard to disagree that the routes to the same destination depend on the starting location and could be completely different, on the other hand, it is impossible to get an even shorter path during navigation through the shortest path. There could be the following reasons for this: 1) during path following NPC deviates from the path, and then the path query from the NPC location returns a different shortest path. Usually, the new path does not differ significantly from the original path. Also, if the deviation from the path is negligible, one may compute the next path not from the actual NPC position, but from the nearest point to the NPC on the path. 2) the path is not the shortest. Since the geodesic path (the shortest path on the surface in 3D) is an NP-hard problem, it is usually impractical to compute an optimal route in real-time. A* on the polygons graph with the edges through the polygon edge medians with consequent string pulling (Recast) does not guarantee an optimal route. Such an approach tends to change the 'optimal' route drastically. As an alternative approach, one may try using TRA*, which guarantees optimal paths in 2D, but the TRA* is computationally expensive (especially on the Recast navmeshes, where the navmesh vertex is not always an obstacle vertex) since it inspects every possible funnel to every polygon. One may trade-off optimality of the TRA* for the performance by caching funnels for each way of getting into the polygon though. If such an approach is used for the single-source search as well, one gets the 'optimal' funnel to every explored location, the path could be retrieved by just running the funnel algorithm. Having the path for every explored location makes the locations' evaluation much easier.

  • @Nielsblog
    @Nielsblog2 жыл бұрын

    I do really appreciate the transparency on the algorithms used. And more importantly you also showed the process that got you there. Very educational! I would love to see more technical talks on the inner workings of this game. It's the multiplayer system I'm most curious about right now.

  • @augustsbautra
    @augustsbautra2 жыл бұрын

    Superb talk! Love seeing the nitty-gritty like Corridor straightening, Continuous string pulling, and Cost delta.

  • @GameDevNerd
    @GameDevNerd2 жыл бұрын

    Watching this video was extremely valuable to me to learn about the problems faced by other AI programmers during production and how they were dealt with at a high level. Thanks so much for doing this!

  • @mikeohc
    @mikeohc2 жыл бұрын

    Very informative. Probably one of the best GDC in regards to breaking down exactly how things worked.

  • @aritrobhattacharya6480
    @aritrobhattacharya64802 жыл бұрын

    Ah!! Finally A Discussion of this Avant-Garde gem of a Game. Really wanted a deep dive behind the systems which made playing the game so much fun.

  • @KimboKG14
    @KimboKG142 жыл бұрын

    for the first 20 minutes this was just the basic nav-system I work with in unity. but from that point on awesomness ensued! just like the game! though I got pretty pissed at the procedural rocks as I somehow memorised them from my last visit in the area. none the less even after 150+ hours I am still amazed when I scan the terrain. I would love to see a talk about the balance system some day. thanks to all of the team for creating such an astonishing experience!

  • @morozom91
    @morozom912 жыл бұрын

    Thank you for such a great presentation! So much attention to detail and many good ideas there.

  • @HockEnergy
    @HockEnergy2 жыл бұрын

    This is just an amazing presentation, cant wait for more

  • @knightlessshadow
    @knightlessshadow2 жыл бұрын

    I've been wanting a GDC for death stranding for a while and glad to see t., contributing to the industry but more importantly to the future innovation.

  • @brujua7
    @brujua72 жыл бұрын

    Great presentation, very helpful examples and animations. Thanks!

  • @MaxwellDexter
    @MaxwellDexter2 жыл бұрын

    this was an amazing talk, thank you!

  • @demondevilmon980
    @demondevilmon9802 жыл бұрын

    Such a great presentation! Telling what and how is one thing. But why makes the whole thing much more relatable. The result speaks for itself. I think it is not common to get a list of missed milestones. Thank you for the insight! Glory for mankind!

  • @rpg500e
    @rpg500e2 жыл бұрын

    I'm not even a dev, but this was fascinating. Glad to be able to follow as much as my little bit of comp sci/programming allowed

  • @Dominik-K
    @Dominik-K2 жыл бұрын

    This is really interesting and a great talk about AI navigation in a complex environment

  • @Scrawlerism
    @Scrawlerism2 жыл бұрын

    Such a good vid. Thank you all

  • @ChrisM541
    @ChrisM5412 жыл бұрын

    Thank you so much for this utterly fascinating video! I have a fair bit of experience with games programming in the 80's - it's interesting to see how things have changed and how many principles have remained the same. As for Death Stranding...please, let there be a sequel!

  • @GutsTheBeast

    @GutsTheBeast

    3 ай бұрын

    Hello from the future, just came to say that DS2 is in a fact ;)

  • @qingluwu1441
    @qingluwu14412 жыл бұрын

    Great lecture! Thanks!

  • @Goomero
    @Goomero2 жыл бұрын

    greatest general AI talk ive ever seen

  • @arthur.lass7814
    @arthur.lass78142 жыл бұрын

    4:42 the concept looks so much like MGSV gameplay, the aiming and sprinting cameras angles wow

  • @gary.oneill
    @gary.oneill2 жыл бұрын

    Extremely interesting talk! Nice demo

  • @Keytotruth
    @Keytotruth2 жыл бұрын

    Magnificent. I learned a lot from this.

  • @SudoYETI
    @SudoYETI2 жыл бұрын

    I love the fact that even on complex issues like this, sometimes you just gotta google for the answer. In this case they solved 2 problems from posters from 10 years before they even know they needed it.

  • @jebbp9223
    @jebbp92232 жыл бұрын

    this was amazing

  • @rarabeaka1051
    @rarabeaka10512 жыл бұрын

    Amazing presentation about amazing game, thanks

  • @blakensash4079
    @blakensash40792 жыл бұрын

    This is such a good video.

  • @andreasmuller9455
    @andreasmuller94552 жыл бұрын

    thanks for sharing :)

  • @THExRISER
    @THExRISER2 жыл бұрын

    Fascinating, didn't imagine the AI would be this complex.

  • @JohnDuraSSB
    @JohnDuraSSB2 жыл бұрын

    Awesome!

  • @RazielIgor
    @RazielIgor2 жыл бұрын

    I'm just curious, when calculating navmesh, instead of calculating equal distances from the NPC, wouldn't it help to calculate more of the NPC's moving direction? If NPC stands still, you could calculate like a sphere, but if the NPC starts walking forward, you would calculate like an ellipse which calculates less navmesh behind the NPC's moving direction and more of where they are headed for? I don't know if it would end up using more sources when calculating the new navmesh cone, it just came to me while watching this video.

  • @MortyFoodReviews
    @MortyFoodReviews2 жыл бұрын

    Time to get this game soon.

  • @Nikolai508
    @Nikolai5082 жыл бұрын

    Fantastic game, great job on it.

  • @noisyether9211
    @noisyether92112 жыл бұрын

    Wow Awesome!!

  • @taepyeoon8245
    @taepyeoon82452 жыл бұрын

    Eric and the team did a fantastic job in this game. If you're reading this, consider having a more customizable difficulty for experienced players like pathologic 2. The game was simply too easy even on the hardest difficulty

  • @neutch1991

    @neutch1991

    2 жыл бұрын

    The PC and PS5 version has a very hard difficulty, but I don't know how much harder it is.

  • @matthewb3725

    @matthewb3725

    2 жыл бұрын

    @@neutch1991 its pretty brutal honestly. it amps up just about everything it seems. game was very easy on normal - having a lot of fun on very hard

  • @bleedthesecolours
    @bleedthesecolours2 жыл бұрын

    I wonder if making enemies roam in only specific (mostly flat) areas is to do with countering navmesh issues.

  • @lucbloom

    @lucbloom

    2 жыл бұрын

    Or; people tend to work/live in flat areas. No sense “patrolling” up and down a cliff side :-)

  • @camille-jeanhelou4444
    @camille-jeanhelou44442 жыл бұрын

    Love it

  • @llucllumador380
    @llucllumador3802 жыл бұрын

    this talk was incredible. The lengths they went through to make the AI along with the navmesh adjust to any kind of terrain. Other companies would simply avoid this problem by hand-crafting the area around MULE camps. Other companies would have the rocky terrain just for show, with a flat and simple navmesh below and the AI just avoiding problematic areas. But these guys went and made the AI able to hike around the map, taking into consideration every single little rock, crevice, river and pond,, just like the player would. Such a fucking nightmare I would have given up on the system by the 20th time testers reported the AI doing 360º turns or other dumb shit. Wish the enemy camps had a little bit more weight and challenge so we got to see more of this system in action. Would have been cool to have MULEs squads patrol around the whole map, not just around the camp, just to take advantage of this AI that can adapt to any location.

  • @austinhearn6111
    @austinhearn61112 жыл бұрын

    Good video

  • @peckc16
    @peckc162 жыл бұрын

    A shame I never got to see any of this. I found the mules so easy to take out that I'd just run into their camp with a package in hand and that's all I needed. Never had to run from them.

  • @TheTherapistGamer
    @TheTherapistGamer2 жыл бұрын

    Amazing! Top tier developers!

  • @KunjaBihariKrishna
    @KunjaBihariKrishna2 жыл бұрын

    Despite the praise this game received. I still feel like it is way underappreciated for what it is. This game set milestones in every aspect of game-design. I'm still blown away by it

  • @herp_derpingson
    @herp_derpingson2 жыл бұрын

    I played the game on launch. I used to routinely hide in canyons to avoid mules. I didnt know it was a bug that was patched out. I thought it was a feature.

  • @johnleorid
    @johnleorid4 ай бұрын

    How does the Low LOD AI work? When they generate NavMeshes that's not cheap on performance, even when it's running on a background thread .. you definitiely can't fast forward NavMesh generation, as it's a slow process. So how exactly does it work then?

  • @reionami5983
    @reionami59832 жыл бұрын

    amazing now i wait DS 2

  • @lappaduch7475
    @lappaduch74752 жыл бұрын

    Seems like first Strand-type AI

  • @davidosuna6411
    @davidosuna64115 ай бұрын

    oh, i was supposed to chain the markers. I thought they were supposed to be used in a straight line.

  • @sinho113
    @sinho1132 жыл бұрын

    wow i came here by accident and endup watching everything at once

  • @Terminus316
    @Terminus3162 жыл бұрын

    I want to go in that room

  • @maxlawwk
    @maxlawwk2 жыл бұрын

    Why didn't your team use Fast-Marching Algorithm for continuous and smooth path searching? The cost of each pixel could be the inverse of the game-defined walking speed at that pixel's terrain. The Riemannian variants could enforce NPC turning regularization. Modern level-set methods could be easily handled PS4 or post 6th gen Intel CPU. NPCs could hesitate to wait for the calculation at abrupt changes of terrain, just making it more human.

  • @happytoaster1
    @happytoaster15 ай бұрын

    I appreciate admitting pulling ideas from blog posts and comments. It's certainly what the rest of us do. :)

  • @chunt5584
    @chunt55842 жыл бұрын

    Anyone got that private room background?

  • @ludenprime
    @ludenprime2 жыл бұрын

    I love this game!!!!!!!!!!!!!!

  • @rockforlight
    @rockforlight2 жыл бұрын

    I knew a few of these words.

  • @drvortex
    @drvortex2 жыл бұрын

    Loved the "Level Of Detail AI" concept, It was a first for me

  • @rachelrunner8948
    @rachelrunner8948 Жыл бұрын

    I loved DS and every bit of it, but got a little disappointed that Mules would mostly mind their own business and not wander off their areas or travel in between camps. Early in the game I took infinite detours to successfully avoid them, and I now realize this is quite more tedious than if I had felt bold enough to go through them. I do feel like the the environment did lack a bit of interaction with itself and that created a lot of predictability into route plotting and delivery optimizations. Speaking of LOD AI systems, it really reminds me of Rain World that really exploited that idea to its extreme. It does make things feel truly alive. This is the only thing I felt that was quite lacking in DS, and that is however present in other open world games such as Far Cry and GTA. That kind of surprising unpredictability that creates amazing anecdotes. It does exist when we do trip on something and sort of miraculously salvage the cargo or when the trike lands stupidly on the top of a timefall shelter after a tar flood, but I feel like this could be pushed so much farther. I also wonder why the current AI couldn’t afford to have some hesitation time while rerouting. It would be realistic. As it is, this AI is already much more efficient at finding its way through things than I am in my own street. Yes, I do turn in rounds and sometimes get locked into indecision. 🙃 In any case many thanks for this lovely talk, it is been a long time since not having seen so dense, well-packed talk that gives actual actionable information and not only hints of ideas.

  • @gamongames
    @gamongames2 жыл бұрын

    I wonder why would they decide to bake the navmesh at runtime on a terrain this complex? even with dynamic objects changing it, having most of it baked from the start and just rebaking around the changes would be the standard. this way youre making the same calculations over the same patches of terrain again and again as entities move over it and basically is the source of some of the pathfinding problems he mentioned.

  • @Sergeeeek

    @Sergeeeek

    2 жыл бұрын

    Judging from another comment here it looks like the game can procedurally change rocks and other obstacles so that's probably why.

  • @Mireneye

    @Mireneye

    2 жыл бұрын

    I'm assuming because they want to save on upfront memory cost, specifically on consoles. This takes a few more cpu cycles but they don't have to keep a large complex nav-mesh in memory at all times.

  • @gamongames

    @gamongames

    2 жыл бұрын

    @@Sergeeeek you can rebake for dynamic objects, as I mentioned.

  • @gamongames

    @gamongames

    2 жыл бұрын

    ​@@Mireneye faster initial loading but a continuous burden on CPU. weird, but ok

  • @Mireneye

    @Mireneye

    2 жыл бұрын

    @@gamongames you have to consider that you'd have the entire navmesh in memory at all time, it's not that weird that you make that choice for consoles imo :)

  • @arsnakehert
    @arsnakehert2 жыл бұрын

    All this work so I would always take the long way around MULE areas... sorry, KJP Now in my second playthrough I'm taking my time to engage with them and mess around with them

  • @WillyOD
    @WillyOD2 жыл бұрын

    11/10

  • @Jabrils
    @Jabrils2 жыл бұрын

    great talk, but I am a little upset that you decided to not stick around for Q&A.

  • @TheJacklikesvideos
    @TheJacklikesvideos2 жыл бұрын

    AI 'grammer for Kojima? I'm listening 🎧

  • @Dfjs427
    @Dfjs4272 жыл бұрын

    Best game I've ever played. It's insane.

  • @marcusaurelius647
    @marcusaurelius6472 жыл бұрын

    Lol I didn't understand any of this while playing and proceeded to just punch the enemies. Should have watched this prior to playing. I legit thought stealth was not a mechanic in that game.

  • @edwardnewtonLA
    @edwardnewtonLA2 жыл бұрын

    Am I crazy, or did the notification say "Deathloop: An AI postmortem?"

  • @JohnSmith-uu5ov

    @JohnSmith-uu5ov

    2 жыл бұрын

    Possibly, and I think you mind filled in the blanks, the subconscious party of your psyche was thinking "deathloop" so you projected onto your environment. Btw they just love me at parties and all fun things.

  • @edwardnewtonLA

    @edwardnewtonLA

    2 жыл бұрын

    @@JohnSmith-uu5ov It's very possible, on all counts. 😁 Pass the chip dip.

  • @JellySword8

    @JellySword8

    2 жыл бұрын

    Probably thought of it from dunkey

  • @Fransadiwinata
    @Fransadiwinata2 жыл бұрын

    I hope OpenAI GPT-3 watch this and learn it.

  • @StarshipJais
    @StarshipJais2 жыл бұрын

    +1, commenting for algo boost.

  • @evogarciagaming6791
    @evogarciagaming67912 жыл бұрын

    The technical aspect of this game is amazing: graphic, AI, pathfinding, performance, etc. Sadly, the things Kojima are responsible for, story, characters and gameplay design, are very questionable... This game was a tedious to complete (not hard, I barely die two times. Just tedious), the only thing that keep me playing was the amazing graphics, music, animations, small details, etc.

  • @Sildurian

    @Sildurian

    2 жыл бұрын

    Yup, to me it felt like gameplay was in the way of story.

  • @Budderluvr

    @Budderluvr

    2 жыл бұрын

    this was a very different game from any of his other ones and im sorry you had a bad time as personally i know kojima's games are just some of the best ever. personally i found the game to be absolutely amazing and i loved is just as much maybe even more than mgs. but the story is almost one thing everybody agrees is phenomenal even if they didn't like the gameplay. and just because you don't really die a lot isn't really a good way of judging game difficulty as there are ratings to every mission where you can get a A if your perfect up to f if your terrible. hideo has done this for awhile even in metal gear. however i understand that your not the only one who feels this way.

  • @bananablue3058

    @bananablue3058

    2 жыл бұрын

    I like the part you don't like though. It makes me care more about WHY traveling, WHERE I am traveling and HOW I traveled it. It is a rarely explored aspect in video games.

  • @BenRangel

    @BenRangel

    2 жыл бұрын

    I watched the movie version (just cutscenes) and I can't really see what the gameplay would add to it. I would likely forget the last cut scene if I had a 2 hour walk.

  • @mobilechedds

    @mobilechedds

    2 жыл бұрын

    That's the thing about niche games, they can never please everyone

  • @nintendude794
    @nintendude7942 жыл бұрын

    First?

  • @streetz86
    @streetz862 жыл бұрын

    First.

  • @davedm6345
    @davedm6345 Жыл бұрын

    I don't like it at all, it makes me leave the game when the AI or Mules start throwing javelins like crazy and, moreover, they calculate the path of the vehicle or on foot and shoot all at once, it seems like a very bad game to me, all the javelins fall with electricity at the same time making the gpu consume a lot of resources and visually it looks bad also the sound is affected since it is covered with the discharges, this really makes me leave the game since I tried everything to avoid this but it is already unplayable. To me it's like just spam Javeline like crazy mule hack or so on LMAO, because they can't carry any more, it's just ridiculous, maybe a mechanic to stop this because truck reforced seems like a hack because Sam is still damaged in to the truck you can hear it evry time and so on.

  • @nickb220
    @nickb2202 жыл бұрын

    You can work so hard on a game and have it be so average :(

  • @Masamoone
    @Masamoone2 жыл бұрын

    BORING GAME

  • @maymayman0

    @maymayman0

    2 жыл бұрын

    no