Help - Search - Members - Calendar
Full Version: New Map Tool
Unknown Worlds Forums > Natural Selection > Natural Selection Creation > Mapping Forum
taleden
News
4/28/2004: fixed a bug in RMF duplicate keyvalue checking, and added a readme to the zip file; new version attached

Current Version
0.9 beta 2: (4/28/2004) bugfix

Overview
This tool may or may not be useful to other mappers, but I thought I'd release it on the chance that it might be. Basically, the inspiration came from the way that I map: I tend to build one or two rooms to completion, compile that a few times to tweak the lighting and detail, then add a few connecting corridors, repeat, etc. Because I'm only working on a small area of my map at any given time, I tend to keep it divided into segments in separate files, which cuts down on compile time for testing each segment. The nuissance comes when I want to see how well they all flow together: I have to cut and paste each segment into a new file, move stuff around to get it to line up again, make sure the textures didn't get screwed up in the process, etc. Enter hlunion.

Functionality
hlunion is basically what it sounds like: a logical 'union' operator for HL maps. Given an output filename and any number of input filenames, it will read in all the data and output a merged file containing all of it, minus any resulting duplicate worldspawn keyvalues. Now, all I have to do is run hlunion to combine all the segments of my map and then compile the result; no more splicing them back together with cut'n'paste. In addition, hlunion has a 'strip boundaries' function, which further automates the process: because the segments of my map are naturally connected by open spaces for the player to walk through, those openings must be plugged in order to compile a single segment without any leaks. If the brushes used to plug the openings at the boundary of each segment are given the 'HU_BOUNDARY' texture on any of their faces, hlunion can be made to omit those brushes while writing its output. I have an 'HU_BOUNDARY' texture defined in on of my custom utility wads, but the name is all that's important - to use this functionality, you need only define a texture with this name in some wad and then apply it to at least one face on your boundary brushes. hlunion can operate on RMF or MAP files, but not both at the same time.

Download
The latest version is attached to this post. Once I'm confident that any major bugs have been hammered out, I'll probably also release the source code. Please post any comments, questions, feature requests, etc here, or PM me.[COLOR=red][COLOR=red][B][/B][COLOR=red]
WarpZone
Wow! smile.gif Thanks for releasing it, taleden. biggrin.gif Only the most hardcore of mappers would ever bother to take advantage of a tool this simple, so don't expect a lot of praise about it from the community at large, but personally, I think it's brilliant! smile.gif
BlackPlague
hey, do you have a web site for people to download this off of? if not then i can host you for free n_____n....
taleden
Yeah, I didn't figure it would become one of those 'must-haves', but for people who map the way I do, it might come in handy.

BP- hosting would be much appreciated smile.gif
BlackPlague
ok, pm me with this information


subdomain name :
username :
password :

subdomain name will look like so

name.md.eternal-host.com
or
md.eternal-host.com/name

you will get free hosting. After we are done with the web site, people will start to pay. but users who have already signed up, they will not pay, due to respect ^_^... like they say, first come, first serve ^_^ lolz weeeee


when i get home im going to download this and try it out i just hope that this is fun biggrin.gif
Pharcae
I took the opportunity to host it on the TSA

Download

edit: I added a readme to the zip, hope you won´t mind smile.gif
BlackPlague
umm i downloaded it and everything, how do i use it? >_<
taleden
Its a command-line tool - open a dos box and run it with no args to see basic usage, or give it "-?" for extended help. Basic syntax to merge two .RMF files would be like:

hlunion -r -i in1.rmf in2.rmf -o out.rmf
BlackPlague
NIIIIIIIIICE ^_^ i wuv joo!
taleden
found and fixed a bug in beta 1; new version attached to the first post
statusq
I use QuArK, so I don't need this kind of tool but this sounds OK program.
As I'm too lazy to download it, could you answer to a few questions?
First, what kind of UI it has? Command line only?
And are you planning to continue development of this tool?
Maybe even add the possibility to arrange things in the program before they are united?
Also does the program consist of only the exe file or are other files needed for it to work?

Thank you.
taleden
It doesn't really matter what tool you use, I'd imagine splicing segments of a map together would be just as annoying in QuArK as it is in VHE or Radiant (unless QuArK has this capability built in, I've never used it). hlunion operates on .map files, which any tool can export, so it's not limited to VHE; if there's enough interest, I might work on adding .qrk support along with .rmf. As for your questions,

The GUI is command-line only; it's designed to be used as part of the compile chain (i.e. hlunion merges segments in an .rmf, hlfix exports the .rmf, etc - or, hlunion merges segments in a .map, which is passed to hlcsg etc).

I may continue development, depending how much interest there is in it; if people find bugs or have feature requests they're welcome to post here, and if I've got some time I'll incorporate them.

What do you mean by arrange things in the program before they're united?

The program is just the exe, there are no required support files. I'll probably release the source code with 1.0.
Cagey
QUOTE (taleden @ Apr 28 2004, 02:58 PM)
What do you mean by arrange things in the program before they're united?

Shifting input map files to a new location in space before merging them, I'd guess.

This is going in the FAQ smile.gif
taleden
Well, it would be pretty simple to apply a coordinate offset during merging, but I'd be surprised if anybody found that very useful: you'd have to calculate the proper offset vector, and if you're going to do that, you might as well just build your segments so that their coordinates fit together when merged. When I map, I start building new stuff connected to old stuff, and if I decide I want to split off the new stuff into a new file, I just delete the old stuff, save-as the new file, and then open the old file and delete the new stuff from that one.

However, if people think this would be a useful feature to add, I can work on it. Any other votes?
Jean_Luc_Picard
OH THANK GOD!


You map the exact same way I do... and I must say it is a cast iron B*TCH to get the separate rooms together the right way... especially if parts have been modified via vertex editing...
statusq
QUOTE (XP-Cagey @ Apr 29 2004, 01:06 AM)
QUOTE (taleden @ Apr 28 2004, 02:58 PM)
What do you mean by arrange things in the program before they're united?

Shifting input map files to a new location in space before merging them, I'd guess.

Yeah, that was what I meant. And as I did not know this proggie was command-line only, I meant you could added a possibility to move the map pieces just like in a map editor. So no offsetvector calculations needed by user smile.gif
Also regarding QuArK: you can group things in a folder and for example set it's visibility to 'hidden' and turn on 'ignore to build maps' so that part of the map isn't visible in editor and isn't compiled. I have included two reference images as links since I don't want to spam this thread with unnecessary images.

Image 1
Image 2
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2009 Invision Power Services, Inc.