Developer dossier

Diego Marti Mason

AI Programmer, Flight Combat

All 3 answers
3answers
2023active
Star Citizen Livemost heard in
NPCs & AItop topic

Topics

Answers per year

2023 · 3
20232023

Recent transmissionslatest 3 of 3

Has there been any progress on AI blades? What can you tell us at this point?

TL;DRThe AI module (blade) technology already works and is used on some capital ships, turrets and ATCs, with the AI side largely ready and the remaining work being how players obtain and use blades.

Diego Marti MasonAI Programmer, Flight Combat

I can take this one, yeah. I think the technology is already there, because I know a lot of people ask the question: is it a concept? Is it already working? We've got the technology there. We're currently using that in-game at the moment for some capital ships and even for the turrets that you see in the bunkers or outside the stations. We essentially have this AI module that communicates with various items in the game, like the flight controller, and they can pass inputs to it, same with the turrets. In terms of bringing it to the players, I think, Francesco, you probably can answer that better.

I mean, yeah, I think we have even some ATCs actually using the AI module in Star Citizen since quite a while. Because basically the idea is that, as everything in the spaceships works, right, where you have items attached to other items, we do have this special item that we call the AI module, that is kind of a blade; the lore is a blade. Basically, you can execute logic, right? You can run specific logic for the operation that it needs to perform. And I think right now, basically, yes, we're going to wrap up these things a bit better. And I think the majority of the work, obviously, is how we want to expose it to the players, how you can buy them, how you can take them and attach them to your ship. So it's a lot more now about how the player interaction, the player loop, is going to be on the blades. But basically on the other side, we did have enough progress in the past year to have that pretty much ready, to have all the basic functionality to support that on our side. So obviously, again, our feature needs to be wrapped around a lot of teams, not just the AI functionality, and that's where we are at right now. But yeah, an AI module, again, right: blades that control the turret, blades that can control the pilot seats, blades that can control... And as everything that we do, right, this runs just our Subsumption behaviors. That means that we can apply traits. We can apply skill levels to those. So you can buy a good blade, a bad blade, and the designers can configure what a good blade means or what a bad blade means. Or a good turret blade that is maybe hitting more often because you paid more money, I don't know. Or a pilot one, different personalities of those blades, right? So that it can also do some special maneuvers and that costs more, or the one that is a bit more conservative and that can just help you piloting your ship. Maybe you're not even going to fight that much, and you just want to have something that you can control and give commands to autopilot somewhere. And this is what we can be seeing.

Star Citizen Live›Ask the Devs - AI for U and I·
Published on this date.15 Dec 2023
EpisodeNPCs & AIShips

How do you guys deal with that responsibility [given that AI is so critical to immersion]? Am I right? And if it is, how do you deal with that pressure in your work?

TL;DRThey agree AI is a nexus of many systems and must look readable and sensible to players, so they add fallback cases and balance it against being too efficient, while feeling pressure to ship experiences, bugs included.

Andrew DaviesLead, AI Feature Team

I think you definitely are right, and I think there's a lot of things there. One is that we are bringing together lots of different game systems, so we're working with all of those things. We're working with the graphics, we're working with animation, we're working with the effects, we're working with the sound design and all of those things. So it's a nexus point for a lot of other people's tech to all make it work. But also you're right that you notice things in gameplay a lot; you don't forgive somebody not doing the right thing a lot more than in a lot of systems. And I think a big part of that is telegraphing what the AI is doing in the right way, making understandable choices. And that's one of the things we've seen with the issues with AI not reacting, in the bugs that we've been fixing recently: not necessarily that they thought they were doing the right behavior, but because it wasn't understandable and readable to the player, it looks wrong, and immediately looks wrong, no matter how clever that behavior might be. And so that's definitely something that we've been working on a lot. And one of the areas we're focusing on is you code your AI for a very known situation, and then designers and level artists and all of these people come up with wonderful ways to test these things, and situations you hadn't imagined when you'd first started writing the code. And so one of the things we've been working on a lot is adding in lots of fallback cases. So, oh, what if I don't have a nav mesh in this particular situation? What should I do instead? What if I have no target, but there's this person who's shooting at me in front of me? And they can react to maybe not necessarily bugs, but other little mishaps in a much more sensible, readable way that's understandable to the player. You're not going to notice so much. And sometimes we go the opposite way, and then they seem to be too efficient, and they can be attacking the player too often, and oh no, they know too much, so you've got to dial it back again. So, yeah, it's a delicate balancing act.

Diego Marti MasonAI Programmer, Flight Combat

What Andrew is saying there about them being too efficient, that's something that, when we were making the flight AI, I was playing with Yogi from the player experience team, and we were learning how we were playing against each other. And I came up with the prototype, right? And the first prototype that I made, I think my AI just destroyed them all. It was too good. And it's those things that are sometimes hidden, and we keep playing to make sure that it actually feels good, not as good as being a killing machine, but good enough that it's a good challenge.

But I think in addition to that, basically one important thing is that we do feel the pressure of trying to give this experience to the players, right? And I think what's hard in development, this is where reality sometimes comes into place, is that you need to choose sometimes between focusing on the long-term goal or the short-term goal, right? So you know that some bugs might also be things that you might fix later because you have it planned. And obviously, from the way we develop the game and the way we share the game, you often can see much more than what players would usually see in a normal development flow, right? That is, you do it behind closed doors for so long that you only see things when they are working well. So for us as devs, also sometimes there's the frustration of saying, I could have just cleaned this up a bit better, or been focusing more on this other bug or this other experience that Andrew was saying, or the balancing that Diego is also talking about, right? And obviously we do have the great advantage on the other side, that you guys can experience stuff that is not finished and we can get some of the feedback much earlier. And yes, some stuff might already be... but some other stuff it might actually be really good to get that feedback on, right? And the type of changes that we can push based on stuff that we might have not considered. So I think there are advantages and disadvantages as well. But it's definitely good to have this opportunity from our perspective as well.

Star Citizen Live›Ask the Devs - AI for U and I·
Published on this date.15 Dec 2023

Can or do AI use scanners to see through walls or radar to detect ships from far away? Do they have access to the same technologies that the players do? And if so, how do you balance that?

TL;DRAI ships use the same radar component as players, and the team wants FPS characters to use the same items, with perception senses and ping reactions that designers can switch on or off per mission, without cheating.

Diego Marti MasonAI Programmer, Flight Combat

So in terms of radar, I can speak for the ships, but yes, the AI just uses the same radar component as the one that the player uses in the ship. So depending on the ship that the AI is flying, it has those radar capabilities based on the balance of that ship.

We want to use the same on FPS as well. With characters, obviously the balance is through the traits that we've spoken about and the fact that they do have their loadouts, these items, first of all. So for example, if we give FPS characters the radar, you can also decide from a design perspective if you want them to use it or not. First of all, obviously the ship is a bit special, because ship versus ship, you have to use the radar, but basically the perception system for the AI can be extended with different senses, as we call it. The radar is one sense. And the behavior already has specific nodes that allow them, for example, to ping through the radar. And the other thing that we want to do is to react to being pinged. And also in that case, basically, it depends. First, you will react if you are pinged if you do have a radar that notifies you of being pinged. And we can also say maybe there are some easier missions, or, with the balance of the gameplay flow that we want, we can say, OK, those guys should not react to being pinged, but they should be able to ping, so that we can also use the AI to train, because this is the other part of game mechanics that is important, right? You want to use the AI to also teach mechanics to the player. So you can say, okay, now we make you a mission where the AI can ping you, but you are safe to ping yourself. So they can still kind of learn that mechanic. And there, as with the player, we use the exact same item. So the AI can say, I want to ping very quick, I want to ping very long so that it can be detected. And we can absolutely control this. And what this does is it just updates your perception. So the AI can basically know the snapshot of your position from that. And we don't really cheat on the AI perception, right? Vision, audio, radar sense, and pinging updates, basically.

Andrew DaviesLead, AI Feature Team

I think there are several levels of that as well with the AI. One of the levels is, oh, well, they'll just know that they've been pinged, and so suddenly they'll change alertness status and maybe go hunt for you. And another one, the higher-up level, is that they will be able to pinpoint where you are and immediately go to you, like, oh, I've been detected.

Star Citizen Live›Ask the Devs - AI for U and I·
Published on this date.15 Dec 2023

All developers