Hello!

I work as a AAA game programmer. I previously worked on the Battlefield series.

Before I worked in the AAA space, I worked at Disneyland as a Jungle Cruise skipper!

As a hobby, I have an N-Scale (1:160) model train layout.

  • 1 Post
  • 94 Comments
Joined 1 year ago
cake
Cake day: June 2nd, 2023

help-circle






  • [3/3]

    As far as unionizing goes - it’s a mixed bag. I myself am very pro-union; I was a Teamster for years (Local 495). And many gamedevs are left-leaning (but not all! I knew some MAGA/QAnon guys). This in turn makes them supportive of unions on paper.

    But when conversations stopped being theoretical and started being, “No, really, why wouldn’t you?”, the holdouts tend to think:

    • Union leadership is corrupt/greedy, and they don’t want to give union leaders money for “nothing” (as they see it)

    • Being in a union means everyone would need to be bound to strict regulations - keeping exact track of time worked, having exact lunch breaks, documenting everything. As-is in the game industry, the “standard” at most places is hands-off, take lunch whenever, stay at lunch however long you want, clock in/out whenever, nobody questions you as long as your work is getting done. People like this and don’t want to risk losing it.

    • Being in a union threatens close relationships with management. I can say that when I was a Teamster, management was outright adversarial and conversations with them weren’t fun. In the game industry, management is quite literally my friends and people I chill out with. There’s a very, very blurry line between “friends” and “bosses” - some bosses are horrible, to be sure, but the general vibe is casual.

    • There’s a lot of benefits in the office like free snacks, free swag, a place to chill out and play games at work, etc. People are afraid that this would count as “compensation” and thus being unionized would mean that you’d have to pay for snacks or swag or whatever - or that it could be taken away as retaliation from management.

    • Retaliation is a thing. It’s illegal. US government doesn’t care. Corpos get a slap on the wrist because of plausible deniability. EA has been downsizing recently and they “coincidentally” cut the contract with a QA team that just unionized. Hmm. That sort of stuff has a chilling effect - EA has no qualms shutting down studios. Why rock the boat and risk being locked out?

    There are counterarguments for each of those points. Benefits can be made contractual, union leadership isn’t necessarily corrupt (although I did dislike the leadership of my Teamster local - for being too close to management and too soft). Etc. But it is an uphill battle if people are generally already happy where they work - and the jobs are plentiful enough that people can be comfortable moving studios until they find somewhere that lets them vibe.

    We’ll see what happens if the market continues to tighten.

    I can see a place like Blizzard unionizing, just from the horror stories I’ve heard. Maybe Epic as well. But it’s a lot harder to make a union happen in today’s day and age.


  • [2/3]

    Other studios are more, eh. Devs stick together and are honest with one another about the state of different studios. I was in the pipeline to get hired at one studio when multiple people explicitly told me that it wasn’t a place that treats their workers well, so I backed out.

    I got hired somewhere at the recommendation of a former mentor, who has been in the industry for 30 years and whose judgement I trusted. I don’t want to speak as to where I work now, but I can say that he was right and that the place I’m at has been an ocean of calm amidst the chaos that’s the rest of the industry right now.

    You hear horror stories from co-workers in the office. A friend of mine was ex-Blizzard and told me all about what was happening there well before it became a national news story. There are places which will work you to the bone and crunch you until you can’t stand it anymore.

    Some people love that stuff. I don’t. But you get paid extremely well if you work for a place that works you hard. I could’ve made triple my salary at one of the places I was in the pipeline for, plus sponsorship for moving to the EU. I just would have to basically dedicate my entire life to that company, and I don’t think I had it in me… but I can see why people would.


  • [1/3]

    I’ve been a gamedev at a couple AAA studios for almost 5 years now. I can say it’s a bit of a mixed bag, and very much depends on the studio.

    The studios I’ve worked at have treated me well. I started out working at EA, which - for all its faults when it comes to gamers - does treat their staff very nicely.

    We had free snacks in the office, flexible schedules, a generous remote work policy pre-pandemic (one of the best engineers on our team was permanently in Chicago, another was permanently in Oregon), and leadership that would listen to our complaints and respond honestly. We had weekly board game lunches and D&D sessions on the clock, and a comfy place to play all the latest games whenever we wanted.

    Deadlines were reasonable, and the choice was always to cut before crunching. Crunch was on the table, but only as a last resort - I only crunched once in the 3 years I worked on that game, and it was for a single weekend when we had live players running into issues. My pay was on par with a traditional tech job. I went from $15/hour at my college job to $25/hour as an intern to $100k/year as a junior. Within 3 years I was making $140k/year, plus stock options and a 30% yearly bonus.

    My one complaint is that EA unceremoniously pulled the plug on us. We had started a beta period and player response was… middling. We thought we could rescue the project, but we needed another 6 months to make it happen to avoid crunching. Leadership pitched the idea… corpo execs said “You aren’t getting that additional time; we’re killing the project.” We got shut down and all 150 devs were sent to the unemployment line.

    EA’s severance package was very generous, though, and even when they were firing us they went above and beyond what they legally were “supposed” to do. I wound up with my yearly bonus, half a years’ worth of salary, plus 2 months of being “technically employed” but being paid to look for another job - so plenty of runway (plus unused sick time + vacation on top of that).

    While it always sucks being laid off, and it sucks that the project we spent years on got the axe overnight… they really could’ve been far worse. Some of my former coworkers decided to do their own thing and it seems to have worked out for them, as they were able to get publisher funding well within the “runway” EA gave us.


  • That’s all game development.

    Baldur’s Gate took 6 years to make. Starfield has been in development since 2015 - that’s 8 years. As gamers demand more, games have grown in scope. The ones that stayed behind have gotten punished.

    If a AAA game doesn’t have at least 8 hours of story and realistic graphics in the modern era, it gets panned by reviewers. People’s expectations have been raised - and are continuing to be raised - and in turn, that inflates how long it takes to make a game. People will say “Why should I spend $60 on this game when I can spend $60 on this game that gives me more stuff?” (See: Immortals of Aveum, which itself has been in development for 4-5 years.)

    The games that don’t take that long are the stale yearly franchises - the FIFAs and CODs of the world. Even COD alternates between studios, with each installment taking 1-3 years. Some franchises (like Pokemon) have multiple teams within a studio that operate independently of one another; Arceus was made by the Let’s Go team, while Scarlet/Violet was made by the Sword/Shield team.

    If studios stop betting on long-term projects, you’re going to wind up with stale yearly iterations - or half-baked games rushed out the door to meet a deadline. If it’s true that you say AAA (and even AA!) dev isn’t sustainable, then that’s effectively calling for stale franchises pushing out cheap content for quick cash grabs (see also: Hollywood movies over the last decade).


    It’s also not just games this is happening to. Disney recently canned a 20,000 Leagues Under the Sea show that was ready to go. There’s the Scooby-Doo stuff that Max recently pulled before release as well. That stuff isn’t my industry; I don’t know how long it takes to make those things… but I know it costs about as much to make as a AAA game does.

    There’s probably a reckoning to be had for both industries, but I don’t think the correction should be that drastic - and I think it will be bad for people who consume that content.


  • Yep, it’s been a trend all year. My studio got canned back at the end of January. Publisher called us into a studio-wide meeting scheduled during lunch with 1 hour of notice, only to say “The game you spent 6 years on is canceled and all 150 of you are fired. The media will know in 30 minutes, don’t say anything until then if you want to keep a severance package.” (I have since landed on my feet elsewhere.)

    These studios are owned by big publishers and generally work for years at a loss. With the costs to borrow increasing, we’re seeing cuts on long-term investments that might not make their money back (like movies and games).

    Volition was owned by Embracer, which is now struggling with funding. So anything that isn’t a sure bet is effectively canned - and in turn you see these studios shut down left and right, plus big layoffs from studios that are still open.



  • I mean, spells like Wish are going to be basically impossible outside of going the AI route (which is an entire can of worms).

    Wish can duplicate any other spell, or it can have your own effect (with a chance of it being monkey-pawed plus you never being able to cast Wish ever again).

    Also bear in mind that it’s not “just” rules for moving numbers. You have to have particles, animations, etc. You can’t just have conversations, you have to also have SFX from impacts, camera shake, UI elements, etc. When you start to get into the world of “anything is possible” you kind of have to go back to basics, text-based adventures.

    With AI stuff, maybe some of that can be done - but AI is just so incredibly slow in its current form. It won’t stay that way forever, mind - I think the best comparison is graphics in the 1990s. Graphics were incredibly basic because anything complex would take ages to render and couldn’t be used in games. Over the next decade, things were built to specifically speed up that process, and now modern GPUs can easily keep up with the highest-quality CGI without much fuss (there’s a reason why Disney has the Volume, which is essentially just running CGI in the Unreal Engine alongside the actors in real-time).

    But until that, we’re going to be pretty limited. It’s going to be impossible for any kind of free-form rules to be implemented, unless options were restricted to such a point that it’s basically a completely different spell.




  • Counter-counterpoint: I’ve been using it since 2019. I think you’re exaggerating.

    • It aggressively tries to center itself, always. If you’re in a lane and it merges with a second lane, the car will swerve sharply to the right as it attempts to go back to the middle of the lane.

    • It doesn’t allow space for cars to merge until the cars are already merging. It doesn’t work with traffic; it does its own thing and is discourteous to other drivers. It doesn’t read turn signals; it only reacts to drivers getting over.

    • If a motorcycle is lane-splitting, it doesn’t move out of the way for the motorcycle. In fact, it assumes anything between lanes isn’t an issue. If something is partially blocking a lane but the system doesn’t recognize it as fully “your lane”, the default is to ignore it. The number of times I’ve had to disengage to dodge a wide load or a camper straddling two lanes is crazy.

    • With the removal of radar, phantom braking has become far, far worse. Any kind of weather condition causes issues. Even if you drive at sunset, the sun can dazzle the cameras and they don’t detect things that they should be able to - or worse, they detect problems which aren’t there.

    • It doesn’t understand road hazards. It will happily hit a pothole at 70 MPH. It will ignore road flares and traffic cones. When the lanes aren’t clearly marked (because the paint has worn away or because of construction), it can have dramatic behavior.

    • It waits so long to brake, and when it brakes it brakes hard. It accelerates just as suddenly, leading to a very jerky ride that makes my passengers carsick.

    The only time I trust FSD is when it’s stop-and-go traffic. Beyond that I have to pay so much attention to the thing that I might as well just drive myself. The “worst thing it can do” isn’t just detour; it’s “smash into the thing that it thought wasn’t an issue”.


  • Here’s a video from an all-hands meeting the day after she quit. (Reddit, sorry.)

    The following is a transcript if you’d rather avoid Reddit:

    (speaker 1, Linus) So we called this meeting because it’s come to our attention that we need to have a quick chat about the best way to handle HR related feedback and rumors. We won’t be giving any names for what I hope are extraordinarily obvious reasons, but what we can do is give you the following guidelines for problem solving and conflict resolution.

    Sorry that this is all boring and corporate, but here we are. Number one, always stand up for what’s right. We’re only a team as long as we’re all working together and working for each other. That’s the most important one. Number two, always reflect on your own personal experiences and use your common sense. Few things in life are truly black and white. Number three, always wait to hear both sides of a story before passing your own judgment. Be cautious when you know that one side is bound by legal and ethical disclosure guidelines, when the other is not. Carefully consider what it says about the character of someone who would engage in that type of gossip against someone who has no power to defend themselves.

    Number four, always encourage openness and transparency. If you have a problem, you need to speak up. We want to fix it. If you receive feedback about somebody else at this company, the first response is, have you spoken with this person? Followed closely by, you need to speak with this person. We don’t solve interpersonal issues here, or really anywhere in your life, if you wish to live in a drama free zone, by engaging in water cooler politicking. So, if for any reason that individual is not comfortable approaching the person they’re having a conflict with, we have a chain that they’re supposed to follow.

    So first, you advise them to take the problem to their manager. Followed by me or Yvonne, followed by our third party HR firm. I hope that you all trust that we’re here to make this a safe, fun, and productive workplace, and we won’t tolerate mistreatment of any of our team members.

    If you have any reason to believe otherwise, then I refer you again to point number four, which is to address the issue with the individual directly, or bring it to me or Yvonne, or bring it to our third party HR firm. Since I’m not at liberty to share any details about what occurred, uh, all I can do is ask that you trust me and Yvonne.

    Um, some of you know us very well, I’ve been here a very long time, um, some of you have not been here for as long, but I like to think that whether you’ve been here for nine years or nine days, you’re here for a reason and you believe that we are utmost to run this company with integrity and compassion.

    Um, We can’t solve problems we don’t know about though, so on that note, I’d like to invite anyone who has concerns about a fellow team member or about a manager to submit their feedback either by speaking with their manager, me or Yvonne directly, or if you would prefer to provide your feedback anonymously, we have an option for that as well.

    It’s the manager and co-worker feedback form. Uh, Yvonne, if you’re not aware of it - show of hands who is not aware of it? Hey, a lot of people aren’t aware of it. Good, so now we all know. There’s an anonymous form, if for whatever reason you’re not comfortable either talking to me me or Yvonne directly about it - and that’s okay, that’s fine, we understand, that’s why we have these options - Yvonne’s gonna post it in the general chat.

    It’s a safe space to provide us ideas for improvement, or if you’re consumed by the holiday spirit and you want to say nice things, you can do that too. Does anybody else have any questions?

    Not a single question? Wow, that must have been a really good speech.

    (speaker 2, James) You gonna dance on that table, or just stand on it?

    (speaker 1, Linus) That’s it! So, um, Yvonne, did you have anything you wanted to add?

    (speaker 3, Yvonne) (inaudible) Somebody said (inaudible) if you guys want to sanitize your hands, help yourself with free (inaudible)?

    (speaker 1, Linus) Yeah, that was actually just totally random timing. It came up the stairs a moment ago. Dennis is on it. Alright. Thank you everyone. Have a wonderful and, uh, productive rest of your day. And weekend.


  • I use Flatpak all the time. It works a lot better than native apps very often.

    Also it’s a lot easier than fussing with PPAs or whatever. I’m on KDE Neon and wanted to run something through Wine. The Wine in the stock PPAs was an older version with a known bug that wouldn’t let me install the .NET Framework 4.8. I tried fetching the Wine PPA directly, but then I was getting issues about system packages not being compatible with newer versions of Wine.

    The more I dug, the more issues popped up (typical Linux). So I gave up and decided to install Lutris and try it through there, since Lutris has a workaround for those Wine issues. The Lutris in the stock PPAs also was an old version with a known bug where it just… wouldn’t work. You’d click a button and nothing would happen because of an HTTP bug. Rather than fuss around with that, I gave up and installed the Lutris Flatpak.

    30 seconds later, my program was installed and running. No nonsense in the command line, no fussing around with packages. Just open and go.

    A majority of the programs I have are Flatpak now. I have Flatpak for Zoom to let me take work meetings from my Linux partition; I have Flatpak for Parsec to let me remote in to my work desktop from my Linux partition. Blender, Calibre, Chrome, Discord, Thunderbird, PrusaSlicer, Slack, Rider, VS Code… all Flatpak.

    They all work great. I get prompt updates to stay on the bleeding edge. No more dependency hell. I now actively search for Flatpaks before I fall back to apt.