Entity cleanup: we're seeing ships left everywhere and trash left everywhere. What can you tell us about entity cleanup?
TL;DRSeveral cleanup systems have been unified into one platform with density classes, per-region tuning, lifetime cleanup, abandoned-vehicle timers and the pink-slip intersection cleanup, which are tuned every patch and are improving, though not a magic switch.
Well, so one thing, I think we touched on this a bit in January, right? One of the things that we put into 4.0 was the beginning of some physics cleanup, right? Now, since the beginning of the year, we've unified a lot of the cleanup systems, right? So namely, we had an abandoned vehicle tracking system, we have the physics intersection cleanup system, we have the actual density manager. And so now all of this has been unified into one platform. And so what we're able to do with this now is we have density classes. So depending on the type of item, we can define the density class, which basically allows us to say no more than X in a volume of Y for this kind of item. And obviously, there's way more parameters. I'm just trying to keep it simple so we can understand what it does. We've recently added the ability for designers to basically vary these density classes by region. And so now they can say, in this location, make this super aggressive, make this less aggressive. And so the density manager part of this is really about items in the game world that are dynamic that we want to make sure we keep at a manageable level. And so if you start putting water bottles in one place, at some point, it'll start cleaning up because they're in the same volume, and the density class of the water bottle will inform how many we want to keep and how we want to do that. There's also lifetime cleanup. So things we want to live, but we want them to disappear after a certain amount of time. So we've added that functionality in. So that's a lot better. And then vehicles come into play. So abandoned vehicles. We've been tuning this since the beginning of the year behind the scenes, this and the physics cleanup. So abandoned vehicles is basically when you leave a vehicle completely abandoned. So no passengers, nobody's left on it. It's left on a planet. You leave it there. Already, it's put on a timer. And so at some point, we'll have to clean this up. If it gets interacted with, if passengers come into play on it, whatever, that revives it, resets the timer. I think, if I remember right, that's set to something like two hours right now for abandoned vehicles, regardless of class for now. So that is something we want to add, which is basically change the density class for larger ships so that maybe they go faster. This is the kind of thing we need to keep tuning. And so the abandoned vehicles will actually clean up those areas. Now with the new system we have coming in, we'll be able to override these values per region. And so for planetside locations where we know there's going to be traffic, we can make that a lot more aggressive. And the last part of the cleanup system is the pink slip. I call it the pink slip, which is, hey, my ship turned pink, and bam, it's gone. Which is basically areas of the game where your ship is entering into a deep intersection with something else. And this is true of all areas. So if something enters deep intersection for a number of frames, based on the size of the entities and the size of the area, we will clean it up. We're going to first turn it pink, full pink, for a certain amount of time, and then, oof, it disappears. The reason for that is because the servers are still very much physics-bound. And currently, I'm not saying it's impossible, but currently, there is no elegant way to break those collisions automatically and cleanly. It typically creates a maelstrom of physics problems when you try to fix it. And now you've backed it out into another physics element that is now colliding. And so you end up with these massive unstable systems. And so the pink slip is there for the moment. We're trying to improve this. We've been tuning these values quite a bit since the beginning of the year. Every patch, we adjust the density classes, the abandoned vehicle timers, and the physics intersection costs a lot. I feel like we're seeing a lot fewer reports now. It's getting a lot better. I think we're getting into the sweet spot, but it's unfortunately not a magic 'just turn on density tracking', right? We already have density tracking. It's really about tuning the numbers so that it feels good, right? And that's the hardest part of this.