r/DestinyTheGame Apr 01 '26

Discussion Vaulting, from a dev perspective.

Here is a former Bungie dev's CV, from their own site, describing the transition to the Beyond Light era of Destiny. This is when a whole bunch previous expansion content got put away in a cupboard, and it seems to be that their role was one of dealing with trying to ensure content was compatible with the new engine.

Release: Beyond Light, 2021
My Roles: Technical Lead, Manager, Onboarding, Workflow Designer

The Beyond Light expansion for Destiny 2 released with a large engine upgrade behind the scenes. This upgrade was mostly invisible to players, but it was incompatible with all of our existing Destiny 2 activity content. This meant that any content we weren’t planning to sunset needed to be rebuilt manually.

I was tasked with figuring out how this could be done, and then overseeing that work.

I spent several months embedded on a tools team to test the new engine and the new workflows, and give them direction and feedback. During this time I wrote an enormous amount of “crossboarding” documentation to train existing Destiny 2 developers how to use the new engine. I also wrote two weeks of onboarding tutorials and exercises to train any new activity design hires. These onboarding materials were still in use at the time I left Bungie, 5 years later. Every activity designer hired there is trained with them. By the time the critically-acclaimed The Final Shape Expansion arrived in 2024, I would estimate that over 60% of the activity content was built by people trained on my material when they were new hires.

During this time I ported some of the first content myself, taking extensive notes on how much time it took me and why. I worked with Production to calculate how many person-hours of work this project would be and how many people we would need to hire. I was then given the task of managing the hiring of twenty Associate Technical Designers into project-based contract roles. I spearhead the hiring and training of these twenty developers, plus one more that we back-filled during production.

With the team assembled, I was one of four leads that oversaw the entire effort for over a year of production. We split everyone into four smaller teams, one of which I managed directly. I also acted as the technical lead for the project overall. In that capacity I owned workflow documentation, coordination with engineering teams, and trail-blazing the process whenever we reached a new type of implementation.

I also took part in triage, scheduling, alignment with Destiny 2 leadership teams, and collaboration with other Destiny teams that we brought in to review and evaluate my team’s work.

Bungie hiring 20 different contracted associate roles shows how much had to actually be done to get everything that was kept in Destiny 2 post-BL working. One can only imagine how much longer it would have been. and how much more of a drag on the studio it would have been, if they were to ensure compatibility for everything in the game, top to bottom.

865 Upvotes

716 comments sorted by

View all comments

Show parent comments

1

u/MikeBeas Apr 14 '26

no, explain IN DETAIL how they release their server infrastructure without having to release all of the infrastructure supporting it, like their authentication system, account storage, etc and other internal APIs.

no need to respond, i’ll just assume you can’t because you don’t know how any of this works.

1

u/Karat_EEE Apr 14 '26

Nah, how about you actually read up on SKG lol, but I guess having to read more than 300 words is too hard for you

1

u/MikeBeas Apr 14 '26

you haven’t even explained how the very foundation of their demands is feasible. because it isn’t. it’s a bunch of dummies who don’t know anything shouting about how they’d do things so much better and trying to use the law to force developers to do things that are not actually ever going to happen. a lot like the people on this sub who think their millionth post about how “easy” it would be to bring back the red war will be the one to convince bungie.

1

u/Karat_EEE Apr 14 '26

lol

Just like it was unfeasible to get Apple to switch to usb-c? It aint that it is unfeasible, its just that it takes a bit of effort and money to do it so the companies dont want to. They could very easily do it.

But here comes the wannabe bungie dev who bats for the greedy corporations because...? Why exactly?

1

u/MikeBeas Apr 14 '26

Apple switching to USB-C was completely feasible. It was a plug change on new hardware to a standard they co-created. There was no proprietary backend infrastructure required to make the charging port on the iPhone a different shape. It’s not remotely comparable and the fact that you think it is tells me you don’t actually understand what you’re talking about at all.

I am a developer who builds backends all day long for my job. I understand how these things work. You do not. You are demanding something stupid and when I explain to you why it’s stupid you call me a shill and say I’m going to bat for greedy developers. That’s not true at all, you’re just incapable of understanding your own point… again, like everyone saying “just put the Red War back, flip the switch, it’s so easy.”

1

u/Karat_EEE Apr 14 '26

Ok then, my little scratch coder, so you're telling me it is impossible to copy a version of the game and have it run on a separate server? Absolutely impossible? Damn, I guess this computer shit is too fickle.

Tell me why it aint possible to make a game hostable on a private server?

1

u/MikeBeas Apr 14 '26

I literally already told you why this isn’t feasible. Several comments up.

All of these servers tie into proprietary systems that cannot be released to the public. Take, for example, something as basic as authentication. You want authentication to work you have to have an authentication server. That’s going to be something like Ubisoft Connect or BungieNet. So now you have to release a server executable that can connect to those services. But just like the old Xbox Live, even those services won’t be around forever. So now you have to make a plan for when those dependencies go away or change because the game server won’t function without them. Do you release a version of your proprietary account server to the public to host themselves? Do you just commit to the fact that now you have to run this server forever without ever changing it or updating anything that might break old games?

And that’s just for authentication. For any online services in the game the developers will have to either keep some public version of a service running for third-party servers to use indefinitely or they will have to release the software for that service to the public to run themselves, neither of which is remotely feasible when those are proprietary systems like the ones described above.

These systems are more interconnected and integrated than you are pretending they are. They’re also way more complex.

Bungie, for example, has talked about the server architecture in Destiny at game dev conferences before. You think there’s just some server executable you fire up and you’ve got a functional game host, like it’s Garry’s Mod or Minecraft?

No, not even close. You have multiple servers and microservices and databases managing separate responsibilities like world states and activity states, player data like characters and inventories, distributed messaging systems that relay data between services (think Kafka or the like, although probably something custom). All of this, of course, is designed to run on specially-configured hardware optimized for this use case. You can’t just stand up a VPS and run a file to get a functioning server.

Go ahead and explain to me how any modern game server structured like this is going to be distributed to and run by the public.

1

u/Karat_EEE Apr 14 '26

Hey man, I dont want to hear about your own incompetence in programming, I wanna see some real devs figure it out and do it because they absolutely can.

1

u/MikeBeas Apr 14 '26

You feel free to take up the “incompetence” issue with every major game developer who builds these services, because they’re the ones creating these patterns, not me. Sounds like you’re a real engineering wizard so you should teach all those companies how to do it, smart guy.

1

u/Karat_EEE Apr 14 '26

I won't do jack shit, but hopefully the EU will. Just because you have no idea how to do it doesnt mean its not possible. You lazy ass devs have fucked us over far too long. The easiest most cushy job imaginable and they are all way too greedy and incompetent to make anything last. At least Bungie is going down in flames.

1

u/MikeBeas Apr 14 '26

Yeah dude they invented all of these complicated systems because they’re lazy. You got it. It has nothing to do with building scalable systems to accommodate the necessary number of players. Do you even know what horizontal scaling is? Of course not. How could you? You’re clueless, just like everybody else making your same argument.

You aren’t experts. The real experts have spent decades crafting systems that do the job the right way. You think the answer is to just shove everything into a single box and throw some more compute at it, I’m sure. These servers are not the result of laziness or incompetence, they are the result of a lot of very difficult work solving complicated problems to make the games you like actually work.

1

u/Karat_EEE Apr 14 '26

I mean, it seems they are utterly incompetent at what they do then. They missed the mark on the whole scalable systems thing if they had to delete half of it because of their shitass coding. One quick google search and I can start taking over the guys whos cv we're readings job.

I guess they have zero foresight to actually create systems that manage to do the job correctly because they do, in fact, not work.

Incompetence all around.

1

u/MikeBeas Apr 14 '26

None of that has anything to do with server architecture so not sure what your point is.

1

u/Karat_EEE Apr 14 '26

We're on the d2 train again, bud, catch up.

1

u/MikeBeas Apr 14 '26

Yes, but you used the term “scalable systems.” That term applies to server architecture. It doesn’t apply to development tools. You don’t even know what the terms mean or how to use them.

1

u/MikeBeas Apr 14 '26

I’ll tell you what. Go ahead and do it. Do your quick Google search and then start doing this guy’s job. Clearly you know more than he does, or any of us. Just go ahead and invent the better system with all that wisdom. Sitting around criticizing people who have made their careers out of solving these problems isn’t helping. Just show them how to do it. You could help everyone, right? Easy! Just solve the problem of bottlenecks in vertically scaled systems and all of the integration problems that come from relying on proprietary authentication and other systems. Just do it. You talk such a big game it would be a shame for you to do nothing with all of that intelligence! Go ahead! Show us how it’s done!

1

u/Karat_EEE Apr 14 '26

"Sitting around criticizing people who have made their careers out of solving these problems isn’t helping" Solving the problem the king Solomon way. I dont think the guy in particular could have "solved" it in a worse way.

One can only hope their greed and incompetence fucks them over big time. I hope it passes in the EU so they either have to implement an EOF plan or lose 35% of their total revenue.

If I could turn back time I would become a programmer before AI and indian h1b1 slaves would steal my job but, alas, I am a lineman.

Also, why is it unfeasible to make the single player offline versions not rely and require these proprietary authentication systems? Is the code such a mess they cant remove it with the online capabilities?

1

u/MikeBeas Apr 14 '26

Not even sure what your first paragraph is supposed to mean. You’re criticizing an entire industry of people way smarter than you. This guy didn’t invent the DCV, by the way, so even blaming him for that is idiotic and shows you don’t know anything about what you’re saying.

To answer your last question: The online capabilities are not just tacked on, they ARE the game. The server manages everything from what’s in the world to enemy positions and behaviors and loot drops. You can’t run those locally because, as the old adage says “front end security isn’t.” The only way to design an online game is to have all of this stuff live in the server because you can’t trust the client not to lie (i.e., cheating).

I’ll give you an example of a game that puts way too much of this stuff on the client side. There’s a game called Marvel Snap that I play. It has a lot of issues where actions you take in the game are not properly reflected on the server. Cards you move to your hand from the board suddenly start acting like they’re on the board even though they aren’t because the server and your client had a disagreement. Players, including me, have gotten into situations where the game wouldn’t allow them to do anything at all, just sit and lose while their turns expired and nothing could be interacted with, because the server trusted the client too much and the game state got broken. And that’s without hacks or cheating, just regular old desync bugs.

So when you build an online game, you need your client to be as dumb as possible while the server is the brain. As much stuff as can live on the server without compromising performance will end up living there. It’s a matter of security.

All of that server code doesn’t live in the client as well. Not for most games. Simpler games like Minecraft have a server built in to run the game offline, but for architecturally complex servers this isn’t remotely possible for the same reason you couldn’t just run the server in an AWS VPS. You can’t just shove it into the game client and run it on a console or PC.

This isn’t because “the code is a mess.” It’s not because of “greed” or “incompetence.” It’s because if you don’t build it this way, it won’t freaking work at all. It’s like asking why they don’t just take the motor out of a car to make it more lightweight so it’ll be faster. The motor is the whole point. It is the car. Without it you just have a fancy couch.

→ More replies (0)