[Music] Hi everybody. I'm Zach Johnson. I'm the creative director of Asymmetric. Um 15 years ago, uh my company started working on a multiplayer web RPG called Kingdom of Loathing. Uh and last year we released our follow-up to that game, uh West of Loathing, which is what I'm here to talk about today. Um, specifically what I want to talk about is the tools and workflow and process that we had for actually making the game work because I turns out when I talk to people about it, it's weirder than those kind of things normally are. Um, so like for real work on the game started about two years before it came out. And in the year or so prior to that, I started out by just spending a bunch of time thinking about the the kind of game that I wanted to make, put together a document that was a really like just
preliminary description of what I was imagining the game was going to be like. This is how a scene is laid out. This is what interactions look like. This is more or less what it's going to consist of. Um, kind of had a vague idea of how big I wanted the world to be and what I wanted the main sort of story to be about. Uh, worth noting, I wanted the main story to be extremely nominal. Like, it has always kind of been my dream to play a Bethesda game that had no main quest line and just wander around a world doing side quests. And I don't think that we could have actually gotten away with making a game like that. Uh, so we just settled for making one with kind of a bad nominal main quest line. Uh, kind of letting everything else be the actual strengths of the game. Um, after I had kind of put it together, showed it to the team, everybody was like, "Yeah, we should make a thing like this." Uh, we hired a Unity programmer for like an afternoon to make a proof of concept. Uh, I handed him some sprites.
He put them in a 3D scene, made a little dude that could walk around in them, cuz we had no idea up to that point. Like this is the same art style that Kingdom of Loathing uses, but Kingdom of Loathing is kind of an illustrated Oregon Trail sort of thing where you just kind of click a button to say what you want to do and then it tells you what happens. See a little bit of that in this too. But um I didn't know if it was going to sell at all in an actual kind of diarama 3D space. And this prototype was promising enough that we decided, all right, we should definitely make this game. So now we should decide what this game is actually going to consist of. So, um, Riff, the other writer, and I, uh, got together at the office over a week or so at a big whiteboard and just started laying out like, "All right, this is what you're going to do in this game. This is what the world is going to consist of." And this will this will come back a lot in in various ways, both good and bad, that we kind of started with the giant world and what was going to be in it, and then sort of added story stuff later. Um, we
laid out the first uh the main quest where basically the first part is you have to find some dynamite to get through this pass. Second part is you have to build a bridge and the third point is that you have to deal with a sort of crazy bureaucrat in San Francisco to let him to get him to let you build the railroad the rest of the way in. Uh, and we wanted there to be because we wanted to sort of diminish the importance of the main quest, we wanted there to be a lot of different ways to get through each of those. We also wanted you to be able to get through it without combat if you wanted to. um that became much more of an important goal as time went on, but it started out as like, well, it should at least be possible if you know what you're doing to get through this without fighting anything. Um, and so we just sort of had this list of a bunch of different ways that you could solve each of the each of the main uh quest line segments. And we more or less stuck to this. There's definitely some stuff on here that we didn't do or some stuff that changed over time. And I think the bottom one on the third list says Cthulhu's butt, which
that's not a thing I think we ever intended to put in. It must have just been written down as a joke and I forgot to edit it out of the photograph. Um, so then we kind of divided the world map up into nine sections. Later, one of those sections was cut for scope and then we pretended we were leaving space for DLC. uh decided, all right, in each of these sections, what sort of individual areas are you going to be able to go to? And we kind of had this list. All right, so in in region A, which is the kind of starting area, there's going to be there's going to be a couple of uh camps of robbers that you have to go arrest. There's going to be a ranch. There's going to be a fort, couple cemeteries, a uh clown area uh for the circus progression thing, and a mine. And we essentially just laid out all nine of the regions and decided, all right, this is the kind of thing that is going to be in each of these. Um, and then we kind of had like, all right, this is the scope of the game. There's going to be a hundred places that you go and each of them is going to have some like, you know, monsters to fight, some items to get, some little puzzles to solve, a little bit of whatever. Um,
this next part gets like a slightly weirdly out of order because there was not really a good order to do it in. So, like once we actually spun up at this point, all right, we know what this game is going to be. We know what we're going to do. So, we we hired Victor, the programmer, and Wes, the animator, to come on full-time and actually start building the game. Um, we had done some tools work before that, but I'll uh I'll get to that in a second. Over the course of development, when it came time to actually implement an area, what I would typically do was take a I would take a sheet of paper to the bar at the Alamo Draft House, and in the hour before the movie that I was going to watch started, I would decide what was going to go in a in an area. And then often this would change in in scope a little bit over the course of actually implementing it or something wouldn't work or I would would have drawn a space too crowded and need to spread things out and make things easier to get to or easier easier to read as a as a player moving through the space. But essentially I wanted on a
sheet of paper all of the important interactions in an area. So, like what this list is, if you could read my handwriting, is everything that you can mess with in there that does anything to the game state and every time there's an encounter, every time there's a specific conversation that we had an idea for. Um, we had this internal Google sheet that sort of kept track of how done all of these regions were. Um, the problem with this is that the number of regions that there were kept changing and so it was very it was sort of difficult to tell from this how done we actually were. And also, uh, all the red things are things that never got checked one way or another because I realized that this just represents the state that the spreadsheet was in when we abandoned it, rather than the state that it was in when we, uh, finished the game. Um, like sound effects. If you looked at this, you would think there were no sound effects at all in the game, but we had just given up on the spreadsheet by the time we added sound. Um, the broad categories of stuff that we needed to get done here, like that first column, con is just like, do we know what this area is? because there were a lot of
things where we had said, "Okay, well, we definitely decided there was a mine here, but we don't really have an idea for a mine." So, uh, once we get that idea, we're going to put an X in there and actually give the the region a name. Uh, layout was just sort of do the rooms exist? Is there stuff in them? Is progress blocking objects, like are they wired up to actually block progress and stuff like that. Scripts are, can you do the stuff that you're going to do in the room? like if you go to interact with the thing, is there at least a baseline version of that interaction coded? Um items, if there were any new items in the game that were specific to that region, then that was where I would keep track of whether they were done or not. Uh monsters is whether there were actually any fights there, which often there weren't. As I said, as we got further and further into the development of the game, combat became less and less of a focus, both in terms of quality and development time and also just importance to overall gameplay. Um, way is just did we remember to hook up the
doors to get into this room? Because when we were testing, we could just teleport around. So sometimes we would just forget and there would be no way for the player to actually get to this thing. second section was all the sort of actual final assets for everything. Is it written? Uh is their commentary for so there's you you get a kind of a companion character that runs around with you. And we decided that one of the ways that we would create a tremendous amount of extra work for Riff was to make it so every room that you were in with your partner, they would have a different thing to say about it and a different little conversation to have. Uh CPG was my metric for whether it was a loathing game. Does this room have a couple of pointless gags? And so they didn't all need it. But that was where like in the in that opening mine, like there was just nothing going on out there. So then I added the this this thing where you could explain to your partner how all of this mining equipment worked even though you didn't know how the mining equipment worked. and it just gave you a perk
called mindsplaining. That's the kind of pointless gag the couple of pointless gags column represented. And that stuff I think that is where a lot of the kind of memorable soul of the game lives. And uh I think it was it was the right instinct to actually try to track that and sort of try to shoehorn that stuff in even if there wasn't a great idea for it to begin with. Uh link was whether there was anything in the area that sort of connected you to another area or sent you somewhere else or like gave you a quest that that unlocked a new place that you could go. Um let's see. Art art was whether I had done the art for it or not. Uh and yeah, sound effects and and then the rest of that stuff is like if there were monsters in the area, is there something that differentiates them from other monsters? Spoiler, the answer is almost always no. Uh, do they have basic AI hooked up and have I requested
whatever animations that the animation column didn't really belong in combat because often I would want a character in a scene that was doing something weird and I would need to get an animation from Wes for that that wasn't specifically part of combat. But um so the tools that we had, we we built these before we actually hired up the full team. And Chris Moyer uh who is the has been the web developer programmer for Kingdom of Loathing for many many years, built all these tools for us. And so this this is the thing that we use to actually edit scenes. And you'll see later this looks a lot like the tools that we've been using for our web game for a long time. Um, the the basic way that the data works in this game is we store a bunch of stuff in a MySQL database and then there is a big export that happens into the game client. So we don't need to actually be in Unity to add content to the game, which I think was the the single decision we made that made it so this game was able to be as big as it was, which I think is probably the primary strength of the
game because uh I think most of the reason that anyone who is impressed with this game is is impressed with it is because it doesn't look like it is going to be this giant sprawling potentially 30-hour long thing. But because we made it very very easy to put stuff in it, we were able to put a lot of stuff in it in the time that we had. Um, so like for any object in a scene, there's just a bunch of properties about it. There's there's uh, you know, some just basic stuff like what sprite does it use? If it requires an actual Unity prefab to have Wes's animations running on it, we can have it just kind of replaced with one of those at at the time that it's rendered in the scene. um extend forward and extend back are like can you walk past it without uh triggering its script. Um there's the the condition which is like based on game logic states does it show up at all? And that's why you can kind of see like the house is sort of Schrodeners arson like because those there's the non-burndown version of the house and there's the burndown version of the house and they just have
different flag conditionals on them depending on what you've done. Um, in there, if you click on the click on edit on the script link, it takes you to this is the actual code that the that the designers wrote to handle all of the game logic. And this started out as a scripting language that I developed for Kingdom of Loathing so that the writers who were not programmers could do really basic stuff like just dialogue trees, just conversations with multiple paths through them. Um, we didn't build a lot of extra functionality into that version of the language because we made a thing where it would just let you arbitr like execute arbitrary PHP code in it, which is super safe web development practice, but also like it just we didn't need to write actual abstracted functions to handle game logic stuff because I had already done it in the PHP code and we could just run that. This scripting language became, as I'll show you later, way, way more complicated and robust and
important and powerful over time and has just been really key to how much we were able to accomplish in the game beyond what I expected to be able to do with it. Um, we also internally have this tagging system that also came from Kingdom of Loathing where more or less anywhere in any of the data, we can leave a note for anybody else on the team. And then when that guy logs on to the admin tools, they just see a list of everything that's been annotated to them. So, if there's a thing I put in a thing in an area that Rift thought he was done writing and Rift needed to do some writing, he could do it. If I had a guy and I needed him to be dancing, I could say, "Wes, make this guy dance." Uh, sometimes Kevin would leave a note that said, "Zack, what were you trying to do with this script? I can't even figure out what it would have done if it had been working." Um, so there are a lot of advantages to the way that we decided to do this with just the web tools for developing the content
and the and the the game basically being the client. Um, one that one that I didn't create a bullet point for, but that I think is actually pretty important is we tested all of the content by actually playing the game because that was the only way that we could see it. We always knew when we would make an interaction and the only way for us to test that interaction was to go experience that interaction the way that the player was going to. Um, the tools were extremely familiar to us. On the left is the thing that we used to make an item in Kingdom of Loathing and on the right is the thing that we used to make an item in West of Loathing. And you can see that in 15 years things have gotten a lot shinier. Um, but the scripting language when I wrote the original design doc, I had very low expectations for the kind of uh scale of interactivity that we were going to be able to pull off in environments. It never occurred to me that we would be able to like make an
NPC walk around in a room because like I was still in this Kingdom of Loathing model where it was like what would this game be like if it was on an Apple 2 and it was still me making it. Um, but so much so much extra stuff got added to the scripting language that we started to be able to do stuff. This is it's not like super meaningful to look at, but there's there's an area in the game where there's like bandits that will run around trying to prevent you from getting into buildings and like people that will run away from you when you get close to them. And so we were able to do things that I was not expecting to be able to do, which is like spatial puzzles that involve moving things around in areas. And the the fact that all of that stuff was abstracted out into the scripting language meant that any of us could do it. It didn't have to be just the person who knew how Unity worked. um we were able to make a change in the data and then just hit R in the build and it loads the change into the data. So it was very much it was very comfortable to me because I grew up
writing games in basic and you know there was no debugger. You just write some code and then run the game. If it didn't work, you would change something and then run it again. Your changes were reflected immediately. That's how Kingdom of Loathing worked. I get that's not how software development works, but Victor was able to make it so we could pretend that we were making this game in the 80s. Um, biggest advantage, the designer does not have to use Git. And as the designer, this is the thing that I'm the most happy about about that whole process. Um, the art pipeline kind of similar. Um, starting with the hardware, Pilot Precise V5 extra fine rolling ball pen. Um, ever since the beginning, that is what all Kingdom of Loathing and West of Lothing art has been drawn with. Uh, I did gradually discover better and better kinds of paper uh to draw on over time. This is what I landed on now. There's no there's no bleed, so the lines are real clean. Uh, and so everything looks great when you put it in the uh cheapest version of Canon's
scanner that they sell on Amazon at whatever time the previous one breaks. Um, all of that stuff goes into Paint Shop Pro 9. best $100 I ever spent in 2004. Um, I did at some point update it to version 9.01. Still not totally sure that was a good idea. Um, a lot of people have asked me, including myself, over the years, why don't I just learn Photoshop? And I just every time on any given day, it's like, well, I could spend a week learning Photoshop or I could spend a week making a week's worth of art in Paintop Pro 9 real real fast. And uh so far someday someday a version of Windows is going to come out that won't run this and then I have to retire. Um that that pipeline is basically I save the item I like I work on the item work on the work on the sprite work on the the the image the whatever in in Paint Shop and then I have a macro that saves out a copy of it that is just
black and white. Um, I am not even good at using Paint Shop Pro 9. So, I have no idea how to actually edit art when it's anti-aliased. So, it's literally just a pixel at a time. Black and white is how all of my editing works. Nothing in the world wants art to be like that. So that macro also saves a copy of it that's sort of shrunk down so that there's some built-in Nialiasing, puts it into a repository that gets then synced via Dropbox to a directory on our web server where all of the other stuff is. And then there is another key that you can hit in the game that requests like a tarball of all of those sprites and then some magic happens that Victor wrote that I don't understand that then puts those sprites in the game. So, in addition to being able to change the the writing and the and the the scripting and the interactions and the locations of things, can also just add new art more or less as soon as I save it. It's just in the game, which was just awesome. Uh, several advantages of this
pipeline. This slide was going to be about how reusable the sprites were and how we didn't have to have that many of them, but then I looked and there were like 3,400 sprites that I had made. Oh, maybe this slide is about how that didn't seem to take very long to make all those sprites. Um, again, live updates, like you just have to hit the button, get new sprites in there. And again, I did not have to use git to make changes to the project. Um, this was going to be about the writing pipeline, but uh, the writing pipeline is essentially exactly the same as the design pipeline because all of the writing just lives in those scripts, which probably eventually is going to bite us in the ass if we ever want to do anything like localize, but we'll uh, we'll solve that problem when we come to it. Uh, advantage there is that the writer also doesn't have to use git. Um, the things that I feel like didn't work super well about these processes is a a
good uh closing segment for a talk about about uh what went right and wrong. Uh there was a lot of this by the end. the starting with the world first and not necessarily having like a complete vision of what any of the individual things were going to be. Especially as you get further west in the game, you notice that things get a little sparer. And it's not because we wanted the ver similitude of that region of the US being less populous. It was because like man did we make a lot of mines already and do we not have an idea for what this mine would be? And that kind of had this knock-on effect of it was pretty difficult to tell how close to finished we were because it's not like I can just put an item on my calendar that is have an idea for what this mine is. It kind of has to happen if it's going to be any good. And it was we should have spent more time
actively brainstorming stuff in the beginning and had a better idea of exactly what stuff was going to be. This also resulted in a lot of the story lines because we definitely came at this from a world first and not a story first point of view. A lot of the stuff just kind of ended as a dud because we never really had any idea of where it was going. So never really uh we didn't really build up to anything. So, we weren't able to pay off what we had been building up to. So, it was just sort of whatever we made up the day that we had to write the last section of like the necromancer quest line or the cow stuff that at least the cow stuff was so hidden that hardly anybody sees how disappointing it is in the end. Um, so on the production side, I am sorry Kevin for how rough the last couple of months of working on this game were because it was, you know, like because we didn't have VO for instance,
which I think was a great move on our part, it was possible to change things up until the last second. And so there was not really ever a good way of knowing. Like Kevin was never sure when he was done going through an area because he didn't know that we hadn't gone back and changed something else. I really wish that somebody would make something that would allow a bunch of people to collaborate on a piece of software and kind of track track the changes that they made in a comprehensible way, but that must be really hard because certainly no one's ever done it. Um, and the abstraction between the work of actually making the game and the the the actual code that that runs on your computer when you play the game basically made it so none of us really had to get all of that all that far out of our wheelhouses, which was great for getting a lot of stuff done in a hurry, but it wasn't really great for sort of growing our skill sets. like I now have this, you know, I have a lead
credit on this game that's in Unity and I know nothing about Unity. Um, and that, you know, the game turned out okay and people seem to like it and it sold pretty well. So, I feel like it's a normal person would sit here and say, "Oh, yeah, we did things that we were supposed to be doing and everything worked out fine." But I I can't help feeling like having to be a little bit more involved in each other's processes there would have resulted in a little bit more growth internally uh for the team. Um and yeah, so if there are any questions about anything other than Unity, uh I can answer them at the mics here. Oh, I'm supposed to remind you uh fill out the uh evaluations for the talk. Uh do the first part that you liked. Don't remember the last part where it kind of fizzles out. Um, uh, if you were in here from the from the session before, uh, scan your badge on the way out so that they know to send it to you. Um, I think that's all I was supposed to say.
Hello. Hello. Um, as a fan of Kingdom of Loathing from way way back when, I was surprised to see how you guys launched West of Loathing and how much different it was from that like ragtag group of people. You like launched on Steam, you had it as a box price. I was curious to see what kind of like evolved that publishing decision along the way. We knew we wanted it to be a singleplayer experience that we didn't have to maintain for the rest of our lives because we already had one of those and it was already a lot of work. Um, basically couple years before we started on this, Kevin and I moved to San Francisco so that we could learn more about the games industry and how stuff worked. Like we probably would have done something like this earlier if we had had any idea how to go about doing it, but we were sort
of isolated in Phoenix. we didn't really know people and uh we were we were very fortunate to uh get the opportunity to share office space with Campo Santo when we first moved here and when they first got started and so they were just this incredibly valuable resource in just telling us how wrong we were about all of the ways that we thought the industry worked. Um and so yeah, it was I I think in a lot of ways we got very lucky that we sort of learned just in time how releasing an actual normal video game works. Um, it was a lot of the same team though, you know, the the there were seven of us that made this game and four of us were original K people and were continuing to work on K the whole time. So, uh, it was nobody nobody saw that contrast more than we did. Thanks. Uh, hey, first I wanted to say that the Spatoon progression was one story line whose payoff was fantastic. Uh, it's one of the best things I've ever seen in games before. So, that was great. That is all That is all riff 100%.
All right. Well, send him my thanks. Uh, but my question was, you said that at the end it seemed like you weren't able to get a lot of those storylines to land. Uh, was I guess why weren't you trying to spend more time on that? Was it like we have all this other game we have to make or it's like this is this is how it's this is how good it's going to be? I think part of it is just a kind of failure at the top of the company because I don't actually think that stories in games are important. It's not it's not that I don't think that they're good or you know mature as a medium or whatever, but it's just never a priority for me. Like that's never what I care about when I play games and I fail to pay attention to the fact that I am nearly alone in that. Um, and so yeah, it was just it like Riff is way better at it than I am. So I think like the circus storyline, which was all him from beginning to end, actually does have a narrative arc
because he knows how those work. Uh, and the stuff that I built most of the first parts of and then relied on him to kind of wrap up. Uh, because I don't know how those things work. Uh, there was just nowhere to go with the stuff that we had produced. All right. Thank you. Hi. Uh, I got two questions if you don't mind. All right. Um, so first off, bringing the bringing west of Loathing to Switch. Uh, is there anything that you guys have to tweak specifically for that platform? Like I know when I played West of Loathing, I played well was on PC, so I like clicked around to see if there's any like Easter eggs or things I wasn't looking at. I'll just like click around on the wherever I was and like I found some like dope stuff. But obviously you can't do that with Switch. So, is there any like tweaks you're making specifically for just gamepad controls only? So, there are a handful of things that you that require the mouse moving around on the map. You know, it was just literally you just have to click somewhere. So, we have to there's a bunch of UI stuff that has to be overhauled and not a bunch. There's a few UI things that have to be completely
overhauled to support uh support joysticks, but we wanted to make sure that you could play the game with the keyboard as much as possible. So like the combat interface for instance was designed late enough that we were kind of imagining playing it with a controller. So that was like relatively easy. Inventory has been a ton of work on Victor's part which it's it's in great shape but it would it took some blood to get there. Um there's nothing really fundamental. We also were demoing it on iPads all of the time. So there was a thing like in the beginning where there's the cactus guy in the prologue town. you can get him to tell you that there's a shovel hidden behind this outhouse by the mine. And it used to be that you actually had to Wasdian and walk behind it, but because of the way that clicking works, you can't click behind a sprite that's on the screen. And so we ended up just changing the way that interaction worked so that every part of the game was accessible, whether you were moving around with the keyboard or clicking around with the mouse. And so the joystick is basically a keyboard. So there's nothing about gameplay that has
to change. It's just all UI considerations. Okay. And my second question is how closely did you work with Ryan Ike? Um I think one of the highlights of the game is that the soundtrack is it's one of my favorite soundtracks like ever. So did you like in working with him was kind of like all right try and capture this feeling or just kind of like hey do your thing and like if it works it'll work if not we're still going to use it. So, for the sound design aspects, there was a there was a lot more back and forth because because of what this game looks like, Ryan couldn't necessarily look at a machine and actually understand what was happening when you used the machine. So, I I there was a lot of like sort of back and forth about what this kind of thing actually sounds like. on the music. I I sent him a single Cheryl Crowe song as reference and then just kind of described in a sentence each of the songs that I wanted for for mood. And sometimes he would come back with one and I would say, "Well, okay, this is not exactly what I was looking for, but this is great for this other thing."
like we ended up using everything that he sent, like even some rough drafts uh of things that ended up being replaced. But it was it was remarkable how just good everything that he produced was. Um so cool. All right. Thank you. Hi. Um you how was the the sign behind the combat and stuff like that when you have the three classes and you have all the partners. How did you guys plan around having uh all of the combinations of this partner with this class or We didn't do a great job with that in the end, right? Like that's that's the one thing that we got dinged on in basically every review was that the combat was was kind of uninspired. The the engine for combat was very very flexible and very robust and we had a lot of big plans for what we were going to do with it. But then it it sort of because I have this desire in video games to just I want a bunch of things
that make numbers bigger and I want to find those things everywhere. I ended up just filling the world with stuff that made it impossible to balance combat. And we just kind of ran out of time and ran out of money. And so we decided, well, let's just make it real easy so that it doesn't get in the way of the jokes and try to do better next time. I think there's there's a section of the game where you're sort of playing a tabletop miniatures game with some guys in a in a fort and those fights are pretty good I think and those kind of illustrate the the promise of the combat system by being really really constrained and they let us set some stuff up as as puzzles and we kind of wanted combat in general to be like that but just weren't really able to pull it off. Okay, thank you. Thanks everybody.
Auto-generated captions from YouTube — names and numbers may be misheard.
Distilling the key insights…
Game Developers Conference · 2026
Thomas Brush · 2026
Comments