This tutorial is a very early work in progress. It will get filled in over time.
Complementary to this guide, it would be a good idea to write a dedicated article which tracks and documents progress in TB's GoldSrc support. That way, some of the contents in this guide can get moved to that article, so this can focus more on what it takes to switch from J.A.C.K. to TB.
This guide outlines some basic differences between Hammer-style editors like
J.A.C.K., and
TrenchBroom. TrenchBroom initially had very little
GoldSrc support, however it has been improving a lot over time.
This caused an influx of TrenchBroom Half-Life mappers, and some J.A.C.K. users even considered switching, or made the switch. If you are trying to decide between J.A.C.K. or TrenchBroom, or are trying to switch to it, this guide is for you.
Another purpose of this guide is a means to track TrenchBroom's GoldSrc support. As new versions get released, this will be updated and, where applicable, mention the new/old behaviours. With that said, this guide is currently written with TrenchBroom 2023.1 in mind, and it is already a little bit different from the latest 2024 release candidates.
This guide was written for people with existing mapping experience. If you are entirely new to it, there is no need to read this guide. Instead, you may begin by reading these:
If you would like to set up TrenchBroom, there is:
Making the switch
Transitioning to a new map editor, especially after years of using one and the same, can be a little difficult. All of that muscle memory is now potentially in the way, and keyboard shortcuts are different.
It takes a bit of time before you can reach the same level of mapping proficiency in a new editor. For some people, this is just a couple of months, for others it may be a year. Depending on how much free time you have, for this reason alone, it is probably not worth switching.
There are various reasons, however, why you might want to switch anyway. For some people it's an attractive new workflow, for others it is a single feature that makes them want to drop their old tool. If you are reading this article, chances are you may already have a reason of your own.
The core differences
J.A.C.K. and TrenchBroom have a fair bit in common:
- They support GoldSrc and Quake 1/2/3, among other platforms.
- They are brush-based editors.
- They use FGD files for entity descriptions.
- They can both work with .map files: open them, save/export them, send them to map compilers of your choice.
- They have active communities of users, meaning there is a fair amount of knowledge out there about using them.
- Neither support Worldcraft prefabs.
Their major differences however, are:
Area |
J.A.C.K. |
TrenchBroom |
Meaning |
General brushwork |
Done in 2D views, several tools such as Select, Clipping, Vertex Manipulation etc. Can create various primitive shapes. Clipping is 2-point. Grid goes down to 1 unit. |
Done mainly in the 3D view, with optional 2D. Several editing modes like the default mode, face, edge and vertex mode. Only creates cuboids. Has 3-point clipping. Grid goes down to 0.125 units. |
Overall it is a very different workflow, and one must get used to it. The lack of a cylinder primitive is not a showstopper, as there are established workarounds with clipping and skewing, and there is already a primitive tool in the works. |
Working with entities |
User-friendly keyvalue names, file browsers for different types of paths... |
Raw keyvalue editing for paths, smart editor widgets for a few certain keyvalue types, like a colour editor. No audio preview. |
Substantial difference. Will be less comfortable when working with ambient_generic and similar entities. However, basic trigger-target stuff is on par. |
Files and formats |
Full support of GoldSrc formats. |
Lacks sprites, animations on models (+skins, bodygroups). Full Valve220 and WAD3 support, however. |
Lack of animations can be troublesome when working with scripted sequences. |
Map compiling |
Simplified compile dialogue and expert dialogue with existing compile presets. |
Only "expert mode" without any presets. |
Possibly one of the greatest obstacles in switching to TrenchBroom, now covered in the TB setup guide. |
System requirements |
Supports very old machines and OSes. v1.1.1064 has been tested successfully on a 2005 Windows XP machine. |
Requires hardware capable of OpenGL 2.1, minimum Windows 10. |
This is insignificant to most mappers, but if you are using a 2007 laptop or Windows 7, you will not be able to use TrenchBroom. |
Development |
Closed-source, sometimes active. |
Open-source, often active, based on feedback and community contributions. |
TB has considerably healthier signs of development. |
Miscellaneous note 1 |
Multiple map windows in the same instance. |
One map window per instance. |
In order to open 2 or more maps, you will need to open 2 or more TrenchBroom instances. However, they share the clipboard so you can copy-paste between them. |
Miscellaneous note 2 |
Movement speed is set in the options. |
Movement speed can be adjusted on the fly with the scroll wheel. |
This may be more convenient if you are dealing with varying scales and levels of detail in the same map. |
Concrete examples
The table above won't exactly give you a clear idea of what it's like to work with TrenchBroom, so let's cover some common scenarios:
- Creating rooms
- Button activating a moving platform
- Zombie scripted sequence
- Creating terrain
In these scenarios, we will get to see all the small details, such as how textures are aligned, quirks when editing entities and such - and workarounds in case something is not available in TrenchBroom.
Scenario 1: Creating rooms
Here is a clip of creating a room in J.A.C.K. Some corners were cut (e.g. the choice of textures) to save on time - the focus is on the core differences in brushwork between the two editors.
Now, here is the same in TrenchBroom:
There are a few things worth noting, other than the 3D vs. 2D workflow:
- In TrenchBroom, you use Alt+arrow keys to rotate the selection. In J.A.C.K. this is Ctrl+R.
- This particular room takes approximately the same time to build in both editors.
- In TrenchBroom, there is a lot of moving around with WASD to get a good angle when extruding brushes.
- In J.A.C.K., there can be a lot of zooming in and out in the 2D views.
- TrenchBroom's cutting tool uses Ctrl+Enter to switch between halves, in J.A.C.K. it is Shift+X i.e. the same shortcut as the tool itself.
- TrenchBroom's UV editor allows for very visual texture adjustment, whereas J.A.C.K. provides more complete alignment & fitting functionality.
TODO: write this section.
Scenario 3: Zombie scripted sequence
TODO: write this section.
Scenario 4: Creating terrain
TODO: write this section.
Conclusion
TODO: write this section after all above is done.
groups
do not carry over to J.A.C.K., nor do J.A.C.K.'svisgroups
carry over to TrenchBroom. To keep brushes together between editors, they have to be tied to a brush entity likefunc_group
.