Let's say you had a genie and with the snap of his fingers, you could have a career making your own indie games full-time for the rest of your life. It sounds pretty amazing, but here's the catch. During the entire time, you'd never have a hit. Instead, you'd have a rockolid base of niche players who supported the development of your small passion projects. Would you do it? See, this is what happened with Jeff Vogle. And he's an indie game veteran who started his indie game studio in 1994, resulting in a whopping 25 retro RPG games on Steam, including Exile: Escape from the Pit, Gene Forge, the Avernom series, and more. Jeff's philosophy for gamedev will likely reshape the entire way you think about getting into game development. For example, we talked about why making a small niche game is a much smarter decision than aiming for a commercial hit. We talk about why indie game development hasn't really changed
since the '90s and how you can take advantage of some of the triedand-true strategies that have worked for Jeff for decades. We talk about why Jeff believes making a polished game is not really worth his time. Well, unless it relates to one crucial ingredient. We also talk about how to survive in today's indie game industry and why you might want to make your own engine instead of using Unity or Unreal. And that's what Jeff did. And by the way, one way you can survive in the industry is to use the latest new tools to help speed up your game's production. Like today's sponsor, Bezi. They're the creators of this new development assistant that has full understanding of your entire project and helps answer questions, write code, and navigate repetitive tasks so you can stay focused on the bigger picture for your game. They just launched the beta of their latest feature, agent mode, which is really unique. It enables Bezi to create and modify code directly within your project at your approval, allowing you to update and iterate
everything within the app. It shows all differences so you can clearly pinpoint and validate the suggested changes in the context of your code. And it keeps track of all changes so that you can revert at any time. Bezi automatically searches all your assets, scripts, scene graph, Unity docs, and the web to give you the most accurate assistance tailored specifically to your project. Bezi is completely free to try and you can check them out and get started by simply clicking the link in the description. Everybody sort of focuses on their their forte when they're making games, especially indie game developers because they're typically one, two, maybe three people. For me, it's like one person right now that I I'm making my game solo right now. And when I think about creating a game, I don't think about it necessarily as writing the game. I think it for me it's like building it with my hands cuz I I focus so much on visuals. Um, which I know for you and I I heard you talk about this. I think it was at GDC or something or one of the the indie
talks that you've done and your your focus is not on necessarily polish of the artwork whereas for me it's it's all about art. So for you it's about I guess polishing up the story, right? Um yeah and the setting. Mhm. So there are several like things that I've talked I I keep going back to and when I talk about games and one of them is about never losing track of the fact that this is an art form and never and and it is very important when you say writing video games is art. It's an art form. A lot comes along with that that I think a lot of people don't fully absorb. One of is that we're artists and artists are enormously individual people and it's very important when talking about your art and only not only is it an art form, it's a new art form. I I've said before I have a privilege that is almost unique in human history that is that I'm older than the art form I work in. So we're
still all figuring out this art form about how how best to perform it, how best to market it, how best to sell it, how best to develop it. And it is always important to remember that every artist has their own individual artists process. Yeah. So, for example, you know, lots of developers are really focused on the visual art aspect of the overall art form, which is really cool. But that's, you know, I'm an I'm a 70s kid. So, when I started writing video games, it was all just, you know, dots and sticks on the screen. So I when my I guess aesthetic sense for video games was developed, video games had very little visual sense that when you play something like the old ultimate when you play something like the old wizardry, it is very simple symbols on the screen that provide a loose framework upon your on upon which your imagination can hang. And I never abandon that. I just don't have a visual sense for video games or I
do but it's a very crude one like a Vernum 4 Green Read and Glory the game we're developing now I think looks better than every game any game we've ever done we have we've redone a lot of art and I've gone through every icon bit by bit to create more of a visual a unity of scale a unity of color a unity of appearance and bear in mind the utter madness that you are listening to I have been writing indie games continuously ly for a living longer I believe than anybody in the world. It is a strange record to be proud of. Is that true though? Is that really Are you being hyperbolic or I'm not being hyperbolic. Name a guy. Name name a name a person. Okay. So, I'll be honest with you. In preparing this podcast, I I did an AI search a Grock. I I got on Grock and I was like, is is Spiderweb Software like the oldest indie game studio? I don't necessarily think it's the oldest indie game studio, but you might be right that you're the oldest or longest career, I
guess. Is that what you're saying? Yeah, exactly. So, there were indie studios, except they were called shareware companies way back in the previous millennium when I started this. But, yeah, there were indie games before me. God knows there were shareware games before me. But all of those people either moved on, grew up to become published or they took long breaks or they retired. I am the only one bloody minded enough to start writing indie games in 94 and just keep doing it. Dude, I was four years old. Yeah, I I'm comically old. I'm older than the stones in the dirt. And um you know there are pe and and there are a couple people who have written games along that period of time and they'll like but they'll take retire for a while or they'll go work for big businesses for a while. But I am the only one who never I did a short period of consulting in for Microsoft in 1999. But when I got home from that, I
started writing working on my indie games. Yeah. So I was more indie then than ever than because what could be more indie than working your day job coming home and working on your games. Do you remember when the indie game thing became really really cool? It was like especially cool in like 2008 or 2009 2010. It started about the time Xbox Live hit big. Yes. Um about the time Steam started getting into um to indie games. That was what I called the indie boom which led to what I've called the indie glut. Um one of some of my most popular blog posts that got me speaking at Deep GDC and stuff like that was talking about was when I started writing pretty much before anyone else about hey we're making we're making so many indie games a lot of people are going to have to go out of business. Yeah. And I called it the indie bubble when it was just a simple glut of product. And then this got a huge amount of discussion, debate. Other people started calling it the indie apocalypse, which is a term I never agreed with. Nobody asked my opinion, but well,
that's, you know, it's stuck. Even though indie games now are making more money than ever, it's just, you know, there's not enough of that money to go around, right? Um, but yeah, just in terms of my long longivity in this, I if you if there's anyone else there who's has more than 31 continuous years of doing this stuff for to make rent or to make house payments, g give me a name. The only person I can talk to that person in trade stories. I had Scott Miller on. I don't know if you know Scott Miller. Um, he was the what was he the creator of 3D Realms and Apogee. Oh, yeah. Sure. Oh, yeah. Back in the day, he he referenced it as sharewware as well. And he would talk about how it's so funny how it's come full circle, but like he would talk about how the way the way he sold games back then was he'd put he'd do demos with CDs and magazines. Is did you do the same thing? So, yeah. So, I have to exp.
So when I started my business, the worldwide web essentially did not exist. It did exist, but it was like in forms of like two websites, like a tech demo. So how on earth? So when I started selling video games, people didn't believe that it was possible to do an internet business that was not one of two things, graphy or fraud, right? So no website. So how on earth would you sell run a small software company? You did what's called shareware. And at the time, what I'm about to describe was incredibly radical. Normally to sell a program, you had to like get it put in a box and get it into Office Max or get it into into get a computer store, which was which was difficult for a long list of reasons. But someone had the brilliant idea of saying, and what I'm going to say is going to sound like old hat, but it was radical at the time. I'm going to make a share a demo version of my program that everyone is allowed under copyright to copy and give to anyone they want. And that is where the share and shareware comes from. Again,
this was a radical idea. And then so for my games, I would release the first, say, fifth of the game. And then um magazines would put it in CDs on that came with the magazine. A CD is a is a plastic disc that contains ones and zeros. Ask your grandparents. Um you would um so you could go to Office Max, you could buy a CD with 500 game demos, and my mine would be one of them. And then you would try these demos and you'd like one of them and find you only got the first fifth of the game and then you contact me for the rest of the game and I'd say you have to give me $25 and then you would yell absinities at me over the phone. That this is this is how that this is how the world works. Um also, and this is the most hilarious thing about sharewware, another way you got demos is you'd go to the mall, which is a collection of stores under a shared roof. Ask your grandparents and there would be a store there that would sell shareware demos. The walls would be covered with um with with floppy discs, which is a 3 and 1/2 by 3 and 1/2 in plastic case that's full of ones and zeros. Ask your great-grandparents. And
you would spend $10 for a demo. You take that one demo that you spent $10 for home. You'd play the first fifth fifth of my game. You'd call me and once again, you would you would shout abs obscinities at me. This is how the world worked in 1994. Um can I pause you for a sec? Sure. It doesn't sound very different from now. Like, think about how like the the best way to sell your game on Steam right now. And I don't know if you disagree with me, but what I think is demos like that that is where I'm getting I got like 60,000 wish lists for my demo. Also, the final thing. So, that's that's kind of this um this demo CD thing you're talking about or a big like you mentioned the CDs are in in in bigger magazines and stuff like that. So that's that was one way to sell it. And then another way that you mentioned was these bundles, right? Well, that's that's kind of like Humble Bundle now, right? Or all the bundles offered on Steam. So my theory is, and I'd love your thoughts on this, my theory is has the indie game
marketing scene changed that much since the '9s? Uh Oh, yeah. Oh my god. Um, I I I I can't stress enough how different it is when it's on your computer, on your desktop, through the internet, and you just press a button and you get the game as opposed to getting in the car and consuming gasoline, like burning up the bodies of dead dinosaurs to drive 15 minutes to go into into a mall and out of and pick like a physical object. Yeah, it is. It it is simple. It you know it's it's the same thing but it's easier. But this is one of those cases where a difference in degree is a difference in kind that it is so much easier now in every way. And so the question of demos is an interesting one because the industry go the industry goes back and forth about whether demos are a good idea or not. I
you we have demos on our website but we don't have demos on steam because I believe in the context of steam for us demos are not a good idea. I have always been an enormous booster of steam refunds. I think that the steam refund policy is a great place and I'm great thing and I'm one of the few people who will say that the steam refund policy as it stands right now is not generous enough. Um because two hours right now is it two hours if they play for two hours? It's two days. two days. Yeah. And I think I think that was it last time I tried. That's not not enough. You know, sometimes I'll buy a game and it's a week before I can round come around to trying it. Um I've said again over the years, if you're not happy with my game, I don't want your money. If someone buys my game, forgets they bought it, and absent-mindedly and and and and doesn't get around to to trying it for two weeks and thinks it stinks, I won't seem to give them their money back. I really honest and truly do because I want to
cut down friction. I want people to press the buy button on my game. So, I want them to feel safe. I want them to feel looked after. I want them to feel that I'm going to back up my product. Well, you'll sell more copies that way. Exactly. Exactly. People are going to be more willing to buy something if they know there's a good refund policy. So, yeah. And the refund policy, the refund policy saves us from the hassle of making demos. We do make demos for NextFest, but we tend to remove them because I I my gut feeling is that I'm I'm sorry. Go ahead. I just said really that's that's surprising to me that you would remove the demo. My gut feeling is that for my games a demo is not as good. And and I'll say and I'll I'll I'll tell you why. And at this point I'm going to you know I I keep telling when when people talk to me about this I tell them I'm a I am a I'm a grizzled old mercenary. I am a diehard campaigner of the wars. I'm an artist, but I also at at the end of the day, you know, kids got to eat. So, I'm gonna do what what what makes it sell best. And here is how the game industry and the indie game industry works in 2025. Everyone plays
your game for an hour that the vast majority of the time when I play an indie game, unless that stuff grabs me. And looking at Steam achievement percentage completions, I think this is the way most people approach most games. They're going to give them about your game about an hour, two hours, three hours. They're going to they're they're going to feel I got entertainment out of this. Yep. Diminishing returns are going to set in. They got 50 unplayed games in their queue. 40 indie games come out a day and and a lot of them are good. They're going to get distracted by the next shiny. So when I'm writing my game, you know, right now I'm writing the back end of a Vernum for Green and Glory. I'm about right the back 10%. And in the back of my mind, it's like very few people are going to play this. I know, dude. I'm in the same position. But they're the dedicated fans. They're the dieards. They deserve quality content just for being for that support. So, I'm still busting my butt to make the end of the game good. Bearing in mind that maybe like a thousand people are going to see it. And that's a lot of people in
my mind. You know, think of picture in your mind a thousand people staring at you. You want to be good. You want to be on your best. Yeah. But at the end of the day, people are most people are going to play your game for two or three hours and they will be satisfied with that experience. Yeah. You know, I never get complaints. Nobody ever ever ever sends me an email saying, "I played your game three hours. I moved on. I'm unhappy with what I got." Yeah. If they played it and then they they find a content place where they set it down and they're content, they got their money's worth. But I do not want the time when they set the game down to be content to be during a demo. Yep. If that happens, I'm then I've lost $20. Oh man, that's smart. You know, I've never thought about it that way. But again, this is for my art, for my genre, for the particular sort of thing I'm doing. And honestly, the games I write are too big for games in 2025. I think 6 to 10 hours is really the magic length for a game now. And I write 40, 50 hour games cuz it's just what I do.
What? How do you what? Really? I guess it's an RPG, so there's plenty of time to grind. It's just impressive. Like I'm I'm making a 5 hour game right now. So, it's it's a it's a particular element of the genre. Turnbased storyheavy fantasy role playing games. I think that the minimum length to bring one of those in with a satisfying story with a beginning minimum beginning, middle, and end is about 20 hours. Holy mackerel. You You can do it like that, but I can't. Other people can. I can't bring it in for less than that. And also remember I'm Murdo for a greeting lurorry is a remaster of a game that I I released in 2004. At that time no one would think twice about a 40 to 50 hour game. That's just the that's just the way that's just the way people handle the thing. And bear in mind 40 to 50 hours is not that long. If you long for playing a video game when you look look at the the the list of the most successful video games right now by
number of players, by number of earnings, and you're going to see games that people play for hundreds and thousands of hours. You know, if someone says I played spent 40 hours playing Fortnite, you're going to go that little. If someone says 40 hour I spent 40 hours playing a league League of Legends, that's like League of Legends has 785 different characters. If you play that game for 40 hours, you saw nothing. Yeah. Okay. So, hang on. Hang on. Let me ask you a question. So, it's related to what you were saying earlier, whereas like if people people these days, they play for an hour or two hours and then they're done and they got their fill, right? Mhm. Why make a 50-hour game if that's what's happening with indie games? Because that's my art. That's what I do. You know, that's that's it. This is I write. When I was 13 in 1983, my family got an apple and I played Wizardry for the first time. And I love Dungeons and Dragons, but I was in rural Washington and no one I didn't have anyone to play with. And so I sat and I played Wizardry and I was like, "This is it. This is my thing." Yeah.
and and it was a long game. And then I played ultimas and fantasy and um Demon's Crown and all of the class and the the and the gold box D&D games. I played all of those. That is what I cut my teeth on and that is what I dreamed of recreating cuz I wanted to do this from a small age and I knew exactly what sort of game I wanted to write. There is a joy in a long game. I mean, you know, no one Okay, I was about to say no one's running around saying Balders's Gate 3 is is too long. And of course, I take that back because plenty of people have said that, but Boulders Gate 3 I, you know, at this point, I can just I'm the great thing about BowlersGate 3 is that when anyone questions anything that I do, I can just say, "Hey, Bowlers Gate 3 did that." And no, and that's it. That's the end of the discussion. Wait, so you're saying for my entire genre? I'm sorry, what? People have complained to you that your games are too long. People I've heard people say that Boulders's Gate 3 is too long cuz it's a major hit and the
jillions of people are trying it. They want to get to the end, but they can't because the game is enormous. Yeah. Oh, yeah. Yeah. It's like I spent 90 hours and I I left so much content on the table. It's it's huge and it goes on forever. But, you know, that's the thing. This industry has room for epics and you know, if you want to make it as an indie, you got to find that underved wedge of the market and serve that. There are some people who want an epic. There are some people who just really want to get lost in the thing. So, I'm writing this game that has a gigantic world where there are place in the world where you can take a right turn and go, "Oh, there's a little side corridor. Go down it." And then it just keeps going and going and there's more dungeons and there's more characters and there's more stuff. And you're going, "This game's too long." And yet I just lost 5 hours on this thing. But you also have sort of the amusement of knowing that this 5 hour section, lots of people aren't going to see it. They're just going to walk by it. are not even going to notice that tiny corridor. And that's there's a lot of fun in that too to make sure that people are aware that they are having an
experience that's unlike anyone others. You strike me as a rarity for most indie game developers. I think a lot of people listening right now, and the majority of the audience listening, by the way, is aspiring indie game developers. Okay? A lot of them listening right now will probably admit that they are really good at one thing or the other. Meaning really good at the business side of things. Knowing how to schedule to stay on task, knowing when to limit themselves, knowing when good is good enough. So some people are really good at that, but they're not really good at the purity of the craft and being like really like staying true to their their creative essence, right? And you strike me as someone who you're both things cuz I'll listen to your talks and you're like it's good enough, you know, just get it done. And my you you said at one point I have a quote here. You said you don't make hits and you you talk a lot about how you just don't polish things certain things because it's just not worth it to you and you want to make
some money and you're very honest about that. Oh yeah. However, you're also saying here that there are certain things that are really important to you that you polish the crap out of like uh the story, right? And the the gameplay. So, I guess my question to you is is it that you don't want to make a hit and that you don't believe it's worth shooting for the moon or is it is what you're really saying deep down is there are certain things that don't matter to you in your games. Um, so I by the standard in 1997 I released a game called Exile 3: Ruined World. And by the standards of Share War Games, that was a legit hit. You know, a legit hit now means $100 million. A legit hit now then meant, you know, got a house. Yeah. But, you know, I've I had by any reasonable standards a hit and but I think that whether you have a hit or not is a tiny is a bit out of your control. It's about that is what when you having not just a success but a phenomenon is catching
lightning in a bottle. Yeah. You know it's it's it it there's a magical element of it. But you know since since um if there you are listening to me now and you are a beginning indie developer run. Oh god run like the hounds of hell are after you. Um you know find find a shed in the woods. Just stay away. Stay o Okay. So, so, so everything you were just talking about, I can answer by by by going back once again the fact we we're artists and every artist has their own process. Every artist has their stuff they're good at and not good at. Like for example, business um you to a certain extent you have to have a head for business. But, you know, we're artists. A lot of us don't. You know, um Salvador Dolly was great at business. Monae was great at business. really Vincent Van Go was not um Vincent Van Go was was not um was not good at a lot of things though I
understand he had quite away with the ladies um but yeah you know you have to go along with you have to figure out you know what what what am I good at what am I bad at if you want to make a living in this business you know there's no dishonor in being a hobbyist god knows you know hobby hobbyist hobbyist game developers are awesome if you want to make a living at it at some point you are either going to have to develop some kind of a gut feeling for business or have a very close trusted um associate who does have a head for business. And for one thing about business for example is um time is money. Your time is your most valuable asset. You need to make sure as much as possible your time is being used in a profitable way which means you can't polish everything because if you do your your your games your game's never going to come out and then you are what what are you even doing? Um so yeah and so I figure out I
have one of my superpowers in this business is I have kind of a gut sense for what I really need to be working on versus this I can let slide a little bit. Like I like to say, I've been using the same icon for wolves in my games for um probably about 15 years because if it's a good icon of a wolf, it's still going to be a good icon of a wolf 2 years later. And eventually I will get that wolf art redone when I'm sick of looking at it. When I go into the game and I see see an icon, I go, "Oh god, I'm so tired of looking." Then I pay then I pay money to to to get it redone. Yeah. Um, but I reuse art mercilessly. I license art. Like I get I get um royalty-free art packs on online asset stores mercilessly. Then I photoshop them because they always need a little bit of work to make them blend in with the game. And I'm getting better at that. The the new game is going to be way better at that than our previous ones were were. But yeah. And so, and
then if I find a really good um piece of art or say a monster, I might rewrite the game a little bit so that it's that sort of monster instead of what I was using so I could use the big piece of art. I'm very cheap. Very very very very cheap. But you're not cheap when it comes to the things you're good at. Right. So like writing writing character dialogue takes a ton of your time, right? Oh yeah. Yeah. It's writing dialogue is the hardest part. It's it's really I find it really tiring. Um I work a lot more at that. But I for that I don't want to say cheap, but I do want to say frugal, which is to say I put in time and energy. And I'm 55 years old. The energy is limited. I put in just enough energy and time to make it work at a level where I'm like, "This is good. It's satisfying. and it is in balance with the things around it, which is to say all of the characters have the amount of
dialogue that is appropriate for their role in in in the game. But once I get there, I stop. You know, very of you know, all the time my beta testers say to me, "Wouldn't it be cool if this character said this? Wouldn't it be cool if this character reacted to this?" To which I say, "Yes, yes it would. That was a very good, that is very cool. I am tired." or I got to put out the next fire. I got to do the next thing or I got a whole another town to do. You know, I I just when I when I play these games on streams when when when I'm selling them, I just I my my head is constantly screaming all the things I could have done. And if I was if I was Larry and if I was working on Balders's Gate 3, all of those things can be done. But as it is, I'm just trying to put enough into it so it feels and I'm going to use a word that actually become kind of kind of a pet peeve for me. It really aggravates me in marketing and yet it's sometimes it's hard not to use it. Rich.
I'm trying to put enough of it that the game feels rich. The story feels rich. But as in detailed, as in it feels real, as in it's engaging. But I'm I'm I'm old enough and cranky enough that I'm just going to start using the word good. Yeah. I mean, in my just to say, look, the story's good. I I didn't halfass it, okay? It's got a beginning and middle and end, interesting characters, and interesting choices. I got one. But I don't want to use the word rich because nobody knows what that means. Yeah. Well, how do you know how do you know when you've hit good enough? I feel it. It's a feeling in my gut. It's purely up to you, not your audience. That's a question. How And I've I've been asked this question before. How do you know when it's done? When how do you know when it when it's good enough? and to which I can only say, man, that's where the art is. Yes. You know, one of I have a friend who's a who's a professional artist who's his name is Phil Folio has been doing it a million years and he he's told me that like the art is in knowing when to stop, you know, at at getting to and you know, one of my favorite TV shows, Community,
but my f my favorite line from that is it's better than good. It's good enough. you it's you know you have to just develop a sense from and and for me honestly it is a physical feeling when I write a character when I write a story when I think of an idea and it it's correct and it works I feel like a sense of of craftsmanship of satisfaction of peace in my chest and that's when I know I'm on to something. It's it's, you know, it's go with your gut. In video game developing and in life, your your gut is a powerful resource and it'll tell you when what you're working on is the right thing or the right thing for you. Bear in mind, if it's perfect for you, it may still fail. But you ha but it's the only thing you can do when you're an artist. You have to do the art that works for you and works for your process and that you can get up in the morning and stand to make it. Yeah. I mean, um, you know, indie
games so much is about finding the next hot thing and trying to copy that thing before everyone else copies that thing. And that's some people's process. I don't it's it's difficult to me to to to comprehend that. Um, I know there are people out there now starting their new Vampire Survivors Clone, and I I don't have a personal understanding of how anyone could start a Vampire Survivors clone. Now, if you want to make money, here's your hot tip. Start your awesome Vampire Survivors Clone in about I'm going to say 2032. Yep. Someone is going to write a Vampire Survivors clone in 2032 and they're going to make bank and it'll be retro. You know, it'll be considered retro. You know, it's so funny you say that. I um there's a lot there's a lot of thoughts that are rumbling through my head when you say all this. Uh the first thing is is that certain things, man, there's so many things. Okay, first off, I feel like following your gut makes sense when it's your forte. But when it's not your forte, your gut is meaningless. So like
for example, I'm not a level designer. I am not I'm not a game designer in the like I don't know classical sense of like balanced mechanics. Um the level design is very polished and it it flows well and it's a nice puzzling environment. I had 10 levels done for Twisted Tower last year and we tested them with an audience and they just could not figure out how like they got so lost and my gut said it was fine, right? But then when we tested it, my gut was proven wrong. However, there are certain things where my gut I've learned through, you know, 15 years of making games, I've learned that certain things my gut is better than an audience's opinion. So stuff like story, atmosphere, mood, character dialogue, those are the things in music, those are the things that I can trust my gut. And so I guess my question to you is is
well, do you agree with that? that people listening now shouldn't just follow every gut they have, but rather they should learn where their gut is best in which lane their gut actually works in. Do you see kind of what I'm saying? So you you first of all, you used two words and I I'm just going to pick them out just to make um to answer the larger point. You use the word a game designer in a classical sense. The great thing about this art form right now is there is no classical sense. We still don't know. We still don't know how to make games. You know, God, how many $300 million projects have we seen blow up on the launchpad in the last year? As the the great screenwriter William Goldman said, nobody knows anything. Uh, you know, free your your you should free your own conception about what it means to practice this art form. We're all artists and we're all very individual. And yes, your your gut can can lead you to disaster and ruin. you know, and I
I'll keep bringing up Van Gogh. He sold one painting. I believe he sold one painting as in his entire life, and it was to his brother, you know, he just he just did his thing, man. And you know, it to it took the sometimes it takes the while the world a while to catch up with you. The um Yeah. And what what I heard you say is that your gut told you the level was okay. Yeah. and testing told you that it needed that there were confusing elements that needed, you know, some more polish and some more clarity, which is of course a thing that happens all the time. But what it really sounds like you're saying is that you're still you still have faith in the core idea. You still have faith in what you're doing. But when it comes to the story of the game and the atmosphere and the art direction, I'm all in. Like I know exactly what I'm doing. But when it comes to the design, not so much. Well, I that if you know if you you put your test your game in front of people and something really confuses them that that happens constantly and that's but that's
a polish issue. I see. You know it does have anything anything to do with your underall the overall mission the overall conception but you know maybe you needed to paint the ladders yellow or maybe you needed an extra bit of tutorial or this or that or there this door needs to be one way or something like that and that just always happens. That's just that's you know that's just life. And um and then by doing that you gain the design skill but it will it won't be a classical design skill. It will be your design skill because because you know you're an artist and you know in the end your brain will only allow you to do a certain certain things in a certain way. Gotcha. That makes sense. So you're kind of saying that people listening right now instead of trying to trace the chase the trends and make some commercial thing that they don't love the smarter bet even it's not even just like like woo woo motivational speak. It's no like it's a better marketing or it's a better
commercial decision to avoid making a commercial game but instead make the game that you want to make that's in your gut. I we're starting to get to the point where my own natural modesty is kicking in because you know I mean there's producers running around and there's like companies with massive budget. Like remember again when I started this is just weirdos in their basement putting stuff on floppy discs and trying to get them sold in kiosks at the mall. I still can't comprehend the size of the indies games business now. you know when when you know pick a large indie game company like was it cle is it is that how it's pronounced in in Vancouver you know they do okay so during the indie boom I was you know meeting you know I knew there was a guy you know I was in a city and I met a guy who writes indie games he had a really big hit and they outlaid a whole bunch of money and he had like a business like he rented huge fancy offices in in in the downtown with a view and there were desks all over the
place and there was headcount and there was grown-up business stuff and I'm walking through the store going, "Yeah, this isn't going to last." Um, I'm thinking that I'm saying, "Wow, that's really cool. Wow, that's really cool. Wow, that's really cool." And I'm thinking this here, man, you're in you're you're right into games. You're spending too much money. But the important thing is I'm not going to get say advice to a person like that, you know, um, like the like the guy who does Terraria, the guy who does Stardew Valley or Bolatro. These people crap bigger than me. I can't give them advice. But what I can do, I can't say what anyone else can do. But I can say what I did because I believe or emotionally I have to believe it's not true that the path that was open to me is still in some some sense open which is that I suppose you know in your heart of hearts you want to give it your give it your all to make a living or at least make some side pizza money writing video games. The best way you can start is with something you have passion about and something you care about, something you want to play because that is the comp when you will have a billion difficult decisions against ahead of you. And that is the com there is one
compass when you're lost in the fog. There is one compass that will never lead you astray. And that is your own passion and your own sense of aesthetics and your own sense of this is what I care about. This is what I want to play. I have said it again and again over the years. I write the sort of games I want to play. If that ever fails, I will quit this business and I will sell shoes. I can only write one sort of game. Sometimes I fantasize about writing others. Sometimes I think of other designs. I've joked years and years. I love twin stick shooters ever since Robbitron 2824 came out in the 80s. I have loved that genre. I would love to write some one someday. Don't think I ever will, but you know, it's fun to dream about. But I write the stuff that my brain compels me to write. I don't do marketing research because it's already been done. People like turn-based fantasy role playing games. So, I write write those. Sometimes I write one where then the players go where I try something new and the players go, "Yeah, that's this isn't really what I wanted. We're not going to
spend our money." And then I'll write another thing and and then they're like, "Okay, yeah, this you did better this time." Yeah. I found that to be true, man. Like I I've been through I think I've been making games for 15 years. Mhm. And I've been through seasons of my career where I tried so hard. Um I mean I was I was making this game called Brave Boy and it's about this dog with a sword and it's really playful. It's really cute. And I was making that game with this sole goal of like finding a strong hook and making it targeting a broad audience. It was like more familyfriendly than my typical stuff. And what's so funny is I released the demo for that game and it just like tanked. Like nobody cared. And what I realized was anytime I try and go in and make something commercial or try and make something that is modern for like a modern audience, it just flops. The only
thing that I'm good at is what I'm interested in and what I love. Like if I truly love something, it's going to be good and people are going to love it. It just naturally works out that way. And so I think I totally agree with you and I don't know if I would have agreed with you last year because last year I was sort of going through this mentality of like, okay, I need to be a big boy now. Um, I need to start being more strategic with my game ideas. I've talked to a ton of successful game devs. Like I think I tal I I won't say who, but there was several highly successful game devs, like four to$10 million in gross revenue for their games. And they would say stuff like, "You've got to focus on the idea and make the idea perfect before you move forward with the game." And what I found is when I get so focused on creating like this profitable game idea, I I maybe it's analysis paralysis, you just get stuck in this loop and you never really could fully get it manifested. Whereas when I say, you know what, I just really want to make like
Tim Burton style games. That's the kind of games I make. They have a Tim Burton flare. Sure. And they're kind of retro. Um they're retro in the sense that like 90s and early 2000s. That's my inspiration. And I found that I just thrive. That's where I thrive. And I think I'm I'm not going to for my next game. I don't think I'm going to worry about the commercial viability of it. It's just I just don't think I don't even think that's a good business decision, honestly, because you just get stuck. Yeah. It's well, you know, and and again, you know, for for um you know, potential indie developers who are listening to this, you know, I have my messages. One of them is you're your your parents are ashamed of you. Um they're they're going to tell you they're not, but God, you know, when when you're their friends ask you, they they'll say you're a plumber. Um so besides that, it is very easy to get driven into shamed driven thinking, especially when you know, you talk to a guy who's, you know, made made five million. Suppose
you talk to a guy who's um to a person who released a game that grosses 5 million. G good on them. That's that's great. I'm I'm glad for them. But they did it doing what was right for them. And I have seen so many times indie developers who are old enough to achieve success but not old enough to gain humility. Mhm. Will will, you know, hold forth with their their one true path to success. And the the industry does reward that to a certain point. Because for example, if you want to make it in the business, sometimes it helps people be able to do talks at conventions or shows. To do that, you have to have a strong message. You know, people don't want to show up in a room to hear me go, well, you know, you got to figure out what works for you and don't let bully you. Except for the fact that, you know, I had an incredibly extremely popular GDC talk where I said exactly that. Nobody knows anything. It's a new business. We're figuring out new tricks all the time. And um because nobody knows anything, you might as well just
do if if you believe in your heart of heart something is what you should be doing, do that. Gotcha. Um you you will probably fail. But no one promised you a rose garden. It's a life in art. You know, almost anyone who tries to become a professional musician fails. Almost everyone who tries to become a professional writer fails. That is the way that that is a life in art. And that is something that you just you just have you just have to face and it's not going to be fair. The games that win, you know, luck matters. I've gotten very lucky breaks without which I would probably not still be here. I've gotten lucky. Um but I've also, you know, had the tenacity of the cockroach and worked and worked and worked at it so that when my luck arrived, I was prepared. That's right. You got to be there for what when the luck arrives. Exactly. It takes It takes 10 years to make an overnight success. So, let's let's shift gears and and talk about surviving um surviving in this
business. It's it's cutthroat. It's difficult. How have you survived? You said you have a cockroach mentality. Well, the most important thing that has helped us in uh in you know, it's been a lot it's been a tough couple years for everyone. It's been a tough last couple years for us. Oh, yeah. Believe me. Believe me, it's been rough. How I survive is is I have an enormous back catalog and a very passionate fan base. That's that's what carries us through because, you know, people played our games with little kids, grew up and had kids and play our games with those kids. And so, not only does it, you know, it carries things along, but also those people, some of those people grew up to have good jobs and so they can be my patrons on Kickstarter. You know, people giving us high high level backing on Kickstarter really is keeping us in business. And, you know, that's the you know, you but you always you always got to be looking for the next money truck. You always got to be looking for the next opportunity and trying to find a way to wiggle in there. Yeah, you got to have a lot of hustle. Um, what do you mean by money truck? That's an interesting phrase. Oh, okay. Yeah, this is um, so for a while
Steam was the money truck. Xbox Live was the money truck. Then, you know, Apple did Apple Arcade and if you get an Apple Arcade game, they'd give you a pile of advanced money and that was a money truck. Netflix would throw money at you. You're giving the service. Um, um, here here's a really classic. Bundles at the beginning were a money truck. Bundles don't really perform anymore. it does. But when Humble Bundle was new, if you could get in on the Humble Bundles, and there was a bunch of different bundles, and there was only like three of them that would make any amount of money, you'd notice. Groupies, Humble Bundle, and one other the other ones are gone. For a period of time, that was a money truck. It was a place where you could show up and a truck of money would come and truck would come up and dump money on you. Yep. Epic free games is currently a money truck. I have no idea what you would do to get in that or how that works. I had an Epic free game. I was really happy about it. We got got a check and then recently Epic let us know Epic has no interest whatsoever in any more of our games. I was surprised they had interest in one. Um but yeah, that
that Epic Free Games was a new money truck. I it was throwing the money around. I managed to get some of it to splash on me. iTunes when it was new was an enormous money truck before it became the most the most competitive environment in the world. We did great on iPad for a few for like seven minutes and bought my kids braces. Um, so, so yeah, there are fewer money trucks, but you know, when one shows up, you got to, you got to be ready to see if you can get a meeting in the right hotel room to get some, you know, when a venture capitalist wants to splash around a dumb bunch of dumb money for their dumb idea. Oh, I know. Yep. Then you want to you want to see if you can get some some venture capital idiot money to splash on you. Yeah. I would say that publishers publishers can be money trucks at least five years ago. Um because tons of money comes from these higher up behemoth, you know, mega corporations and it funnels down into these small publishers. Yeah. And it was it was for we didn't get it obviously, but we're fine. You know, we had our own thing. Kickstarter.
Kickstarter is our thing and that Kickstarter is our publisher. And that's great. So, we keep going by having, you know, a back catalog and we hustle and we work hard and we make lots of new products and we're really nice and we talk to people personally. You put all that together and that's and and and that's our thing. You know, we survived long enough that a certain point once you get a back catalog, you're if you're and you and you and you treat your back catalog carefully, your survival can become self-perpetuating if you have a certain a lot of hard work and a certain amount of good fortune. I think that this idea of a back catalog is interesting to me because it's kind of um I think a including me I think a lot of game developers are so short shortsighted they think if I don't if I don't make like a million dollars in the first year it's not worth my time or if I don't make a h 100redk in the first year on this project on this game it's not worth my time but for people who have been doing this I mean for you it's been 30 years for me I've been able to
see how long like how long how much money do I make in seven years from a single game? I've been able to see that and go, "Oh, wow. It kept paying. It kept paying out year after year after year after year." And so it sounds like what you've done is you you realize that these games would have this long 10-year tale of And it might be a small drip of income like 200 bucks, 500 bucks a month, I don't know. But when you stack them and you keep stacking them. That's right. That's right. So you just said, so you said, you know, some people say, if I don't make a million dollar, if I don't make $100,000, I'm going to I'm going to bail. And what some people are watching this now are they're expecting me to say, "Oh, no, no, no. Follow follow follow your dreams like a like a butterfly soaring through the sky. Don't let let everyone pe people tell you no." One of the hardest questions to answer if you sometimes most people who pursue a career in art will fail. And that I'm not I'm not I'm I'm not even going to lie. I Why would I
Why would I lie about that? Because if I did lie about it, you would immediately know I was lying. Most musicians fail. You do need to at some point come up with a condition, a point where you can give yourself permission to say, "I tried it. I'm proud of trying it. I did it. Not working out. Time for the next thing." So if you work your butt off and for your year's work you get $100,000. Some people in the world $100,000 is an amazing amount of money. Some people it's not. You know, you you have also have to ask yourself how much you could make working on a real job with the security of a real job. So you know when you if here's and this is non-ironic advice for people who are watching this and not sure what what you're going to do. Think for a minute and answer the question when do I think I would give myself permission to move on to say that the dream the the the I will become a
hobbyist and I'll get a real job and and sometime and but bear in mind that's a personal answer. I saw a GDC talk from some people who who were like, "We're so proud. We sold our we we hold our house. We live in our car. We do inter itinerant farmwork, but we managed to get our game on iTunes. We did it. Hooray." And we're I'm at dinner with the under other indie developers that night. And I'm going, "No, what what lesson was I supposed to take from that?" You were in living in your car. you know, that's that's not a viable long-term strategy. I'm not I'm sorry. You know, if if if your life plan if your business plan in if you write your business plan and on risks is carbon monoxide poisoning. Look at your options. And but then you know these people, they released a nice game and it was it it became an iTunes
featured game. So, I'm sure that the car time was in the end justified for them. But on the other hand, it occurs to me I never saw another game from them. So, maybe they're out there, you know, going great guns or maybe they took a wrong turn somewhere and got kidnapped by hillbillies and and and they're in a mine somewhere. I don't know. Okay, this is and I really want to say this. If you say that you will pay any price to achieve success in your art, you will eventually meet someone as sure as God made little green apples, you will meet someone who will try to get you to pay that price. When you say I will give pay any price to get this, you have put yourself in a very dangerous position. So, you know, accept right now that it might not work and be ready to be at some point you might have to put on your parachute and bail out of out of the plane with your dignity intact and just and just know that you are just by trying. 90 90% of success is
showing up just by trying. There is a great honor in joining the lineage of human creation that for all of human history there have been artists who tried to um to to create and and a lot of them failed. But my god you tried you you prayed to the muses your prayer was not answered but you tried and that's noble. Yeah. You know like there like like you know there are there there are paintings in caves you know think about how bad those artists felt. You know, they tried to become a painter and the people in their tribe looked at their paintings and went, "These paintings suck so much. We're going to move them down in a cave where no one's ever going to see them." And have you seen those painting cave paintings? They suck. It's like deers, but they're stick people. They They look like crap. No wonder they moved them down into the cave. The real paintings that were good stayed above ground where they got rained on and were destroyed. It was the cave paintings that survived. I think there's a lesson in that for all of us. I love that. That's brilliant, dude. So, let's see here. Um, let's talk about making your
own engine. All right. So, not and I I've talked to Jonathan Blow as well and he he he makes his own engines and I'm I am fascinated by people like you guys because it's already hard enough to make games. It's already incredibly difficult. I'm using Unity and it's so hard to make games, but I'm not making my own engine as well. So, I want to know why on earth are you making your own engines for your games? Lot lot of moving parts to that question. First of all, I I want the source code. I'm in this I'm in this for 30 40 years. I must control the source code so that I can port it to the new computers so that I can remaster it, so I can do this, so I can do that. So, if you have the ability to create the source, hold on, create and hold onto the source code, that is enormous financial advantage over the long term. Second, remember when I started in 1994, there were no game engines. There were barely development environments. I had to do everything from I was lucky to have C. I had to do
everything from scratch because um because there were there was there was nothing else. And and so like Jonathan Blow, he's an old he's like me. He's an old-timer. Um if I started now, yeah, I'd probably learn an engine because why not? Um, another reason why I keep doing my own engines is because one of the things that people are most surprised about, the probably the things thing I say that surprises people the most. I I I don't actually enjoy my job very much. It's a job. Um, I stopped enjoying my job about 2 months after I started my first game in about the September of 1994. I spent the day doing it and I was like, "Wait a second. This is work. It's It is. I've been dreaming doing this since I was a little kid." And I I I didn't realize it was work. Y um and and it you know thinking all day it you know it sounds stupid to say it's tiring but it is tiring. Um you know the brain is a muscle like anything else. It gets tired like anything else. So I have to hold on to as much fun as I can. Like
I make the trailers for my games and my trailers look like crap. The the only reason my my trailers look good at all is because one of my artists makes animated logos and stuff like that and he's a very skilled animator and so he makes some stuff. So, it's not completely amateurish, but most of it's amateurish, but I make my trailers because I find it fun. And I hold on very tightly to anything in this job I still find surprising and fun. Writing engines is fun. Like, I use my own scripting engine. Um, I I completely rolled my own scripting engine. That was a What does that mean? What does that mean? Scripting. What does that mean? Uh, okay. So, I I'm from a different era or something where like and there's a game engine, but like what's a what is a scripting engine? What does that mean? Um, oh, okay. So, so most uh for most most people play um games still use use scripts, which are tech, you know, it's text files. It's like all of the statistics for the monsters and the items are a script. You know, it's just a text document with the stats. When you go into my town, each town has two scripts for it. One is
special encounters like like you move a space and something happens and one is for dialogue where when you talk to people. So when when you talk when I write the dialogue for a character I open up my text editor and I write in this little sort of programming sort of language I made up the the the dialogue but it's written in C. It's its base is C. Uh C++ C++ but the scripting engine itself uses my own syntax. Okay. which is like C if C was super simple and dumb. Huh. So, it's a it's a it's not like Visual Studio. Like you're you're talking about a a a it's hard to explain. The the game data is in scripts. The program itself is written in Visual Studio. Gotcha. The game program is all C and Visual C++ and V Visual Studio. But then for the dialogue I have to put the dialogue somewhere and I want the dialogue to be
in text files so they can be easily edited. And then I have to create a way to format those text files so that the computer program the game the program can load in the text file parse it and turn the dialogue into something that in the in the program. I see. So that's what you mean by scripting engine. Right. Got it. Okay. Yeah. So I I I'll do stuff like that as well, but it's probably much more basic than than yours. But um okay so so the engines that and then we could pull these up in a sec and we can take a look at them. I'd love to see your engines and how your games are put together. They're they're effectively built in C++. Right. Right. Are these engines that is it one engine or is it multiple engines? It is all the same but it is very heavily forked like I the first game that I wrote in 1994 Exile Escape from the Pit basically evolved. you know, I expanded and I expanded it and expanded and then finally I got to a point where I wanted to write another game called Nethergate. And so I took the engine, made a copy of it, and then I completely changed everything to make it Nethergate. And
then I I wanted to write a Vernum, which was a remaster of Exile. And so I took the the Nethergate code and I forked it back and turned that into a Vernum. And then so now I probably have like five different engines that are all extremely similar. They all came from the same base, but I forked them and rewrote them in order to um do what I needed for each specific game series since the the I come up with the story first and the story tells me what the game needs to play like, what the what the combat needs to be like and so on and so forth. But yeah, as much as possible, I write and then I for my graphics and sound engine, I use something called SDL2, which has been turned into SDL3, which is very low level. It's a very thin layer between me and the graphics hardware. And then that is also open source. So I own I control everything. Um I have every character of source code for all of my games. Sure. And I I I
think I think it's certainly um it's impressive. I would say that does what's it like porting to things? So like if you wanted to port to mobile or have you have you ported anything to console? Uh okay. So, I'm I don't think I'm ever going to do consoles. I don't think I really write console games for a long list of technical reasons. Um, partly for technical reasons because it's hard to do um console games with tons of text. Partly because um for me to get on consoles, I'd have to do localization and localization would be super expensive to for me because again, tons of text. So, consoles are probably out. I all my games come out for iPad. A few of them have come out for iPhone and for porting. porting now is super fast because I've done it so many times that I've written basically sort of cross-platform libraries. So, I just need to change a small amount of code to turn the Windows version into the Mac version. I need to change a slightly larger small amount to turn the Mac version into the iPad version. Um I if I really got up early and drank a lot of
coffee and grounded and ground that day, I could make a Windows port of my game in a day because I don't feel like working hard. I do it in a Windows port. Are you working on Windows? No. Oh, I write my games on Mac for starters and then I write and then I port them to Windows and I release them like that and then I port it to iPad. Interesting. Well, let's pull it up. Let's take a look at it. So, this is a Vernum for greed and glory and I'll show you just my u my development environment. Now, um, this is all basically directly expanded code from the first editor I wrote for myself in '94. It's way way nicer and fancier now because in 1994, you know, I had a 640x480 monitor and '94 and that was a huge monitor for the time. So, the the world's changed completely. So, like it's not teensy anymore. To the left is the terrain area, which is where I draw. And so, now just for the heck of it, I'm going to put a pile of of ore there. And
now I'm going to delete that. Down here is the information about the section, the information about what I'm selecting. So, right, I'm just So, this is like the information about the town, what color the walls are. This is what the name of the script for the town is. Um, and then here's a door and here's a wall. They go over to the right. Here's the buttons for editing things, which are based on the button designs of a program called ClariS Works, which was the main Macintosh text editor and image editor in 1994. Below here's a little mini map for moving around quickly. And then then there's the different instances in the game. There's the these are the floor types. These are the terrain types. These are not interact withable. They just sit there and look pretty. Over here is the objects. And I can mouse wheel up and down. And these are things that you can interact with like books and stuff like that. But they're also stuff they like to ship shift around in the spaces like like chairs. And if I want to place a item, I
have pull down menus up here. And if I want to place a creature, there's pull down menus up here. Now, oh my word, this is going to look really unwieldly and slow, but I have 87 million keyboard shortcuts and tricks and copy paste and stuff like that to be able to edit quickly. So, I have been like smooth. It's a very archaic seeming thing, but because I've been working with it for 30 years and tweaking it, I can create content very quickly with this. Yeah. Where I get into trouble is not once but twice I have written scenario editor systems. One was called Blades of Exile and one was called Blades of a Vernum, kind of a remaster where I could let users make their own scenarios. They'd send them to me and I'd make them available on my website. The first one came out in 1998 and it really caught on. like a lot of really creative, hardworking people made scenarios and they're still available on my website. Like of exile is open source now and there's a guy out there who's working really hard to make it nice and polished, which is which is super cool.
Um, but the problem is that like it's really hard making a system that other people can use, especially when you're used to something really wonky with shortcuts only. I understand. So making it a scenario editor was an enormous amount of work and um I just I never wanted to do it again. So, I stopped I stopped doing that because because it was very much the opposite of fun. Here is Hey, let me ask a question if you don't mind. Um, that dropown menu where you can add characters and stuff. Yeah. Is that like it's adding sprites or is it adding classes? It is. Okay. So, there's 256. Sorry, there's around 300 creature types. And so, I'm gonna pick, let me pick a monster. I'm gonna pick a brain rat. And I'll select that. I'll click here. Boom. Now, at this location in the game is a hostile brain rat. I'm go to its attitude and I'm going to change it. Now, it's friendly. Now, the outline is blue and it says friendly here. That means it's a friendly brain rat. It'll fight on your side. Um, and then I can change it facing it. I have to like the
camera is blocking the the my setup is weird. And then there's all sorts of things you can set for it. These are memory cells which are values that the script for the creature can reach. So, for example, suppose I want it to never be able to move. I select this and I would set this to two. Now, when the script for this creature is loaded, when you enter the town, um the script will say, "Hey, what value was in memory cell zero?" And then it'll get a two and it'll say, "Oh, that means the creature never moves." Um, so that's an example. And, um, there's Why does it Why does it mean that the creature never moves? Because that's what um that's what the script knows it means. Um, let me let me bring up I got you. Oh, man. So, this is like a really this is like Jeff's world and so this there's no way I would understand this jumping into this. Exactly. So, when I made Blades of a Vernum, I made it with a really with this scripting system and it's really powerful and it was but but you have to know how to program and most people
don't where the Blades of Exiles did not have a scripting system. It was a very simple system of just placing walls and putting monsters and very simple special encounters and people learned it very easily. Made tons and tons of content. Now to to do what I do, it has to be complicated and I just don't want to do editors for it anymore. So this is a script using a scripting editor written by me. You'll see at the top it says basic npc.ext. And so this is the default if I don't specialize a script that is a script a creature has. So now when this creature is created it runs the code in an it state. And you'll note it says if get memory cell z equals zero. So when it says so this is run inside the game. The game loads this text parses it and follows these directions. So the game says okay I've entered a town there's a brain rat here. What do I need to do with it when I initialize it? So it goes and it runs this this code and it says so look at get memory cell zero which is here. What's the value? Two. Oh, if it's
equal to two, set walk speed to zero. So that is how all of the steps for me to make a creature permanently immobile. Is there a dictionary available or like a documentation for this so you can reference it or is it all in your head? A dictionary. Okay. So now if I'm going to go into my folder um so this document is called the Vernon for scripting guide and it lists all of the script calls. You can see that there are a lot of them. Um, for example, set new ability, so I can give this creature a customized ability. Um, set scaling, so I can set the creature size in the engine, like I can make it the icon 50% smaller. Um, for if if for the script I want the creature to depend act differently depend on where the zone it is, it can check for its coordinates. Um, uh, if a script is an object that's a trap, there's a damage nearby function that I can use with, if I wanted to, I could say make a chest and give the chest a script and say when you open it, when
the open section is called, the chest just kills everyone nearby. And I could use a damaged nearby thing. That's how I program traps. Um, you see there's a lot of it. Now, you will note that none of this is commented. There is no documentation. That is because, and this is going to be one of those cute little time-saving things since I'm the only person ever works with this code, the fastest, most efficient way for me to find out what any of these calls do is to just look at the code. Yeah. Um, and no, it makes sense. Seriously, I I I've created a bunch of GDDs and reference documents, and I always end up spending too much time making them, and then I don't even reference them. I'm just trying to be professional, but I don't even use them, you know? Yeah. So no, I am a fiend for commenting because this is my program. It's like 50, 60, 70,000 lines and very frequently I will get myself into a position where I have to go back and comprehend and tweak a very complicated piece of code I have not looked at in 15
years. This is my life. So how do I deal with this? So this is the hairiest command in any of my games and it's the do move. it is the a creature is about to move in the game and in a Vernum 4 it's it's sort of a stepbased movement um so it's a lot simpler my Gene Forge games have animated movement and it's a lot more complicated but the reason I'm bringing this up is to show so show so show so show so show so show so show so show so show so show so show this is every creature is in the um is in the class active creature data type um I'll show you something hilarious in a second and this is do move and this is you know after all the variables have set every turn I call do move for every creature and then they see if they have a goal and then they move towards it. The reason I'm showing this is to show you my commenting. So this is describes what it is. It's very brief. So you will note comment comment comment comment. So I'm not don't go crazy with the commenting like
this is the one comment for this big old chunk of code. But I don't go too you don't want to have too much commenting because you want to be able to actually see the code. But you want to have enough comments so that if every for every seven or eight lines of code, there's just a very brief sentence saying this is what you're looking at here. Um there's a bunch of it. This is like something commented out because it's something that is not in this iteration of the game engine, but I might bring it back in the next iteration. And is all is all of this uh Jeff is all this handwritten code or are you using any kind of AI stuff or anything like that? So lately in every once in a while in advertisements I um I see someone brag that our that their game is is handmade or everything is handplaced and that's always vexed me because it's not like I'm I'm manipulating the editor with my nose or slapping at the keyboard with my flippers. Um, that's a that's a that
complete side point. Just had to get that off my chest. All handcoded. Yeah, I just wrote it all. Um, I don't obviously I'm never going to use AI for coding because Jesus Christ, why would I do that? Um, that's just going to make that's every every minute I save on that is going to be one hour of debugging. Um, I'm not worried about AI taking my job soon because this is extremely finicky bespoke code. It's a complicated game. It's um, you know, I know like looks super crude and super low budget. Even a super crude, super super low budget turn-based role playing game is a going to be a very hairy chunk of code. Um, so yeah, and so this is the movement code. You see there's a lot of it and you know there's a sprinkle of sprinkle of code throughout. There's sometimes something that's all commented out because I want to remember that that's something I need to know a different sort of engine and so on. So this is actually very short for a movement call. The the one in Gene Forge where it's animated movement is is way longer than this. And this is C++, right? Correct.
Uh but it's very simple C++. C++ is a language that gives you all the rope you need to hang yourself. You can make things incredibly complicated. And me, I make things as simple as possible because I'm going to have to understand I can't dump it on myself. I have to understand it later. So now I'm going back to this is the oar.cpp CPP that so this is the um file in over here is all of the files in the program. This is the file that handles creatures. And so you'll notice this is you know I'm going to you're going to hear the blood cells popping of of professional programmers all over the planet. It's all externs of all like this is the game data. This is the character data. This is the object data. This is projected data. Everything is external. Everything is global. There is a tiny bit of I do that too. Yeah, because why wouldn't I? It's just me. Who am I defending myself from? If I hurt myself, I have nothing to but myself to blame. So, I could put
accessor functions for all this nonsense, but it would create an enormous amount of code bloat in various ways and save me absolutely nothing. How is the what's the what's the editor's code? Uh, same thing. It's it's just it is a C++. It is a separate C++ program. Um, okay. Obviously way way way smaller. It's a it's compared to the main game, the editor code is baby. Uh, but but it's still it's not complicated at all or at least how how do you edit that? Is is is it the same thing? You open it up in Xcode and then open it up Xcode, make the changes, build it. Can I can we see the code for the editor? Okay. And this is the editor and just compare the number of the files. Sorry, let me rearrange the order and you will see this is how many files are in the program and this is how many files are in the editor. And in in addition there are fewer files and they are much much shorter um much less complicated. Yes. Yes.
which which is good, you know. And um here's the what's the what's the um file structure like I have no idea how an editor is written. No idea. Um what's like the first Okay, so let me bring up how would I get to that quickly. So this is I have two this is ah file. This is all my headers. This is all my data structures. Again, nothing fancymancy here. I'm importing all of the SDL libraries at the very beginning. There's a um you see a billion defines. I love using hashtag defines. If you have if you want the editor, right, or something like that, then I strongly suggest not the editor, right? What? Oh, it's the same file. Some of the files are completely shared between the two. So if I edit this file here, it'll be edited for the editor too. Like this file is
shared between the editor and the main game just a lot less mess and fuss. Yeah. So So here's the this is these are the two basic location structures. One is for game wrecked. Um it's which which is the rectangles are stored as ins. Why not longs Jeff? Because longs take a different number of bytes on Windows and Macintosh. So you can that's a that's a way that things can explode when you're going I don't know what a long is. It's an eight on a Windows it is an a four byte integer on Macintosh it is an 8 byt integer. Okay. Oh so you can't go over four. Uh window on Windows you can go over four but you have to do I can't remember off the top of my head the name of an 8 by or a 16 byt integer on Windows but it totally exists. There's all sorts of crazy stuff you can do. Uh, okay. So, here is something you change in the editor. So, suppose an object, for example, an object is a chair. Suppose I place a chair in the game.
Then, it's going to look for um I have a list of placed objects. It's an array and it would find a free point in the array and it would place the chair. It would initialize the type, which is there's a list of possible objects, and the chair has one of the number say the chair is maybe object 1 or 58 and the list of objects that can possibly exist. put that here. It would be assigned an ID, which is an unique number that identifies every object that I use for accessing it in in scripts. There's the location where it starts in the game. And this is its own type because I have to remember there's two floors in every dungeon, so I have to remember what floor it's on and where it's positioned. The name of its script. And these are all things I can edit. I'm going to select since I said chair. First, I'm going to delete this mouse since I don't want it. And then I've just noticed. Okay, here's a chair. So, object chair, it's object 105. So, in the list of objects in the section, this is object number 105. It has a unique ID
which is this. It is object type 158. So, these are all the objects and you can see I selected here object 162. So, here this is object 158. So, this is this sort of chair. Let's go back. This is the script. It has the default script. Chairs don't do anything. So, so the default script will be a null script. It'll be just empty. And then there's six memory cells. If it gets a script, these can be accessed by the script to tell you special things about how the object behaves. And finally, every object has this destroyed or not destroyed state, which means if destroyed, there's nothing fancy. It just means it looks all smashed up. So, can I ask you a question? Sure. Um, how does it look in in play mode when it's when you've built it? Does it look like that? Oh, yeah. That's a very good question. Let me run the game. Yes. I That's what I really want to know is like what I'm looking at now is a grid of information. Right. Okay. What I'm going to do is I'm going to open the game.
This is choice pres um exclusive content. Totally different. Yeah. Okay. So now Oh my god. Yeah. It's like I should show what the game looks like. So I'm in world coordinate. I'm I'm pointing it at with my finger like a very smart person. So the cur cursor here shows the coordinate of this location in the world. It's 14525. So I'm going go in here. I'm going to bring up the deep de my debug. This looks really pretty, Jeff. Right. Port. Thank you. 140. And it should teleport me to that spot. There it here we are. Okay. So it's it's a little dark cuz we don't have a torch lit, but you see. So over here you can see there's two ovens. Here are the two ovens in the game. What? Here is the chair we were just looking at. Here is how that chair looks when we're in the game. Now note, you're probably note this is sort of an
isometric 3D view. This is a very straight graph paper like 2D view. How do I take what is this and process it in my mind to get an idea of what it's going to look like when it's drawn in more 3D? And the answer is that I have been doing this for 30 years and have gone slightly mad. I have in I have suffered a sort of low-level brain damage that lets me look at this nonsense and this is a mess. It's like you see an oven takes up four spaces. It just draws four little ovens. But this is like so here's some rubble on the ground. The rubble on the ground in here looks like this. The world's kind of dark. I apologize. So I have trans I when I look at this, it only takes a moment to trans look at this and imagine what it will look like here because I've been making these isometric games with this engine so long that I'm used to it. But if I wrote an editor system like my old Blades of Blades of Exile games, people who would be using this editor,
and I experienced this when I did Blades of Exile, Blades of Aver had a really hard time. So they actually I open sourced everything for the editor and people wrote special nice 3D editors where when they edited it here. Oh, that's great. And I considered doing that, but I didn't because I'm so used to this after working on Why not? for so many I've worked on this for so many years. It wouldn't be faster for me. So, what's the how does how is the lighting handled, Jeff? Um, incredibly simply, it's um it just the game is capable of casting a ray in in engine from a location to a location and then it looks for a lighting source. So, you can see there is a lantern here. Um, look, it's nice new human art that our my Kickstarter backers helped me pay for. Bro, there is this is so pretty. Like there's something beautifully retro obviously about it. Yeah, it looks I'm actually really happy with how it looks. I've spent a fair amount of time there's
a lot of wonkiness in the previous games of inconsistencies in scale and coloring that made it look always a tiny bit off and now it looks a lot better and and so it's enough detail that it looks attractive but enough not detail that it gives your imagination room to work. Mhm. Um, so this is a lamp, a lantern. It's placed in the game. I'll I'll scroll down a little bit here. And you can see here is that lantern. And when you load this section, the script will say the lantern sends light out to a readers of about eight spaces. So, it's going to cast rays out from the lantern. And you can see it tries to do a ray from the lantern to this spot. This wall blocks it, which is why the space is still dark. But here the it's free so it can see it. And now I'm going to run I'll run outside really quick because it's all one giant continuous world text description that we don't need to see because reading is lame. And now I've left town. I'm out in the world. And this is very similar to Ultima 7 in that it's one seamless world. I walked out of
town and now I'm in the wilderness. And look, there's like this looks like it's probably a ruin cuz Oh, it's it's lockpicking. I have a little lockpicking thing. You can see there's rocks everywhere. I'm not 100% happy with how this terrain looks. I don't like mixing these two rocks together. I normally try to put these trees on a floor that looks less sandy cuz they look slightly odd. I'm not really happy with this terrain, but this terrain is at about 80% into the game and nobody is going to see it. So, so this terrain gets to look a tiny bit wonky. that if I go back to this is near the front of the game. I mean, it's not terrible. It's just to my designer's eye, it looks strange. Um, hey. Yeah. I I don't I don't I don't know if it looks I I think I kind of like it, but I I have a question, which
is um Sure. It seems like you've built a system that is kind of locked tight from bugs. like just because you've been built you've built it for 15 years and you've got all these components and effectively prefabs. I don't know a better way to say it. It seems like you've just got a bunch of stuff that's been that could just be used ever in new games, reused in new games, and so they're just going to work, right? Yeah. It's it's the my process has gotten very clean. The first 101 15 years beta testing and bug fixing was a nightmare. But part of it is that I managed to come up but it's gotten better because for I've for two reasons. One I there are some things that are just finished and work like the scripting engine. The scripts just work now. And part of is that I'm a better programmer. I've I like when I'm coding sometimes I will
start working on something and my spider senses start tingling and I'm like I have to do this very carefully and I have to watch out for this mistake because I remember very well in 2005 I made this mistake and it cost me days of debugging and so I you know that's that and and thus you know I I learn and so it gets better. Beta testing is still a hassle but it's far less of a hassle than it was before. And also my beta testers are super experienced and they've learned they know the sort of mistake when I do make a mistake they know what mistake is that mistake is going to look like and then they can help me spot it and debug it together. Can you can you show us the art in Photoshop? Uh let me see. I think Photoshop might be I can launch Photoshop. My my Mac really needs to be replaced in I hope everyone's enjoying my pores. Um the yeah the la I think the last thing to sort of wrap up here is I want to see how this art looks like it looks beautiful in it this very clean
isometric everything's the same size. I'm curious how you handle the the the sizes of the canvases in Photoshop. Is it all very precisely sized? Um I've been working on screenshots. Okay let's bring up the items. Okay, look. Look at the first the spinning spinning beach balls got to go away. So you get so you you hire out artists and they create these sheets for you or I have several freelance artists and I license like there are a billion licensable art resources on stores online and it's and and a lot of it is icons I've made before. So what I do at the beginning of each game is I carefully plan. You know, I got a budget and art art is expensive. Bespoke art costs a lot of money. So I'm really careful to make sure before I get something bespoke, it has to be bespoke. So for example, my human art system is getting completely redone. So but it's really the guy who's doing it is super
good. And you can see this is an overlay like a paper doll for humans who are wearing peasant clothes. Can you zoom in for me? Sure. And there's six animation steps and eight facings. So 48 icons. And this is for the norm. You can see if you look at the top it's the normal I it's it's pe 01 peasant wear normal idle. So if when the when a human peasant is in male is in because is in its idle state it'll play a sixstep animation and this is the clothing. Now I'm going to bring up and this is something I don't think anyone's ever seen is the is the items. Um so these are all so there's items and objects. items. Objects are things that sit on the ground like chairs and chests. Items are thing you have in your inventory. So, this is all of the item art that is in the game over here. Let me Sorry, I'll zoom in. So, here's a bunch of boots. Here's a bunch of belts. Here's a bunch of helmets. So, there is a great deal of
wonkiness in my item art. It comes from a million different sources. There is a lot of inconsistency of style. Little by little, as time goes on, I'm trying to bring it to a better, more unified style. But as it is, you know, if it's better than good, it's it's better than good, it's good enough. So, here's a ton of weapons. This is what it looks This here is what it looks like on the ground in the game. And here, the bigger version, is what it looks like in your inventory. So, I'm going to bring up this guy's inventory. Here is let's say a a here's a potion. Okay. So, right, this is what it looks like in the inventory. I'm going to take it, move it to the ground, and you you couldn't really see it, but there's a cute little animation. And though there's what it looks like on the ground, and then here's a billion little these are all incidental items. These are not really the only there's a ton of items where the only reason they are there is to is environmental storytelling and to flesh out the world.
It's a very like Ultima 7 if you're interested in ancient history or Boulders Gate 3. You know, Boulders Gate 3, the world's full of boxes of crap, but it it's not it's it's doesn't have an in-game per like this net here. This does not have an in-game purpose. You can't pick it up and catch fish. Though that would be cool if it was a usable item. If you were by water, you could get fish. That would be neat. And it would take almost no time to program. I'm tired. I'm so tired. But um but if I put nets and a barrel of fish by a river, it tells you something about the world. It doesn't mean anything, but sure, it does things. You know, you can that is the art of the thing. This game is full of tons and tons of stuff that has no gameplay value what it's do, but it has emotional value. is creating the image in your head of what this world is like. Yeah, that's especially important with these kind of isometric retro games where you're trying to do world building
and do it in pretty much the only way you can. You either have to describe it with the text of the dialogue or you have to put something into the world. Yeah. And and so, you know, it's it's part of, you know, I'm I'm trying to get, you know, every drop of juice out of the lemon. I'm leveraging every possible thing I have as much as I have to make this world feel like a place cuz that's the product I sell. I'm selling the ability to wander around in a in a in a as realized a world as I can make. Yeah. To um you know to create the purpose of the game is to create an emotional of any video game is to create feelings in someone to create an emotional state in another human being. Um Dark Souls does this in one way, my game does another way, your guy game does it in another way. But that's what art does. You're when you're making art, you're trying to edit someone's brain and taking something in your brain and move it to theirs. And so every little
one of these details when I put in a So when I you open someone's dresser and you find a mirror and a pot of makeup and a comb, that has an effect on your brain. Does it have gameplay value? Yes and no. You know, I mean, it changes the way you see the world. So, it changes the way you're going to interact with the world. That's gameplay value in a sense. So, let me ask you this one final question here and then we'll wrap up. So, I got to run in in seven minutes. I can hear my kids about to come in my office. They always come in right at 5:30. I understand completely. One final question. What is different about how you're making this game than the games made in the 90s? like this different in what sense? I guess what I'm asking is is this is this about as pure as it gets when it comes to like how games were made in the '9s? I think so. I mean, a lot Okay, so games
in the '9s were ramping up to a modern setting, but at the same time, in the '9s, a huge setting, aa setting setting was like 20, 30, 40 people. I worked briefly on Microsoft on a on a um on a major big budget product, but every person who worked on it could fit in a small room. You know, everyone knew everyone on a firstname basis. Like, you know, Roller Coaster Tycoon. Have you heard of the story of the creation of that game? Oh, no, I haven't. It it was one guy and he made this entire game and it's just it's an incredible an incredible masterpiece that game and it's a lot. It's isometric. It's tile based. And I'm curious, it's like, are you making games in 2025 the same way a game like Roller Coaster Tycoon was made, you know, or like the original Age of Empires games? I honestly know so little about the world and how things work in the world that I honestly I I
honestly couldn't say. All I know is that, you know, since I'm alone in this room fighting with my computer, it my process is incredibly individual and no one else will have a process like mine. But there are so many massive hits that are just one or two person teams like we just had Bolatro and just mixed Botro and Stardew Valley or Undertale. You know, these are one man bands that, you know, they have get help from other people, of course, but these are very much single sing a single person's vision. And there will always, as long as one person is able to master the tools to make these things, you're always going to have lone tinkerers, lone japetto lurking in their homes, you know, making making these making these delightful, strange little toys. Yeah. I think um when I see this, I was thinking about how you market this and I was
thinking well and you know how to market your games, but in my head I was like he Jeff needs to tell people that this is all like it's like a time capsule. It's it's it's like a a handcrafted '9s game that was made in 2025, which I think is a really cool selling point. But then I realized when I look at it, it's obvious that it has that it it just looks like, dude, it looks like you could pop a CD in from the '9s and play this game. Yep. It has that in level of integrity. And I think that's really really cool that you didn't I don't know, you didn't like hit your wagon to the newest trends. You're just sort of stuck with what works. Yeah, pretty much. I'm a coward in a lot of ways. is I don't want to go out of business. So, I don't take a lot of risks. The thing is for marketing, if someone looks at a screenshot of one of my games or watches my trailer for 5 seconds, they know everything they need
to know. That's right. You look someone looks at this game screen you're looking at. This is all you need to know about whether you want to buy what I'm selling. So, my marketing challenge is simply getting the word out, is just getting daylight. So, for example, this uh you know, this uh being on this podcast, this I've really enjoyed this. This has been a lot of fun, but this is going to make me money. Yeah. Um and Balders's Gate 3 is going to make me money because it teaches people that this sort of game exists. And when they finish Boulders's Gate, um you know, they're going to start looking for other games like this and then they're going to come to Daddy. That's right. Cool, man. Well, hey, thanks for coming on. This was so great. Your process for making this game is so impressive. Um, well, thank you very much. I can kind of interpret maybe 20 30% of what I'm looking at. It's extremely complicated. It's simple to me, but it's because I've been my head's been in this for a long time most of my life. So, you know, but but I think I
explained enough to see that there is a a logic to it. Yeah. That it's just it's just seeing where the it's a it's a chain. You just have to see where the links connect. Yep. Oh, man. Well, dude, thanks for coming on. This was Thank you very much. I'd love to talk to you again. Yeah. And looking forward to seeing it. All right, bud. Take it easy. Same deal. Bye. Yep. Bye. Also, hey, don't forget to check out Bezi and their brand new feature, agent mode. It provides tailored suggestions specifically to your project and is capable of implementing changes directly into your existing projects. You can get started completely for free by simply clicking the link in the description.
Auto-generated captions from YouTube — names and numbers may be misheard.
Thomas Brush · 2026
Deconstructor of Fun · 2024
Comments