00:00SPEAKERDo you ever think about what words mean sometimes, Brad?
00:03SPEAKER- I try, as someone who talks for a living, I try not to.
00:06SPEAKER- So the other day I told my daughter
00:10SPEAKERshe was having a problem with something.
00:11SPEAKERI was like, well, here's another way to do it.
00:12SPEAKERThere's more than one way to skin a cat.
00:14SPEAKER- Mm-hmm.
00:16SPEAKER- And she was like, wait, what the hell did you just say?
00:18SPEAKERWhy are you skinning cats?
00:20SPEAKER- Here we go.
00:21SPEAKERAll right, here's the gen alpha crusade
00:23SPEAKERagainst animal cruelty, I guess we're doing now.
00:25SPEAKERAll right, go ahead.
00:26SPEAKER- And then I thought about it for a minute.
00:27SPEAKERI was like, wow, that is truly a horrifying thing to say.
00:29SPEAKER- Yes, I'm done.
00:30SPEAKER- Like really and truly, why would you skin a cat, Brad?
00:33SPEAKER- Never really thought about
00:34SPEAKERwhere it came from before, actually.
00:36SPEAKER- Yeah, I don't want to skin a cat.
00:37SPEAKERI don't, like, I think this is a country thing probably.
00:41SPEAKER- Probably, I mean, that's pretty universally used
00:43SPEAKERor understood, right?
00:44SPEAKERI mean, like, you know, young people notwithstanding
00:46SPEAKERwho have just never heard it before,
00:47SPEAKERbut I always thought that was a pretty universal
00:50SPEAKERkind of idiom, right?
00:51SPEAKER- Okay, so I'm going to the Bellevue News Democrat,
00:55SPEAKERwhich is a newspaper from I don't know where,
00:58SPEAKERand it says that it's a centuries old thing
01:02SPEAKERthat people used to say.
01:04SPEAKER- Okay.
01:05SPEAKER- So from 1840 and earlier, 1678 is the first time
01:08SPEAKERthat they found a recorded version of this,
01:11SPEAKERwhich was there are more ways to kill a dog than hanging.
01:14SPEAKER- Whoa.
01:15SPEAKER- This is-
01:15SPEAKER- Good God, man.
01:17SPEAKERI'm not going to make any more flip jokes
01:18SPEAKERabout animal cruelty, actually.
01:21SPEAKER- Well, I wonder if they were talking about
01:22SPEAKERlike a scurvy sea dog at that point in 1678.
01:26SPEAKER- Okay, well, those guys just have it coming.
01:27SPEAKER- Yeah, look, this is, there's a lot going on here.
01:32SPEAKERI feel like this is dangerously close
01:34SPEAKERto an old Saturday Night Live bit from like 1977 or '78.
01:37SPEAKER- Sure.
01:38SPEAKER- But yeah, so anyway, I'm not allowed to say
01:41SPEAKERthere's more than one way to skin a cat now.
01:43SPEAKER- That's probably for the best.
01:44SPEAKERAlso, especially given the nature and the star and roles
01:47SPEAKERof the game that we're about to talk about on this podcast.
01:51SPEAKER- Yeah.
01:51SPEAKER- Maybe we should be nice to cats.
01:53SPEAKER- I think the cats are okay, man.
01:57SPEAKER(upbeat music)
02:23SPEAKER- Welcome to Brad and Will Made a Tech Pod.
02:25SPEAKERI'm Will.
02:26SPEAKER- I'm Brad.
02:27SPEAKER- Hello, Brad.
02:28SPEAKER- Hi, thanks for having me.
02:30SPEAKER- No, no, you're the host.
02:32SPEAKERWe do this every week.
02:33SPEAKERThis is the 303rd episode of the show.
02:35SPEAKER- So much pressure, so much pressure.
02:37SPEAKER- I'm super stoked about this episode of the show.
02:39SPEAKERIt has been in the works for months at this point.
02:44SPEAKER- Since before the game in question came out, actually.
02:46SPEAKERI think I went back and looked and late March
02:48SPEAKERwas the first email that arrived in my inbox
02:50SPEAKERabout this possibility.
02:52SPEAKER- And then you served your civic duty
02:55SPEAKERand some of them served their civic duty.
02:57SPEAKER- There were two other instances of near jury duty
02:59SPEAKERin the middle of this and multiple instances
03:01SPEAKERof people being out of town.
03:02SPEAKERSo modern scheduling is hard.
03:05SPEAKERPeople are busy.
03:06SPEAKER- Yeah, yeah.
03:07SPEAKER- But we finally, finally got all four of us together
03:09SPEAKERto do this podcast and I'm very happy we did.
03:12SPEAKER- Yeah, so we are talking to the folks from Blendo Games,
03:16SPEAKERtwo of the folks from Blendo Games who made "Skin Deep".
03:19SPEAKER"Skin Deep", if you don't know, is a game
03:21SPEAKERabout rescuing cats from pirates on spaceships.
03:25SPEAKER- Space pirates and space cats.
03:26SPEAKER- I mean, some of the cats are scuba diving cats.
03:28SPEAKERThe cats are, there's a variety of different types of cats.
03:30SPEAKERThey are in space, but they, I think they would identify
03:34SPEAKERas other types of cats.
03:35SPEAKER- Yes, probably so.
03:36SPEAKERNow, the real claim to fame to me about Blendo Games
03:39SPEAKERis that the last, I think, four games in a row
03:41SPEAKERthat they have shipped have been on open source
03:43SPEAKERid software engines.
03:45SPEAKERThey did, I think it was "30 Flights of Loving"
03:47SPEAKERand "Gravity Bone" shipped on the Quake 2 engine.
03:49SPEAKER- Yeah.
03:50SPEAKER- They were recently "Quadrilateral Cowboy"
03:52SPEAKERand now "Skin Deep" shipped on Doom 3.
03:54SPEAKERSo perfect fire, you might say, for a tech pod episode.
03:59SPEAKER- Yeah, it was, this was the podcast episode
04:01SPEAKERwe were born to record, baby.
04:04SPEAKERNo, it's, I interviewed Brendan years ago
04:06SPEAKERat XOXO in VR for the "Fu" show,
04:10SPEAKERand we talked about "Quadcow" when it was coming out,
04:12SPEAKERwhich tells you how long ago "Quadcow" came out.
04:16SPEAKERAnd they have a fascinating approach
04:18SPEAKERto game development at Blendo.
04:19SPEAKERSo we were stoked to bring them in here
04:21SPEAKERand have a chat about, well, I guess "Skin Deep"
04:26SPEAKERopen source engines, id tech.
04:29SPEAKER- Working at EA in the 2000s.
04:32SPEAKER- Yeah, shout out to this habitor, man.
04:33SPEAKERI was so stoked about that game, and it got done dirty, but-
04:37SPEAKER- Video game toilets, all kinds of stuff in here.
04:39SPEAKER- So we're joined today by Brendan Chung
04:41SPEAKERand Sanjay Madhav from, well, who worked on "Skin Deep"
04:45SPEAKERfor Blendo Games.
04:46SPEAKERWelcome to the show, guys.
04:47SPEAKER(upbeat music)
04:50SPEAKERSo I guess let's start with the broadest question,
04:51SPEAKERand I guess I'm gonna split this into two questions,
04:54SPEAKERbut really it's why open source as a game development model?
04:58SPEAKERBut before we get to why id tech,
04:59SPEAKERwhy don't we just start with the broad open source part?
05:03SPEAKERAre there financial, creative, technical considerations,
05:06SPEAKERall of the above?
05:07SPEAKER- Yeah, it's a little bit of everything.
05:10SPEAKERYeah, so I'll use id tech four for "Skin Deep,"
05:12SPEAKERand there's different elements of it.
05:16SPEAKERPart of it is just like,
05:17SPEAKERI personally have been using id software engines
05:21SPEAKERsince like the mid '90s with like "Doom" and "Quake"
05:24SPEAKERand "Half-Life," things like that.
05:27SPEAKERAnd like all the engines kind of build on top of each other,
05:30SPEAKERso it just can make sense to just use
05:32SPEAKERwhat you've been using for a while and know really well.
05:37SPEAKERBut also like the engine is built
05:42SPEAKERjust for first-person shooters.
05:45SPEAKERLike it doesn't do anything else.
05:47SPEAKERIt does first-person shooters and does a great job at it.
05:51SPEAKERAnd so there's something really nice about using tech
05:55SPEAKERthat's just like laser focused,
05:56SPEAKERdoing one specific thing and doing it well, which is great.
06:03SPEAKERBut yeah, for the open source specifically,
06:05SPEAKERwe did use a source port called D-H-E-W-M-3,
06:10SPEAKERD-H-E-W-M-3, and it has like a billion fantastic fixes
06:16SPEAKERand improvements and like quality of life stuff in it
06:19SPEAKERthat we benefited hugely from.
06:22SPEAKER- So is it a, if you had to specify,
06:26SPEAKERit seems like it's an artistic choice at this point.
06:29SPEAKERThere's benefits to using the open source engine
06:31SPEAKERthat you're not paying royalties to Epic or Unity
06:33SPEAKERor whoever, right?
06:34SPEAKERBut it seems like it's much more about,
06:37SPEAKER"Hey, this is the kind of stripped down Camaro
06:42SPEAKERof first-person shooter,
06:44SPEAKERthe 60s era Camaro of first-person shooter engines."
06:47SPEAKER- Yeah, it's a very lean piece of tech.
06:50SPEAKERI mean, Sanjay messed around with the guts
06:51SPEAKERway more than I did,
06:52SPEAKERbut like it's built to do a specific thing,
06:55SPEAKERwhich is make first-person shooter environments
06:58SPEAKERfor you to walk around in and do first-person stuff.
07:02SPEAKERAnd there's something nice about that,
07:03SPEAKERjust being like really good at doing that
07:05SPEAKERas opposed to just being like kind of generally good
07:07SPEAKERat a wide variety of different games.
07:10SPEAKER- Longtime listeners from before this podcast,
07:13SPEAKERBrendan, you and I talked a decade ago
07:17SPEAKERin my VR talk show about your last game,
07:20SPEAKERQuadrilateral Cowboy.
07:22SPEAKERAnd part of that process was you sending over
07:24SPEAKERa bunch of assets from the game for us
07:26SPEAKERto build an environment so that we could talk in VR
07:28SPEAKERabout the game and pick up stuff and look at it.
07:31SPEAKERAnd it was shocking to us coming from moving Unity games
07:37SPEAKERand Unreal games and all that stuff,
07:38SPEAKERhow straightforward and simple like the actual assets were,
07:42SPEAKERlike the models, the assets, the materials,
07:44SPEAKERall of that just kind of, you know, there wasn't,
07:48SPEAKERwe didn't have to port a bunch of shaders over to Unity
07:50SPEAKERto get this to work, it was really nice.
07:52SPEAKER- Yeah, so id Software historically in the past
07:58SPEAKERhas been very adamant about making their games
08:01SPEAKERextremely moddable and about being editable
08:04SPEAKERby normal people.
08:07SPEAKERAnd I feel Doom 3 is kind of like, at least in my opinion,
08:11SPEAKERkind of like the culmination of all of those efforts,
08:12SPEAKER'cause like all their files are text files,
08:16SPEAKERyou just open them up and it's just human readable files.
08:19SPEAKERAll their map files are just things you can open up
08:22SPEAKERand just edit and peek at how id Software implemented
08:26SPEAKERtheir stuff and their levels.
08:29SPEAKERIt's just built to be edited.
08:31SPEAKERLike they have a bunch of modding tools inside the engine
08:36SPEAKERfor people to make content like very easily
08:39SPEAKERand quickly with it.
08:41SPEAKERAnd so there's just something really nice about, you know,
08:43SPEAKERtech that's built for people to open up and explore
08:46SPEAKERand dig around the guts.
08:49SPEAKERAnd like it kind of follows with their open source
08:52SPEAKERphilosophy of releasing their engines
08:55SPEAKERand making them available for people to mess with
08:58SPEAKERand release commercial projects with
09:00SPEAKERand something like beautiful about that, I think.
09:04SPEAKER- I think your path through id engines
09:06SPEAKERfor commercial releases in particular was,
09:08SPEAKERI think you shipped two games on Quake 2
09:10SPEAKERbefore you moved to Doom 3 and you've now got,
09:12SPEAKERand also I apologize,
09:13SPEAKERI'm just going to use the id Software names
09:15SPEAKERand not the id Tech 3 and 4
09:17SPEAKERbecause I can't keep all that stuff straight.
09:19SPEAKERAs somebody who played a lot of Quake in the nineties,
09:21SPEAKERbut what triggered the switch from Quake 2 to Doom 3?
09:24SPEAKERBecause I think Doom 3 opened source already at that point,
09:28SPEAKERor maybe it was actually,
09:29SPEAKERmaybe that open source release was just around that time.
09:32SPEAKERBut like what finally made you say, all right,
09:34SPEAKERI'm going to move on to kind of the next big milestone
09:36SPEAKERin their tech progression.
09:37SPEAKER- Yeah, so Doom 3, the Doom 3 engine
09:40SPEAKERhas a bunch of things inside it
09:44SPEAKERthat are extremely suitable for like sci-fi stuff.
09:51SPEAKEROne of the big things in Doom 3 was their GUI system,
09:55SPEAKERwhich was these computer screens where you can-
09:59SPEAKER- Yes, immediately, as a big Doom 3 defender
10:04SPEAKERat the time of release, the diegetic computer interfaces,
10:07SPEAKERlike they just walk up and use a computer in the world stuff
10:10SPEAKERimmediately leapt out at me in skin deep.
10:13SPEAKER- Yeah, yeah.
10:14SPEAKERAnd when I saw that back when Doom 3 first came out,
10:18SPEAKERI thought, oh my God, this is an incredible feature.
10:20SPEAKEREvery game is going to copy this.
10:21SPEAKERAnd then not, I don't know,
10:23SPEAKERit didn't take off as I thought it would.
10:26SPEAKERBut you still see it here and there.
10:27SPEAKERLike I think Prey most recently had a interface
10:30SPEAKERthat was extremely similar to it.
10:31SPEAKERBut yeah, there's just like certain sci-fi stuff
10:33SPEAKERthat Doom 3 had, like they also had like the vacuum
10:36SPEAKERof outer space in that game when you walk outside.
10:41SPEAKERSo they had a bunch of like built-in tech.
10:44SPEAKER- I guess there were kind of external sequences
10:46SPEAKERlike on Mars, right, in that game?
10:47SPEAKEROh, so were you guys building the vacuum system
10:49SPEAKERin skin deep on what was already there
10:51SPEAKERor for those Mars sequences?
10:52SPEAKERInteresting, I had forgotten about that.
10:53SPEAKER- Yeah, so Doom 3 could walk on the surface of Mars.
10:56SPEAKERAnd during that time there's a vacuum of no oxygen
10:58SPEAKERand your oxygen meter goes down.
11:00SPEAKERAnd so it kind of piggybacked on top of that technology
11:03SPEAKERfor skin deep to be outer space.
11:06SPEAKER- One of the, you added zero G though, right?
11:08SPEAKERI don't remember, I didn't remember zero G.
11:09SPEAKERIt's been a long time since I played Doom 3,
11:11SPEAKERso I could be wrong.
11:13SPEAKERBut like zero G movement is kind of one of those third rails
11:18SPEAKERfor every studio I've ever worked at.
11:21SPEAKEREverybody's like, man, we gotta do a zero G level.
11:23SPEAKERAnd then you prototype the zero G level
11:26SPEAKERand you're like, oh God, no, we can't do this.
11:28SPEAKERThis is a nightmare.
11:29SPEAKERNobody's gonna know how to control this.
11:30SPEAKERAnd even games that do it very well,
11:32SPEAKERlike Outer Wilds comes to mind as something
11:34SPEAKERthat is like a really good implementation of that
11:36SPEAKERor Kerbal or whatever.
11:38SPEAKERIt still is a high barrier to entry.
11:40SPEAKERHow did you all get to the system that you have in the game
11:43SPEAKERand like what was the process like getting that,
11:47SPEAKERlike building that out?
11:48SPEAKERYeah, it was, so Skindeep is kind of intended
11:52SPEAKERto be an immersive sim, which is like, you know,
11:56SPEAKERthe nerdiest first person shooter genre you can think of,
11:59SPEAKERbut we also want it to be like more accessible
12:03SPEAKERand not as like difficult to get into
12:07SPEAKERas some other more like more complex games.
12:10SPEAKERSo for zero G, that was like one of the big questions,
12:12SPEAKERlike how do we, we're doing a space game,
12:14SPEAKERtakes place in outer space.
12:14SPEAKERSo we feel like we need to let the player
12:17SPEAKERlike go to outer space, but how do we make that
12:19SPEAKERsomething accessible and, you know,
12:21SPEAKERnot a shelf moment for people.
12:25SPEAKERSo we looked at a bunch of different games
12:27SPEAKERto see how they did it.
12:28SPEAKERAnd we chose to just try to go with the approach
12:31SPEAKERthat got like the spirit of it
12:34SPEAKERand the energy of going to outer space,
12:36SPEAKERbut kept it as, you know, simple
12:40SPEAKERand easy to get into as possible.
12:45SPEAKERSo we made some intentional choices to like,
12:47SPEAKERto not roll the camera ever.
12:51SPEAKERYou're just always ramrod straight up
12:54SPEAKERand just kind of like levitating around.
12:57SPEAKERWe control like how,
13:03SPEAKERI think for a while we had,
13:05SPEAKERwe simulated the player just like moving forever
13:08SPEAKERin outer space, like real logic does.
13:11SPEAKERAnd that kind of like felt difficult to get into.
13:13SPEAKERIt's such a alien experience to just like
13:17SPEAKERshoot forward like a bullet all the time.
13:19SPEAKERAnd so we kind of kept iterating and tweaking it,
13:22SPEAKERdo play tests until we found something
13:24SPEAKERthat was pretty accessible that we felt players could enjoy.
13:27SPEAKER- I think also it was helpful that we kind of set it up
13:31SPEAKERso that you can't run out of oxygen.
13:34SPEAKER'Cause I think a lot of times, like either
13:36SPEAKERthere's like some sort of like space suit
13:38SPEAKERand you have like an oxygen tank
13:40SPEAKERand you're like worried about that.
13:41SPEAKERAnd we made like the choice of like,
13:43SPEAKERwell, you have an iron lung, so it just works.
13:45SPEAKERAnd I think that also just makes it more accessible
13:49SPEAKERfor the players.
13:50SPEAKERAnd we kind of spent a good chunk of time
13:52SPEAKERlike making it fun when like the enemies
13:55SPEAKERget sucked down into space and stuff like that.
13:57SPEAKERAnd then we had other problems like, well, okay,
13:59SPEAKERwell then what happens if an important key
14:01SPEAKERgets sucked down into the space?
14:03SPEAKERAnd that's why we incorporated like that lost
14:05SPEAKERand found machine and stuff like that.
14:07SPEAKER- Yeah.
14:08SPEAKER- There are a lot of concessions to playability
14:10SPEAKERI find in this game.
14:11SPEAKER- I mean, you guys put out this mod museum
14:13SPEAKERthat gets into not just technical stuff,
14:16SPEAKERyou show off scripting and lighting and so forth,
14:18SPEAKERbut also a lot of design decisions you made
14:20SPEAKERabout like the clamor system and what height can you
14:23SPEAKERand can you not waste yourself up onto?
14:25SPEAKERLike, should we standardize those and everything?
14:27SPEAKERAnd like, it seems like you guys really
14:29SPEAKERin just about every case lean toward
14:31SPEAKERwhat is going to be more fun and playable
14:33SPEAKERversus what's gonna be more realistic
14:34SPEAKEReven though this genre has the word simulation in it.
14:38SPEAKER- Yeah, yeah.
14:39SPEAKERIt's always a matter of like, what are players
14:42SPEAKERfinding challenging in the game?
14:44SPEAKERAnd is that thing supposed to be challenging
14:46SPEAKERor was it accidentally challenging?
14:48SPEAKERAnd like, it'll all play test from like,
14:50SPEAKERoh, players are getting stuck in this thing.
14:51SPEAKERAnd like, that's not really meant to be a point of friction.
14:54SPEAKERSo we just kind of keep honing it down
14:57SPEAKERif anything that works.
14:59SPEAKER- I was just saying, you mentioned in one of,
15:01SPEAKEReither in an interview or blog post,
15:02SPEAKERI don't remember which, Mark of the Ninja,
15:03SPEAKERwhich is one of my all time favorite example games
15:07SPEAKERbecause it is like, I was bad at playing stealth games.
15:10SPEAKERSo, you know, I had bounced off of all those 90s
15:12SPEAKERstealth games like Thief and the early Deus Ex even
15:15SPEAKERbecause I didn't understand how stealth worked
15:18SPEAKERin video games.
15:18SPEAKERI was trying to play them like real life
15:20SPEAKERand having a game that visualized those systems
15:23SPEAKERwas really like, opened that whole genre up for me.
15:27SPEAKERLike, was that an inspiration here for this
15:30SPEAKERto kind of open up in Sims a little bit?
15:32SPEAKER- Yeah, absolutely.
15:33SPEAKERIt was inspiration on multiple levels, Mark of the Ninja.
15:38SPEAKERThey are, in my opinion, the best in the biz
15:42SPEAKERat like making it clear what is going on right now.
15:46SPEAKERLike you said, like they visualize every view cone.
15:48SPEAKERThey visualize every like sound you make.
15:50SPEAKERThere is no like ambiguity of what's going on.
15:53SPEAKERSo when something happens, you know exactly
15:56SPEAKERwhy that happened.
15:58SPEAKERI think it's really, you know, world-class stuff.
16:01SPEAKERThe other thing that we borrowed from Mark of the Ninja
16:06SPEAKERwas their AI system or their approach to AI.
16:13SPEAKERThey released a write-up on how their AI system works.
16:19SPEAKERAnd we took that same approach for Skin Deep.
16:23SPEAKERIt's a concept of kind of like
16:25SPEAKERwhen something happens in the world,
16:27SPEAKERit kind of drops a little like invisible node
16:30SPEAKERand that node will be like a point of interest for bad guys.
16:34SPEAKERLet's say you sneeze, a door opens, you flush a toilet.
16:39SPEAKERAnd then it's all about kind of managing
16:42SPEAKERa bad guy notices a node.
16:44SPEAKERThey see it or they hear it or they're close to it
16:47SPEAKERand they'll go investigate it.
16:49SPEAKERAnd then after some timer expires, the node will disappear.
16:52SPEAKERAnd so it's a very like elegant, clean approach to doing AI.
16:57SPEAKERAnd it's what they did for Mark of the Ninja.
16:59SPEAKERAnd when I read the write-up, I thought,
17:01SPEAKERoh, this is like a very clean way to do it of a very complex,
17:06SPEAKERkind of like creates a lot of interesting,
17:08SPEAKERcomplex behaviors through a very simple system.
17:11SPEAKER- It makes the game really readable,
17:12SPEAKERlike that plus the UI elements you pop up.
17:14SPEAKER'Cause like, unlike a lot of games where you make a noise
17:17SPEAKERand then a bunch of people come over and investigate it
17:19SPEAKERand you're like, why are all these guys here?
17:21SPEAKERThere's a thing that says, you know,
17:23SPEAKERa sound object pops up in the world
17:26SPEAKERthat you can actually see and understand what's happening,
17:29SPEAKERwhich I think is really helpful.
17:31SPEAKER- Yeah, like I grew up playing thief
17:33SPEAKERand I love thief so much,
17:35SPEAKERbut there is like definitely this ambiguity that it has.
17:38SPEAKERThat's part of the challenge that we kind of did not intend
17:40SPEAKERto be a challenge for skin deep.
17:43SPEAKER- So back to the engine, I know, you know,
17:46SPEAKERDoom 3 obviously had a lot of functionality
17:49SPEAKERbuilt into it already.
17:50SPEAKERAnd then Doom 3, obviously, like you said,
17:52SPEAKERhas a lot of fixes and stuff too,
17:53SPEAKERbut how much, how many enhancements did you guys add
17:56SPEAKERin terms of either brand new features or systems
17:59SPEAKERor like enhancements to, I know,
18:00SPEAKERI think the mod museum mentioned some changes
18:02SPEAKERto the renderer and stuff.
18:03SPEAKERLike what were some, what were some of the bigger things
18:05SPEAKERthat you guys added yourselves?
18:07SPEAKER- So there was, there was a lot.
18:10SPEAKERI think one thing also I wanted to mention is like,
18:12SPEAKERbig shout out definitely to Daniel and the Doom 3 people,
18:16SPEAKERbecause one of the great benefits of open source,
18:19SPEAKERI think is like, you have a great community of like people
18:21SPEAKERwilling to like help out and pitch in and stuff,
18:24SPEAKERwhether it's the editor we use, Dark Radiant,
18:29SPEAKERwas open source, right?
18:31SPEAKERAnd then also Doom 3, like one of the fun things
18:33SPEAKERwas just that we released the demo
18:35SPEAKERand we released the source code for the demo.
18:37SPEAKERAnd then like within a day, Daniel from Doom 3 was like,
18:40SPEAKERokay, I got it working on Linux.
18:42SPEAKERIt's like, okay, cool.
18:43SPEAKERLike we don't have the bandwidth
18:44SPEAKERto support officially a Linux version,
18:46SPEAKERbut there's a community supported Linux version.
18:50SPEAKERThey actually found bugs in the code
18:52SPEAKERthat we actually integrated
18:54SPEAKERbecause there were actually bugs on all the platforms,
18:56SPEAKERnot just on our platform PC, right?
19:00SPEAKERSo definitely like there's that great,
19:01SPEAKERlike sort of support, I think that, you know,
19:05SPEAKERit's going to be harder to get,
19:06SPEAKERlike if you're doing Unity or Unreal or something like that.
19:10SPEAKERAnd then in terms of the changes we made,
19:12SPEAKERso before I got into the project,
19:16SPEAKERSuzanne, who's a great designer and programmer as well,
19:20SPEAKERdid a lot of work with the lighting system,
19:24SPEAKERspecifically like our light meter and things like that
19:27SPEAKERto detect whether we're in the shadow or the light.
19:30SPEAKERSo there were a lot of changes like early on even, I think,
19:33SPEAKERthat just support like kind of the design that we wanted.
19:37SPEAKERAnd then later it kind of,
19:40SPEAKERwe reached a point where we sort of ran into limitations
19:44SPEAKERwith like what we could do visually
19:46SPEAKERwith the built-in original Doom 3 graphics system.
19:52SPEAKERYou know, it's so old that it's like
19:53SPEAKERthe shaders are written in assembly language, right?
19:57SPEAKERWhich was, that was a fun like day one or week one
20:00SPEAKERwhen Brendan was like,
20:01SPEAKERoh, like we want a desaturation effect,
20:03SPEAKERwhich I don't even know
20:04SPEAKERif we actually use that in the game anymore, really, but.
20:07SPEAKER- A little bit. - A little bit.
20:09SPEAKERAnd we want a desaturation but I was like,
20:10SPEAKERokay, I'll open up some shaders.
20:12SPEAKERAnd then I was like, where are the shaders?
20:14SPEAKERLike, oh, they're these assembly files, like, okay.
20:17SPEAKERThis will be interesting.
20:18SPEAKERAnd I found some just random,
20:20SPEAKERluckily someone had made like a one page PDF cheat sheet
20:23SPEAKERfor shader assembly, shader ARB.
20:26SPEAKERAnd I was like, okay, this is helpful.
20:27SPEAKERAnd then I kind of just had to work through like,
20:30SPEAKERokay, how do I actually like do this desaturation?
20:34SPEAKERSo eventually we reached a point
20:35SPEAKERwhere we wanted something just like,
20:37SPEAKERso a modern game, very simple.
20:39SPEAKERI mean, it's the outline effect
20:41SPEAKERwhen you move your reticle over
20:45SPEAKERsomething you can interact with, right?
20:46SPEAKERIt shows an outline.
20:47SPEAKERAnd that basically was going to be impossible to do
20:53SPEAKERin the existing Doom 3 graphics system
20:56SPEAKERbecause of limitations of how like that whole,
20:59SPEAKERlike older shader assembly model worked.
21:03SPEAKERSo at some point we kind of decided
21:06SPEAKERthat really to be able to implement the stuff
21:08SPEAKERthat we wanted to implement,
21:09SPEAKERwe would need to update or modernize the rendering system.
21:14SPEAKERSo by modernizing,
21:16SPEAKERwe kind of went from like a circa 2003 rendering
21:19SPEAKERto like circa 2015, let's say, rendering.
21:24SPEAKERSo maybe we added 10 years on.
21:25SPEAKERSo the big thing was we switched to GLSL,
21:28SPEAKERwhich is like the newer OpenGL shaders.
21:32SPEAKERAnd so that required quite a bit of work
21:36SPEAKERto sort of port over getting all the existing systems
21:40SPEAKERto work, to render properly.
21:43SPEAKERI actually wrote like a script
21:45SPEAKERthat just like converted the assembly
21:47SPEAKERinto the equivalent GLSL.
21:52SPEAKERAnd so we kind of worked through that and got that working.
21:56SPEAKERAnd that was kind of unlocked the ability
21:59SPEAKERto do a lot more post-process effects
22:01SPEAKERthat we couldn't do before.
22:03SPEAKERAnd then also an unexpected bonus
22:05SPEAKERwas that we suddenly had Steam Deck support
22:08SPEAKERbecause prior to that, when you ran the game on Steam Deck,
22:13SPEAKERyou could hear the game running
22:14SPEAKERand you could quote unquote play the game,
22:16SPEAKERbut the screen was black
22:17SPEAKERbecause the Steam Deck's drivers don't support
22:23SPEAKER25 year old shader assembly, right?
22:26SPEAKERSo it turned out, we're like,
22:27SPEAKERoh, the Steam Deck works now, this is great.
22:29SPEAKERAnd then we were able to get Steam Deck verified
22:31SPEAKERand all that, right?
22:32SPEAKERSo that was a great bonus from that.
22:35SPEAKERSo that's like one example.
22:36SPEAKERAnother example is, we wanted to localize
22:40SPEAKERto other languages with like Chinese, Japanese, et cetera.
22:45SPEAKERThe original Doom 3 was only designed
22:47SPEAKERto support basically Western languages.
22:50SPEAKERSo you could support like the romance languages,
22:54SPEAKERGerman, English, and a couple of others,
22:57SPEAKERbut like you were limited to only what's extended ASCII.
23:02SPEAKERSo you couldn't do like Polish or Turkish or Chinese
23:05SPEAKERor all those other languages that we did.
23:07SPEAKERAnd for that, what we ended up doing
23:10SPEAKERwas actually because the Doom 3 BFG engine
23:14SPEAKERis also open source.
23:16SPEAKERAnd we were actually able to bring over
23:18SPEAKERtheir support for Unicode
23:21SPEAKERand the new font system that they used to BFG,
23:25SPEAKERwhich turned out was the same font system as Rage.
23:28SPEAKERAnd we actually got from the Rage mod tools,
23:31SPEAKERthe program that lets you like import a true type font
23:35SPEAKERinto the Doom or like into the BFG, the EdTech 4,
23:40SPEAKERI think probably technically font format.
23:43SPEAKERSo those are like some examples of things
23:45SPEAKERthat we had to sort of modernize.
23:47SPEAKERAlso adding like a controller support,
23:49SPEAKERwhich we in part took just from quad cow
23:52SPEAKER'cause we had controller support on that as well.
23:54SPEAKERSo there were a lot of things that we actually had to fix
23:58SPEAKERor improve or advance.
24:01SPEAKERAnd I guess, yeah, maybe it also leads to another question,
24:04SPEAKERwhich is like, well, why did you decide to do Doom 3
24:07SPEAKERand not Doom 3 BFG?
24:10SPEAKERAnd I think the main reason is,
24:14SPEAKERBrian, you can correct me if I'm wrong,
24:15SPEAKERbut the main reason is that in Doom 3 BFG,
24:18SPEAKERthe user interfaces, instead of being these nice
24:22SPEAKERlike text files that are human readable,
24:24SPEAKERyou can edit them, mod them.
24:26SPEAKERThey were all based on Scaleform,
24:28SPEAKERwhich was like, you might remember it was like popular
24:31SPEAKERabout 10, 15 years ago.
24:32SPEAKERIt was like a way to get flash-based UIs into your game.
24:36SPEAKERWell, it turns out like Autodesk bought them
24:38SPEAKERand they don't release Scaleform anymore.
24:41SPEAKERAnd so there wasn't actually even a way for us
24:43SPEAKERto like make new UIs or anything like that.
24:46SPEAKERThat was, I think the main limitation.
24:48SPEAKERThere were other things too, I think,
24:49SPEAKERwhere in BFG stuff wasn't as easy to mod.
24:55SPEAKERThere would have been a benefit of that,
24:56SPEAKERwhich is BFG does have a much more updated renderer.
24:59SPEAKERLike it's a circa 2015 one,
25:02SPEAKERbut because we had made so many other changes,
25:06SPEAKERlike it wasn't viable for us to just be like,
25:07SPEAKERlet's bring that over.
25:09SPEAKERAnd it was better to just like kind of build from what we have.
25:12SPEAKER- The Doom 3 BFG was the commercial re-release
25:14SPEAKERthat Bethesda did, right?
25:16SPEAKERIs that open source as well?
25:17SPEAKERI didn't realize.
25:18SPEAKER- Yeah, it is.
25:19SPEAKER- Okay.
25:20SPEAKERIs that because the original game was released GPL'd
25:24SPEAKERand so they had to also open source BFG.
25:26SPEAKERDo you have any idea if that was mandatory on their part?
25:29SPEAKER- No, it wouldn't be mandatory
25:32SPEAKERbecause they're the license holders
25:33SPEAKERso they can choose to release it.
25:36SPEAKERLike they could choose to like do whatever they want
25:41SPEAKERto do with it.
25:43SPEAKERSo yeah, so it was, I think it was just id software
25:48SPEAKERat the time still wanted to open source things
25:51SPEAKERas opposed to like they were legally required to.
25:53SPEAKERUnfortunately, it doesn't seem like they're really
25:57SPEAKERdoing that anymore.
25:57SPEAKERI don't even know if they really support mod tools much
26:00SPEAKERfor like, let's say Doom Dark Ages
26:02SPEAKERand stuff like that, unfortunately.
26:04SPEAKER- I mean, it sounds like you guys did a lot of foundational
26:06SPEAKERor pretty low level work though
26:07SPEAKERon the code base you were working with.
26:09SPEAKERAre you aware of any of that functionality
26:10SPEAKERthat was backported into the Doom 3 source port
26:13SPEAKERand have they taken any of your stuff back in?
26:16SPEAKER- Oh.
26:17SPEAKER- So I think generally they don't accept changes.
26:21SPEAKERLike id does not accept changes on that repo.
26:24SPEAKERIt's kind of just--
26:25SPEAKER- Oh sorry, I'm sorry.
26:26SPEAKERI'm in, but this is where the name of the source port
26:28SPEAKERgets confusing.
26:29SPEAKERI'm in Doom 3.
26:31SPEAKER- I think there were a few.
26:32SPEAKERLike we did go back and forth.
26:33SPEAKERWe actually, you know, I think there's some things
26:36SPEAKERthat they kind of did incorporate to some extent,
26:42SPEAKERbut we made also so many just like changes
26:45SPEAKERwhere it's like, it's not really necessary
26:48SPEAKERfor what they're trying to do,
26:49SPEAKERwhich is just trying to make like a, you know,
26:52SPEAKERbeing able to play Doom 3 on modern hardware
26:56SPEAKERis kind of their intent, right?
26:58SPEAKERSo I don't know that there was a lot that we put in.
27:04SPEAKERThere were definitely some things that they added
27:07SPEAKERto their port that was very useful for us though, for sure.
27:11SPEAKER- One of the big questions I have looking at a game
27:13SPEAKERthat's, you know, an engine that's 20 years old essentially
27:17SPEAKERis how does this interact with modern tool chain stuff?
27:21SPEAKERLike, you know, are you using Perforce
27:23SPEAKERand do you have like, do you have build servers
27:27SPEAKERthat are running on modern cloud infrastructures
27:29SPEAKERand stuff like that?
27:30SPEAKEROr is one of the benefits of using old tech
27:32SPEAKERthat a lot of that stuff is just a lot easier these days?
27:35SPEAKER- So for source control, I mean,
27:39SPEAKERwe could have used Perforce,
27:40SPEAKERbut we use SVN just because it's free, right?
27:45SPEAKEROr, and it doesn't, like Perforce is expensive,
27:49SPEAKERbut in terms of like, I guess,
27:52SPEAKERso we use like Blender, I think to make all the art.
27:55SPEAKERSo it's not like we had to use some special
27:58SPEAKERlike Doom 3 era art tool.
28:01SPEAKERSo, you know, people have made exporters for Blender.
28:03SPEAKERSo we had to make maybe some modifications
28:06SPEAKERand Brendan's also really good about writing tools
28:09SPEAKERfor things, so like in the question of like,
28:11SPEAKERhow do you make new builds?
28:12SPEAKERLike Brendan has this Blendo build machine
28:15SPEAKERthat has been used on prior projects.
28:17SPEAKERThere's actually a blog write-up,
28:18SPEAKERI think you did about it too.
28:21SPEAKERSo, we kind of had an infrastructure
28:23SPEAKERfor building generally in development
28:26SPEAKERbecause, you know, compared to let's say Unreal Engine,
28:30SPEAKERwhere if you need to build the engine from source,
28:32SPEAKERit's like 45 minutes to an hour on a good machine
28:35SPEAKERand on a weaker machine, it can take a really long time.
28:39SPEAKERLike our game maybe took like five to 10 minutes
28:41SPEAKERto rebuild all.
28:43SPEAKERSo we actually, in development, most of the developers
28:46SPEAKERjust built locally.
28:47SPEAKERSo we didn't have to worry about like,
28:49SPEAKERso that is like sort of an advantage in that sense
28:53SPEAKERthat, you know, and also I think it's also
28:55SPEAKERjust worth mentioning is one of the benefits
28:58SPEAKERof using older tech was just that, like we didn't,
29:01SPEAKERlike the developers didn't need some insane,
29:04SPEAKERpowerful machine to be able to run the engine.
29:06SPEAKERWhereas if you make the game in Unreal,
29:08SPEAKERit can be painful unless like you have a lot of RAM
29:11SPEAKERand SSD space and all this other stuff.
29:15SPEAKERSo there is sort of the benefit in that sense,
29:18SPEAKERbut yeah, I mean, we were largely able to use
29:21SPEAKERlike more modern tools and in many cases,
29:24SPEAKERright tooling as needed.
29:26SPEAKERLike I think Brandon also wrote one
29:28SPEAKERto like handle the localization and all these other things.
29:32SPEAKERSo I think also just like getting back
29:35SPEAKERto the tech space format means that it's not
29:38SPEAKERlike intractable to write more tools
29:41SPEAKERbecause you don't have to like read in some random
29:44SPEAKERproprietary binary file and start working from it.
29:47SPEAKERIt's just text, so you can write Python or C#
29:50SPEAKERor whatever you want to do and mess with it.
29:53SPEAKER- Yeah.
29:54SPEAKER- When you're talking like, oh, sorry, Brandon, go ahead.
29:56SPEAKER- Oh yeah, I mean, I was just gonna say that like,
29:58SPEAKERI built a bunch of small, tiny C# tools
30:01SPEAKERfor the game development for Loak and for building the game.
30:05SPEAKERAnd just whenever there's any kind of like,
30:11SPEAKERprocess we need to do that required a bunch of clicks,
30:14SPEAKERyou could just make a small tool to just automate it,
30:17SPEAKERto do the same thing reliably every single time.
30:20SPEAKERAnd for our skin deep, it was just, you know,
30:22SPEAKERmaking a bunch of bespoke tools that does one small,
30:26SPEAKERspecific task over and over again
30:28SPEAKERwas pretty helpful for us.
30:31SPEAKER- So one of the things I saw that's interesting
30:33SPEAKERis you have, like you talk about one button tools a lot
30:36SPEAKERand the build tool is one of those in your blog.
30:39SPEAKERAnd I don't think people understand
30:41SPEAKERhow much of a kind of gate,
30:43SPEAKERhow fast and how easy it is to make builds is
30:46SPEAKERfor a lot of studios.
30:48SPEAKERSo, you know, if, like, would you say you did a full build,
30:52SPEAKERwas that like light maps for levels and the whole deal
30:54SPEAKERor are you doing the light, like,
30:56SPEAKER'cause I remember back in the day,
30:57SPEAKERthere was a lot of conversation in the,
30:58SPEAKERespecially in the early in tech days about how much work,
31:01SPEAKERhow much computer time it took, rather,
31:07SPEAKERto build light maps for Quake and Quake 2 and Quake 3
31:09SPEAKERand those types of games.
31:10SPEAKERIs it still, like, is this just a situation
31:12SPEAKERwhere hardware has advanced and all of a sudden,
31:14SPEAKERwhat used to be a really complicated computer problem
31:17SPEAKERis pretty straightforward on a modern eight core machine?
31:19SPEAKER- Yeah, so in this specific case,
31:21SPEAKERthe build machine just built an executable
31:25SPEAKERfor the game to run, just compile all the code.
31:28SPEAKER'Cause like you're saying, the light maps,
31:30SPEAKERyeah, so for Quake and Quake 2 and Quake 3
31:34SPEAKERand for Half-Life, to compile a map,
31:37SPEAKERit required, like, a lot of time to build a light map
31:41SPEAKER'cause it's all baked into the world.
31:43SPEAKERMake it look really beautiful and, like,
31:45SPEAKERsimulate the light bouncing on a color surface
31:47SPEAKERand making it look all gorgeous.
31:50SPEAKERSo Doom 3, every single light is always dynamic,
31:58SPEAKERwhich means there is, like, zero light maps in the game.
32:02SPEAKERSo it has its pluses and minuses,
32:05SPEAKERthe plus is that there's, like, zero map compilation time.
32:09SPEAKERIt's just generated dynamically every single frame.
32:15SPEAKERBut the downside is that you kind of don't,
32:18SPEAKERit kind of make the world look very cold and very sci-fi.
32:22SPEAKERSo if you want, like, a nice, warm, golden hour look,
32:26SPEAKERit's very, very challenging to do it
32:28SPEAKER'cause you got to very manually do a bunch of
32:32SPEAKERyou got to trick the engine into doing it,
32:33SPEAKERas opposed to Quake 2 or Quake 3,
32:34SPEAKERwhere it's kind of, perhaps, more naturally.
32:39SPEAKER- Did that impact, like, I guess on Modern hardware,
32:42SPEAKERyou don't have performance implications
32:43SPEAKERfor having multiple dynamic lights in these days?
32:49SPEAKER- So because of the way that the engine was written
32:54SPEAKERback in the day, there were some,
32:56SPEAKERstill some, like, light limitations that we had to adhere by
33:02SPEAKERI think it was, like, it was more than,
33:06SPEAKERso if you, we actually went through
33:07SPEAKERand looked through Doom 3's retail maps
33:10SPEAKERfrom back in the day,
33:12SPEAKERand they generally had one light affecting a thing
33:17SPEAKERat a given time, maybe two, if you're pushing it.
33:21SPEAKER- That was the big controversy, if you remember,
33:23SPEAKERabout why they claimed you couldn't use your flashlight
33:26SPEAKERon the gun at the same time,
33:27SPEAKER'cause there were too many light sources interacting, right?
33:29SPEAKERIf you were firing a gun, room lights and a flashlight,
33:33SPEAKERand so it sounds like there's actually
33:34SPEAKERsome legitimacy to that.
33:35SPEAKERI mean, I think you call that out
33:37SPEAKERin the mod museum as well,
33:38SPEAKERthere's a bit in there that's in the rendering section
33:40SPEAKERthat shows, like, too many overlapping light sources,
33:42SPEAKEReven in this game, even 20 plus years later,
33:45SPEAKERis still somewhat problematic, right?
33:47SPEAKER- Yeah.
33:48SPEAKER- Yes, yeah, so Suzanne and Tynan,
33:51SPEAKERour little designers, had to do a lot of work
33:53SPEAKERto work around that.
33:55SPEAKER- Oh, I was just gonna say,
33:56SPEAKERthe thing that's, like, surprising about it
33:57SPEAKERis actually, like, because of the very weird way
34:00SPEAKERthey do the dynamic lighting in the game,
34:03SPEAKERit's not actually the GPU that is the bottleneck.
34:09SPEAKERAnd so, especially when we were trying to, like,
34:12SPEAKERwork on, let's say, getting it to work on a netbook
34:14SPEAKERor a mid-spec machine that doesn't have as good of a CPU,
34:18SPEAKERthat's actually where we ran into
34:20SPEAKERmost of the performance problems.
34:23SPEAKERAnd so Eric, one of the other programmers on the project,
34:26SPEAKERspent a lot of time, like, optimizing the CPU performance
34:29SPEAKERof the rendering, 'cause that really was the bottleneck.
34:34SPEAKERAnd so, yeah, because, like,
34:37SPEAKERthe way that they do the lighting in Doom 3
34:39SPEAKERis, like, very different from, like,
34:42SPEAKERhow a modern game does, like, dynamic lights.
34:45SPEAKERWhere in a modern game, everything's, like,
34:47SPEAKERdeferred rendering, and, like,
34:49SPEAKEReverything is running on the GPU.
34:53SPEAKERThat's not, sort of, how they do it.
34:56SPEAKERIt's basically, like, each light, essentially,
35:00SPEAKERgets its own rendering pass, almost,
35:04SPEAKERwhen it's doing the lighting phase.
35:05SPEAKERSo it ends up being a lot of,
35:08SPEAKERlike, they're doing a lot of stuff on the CPU
35:10SPEAKERthat, in a modern game, you would do on the GPU.
35:13SPEAKERAnd so that's why, like, especially, like,
35:14SPEAKERlet's say, getting it to run well on Steam Deck
35:17SPEAKERand stuff like that,
35:19SPEAKERit was really focused on optimizing, like, the CPU.
35:22SPEAKERAnd there were some crazy things.
35:23SPEAKERLike, I think at one point, like,
35:25SPEAKERwith the rocket launcher, when the missile exploded,
35:29SPEAKERlike, the frame rate would just die.
35:31SPEAKERAnd it was because, like, or I'll say,
35:33SPEAKERoh, like, Brendan, like,
35:35SPEAKERI think the light radius on this is, like, too big.
35:38SPEAKERIt's, like, affecting too many objects in the scene.
35:40SPEAKERSo just, like, so that was, like,
35:42SPEAKERone area, like, on weaker machines.
35:44SPEAKERBut even on a good machine, like,
35:46SPEAKERyou were still getting noticeable frame rate drops.
35:48SPEAKERSo there definitely are limitations on, like,
35:52SPEAKERhow many lights can affect each object in their system.
35:57SPEAKERBut luckily, you know, hardware's a little bit better now
36:00SPEAKERthan 20 years ago.
36:01SPEAKERSo we could have more than one light, at least.
36:05SPEAKER(laughing)
36:07SPEAKER- On the CPU side, I don't remember,
36:09SPEAKERwas the original game, like, multi-threaded at all?
36:11SPEAKERI'm trying to remember, I think, I mean,
36:13SPEAKERobviously most CPUs were still single core at the time.
36:15SPEAKERI think we were, like,
36:16SPEAKERjust kind of starting to see the first dual core.
36:18SPEAKER- So, yeah, the engine does have support
36:20SPEAKERfor multi-threading, like multi-threaded renderer,
36:24SPEAKERbut we turned that off, and I'm not,
36:28SPEAKERI'm not actually sure if it's off by default
36:30SPEAKERin "To Whom 3," also.
36:32SPEAKERD-H-E-W. (laughing)
36:35SPEAKER- The mod version. - The mod version.
36:37SPEAKER- The "To Whom 3," yeah.
36:38SPEAKER- Yeah, and also to just point out,
36:42SPEAKERthere actually are a lot of other interesting
36:44SPEAKERsource ports of it as well.
36:46SPEAKERHow, yeah, when you're looking at this,
36:48SPEAKERand you're kind of doing, you're planning out the game,
36:51SPEAKERhow do you decide what stuff stays stock
36:55SPEAKERand what gets fancied up, right?
36:56SPEAKERLike, what gets another pass?
36:58SPEAKERIs it just based on the needs of the game?
37:00SPEAKERIs it who has time and is interested in changing the way,
37:05SPEAKERlike, you could have theoretically ripped out the renderer
37:07SPEAKERand put a full modern ray tracing engine in there
37:09SPEAKERif you wanted to go crazy,
37:11SPEAKERbut that seems like a lot of work for probably not,
37:14SPEAKERit's probably easier to just make sure
37:15SPEAKERthere's only a few lights in each scene, right?
37:17SPEAKER- Yeah, yeah.
37:19SPEAKERI mean, generally speaking, it's like,
37:21SPEAKERwhatever serves the gameplay and what do we need
37:25SPEAKERto make the game fun and readable to the player?
37:29SPEAKERBut the other aspect is just like,
37:30SPEAKERwe were taking an engine from the year 2006
37:34SPEAKERand trying to make it playable,
37:38SPEAKERor give it the things that people expect
37:41SPEAKERfrom a game from the year 2025.
37:43SPEAKERSo like, we didn't have any subtitles,
37:45SPEAKERwe need to add a whole new subtitle system.
37:47SPEAKERLike Conjay said,
37:48SPEAKERwe need to add different languages for localization.
37:52SPEAKERSo just a whole bunch of like,
37:54SPEAKERsuper expected stuff from players
38:00SPEAKERthat are just normal for games
38:01SPEAKERthat we just did not exist in the old version.
38:05SPEAKERSo a little bit of what makes a game fun,
38:07SPEAKERbut also what's just normal stuff
38:09SPEAKERthat people need in this day and age.
38:13SPEAKER- Yeah, and I think some of it also just comes down
38:15SPEAKERto like resources because like,
38:18SPEAKERso let's say my project to rewrite the renderer
38:21SPEAKERto use GLSL, it was like,
38:24SPEAKERlet's say a couple of weeks or something, right?
38:27SPEAKERAnd if we were like, okay, let's really modern it up,
38:29SPEAKERlike I would be working on that
38:31SPEAKERfor probably a couple of months.
38:32SPEAKERAnd then it's like, we only have limited resources.
38:35SPEAKERAnd then it's like, if I spend time on that,
38:37SPEAKERlike that takes away from all the other stuff I'm working on
38:40SPEAKERwhether it's gameplay or bug fixing
38:43SPEAKERor the subtitle system and stuff like that, right?
38:48SPEAKER- And I remember like, if I remember correctly, Sanjay,
38:50SPEAKERthere was a pretty big question mark
38:53SPEAKERof like what to do with the renderer.
38:54SPEAKERLike, do we port in Doom 3 BFG and how they did it?
39:00SPEAKERDo we do something else completely?
39:04SPEAKERDo we just kind of like patch up
39:05SPEAKERwhat we currently have right now?
39:08SPEAKERSo there's a lot of questions there.
39:10SPEAKER- Yeah, and unfortunately it ended up being
39:12SPEAKERbigger changes than I had hoped
39:14SPEAKERbecause I thought I could get away
39:16SPEAKERwith converting less of the system,
39:18SPEAKERbut it turned out I had to convert
39:20SPEAKERlike almost all of the rendering to use GLSL.
39:26SPEAKERBut yeah, I mean, I think it's just like,
39:29SPEAKERwe had to balance like, okay, well, what do we need?
39:31SPEAKERLike, we need these like effects
39:34SPEAKERand the player expects these effects like in a modern game.
39:38SPEAKERAnd so trying to make the changes that were required
39:43SPEAKERto get what we wanted without like spending so much time
39:47SPEAKERon just like basically rewriting the engine
39:50SPEAKERor something like that.
39:51SPEAKERAnd there were some parts of the engine where like,
39:52SPEAKERokay, we don't need to really mess with this.
39:54SPEAKERIt works fine and let's never touch it.
39:56SPEAKERAnd I think like the physics system,
39:58SPEAKERlike largely we stayed away from changing it too much
40:03SPEAKERbecause like we didn't need to, right?
40:05SPEAKER- Keeping Nina vertical in the zero G segments
40:07SPEAKERmakes that a lot easier, right?
40:10SPEAKER- Yeah, yeah.
40:12SPEAKER- I felt like I was listening to kind of like an echo
40:14SPEAKERfrom history when you were talking about like,
40:15SPEAKERoh, you know, the previous Quake engine games we did,
40:17SPEAKERyou had to bake light maps,
40:18SPEAKERbut Doom 3, everything is real time,
40:21SPEAKERwhich is like directly parallels what's going on right now
40:24SPEAKERwith most games still needing to bake light maps.
40:26SPEAKERBut then like doing the dark ages, ironically,
40:28SPEAKERwas one of the first games to require ray tracing hardware.
40:31SPEAKERThat's not such an issue for them.
40:33SPEAKERLike, was there anything as you guys dug into this engine,
40:35SPEAKEReven though it is 20 something years old at this point,
40:38SPEAKERlike computer interfaces aside,
40:40SPEAKERlike the gooey stuff aside, which we talked about,
40:42SPEAKERlike, is there anything else in there that you saw
40:43SPEAKERthat was just like, like, man,
40:45SPEAKERI wish the industry had pursued this path further
40:48SPEAKERor like those like, oh, this is a really clever way
40:50SPEAKERto do this.
40:51SPEAKERLike just anything else that jumped out at you
40:53SPEAKERas being like impressive tech.
40:55SPEAKER- I think I would say one thing that was funny
40:58SPEAKERwas there's the backstory of the so-called Karmak reverse,
41:03SPEAKERwhich is like a fancy faster-
41:06SPEAKER- Fast inverse square root, right?
41:07SPEAKER- It's not the fast inverse square root.
41:09SPEAKERIt's the- - Oh, that's a different one,
41:11SPEAKERsorry, that's a different one, I'm sorry.
41:12SPEAKER- It's the one for, basically it's a trick
41:15SPEAKERwith the stencil buffer, the way that they do the shadows
41:17SPEAKERand it's like more efficient.
41:20SPEAKERAnd so one of the big controversies was that,
41:23SPEAKERlike, so that was patented by creative,
41:26SPEAKERlike makers of the Sound Blaster.
41:28SPEAKERI don't know why they had patents on graphics techniques,
41:30SPEAKERbut they did.
41:32SPEAKERAnd so in the open source release of the code for Doom 3,
41:38SPEAKERthey had to remove the Karmak reverse.
41:40SPEAKERAnd so the one that's the open source,
41:42SPEAKERlike official Doom 3 open source release,
41:46SPEAKERthey didn't have that code.
41:48SPEAKERAnd, but then we did some digging and it turned out well,
41:53SPEAKERthe patent for that actually expired a few years ago.
41:57SPEAKERSo we implemented the Karmak reverse
42:01SPEAKERin our code base and turns out we actually got
42:04SPEAKERlike a pretty noticeable performance boost,
42:06SPEAKERespecially on a lower end hardware.
42:09SPEAKERSo like the trick still works.
42:11SPEAKERSo that was pretty funny.
42:11SPEAKERI was like, we're like, oh,
42:13SPEAKERit's probably doesn't matter, right?
42:14SPEAKERBut it actually still made a big difference.
42:16SPEAKERSo, you know, shout out to John Karmak for that one,
42:20SPEAKERthat was a great idea.
42:24SPEAKER- Tried and true.
42:26SPEAKERDid you guys have any insight into why that style
42:28SPEAKERof real time lighting didn't catch on
42:30SPEAKERand nobody really pursued it from that point?
42:32SPEAKER- I mean, my guess would just be like,
42:33SPEAKERlike Brendan was saying, like, you know,
42:35SPEAKERespecially the hardware at the time,
42:37SPEAKERthe limitation was that, well,
42:38SPEAKERyou can't really do that many lights
42:40SPEAKERand doing certain types of, you know, lighting,
42:42SPEAKERlike let's say as an example,
42:45SPEAKERif I want to do Grand Theft Auto Vice City or something,
42:48SPEAKERlike you can't do it with just like dynamic lights, right?
42:53SPEAKERAnd so I think it's just,
42:55SPEAKERthere's really the limitation of that.
42:57SPEAKERAnd then let's say,
43:00SPEAKERso that's why I think we still sell light maps a lot
43:02SPEAKERand we're seeing some games now, you know,
43:05SPEAKERthey're going like fully dynamic.
43:06SPEAKERI think it's pretty common in Unreal 5 games
43:09SPEAKERthat like everything's dynamic,
43:11SPEAKERwhether or not they're using ray tracing, right?
43:14SPEAKERAnd so, yeah, I mean, I think it was just like,
43:17SPEAKERthere is like a aesthetic that like, you know,
43:20SPEAKERif you're making a very dark, scary space corridor game,
43:25SPEAKERlike dynamic lighting made a lot of sense,
43:27SPEAKERbut like, I think for other games,
43:30SPEAKERlike I worked on, let's say some Tony Hawk skateboarding
43:33SPEAKERgames, like we couldn't do dynamic,
43:34SPEAKERlike that was all light maps, right?
43:36SPEAKER'Cause it doesn't make sense.
43:36SPEAKERYou're out in the world and there's sun and all that, right?
43:40SPEAKER- It kind of feels like Doom 3 kind of feels
43:42SPEAKERlike a path not traveled though, right?
43:44SPEAKERI think to Brad's point, it feels like,
43:46SPEAKERif people had, if it had blown up
43:48SPEAKERand it had been like the biggest corridor shooter success
43:50SPEAKERof all time, we wouldn't have seen 20 years
43:52SPEAKERof open world games and we'd be like,
43:56SPEAKERlook, man, you can have three dynamic lights now.
43:58SPEAKERHere you go.
44:00SPEAKER- Yeah, yeah, I mean, so I've worked in Quake 2
44:06SPEAKERand Quake 1 and Doom 3 engine
44:08SPEAKERand like the lighting systems are very different
44:10SPEAKERand I think there are definitely like pluses and minuses
44:13SPEAKERwith both of them.
44:14SPEAKERLike there are things that you can do in Doom 3
44:17SPEAKERthat are really special with the lights
44:20SPEAKERand the fact that everything is dynamic
44:22SPEAKERand you have no choice about making everything dynamic.
44:23SPEAKERLike it forces you to make you do
44:28SPEAKERsome interesting light effects that you can't do
44:31SPEAKERwith like traditional fake light maps.
44:35SPEAKERBut to your earlier question of like,
44:37SPEAKERwhat are some interesting tech that Doom 3 has as a,
44:41SPEAKERso I got my start doing level design.
44:44SPEAKERAnd so for me, I'm still a huge fan
44:48SPEAKERof how ID Software did their map level design tech,
44:54SPEAKERwhich is BSP mapping.
44:57SPEAKERThis is where you kind of like let the level designer
45:00SPEAKERplace down giant blocks in the level editor
45:03SPEAKERand kind of create the geometry that creates the level.
45:07SPEAKERAnd it gives the level designer a lot of control
45:10SPEAKERover sight lines and experience
45:13SPEAKERand like the specificities of the room
45:18SPEAKERand lets them iterate very, very quickly
45:20SPEAKERand like not need to wait for an artist
45:23SPEAKERto put something into the level.
45:25SPEAKERThey can just do it themselves
45:26SPEAKERwith the modifying the geometry themselves.
45:30SPEAKERAnd it's a kind of a little design
45:32SPEAKERthat I think is really, really special.
45:33SPEAKERAnd as a level designer, I love it and I love how much,
45:39SPEAKERit lets the level designer to like be very creative
45:43SPEAKERwith how they do things
45:44SPEAKER'cause of how quickly they can iterate on things.
45:46SPEAKER- Did you do anything to dark radiant
45:47SPEAKERto make it work for skin deep or are you just using it?
45:49SPEAKERI think on the mod kit, it said,
45:51SPEAKERjust download dark radiant and let it rip.
45:53SPEAKERBut that seems amazing to me
45:56SPEAKERthat it's just that open ended tool.
45:58SPEAKER- We did do, so Suzanne made some code changes to it
46:04SPEAKERand Sanjay also made some code changes to it too.
46:08SPEAKERI kind of don't remember the specifics now,
46:09SPEAKERit's been a while,
46:10SPEAKERbut there's a lot of workflow stuff inside of it.
46:13SPEAKER- Yeah, I mean, I think we did make some changes
46:15SPEAKERand we actually were able to like, we made pull requests.
46:19SPEAKERSo those, the major changes that we made, not all of them,
46:23SPEAKERbut most of the changes are actually upstream
46:26SPEAKERand in the main dark radiant now.
46:29SPEAKERBut yeah, I mean, we did like,
46:30SPEAKERI think the other thing too is like configurable.
46:32SPEAKERSo like we had different like Python scripts
46:35SPEAKERthat you can set up to run and stuff.
46:38SPEAKERSo like any skin deep specific configuration stuff
46:41SPEAKERcould be done through that.
46:43SPEAKERBut yeah, it, you know,
46:45SPEAKERthere were some small things that we added and fixed
46:47SPEAKERand luckily we were able to get at least some of those in
46:50SPEAKERfor everyone else who's using it.
46:52SPEAKER- Yeah.
46:53SPEAKER- Did you have to do some sort of scripting
46:55SPEAKERtype of environment to set up the things
46:57SPEAKERlike the one-off events and things like that?
46:59SPEAKEROr is that all just handled in game code?
47:02SPEAKER- Oh yeah, so Doom 3 has a pretty robust scripting language
47:06SPEAKERinside it that they use also for a retail Doom 3.
47:11SPEAKERIt's like their own, it's just called Doom script.
47:14SPEAKERIt's like their own little proprietary thing.
47:18SPEAKERBut yeah, it's pretty flexible.
47:19SPEAKERWe used it, Suzanne and Tynan used it
47:22SPEAKERfor all the level logic for detecting any,
47:26SPEAKERfor doing all the scripting levels
47:28SPEAKERfor like the special scripted stuff
47:29SPEAKERthat we have going on, the objectives.
47:35SPEAKERBut yeah, it's pretty well thought out, I think.
47:37SPEAKER- So the level scripts were off to do that.
47:39SPEAKERYou could also do a lot of the core gameplay
47:42SPEAKERin that if you wanted to,
47:43SPEAKERbut we tried as much as possible to just do that
47:46SPEAKERin the C++ code, just because it's a lot easier to debug,
47:50SPEAKERbut for all the level triggers and stuff like that
47:53SPEAKERare done in the level specific script files.
47:56SPEAKER- Yeah, for Quadrada Cowboy,
47:58SPEAKERa lot of gameplay was done
47:59SPEAKERthrough the Doom 3 scripting language.
48:01SPEAKERAnd it lets you iterate quickly,
48:05SPEAKERbut if you want to, if something goes wrong,
48:08SPEAKERif you want to debug it,
48:09SPEAKERthere wasn't really a good way to do that.
48:12SPEAKERWe didn't really have like a script debugger
48:14SPEAKERfor Quadrada Cowboy.
48:16SPEAKERAnd so first we made the conscious choice
48:18SPEAKERto make gameplay be as code driven as possible
48:22SPEAKERand to keep the scripting stuff as minimal as possible.
48:25SPEAKER- It makes a ton of sense.
48:26SPEAKER- I've got one more question
48:27SPEAKERdigging into the kind of core Doom 3 tech.
48:29SPEAKERAnd I promise I'm not trying to like feed
48:31SPEAKERany Steam community forum threads here or anything,
48:34SPEAKERbut the game like Doom 3 and every other derivative of it
48:37SPEAKERis capped at 60 frames a second,
48:38SPEAKERwhich I assume is tied to some internal simulation rate
48:42SPEAKERor something.
48:44SPEAKERWas there ever any discussion about ripping that stuff out
48:46SPEAKERand trying to engineer a higher frame rate?
48:49SPEAKERAnd also, I clearly decided not to do that.
48:51SPEAKERHow much work would that have been?
48:53SPEAKERBecause I assume it's a lot.
48:55SPEAKER- We talked about it for a while, right Shonda?
48:56SPEAKER- Really?
48:57SPEAKER- Yeah, I mean, we talked about it for a while.
48:58SPEAKERWe actually did some tests and it was just going to
49:02SPEAKERrequire so many changes to actually get to work correctly
49:07SPEAKERthat it was just like, you know, given our team size,
49:10SPEAKERlike because yeah, like the whole physics system is written
49:13SPEAKERassuming this like fixed time step.
49:17SPEAKERAnd so yeah, like we did experiment with it a bit,
49:22SPEAKERbut it just was going to be a lot of work.
49:25SPEAKERIt just didn't seem like, you know, I feel, you know,
49:29SPEAKERI understand the people that want higher frame rates,
49:32SPEAKERyou know, like I'm actually planning on playing
49:35SPEAKERSoap Song tonight.
49:36SPEAKERI'm like, I got to get it.
49:37SPEAKERIt's 120 FPS on PS5 or something.
49:40SPEAKERSo I'm gonna try it on that maybe.
49:42SPEAKERBut it's like, I totally get that, but it's just like,
49:45SPEAKERyou know, we have a really small dev team
49:49SPEAKERand it just like, we did look at it
49:51SPEAKERand it just seemed like it was going to be so much work
49:54SPEAKERto change that it just didn't seem like, you know,
49:59SPEAKERit would be a good use of our resources
50:02SPEAKERto spend a lot of time on that
50:04SPEAKERwhen there were all these other things
50:05SPEAKERthat we could make better and improve.
50:07SPEAKER- Then we also looked at, there was a,
50:10SPEAKERthere's a game called the Dark Mod,
50:13SPEAKERwhich is a Doom 3 based game
50:15SPEAKERthat is kind of like based on the Thief franchise.
50:18SPEAKERReally wonderful stuff.
50:19SPEAKERLike we use, Dark Radiant was made from the Dark Mod
50:22SPEAKERand we are super grateful that they, you know,
50:25SPEAKERlet the tools be available for them to use.
50:29SPEAKERAnd I think that they, their team also tried to,
50:32SPEAKERhas done some work to push past the 60 frames per second
50:36SPEAKERlimit.
50:37SPEAKERAnd I think they like got it mostly working,
50:41SPEAKERbut I think there's still like some quirks here and there
50:44SPEAKERthat they're still getting,
50:45SPEAKERlike after all this time of trying to do it.
50:47SPEAKERSo we figured like, well, they're also trying to do it.
50:50SPEAKERThey're still having these issues after all this time.
50:52SPEAKERSo for us to release a game would,
50:55SPEAKERwould with trying to break this limit would be,
50:58SPEAKERwould be pretty tricky to do.
51:00SPEAKER- Yeah, that totally makes sense.
51:01SPEAKERI'd swear it was the Doom 3 source port.
51:03SPEAKERI looked at the changelog at some point they had very
51:06SPEAKERbriefly rolled out experimental support for it,
51:08SPEAKERbut there was literally like strike through text
51:10SPEAKERin the changelog where they immediately pulled it
51:13SPEAKERbecause it just broke everything.
51:14SPEAKER- Yeah, I think we actually might've just like briefly,
51:17SPEAKERlike kind of just messaged Daniel about it too.
51:20SPEAKERJust like, yeah, like what happened with that?
51:22SPEAKERAnd it was kind of like, well, we tried,
51:25SPEAKERbut like it says because, so in their case, right?
51:28SPEAKERLike they want to make sure that base Doom 3 works still.
51:33SPEAKERAnd so they tried doing a base Doom 3 uncapped.
51:35SPEAKERAnd I think it just had a lot of, like it sort of worked,
51:38SPEAKERbut there were a lot of issues.
51:40SPEAKERAnd, and the other thing too, is I think just like,
51:42SPEAKEReven if we had gotten it working mostly,
51:45SPEAKERthe concern was that we were spending like QA time.
51:48SPEAKERI'm like, oh, well this bug is only reproducible
51:51SPEAKERif you're running at a hundred FPS or something, right?
51:53SPEAKEROr the throw arc, right?
51:55SPEAKERThe throw arc doesn't work properly now because the,
51:59SPEAKERwe're assuming a certain time step, et cetera.
52:02SPEAKERSo I think it just, yeah,
52:03SPEAKERit was going to be this like big can of worms
52:07SPEAKERthat like we probably could have gotten like 70% there
52:10SPEAKERwithout too much time,
52:12SPEAKERbut then that last like 30% would have just been crazy.
52:14SPEAKER- One of the questions I, so your broken glasses,
52:17SPEAKERI love a good broken glass in a game
52:19SPEAKERand you all have real good broken glass.
52:22SPEAKERFor folks who don't know if the window,
52:24SPEAKERyou can break windows, you can break, I guess, glass items,
52:27SPEAKERlike the soap dispenser or something maybe.
52:30SPEAKER- Yeah, yeah.
52:31SPEAKER- And then there's shards of glass on the floor
52:34SPEAKERthat your character walks through
52:35SPEAKERand gets glass in her feet.
52:37SPEAKERAnd so I have a couple of questions about that.
52:39SPEAKEROne is, are the physics deterministic
52:41SPEAKERor is it non-deterministic for the game
52:44SPEAKERso that like there's predictable outcomes
52:46SPEAKERof where the glass is going to end up and stuff like that?
52:49SPEAKER'Cause there's a lot of throwing stuff in an emcee.
52:52SPEAKER- I think it's non-deterministic.
52:55SPEAKERDoes that sound correct, Sanjay?
52:56SPEAKER- Yeah, I think the, when it breaks,
52:59SPEAKERit just decides shatter aligns.
53:03SPEAKERI don't think it's deterministic, but,
53:07SPEAKERand also like we don't, I think it doesn't,
53:10SPEAKERlike some of the shards of glass just like go away.
53:12SPEAKER'Cause like, if it was actually like
53:15SPEAKERthe correct amount of glass would be a lot more
53:17SPEAKERthan I think that we drop.
53:19SPEAKERBut yeah, I think it's, I don't think there's,
53:23SPEAKERthe breaks are just like generated.
53:26SPEAKERSo it's a little bit non-deterministic.
53:29SPEAKER- So then I guess my next question is,
53:30SPEAKERwas Nina barefoot before the glass was in
53:33SPEAKERor was that a choice for after?
53:35SPEAKEROr was that an original design thing, Brendan?
53:37SPEAKER- Or a diehard homage.
53:38SPEAKER- Yeah, yeah, that's the diehard thing.
53:40SPEAKERIt was a day one choice, I believe.
53:42SPEAKERI think if you go back to like
53:43SPEAKERthe very, very first announcement trailer from 2018
53:46SPEAKERor something, like she still had no shoes on
53:49SPEAKERjust because we had to make the diehard thing stick.
53:53SPEAKERThat was the only way to do it.
53:55SPEAKER- Well, and you also do the thing,
53:58SPEAKERone of the things I didn't understand
53:59SPEAKERbefore I worked on a shooter was that
54:01SPEAKERpeople feel really strongly about
54:03SPEAKERwhether you could see your character or not
54:04SPEAKERwhen you look down.
54:06SPEAKERLike there's two really entrenched camps on the internet of,
54:10SPEAKERyo, I should be able to see my feet
54:12SPEAKERand no, I never want to see my feet.
54:13SPEAKERAnd you all are clearly in the show me the feet category.
54:20SPEAKERHow did you end up there, I guess?
54:21SPEAKER- I think for this specifically,
54:23SPEAKERbecause like healing your glass,
54:26SPEAKERcharging your feet was going to be a component.
54:28SPEAKERThere was kind of an obligation like,
54:30SPEAKERwell, we got to show the player body in this case,
54:32SPEAKER'cause you can't, that's the only way to do it.
54:37SPEAKERHaving said that, I'll say that making your body visible
54:40SPEAKERis a insane amount of work for a first person shooter game.
54:44SPEAKERSo I completely understand when people,
54:46SPEAKERwhen games don't do it.
54:48SPEAKER'Cause like it added a tremendous amount of more bugs
54:53SPEAKERand work and art assets and all that stuff to the game.
54:57SPEAKER- The nightmare of a first person look down rig,
55:00SPEAKERwhen you look at it, not in the first person mode
55:02SPEAKERis something that just sticks with you.
55:03SPEAKEREverybody should go look those up if they haven't seen them
55:06SPEAKERso that you know what you're asking for.
55:08SPEAKER- Horror monster, yeah.
55:10SPEAKER- We talked about toilets 10 years ago
55:13SPEAKERat XOXO fairly extensively.
55:16SPEAKERI know you're a bit of a video game toilet aficionado.
55:19SPEAKERAnd I think at the time you listed the Soma toilets
55:23SPEAKERas the high watermark because they had on controllers,
55:27SPEAKERthey did some magical one-to-one movements
55:29SPEAKERwith like the lid lift and the trigger pulls
55:31SPEAKERand stuff like that.
55:33SPEAKERHas anything hit that high mark since in the last 10 years?
55:36SPEAKER- Ooh, good question.
55:39SPEAKERYou know, no other toilet has really stuck out in my mind.
55:42SPEAKER(laughing)
55:45SPEAKER- Okay, I also have to ask about the squatty potties
55:49SPEAKERon spaceships that are built for cats.
55:52SPEAKERLike that seems like a choice.
55:55SPEAKERI'm not sure about it.
55:56SPEAKER(laughing)
55:58SPEAKERIt raised a lot of questions.
55:59SPEAKERI'm not sure I'm comfortable asking here if I'm being honest.
56:01SPEAKER- So the fiction that we have is that the ships
56:04SPEAKERwere originally made for humans
56:07SPEAKERand then were retrofitted for cats later.
56:10SPEAKERSo they weren't really thinking about the cats
56:12SPEAKERwhen they designed them in the first place.
56:14SPEAKERIt was their backstory.
56:15SPEAKER- That makes perfect sense.
56:16SPEAKERI'm back in.
56:18SPEAKER(laughing)
56:21SPEAKERSo how much of the AI is really responsive?
56:27SPEAKERWe talked a little bit about "Market of the Ninja"
56:29SPEAKERand how that kind of was where you started,
56:31SPEAKERbut there's also like the AI have senses
56:36SPEAKERthat go beyond most first-person shooters
56:38SPEAKERand sims that I've played,
56:41SPEAKERwhere if you go down the trash chute
56:43SPEAKERor you get something stinky on you, they'll smell you.
56:47SPEAKERI think I kind of got the feeling that they would pick up
56:49SPEAKERwhen Nina's barefoot, when you step in class,
56:52SPEAKERyou leave blood trails on the floor.
56:54SPEAKERAnd I feel like they saw that too, but I'm not 100%.
56:56SPEAKERThey definitely see broken stuff and things around.
57:00SPEAKERLike how much of that was stuff that Doom did
57:02SPEAKERand how much of it was stuff you tacked on?
57:04SPEAKERAnd like, it feels really good in practice.
57:08SPEAKERI don't know how complex it is,
57:10SPEAKERbut it feels incredible when you're playing.
57:12SPEAKER- Cool, yeah.
57:13SPEAKERSo yeah, the blood trails was something we wanted to put in,
57:16SPEAKERbut we couldn't find the, couldn't quite make it go.
57:22SPEAKERIn terms of AI, we did a lot of work to make it go.
57:29SPEAKERThe Doom 3 built-in AI generally doesn't handle states.
57:35SPEAKERLike I'm partially where the player, I am fully aware.
57:38SPEAKERI am going back from combat to suspicious mode.
57:44SPEAKERSo we did a lot of work to make them be playable
57:48SPEAKERin an immersive sim game
57:49SPEAKERand do the things that kind of players expect them to do.
57:52SPEAKER- Let me follow on by asking about the mod museum.
57:56SPEAKER'Cause the mod museum for folks who don't know
57:57SPEAKERis a Steam Workshop download for the game
58:00SPEAKERthat just has a mod campaign
58:02SPEAKERthat you can load up from the main menu.
58:03SPEAKERAnd it kind of gives you behind the scenes
58:05SPEAKERof how large chunks of the game work.
58:08SPEAKERYou know, it shows you how the pathing works
58:09SPEAKERand how the AI works and how the,
58:11SPEAKERBrad had talked about the clambering and mantling
58:14SPEAKERand jumping and all that, the movement in the game works.
58:17SPEAKERAnd it seems like a ton of work to put together.
58:20SPEAKERLike I love that it's there
58:21SPEAKERand I'm really grateful that you all did it,
58:22SPEAKERbut it seems like a really huge undertaking
58:27SPEAKERfor not a whole lot of return, I guess.
58:31SPEAKER- Yeah, so part of that
58:35SPEAKERis just due to how game development schedules work.
58:41SPEAKERSo prior to shipping, maybe like a few weeks beforehand,
58:48SPEAKERwe continually start locking things down
58:50SPEAKERmore and more of the game until we're at a point
58:52SPEAKERwhere like no one's allowed to change the game anymore.
58:55SPEAKERWe just got to let QA bash on it for a bit.
58:59SPEAKERAnd so during this time,
59:02SPEAKERsome people have a lot of things to do,
59:04SPEAKERlike programmers still have to fix a lot of things
59:08SPEAKERand figure out how, why a certain bug is happening.
59:13SPEAKERDesigners kind of have less tasks to do at some point,
59:19SPEAKERjust because like content is one of things
59:22SPEAKERthat gets locked sooner than later.
59:26SPEAKERAnd so during this time,
59:27SPEAKERwe thought it will be like a fun thing
59:29SPEAKERfor the designers to make and work on during this time
59:33SPEAKERwhere we're kind of like waiting for the game to ship
59:35SPEAKERso that they can stay on the project long enough
59:37SPEAKERto fix bugs after release.
59:40SPEAKERAnd so we built the mod museum,
59:43SPEAKERwhich was kind of like a behind the scenes tour
59:44SPEAKERof how things work and was kind of our compromise
59:48SPEAKER'cause like we wanted to do a developer commentary mode,
59:51SPEAKERbut just schedule wise and budget wise,
59:54SPEAKERwe just couldn't make it work.
59:55SPEAKERSo making this free mod museum that people can download
59:59SPEAKERfor the Steam Workshop was kind of our way around that.
1:00:03SPEAKER- It's really phenomenal for people who want to see
1:00:05SPEAKERhow stuff works in the background.
1:00:06SPEAKER'Cause it's like the setup for most of the exhibits is
1:00:11SPEAKERhere's the thing in the game, here's how we did it.
1:00:14SPEAKERThere's some texts usually smacked up on the wall
1:00:16SPEAKERthat explains what's going on.
1:00:17SPEAKERAnd like, for example, on the windows,
1:00:19SPEAKERyou kind of exploded out all of the different elements
1:00:23SPEAKERthat are in the editor that make the glass windows
1:00:26SPEAKERthat break and then have pull down seals
1:00:29SPEAKERto keep the air in work.
1:00:31SPEAKERAnd it's like, I've never seen anybody
1:00:33SPEAKERreally do anything quite like that before.
1:00:34SPEAKERSo it's pretty rad.
1:00:35SPEAKER- There's some really incredible visual representations
1:00:38SPEAKERof what's going on, like the scripting section.
1:00:39SPEAKERYou know, like not only is the script you're about to
1:00:41SPEAKERactivate with an in-game button plastered on the wall
1:00:43SPEAKERin front of you, but it actually highlights line by line
1:00:46SPEAKEReach step as it's executing.
1:00:47SPEAKERLike that stuff is just fantastic for visualizing
1:00:49SPEAKERwhat's going on under the hood.
1:00:50SPEAKERI loved it.
1:00:51SPEAKER- Yeah, it's all Suzanne and Tynan.
1:00:53SPEAKERThey're really good at making this stuff work.
1:00:56SPEAKER- Do you think that building games in ancient,
1:00:59SPEAKERlike 20 year old engines is a good way for folks
1:01:01SPEAKERwho want to learn how to make games?
1:01:02SPEAKEROr do you think there's, is the older tech more approachable
1:01:05SPEAKERjust 'cause the art fidelity and the kind of everything's
1:01:09SPEAKERa little bit easier 20 years ago?
1:01:11SPEAKEROr is it easier 20 years ago, I guess is the other question.
1:01:14SPEAKER- Yeah, I think it depends.
1:01:16SPEAKERLike, I personally like how lean the engine is.
1:01:20SPEAKERLike it's a very small download.
1:01:23SPEAKERThe entire source code is like much more compact
1:01:26SPEAKERthan you'd see from like a more robust game engine.
1:01:32SPEAKERThe downside though, is that the amount of documentation
1:01:38SPEAKERand communities around these things are more limited
1:01:42SPEAKERthan say Unity or Unreal.
1:01:45SPEAKERSo getting over that hump of like, I'm just getting started.
1:01:50SPEAKERI don't know anything.
1:01:51SPEAKERAnd getting going with that can be pretty challenging
1:01:53SPEAKERjust 'cause like there's just less,
1:01:55SPEAKERlike the websites that talk about how to make stuff
1:01:57SPEAKERin Doom 3, a lot of them just are not
1:02:00SPEAKERon the internet anymore.
1:02:03SPEAKERThere's still like some you can find,
1:02:04SPEAKERbut just compared to more modern stuff,
1:02:08SPEAKERit can be difficult.
1:02:09SPEAKER- Those message boards are gone now, huh?
1:02:11SPEAKER- It's, you know, yeah.
1:02:14SPEAKER- Chat GPT can't help you with Doom 3, right?
1:02:19SPEAKER- No Doom 3 vibe coding, I guess.
1:02:21SPEAKER- They didn't train it on a lot of plan files today.
1:02:25SPEAKER- Yeah, I think also just like, I mean, so I do a lot of,
1:02:28SPEAKERI mean, my day job is I teach at USC game development,
1:02:33SPEAKERgame programming, and I think it would,
1:02:35SPEAKERlike certainly there is the advantage
1:02:37SPEAKERof like the code base is a lot smaller than Unreal Engine,
1:02:39SPEAKERbut like I think it'd be difficult for someone
1:02:41SPEAKERthat doesn't know, like, you know,
1:02:45SPEAKERBrennan is kind of a unique case in that he can code
1:02:49SPEAKERand he can design and he can do art.
1:02:51SPEAKERAnd I think unless you know how to code C++ already,
1:02:56SPEAKERlike it's gonna be hard to just like jump into Doom 3
1:03:00SPEAKERand just like make a game.
1:03:01SPEAKERWhereas I think it's probably a lot more approachable
1:03:04SPEAKERfor like, if you're learning to use something like Game Maker
1:03:07SPEAKERor Unity, right, as like your first, or RPG Maker even,
1:03:12SPEAKERright, like those are probably way more approachable
1:03:15SPEAKERthan jumping into Doom 3.
1:03:18SPEAKER- Bloating up dark radiant and making,
1:03:19SPEAKERand starting it up, carving out, I don't know,
1:03:22SPEAKERbut they called them brushes, I guess, is that, yeah.
1:03:26SPEAKER- Yeah, I think also too, just like in general,
1:03:27SPEAKERif you're starting out like 2D is way easier
1:03:29SPEAKERto start out in than 3D.
1:03:32SPEAKER- Make a side scroll or a top-down twin stick shooter
1:03:34SPEAKERor something, not a first person shooter, right?
1:03:37SPEAKERHave you looked at some of the other,
1:03:39SPEAKERI mean, there's a lot of stuff happening
1:03:40SPEAKERin open source game engines now.
1:03:42SPEAKERHave you looked at Godot and FNA and some of the,
1:03:44SPEAKERI mean, I see ship stuff without FNA,
1:03:46SPEAKERso that's a bad question, but.
1:03:48SPEAKER- I love FNA, big FNA fan here.
1:03:49SPEAKER(laughs)
1:03:51SPEAKER- FNA is the open source version of XNA slash--
1:03:55SPEAKER- Mono game.
1:03:56SPEAKER- Mono, yeah, thank you, yeah, yeah.
1:03:59SPEAKERWhich was what was used for a lot of Xbox arcade games
1:04:02SPEAKERback in the like Xbox 360 era.
1:04:05SPEAKER- Like Bastion.
1:04:07SPEAKER- Yeah, yeah, Supergiant, still on it, I think.
1:04:10SPEAKER- No, so for Hades, they actually switched to their own.
1:04:13SPEAKER- Oh, did they?
1:04:14SPEAKER- They're using the Forge, which is like,
1:04:15SPEAKERit is an open source C++ engine,
1:04:20SPEAKERor it's at least a game framework.
1:04:22SPEAKERSo they switched to that on Hades.
1:04:23SPEAKERI think they were using the mono game,
1:04:25SPEAKERlike tech stack until the first Hades.
1:04:29SPEAKER- So yeah, what do you think about the other,
1:04:31SPEAKERlike is the next Blendo game gonna be a Godot game, Brendan,
1:04:35SPEAKERor is it gonna stick within tech?
1:04:38SPEAKER- I'm looking at, I think Godot is next on my thing,
1:04:41SPEAKERnext to my list to investigate.
1:04:43SPEAKERRight now I am messing around
1:04:45SPEAKERwith making a small FNA thing of some kind.
1:04:51SPEAKERSo going back to previous tech that I've used
1:04:53SPEAKERand trying it out again.
1:04:56SPEAKER- Yeah, I'm a big fan of SDL,
1:04:58SPEAKERand we actually use SDL on Skin Deep,
1:05:00SPEAKERalso it's not a game engine,
1:05:02SPEAKERbut it's like such a foundational library.
1:05:06SPEAKERAnd I think both Brendan and I know a lot of the core,
1:05:09SPEAKERlike FNA folks and the SDL folks and stuff.
1:05:15SPEAKERI think in terms, it's not a game engine,
1:05:18SPEAKERbut it's a great like framework.
1:05:20SPEAKERIf you want to learn like the basics of game programming,
1:05:23SPEAKERand that's actually like what I use
1:05:25SPEAKERwhen I start out in my first game pairing class.
1:05:27SPEAKEROh, let's just make a window in SDL,
1:05:29SPEAKERand then let's draw some sprites and do all that.
1:05:32SPEAKERSo I really liked that because I think it's like,
1:05:35SPEAKERit really forces you to learn the fundamentals
1:05:38SPEAKERin a way that if you try to start programming in Unity
1:05:43SPEAKERor Unreal, it does so much for you.
1:05:44SPEAKERIt's very powerful,
1:05:45SPEAKERbut I think there's something good
1:05:47SPEAKERabout learning those core things.
1:05:50SPEAKERI haven't really looked at Godot too much
1:05:53SPEAKERother than occasionally helping people debug stuff
1:05:56SPEAKERin their games.
1:05:58SPEAKERBut yeah, I think there's definitely a lot of options
1:06:04SPEAKERout there.
1:06:06SPEAKERI am big fan of Unreal Engine.
1:06:10SPEAKERI think the main drawback or limitation is just like how
1:06:14SPEAKERyou need a good computer to really use it.
1:06:17SPEAKERBut I do like how,
1:06:21SPEAKEReven though there is the royalty system and everything,
1:06:26SPEAKERthey give you all the source code, right?
1:06:27SPEAKERSo you can really dive into it.
1:06:31SPEAKERAnd some of the Unreal games I've worked on,
1:06:33SPEAKERwe've made pretty significant changes.
1:06:35SPEAKERSo being a programmer,
1:06:38SPEAKERI really liked that control of we have the source code.
1:06:42SPEAKERI think one thing that's really interesting
1:06:43SPEAKERabout Doom 3 is just that the code base is small enough
1:06:46SPEAKERthat you can mostly understand most of it,
1:06:49SPEAKERwhereas something like Unreal is so big
1:06:51SPEAKERthat even Tim Sweeney doesn't know what all of it does.
1:06:54SPEAKER- Yeah, well, and there's also the danger of pulling,
1:06:59SPEAKERof making your own changes to Unreal in that,
1:07:02SPEAKERyou know, when they roll a new version out,
1:07:04SPEAKERyou're gonna then have to port your changes
1:07:06SPEAKERover to the new version.
1:07:07SPEAKERThere's a lot of time involved with that.
1:07:09SPEAKERI guess it's not a problem you have with Doom so much.
1:07:12SPEAKER(laughing)
1:07:13SPEAKERDoom 3.
1:07:15SPEAKER- Yeah, we've avoided that problem.
1:07:16SPEAKER- Yeah, you dodged that bullet, I guess.
1:07:18SPEAKER- Not a lot of upstream activity
1:07:19SPEAKERon that one at this point.
1:07:21SPEAKER- Yeah.
1:07:23SPEAKER- I'm curious if there was any, if any of the,
1:07:26SPEAKERlike you added controller support to this, for this game,
1:07:29SPEAKERwhich is something that they probably,
1:07:31SPEAKERI mean, maybe, I guess at some point
1:07:33SPEAKERthey released Doom 3 on consoles,
1:07:34SPEAKERbut I always feel like the,
1:07:36SPEAKERmy expectation for controller feel back then,
1:07:38SPEAKERand my expectation for controller feel now
1:07:41SPEAKERare pretty wildly different.
1:07:42SPEAKERAnd I wondered like how challenging that kind of,
1:07:45SPEAKERthat kind of, like was working in the old engine,
1:07:47SPEAKERdid that make that super difficult?
1:07:49SPEAKEROr was it just, you know,
1:07:52SPEAKERare you up to recreate Call of Duty controller feel
1:07:55SPEAKERin 2025 in a 2004 engine,
1:07:58SPEAKERor is it just getting good enough and ship it?
1:08:02SPEAKER- If I remember correctly, Sanjay,
1:08:04SPEAKERI think the game pad code was from Quadrilao Cowboy.
1:08:09SPEAKER- Yes, I think we brought it over to the game pad code
1:08:11SPEAKERfrom Quadrilao Cowboy.
1:08:14SPEAKERAnd then we did a little bit with like the acceleration here.
1:08:16SPEAKERI think Eric also did some stuff towards the end
1:08:20SPEAKERto kind of help get it to feel better.
1:08:24SPEAKERYou know, I think, I would say generally,
1:08:27SPEAKERlike we kind of really focused on keyboard and mouse
1:08:30SPEAKERfor the game, because that was expectation for most players,
1:08:35SPEAKERbut you know, some players obviously prefer the controller,
1:08:37SPEAKERand I think we got it in a, you know,
1:08:40SPEAKERa pretty good place like the last few months of development.
1:08:45SPEAKERI remember when we demoed the game at Day of the Devs,
1:08:48SPEAKERit was like my first time seeing people play
1:08:51SPEAKERwith the controller, and I was like,
1:08:52SPEAKERBrendan, we have some things that we need to fix
1:08:55SPEAKERwith this controller, it's not quite up there.
1:08:59SPEAKERSo we were able to get, I think,
1:09:00SPEAKERa pretty reasonable feel on it,
1:09:04SPEAKERbut like, we're not doing anything crazy with like,
1:09:07SPEAKERaim assist or anything like that,
1:09:09SPEAKERlike you might do in Call of Duty,
1:09:11SPEAKERbecause we don't, because I think like the, you know,
1:09:14SPEAKERthe shooting isn't really like a big component
1:09:17SPEAKERof our game really, so it didn't make sense
1:09:20SPEAKERto kind of do all the stuff that they do in like,
1:09:22SPEAKERCall of Duty, where like when you aim down sight,
1:09:25SPEAKERit'll like lock onto the head and stuff a little bit, right,
1:09:29SPEAKERand stuff like that, so we didn't really need
1:09:31SPEAKERto implement that for our game.
1:09:34SPEAKER- It seems like if you're shooting,
1:09:35SPEAKERyou've kind of made a mistake in Skin Deep.
1:09:37SPEAKER(laughing)
1:09:38SPEAKER- You're already dead.
1:09:40SPEAKER- It is interesting, like in earlier versions of the game,
1:09:43SPEAKERlike the rifle was so overpowered, right?
1:09:46SPEAKERLike, and we really had to figure out like, okay,
1:09:49SPEAKER'cause it really felt like at one point in development,
1:09:51SPEAKERlike the best strategy was just like,
1:09:54SPEAKERfind a rifle and start shooting.
1:09:55SPEAKERPeople are like, well, that's not really the vibe
1:09:57SPEAKERthat we want for this game, right?
1:09:59SPEAKERSo I think that Brendan and Suzanne and Tana
1:10:02SPEAKERspent a lot of time like brainstorming,
1:10:04SPEAKERhow do we make it so there's not just like one,
1:10:07SPEAKERlike best way to do everything,
1:10:09SPEAKERwhether it was shooting with the rifle or yeah,
1:10:11SPEAKERat some point it was just like, yeah,
1:10:13SPEAKERlike there was one clear way that's like the easiest way
1:10:16SPEAKERto get rid of every enemy.
1:10:18SPEAKERI was like bashing them in like random objects, right?
1:10:22SPEAKERAnd so I think there was a lot of time spent to like,
1:10:24SPEAKERwell, how do we encourage players
1:10:27SPEAKERto explore all the different ways
1:10:29SPEAKERthat they can interact with the enemies
1:10:30SPEAKERwithout making it feel like you're forced to do it
1:10:32SPEAKERin some specific way?
1:10:34SPEAKER- We removed the win button,
1:10:35SPEAKERbut just, you know, made the game more fun.
1:10:38SPEAKER- Well, I mean, the level progression, that happens, right?
1:10:41SPEAKER'Cause like the first couple of levels
1:10:42SPEAKERI was pouncing at everybody
1:10:43SPEAKERand then smashing their heads against walls
1:10:45SPEAKERand whatever was around.
1:10:46SPEAKERAnd then that stops being an option later on
1:10:49SPEAKERfor reasons we don't need to get into,
1:10:50SPEAKERbut it ends up doing,
1:10:53SPEAKERit prevents you from min-maxing the MSim nature of the game,
1:10:56SPEAKERwhich is, I thought, quite fun.
1:10:58SPEAKER- Yeah, and I think the other thing too
1:11:00SPEAKERthat worked out well was I think originally like,
1:11:03SPEAKEReven the early levels were much more like open-ended
1:11:06SPEAKERwhere you could just like kind of go
1:11:08SPEAKERand do whatever you wanted to,
1:11:09SPEAKERwhich just felt very overwhelming for the new players
1:11:13SPEAKER'cause they're like, I have no idea what I'm supposed to do.
1:11:16SPEAKERAnd so I think like adding all the barricades
1:11:19SPEAKERand key locking system and all the codes
1:11:21SPEAKERand stuff like that to sort of, at least early on,
1:11:24SPEAKERmake it so that we can both teach you things
1:11:27SPEAKERand also just like not just overwhelm you
1:11:30SPEAKERwith like sort of the analysis paralysis
1:11:33SPEAKERof like, I have too many choices, I don't know what to do.
1:11:36SPEAKER- Yeah, like our inspiration was Die Hard and in Die Hard,
1:11:39SPEAKERyou know, John McClane just is able to roam
1:11:41SPEAKERaround the building as he pleases.
1:11:43SPEAKERAnd so that was kind of our initial version
1:11:46SPEAKERfor quite a while.
1:11:48SPEAKERBut like Sanjay would say, it's pretty overwhelming
1:11:50SPEAKERto just have like a bazillion possibilities
1:11:55SPEAKERfor you to interact with.
1:11:57SPEAKERIt doesn't feel very, it felt kind of overwhelming,
1:12:00SPEAKERkind of like not in a fun way.
1:12:02SPEAKERAnd so we added the locks and keys
1:12:04SPEAKERto kind of give the player more of a structured experience.
1:12:08SPEAKER- We're kind of in the leftovers portion of the show
1:12:10SPEAKER'cause I'm just thinking of stuff I forgot to ask earlier
1:12:12SPEAKERthat I should have thought of.
1:12:13SPEAKERBut real quick about your source release of your engine,
1:12:18SPEAKERyou know, that you've built on top of Doom 3.
1:12:20SPEAKERUnder the terms of that source code license,
1:12:23SPEAKERwhen exactly are you obligated to put yours out?
1:12:25SPEAKERIs it only after you like ship binaries
1:12:28SPEAKERthat you have to, that you're, you know,
1:12:31SPEAKERI mean, obviously you're gonna do it either way,
1:12:32SPEAKERbut I'm just kind of curious what the nuts and bolts
1:12:34SPEAKERof the license are.
1:12:35SPEAKERLike, what is it that triggers your obligation
1:12:38SPEAKERto do your own release?
1:12:39SPEAKERIs it because you have shipped binaries for money?
1:12:42SPEAKERIs that what it is?
1:12:43SPEAKER- My understanding is once the thing is available
1:12:46SPEAKERfor like public consumption, that's when the activation.
1:12:50SPEAKERDoes that sound?
1:12:51SPEAKER- I think it's, and it doesn't matter
1:12:52SPEAKERwhether you're selling it or it's free.
1:12:55SPEAKERIt's basically once your project is publicly available
1:12:59SPEAKERin binary form, like you have to release
1:13:01SPEAKERthe source code as well.
1:13:03SPEAKER- 'Cause it's GPL 2, right?
1:13:05SPEAKERThe Doom 3 stuff?
1:13:07SPEAKER- I think 3, but I don't quite remember.
1:13:11SPEAKER- I should've looked this up before.
1:13:12SPEAKERI'm sorry, yeah.
1:13:13SPEAKER- We probably need a lawyer when you're actually talking.
1:13:15SPEAKER- It is a GPL license, and you need a lawyer
1:13:18SPEAKERto tell you what's the difference between all of it.
1:13:21SPEAKER- Sure.
1:13:22SPEAKERYeah, it is GPL 3, and it's absolutely the,
1:13:26SPEAKERit's the one that everybody I've ever worked with
1:13:28SPEAKERsays under no circumstances should you license your stuff
1:13:30SPEAKERwith this one if you don't have to.
1:13:32SPEAKERBut I don't know why.
1:13:33SPEAKERWe'll have to get Chris DiBona back on here
1:13:36SPEAKERto talk about licenses at some point.
1:13:38SPEAKER- So is that the one that kind of infects
1:13:39SPEAKERevery other piece of code that touches?
1:13:41SPEAKER- Well, yeah, GPL is copy left in general.
1:13:44SPEAKERSo yeah, so you have to basically,
1:13:49SPEAKERand that's a big reason why especially big companies
1:13:54SPEAKERreally stay away from GPL, right?
1:13:58SPEAKERWhereas there's other licenses like BSD or MIT, et cetera,
1:14:01SPEAKERthat Apache that are much more permissive, right?
1:14:07SPEAKER- Yeah.
1:14:07SPEAKER- In my personal stuff, I just, I like using BSD
1:14:11SPEAKER'cause I don't mind people using the code.
1:14:14SPEAKERAnd then I just want my attribution,
1:14:17SPEAKERwhich unfortunately none of the AIs respect.
1:14:21SPEAKERSo, yeah.
1:14:23SPEAKER- So I took a quick look at your, both of your backgrounds
1:14:26SPEAKERand like, did you guys really seem to have paid your dues
1:14:28SPEAKERwith like 2000s era EA and pandemic and stuff?
1:14:32SPEAKERI mean, like having covered games through that period,
1:14:35SPEAKERit sounds like that was really the,
1:14:36SPEAKERlike in the trenches era.
1:14:39SPEAKERI don't have a fully formed question here,
1:14:41SPEAKERbut I guess I'm kind of like, I'm kind of curious,
1:14:43SPEAKERlike, is there anything from that way of working
1:14:45SPEAKERthat you actually miss and like is kind of open source
1:14:49SPEAKERdevelopment like your preferred way of working from now on?
1:14:51SPEAKERLike, would you ever go back to a big team
1:14:54SPEAKERor like not ship on an open source engine at this point?
1:14:57SPEAKERLike, are you just sort of philosophically
1:15:00SPEAKERlike fully bought in on the way you're doing things now
1:15:02SPEAKERat this point, having had that experience
1:15:05SPEAKERof an extremely much more corporate type of development?
1:15:07SPEAKER- Yeah, so Pandemic Studios is where Sanjay and I first met
1:15:11SPEAKERback in like 2007 or so, sort of around-
1:15:14SPEAKER- Yeah, 2007, I think.
1:15:16SPEAKER- We're working on the Lord of the Rings conquest video game.
1:15:21SPEAKERYeah, I mean, so Pandemic was actually kind of interesting
1:15:24SPEAKERin that the tech that they used
1:15:27SPEAKERwas all proprietary, right, Sanjay?
1:15:30SPEAKERLike, I think even each team had their own variation
1:15:34SPEAKERof the tech or even, I think in Lord of the Rings,
1:15:37SPEAKERyou all built the engine from the ground up, right?
1:15:39SPEAKER- So I think Lord of the Rings was built
1:15:41SPEAKERon the full Spectrum Warrior 2 engine,
1:15:45SPEAKERbut yeah, like the Mercenaries team had their own engine
1:15:48SPEAKERand the Saboteur team had their own engine.
1:15:51SPEAKERI don't know if I'm actually allowed to say what the games
1:15:53SPEAKERthat we were working on in Australia, which got canceled,
1:15:57SPEAKERwere on different engines and even, yeah,
1:16:02SPEAKERsome other unannounced titles had their own engines,
1:16:04SPEAKERwhich it turned out like that model was very expensive,
1:16:08SPEAKERespecially when you're like, oh, now we're making games
1:16:11SPEAKERfor like the Xbox 360 and PlayStation 3,
1:16:14SPEAKERso now these code bases are getting bigger and bigger.
1:16:18SPEAKERAnd I mean, I guess I would say for me,
1:16:20SPEAKERso in recent years I've been doing,
1:16:23SPEAKERI've been kind of working with indie teams
1:16:26SPEAKERon various projects, working with Brendan
1:16:30SPEAKERand then before that with the Giant Squid folks
1:16:33SPEAKERand the Beethoven and Dinosaur folks, a few of their games.
1:16:37SPEAKERAnd I think one of the things that I think I like
1:16:42SPEAKERabout the old era, which I think is difficult
1:16:45SPEAKERto get back now, is that pre-COVID,
1:16:48SPEAKERlike this being in the office, developing this camaraderie
1:16:53SPEAKERwith your colleagues.
1:16:55SPEAKERAnd I think that's really difficult to do now,
1:16:59SPEAKERespecially on a lot of,
1:17:00SPEAKERbecause most indie teams are fully remote
1:17:03SPEAKERand you can still do that to some extent,
1:17:05SPEAKERbut there is something about that era
1:17:08SPEAKERof just going over to someone's desk
1:17:10SPEAKERand having a conversation, right?
1:17:13SPEAKERBut I think both Brendan and I also experienced,
1:17:18SPEAKERthere's this huge bureaucracy, right?
1:17:21SPEAKERThe funny thing about pandemic was I actually,
1:17:23SPEAKERso Brendan was at, or started at pandemic
1:17:26SPEAKERbefore EA had purchased us.
1:17:29SPEAKERI actually accepted my offer.
1:17:31SPEAKERAnd then the week before I was to start,
1:17:34SPEAKERthat was when they announced EA was buying it.
1:17:36SPEAKERAnd I was like, I thought I had escaped.
1:17:38SPEAKERI escaped EA, escaped Activision,
1:17:42SPEAKERand then like, nope, I'm back in.
1:17:44SPEAKER- Pulling you back.
1:17:45SPEAKER- So there's sort of this like, yeah, I mean like,
1:17:48SPEAKERobviously it's like, and if you look at AAA now,
1:17:51SPEAKERlike it's very much like huge, huge teams, right?
1:17:56SPEAKERWhere you're like, you're one,
1:17:58SPEAKERlike you're like, you could spend two years working
1:18:01SPEAKERon one very, very specific thing.
1:18:04SPEAKEROr even like, let's say in the case of Grand Theft Auto,
1:18:06SPEAKERyou could spend like six years or however long
1:18:08SPEAKERthey've been working on it now on just like that one thing,
1:18:11SPEAKERlike you're the sound programmer
1:18:12SPEAKERand all you're doing for the next five years
1:18:15SPEAKERis programming sounds.
1:18:16SPEAKEROne thing that's really fulfilling and fun,
1:18:18SPEAKERI think about working on in small teams
1:18:21SPEAKERis being able to wear lots of hats, right?
1:18:25SPEAKERLike, you know, I'm not good at art,
1:18:27SPEAKERbut you know, just being able to like go between,
1:18:30SPEAKERlike some week I'm doing gameplay,
1:18:32SPEAKERsome week I'm rewriting the renderer,
1:18:34SPEAKERlike some weekend, you know,
1:18:36SPEAKERso just being able to jump around a lot.
1:18:38SPEAKERI think that's really fun.
1:18:40SPEAKERAnd it's difficult to get that in a huge AAA studio
1:18:45SPEAKERbecause it's like, because you know,
1:18:48SPEAKERthere's a person that's all,
1:18:50SPEAKERlike there's a whole team of like 20 people
1:18:52SPEAKERthat are doing the graphics or whatever, right?
1:18:55SPEAKER- Yeah, there's a shout out to the generalist, right?
1:18:57SPEAKER(laughs)
1:19:00SPEAKER- Yeah, by pandemic, we were kind of lucky
1:19:01SPEAKERthat the team was still small enough that,
1:19:05SPEAKERat least on the design side,
1:19:06SPEAKERwe were able to like wear some multiple hats.
1:19:08SPEAKERLike I did camera design, plus level design,
1:19:12SPEAKERand you know, did some cinematics.
1:19:14SPEAKERSo it was fun to be able to work in an environment
1:19:17SPEAKERwhere I'm learning a lot from other people,
1:19:18SPEAKERbut also being able to kind of go beyond
1:19:21SPEAKERjust what I was, from what I was specifically hired to do.
1:19:25SPEAKER- Guys, thank you all so much for taking the time
1:19:27SPEAKERto come and chat with us.
1:19:27SPEAKERIt's always fun to talk with you, Brendan.
1:19:30SPEAKERIt was great to meet you, Sanjay.
1:19:31SPEAKERAnd I'm excited to see what's next
1:19:34SPEAKERand to spend some more time with Skin Deep.
1:19:36SPEAKERWhere can people find the game
1:19:37SPEAKERand what else, are there future plays?
1:19:40SPEAKERYou know, is it gonna come to consoles
1:19:41SPEAKERand other stuff as well, or is it Steam for Life?
1:19:46SPEAKER- Yeah, so right now, Skin Deep is on PC
1:19:48SPEAKERand you can find it on the Steam store
1:19:50SPEAKERand on the Epic Games store.
1:19:52SPEAKER- Okay, well, awesome.
1:19:53SPEAKERThank you guys.
1:19:53SPEAKERAnd any Twitter, well, Blue Sky post Twitter socials
1:19:57SPEAKERto plug for people to find out more information?
1:20:00SPEAKER- Yeah, I'm on Blue Sky as Blendo Games, B-L-E-N-D-O.
1:20:05SPEAKERI don't really use social media, but you can find me.
1:20:10SPEAKER- Awesome, well, thank you guys so, so much.
1:20:12SPEAKER(upbeat music)
1:20:15SPEAKERThank you so much to Brendan and Sanjay.
1:20:17SPEAKERThat was always fascinating to talk about indie games.
1:20:21SPEAKER- Yeah, honestly, like the things I've done
1:20:24SPEAKERin the game press, like it has always remained
1:20:26SPEAKERmy greatest privilege to get to talk to the people
1:20:28SPEAKERwho make games about how they make games
1:20:30SPEAKERbecause it is just so endlessly fascinating.
1:20:32SPEAKERI just cannot get enough of availing myself
1:20:35SPEAKERof the knowledge of people that do that kind of work.
1:20:37SPEAKER- It's indie games, man.
1:20:39SPEAKERYou get to do everything.
1:20:40SPEAKERAnd it's interesting to me because like,
1:20:42SPEAKERDoom 3 existed in a time before we really recognized
1:20:46SPEAKERa lot of what are like established jobs in games now, right?
1:20:50SPEAKERLike you didn't really have technical artists
1:20:52SPEAKERin the Doom 3, you know, early 2000s.
1:20:55SPEAKERThat's a relatively new invention.
1:20:57SPEAKERWe had the people doing that work.
1:20:58SPEAKERThey were making rigs and building skeletons
1:21:00SPEAKERand making models move and stuff like that.
1:21:02SPEAKERBut it wasn't something that was, it was just somebody
1:21:05SPEAKERon the art team knew how to do that.
1:21:06SPEAKERIt wasn't like it was a separate,
1:21:08SPEAKERa whole separate specialty.
1:21:10SPEAKERSo yeah, it's fascinating looking at how they kind of work
1:21:15SPEAKERwith this old technology in a modern era.
1:21:17SPEAKERAnd Brendan is always great to talk to about games anyway.
1:21:22SPEAKERHe's a very thoughtful designer, I think.
1:21:25SPEAKERSo one of my faves.
1:21:27SPEAKER- And we should reiterate, if you have skin deeps,
1:21:29SPEAKERyou should really go download that mod museum.
1:21:31SPEAKERFirst off, you should go get skin deep
1:21:32SPEAKER'cause it's like, it's a rad game.
1:21:35SPEAKERIt will teach you how to play immersive sims,
1:21:38SPEAKERlike Dishonored and Prey and all.
1:21:40SPEAKERLike, have you ever tried those games and been like,
1:21:41SPEAKERI don't care what the fuss is about.
1:21:43SPEAKERI don't understand what's happening here.
1:21:45SPEAKERThose games are really dense and difficult
1:21:47SPEAKERto kind of break into an understanding of
1:21:49SPEAKERand playing skin deep will make it easier
1:21:52SPEAKERfor you to understand something like Prey.
1:21:55SPEAKER- The way it's broken up into small bite-sized levels
1:21:57SPEAKERmakes it much more digestible, I found.
1:21:59SPEAKERAlso, if those guys happen to listen to this,
1:22:01SPEAKERI meant to bring this up during the interview and did not,
1:22:04SPEAKERbut shout out to, okay, the game really is like good
1:22:07SPEAKERabout obeying its own rules.
1:22:09SPEAKERShout out to whoever on the team decided
1:22:10SPEAKERto allow the duplicator to work on literally everything.
1:22:13SPEAKER- Oh, that's my favorite part of the game, yeah.
1:22:15SPEAKER- There's a duplicator item that just literally duplicates
1:22:19SPEAKERwhatever you're holding and gives you a second one.
1:22:21SPEAKER- But whatever you aim it at, yeah.
1:22:22SPEAKER- Oh, yeah, yeah, right.
1:22:23SPEAKERBut the objective of every level is to get
1:22:26SPEAKERthese special keys to unlock the cat cages
1:22:28SPEAKERand let out the cats.
1:22:29SPEAKERIf you have a duplicator and you find one key,
1:22:31SPEAKERyou can just duplicate the key and finish the level.
1:22:34SPEAKER- Brad, you don't even have to have the key.
1:22:35SPEAKERYou can just aim it at the key on somebody's belt
1:22:38SPEAKERand duplicate it off their belt.
1:22:40SPEAKER- Right, like I just, I love a game that is so devoted
1:22:43SPEAKERto its own rule set that it lets you
1:22:45SPEAKERjust completely trivialize 90% of the gameplay.
1:22:47SPEAKERIt's pretty rad.
1:22:48SPEAKER- Have you duplicated a duplicator yet?
1:22:50SPEAKER- I don't think it lets you, actually.
1:22:54SPEAKERThere's some kind of quantum overlap
1:22:56SPEAKERor folding of space going on there.
1:22:58SPEAKERIt's probably impossible.
1:23:00SPEAKER- Probably fine.
1:23:02SPEAKERBut yeah, so definitely check it out.
1:23:04SPEAKERWhen you have the game, check out the mod museum
1:23:06SPEAKER'cause it really, like one of the things
1:23:08SPEAKERthat every studio I've ever worked with does
1:23:11SPEAKERis they have a playground level, basically,
1:23:14SPEAKERwhere they have AI spawn, enemy spawners,
1:23:17SPEAKERand they have the height blocks so you have a reference
1:23:19SPEAKERthat you can copy and paste in to know how tall
1:23:21SPEAKERyour stuff should be in the world and all that.
1:23:23SPEAKERAnd turning that into a thing that's a user-playable
1:23:26SPEAKERexperience where you can see, where they have essentially
1:23:30SPEAKERexhibits that show how vacuum works in the game
1:23:32SPEAKERor how vacuum kind of spreads, how it propagates
1:23:36SPEAKERthrough the world in the game is really, really, really cool.
1:23:39SPEAKER- Yeah, ever since Valve built one of those
1:23:41SPEAKERfor the Half-Life 2 promotional cycle, if you remember,
1:23:44SPEAKERI don't think they ever put out that level,
1:23:45SPEAKERbut they put out video of it.
1:23:47SPEAKERIt was just like, hey, here's every material in the game.
1:23:49SPEAKERHere's a big physics playground.
1:23:51SPEAKERLike, here's how the facial animation works.
1:23:54SPEAKERLike, one of the coolest things a developer can do.
1:23:56SPEAKER- It's really cool.
1:23:58SPEAKERSo yeah, it's on Steam, it's on Epic.
1:23:59SPEAKERYou can get at both of those places,
1:24:01SPEAKERand it's eminently worth your time.
1:24:04SPEAKERBut you know what else is worth your time?
1:24:08SPEAKER- What's that?
1:24:09SPEAKER- Supporting the tech pod, Brad.
1:24:10SPEAKER- That's a bold claim, but I guess I'll go with it.
1:24:13SPEAKER- I think if they made it this far, they'd probably agree.
1:24:15SPEAKER- Maybe.
1:24:15SPEAKER- This is, I hope so at least.
1:24:17SPEAKERI hope you're not just asleep and you wake up to this.
1:24:20SPEAKERThis is a listener-supported show,
1:24:21SPEAKERso we wouldn't be here without you, the listener.
1:24:24SPEAKERAnd you can find out how you can support the show
1:24:27SPEAKERby going to patreon.com/techpod.
1:24:30SPEAKERAgain, that's patreon.com/techpod,
1:24:33SPEAKERwhere for five bucks a month,
1:24:34SPEAKERyou get access to the Discord,
1:24:36SPEAKERyou get our monthly patron-exclusive episodes,
1:24:38SPEAKERyou get access to the Discord, that's it.
1:24:41SPEAKERThat's actually the two things you get.
1:24:43SPEAKERBut the Discord is full of wonderful nerds
1:24:45SPEAKERwho talk about all sorts of interesting stuff all the time.
1:24:49SPEAKERThe conversations around the Windows 95 episode
1:24:52SPEAKERfrom a couple weeks ago have been unbelievable.
1:24:55SPEAKERThe number of people who wrote in in the Discord
1:24:58SPEAKERand via email to let me know that yes,
1:25:01SPEAKERwhen you use a snack with a zapper on a CRT, it works.
1:25:05SPEAKERThank you, we got it.
1:25:07SPEAKERI thought, I was thinking when you use a snack with a zapper,
1:25:10SPEAKERit won't work on PlayStation or other light gun-type cores,
1:25:13SPEAKERwhich is absolutely true, it does not do that.
1:25:15SPEAKERI confirmed that.
1:25:16SPEAKERBut yeah, the original games will work with the zapper
1:25:19SPEAKERon the original platform.
1:25:20SPEAKERThank you for writing in, everyone, we appreciate you.
1:25:23SPEAKERAgain, you can find out how to write in
1:25:25SPEAKERby going to patreon.com/techpod
1:25:27SPEAKERand get access to the Discord
1:25:29SPEAKERand get the patron-exclusive episodes.
1:25:30SPEAKERWe appreciate the support from everybody very, very much.
1:25:33SPEAKER- We do.
1:25:35SPEAKER- But we especially appreciate our executive producer
1:25:37SPEAKERtier patrons, including Jason Lee, Andrew Slosky,
1:25:41SPEAKERJordan Lippett, Bunny Money, Twinkle Twinkie,
1:25:45SPEAKERDavid Allen, James Kamik, and Pantheon,
1:25:47SPEAKERmakers of the HS3 high-speed 3D printer.
1:25:50SPEAKERThank you also so much.
1:25:51SPEAKER- Thank you very much.
1:25:52SPEAKERDo you think this is a good month in the Bunnyverse?
1:25:54SPEAKER- I hope so, I, you know, I heard some stuff
1:25:58SPEAKERthat was going on in the Bunnyverse that sounded pretty good
1:26:00SPEAKERso I don't know for sure.
1:26:02SPEAKER- Okay, that's good to hear, very mysterious but positive.
1:26:05SPEAKER- Well, it's like, let the bunnies tell their own stories,
1:26:07SPEAKERI'm not gonna tell bunny stories.
1:26:09SPEAKERThat'll do it for us this month, this week rather.
1:26:12SPEAKERThanks everybody for listening and as always,
1:26:14SPEAKERplease consider the environment
1:26:16SPEAKERbefore printing this podcast.
1:26:18SPEAKER(upbeat music)