Some of the most active mod communities to this day are still those that surround some of the earliest first-person shooters in existence. Games like Doom, Quake, and Half-Life sustain such creative userbases because they offered powerful editing tools – and as time passes, those users’ familiarity with and creativity through those tools only increases.
But those tools weren’t perfect, and advanced in technology and design rarely see such improvements back-ported to older editing software. Enter TrenchBroom 2: a cross-platform, modernised level editor designed for classic shooters such as Quake, Quake 2, and Hexen 2. We spoke to TrenchBroom 2’s creator, Kristian Duske, about their motivations for creating the tool, and what it offers over other level editors for these classic shooters.
ModDB: What is it about the Quake era of games that made you want to dedicate time to creating editing tools for them, many years after their release?
Duske: I have been a big fan of Quake since it was released. Many years ago in the 1990s, I had made some deathmatch maps for Quake 2, and one for Quake, and I thought I’d try and get back into this hobby. This was around 2010, when there were no decent level editors for Quake available that ran on Mac OS X. Later on, there was ToeTag by Warren Marshall, but for some reason I didn’t want to use that. So being a programmer, I figured I’d make my own. I started in 2010 and the original TrenchBroom for Mac OS X was released in March 2012.
“My original desire to make maps myself was replaced by wanting to create the best and easiest to use level editor around”
People liked it, but of course there was no user base since it was for Mac only. After a while I figured I’d rewrite it to be cross platform. I had wanted to learn C++ anyway, so I did, and the result was TrenchBroom 1, released in March 2013.There was a lot of positive feedback for it, so I kept working on it. It became a very time consuming and satisfying hobby of its own, and my original desire to make maps myself was replaced by wanting to create the best and easiest to use level editor around. People started to use TrenchBroom to create Quake maps which I could play, so that added to the motivation, and the buzz around it also helped bring new people to the Quake community at func. Today, my motivation is carried by the community of users and contributors. So the motivation to start TrenchBroom was purely egotistical: I wanted to create a tool for me to make maps for my favourite game.
What aspects of level design theory and craft do you think have been overshadowed or minimised by games today that were otherwise prominent or important in the Quake era?
From my perspective as a player, there are several aspects which are missing from today’s level design. First, it’s non-linear design, that is, the availability of several routes from the start of a map to its end, which makes for great replay potential. There many examples from the Quake community of maps which have this. The Arcane Dimensions mod for Quake, which is led by Simon O’Callaghan, contains many maps which are exemplary in this regard. The second point has maybe less to do with level design and more with game design, but the type of full on combat that Quake (and similar games) offered seems to have been replaced by duck and cover mechanics (the 2016 Doom being a notable exception), which is mostly due to the fact that most weapons have hit scan mechanics, as opposed to being projectile based. Projectile weapons offer the ability to dodge enemy fire instead of having to duck, and dodging emphasizes skill and quick reactions over patience.
“A level designer for an older, more abstract game like Quake has to work very differently to create an interesting experience”
The third aspect is rooted in the technical development overall: Today’s games require a lot more assets, and they require a lot more polygons to look good. Due to the technical restrictions of the time, Quake has a more abstract design which lends itself to filling in the blanks by imagination as opposed to spelling out every detail of a world, thus making the experience more personal and interesting. So a level designer for an older, more abstract game like Quake has to work very differently to create an interesting experience. The emphasis has to be on atmosphere, lighting, and the combat situations.
Based on more modern level design and editing trends, what did those games’ original editing tools lack that TrenchBroom addresses?
I wouldn’t say that TrenchBroom has any features that the older tools did not have, but I like to think that there are several aspects of TrenchBroom that set it apart from the older tools. TrenchBroom’s UI and tools were originally inspired by the question of how Quake mapping would be like if it was possible to edit levels inside the game, an approach that was pioneered by the Cube and Sauerbraten engines by my dear friend Wouter van Oortmerssen. This is why TrenchBroom focuses on the 3D views rather than the 2D views for editing. In fact, the 2D views were only introduced by TrenchBroom 2! So for the longest time, people were mapping in 3D only if they decided to use TrenchBroom. I like to believe that this approach influences the way people think about geometry, because the user can manipulate geometry and entities directly in the 3D view.
“The user can manipulate geometry and entities directly in the 3D view”
TrenchBroom’s tools are designed around the philosophy that it should be possible to directly manipulate as many aspects of a map as possible. This is why TrenchBroom avoids handles and gizmos where possible. For example, professional 3D modeling programs often employ a gizmo to move objects around, whereas in TrenchBroom, you move objects simply by dragging them with the mouse. This approach is not always possible, however, so for rotation, TrenchBroom does use a handle to select the rotation axis and angles. But I try to avoid such indirect approaches where possible because I think it is important to give the user the ability to manipulate objects as if they were doing it with their hands.
Another aspect is that TrenchBroom, due to the power of today’s machines, doesn’t suffer from as many technical limitations as older editors have. With today’s machines and 3D accelerators, it is possible to render huge maps with 60FPS on a laptop, with more than enough reserves for complex editing operations. This is why TrenchBroom is perceived as very powerful by some people: It can afford to spend a lot of resources for computation, allowing for more involved algorithms. This can be seen in TrenchBroom’s vertex editing tools, which allow for a wide range of manipulations without creating invalid geometry.
Have you had any interactions with the original team at id Software, or developers close to the original projects, regarding these tools?
John Carmack and John Romero have been nice enough to reply to my emails, and to tweet and talk about TrenchBroom at a few occasions. This has brought a lot of attention to TrenchBroom, but also to the Quake mapping scene, leading to an influx of new talent. I am grateful for their support, because as a twenty year old community, we are happy about every newcomer.
What are some of the most impressive projects that you’ve seen come out of TrenchBroom’s user base?
I don’t want to pick out single maps or names, as I’m sure I would be unfair. I am impressed by everything the Quake community has been doing in the last years, as technical restrictions have been lifted and new tools have been developed. I am happy about every map that is made with TrenchBroom, be it for Quake or not, be it big or small, and be it on a pro level or by a beginner. I feel blessed that TrenchBroom has found a user base that enjoys using my tools for their creative endeavours. I am grateful for every contribution and issue report. This is what motivates me to keep working on it.
“I am happy about every map that is made with TrenchBroom, be it for Quake or not, be it big or small, and be it on a pro level or by a beginner”
What’s in store for the future of TrenchBroom’s development?
Well, this is not 100% set in stone as I haven’t taken the time to groom the backlog and to define the next milestones, but I think the most important task for me is to extend TrenchBroom’s userbase and thereby attract more contributors. TrenchBroom has become a big project, and I have become a very busy father of two with a full time job, so I need every bit of help I can get. This is why the next versions will focus on support for more games, with Quake 3 being the first to be added to the roster of supported games. I am aware that there are quite a number of requests for game support from different communities, and I plan to work on those. Furthermore, I would like to extend TrenchBroom’s capabilities as a standalone tool not bound to any specific game. I would hope that such abilities would help indie game developers and hobbyists to create games using existing, free technology built around the family of Quake based game engines.