What do you dislike about Hammer?

laghlagh

L6: Sharp Member
Jul 15, 2008
389
53
Maybe a glider to adjust transparancy of all tool textures and entities (not models), or eventually just a "clear view" button making you see only what will be seen when compiled.
 

Radenska

L2: Junior Member
Jan 31, 2008
53
18
what i completely dislike is when i have to compare settings for two entities that are on different ends of my map
i´d like to be able to have two properties-windows open at the same time for better and faster comparison

This would make troubleshooting on a surface level much better. Half of the issues I've run into the past few months were simple property flubs on my part - translating values for so many entities can be bothersome to track, and are simple enough to miss.
 

Brandished

L5: Dapper Member
Jan 19, 2008
234
311
This would make troubleshooting on a surface level much better. Half of the issues I've run into the past few months were simple property flubs on my part - translating values for so many entities can be bothersome to track, and are simple enough to miss.

That's something else I've always wanted for making levels as well. IIRC, Hammer had a nice entity editor for like a week, but Valve removed it shortly after releasing it for some reason. UnrealEd and the Crysis Sandbox editor have nice built in entity / IO editors like this.

Something allowing you to see a nice breakdown of entity setups would be very helpful for debugging, although I'm not sure how difficult it would be to make. For a rough mockup, maybe something this:

 
Last edited:

A Boojum Snark

Toraipoddodezain Mazahabado
aa
Nov 2, 2007
4,775
7,669
You know how to registry edit?

HKEY_CURRENT_USER\Software\Valve\Hammer\Splitter

Change one of the DrawType keys to a value of a, the four of them are the four viewports. (0,0 is upper left. 1,1 is lower right) The value denotes what the viewport type is, and a is logical view
 
Last edited:

Radenska

L2: Junior Member
Jan 31, 2008
53
18
That's something else I've always wanted for making levels as well. IIRC, Hammer had a nice entity editor for like a week, but Valve removed it shortly after releasing it for some reason. UnrealEd and the Crysis Sandbox editor have nice built in entity / IO editors like this.

Something allowing you to see a nice breakdown of entity setups would be very helpful for debugging, although I'm not sure how difficult it would be to make. For a rough mockup, maybe something this:


I like the idea of a visual inputs/outputs tree for entities as an alternative to the excel sheets. It'd be nice to see the traffic all at once.
 

zornor

L4: Comfortable Member
Jan 14, 2009
195
23
what i completely dislike is when i have to compare settings for two entities that are on different ends of my map
i´d like to be able to have two properties-windows open at the same time for better and faster comparison

If not, the ability to set "friends" of entities would be nice. They aren't grouped together, and are ignored by the compiler, but in... EarlHammer or whatever, you can set the friends of an entity. All this is for is quickly switching between two entities that are frequently compared. If you're using a entity properties window similar to the current one, then it'd be a drop-down menu at the top right next to the tabs or something.

also, bump
 

medd

L2: Junior Member
Feb 21, 2009
50
2
I wish there was an easier way to resize overlays, like from the 2D windows or something. Maybe there is a better way, but I generally find it to be a pain to increase the size of an overlay, and make it the same proportion...
 

Earl

L6: Sharp Member
Dec 21, 2007
284
38
Quick update:

Haven't had much time to work on this lately, but I'm in the middle of getting textures loading. I can successfully extract textures from GCF's, now I'm working on interfacing with VTFLib.
 

(s2a) yahodahan

L3: Member
Apr 22, 2009
144
18
I have to say, what you are creating might just be the Holy Grail, and it's a safe bet I'm not the only hair-pulling-head-bashing-frustrated Hammer user who feels that way.

As a user of several very different game engines, 3D apps, etc, I think a good way to go about this is simply looking at who does what best, and, well, steal from them!

I am mainly a UnrealEd 3.0 user, and have to say, LOVE it, it really is a fantastic game engine. Hammer could learn a lot from it, and I would like to outline as much as I can think of below.

I enjoy Hammer for many things...but so much more of it just seems idiotic to me. Please keep in mind as you read this that I do NOT "hate" hammer, I just believe it has a lot it REALLY needs to learn and grow from!

***What Hammer Could Learn From the Unreal 3 Engine***

-get rid of the whole silly "leak/no leak" thing. I can compile WAY more complex maps in U3 in a fraction of the time, with excellent lighting, and never have to worry about "leaks" or such

-Axis constrained movement! U3 stole this from max/maya/every other 3D app, now Hammer needs to get in with the cool crowd and grab it. Having the ability to visually move things around in the 3D view, with the "xyz" arrows, would be WONDERFUL. It would be great in the 2D views, too. Applying this to Scale and Rotation would be great as well (again, U3 already does this so easily).

-real-time view of the 3D skybox. It is HORRIBLY annoying that I am forced to compile my entire map, or even with the cordon tool, just to see if my skybox is correct. Wouldn't it be fairly easy to set up a "virtual camera" that could be manually told to "snapshot" from the skybox, and apply it as a temporary texture to the skybox texture in your main level? This would still be fairly restrictive, but would give a HUGE amount of visual aid and control for us mappers using 3D skyboxes!!

-real-time particles systems. Another thing U3 does great, and is lovely to have.

-LIGHTMAPPING ON ALL SURFACES! O, the horror and crushing sadness my heart felt when I realized that, alas, Hammer would NOT light my custom models with anything other than ugly, ugly vertex lighting. WHAT??! I can't imagine the reasoning behind this, I know BSP can used for a lot, but some things it just can't do! Or, I can simply do it much better, faster, and more efficiently in 3DS Max/Maya/etc. Support for lightmaps would be AMAZING.

-Compile errors with no reason? How about the compiler just WORKS (for large, complex, open-air environments, and other admittedly tough maps). Even with VBCT (love it!), I run smack into a wall if I try to get too complex and detailed, if there arn't enough visplanes to chop everything up. Sure, this isn't the most efficient map idea, but what if I DO want a map that is completely open environment, and cant be broken up into different vis leafs? Shouldn't it just chug away, compile it, let me run it- and I'll deal with making the FPS work for players? Nope, it just gives up mid way through the compile each time... (this is a particularly sore issue at the moment...)

-real "WYSIWYG" editing (What You See Is What You Get)? U3 is a true-to-the-bones WYSIWYG editor, amazingly so, in fact. If you turn on all the right checkyboxes, EXACTLY what you see in-editor is EXACTLY what you will see in game. Even better, you can even HEAR everything! Particles, specular, normal, parallax, audio, animations, complete lighting, it is all there. This is a wonderful time saving feature, obviously not all machines can handle it, but it is available and great!

**a note on WYSIWYG- Unreal 3 accomplishes this by simply saving all those lightmaps that it (and hammer) compiles, however it then applies all those lightmaps to the editor- genius! Hammer should be able to access those lightmaps somehow, as well...??

-Multiple property windows

-A "generic browser" like Unreal3, which allows you to view very easily anything at all, from textures to shaders to models to animations to particles, etc. You can even edit them in this viewer, AND it doesn't lock you out of selecting/changing/manipulating the rest of the world (unlike Hammer).

-"zoom to selected" key! Just like all 3D apps have, and Unreal 3 has, a key that quickly zooms your 3D view into the object you have selected would be great.

-advanced terrain painting (see U3, again). The displacement painting in Hammer is just plain awful, sorry to say, if you go try the U3 system, or others, this becomes immediately obvious. I see you and others have already hit this point several times :)

-A 3Dapp-to-Hammer Worlflow That DOESN'T Make Me Want To Dig My Brains Out with a Rusty Shovel! There are SO many, so complex, so ridiculous steps required just to get a simple freakn' custom 3D model into Hammer, or even just a material, it is beyond my imagination how such a convoluted and obviously insane system was developed.

Okay, so there were actually very likely GOOD reasons for it back in the day (maybe, maybe), but these days, it is just not cool.

When I make an object for unreal, I just export it as the super-common-used-by-everything "ASCII" file, then import it BAM into U3 and I'm done!

(this is the point where those of you who have only used Hammer say "HOLY MOLY, that was soooooo EASY!, I never imagined a world where things could be so beautiful!")

but wait, there's more! To make a U3 material, I just save it out from Photoshop as the super-common-used-by-all Targa file type, and BAM, import to U3 editor, DONE! That was super easy, and you won't even have to download a SINGLE plugin, U3 does it all for you!!!

(this is the point where you say "thud" as you faint from pure ecstasy imagining the simplistic ease and joy that importing models and materials this way would be).

Really, the import process for Hammer is just absurd, okay? We all know it, or at least now you do. If the U3 method of importing is a graceful 20foot leaping slamdunk by Michael Jordan, then Hammer importing is the drunken fan who leaps out of his seat, tumbles down the aisles and onto the court, breaking every bone in his body and pancaking several newborn infants, and happens to land (inexplicably) in the hoop.

:D

Okay, I'm done ranting. I DO love Hammer for some things, but it is definitely a love/hate relationship. Especially coming from U3 mapping, an editor that Hammer is SO far behind in many ways. I realize these are geared toward completely different game types/styles, in many ways, however so much could still be translated, especially in "usability".

Thanks for listening, and I really hope your project works, I will be it's #1 fan!!
 

A Boojum Snark

Toraipoddodezain Mazahabado
aa
Nov 2, 2007
4,775
7,669
-Axis constrained movement! U3 stole this from max/maya/every other 3D app, now Hammer needs to get in with the cool crowd and grab it. Having the ability to visually move things around in the 3D view, with the "xyz" arrows, would be WONDERFUL. It would be great in the 2D views, too. Applying this to Scale and Rotation would be great as well (again, U3 already does this so easily).

-"zoom to selected" key! Just like all 3D apps have, and Unreal 3 has, a key that quickly zooms your 3D view into the object you have selected would be great.
I'm not entirely sure what you're talking about here, since I've never used any of the mentioned programs, but you can toggle manipulation in 3D in Hammer by hitting X while over the 3D view.

and for the second thing... ctrl+shift+e

Then the vast majority of everything else you said is simply how the Source engine works, and has nothing to do with Hammer.
 

grazr

Old Man Mutant Ninja Turtle
aa
Mar 4, 2008
5,441
3,814
How the vertex point variable options in the overlay entity setup page are actually vector variables rather than vertice coordinates.

Or atleast when you change your smart-edit mode.
 

(s2a) yahodahan

L3: Member
Apr 22, 2009
144
18
A Boojum Snark- good points. A lot of those issues are beyond just Hammer, and are perhaps more just the whole Source system/flow itself. However, many of them are directly hammer related items and I believe they could use serious updating to match the competition.

About the "zoom to object" and 3D view moving/etc, it is true those exist, I should be more specific. The zoom only zooms to the center of the object-ish, versus properly centering the view on the object and zooming as close as possible without clipping any parts (at least, I personally would like this better).

Secondly, manipulating in the 3D view is there, and that's fine, but I was wishing it were controllable via the "axis constraint". Basically, this just means you have little arrows that show up on selected object/objects. One arrow shows the "x" direction, one shows the "y" direction, and one the "z" direction, and you can move the object along any of the 3 axis (x,y,z) by grabbing the individual arrow and pulling. This is GREAT for precision work. If something like this already exists in hammer, I will be happy to be proven wrong!! :)

(info on the axis gizmo: here)
 

Earl

L6: Sharp Member
Dec 21, 2007
284
38
I have to say, what you are creating might just be the Holy Grail, and it's a safe bet I'm not the only hair-pulling-head-bashing-frustrated Hammer user who feels that way.

As a user of several very different game engines, 3D apps, etc, I think a good way to go about this is simply looking at who does what best, and, well, steal from them!

I am mainly a UnrealEd 3.0 user, and have to say, LOVE it, it really is a fantastic game engine. Hammer could learn a lot from it, and I would like to outline as much as I can think of below.

I enjoy Hammer for many things...but so much more of it just seems idiotic to me. Please keep in mind as you read this that I do NOT "hate" hammer, I just believe it has a lot it REALLY needs to learn and grow from!

I agree. Much room for improvement, and a lot of editors that do it better.

***What Hammer Could Learn From the Unreal 3 Engine***

-get rid of the whole silly "leak/no leak" thing. I can compile WAY more complex maps in U3 in a fraction of the time, with excellent lighting, and never have to worry about "leaks" or such

Impossible. VBSP needs your map to be a bunch of blocks that may or may not seal entities from the void. There's really no way around this.

-Axis constrained movement! U3 stole this from max/maya/every other 3D app, now Hammer needs to get in with the cool crowd and grab it. Having the ability to visually move things around in the 3D view, with the "xyz" arrows, would be WONDERFUL. It would be great in the 2D views, too. Applying this to Scale and Rotation would be great as well (again, U3 already does this so easily).

I was going to have these options. Select an object, and you get axis-constrained handles to drag. Similar to Blender.

-real-time view of the 3D skybox. It is HORRIBLY annoying that I am forced to compile my entire map, or even with the cordon tool, just to see if my skybox is correct. Wouldn't it be fairly easy to set up a "virtual camera" that could be manually told to "snapshot" from the skybox, and apply it as a temporary texture to the skybox texture in your main level? This would still be fairly restrictive, but would give a HUGE amount of visual aid and control for us mappers using 3D skyboxes!!

This wouldn't be too hard to implement. However, it has the capability to make the 3D view chug, because the 3D skybox wont be vis-sealed from the rest of the map.

-real-time particles systems. Another thing U3 does great, and is lovely to have.

Engine limitation, not Hammer limitation. (Is that particle editor still beta-only?)

-LIGHTMAPPING ON ALL SURFACES! O, the horror and crushing sadness my heart felt when I realized that, alas, Hammer would NOT light my custom models with anything other than ugly, ugly vertex lighting. WHAT??! I can't imagine the reasoning behind this, I know BSP can used for a lot, but some things it just can't do! Or, I can simply do it much better, faster, and more efficiently in 3DS Max/Maya/etc. Support for lightmaps would be AMAZING.

Models are always vertex lit. Engine limitation... If you want lightmapped surfaces, it has to be brush geometry.

-Compile errors with no reason? How about the compiler just WORKS (for large, complex, open-air environments, and other admittedly tough maps). Even with VBCT (love it!), I run smack into a wall if I try to get too complex and detailed, if there arn't enough visplanes to chop everything up. Sure, this isn't the most efficient map idea, but what if I DO want a map that is completely open environment, and cant be broken up into different vis leafs? Shouldn't it just chug away, compile it, let me run it- and I'll deal with making the FPS work for players? Nope, it just gives up mid way through the compile each time... (this is a particularly sore issue at the moment...)

I believe there are some hard-coded maxes on various objects in the compile tools. There's nothing I can really do here unless I want to rewrite VBSP or VRAD, which I'm not going to do.

-real "WYSIWYG" editing (What You See Is What You Get)? U3 is a true-to-the-bones WYSIWYG editor, amazingly so, in fact. If you turn on all the right checkyboxes, EXACTLY what you see in-editor is EXACTLY what you will see in game. Even better, you can even HEAR everything! Particles, specular, normal, parallax, audio, animations, complete lighting, it is all there. This is a wonderful time saving feature, obviously not all machines can handle it, but it is available and great!

The tradeoff for the beautiful radiosity lighting VRAD does, is that you can never have a realtime lighting preview.... You can simulate it, but it's never going to be fully WYSIWYG. And I can't recreate the fragment shaders in the editor (e.g. normal mapping, specular) -- Source uses Direct3D, I'm using OpenGL. Maybe I can approximate them though....

**a note on WYSIWYG- Unreal 3 accomplishes this by simply saving all those lightmaps that it (and hammer) compiles, however it then applies all those lightmaps to the editor- genius! Hammer should be able to access those lightmaps somehow, as well...??

Pipe dream. Although, I've never tried reverse engineering a compiled BSP.

-Multiple property windows

-A "generic browser" like Unreal3, which allows you to view very easily anything at all, from textures to shaders to models to animations to particles, etc. You can even edit them in this viewer, AND it doesn't lock you out of selecting/changing/manipulating the rest of the world (unlike Hammer).

Way out of scope of what I want to do.

-"zoom to selected" key! Just like all 3D apps have, and Unreal 3 has, a key that quickly zooms your 3D view into the object you have selected would be great.

Already exists, will keep it in my editor.

-advanced terrain painting (see U3, again). The displacement painting in Hammer is just plain awful, sorry to say, if you go try the U3 system, or others, this becomes immediately obvious. I see you and others have already hit this point several times :)

Way ahead of you. ;)

-A 3Dapp-to-Hammer Worlflow That DOESN'T Make Me Want To Dig My Brains Out with a Rusty Shovel! There are SO many, so complex, so ridiculous steps required just to get a simple freakn' custom 3D model into Hammer, or even just a material, it is beyond my imagination how such a convoluted and obviously insane system was developed.

Out of scope...

Okay, so there were actually very likely GOOD reasons for it back in the day (maybe, maybe), but these days, it is just not cool.

When I make an object for unreal, I just export it as the super-common-used-by-everything "ASCII" file, then import it BAM into U3 and I'm done!

There are a bajillion ascii model formats. .OBJ is most popular I believe. But I'm not integrating a front end for studiomdl.exe for this project.

(this is the point where those of you who have only used Hammer say "HOLY MOLY, that was soooooo EASY!, I never imagined a world where things could be so beautiful!")

but wait, there's more! To make a U3 material, I just save it out from Photoshop as the super-common-used-by-all Targa file type, and BAM, import to U3 editor, DONE! That was super easy, and you won't even have to download a SINGLE plugin, U3 does it all for you!!!

If you've ever looked at a .vmt there's a bit more tovalve materials than just a targa. Some tighter integration with VTFLib wouldn't be impossible, it's just a bit out of scope.

(this is the point where you say "thud" as you faint from pure ecstasy imagining the simplistic ease and joy that importing models and materials this way would be).

Really, the import process for Hammer is just absurd, okay? We all know it, or at least now you do. If the U3 method of importing is a graceful 20foot leaping slamdunk by Michael Jordan, then Hammer importing is the drunken fan who leaps out of his seat, tumbles down the aisles and onto the court, breaking every bone in his body and pancaking several newborn infants, and happens to land (inexplicably) in the hoop.

:D

Okay, I'm done ranting. I DO love Hammer for some things, but it is definitely a love/hate relationship. Especially coming from U3 mapping, an editor that Hammer is SO far behind in many ways. I realize these are geared toward completely different game types/styles, in many ways, however so much could still be translated, especially in "usability".

Thanks for listening, and I really hope your project works, I will be it's #1 fan!!

Well hammer really hasn't changed much in a decade, so it's no surprise that newer map editors run circles around it. I guess that's why I've taken on this project.
 
Last edited:

Mar

Banned
Feb 12, 2009
607
63
Hm, I wish there entity hot keys, as in you hit the entity button and a number it automatically makes certain point entities. I'm working on the proportions of my map and so I'm constantly putting sentries, bomb carts, and heavies across the map, but always choosing entity, prop_static is a pain in the ass. So I wish there was a way to hotkey entities and there properties.
 

A Boojum Snark

Toraipoddodezain Mazahabado
aa
Nov 2, 2007
4,775
7,669
Hm, I wish there entity hot keys, as in you hit the entity button and a number it automatically makes certain point entities. I'm working on the proportions of my map and so I'm constantly putting sentries, bomb carts, and heavies across the map, but always choosing entity, prop_static is a pain in the ass. So I wish there was a way to hotkey entities and there properties.
http://developer.valvesoftware.com/wiki/Prefab
 

Brandished

L5: Dapper Member
Jan 19, 2008
234
311
You can still access (the splitter view), but it requires registry editing every time you want to use it. ...and it's not THAT great.

It's been several days, and I haven't had to re-edit the registry to get the Logical view back. This is after I've restarted Hammer quite a few times, and even after having switched between the Ep1 and OrangeBox SDK's it's stayed enabled. Although I guess if I changed the viewport it's in to a different option I'd probably have to go back through the registry to re-enable it. I personally think it's great, but the main setback is there isn't really a descent entity sorting option, the entities all tend to get clustered together, especially in complex maps.

Secondly, manipulating in the 3D view is there, and that's fine, but I was wishing it were controllable via the "axis constraint". Basically, this just means you have little arrows that show up on selected object/objects. One arrow shows the "x" direction, one shows the "y" direction, and one the "z" direction, and you can move the object along any of the 3 axis (x,y,z) by grabbing the individual arrow and pulling. This is GREAT for precision work. If something like this already exists in hammer, I will be happy to be proven wrong!! :)

I agree with you, transformation gizmos/widgets/manipulators would be very useful, especially in the 3D view. These tools are common to almost every 3D app I've used. Being able to use a manipulator on textures (along 2 axies) and displacements would also be very handy.

The other features I wish Hammer had are the free drag resize, create room, and selecting setup from DarkRadiant (open-source fork of the GTK/Qe Radiant level editor made for Doom 3 mods). In radaint, you use Shift+LeftMouseButton to change the selection, this helps prevent accidentally changing the selection off the object you're working with due to a misplaced left click.
 
Last edited: