Back to search

What is an NPC behavior, and what are we doing [today]?

TL;DRAn NPC behavior is the brain of an NPC, built as data-driven, modular activities such as a job like engineering, with decision logic and environment understanding, demonstrated through an engineer behavior built from scratch.

Basically, I think all of us here work both on... some of us, as a programmer, work on some of the systems we define, we design and we build, implement. Some others, as the designers, are mostly working with the systems we build and they help us building. So the behaviors are mostly the brain of the NPCs, right? So the way we split the things is we try to build, first of all, as much as possible... it needs to be data-driven to scale up, right? This game is so huge. We need to just allow designers and content creators to create content that we use automatically, right? To patch the game and expand the game. And one of the things we want to show today is something that me and Dan have been working on for a while. And I think we also showed some sneak peeks, mostly during the monthly reports, but it's the engineer behavior, as an example of how we build a behavior from basically scratch, right? So how we define mostly what we want an activity to do, because we talk about behaviors in terms of activities. Usually an activity is kind of a generic representation of a job, right? It could be the engineering job. It could be the pilot security that Jacob has worked on, or the tourists that Hayden has been working on. Something that the NPC can do. I'm sure a lot of people that are watching here saw Tony's video that was out this week, with all these things with the population manager and the virtual NPCs. With this really cool population manager we can basically spawn them in the right context, and their context is the activity of what they are trying to do and the environment in which they are in. So basically that is what behavior is. And to achieve that, let's say an engineer, there are a lot of pieces that we have to take care of, like building the environment or making sure that the NPCs understand the environment as well. And then there is the actual decision logic, decision flow. And what that means is that we try to abstract our thought process flow. It's like, oh, I want to find something that is broken. I want to repair something that is broken. And then how that basically constructs the actual action that they need to perform. It tries to be as generic as possible, as modular as possible. And this is what we'll see today.

Star Citizen Live›Gamedev: Building NPC Behaviors·
Published on this date.28 May 2021