Power To The PC's
Who are you and what do you do here at 343 Industries?
Jeff Guy: I joined 343 about two years ago as the Producer for Halo Infinite PC. When I heard that there was an opportunity to help build a first-class PC experience for Halo Infinite I dropped what I was doing and joined up.
Mike Romero: I’m the Development Lead for Halo Infinite PC. I design most of the PC experiences and run the engineering team putting it together. I joined Microsoft and 343 specifically for the opportunity to bring Infinite to PC and set the standard for how I’d like to see PC supported. I’m so excited to be doing this for Halo Infinite specifically since it has such a rich beloved history on console. We have an opportunity with this game to design for PC from the beginning – we will do PC justice with this game. I think it’s also a very exciting time at Microsoft for PC gaming as I see Microsoft making a lot of player-focused changes and improvements (tools like the new Xbox Game Bar, the dedicated Xbox app for game purchases, Xbox Game Pass for PC, and the major investments in other PC-focused studios).
Alright, let’s hear it – when did you first become a PC gamer and how long have you been working on games for the PC?
MR: I’ve always played on all platforms starting with an Atari 2600 from a garage sale and a hand-me-down DOS and Windows 3.1 PC. I’ve been into building PC’s since I was about 13 and used to repair many of my friends’ family computers. I’m a fan of many genres, but for FPS games, I’d play a lot of Duke Nukem at my friend’s house when I was (way too) young, I somehow got away with playing Quake 2 in programming class in high school when I finished assignments early, and I went hard into building my own gaming machine for Unreal Tournament (my personal favorite is actually Unreal Tournament 2004).
I landed a dream job working on a brand-new graphics card architecture straight out of college and I worked on PC graphics for a little over a decade at all levels of the stack (drivers, hardware architecture, APIs, and game development). I would moonlight building graphics demos, then game engines, and finally making indie games as a one-man team for game jams like Ludum Dare. I got heavily involved with the fantastic indie gaming community (shout out to my great friends at PIGSquad) to stay motivated and encouraged to build the next thing. My day job evolved into graphics performance and then developer relations for a while, where I essentially went from studio to studio to make performance optimizations on many different PC games and engines. I’ve always been extremely passionate about building a great product that players want, so I made the jump to where I could define more of that experience and bring that PC-specific knowledge to Halo Infinite.
JG: I grew up in a pretty low-income household and video games were expensive in the 90’s. I couldn’t quite convince my single mother that an SNES was more important than rent. Fortunately, a few things happened in 1993 that would create the foundation of my career in video games: 1) My future stepfather introduced me to the world of PC building, 2) the release of the Pentium meant I was able to get my hands on a 486 for pretty cheap, and 3) I was finally able to play Wing Commander: Privateer. It changed my life. That game was so ahead of its time!
Fast forward to age 18, I knew I wanted to make video games so I saved up and bought a plane ticket to Seattle. I had no money or home but I knew how to code and I was crazy passionate about becoming a game developer. Luckily, that was enough to get a job as a game tester for Perfect Dark Zero. Over the next 17 years I shipped nine AAA games across six platforms. I was even fortunate enough to spend a few years with the Xbox 360 platform team building the backwards compatibility and Games on Demand systems. Sometimes it’s hard for me to believe I’m a part of building the games that shaped me as a kid. It’s an incredible opportunity. I plan to keep putting my heart into this thing until I feel I’ve earned it.
A fresh look at a super ultrawide Forerunner interior in Halo Infinite.
We've spent a great deal of time in these blogs learning about the vision and goals for each team. As the team focused on the PC version of Halo Infinite, what’s your vision?
JG: I want to make a Halo game that feels like it was always made on PC – as if it was always meant to ship on PC and now it’s seeing the light of day. This of course is a very selfish goal, I’m a customer of my own work. This will be a Halo built for PC players, by PC players.
MR: I’m passionate about giving players what they want, taking a great game and making it run the way PC gamers want to play, honoring the hard work they put into their rigs, the settings customization they expect to see, and welcoming all new players who might not have played Halo before if they’re not console players. It is also our goal for PC to work harmoniously with console players so you can easily play with your friends regardless of platform. It’s honestly a fun challenge to make something both so customizable and advanced yet accessible and cross-platform at the same time. An example of honoring those high-end PCs is creating “Ultra” graphics quality presets, so the best PC’s hardware can make the game look amazing and offer an incredible PC experience.
For enthusiast features and customizability, we have very good ultrawide and super ultrawide support, triple keybinds, we’re supporting a wide range of input devices (you can play the game on PC using a non-Xbox controller – or, with a mouse and keyboard when you’re playing on console), advanced sensitivity and acceleration sliders for your mouse… there’s so much we’re working on and we have plenty of ideas for features after the initial launch as well. To make the game cross-platform we go through great pains to ensure you can have a competitive experience on any device, so things like your field of view (FOV) settings which are more standard on PC are also available on console.
Lastly, in order to make the game accessible and cross-platform, we try to strike a balance where we’re not overwhelming players with settings but provide a core group of settings on all platforms. Players can tweak things like full-screen effects to reduce motion sickness or photosensitivity for example, and we want a safe place to play – which means minimizing harassment or cheating. So, there are many considerations, and several impact the overall game design for the sake of living up to the expectation of PC players – which is what we mean when we say it’s not a port, it’s built with PC in mind.
Halo Infinite on PC will support a variety of screen resolutions, including 32:9 super ultrawide (and beyond).
How do you bring that all to life? When it comes to making a game for the PC, there are many considerations - from granular graphics options to a litany of control schemes. What does it look like to design for those principles in practice?
JG: I think player identity is at the center of PC gaming. It’s the reason we build our own gaming rigs and spend too much time turning the knobs and dials in every game. We want games to acknowledge our identity as a PC gamer and reward us for it. When designing a native PC experience, I try to keep the vast array of identities and choices in mind to ensure I’m not just making a game for me, but rather acknowledging the diversity of the PC gaming community and embracing it all.
MR: I think as lifelong PC gamers we have a great feel for the expectations of how a PC game should look, feel, and operate – we want a great set of options without getting in your way, rich feature support with a streamlined experience, and the confidence that the game will run on your hardware. To go through a specific example, let’s talk about ultrawide support. This is something that really takes the whole studio to do right, because there is so much content that has to be created with this in mind for this from the start. To start with there are design considerations – I explicitly wanted wider aspect ratios to allow you to see more horizontally instead of seeing less vertically. This is harder on performance but provides a more immersive experience. The 3D scene has to support arbitrary window sizes – that’s probably the easiest part. Then you’ve got your HUD which has to anchor to the edges of the screen. And think of Chief’s helmet display; you want the helmet wires to be seamless regardless of aspect ratio, so we design with that in mind. You can also run the game in 4:3 and at lower minimum resolutions than you would get on a TV and the UI still needs to be legible.
There are plenty of settings menus and front end flows that need to have layouts that fit into arbitrary screen sizes and widgets to adjust accordingly, so that’s more UI work. Then there’s cutscenes – Infinite has a style of in-game cutscene we call Narrative Moments and we want to make sure these work great without cropping to a specific aspect ratio, which means we need to make sure the action of the scene fits on the screen, things don’t despawn, stop animating or clip when they go out of the 16:9 field of view, etc. There are sandbox animations for the first-person perspective we want to ensure look good at any aspect ratio, you don’t want pieces of your armor popping into view unexpectedly, you want weapon and equipment animations to look great. There’s the new Tacmap that has to look and navigate according to the variably sized screen.
To make this all happen, we have to think of all the corner cases, lay out the player expectation and ideal behavior for every scenario, translate that into the specific investigation, engineering, testing, and user research objectives, and when our friends around the studio need help the PC team will do the implementation (like code changes so the FOV system plays well with the different aspect ratios for example). There’s dozens of people across the studio that have had to put dedicated effort into supporting something like ultrawide throughout the entirety of the game, and I’m very excited to say I think we’ll have some of the best ultrawide support I’ve ever seen in a game.
Halo Infinite includes adjustable Field of View (FOV) settings which can be paired with multiple aspect ratios for greater customization than ever before.
What opportunities and challenges have you faced building a native, first-class PC experience for a long-standing console game like Halo?
JG: Building a native, first-class PC experience for Infinite meant convincing some brilliant console developers that these quirky features they’ve never cared about are hugely important to PC players. This job is at times equal parts educator and PC hype man. As an example, I might need to convince someone that even though 21:9 ultrawide doesn’t exist on console, it’s a very important thing to PC players and we should design our content natively for it. There’s also a TON of preventative problem solving. Things like making sure our game plays nice with specific families of hardware or fighting hard to ensure we don’t add intrusive DRM to our game. The problem with preventative problem solving though is you never see the crisis averted. Fortunately, 343 knows how to make a great Halo game. It’s important to call out that the MCC team has done fantastic work pioneering Halo on PC. The Infinite PC team has a huge opportunity to learn from the challenges and wins MCC has faced and we’re paying close attention.
MR: Definitely generating excitement around the capabilities of PC, shining light into the dark corners where we make assumptions that work for console but might need to be more robust for PC. Like for that ultrawide work, we literally wanted to get people excited about the potential of that experience so we got a bunch of ultrawide monitors and gave them to the team for their dev machines so they’d work and test with them daily. Jeff is an excellent hype man, and I think this absolutely paid off. Also going the extra mile for customizability like with advanced graphics options, accessibility settings, and the ability to scale quality to maintain performance across many generations of hardware. Console games don’t generally have “advanced graphics settings” and of course that’s expected for PC. But also, Infinite is supporting consoles with different performance profiles. So, we have this confluence of design needs to support many different performance profiles over multiple generations of hardware and many different quality settings to scale to the different performance targets on those platforms, and we want to expose all of that to the PC player to tweak for their personal machine. It’s a real beast to make these settings achieve the goals of the artists and content developers, the performance engineers, and be exposed and intuitive to players.
Halo Infinite's support for multiple aspect ratios on PC lets you see more horizontally without seeing less vertically.
When building a game for the PC, I can imagine there's a great deal of things to consider - be it graphics cards families, monitor sizes, input devices, refresh rates - and that's just scratching the surface. What features can PC players look forward to when firing up Infinite?
JG: A buttery smooth experience on mouse and keyboard.
MR: Ultrawide (21:9, 32:9 and beyond) support for everything (in-game, narrative moments, menus, the works).
JG: Display settings, refresh rates, triple keybinds.
MR: Advanced graphics options that you would expect, and the ability to dynamically scale resolution to maintain framerate and competitiveness.
JG: The ability to play with your friends regardless of what platform you or they are on – Steam, Xbox, Game Pass for PC, everyone can play together.
MR: We plan to build upon Infinite for years into the future, so managing content for the game in a native and familiar way to each different platform we’re releasing on.
JG: Joining your friends through XBL, Steam, Discord, making it convenient to get into a match regardless of which platform your friends are on.
MR: There’s also options like showing FPS and ping in an overlay, or hiding the HUD entirely if you want to take some nice screenshots or overlay your own thing while streaming – there’s a lot of options and settings I don’t want to talk just yet but we have more we’re working on and many ideas for the future as well.
Halo Infinite on PC will let you tweak your in-game experience to your liking across a variety of different settings - including the ability to maintain a minimum framerate (thanks to dynamic resolution scaling) and specify a maximum framerate (including uncapped).
Halo Infinite has been built from day one for the PC, from the ground up. What sort of experiences have helped guide you on your path to make this a strong start?
JG: I have experience bringing AAA FPS games to PC but each time it’s a new thing – the needs of PC gamers and our developers right now are completely different from the needs of even a few years ago. This has been an amazing learning experience so far.
MR: I’m new here.
JG: [laughs] – Jokes aside, Mike’s perspective makes him fight for things that are typically not done. There have been a couple occasions where Mike asking “why” sent me tumbling down the rabbit hole. The result of all this is we tend to aim for the moon, and we’ve blasted down a few old barriers on the way.
MR: I’m really critical of my work and every time I propose a feature or a solution to something I step back and think, “As a gamer who doesn’t give the game the benefit of the doubt, does this suck? Does it do what I need? Is this how I want that to work?” Jeff and I are absolutely the customers of the PC-centric experience that we’re building and 99% of the time we know the playtest feedback before we even get the results, so we’re very in-tune with how the PC features we’re building will be received. I really joined to make the best experience possible. I want this to be a spectacle. I look at the cream of the crop games releasing on PC and that’s my minimum bar.
For players that want the freedom to custom tailor their PC experience, Halo Infinite will offer a variety of robust video settings.
Typically when friends want to game together, there's the, "What version of the game do you play?" conversation that happens before they can link up. With Halo Infinite launching for Xbox and PC, how will players be able to link up?
MR: XBL, Steam, Discord, both in-game and out-of-game invites.
JG: We actually allow you to host a local multiplayer server on your PC. Other players on your LAN, both PC and Xbox, are able to join your local server and play Infinite multiplayer with you. We also have both ranked and unranked matchmaking playlists where PC and Xbox can play together online.
MR: Social playlists and custom matches are open to all, you can play on any platform and any device with anyone you like! For ranked matches, we plan to restrict competitive playlists based on input type, not console versus PC. That’s because we believe the input is the biggest differentiator in gameplay ability (with things like aim assist on the controller or the precision of sniping with a mouse). You can play with a controller on your PC to play ranked with your console friends, or even mouse and keyboard on your console to play ranked with your PC friends.
For mouse and keyboard players, Halo Infinite will support triple keybinds allowing one specific action to be assigned to three different inputs.
It’s clear there’s a lot of work that goes into making a PC game alongside a console experience, but where and how do you integrate with some of the other teams we’ve heard from, like the Sandbox Team?
JG: Honestly we have to work closely with everyone, we’re all making a PC game. Many of the PC specific features were a co-development effort with multiple teams. We meet weekly, sometimes daily with Sandbox, UX/UI, Live, and Graphics.
MR: We design, develop, test, and incorporate feedback together. A good example would be the graphics options, where graphics engineers code a feature, tech artists and content creators use the feature as an input to tune the visuals of the game, the UX/UI team builds us the widgets like sliders and text input, and the PC team is pulling all these ingredients together to have a polished player control in a menu that does the thing players expect. We’ll start off by stating the player expectation, identify all the ingredients needed, and work with all our partner teams to get them implemented and working together. Some things are obvious, like the need for the graphics settings (though which exact settings and the range of those settings is less obvious). Some are very obscure, like ensuring that the FOV expands horizontally for ultrawides with a locked vertical FOV, the FOV widget controls the vertical FOV, and when things like boosting in a vehicle would modify this FOV it modifies correctly (you can’t just add or subtract the FOV by a number, it’s relative to the current FOV setting).
It’s up to the PC team to really think through those scenarios that people might not be used to thinking about, then work with our partner teams to come up with a plan to address them. Sometimes the implementation is done mostly by the PC team (like the FOV work), sometimes it’s mostly by the partner team (like Sandbox hooking up triple keybinds), sometimes it’s a split (like fine-tuning mouse sensitivity and acceleration options, or supporting misc. input options like “invert” for mouse and controller independently) – but it always involves us coming to an agreement on a design we’re all happy with that delivers what the players want.
An up-close look at a super ultrawide Forerunner interior from a first-person perspective.
Of course, Halo Infinite isn’t just a great big campaign, but it's also an incredible free-to-play multiplayer experience. When it comes to the trappings of multiplayer – what are some of the biggest considerations being taken to ensure everyone can have a good time?
MR: We want to ensure fairness and adding PC into the mix opens Pandora’s box. We felt like we had to make an anti-cheat solution that doesn’t get in the way, doesn’t root your machine, doesn’t block your legitimate applications – we want the most unobtrusive thing possible that ensures a safe way for everyone to play together. For crossplay again we prioritize fairness without being too restrictive, so we have to draw lines players are comfortable with (input-based restrictions for ranked matches) while maintaining flexibility (you don’t have to buy the game on a different platform to play with your friends, worst case you switch input devices). We also want to ensure nobody feels like they’re at a significant disadvantage because of the way they’re playing (within reason; a 10-year-old PC just isn’t going to be as fast as a brand new ultra-high-end PC). If we do our job right, in combination with our TrueSkill 2 ranking system, everyone should be able to trust they’re getting a fair shake in the crossplay ecosystem.
JG: I’ve got strong opinions about anti-cheat but I’m not really the person that should be talking to what we’ve built. I’d like to introduce Michael VanKuipers, our Security Engineer, to speak to this a bit further.
Michael VanKuipers: Thanks, Jeff! We knew from the start that delivering an awesome PC game meant taking cheating seriously, and we're committing to doing it in a way that's respectful to the experience of legitimate players. Our anti-cheat philosophy is to make cheating more difficult in ways that don't involve kernel drivers or background services. We've done a lot of work securing the Slipspace engine and developing novel ways to protect and change the game to slow down cheat development. When people do cheat, we're focused on catching them through their behavior and not from data that we've harvested from their machines. Combating cheaters is an ever-evolving arms race, but we're making the tech investments needed today to continue the fight for years to come.
And now, let’s talk about where players will be able to grab and play Halo Infinite. When the game launches, how will people jump in with all that it has to offer?
MR: Steam, Xbox Store on PC, Xbox Game Pass, Xbox Game Pass for PC, and of course through the Xbox Store or in a box on the shelf for the console version.
Alright, we'll leave you with the final word in the interview. What's your favorite aspect of the PC version of Infinite? Go ahead, talk nerdy to us.
JG: It’s a tie between graphics and crossplay – if you have a beast of a PC you can really dial up the graphics and the game looks absolutely stunning in 21:9. I love that I can play with anyone regardless of platform. I think it’s super frustrating when you and your friend own the same game but you can’t play together.
MR: Ultrawide across the whole experience of the game, fine-tuning and high refresh rate support, throttling to maintain framerate, our competitively low input latency, the cross-platform LAN server is really cool… I can’t pick one thing, and I can’t wait to hear about YOUR favorite experience!
Thank you Mike, Jeff, and Michael for sharing so much with us in this Inside Infinite! We can’t wait for the community to tell us about their favorite PC features as well once it lands on their respective hard drives later this year.
And now, as is tradition, we’re turning the proverbial mic over to the rest of the studio for some of their latest development stories.