Jump to content
The Dark Mod Forums

Brushwork generators ('Mapgen')

Recommended Posts

I vaguely remember some tools that could spit out a .map file of various customised shapes and objects (like stairwells) and I wanted to dig them back up and see how useful they still are, and see how one might go about using them to expand upon with more scripts. Although most of them are for idTech3 if not idTech2, I'd still like to try.

But, you know how the internet is these days...



QuArK is also interesting to look into for some of its quirks.


I also found this supposed "ET Prefab Generator":-


...again with the 404s.


Does anyone out there have that 'Mapgen' they could upload? Or could anyone out there suggest other tools that are similar?

Link to post
Share on other sites

Did you have a look already into "Swift Mazes" (I think that's what it was called) ? :)

  • Like 1

"Einen giftigen Trank aus Kräutern und Wurzeln für die närrischen Städter wollen wir brauen." - Text aus einem verlassenen Heidenlager

Link to post
Share on other sites


Yes, I was playing with this a few weeks ago and that's what made me remember these other older tools. Honestly, personally I don't find this particularly useful because it's more for blocking-out a layout rather than doing smaller specific objects.


I've also been playing with the Blender Quake Map exporter. I can get brushwork into DarkRadiant using "Q3toD3", but a huge problem is that everything is a third bigger than it should be, which means trying to scale it down with infinite recursive decimals (0.666666*) and that can never be perfect. I can get it precise to 0.125 grid for 16384 unit area and snap all vertices to the grid, but anything beyond that will be off. That still allows for some nifty brushwork that would be otherwise many headaches to do manually in Radiant.

Link to post
Share on other sites

Hm I personally would spend the time in manually creating a detailed map instead of automaticly create a generic map. Don't take this as personal criticism - it's really just my personal opinion. :)

"Einen giftigen Trank aus Kräutern und Wurzeln für die närrischen Städter wollen wir brauen." - Text aus einem verlassenen Heidenlager

Link to post
Share on other sites

I agree completely, and I think you have a fundamental misunderstanding of what these tools could do...


If I remember correctly, they could generate things like spiral staircases and corkscrew tunnels and funnels and other formations that would be very tricky to do manually. These are not "map generators", more like "brushwork generators".


The focus is that it would spit out these formations created from individual brushes, not patches or models, so they can still be textured and edited in Radiant. Not to be 'brushed aside' as someone looking for a 1-click make-a-map-for-me solution. ;)

Link to post
Share on other sites

I remember Unreal Engine having such BSP tools, and they were quite handy in UE 2.5 era. But with today's asset fidelity, they are mostly redundant, as majority of these are done with models. They can be useful in greyboxing phase though.

Edited by peter_spy
Link to post
Share on other sites

Thanks to ToKu over at Q3W forums who posted a 'stairwell generator' - That actually really did help a lot, because I threw the filename into Google and hoping to find some old lost FTP folders, and sure enough:-

SurfaceGenerator is something that does pretty much what I was remembering. I read it even was based on the previous 'Mapgen' so I think it does everything.


There are also a couple of terrain tools I was looking for, something called FATE. Sounds like it might be marginally better than EasyGen or GenSurf, but I'm not sure because I can't find it anywhere.

(edit: a treasure-trove of Quake-mapping tools here:-



(edit: all I can find of FATE is this screenshot, but anyone who knows anything should instantly see why this tool would have been great to preserve!  But I think it really is gone...)


Edited by LDAsh
Link to post
Share on other sites

So here we go, someone on the #etlegacy IRC channel was able to help me dig this up...
Freehand Adaptive Terrain Editor:-

I read that it doesn't export, but after playing with it I found that indeed it does, it's just not in the menu.  Go to 'Edit Mode' and 'Export', but just put in a name for the 'Export Map' field and omit the map type extension.  It does indeed export brushes in a map file, which can be loaded into Q3Radiant, which can be converted to brushDef3 which can be loaded into DarkRadiant.
I had some trouble controlling the deform widget on Win7, but it does work with WinXP.  Whether it's the OS or some dependency or my particular setup or whatever, I have no idea.  It does work, however.  I'll have to try it again with compatibility mode.
And yes, like the screenshot above, it can do concave shapes.  The shot above was just pointing out that the widget itself should be more like a standard 3-axis graphic, but despite it pointing up you can indeed drag it on the XY axis, just make sure the base of the widget is highlighted, not the arrow.

Anyway, I've been looking for a way to get terrain into Radiant as brushes, even though they would inevitably be exported again as mesh tiles.  The reason is so that individual brushes can be tweaked right there in Radiant, instead of needing to go back to a heightmap or program and export again, or just trying to be content with placing other structures or mapobjects on the terrain as a static mesh that can't be edited on-the-spot.  The alternative is the Quake map exporter for Blender, which does also work, and is far more powerful, but far more tricky to make work.  In the long-run, I'd rather get that working perfectly than to stick with this, but I'm still happy this could be dug up...

Link to post
Share on other sites
  • 2 weeks later...

Are you going to make a tutorial for this? It'd be useful for the rest of us.

What do you see when you turn out the light? I can't tell you but I know that it's mine.

Link to post
Share on other sites

Yes, yes please, this is extremely exciting and something I’ve wondered about a ton.

Like, are you saying we can use this for custom ground patches in FMs? Because that would be life altering.

As my father used to say, "A grenade a day, keeps the enemy at bay!"

Link to post
Share on other sites

Oh, some interest?

I should make a video, but will get around to that later.  For now I'll try my best to talk through the steps.
I'm exporting from 2.69 but whichever version supports the 'Quake MAP' exporter, should be all the same.

 --> On the right-hand tool panel of the 3D view, under 'Display', set the grid scale to 0.64 with subdivision of 8.

 --> Create a plane, go to 'Edit Mode' and 'Subdivide', then CTRL+T to triangulate.

(instead of scaling your plane (before subdivide) use 'Dimensions' (under Transform) and set X and Y to "81.920").

 --> Displace & Sculpt (etc) as desired...

(keep in mind you can do these first steps in any software, so long as the grid is the same, which is very important).
(above I used a heightmap and 'Displace' modifier, but only a little sculpting, but there are plenty of other ways to deform your mesh).
(be sure to click 'Apply' on the modifier when you're happy with it so it actually takes).
(stay within 4096 units from origin (=40.96) because 'Q3toD3' doesn't seem to like anything bigger than this (*needs more testing!)).

(workaround is to just split your terrain into pieces and export them separately)...

 --> Edit Mode > select all > Edges > Edge Split.

 --> Select all faces in Edit Mode and 'Flip Direction'.

 --> Go to side/front view and 'Extrude Region' down.
(you've essentially just turned your deformed plane into individual solid (8-poly) objects = brushes).

 --> Select all bottom vertices and scale 0 on Z axis. (S > Z > 0).
(*make sure you're using grid snapping and all vertices below align with the above).

 --> Set grid scale to 'a decimal left' (=0.064).

 --> Snap all vertices to grid. (select all vertices > SHIFT+S > Selection to Grid).

 --> Tris to quads. (select all faces and ALT+J).

 --> Select all in Object Mode and CTRL+A to actualise. (Location\Rotation & Scale\Visual Transform).

 --> Select all in Object Mode and go to File > Export > Quake MAP (.map). (check 'Grid Snap' and click 'Export MAP').
(if all goes well, you now have a .MAP file with your brushes from Blender!)

 --> Use 'Q3toD3' to convert your MAP file into the Doom3 format.

 --> Open the MAP file in a text editor and change 'version 2' to 'version 3', remove worldspawn name and other comments.

 --> CTRL+H to replace " 0 0 0 with ", so the trailing 'tokens' on each brush are removed.

 --> Remove the last entity entries, so the file ends at the final brush and the bottom of the file ends with 3 }s. (3 closing curlies).

Open the map in DarkRadiant and in the 3D view, CTRL+SHIFT to select a face below the surface, then while holding CTRL+SHIFT you can drag-click to texture all of these multiple faces with caulk.  This could probably be done in Blender but I didn't try that because this works well enough, for the most part.  This is not even really important, except to avoid confusion during editing.  You can now select multiple brushes, press V and select multiple vertices, and (with care) adjust them around to deform your terrain.  Note that texturing hasn't come into it yet because ideally once you're happy with the formation, you would export as ASE and bring it back into Blender to unwrap and vertex-paint etc. to polish it up for the final product.

Here's an example of how I began to create "lips" that overlap each other and fold into themselves, to create features like cliff-faces and caves:-





Edited by LDAsh
  • Like 1
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...