Back to search

I get machine validation. I get you've got to build some stuff. Is that all we can do? Make me feel better about how we're going to fix this.

TL;DRBeausejour says the team is building a validation framework that designers can use to query across all game data and find outliers, plus more compatibility checks and the beginnings of patchable database data in 4.8, aiming for forward-patchable data.

Benoit BeausejourChief Technology Officer

Sure. So it's a problem we've known about and we've been trying to solve. And so more recently, there's more changes that have been coming from the engine side to give us a framework for validation. When I say framework for validation, I mean one that game designers can participate in, right? It's not like, oh, they need to hand it off to an engineer, the engineer is busy and he can't do the work and now the validation is not added, which is the mode that we've been in in the past, right? And so we've been in the process of building a validation framework for all game systems and all pieces of data stored in the game that can do queries across all data, whether it's, hey, I have a mission in this location that requires this, that pays out this. Is that an outlier compared to others? And so being able to do cross-data queries across the entire game, which is not something we've had before. Which allows us then to just express these checks, find outliers in mission payouts, find outliers in how, if we go back to the example of the gun: it's for sale at this location, at this price, it's dismantlable into these components that can be sold at this location, that exchange value is too high, right? And so creating these validations will become part of the design work with this framework, which will allow us to have all these guardrails. On top of that, we've got the more technical validation. So the two issues we got in 4.8, related to modifying ships that were already distributed in the main patch and removing entity classes, for example: both of those things already have locked checks right now. And that's the first thing we did when we discovered them. But we're going to keep adding more of those compatibility checks. 4.8 also has the beginning of database patching. So in 4.7, we didn't have the full ability to persist all the crafting properties on weapons. So if you crafted weapons, all the modifiers were not necessarily going to persist through LTP, right? In 4.8, we have introduced in the backend patchable serialized variables. We didn't talk about it much because it's kind of mixed into the crafting system, but basically now, in the schema of a component, which stores the data for something, let's say it's a weapon and I have the modifiers for it, let's say elongated nozzle, faster damage rate, whatever, we now know which one of those values is patchable. And then we're able this way to persist them and patch them in the next release. We also determine which ones we store when you stow it. We don't stow all variables, which used to be the case. And that's the foundation for us to keep working at what we really want to achieve, which is a forward-patchable data set, so that even if the ship team goes in, changes all the serialized variables for a ship and rejigs the whole object container layout for a ship, we'll be able to live migrate your ship to the new version without crashing the game servers in the meantime. So basically embracing this movable data set. But that's tricky to do. Obviously, we've been at this for a long time. But 4.8 has the beginning of that, just for crafting properties.

Star Citizen Live›Tech Talk·
Published on this date.18 Jun 2026