---using the frontend for bsp2t3d--- requirements: you must have tcl/tk installed on your system to run the frontend. It is supposed to be possible to compile a tcl script to a c object, but I can't get the libraries to link right, so for now if you want to use it just go to http://www.scriptics.com and grab tcl/tk for your OS. If you are on Windows 95 I can verify that this script works on tcl/tk 8.0 patch 2. but they are up to 8.1.1 now so whatever you feel is best. It's only about a 2-3 MB download. It's also free and widely supported. I recommend you have at least a Pentium MMX 233 or better (my machine) to run tkbsp.exe It converts models slowly on anything less. Running bspconv for the first time: Ok, basically, once you install tcl/tk (not hard, just click), reboot, you should be able to just execute the frontend by clicking on it (in Win95) just like you would a program. But first, edit the bspconv.tcl file in a text editor (whichever one you like). At the very top of the script there are a few things you have to tweak. just replace the default locations I have listed to wherever they are for your system. exepath is the full path of where tkbsp.exe is. output is the location and name of the text file you want to use for the log file. However, the log file doesn't add to itself, it is always deleting its content and adding the output from tkbsp.exe so it will never be more than a few kb in size. In any case, you have to put some sort of valid path for where you put output.txt or the script won't work. bspdir is the default directory for your bsps. the file selector starts out listing the contents of this directory but is not limited to it. it's just convenient. :-) After you set those three things you really don't have to edit the script ever again. you can just run it all you like. If you have some sort of error on macintosh because it won't do the exec command, it's not my fault, it's tcl/tk's. But anyways, I guess I am open to sending me bugs at bren86@gmx.net Pointdexter and Shmuck's e-mails no longer work. Using the Frontend: 1)Press the file selection button. Select a Quake *1* .bsp file, though nothing bad will happen if you don't (and if so it's not our fault!) tkbsp is supposed to generate an error and quit if it's not a valid Quake 1 .bsp file. But be serious. 2) Check the boxes if you want any special options like including water surfaces. Scaling a model is *always* selected because it's a lot easier to code that way. The default scale value is 1.0, since that just leaves the models as they are. In any case they come out fine in Unrealed if the model is not too large, so you probably don't need to worry about that setting. 3) Press the Convert All button if you want to convert all the models in the bsp to Unreal .t3d brushes or fill in the box next to the convert one button according to which model you want to convert (as listed in the big text thingy). 4) The output in the big box will tell you what happened (after a pause depending on the size of the models you are extracting). 5) Select another file or press Control-Q, Alt-F4, or press the exit button to quit and go have fun importing .t3d brushes into Unreal. see below for how to use with unrealed or to use tkbsp.exe without the frontend. For GUI questions/improvements/praises or OS tweaks or success stories, you can e-mail me at bren86@gmx.net For tcl/tk related q's, you can ask away at the newsgroup comp.lang.tcl (goto http://www.dejanews.com if you don't have a news account, it's free there). .-----------. | Bsp2t3d | `-----------' The little Quake BSP to Unreal brush conversion utility by Jeff "Pointdexter" Preshing WHAT IT DOES It helps you convert Quake maps to Unreal maps. HOW TO USE IT 1. Get a BSP file for Quake. For example, foo.bsp 2. Run Bsp2t3d on this file with the -a option. After running this, you should find a few *.t3d files in the directory you ran it from. Example: Bsp2t3d -a foo.bsp ...would create the files foo000.t3d, foo001.t3d, foo002.t3d, etc. The first file, foo000.t3d, caontains the main brush of the entire level. Each of the other *.t3d files come from other entities in the Quake map, like lifts and doors. 3. Create a new, empty level in UnrealEd. 4. Select Brush->Import from the menus. Import the first file, in this case foo000.t3d. For the import options, choose Nonsolid and Keep Original Polygons Intact. 5. After it loads, subtract the brush from the world. IMPORTANT TIPS Whenever you want to select an entire surface in UnrealEd, you'll have to click on the surface (which may only select a piece of that surface) and then hit Shift+C. Shift+C will select all the adjacent coplanar faces to that surface, which is what you want. The reason that most of the surfaces are broken into pieces is because when a Quake BSP is made, surfaces are split as part of the BSP process. I could modify the converter to detect and merge adjacent coplanar faces before outputting Unreal brushes, but so far it hasn't seemed worth the bother. (Note: if you import the brush in UnrealEd with Merge Coplanar selected, it will perform this step for you. Unfortunately, it doesn't work so great - it will merge coplanar faces even if they're not adjacent to each other - meaning that if you select some face, you may also have selected a face way over on the other side of the map.) COMMAND LINE OPTIONS Run the program with no options. It will tell you what the options are. However, it works best when you don't use any of the fancy options. The only ones you really need are -l, -e and -a. IT MAY NOT ALWAYS WORK It does dm4, dm3 and Hipdm1 for sure. But you may find that UnrealEd gives you error messages when you try to work with the brushes from other Quake maps. In this case, all you can do is cry like a little girl. The problem lies in the fact that UnrealEd makes no promises to work with brushes having more than 500 faces; in fact it says so when you try to import them. Nevertheless, sometimes it works, sometimes it doesn't. Try using different import options, try intersecting the brush with a cube to divide the brush in half, maybe you'll find a way. You never know, but don't get your hopes up. POSSIBLE ENHANCEMENTS Of course, hypothetically, modifications to Bsp2t3d could solve the problem. I thought of having it automatically break a Quake map into smaller brushes, but well, that's something you could write a PhD on. Alternatively, I could modify it to output a different format which 3D Studio Max can import. You could then load the map into Max, manually divide it into pieces, and export the pieces to DXF's, and import those into UnrealEd. The source code is included for anyone willing to decypher it. Feel free to harass me at: jpreshin@uwaterloo.ca