AI and Games is a YouTube series made possible thanks to crowdfunding on Patreon as well as right here with paid subscriptions on Substack.
Support the show to have your name in video credits, contribute to future episode topics, watch content in early access and receive exclusive supporters-only content
If you'd like to work with us on your own games projects, please check out our professional services provided at AI and Games.
If you were to run a search right now for 'best video game AI', you're going to see some familiar names pop up in many a top 10 list. Popular first person shooters such as Half-Life and Halo often appear, alongside the cult classic S.T.A.L.K.E.R.: Shadow of Chernobyl. Perhaps a tactics or strategy game, like X-COM: Enemy Unknown or StarCraft 2? Meanwhile games like Star Wars: Republic Commando and BioShock: Infinite are heralded for their intelligent companion characters, while stealth franchises ranging from Metal Gear Solid to Splinter Cell, Hitman and The Last of Us highlight the challenge of overcoming intelligent, reactive and capable guards. Then there are the regulars: Left 4 Dead for its intelligent pacing and gameplay control, or Alien: Isolation for its ruthless and unstoppable xenomorph.
But there's one game you can guarantee appears every time: F.E.A.R.
Developed by Monolith Productions and released in 2005 for PC, PlayStation 3 and Xbox 360, F.E.A.R. tasks players with facing off against the Replicas: an army of genetically engineered soldiers telepathically controlled by their commander Paxton Fettel. As the Point Man of First Encounter Assault and Recon, you eliminate the threat Fettel presents and uncover the mysteries of Project Origin, and how it all ties into the hallucinations you're experiencing of a young girl in a red dress.
Despite being just shy of 20 years old, the AI of F.E.A.R.'s Replica soldiers is still heralded as a highlight of the medium: they're fast moving, quick to react, utilise nearby geometry for cover, and cooperate to put the pressure on the player as you fight through increasingly chaotic encounters. It's the game that started my journey into digging into the inner workings of AI in popular video games, and was the very first video published here on my YouTube channel in 2014.
To celebrate the 10 year anniversary of AI and Games, I had the honour of sitting down for a conversation with a very special guest: Dr Jeff Orkin, the AI programmer on F.E.A.R. I've explained how it works before, but today we hear it all from the man himself. The origins of the Goal Oriented Action Planning technique, the successes and failures along the way, and we reflect on the impact it has had both on the industry, and on Orkin himself.
Project Origins
The story of how the AI of F.E.A.R. came to be is, in many ways, intrinsically linked to Orkin's career. F.E.A.R. was developed by a small team, with less than a dozen software engineers. Critically, the core gameplay team was just four programmers: Jim Geldmacher, Russ Pecoraro, Brad Pendleton and of course Jeff Orkin. But Orkin was the only one on the team responsible for building the core of the AI for the game. As such, it's interesting to hear how his interests in AI for games manifested. After a stint working as a software engineer for the US government, Jeff made his way into the games industry, and his interest in developing AI largely emerged by accident.
Jeff Orkin: I kind of lucked out because back in 1995/96 there was a lot of shenanigans in US politics - as there still is today. The politicians were causing government shutdowns repeatedly at that time. So being a consultant working on a government project I had stretches of between one and three weeks where I was just paid to stay home, and I spent that time teaching myself to program games.
I was using - for anyone the watching that's old enough [to remember] - there were these old textbooks by André LaMothe and they described in detail how to write games for Windows or even MS-DOS. I started making really crappy games like Asteroids clones and stuff and then - given this was the beginning of the internet as we know it in 1996 - things were done kind of in a more old fashioned way. I got this magazine, I don't think they make it anymore, Next Generation magazine. Once a year they would have an issue about how to get a job in games and they would publish the mailing address of all the game studios. And all the game studios fit on like two pages of a magazine like there just there weren't that many then.
I printed out a resume on paper and I sent it out to like 40 game companies and maybe half of them got back to me, and I had some phone interviews, and maybe half of them wanted to talk further, and I got a job at Sierra. They had just moved their headquarters to Seattle and so I moved out there and started working on King's Quest VIII: Mask of Eternity.
I was the most junior programmer on the team, and all the experienced guys like wanted to work on you know 3D graphics and physics engines, given they were like a new thing. I think that was around the time Tomb Raider had come out and Sierra wanted to make a King's Quest game kind of in the style of Tomb Raider with third-person and a 3D hero. So all the experienced people were working on the new cool difficult stuff of graphics and physics and they needed AI for the creatures. You'd fight like these skeletons and stuff and nobody was available to do it so they gave it to the junior guy!
I just started teaching myself AI on the job and and prior to that I thought I was interested in graphics and animation. I had studied some computer animation in college as part of my minor in art, but starting to experiment with AI I realized actually that was a much more interesting problem. Graphics and animation while they, you know, continued to improve over the years they were mostly a solved problem that just needed faster and faster processors for more joints, more triangles. But with AI, the behaviour was a wide open field where there was a lot of experimentation and and a lot of uncertainty about how to pursue it.
So I got to experiment and at Sierra I learned about (Finite) State Machines and path planning and then started experimenting with writing scripting languages. Then after four years at Sierra I was looking for a new role and and wound up getting a job at Monolith.
While Monolith Productions are largely famous in contemporary gaming for their titles inspired by Lord of the Rings, first with the now defunct MOBA Guardians of Middle-Earth from 2012, followed by the critically acclaimed Middle-Earth: Shadow of Mordor in 2014, and its sequel Shadow of War from 2017, the studio had built a reputation for developing first person shooters. Their seminal release, Blood from 1997 is hailed as one of the best shooters of the era, and gained notoriety courtesy of its occult horror themes, pop culture references and its use of the Build engine popularised by Duke Nukem 3D.
The studio transitioned from Build's 2.5D approach to fully-fledged 3D using their own proprietary engine dubbed LithTech, which has been used for the vast majority of their releases. This empowered the studio to create a number of critically acclaimed shooters and cement their status within the industry, from Blood II: The Chosen and Shogo: Mobile Armor Division in 1998 to 2000's The Operative: No One Lives Forever and 2001's Aliens Versus Predator 2. While critically acclaimed and commercially successful, these games have largely been lost to time, with only the original Blood receiving a remaster in 2019 by Night Dive Studios. Though both No One Lives Forever and Aliens vs Predator 2 can be made played on modern hardware courtesy of fan modding communities.
It was sort of ironic: I'm trying to make smart characters but without manual labour they couldn't figure out the most basic things.
Joining Monolith
Orkin: I actually didn't like first-person shooters, they made me motion sick. But I didn't tell them that in the interview. I had interviewed at a few different studios and Monolith was the only job offer I got. So I went there and learned how to deal with first-person games and got over my motion sickness, and Monolith of course ended up being like this amazing part of my career.
The team there was incredible. They were like these underdogs where they had a following for making very stylized, creative games. But they weren't like the big you players. They weren't as big as like id [Software] or Blizzard, but they had such a talented team that I worked with on both No One Lives Forever and F.E.A.R. - the same team behind both of those games.
Monolith I feel were kind of forward thinking in that they hired me in specifically as an AI programmer. That was the first time I'd ever heard of a games studio having a dedicated AI programmer. Prior to that it seemed like AI was always one of the tasks among many that some programmer would would end up assigned to.
Orkin joined Monolith during the development of their 2002 release No One Lives Forever 2 - a game made in a relatively short timeframe of only two years. While Jeff was given the responsibility for maintaining and updating the AI systems, it was during production on this 60s spy shooter that some of the ideas that would later influence the AI of F.E.A.R. actually came to be.
Orkin: So when I was hired on to work on NOLF2, the assignment was to take their state machine system and wrap it in a goal system. The designers, Craig Hubbard and John Mulkey were - when compared to what I was seeing at other studios - were more open to the idea of a sandbox-style gameplay.
We talked a lot on that team about how the the game is a stage for the AI characters to perform on. We wanted to create many opportunities and then let them autonomously, and emergently, take advantage of opportunities. So we were trying to accomplish that on NOLF2 with this goal system, where a goal was kind of a container for a Finite State Machine. You would prioritise which goal to activate at different times and the experience I had was that worked fairly well but it was a lot of manual maintenance on on my part.
Anytime I added a new behaviour I'd have to revisit every state machine and make sure it was accounted for there and and that I wasn't breaking anything and keeping things consistent. That if one character could do something, the others had that capability as well.
I realised, it was sort of ironic: I'm trying to make smart characters but without manual labour they couldn't figure out the most basic things. Like if I [an NPC] wanted to attack somebody I need to draw a weapon first. Otherwise I'll fail to be able to attack them. If I want to melee somebody I need to walk to where they are first, and then attack them. You know, a lot of things that just seem like… gosh if we're really doing intelligent systems can't it figure some of this out itself?
And so luck would have it, that as production on NOLF2 ended in 2002, an opportunity presented itself, that would give Orkin the chance to explore whether or not this more intelligent approach to AI characters could be achieved
Orkin: With No One Lives Forever 2 there was there was kind of a limited amount of time to work on it because I was hired and we then had about a year to ship it. So I had to learn their system and extend it in small ways, and just get good behaviours out of it. But then FEAR was a longer-term project - a three-year project which was long in those days - and the engine programmers were doing a total rewrite of the graphics and physics. So there was a one-year pre-production where nobody really paid attention to me and I just closed the door to my office and wrote a new AI system from scratch.
It was a very rare opportunity to just kind of have free reign to do whatever I wanted, and in hindsight I probably took too many risks. But luckily it worked out okay!
One of the most interesting aspects of this timeframe, is actually where the name of FEAR's AI - the Goal Oriented Action Planner or GOAP originated from. Given that both FEAR and GOAP are four letter acronyms, I personally had always thought the use of an acronym for the AI was in some way an homage to the game itself. But in fact, the name originated from somewhere else entirely...
Orkin: It was a little bit serendipitous. What happened was around that time a guy named Alex [Nareyek] had started this attempt at a standards group called the ‘AI Interface Standards Committee’, which was this like forum based discussion group divided up into people focused on different aspects like pathfinding, and emotions, and different things. And there was one group that he named Goal Oriented Action Planning, and that's where the the acronym GOAP came from.
I didn't make that acronym up. I thought I was just using an established term but it turned out he had just made up that name for this particular part of the group. The idea was to standardise planning [for games] and I ended up in the group because I'd been working on a goal system for NOLF 2, but I didn't really know what [AI] planning was. The other people in the group were either from the military or from academia who were experts in like planning systems. I would propose like “well why don't we do it this way?” and they would come back and they'd say “that's not planning”. It piqued my interest, I was like “what is this planning thing?” and I started reading up like the old Niels Nielson book about AI that covers planning and I started to see like “oh okay it's all about like reasoning backwards from a goal state to your initial state and how you can symbolically chain these things”.
I was like “wow this is fascinating”, and it seems like this would solve the problem that I was noodling on after NOLF2 of like, can't we make this a little more automated? A little smarter? And so I just took a leap of faith and I was like “oh this is what we should do for the next game”.
‘Action Movie’
As No One Lives Forever 3 entered pre-production in 2002, the landscape of shooters had continued to change. While the NOLF franchise had released two games in two years and developed commercial and critical acclaim, there was concern in the studio that it's 1960s period setting was not going to be appealing to players by the time of its release in 2005. Titles such as Quake III Arena, Halo: Combat Evolved, Return to Castle Wolfenstein, Battlefield 1942 and even Monolith's own Aliens versus Predator 2 had shown that shooters rooted in science fiction and military warfare were growing in popularity. As such, while Orkin was working on revamping the AI tools, the game itself experienced a significant change in creative direction.
Orkin: They’d gotten a contract to do NOLF3, and everyone was excited about it. Cause the NOLF games were a lot of fun but it seemed like, maybe it was a little bit more niche? While Monolith they were just aiming for like a AA hit - and I think ultimately they ended up with something that was more AAA - but they took a big risk.
The leads and the managers at Monolith and just decided even though we got this contract to start pre-production of NOLF3 we're going to go another direction. Craig Hubbard [Creative Lead and Lead Designer on NOLF2 and F.E.A.R.] is a creative genius who um was very inspired by Japanese horror. He had this idea of combining a shooter with Japanese horror like ‘The Ring’ and the team built this prototype of a vertical slice of what became F.E.A.R.
I think we were just referring to the game as ‘Action Movie’, as we we wanted it to feel like you're the star of an action movie, but with inspiration from Japanese horror. And using the very latest graphics available, [we] ended up with this like, for its time, incredible looking demo and some neat gameplay. It was also, I believe, maybe the first game where you could see the player’s body? Like most first-person shooters you just have your hand out there with a gun, but you could look down and see your whole body, and it was animated, and you could see if you're climbing a ladder or running around or whatever.
And so we made a demo of that, and it went over well with the publisher and everyone agreed: okay, we're making F.E.A.R.
In fact it wasn't until a year or so into development that the name F.E.A.R became attached to the project, largely because the studio needed to start having something to refer to as for marketing and communication purposes.
Orkin: There was a lot of debate about what to to name the game, and I remember when I first heard that we were going to call it F.E.A.R. I was concerned. Earlier when I worked Sierra, they owned ‘Garage Games’ in Oregon [and I think] they had a shooter in development for a while that maybe never shipped called ‘Fear’. So I remember when I first heard the name I was like ‘oh no, that's already been used’. But yeah, it seemed seemed like the name worked well for the game.
But yeah no connection to GOAP, just too many acronyms. I remember someone on the team saying like can you change what it stands for so that we could call it GOAT, like the animal, but *chuckles*, no.
The AI of F.E.A.R.
While the game was experiencing this significant change in creative direction at studio leadership and design level, the engine team were largely focussed on building all of the new features that they wanted to to have available. While Orkin's work is largely celebrated for the integration of planning AI, the other big change to the AI of the Lithtech engine was the introduction of a navigation mesh. While these are standard tools for game developers in the likes of Unity and Unreal in 2024, the concept only really began to catch on in industry after the release of Quake III Arena, which came out in December of the year 1999 during the development of No One Lives Forever.
But of course, for us the most interesting part is the adoption of planning within the game. As has been discussed at great length on this channel, F.E.A.R.'s major contribution is the introduction of planning AI. Planning is a concept whereby an AI system can take a look at a problem and start to plan out actions in advance: it seeks to find a series of actions that when applied in sequence will achieve a desired goal. The AI of FEAR is heavily inspired by STRIPS, the Stanford Research Institute Problem Solver first devised in 1971 by Richard Fikes and Nils Nilsson, but despite it being over 30 years old it had yet to be considered in the context of games.
Anytime I tried to talk to anyone about like ‘well this is what I'm planning to build’ the response would be ‘okay, whatever, it better work!’
The final system, as previously mentioned, is dubbed Goal Oriented Action Planning and subsequently had a huge impact on AI for video games. For those keen to learn more about how the AI of FEAR works in more detail, please check out both the very first episode of AI and Games released back in 2014, but also the dedicated AI 101 episode on Goal Oriented Action Planning.
GOAP is celebrated for how it is designed in such a way that allows for planning to work in games in a way that is conducive to game development, most notably the translation of planning actions in state machine actions and transitions. But like many great ideas, it had to go through some iteration...
Orkin: The engine engineers were very busy for a year revamping Lithtech into the F.E.A.R. technology - what they ultimately just referred to it as - and so I was left alone.
My first task was to implement a nav mesh, because the idea of nav meshes were fairly new then and we didn't have one. So I built that, and then after that I spent probably I don't know maybe a third of the year on the nav mesh and two-thirds of the year on building a planner.
I built a first version of the planner trying to stick to everything I'd learned from the academics in the standards group, and it worked! But I got a knock on the door one day from the director of engineering saying “hey you know I was testing the game and I just had one enemy in a room with nothing else in it, and we were using all the CPU available. Is there something wrong?” And I was like “Oh no!”
I quickly scrapped what I was doing and this really led to the origins of the difference between STRIPS and GOAP, and that was really thinking about runtime efficiency. F.E.A.R. shipped in 2005, so I was working on this in 2003 - so not huge processing power back then. I just devoted a lot of time to thinking about how could we pre-allocate representations of state that make it easy to quickly copy the state. Because when you're doing a search for a plan you do a lot of copying of the state to modify it, try it out, validate, undo and in C++ with earlier processors and not a lot of memory you had to be very careful about pre-allocating all of that. I had a fixed size list of the possible states and had a schema where I could reuse that and not have to do a lot of dynamic link lists and things.
But yeah, so I I spent a lot of time thinking about how to just take the ideas of a STRIPS planner but make them practical in a game, and be able to replan in real-time and take into account sensory data coming in from simulated vision and audio from the characters.
Perhaps one of the most funny, and in hindsight, terrifying aspects of this process, was the level of trust given to Orkin to build this planning tech. Video game development is a highly risk averse business, particularly now in 2024 with development budgets for AAA titles often in the hundreds of millions of dollars. Making drastic changes to core parts of a games engine can be daunting lest it can be proven it will yield desired returns. Ripping out the existing AI tools for a planner that only a few months ago choked up all of the CPU budget, on paper sounds highly perilous.
Orkin: It was a panic for me it was like, I've been building this thing and the director of engineering saying like ‘hey I'm seeing a big problem here’. Anytime I tried to talk to anyone about like ‘well this is what I'm planning to build blah blah’ the response would be ‘like okay, whatever it better work’.
Like there was no oversight! Everybody was busy with other things and I mean I appreciated like, there was a level of trust because I had done okay with the AI adapting it from for the previous game. But it was just sort of understood like ‘do what you want to do but it better work by the time we need it when pre-production ends’.
So it was stressful, but I don't think it took that long [to see improvements]. It was because it was like so much pressure it was like ‘I got to figure this out’ and I just made practical decisions that maybe didn't feel great in terms of like ditching some of the benefits of a planner, but I did what I needed to do. Carefully looked at the performance and anything that was slow. Like obviously copying a lot of data for the state all the time is slow - got to get rid of that! Looking things up where you have to search a list is slow - get rid of that! Make it a key value pair lookup.
Yeah, it didn't take too long before it was running better and then it was just a matter of layering on more and more behaviours to see like, can this accomplish what I needed to do in terms of like a character patrolling around, when he notices me draws his weapon or runs to cover or you know. Each of these things was just layered in and it got progressively more and more interesting.
I think that was the other kind of good kind of directive from the top. I think that's something that benefited me is is having leadership at Monolith who gave me freedom, but they also told me you know a) it's got to work and b) it should be fun with just one enemy in a room. And you know everything gets better on top of that, but as long as it's it's fun when even it's just you and an enemy then you know the game will will be fun as long as that's the foundation.
So I spent a lot of time just like in little test levels, trying to push the system to be more and more dynamic. In terms of like well what are the different things this character could do? He could jump over this or, duck behind this, and eventually we got into a lot of the environmental interaction of, you know, can you knock something over that becomes cover and like dynamic cover. Or could you knock something over during combat and later you crawl under it when you're fleeing or something. And yeah, all those details kind of added up to make a highly varied gameplay that feels like it's really adapting to what you're doing as the player.
Designing Combat
Orkin: That led to this thinking that soldiers should almost never just have a line [of dialogue] for an individual. It should almost always be a back and forth so even if you're getting shot, instead of going like “I'm hit”, instead it's like “What's your status?” “Ah I'm hit”. Instead of a a guy saying like “Where'd he go?” or something we'd have this back and forth of like “Can you see him?”, “Yeah, he's behind the boxes” or whatever.
I think this was kind of a feedback loop in a sense, as we tried to think about what would be cool moments to hear from the audio. That led us to think about what behaviors could be happening that would create a reason to have this back and forth. I think that really one thing fed into another, and help iterate the whole thing.
While the GOAP system enables for the combat to feel fast, fluid and exciting, there is another huge piece to the puzzle, and that is how the system interfaces with overall game design.
In order for characters to act sensibly in the space, they need to know what are valid locations to move to. The navigation mesh figures out how to get to them, but you need some form of mark-up in the level to help identify areas of interest. This comes in a myriad of forms, whether its cover points it makes sense for a soldier to hide behind, ladders for them to climb up and down, railings to jump over, windows to dive through, or objects in the environment that can be knocked down to create makeshift cover.
It's worth stressing two aspects of this: the first, that these features are only made possible by giving level designers tools to mark up all the appropriate locations in each encounter, and thus ensuring the AI knows what toys it has to play with. But critically, that as level designers begin to experiment, it will often lead to feature requests to have the AI execute new types of behaviours.
Orkin: I had a very close working relationship with the lead level designer on F.E.A.R. and NOLF2 John Mulkey, and we would have a lot of tight iteration. We'd come up with an idea and I'd be like ‘oh I think I can make that happen’ and then I'd realize oh but for that to happen I need an animation or a different transition. So I also worked closely with Patrick [Watje] our animator. So between the three of us there was a lot of like creativity, and then trying things out, and then refining them.
John would approach it as like a behavioral research project. I would get something in the game, and then he'd poke at it in different ways and show me ‘well it works in this case but I can break it this way’. Tighten it up, and then he would establish some kind of standards about like well, if characters are going to be able to do this anywhere in the level then we need to tag the environment in this way. Then he had a small army of level designers and their job was just to do passes over every level. Making sure any corner that might be usable as cover needs to have this hint on it, oriented this way, with a little cone on it that told you like if a threat is within this cone then you're able to lean out and fire at them.
You know, it's a lot of manual labour, and I think these days some of that can be automated but yeah, it was a really big collaboration of technology and design.
And once the behaviours are down, of course the next challenge is elevating the overall presentation. Ensuring characters have animations that fit each of the behaviours, and of course bringing all of the voice work in to make every enemy feel like they're much smarter than they really are.
Orkin: There was a lot of iteration on the animation of the characters. The engine still had full-body animations for the characters whereas other studios were starting to do partial-body animation. We had full-body animation and needed to make it work well. The soldiers were very dynamic: they could be shuffling to the side while still aiming at you or backing up. Or if they turned to flee they could be turning around, and running, and firing behind them.
It takes a lot of iteration to get all that stuff polished, plus the voice stuff. I don't remember what stage the voice stuff came in, but that became such a big part of it. Having the squads of enemies constantly chattering with each other. I remember there were like a few specific points in time during development where the designers just sent me a spreadsheet and said “like all right we're going to do voice recording” and I just had to come up with every kind of sequence that could come up.
The voices [were] part of the squad layer, where there was GOAP controlling individual character behaviours and then, there was the squad layer that was dynamically grouping characters into squads. Then it made decisions on their behalf. Like, now is a good time to do like an advancing cover where one guy lays suppression fire, while two guys move up to cover. There was some modular code that could evaluate whether this was the right time for certain squad behaviours. Then it would find the participants and send the orders down to them. Once that was initiated, the banter between the characters was just part of that.
The squad behaviour is one of the most well known elements of F.E.A.R., given it gave players the feeling that these characters were collaborating, despite the fact none of the NPCs are even aware of one another’s existence. The parent system sends the commands to the individual units, and coordinates the timings of the dialogue such that it sounds like they're yelling at one another. But unlike every other part of F.E.A.R.’s AI, it doesn't rely on the planning technology that drives so much of the enemy reasoning.
Orkin: I had only gone far enough with planning to control individuals. I just didn't know the planning field well enough to really know what was available for squad level planning. In my old GDC presentation, and the paper I wrote up from the slides, toward the end I do talk about how as I finished F.E.A.R. I was starting to learn about other kinds of planning like HTN planning: hierarchical task networks.
It kind of dawned on me that what I was doing at the squad level was a very simplistic HTN basically. But not formalised that way, and that idea stuck with me and in fact in the work I'm doing now, we're using HTNs because they're a better fit for controlling groups of characters where you want to choreograph what several characters are doing in parallel.
Launch and Reflection
Of course sitting here now in 2024, the impact of FEAR is readily evident: many games adopted the GOAP technique and used it in their own titles. And the game itself is still fun to play even today, but even when a team is confident a game is good, it can nonetheless be daunting as the launch date rapidly approaches.
Orkin: There was definitely a lot of positive energy. We had a great team, and everybody was excited about what we were doing. Everyone was putting in 110%, and I didn't feel like Monolith was a studio that had a real problem with crunch. Like a lot of people did put in extra hours just because they were working on something they were very passionate about, but it wasn't a feeling of like ‘oh man everybody needs to work 7 days a week and get this done’.
But yeah there was a lot of energy and the project did go long. Your know there was a little bit of going over time, over budget, which is pretty normal in games. But I think everybody felt like we were building something really good. I think also as is typical in games, there was a lot designed that we couldn't pull off in the time we had and budget we had.
“the smartest, most aggressive, tactically oriented AI that we've ever encountered”
You know it's so crazy to look at the team size and budget of a game at that time and compare it to today. Like I'm glad that F.E.A.R. kind of still stands up when people play it now. We were a team of about 30 people - maybe we added a few toward the end, 30, 35 people I think- but the budget was probably like $5 million or something like that. And so it's just crazy when you look at games today that, you know, AAA games with it's the norm to have like a $200 million budget, and 100 people, and 5 years and whatever. So we were doing a lot, with like limited resources.
So I think the mood was positive but there was still a feeling of, there's so much we wanted to get in that we didn't. And then I think also, Monolith kind of had this history of like making pretty distinctive games that would become kind of cult classics or kind of niche audience. Like No One Lives Forever is a pretty beloved franchise but never really sold that well. I think No One Lives Forever 2 sold like 500,000 copies or something. So I think there was a feeling within the studio of like, ‘we might have something big here’, but you know we've been down this road before.
F.E.A.R. came to PC on October 18th, 2005, with the console ports staggered over two years: the Xbox 360 version releasing in October of 2006 in North America, and a month later in Europe. While the PlayStation 3 version came out six months later in April of 2007, mere weeks after the console had launched in European markets. While the final sales figures are unconfirmed, publisher Vivendi stated the PC and Xbox versions combined had sold over 2 million units prior to release of the PS3 version, greatly surpassing the sales of the No One Lives Forever franchise.
The work in building up the underlying AI technology most certainly paid off, with many a review from the likes of Eurogamer, Game Informer, IGN, and more praising the behaviour of the enemy opponents. With GameSpot's Jason Ocampo calling the Replica's "the smartest, most aggressive, most tactically oriented AI opponents that we've ever encountered".
While the game was criticised for aspects of plot, pacing, and overall level design, and the PlayStation 3 port was deemed inferior to the PC and Xbox 360 versions, a consensus formed that the core gameplay was good enough to look past many of these issues. FEAR subsequently was in the running for numerous awards across 2005 and 2006. Nominated for Best PC Game at Computer Games Magazine in 2005 and also ‘Computer Game of the Year’ and ‘First-Person Action Game of the Year’ at the 9th Annual Interactive Achievement Awards.
It later won awards such as ‘Best AI’ from GameSpot, ‘Best Action Game’ from PC Gamer, and in 2007 earned the #2 ranking in Top 10 Most Influential AI Games at Alex Champandard's now defunct AIGameDev.com. Beating many high-profile titles such as Half-Life, Total War, The Sims, Halo and Thief: The Dark Project, with Lionhead's Black & White taking the top spot.
Such critical acclaim led to an entire franchise spinning out of FEARs success, first with two expansions Extraction Point and Perseus Mandate in 2006 and 2007, followed by the F.E.A.R. 2: Project Origin in 2009 and F.E.A.R. 3 in 2011. But despite this, the original 2005 title is the last game on which Jeff Orkin has a programming credit. Prior to the games launch, he had decided to take another path in his career direction.
Orkin: I left for grad school. I left the team in like July, and I think they shipped in October. It was a really tough decision, but I decided to go back to grad school and had to be in Boston in September. I was living in Seattle, and my wife and I had to, you know, pack up and move across the country and get settled.
So I moved in July and I left on very good terms with the team. I had finished almost everything. There were like a couple bugs that people wanted me to look at that I looked at remotely, and then other team members handled anything remaining.
But yeah it was kind of weird like, when the game actually shipped I wasn't there. I was kind of starting a chapter in grad school.
At the time of writing, Jeff is now a co-founder of BitPart.ai, a start-up that seeks to find new and interesting ways to build intelligent and conversational non- player characters that relies not just on modern generative AI techniques, but also falls back heavily on his experience in AI planning.
Be sure to subscribe to AI and Games, as we dig into this mystery in a future episode. How working on F.E.A.R. led Orkin down a path of curiosity, culminating in him earning a PhD in AI from MIT in 2012 and why now, after almost 20 years, Jeff is back in the video games industry trying to solve the challenges that back in the days of F.E.A.R.'s development, he frankly considered impossible.
Closing
The legacy of FEAR is one that has both rightfully been celebrated both by player s and developers for almost two decades. It was adopted in games in other beloved titles such as Condemned: Criminal Origins, Deus Ex: Human Revolution, and the reboot of the Tomb Raider franchise. Meanwhile it led to Guerilla Games introduced hierarchical task network (HTN) planning first in Killzone 2, and later used not just in their Horizon franchise, but other games as well.
It also inspired further work in areas of AI research not just to utilise games as a platform for experimentation, but also how to address the adoption of more sophisticated planning techniques in games. It was influential in my journey in grad school and made an impact on my research as I began my PhD in AI for games in 2006. As stated in our introduction, F.E.A.R. was the topic of the inaugural episode of AI and Games, and so it's safe to say that where it not for Orkin's contributions to the field, my career would have been drastically different.
F.E.A.R.’s legacy comes not just from the work by Orkin, and his adaptation of STRIPS planning into a video game context, but also in how it was adopted by the teams game designers. Finding a variety of opportunities to build out features, and through that design set pieces that continue to excite people even today.
But while its worth celebrating, it is equally one that haunts the industry. That still to this day, when we talk about great AI in a first-person shooter, the first answer to many people's minds, is a game released almost 20 years ago.
Tommy Thompson: This is going to be part of the intro: anytime you type in best AI in video games, F.E.A.R. crops up somewhere. So looking back on it now, 19 years later, it's almost been 20 years. What's your perspective on the impact it's had on the industry and, why do you think it continues to be held in such high regard?
Orkin: Yeah I mean it's interesting to think about and I'm sort of too close to it to like totally be able to wrap my head around it. But you know, got to say like I'm so grateful that people are still interested in it, and you know you included. So cool that I still get to talk to people about this old work coming up on almost 20 years old now.
I think there are a number of things. I think for one thing there was a little bit of luck. Like, I'm a big believer in that saying “luck is where preparedness meets opportunity.” I got lucky: I got this opportunity where I was at Monolith. People were happy with what I'd done working on NOLF2's AI. They were totally rewriting the engine for F.E.A.R., and I just got this rare opportunity where the company left me alone for a year and said ‘sure just go rewrite the AI and it you know as long as it works when when you come out of your office a year later’. That is kind of unheard of, and that gave me an opportunity, and I made the most of that opportunity to try some new things.
It was a bit of a leap of faith, but I think aside from that there are just kind of some things with industry that have made it hard to kind of repeat that situation. The game industry is a victim of its own success. Games have gotten bigger and bigger, and the budgets have swelled to hundreds of millions of dollars. And once that happens you can't take risks the way you could earlier in the industry, and AI is like the core gameplay of your game. At the same time, studios don't really think that far ahead; they think about the title they're building right now because games are - it's such a hit-driven industry that all that matters is that your next game is successful to keep the studio going.
I think that's limited experimentation. It's kind of like either replicating GOAP from F.E.A.R. or using HTNs like have been used in the Guerilla games, and the Transformers [Fall of] Cybertron game. or like most studios are using Behavior Trees and they can work well for a lot of games. So I think like, for a long time it's been like there are solutions that are ‘good enough’ and so the focus has been more on the presentation of the game: advancing the quality of the rendering, and the animation, and the physics fidelity and other things.
I think also, somewhere in between like 2012 and where we are now, other things happened like free to-play and mobile gaming. I think that also took the industry in different directions, where the focus was on exploring new business models and what kind of gameplay works well on a touchscreen. It's just like we didn't know it at the time but like the early 2000s were sort of this golden age of how far can we push sophisticated human-AI for mostly at that time on first-person shooters.
I also think it's interesting that the same time that F.E.A.R. came out was when the famous research project Facade came out, which I also feel like that 20 years later stands up very very well.
It’s one of the best examples of interactive drama, and simulating humanlike characters. Putting you in a situation where you really feel emotionally awkward to be there between these characters. And of course Facade is you know another form of planning. It’s not GOAP, or HTNs - it's maybe closer to HTNs - but it's their own [formalism].
[Facade co-creator] Michael Matias's PhD thesis was inventing this language able to do narrative planning. I think those ideas are still super relevant, and have very much inspired what we're doing at BitPart. Like in some ways BitPart is trying to bring together some of the thinking behind like the planning for actions and combat in F.E.A.R. with planning for dialogue and drama in Facade.
Special thanks once again to Jeff Orkin for taking the time to sit down with me for this retrospective. It was a wonderful conversation, and I look forward to sharing our follow-up digging into Orkin’s post-F.E.A.R. career.