News | Forum | People | FAQ | Links | Search | Register | Log in
Mapping Help
This is the place to ask about mapping problems, techniques, and bug fixing, and pretty much anything else you want to do in the level editor.

For questions about coding, check out the Coding Help thread:
First | Previous | Next | Last
You'd use

The particular function you'd want is CastLightning. Rather than setting "enemy" "1", which would make the lightning shoot at the player, make another info_notnull. Find out the edict number of this info_notnull, say 23, using the 'edicts' command in the console. Then set "enemy" "23" on the lighting shooter.

Be warned, this kind of hack can be hard to pull off when you have skill levels, because if monsters etc. get removed, the entity number of the lightning target can change. One way to avoid this is to ensure that the lightning target is added before any monsters, so nothing can be removed earlier than this entity. The other way to do it is to have three copies of the setup in your editor, one that only appears in easy skill, one for medium and one for hard. Then work out the correct entity number for each skill level. 
What If 
I edit the .map file using wordpad or notepad and move the entity to the start? Or swap it with the first one? Would that work?

Thnx BTW :) 
The first way would certainly work, except that you'd have to do this each time, which would be a pain. It's better to make sure that the entities are in order in your editor, which in worldcraft means adding them first - no idea about other editors. I think the latter way of doing it(one version for each skill) is gonna be easier in the long run... 
As it happens, I havent put any enemies in the map yet! I think what I'll do is use Weapon Lightning for the mo as a marker type thing, and then right at the end (after all testing and stuff) change it for shambler lightning. Anyhoo, its good to know I've got options here!

Thnx again!!! 
The Time Is Now 
If there's nothing in the map that's gonna get removed by spawnflags yet - that's the perfect time to sort this out! You won't have many entities to look for in your list of edicts, and you won't have to worry about anything getting removed. Just don't delete any entities currently in the map and all should(fingers crossed) continue working in the future. So I'd recommend change it now, get it working, then continue adding monsters etc. 
I hope so. I mean I'll try it. I dont know much about the transition between an .rmf file and a .map file. If the edicts are assigned roughly in order with the chronology of how entites are placed in an .rmf, then I would see how it would work! 
I believe that what Im gonna do is make the level to a point where I need some testers, cause that way after I have sorted out the gamepley, I can fix up the lightning using Notepad!!! - Then do it all again for the final version :|

Yes, I believe I have popped my .map-in-Notepad cherry. I see now why its called 'Hacking'

Worldcraft 3.3

Nice GUI and texture alignment stuff, but if you export a .map from an .rmf, then re-load it after a bit of tampering in notepad (or even without any tampering I guess) you lose all of the extra texture alignment info!!

I got the lightning sussed. I moved the targetted info_notnulls to where the first few entities start after all of the world stuff, then use AguirRes engine to look at the edicts, get the number, then change the 'enemy' key appropriately.
I have also discovered how you can clean up a .map file by removing any extra shit you dont need!!!

Worldcraft and notepad dont work in unison very well tho! Worldcraft takes stuff out and adds stuff in like extra keys on import!! So backups have been essential!! - I have to resume building on an un-hacked version. The experiment worked, but I will have to re-do it all again anyway cause I can't resume working on the hacked version :( 
Welcome To 
.map file mapping ... 
i just downloaded 1.5 gtk radiant and there isnt a textures menu can anyone help me? 
I only messed around with 1.5 briefly, I prefer 1.4, but anyway, is it called something else? materials or something maybe? What happens if you press the T key, does that bring up the texture browser? 
Press The Letter T 
and the texture window will come up. Personally, I only use 1.5 for creating prefabs but not for texturing. I hate the new texture methodology here because of the fewer options and the less intuitive set up. Why screw up something that had worked well since QeRadiant? 
ill try that if it dont work ill download 1.4 instead 
they moved the texture menu down so that it is part of the texture viewer portion of the screen. (I think) 
can you use 1.4 to create maps for temulous? 
any of the Radiant builds can be used for Quake mapping. This is I do it - I set Radiant for Quake 3 Arena, I convert the Quake wad I'm using to the Targa format and place them in my Quake 3 directory like this:

Next, you'll need the definitions file, go to
Quake3/BaseQ3/Scripts folder and replace the entities.def file with the Quake1.def file.
Which you can find here:
(Filezilla is the greatest!)

You'll have everything you need to build a map file. You'll run into a few things that might cause you trouble. Don't bother with the curve
tools, they wont translate over to Quake 1, and Quake 3 texture alignment is more flexible than Q1 native so it is best to experiment in this area to see what you can get away with.

Part I 
To Actually Build The Maps 
download the tools on AquiRe's site,

and read the instructions.

When I'm ready to compile a map into a playable bsp file, I make a simple batch file (a text file with a .bat extension) with this sort of text:

Txqbsp -q2map
vis -fast mymap
light -extra -soft -fast mymap

The -q2map is a conditional AquiRe added that allows the compiler to convert the Q3 map (Q2 and Q3 are the same format except for the addition of curves) into Quake data during compilation. 
Oh, And I Put 
Maps, wad files and the tools all in the same folder, but you can be more orginized if you want to by including directoy info like:

Txqbsp -q2map maps/

and include a line in the Worldtype for you wads like so:

does anyone have one for gtk radiant 1.5.0? 
I'm Still Using 1.4--never Saw A Reason To Switch. 
But this might help you. Documentation.

Also, here's a tutorial for 1.5 that I found in a few seconds via the magic of Google, but I have no idea if it's worth anything.;6785024;/fileinfo.html 
Quoth - Lightning 
I was looking at the Quoth tutorial yesterday and saw that they have facilitated lightning use with the entity trap_fired_lightning (or whatever it is). I may not have got the key name correct whilst sitting here typing but I was definately using the correct one yesterday (it is trap_fired_lightining, isnt it ;). How on earth do you make it fire downwards??!?! It doesn't matter what values I set for 'mangle' or 'angle', it wont fire downwards! Annoying really. I may just end up using the hacks I was gonna use for the lightning anyway, I just thought the Quoth one would be easier!

Any clues?

Ive tried 'mangle' '-90 0 0', '0 -90 0', '-90 -90 -90', Ive tried the same values for 'angle'. None seem to work!! 
Oh Oops 
Try angle -2 
If it says mangle in the documentation, that should just work straight up. I will take a look at this for quoth2. 
At the moment, mangle support isn't there, it will be for quoth2. Angles should work, but you'll run into the usual problem of the editor only exporting the yaw component. Your best bet is to add an info_notnull where you want the lightning to strike, give that a "targetname", and give the lightning a "target" key with the same name. 
mangle is the light direction saying "yaw pitch 0"
angle is the cone angle formed by the light

yaw is in [0:360] range
pitch is in [-90:90] range

As exmaple if you want a light that gives a top-down light cone you need a mangle set to 0 -90 0

But it mainly depends of both editor and light tool you are using

and Preach method is as good as it describes it, except it might consume edicts... but I'm not sure about that point...

and it has been saif, read the documentation of the light tool (if it exist)

Hope it helped. 
Lightning Strikes Twice 
What JPL says is true, but it only applies to lights, not the lightning effect entity - a quoth feature that sends a bolt of lightning like the shambler's in the direction given. I just through I'd mention that targetting spotlights at an entity doesn't have to actually increase the edict count. Just use an info_null, not an info_notnull, as your target, and it will get removed at worldspawn. This is the distinction between an info_null and an info_notnull, the former is removed when the map is loaded, so it should be used for compiler time purposes like targetting spotlights. The info_notnull is not removed, so it's intended use is as a target for things that happen in game, such as lightning bolts. 
I had alot of problems with the Quoth1 lightning in warpd. Originally the laser blasters all over the place were going to be lighning, but they all pointed in the seemingly random directions no matter what I did with angles nulls etc.

Possibly the edict load was too high and the lightning was firing at other stuff in the edict list. The random angles were always cardinal directions but never where I wanted. Perhaps its for the best since the blaster traps are at least dodgable. 
I can't seem to emulate the cardinal directions only bug, hopefully it's gone in quoth2 or it's just a high entity issue like you say. I've made a test map, which suggests that angles works in quoth, but you'll have to edit the entity file if you want more that a simple yaw, because that's all the editor exports. Also targeted lightning works, which looked broken when I checked out the code for quoth2, but I guess wasn't. "mangle" support is not in quoth but will be in quoth2.

Just posting this to say if anyone else has known bugs like this in the current version of quoth, now's the time to e-mail me or leave a message. If you mention it soon, it'll make it into quoth2, but inter-version patches are unlikely for anything but game breaking bugs.

And yeah, the blaster traps worked really well, enough of a threat that you had to take care, but also useful enough to turn against monsters when ammo was low. 
Unable To Find 
this is what it says when i load 1.5:
Unable to find default tag file C:/Program Files/GtkRadiant 1.5.0/ No tag support. any ideas on how i can fix this? 
Sorry guys, I've been away for a couple of days - thanks for the cumulative response!

OK - Spirit, erm, yeah, I hope your right!

'angle' '-2'

I'll try that!!!

Preach - Targetting info_notnulls - er, sorry, tried that too, doesnt work (not for me anyway).
BTW, what do you mean by editing the entity file?

As for the editor only exporting the yaw, erm I've been using notepad and a command prompt for tinkering around with this, cause its less stressfull when all your doing is changing key-values!!

Ijed - by the sound of it, you know what I mean!

JPL - easy-to-make misunderstanding! I have loads of spotlights, and lights like

'light' '65'
'wait' '2'

in my current level but as you may have realised by now, I meant lightNing, sorry, not lighting. Although I have been bombarding this thread with questions about lighting and lightning ;)

So in short I can either:

Resort back to using hacks do do the lightning (which did work :) (thanks Preach)


Hope 'angle' '-2' works!!! 
A few things that many don't know when they start but;

-1 is up, -2 down for angle keys.

Putting a -1 in the texture scale (instead of 1) flips the texture in that direction. Useful if you've got a written sign and the letters are backwards because of which way round it is.

Negative trigger hurt's give the player health (even though they still scream / do pain fx). It's also past the normal maxiumum.

There's probably other tricks that aren't quite hacks as well; delays for lights (aguirRe's page) or proper hacks; the Teaching Old Progs .dat thread. 
I don't know shit about 1.5 or Tremulous, but have you read these instructions and followed them?

Seems pretty straightforward...don't miss the part about downloading the missing files, etc.

If you have done all that, and things still don't work, I would suggest asking for help in the dedicated Tremulous mapping forum here:

...and probably read the guide at the top of that forum as well.

Google is your friend. 
Weird Angles 
-1 and -2 for angles won't work in this case. It only works for certain entities, namely ones that call the function SetMoveDir(), which correctly reads the angles. The function is designed for creating a unit vector that the entity uses for movement purposes. The lightning doesn't move, it just gets fired, so it uses the angles as they are set. More like a info_intermission(or it will be once mangle works correctly).
is a map that shows the info_notnull way to set it up. So try copying that.

Entity file: There are some quake tools, like adquedit, that will extract an "entity file". This is literally a plain text file containing the entity data from the map. It looks fairly similar to what you'd see in the map file, but without any of the brush lines for brush entities. The added bonus is that you can then import an edited .ent file back into the map with the same program, so you don't have to recompile it. Furthermore, some engines will automatically load an .ent file with the corresponding name of a map, in the same way they'd load a .lit file. Except this time it replaces entity information, not light information. 
Diagonal Arches 
Arches are a pain the arse already, but what I haven't done before is diagonal ones. How do I make it so that it will evenly fit into the space?

Here is a screenshot of where I want a double-arched window.

How would you do it? 
...and While I'm Here... 
Is there any way to just simply add a vert to a line on a brush? Really made life easy in Doom mapping, so I'm hoping for something similar in Quake, but I can't find any way to just simply add a new vert without having to clip the line. 
Kenny, regarding diagonal curves, I made this for you: 
Apparently a lot of people like a 15 degrees rotated version of the simple curve showed in my pic... here is the 24-sided version of it (linked by bambuz): Anyways this should give you some ideas how to make curvy stuff the right way. 
Why not making a simple arch+wall and rotate it by 45�? 
problem with that is that rotating it would result in all the brushes being off-grid and probably have gaps, creases, and overlaps. 
And why not making a wall and rotate the negative arch by 45� and substract the brushes? 
Im gonna retexture the map you posted and compile it and try it later, but looking at it in notepad I dont understand why the lightning has a 'mangle' and a 'target'. I mean I have tried both of these techniques but not together at the same time, mainly cause the tutorial said to use 'target', 'mangle' or 'angle' - one or the other?!!?

Also you have light entities with:

"classname" "light"
"light" "400"
"wait" "1"
"mangle" "0 -90 0"
"angle" "70"
"origin" "-96 -88 384"

Surely you could ditch the 'angle' and write

"mangle" "70 -90 0"

Hehe - I was thinking I'll probably end up just using the hack for the lightning anyway cause it sounds better!

Also if I had some small func_trains following a path round in a circular shape (a six or eight edged route), I could source some info_notnull lighning in the middle using the CastLightning style entity, and then target the trains using the 'enemy' key... - voila - Half-Life intro style scene! 
Substracting is just as evil as rotating. 
Just make the shape by eye - all of these fancy tutorials and techniques for making quake-friendly curves dont give true curves anyway. A true circle wouldnt hit a 1*1 grid anywhere (potentially). Use wedge shaped brushes to make the shape, or four-sided brushes with a clipping tool for example. If you can get all of the edges on the grid you can go back and re-make the shape using less brushes. 
Oh No - Wait A Mo 
If you make the arches as simple as poss, say with two wedges in each corner, rotate by 45 degrees, then use vertex manipulation tool to line the points up on the grid! I dont think you would get any illegal faces because its 45 degrees all the way. 
The thing about the fancy methods is they let you build it once and know for sure it'll work, letting you copy it throughout the level. Also you can make much more complex shapes, like helix' multiple curves etc. Look at the very first room in czg07c to see a good example.

And it's much cheaper for vis time. 
I have an .rmf called acurve.rmf full of pre-fabricated curved shapes. Its soo easy to use them for whatever.

The problem is that rudl needs it to be 45 degrees rotated. Thats a pain cause although you could fit all of the points onto a 2*2 grid or whatever, you might find yourself with illegal faces, which worldcraft will render ok, but by the time its been through a Qbsp.exe its gonna distort the shape - you might end up with small gaps between brushes.

1: Make your arch.

2: Rotate your arch 45 degrees.

3: Scale your arch in the X/Y plane by 1.060606... , OR up so the bounding box is 1.5 times larger than the original arch.

4: Snap to grid 1/4 of what the original arch snapped to (IE if the original was on grid 8, snap to grid 2) 
FYI, angle and mangle keys are not related to each other in a light entity, angle is spot light cone and mangle is spot direction.

Now you seem to be mixing up lighting with lightning ... ;) 
Dont listen to me anybody - I'm only ever speculating.

Rudl - Listen to czg, im only speculating here but I would say he knows about 50 times more about gemetry than I do. Maybe 52 times more...

AguirRe - I did not know that. So increasing the 'angle' of a light which already has a 'mangle' increases the size of the cone. Whats the default 'angle'? 
Gemetry = Geometry 
I cant even spell the word... 
Default is 40 degrees in QuArK...

Go experiment. 
Shazam Strikes Twice 
Sorry, the "mangle" key in the info_lightning_targetted isn't needed. I forgot to remove it when adding the "target" key. "target" will always override "mangle", because having a "target" specifies the end point exactly. "mangle", isn't as precise, saying that the endpoint is up to 600 units in this direction, depending on whether you hit something. Not to mention "mangle" doesn't do anything in the current release of quoth anyway.

And yeah, what aguirRe said about the lights. You should only need the knave.wad file to make it compile, worldcraft throws the others in for fun. It's a texture set well worth having. 
Thats a cool method it's


and it must be built over a square 
no works with other arches too 
Yeah I Realised That After I Hit Submit 
I usually put in 1.06060606006 because it's easy to remember and Ogier doesn't do more than four decimals precision anyway. 
It's possible to set the Number of decimals in Quark.
5 is the dafault value 
Better to scale by exactly 1.375, then shear to 45 degrees, and then use the clipper. Stuff is guaranteed to stay on grid this way. 
Bloody Lightning 
It seams that Preach's map lightning trap worked, so I tried putting my targetted info_notnulls back in an seeing if it would work. You see its not that it dont work at all, it makes the sound of lightning firing for a second, then nothing. So I took out my lightning ents and info_notnulls and put them in another simple room map with a simple brush trigger_once, and long and behold it worked!!

So now I'm think it something to do with my triggers (trigger_relays) - trigger_counter counts three buttons getting pressed, then fires a relay with a "delay" "1" and a message, then fires another relay with a delay that fires the lightning...? 
Did you enable the light "toggle" field ? If it is not the case, you are not able to switch on/off the light. and BTW, it only work with light of style 0 AFAIK.

Hope it helped 
LightNing :) 
Although if you set two relays you can turn a light on and off in rapid succession, emulating a strobe effect!!! So you could have a stobe light effect which could be activated from a light beginning either on or off! 
Arch Scale 
What is the correct scale and how to scale it?

I rotate it 45 degrees, go into transform, click scale, and add 1.060606 to X and Y cos I read it here, but it doesn't fill the gap.

I am basically using a half cylinder to act as a guide for the arch and need it to fit exactly in the space shown in the screenshot below.

try reading 
[i]1: Make your arch.

2: Rotate your arch 45 degrees.

3: Scale your arch in the X/Y plane by 1.060606... , OR up so the bounding box is 1.5 times larger than the original arch.

4: Snap to grid 1/4 of what the original arch snapped to (IE if the original was on grid 8, snap to grid 2)[/i]

This was the only reply that made any sense and seemed concise that even a n00b could follow. Problem is I did this and the gap was not filled.

You can either be a prick or tell me what I'm doing wrong. 
Make The Starting Arch Larger? Make Your Gap Smaller? 
If your gap is x wide (orthogonally), the starting arch needs to be 4x/3 wide.

In your screenshot the gap is 80 units wide, which is not divisible by 3, which is terrible. Make the gap 72 or 96 units wide instead, which would make the starting arch 96 or 128 units wide respectively. 
Does anyone know where I could get a hold of "items.wad"? It's one of the standard id wads I believe but my googling is coming up dry. 
Umm Willem 
aren't all the bsp item textures like ammo box in the normal id1 TEXTURES.WAD?
And the mdl models then have their own texes inbuilt. 
Item Textures 
None of the four standard id wads have those. You can extract them from the item bsps in the paks though. 
Just For The Hell Of It 
I extracted them from my own megawad:

There may be some missing, because I did it manually, but I think that's all. Also, the exlobox's aren't there.

Quaddicted also has a big list of wads, but I didn't want to download the full id wad just to check if its inside there. 
Tripping over ourselves to answer that one. 
Damn - Missed IT! 
Also you get funky Items tex in Worldcraft3 combo!! 
Thanks for the responses guys, very much appreciated! 
And to add a little more info ... Yes, Quake101.wad has them in there but I was hoping that the actual items.wad was floating around somewhere. However, extracting and creating a custom wad from that one would be a problem for me because, remember, I'm on a Mac here. ;)

I think I've got it from here. Thanks again! 
Differences Betwwen CA/RA/TF/CTF/DM Maps 
Hi dear mappers.

I am in need of knowledge. I am trying to build a tool that would automatically sort maps by "type" based on differences.

I think I understood that ALL of TF maps have a in_tfdetect entity, but is there anything that particular for the other types? CTF/RA/CA/regular DM and such? 
I think is the name.

I think there must be at least some special spawns in RA for the players waiting if not anything else... 
I Need Some Testing 
A spot of Doom style blasting!

Plenty pine-apples, plasma battles and powerups!! 
Bspeditor - Undo 
How does the undo function in bspeditor work? For now I can only undo few steps. Is there any way to change it? 
Fitz / Glquake Issues 
Hello, Im having an issue with a fresh install of Quake on an older pc (pent 3 with gf3 ti200) where no version of glquake will run.

First both fitzquake and glquake could not find glide2x.dll so I downloaded a copy of that, now both programs will launch but then fall back to the desktop with the error "genport I/O initialization error" and then something about a non existent SST before a final error message telling me to run in the correct colour depth or something...

Anyone got any ideas? 
Just delete all the dll files in the Quake directory (unless you installed some more engines who brought their own). 
Yup that worked, thanks Spirit :) 
Terrain In 3.3 
I thought it was just a case of dividing a brush into a mesh of vertices and then dragging the verts around to make some interesting mountains and terrain. But the mesh tool is only in 'Hammer' editor, and even that sucks ass.

Is it just just a case of building up a wall of multiple squares and matching up the corners with each verts are varying heights? 
I guess I was right in that last paragraph. Kinda made something that resembles a rocky wall using that method. 
That's generally the way it was done in Quake engines, yeah. Be aware though that if you put that sort of thing on the floor it can lead to a lot of sticky collision and weird sliding if you're not careful. In my experience, anyway... 
I Thought It Was Triangles 
or 'flat triangular prisms' rather than squares, cause if you have a 'square' face that isnt straight, or on one 'plane', then it is an illegal face. But if you use triangles you cant have an illegal face...

Or am I on a completely different topic? 
What I've Found Is 
It's still possible to make illegal or non-vis (the solid shape is treated as a leak - pointfile line goes right through the middle) prisms. Alot of the time now I use four sided pyramids just to avoid that. Maybe going to extremes but it tends to work.

Typically you get broken collision (player gets stuck on an invisible wall when walking from one direction but not another) when the brushes are misaligned, maybe by 1 or 2 units, making the difference invisible in most editors. Normally you must delete the offending brush and all adjacent and rebuild.

Wierd sliding tends to be caused with how you've built the geometry. Basically you learn what shapes the bbox's of Quake don't like to collide with. Typically it means not making the player walk along acute angles or severe angle changes. 
I made a tunnel in my current map with a curved cieling - the tunnel also curves round a corner and drops a total of 64 units on the ground too (ughh). If it didnt slope downwards it would be OK, but because it does I had to replace all of the 6 sided brushes which comprised the cieling with FOUR 4-sided pyramids (I think there is some sort of gap in the middle of each group of four) because bsp.exe was building the original set up with gaps between brushes by the time it had corrected all of the illegal faces!

I'm just glad to hear that someone elso uses a similar technique, cause I thought it was probably considered to be shit practise! 
Maybe It Is . . . 
The idea is not to have empty spaces in between brushes cos vis'll hack it up.

You can correct it in a drawn out way by turning the curved upper part of the tunnel into func_wall, then putting a real ceiling above that, so the map doesn't leak. The func wall receives collision and light, but doesn't cast shadows. That shouldn't matter because it'll have a false ceiling above, and the ends of the tunnel you can leave as real geometry since they don't curve.

As a further geometry hack / fix you can make the curves func_illusionary, then put simpler clip brushes so the player or monsters (especially fiends) don't get stuck.

As to it being bad practice, I think that's the only way you can make a downwards sloping curve. It makes a hell of a mess and produces some weird bsp errors but it works, sort of. 
But Does The Ceiling Need To Slope Down With The Floor? 
Just keep the ceiling level since the floor only drops 64 units, and then there's room above the exit of the tunnel (if there is such a thing) for a little detail of some kind. 
I Was Gonna Ask You Directly Czg... 
Its hard to describe but if you look at the picture below (ignore the disco crates) you can see one exit of the tunnel to the left of the image.

As you can see there is a border to the point where the tunnel meets the room, which extends 32 units outwards (constructed with help from the czg curve tutorial, I might add) but there is no similar margin on the other side of the arch, in the tunnel area, so if I kept the cieling horizontal it would look crap because the verticle side edges would be cut off with banana shapes at the tops or something...

Does that make sense, or do I have to show another image?

The way Ive done it is boxed (I know, I know) and to use the 'four four-sided pyramids in place of six sided brush' technique(vertex alingnment in 3.3 on a 1x1 grid (double ugh...). There are no clipping problems though :), and no cracks neither.

But my brain cant think of a better way, can yours? 
IMHO That Tunnel Sloping Down Is Overly Complex 
Just keep it straight then have a "porch" of sorts with some steps down.
Or some steps inside the tunnel. 
I Think You're Probably Right 
But seeing as I've already made it, and there are no clipping problems, I think I'll have to keep it!

I think next time I run a build, I'll try removing the box. There was a problem at one point with falling through one of the faces on the verticle wall (I think I had accidentally deleted one of the pyramid brushes), but I fixed that with a brush laid against the wall. The wall in question was the source of the leak also, and I havent tried a build without the box since.

Youre right though, next time I have to address such an issue, my approach will certainly be less of a time consuming one! 
Oh My... 
...please don't take this the wrong way, but it's probably not a good idea to ask for mapping advice in public and then ignore it. Doing so does nothing to encourage further assistance or bodies for beta testing.

It's only a small section of the map, why not address the issue now, especially if it isn't going to be particularly time consuming.

This is not a flame. 
Yes I understand what you are saying here.

I have a lot of respect for people like czg, ijed, AguirRe (blimey, who else...), er Preach, spirit, (people I cant off the top of my head remember), er Metlslime, Kell, as well as other people who help to test projects (Trinca, Maxfox, Sielwolf...), who freely give out their time and advice to strangers on the internet, for the good of Quake!

Thanks guys!

You included Distrans!

The context of the qustion I was posing above is as follows:

I had a problem, but solved it on my own terms prior to bringing it up on this thread (I only brought it up really cause somebody else (Kamikaze) was asking about terrain, and the Ijed was going on about using four sided brushes to do complex stuff).

Mr czg is somewhat of an expert when it comes to manipulating geometry in editors (not to mention design, imagination, gameplay, structure, all facets that make a really good mapper really...), so I was asking him if there was a simpler way of creating such geometry than the very amateurish and time-consuming one which I had used.

I interpreted his answer basically as 'no', which doesnt surprise me really, however because I have already spent the time making the tunnel, it seems to me a waste to disguard it now! No disrespect intended ;-P

czg is very right - certainly creating a lot of stuff in a map using the method I have used would be dumb-assed to say the least.

I have considered the unspoken ussue of rspeeds, and feel that compared to other geometry seen in maps, this example isnt really so bad as to remove it for that reason. 
World + Face Align 
Sometimes when I go into Face Properties in WC 3.3, both the world and face align are ticked, and I can't untick either of them.

Basically I was trying to untick world so that the texture being 128x128 would perfectly align and fit the 128x128 brush without having to align it manually by the X & Y axis. 
Rotate_object And Lit 
Having trouble getting rotate_object to light correctly when using colored lighting. Getting completely dark faces. I have tried hmap2 and tyrlite. I have found if I use tyrlite and move the rotate_object to 0,0,0 I can get faces lit.
Everything looks correct with lit file support turned off. BTW using Quoth and fitzquake080.exe 
Problem solved. Was using wrong values for Tyrlite. Had 0-1,0-1,0-1 not 0-255,0-255,0-255. RTFM i guess. BTW in WC 1.6 adding to the FGD

@baseclass = Light
light(integer) : "Brightness" : 200
wait(string) : "Fade distance factor"

Add _color(color1) : "RGB color"
Will give you the color picker as in quake2 FGD 
Thanks for that. 
Anyone here mapped for HL/CS etc.? Because I'm just wondering that, if I were to make something for Half-Life (the original), should I use Worldcraft 3 or Hammer (Steam SDK)? 
I think, it should have a HL1 profile built into it if you have HL1 installed on steam.

Nothing wrong with WC3 but Hammer is more up to date. 
Anyone know the command you type into the Quake console which directs you towards holes in the map? Ta. 
And I Forgot To Say... 
Alright: - Quoth - Info/Trigger_command - Centerprint??!?! 
I moved this over to the Mapping Help thread so as not to get told off:

I have got fog working in my level (hooray!!)


I cant get rid of the centerprint command. It seems that the command itself is set by the "message" key, and aswell as 'firing' the command, it prints the "message" in the center of the screen!! This seems a bit daft to me (or am I missing some spawnflag or something?) because surely the player doesnt need to see some cvar/command!

I am using the fog in a situation where you walk down a blind corridor, and there is a trigger at either end, and as you enter a room the fog is on, and when you leave the other end of the corridor the fog is off. But I dont want to see "fog 0.08 0.5 0.1 0.1" in the middle of the screen, with a sound effect. Any ideas? 
Is It Engine 
indifferent? I seem to remember this issue, but I don't recall any details. 
Center Print 
AFAIK, you have no possibility to remove the message... maybe it will be corrected in Quoth2 :P 
It's Alright Guys! 
After a bit more experimentation, I have found the answer:

info_command + trigger_multiple = no certerprint

trigger_command = centerprint!


"target2" "nameofinfo_command" = incorrect command usage console error (not crash)

hehe :D 
Good info: thanks ! 
Vine Textures? 
Had anybody ever used a simple vine texture with a background that can easily be made into a transparency? I'm generally unlucky in finding good texture repositories. Drooping vines, or anything close, would be really neet-o. 
Check there are tons of texture set there ;)
Make your choice 
Mirrored Textures 
For some strange reasons all textures that I apply to surfraces are mirror images (x-axis reversed). Why and how to revert them? (Worldcraft 3.3) 
In The Texture Editor Box Thingy 
where it says texture size x and y, change it to -1 instead of 1, or whatever you have in there, this will reverse the texture on the axis you chose. 
Terrain Woes 
This is my first real attempt at terrain in Quake. But it appears that what I do in the editor is not reflected in the game.

For example, here is what I've done as seen from the editor:

And here it is in the game:

You can see the edges/verts aren't connecting in the same way as they are in the editor.

I'm guessing it's a problem with the compiling tools? This screenshot wasn't VIS'ed, but on a brief previous attempt at terrain, the same thing happened while the map was fully VIS'ed. 
You're most likely making concave geometry in the editor and it's being moved to the nearest vertex to make it non-concave upon compile. It used to happen to me when I'd try to skew cylinders to make rocks.

Your best bet is to tri-soup that badboy like this: 
Yeah - That 
Chop it up into Five (wedges) or four sided shapes (pyramids) and you'll be good. For overhanging stuff I'd recommend pyramids, but it's more work to keep everything together. Wedges work best for floors; it's easier to keep them neat and without leaks or holes.

Also, you've moved over from Q2 mapping? Good to see you here. 
So Basically.. 
These errors have shown up because I was using rectangle brushes?

I think I tried using triangular brushes previously, but found it more difficult. Guess I will need to practice that. I know the method, just a case of trying to get it to look good!

ijed: No, I was into Quake mapping 10 years ago, but never really finished anything. I've made a few maps for Doom2 in the last couple of years but ended up getting frustrated with the limitations, so came back to Quake. 
go for wedges, ie a 5 sided brush, bottom and top are triangles. Bottom, top, 3 sides.
A triangular slab so to speak.

Then just always look at the brush from the top, select a the slab's corner vertex/endpoint, both the top and bottom vertex at the same time, and move that unit together. One corner of the slab. You can move it sideways or up and down too.

As long as all the three corner vertical edges of the slab are vertical, it stays as a legal brush where it's convex and all the sides are planes.
I made a pic ages ago but it's lost in some of those pic upload services, maybe searchable in this thread. 
Can't Find 
where i can send private message to users? 
You can't. This is a public message board no "communication service". Use e-mail. 
Should've Posted In The Site Help Thread... 
You know you could check the user in question's profile and see if they have their e-mail posted or simply just say who it is you want to contact and someone could probably help you out if it's a current user. 
Quark Users 
Hold n while dragging a vertex, sex! I never knew. 
What does it do? 
Single Vertex Dragging 
That's Really Easy To Do In WC. 
Just push "vertex tool" a few times. 
Ahh OK, thanks! I see that it triangulates the faces when you do that. Is that automatic? 
GtkRadiant Does That Too 
Assuming you have the 'vertex editing splits face' option on, anyway. It'll triangulate a face if you edit verts in such a way that the face is no longer planar. (It will also automatically un-triangulate (quadrangulate?) it when you move it back to a position that does create a planar face again, I believe).

It's a a nice feature! :) 
It is also possible to press n and rmb on it and force the vertex to the grid. Otherwise Quark sometimes moves other vertexes. And even then when you look at the .map file with a text-editor it's a mess too many dezimals. Vertexes that should be on grid because forced are not. That's (apart from the bugs) a reason why I switched to bsp. I couldn't finish a map with QuarK because I struggled with Hom effects as the map got bigger.

untriangulate does not really work in Quark. it results in invalid Polys or moves other vertexes. 
Oh indeed. And I thought I set the right settings this time (no floating point, Quake map format). Gah! 
Erm - Gawd... Transparent Textures I.e. Wire Fences 
Trying to explain but words are failing me...
(in a hurry)
You know in halflife you get those wire fences, and grills/grates etc, also stuff like vines and sometimes hanging cables which are made from brushes using textures which are fully opaque, except for one 'colour' which is fully transparent (i believe in the HL Quake Wad its a sort of blue colour)?

Can this be done in Quake?

Im thinking JPL is doing glass, Trinca did some in Wicked Base etc, but what I mean wouldnt be like that (func_wall with ".alpha" key).
I seem to remember one person say "why has no-one done this for quake yet, cause a lot of modern engines support it"

Does anyone know what I mean, or even better how to do it, i.e. what colour in the palette is "invisible"?

(I always thought it was funny in Halflife cause say the fence brush was 4 units thick, if you stood on one side then the other you could see the fence move four units cause the nearside of the brush would be the only visible side)

You mean like this?

It's done as a sprite, instead of a texture, but it's pretty damn close.

It's in the next Quoth pak. 
Yeah - Like That!! 
But isnt there a way of doing it with brush-models? 
I managed with Fimg to make a sort of drags-sprite like hexen2, only it moves to fast.
It is half transparant, but for making it with brushes I heard of a glass thing in the base pak developpement. See BasePack #252. 
you have to use sprites.

Unfortunately sprites can't be lit by the level's lighting calculations or by dynamic lights, and in any GL engine other than fitzquake you get pink edges around the sprites, plus in glquake the sprites are upside-down, plus glquake doesn't support oriented sprites, only camera-facing ones.

I actually have sprite grates in rubicon 2, but removed them from my levels after realizing all these problems. 
Oh Oh Oh ! Nice !
However, it seems to be applied only on a single face, and there is no thickness... Well, the visual effect is damned good !! Cool ! 
why not just use the alphamasked textures (fuck old engines compatribility, 90% play with the engines that support alpha) 
...Could you ellaborate?
What is an alphamasked texture?


Kell: - Honestly, "what JPL sed!" :D :D 
I've always enjoy the solidity of the Quake engine. Single polygon alpha textures have a paper thin quality that doesn't really appeal to me. I know I don't speak for everyone (obviously) but give me old school heft any day. :) 
Cannot connect to database - post lost. 
That Sounds Like A Real Shame Ijed 
I wander what you were gonna say?

(ironic you managed to post "bah" post) 
Yeah, And I Rewrote It And The Same Thing Happened, Only Just Got It B 
I agree that Quake looks better with chunky geometry rather than flat alpha textures, but for foliage there's nothing better. Also thinking if animated flames would be possible to replace the old rotating models, but that'd probably involve some sort of prefab creation.

Kell / Preach have eliminated the annoying HL1 effect of seeing both sides of the brush mentioned earlier, which is a good move.

Alpha mask is a black and white texture applied over the top of a diffuse texture - white is visible and black not, with shades of grey being semitransparent.

Quake uses colorkey, which basically defines a single specific colour as invisible (since it's just a string of numbers). The problem is that you get hacky edges from the image compression and there's no transparency gradient.

>> lucky I copied it this time. 
I guess the color choice has been done with a little bit of clue: like a nice pink flashy gay color :P 
its usually either retro gay pink, or modern gay purple. 
Not Really Mapping But... 
I want to convert Quake bsps to a format that Maya can read along with all textures and the lightmap. I wonder if anyone has already made a converter to do this. Anyone know? If not, then I wouldn't mind having a go myself sometime, does anyone have a copy of the bsp specs for Q1? 
Reading the BSP files directly takes balls of steel. :) Are you sure you wouldn't want to maybe convert MAP files instead? It would seem a lot easier. 
it can convert .map to .obj or .ma. without lightmap of course. 
An Idea Might Be To Team Up With An Engine Programmer 
And force the guy to write a thing that will dump the data you need. 
Bsp Vs. Map 
I think you'd want to read the bsp since it's been processed to create a continuous mesh with no t-junctions, no inter-penetrating polygons, no hidden polygons, etc. A map file is just a bunch of boxes all touching each other, with lots of wasted faces pointing outwards to the void. Who would want a mesh that looks like that?

Regarding reading a bsp file and getting a UVs and stuff; the code in the engine that does this should provide a good starting point. I believe it's gl_model.c that you want (can't recall for sure.) 
One down-side to bsp as a mesh is that surfaces are overly subdivided compared to what you'd want as a mesh file. This is becuase of the needs of the software quake renderer. Probably you could try to merge as many faces as possible during your import process, with the only problem being that otherwise mergeable faces might not be adjacent in lightmap UV space. 
yeah, I wanted to use bsp because it contains the textures and lightmap and also because, as you point out, it's a continuous mesh.

I probably won't end up doing anything though, because I have a lot of other stuff I want to do and I'm lazy :) 
Zerstorer Info 
Just discovered this - might be useful for someone (if there's ever going to be another Zer map):
There seems to be a bug in the bloodcube code preventing its time (30sec) from running out if there is more than one item_bloodcube in a map. This can be used as a feature. 
No Jpgs, Tgas In GtkRadiant 1.5? 
Trying to map for DarkPlaces with 1.5, and for some reason it won't load the jpgs and tgas I'm wanting to use as textures. I've checked the game file and everything, and even LordHavoc was stumped. 
I Love Biff 
Do you think it's related to gtkr 1.5? I made my map with it and i could load high-res textures fine. 
/Me HUGs Gibbie 
As far as I know. I could try a reinstall and see if that helps. 
I don't think that's gonna work. Try loading the bsp in QuArK and see if you've given the high-res textures the proper names? 
Do you mean they won't load in DP, or in GTKR 1.5?

biff, what map converter are you using (if at all?) Do the texture names in the map file have folder paths? (they shouldn't for q1) What format are the tga's? Radiant doesnt't like 8bit paletted tga's i've noticed, certain compression settings could mess things up too. I guess if you've consulted with havoc already you would know the proper override directory for the textures. 
They won't load in GTKR. Everything in DP works fine, I can even compile the maps and they run (mind you, without the rlit file for lighting). Some of the textures are in folders within the id1/textures folder, but the majority aren't -- and none of them show up in GTKR. All I get are the "shader file missing" icons for the jpgs or tgas, and the normalmaps. 
Oh wtf i thought you meant they didn't load in DP. u s. jk i l u! 
Re: I Want To Convert Quake Bsps 
It probably won't be satisfactory but q3map2 can convert .bsp to .ase so you could go q1->q3->3d-program ... I have no idea if it includes UV:s and lightmaps(probably not). 
GTKRadiant 1.5 Unable To Read Shaderfiles 
I have a problem here. I'm set up GTK1.5 for quake III level editing. It says that it's reading my shaderlist.txt file but it is unable to read the shaderfiles. Can anyone help me. 
Biff, Err 
Well I guess I have the same problem ironically; I just use gtkr 1.4 instead and it's fine. Looks like the answer there was to create a new project file, putting it into %basepath%/scripts (for you, id1/scripts), and giving it the correct engine and texture paths for your install of Q1/DP, thus creating a "mod directory" for radiant to work out of.

Some of the textures are in folders within the id1/textures folder, but the majority aren't

Where are they then? If the config files tell gtkr that the basepath is "id1," then "id1/textures" is where you'd want them.

Of course, gtkr 1.4's config files were nice easy text files, and 1.5 has bizarre xml monstrosities. Not sure how similar it would be for 1.5. 
Yeah Grahf 
That's the solution I've come to, myself. I'll just have to downgrade to 1.4 and hope for the best this weekend =D 
GTK1.4 is working, but not with the "progressive" JPGs I've been using (from the Rygel hi-def texture pack for DP). But once I converted them to .tgas, all went well. I dunno If I'll use those textures, maybe some of them, but at least I know what I can get working at the moment. 
Update (gah) 
Well, not GTK1.4 doesn't seem to want to save my maps. All the paths are in order (even the editor itself under the "save as" command shows the way directly to "\quake\id1\maps"), but the map still doesn't get saved. I even tried opening an old saved map and changing it (no dice). Mondo bizarro. 
Re: Zerstorer Info (#6836) 
Actually, I wasn't quite right.
If there are multiple bloodcubes in a map, their time adds up (the more there are, the longer the one the player picks up lasts, but itapparently does run out sooner or later). This way, one could make a map in which the player has the bloodcube the entire time. It can be removed by killtargeting it.

It's also possible to pick up several bloodcubes at once - this multiplies the damage. Of course, all of them also feed on the player, so his health is drained faster, too.

Thanks to aguirRe for investigating. 
I'm too stupid to set up GTKradiant for Quake correctly.
Where do I have to place the .wad files? 
In the id1 directory. 
Gtkradiant And Hammer Map Files 
I have a map file created in hammer. Is there a way to open it in gtkradiant? I get an "parse error at '[': expected '#number'" when I try to open it. 
In Addition... 
What neg|ke said will work for GTKRadiant 1.5, as I understand. For 1.4, look at a guide like necros's that tells you how to set it up (basically you have to convert the WAD's to jpg or tga): 
Func_train Control 
I want to have a func_train in my level that is to travel to a series of path_corners. I want it to travel to each path_corner and wait until triggered before moving to the next path_corner.

Is this doable in vanilla Quake? I have it moving to the first corner and stopping but then I can't get it moving again. 
not in vanilla quake afaik. maybe some clever hack? but not with the standard set of entities.

if you set wait to -1, it'll just stop at the corner forever. you can only make a train start by being triggered once. 
I didn't test it but, just imagine you would use several trigger_once (one for for each path_corner stop) in order to force the func_train to restart: wouldn't it work ? 
I tried that but it seems like you can only trigger the func_train one time. After that, it ignores you. I can sort of hack it using multiple func_trains but that's really depressing from a hackery point of view.

Would love to solve this elegantly... 
This Probably Won't Work 
I haven't got a chance to test this myself, and I doubt it works, but try creating a solid entity like this:
"classname" "info_notnull"
"solid" "4"
"dmg" "2"
"movetype" "7"
"blocked" "train_blocked"
"use" "train_next"
"speed" "100"
"nextthink" "0.2"
"think" "func_train_find"
"noise" "misc/null.wav"
"noise1" "misc/null.wav"

I'm thinking it will mess up because it doesn't do the setmodel(self ...) calls at the start, but it's worth a shot. And maybe some clevererer people than me will think of a solution. 
I Hope It Does Work!! 
Multithread vis for linux -- where to get the source? 
Multithread Vis 
for windows? Where to get the application? 

I've been away for awhile and that reads like a whole lot of crazy to me. :) Can someone confirm that what he said works before I hurt myself trying it? 
What I Would Do Willem 
is make a small test map:

Create a simple tunnel with a platform (like a station platform) running down the length of it. Make a func_train that you can target to a sequence of three or four path_corners, with your "wait" "-1" key on each. Also make your "trigger_once"s where you want them. Export to a .map file. Open the map file in a text editor, find the func_train entity code, and replace with czg's code. Make sure that you also add a line

"targetname" "nameoftrain"

and make sure that your "trigger_once"s all have the line

"target" "nameoftrain"

I dont know if it would work, and am not in a situation where I could try it out for you, but hopefully this helps :D

Keep us posted 
I can't try it until tonight, unfortunately.

However, I AM now tempted to try my hand at some QuakeC. 
Once Round, The Hacking Way 
Assuming that you only need the train to take the path once, that it doesn't loop, then there's a hacky way to do it. The first thing to do is to read the second half of this post and digest it

It might be worth making a quick test map and see if you can make a train that switches from one simple loop to a second simple loop first, to make sure you understand the hack.

Once you've got that down, the next step is how to do the specific thing you want. The trick here is to stack two path corners on top of each other at each stop, and make them target each other. While your train is "waiting" to be triggered at a "stop", it's actually going to be going back and forth between these two points, just moving nowhere because they're at the same location.

When you want the train to continue on, you remove one of these two stacked points using the trick in the linked post("use s_explode6"). Then you have another path_corner with the same name later in the entity list, and it'll head to that. You might find you have problems if you want it to stop and wait at that next point, you will need to make sure it's the other path_corner stacked at that point which has "use s_explode" set, or both will get removed when you target the first one to be killed.

The main problem I can see arising with this hack is the sound, you'll constantly hear the platform starting to move while it's "stopped", so you might need to make it a silent platform. If this is a problem, or you want the platform to loop endlessly but still wait for a trigger at each point, then you'll need to go the QC way. Which isn't too bad, this is quite a hacky hack. 
Quake C Question 
So now I've got the bug to play with QuakeC.

Can someone confirm this for me: Is it possible to define your own brush based entities in QuakeC? Say, I want to create a new kind of door or platform - is that allowed or is it just for stuff like new monsters and weapons? 
All of quake gameplay is made with QC 
Nice. I'm going to have a play then. Suppose I'll have to round up the source for QCC and get that compiled for OSX first... 
Not really mapping help but ... does anyone know where I might get a copy of the QCC source code? I've found many, many dead links on the web but not turning up much in the way of a real, actual download.

Or, you know, a binary that runs on OSX would be fine as well! 
I think it would better to base any work on a more modern compiler like FrikQCC or FTEQCC. It's not like I know anything about it but there often is some talk at inside3d about those. 
I would still need source code since I'm on OSX here. 
Oh crap, never mind! FrikQCC comes with source. Woot! 
Custents already has this feature for func_trains, i believe. 
Yeah, I've Used Frikqcc On Os X Just Fine 
For reasons I now forget. 
Alrighty ...

I found a version of QCC that would run on OSX and I found a copy of the 1.06 QuakeC source. I compiled the QuakeC and that all went well - no errors, and it generated a progs.dat for me.

However, when I load the game with my custom game (-game warren) I can't load any maps because it crashes out with:

"PR_LoadProgs: pr_fielddefs[i].type & DEF_SAVEGLOBAL"

Which, while obviously self explanatory (heh), has me confused.

My Quake version is 1.09 and the QuakeC source was 1.06 - would that be the problem? Does the error mean that I need 1.09 QuakeC source or does it mean that my QCC compiler is out of date?

I'm lost in a dark cave here and would appreciate someone throwing in a flare. 
I don't know what the error means, I'm afraid, but 1.06 is the most up to date version of the qc, the other updates only modified the engine. Did you actually make any changes to the source before you compiled it, or just built it straight up? 
I compiled it straight up although admittedly I probably didn't do something I was supposed to.

Looking at the Quake source, that particular error comes after it has started to load my progs.dat so it obviously found it and got past the first few checks. Then it dies.

Dunno what's up. I'll hack at it some more when I get some time. It's frustrating to get messages like that which are, essentially, meaningless. 
My suspicion is that my QCC compiler is horribly out of date or something. Would that mattter? Should I spend the time to frankenstein a new version together or does the QCC compiler version itself matter that much? 
It's possibly due to a old or dodgy compiler. This link claims to have frikqcc for mac:

On a pc, I'd only recommend using frikqcc or fteqcc, so I guess getting one of them for mac would be a good start. 
Oh hell, I missed that totally! I'll give that a shot tonight, thanks. 
use Quark :p

.fgd and .def are easaly converted to .qrk

thks headthrump!

work real nice! 
Does Quark work on OSX? I didn't think it did... 
Hey Preach, thanks a ton! That FrikQCC works like a champ. I'm off to play... 
doesn't Quoth also support trains that can be stopped and retriggered? I know at least that there are some enhancements to the standard entity. If you can't stop/restart trains, it would be a nice addition if it's not too late, Preach ;) ;) ;) :) 
thks headthrump!

o mundo sorrindo

(all the Portuguese I know, and I learned it from a ringtone) 
Hey, yeah, this is neat! I never played with QuakeC back in the day - this opens up a new world of level editing! Heh.

I made my mover class that I wanted and it was pretty painless! This is going to be fun. 
You should do me a progs.dat with blood splats (zombie gibs which follow the tradjectory of bullet impacts with all enemies, stick to walls and slowly slide down).

That was my favourite once upon a time, but I cant find it anywhere and I'm allergic to programming :D

Apparently its dead simple... 
I saw that tutorial over on inside3d. All you have to do is type into a text editor. Get on it. :) 
Yeah... ideal mod would basically be Quoth, with the above mentioned effect, and three increment painskins on most enemies except really weak ones (dog, fish, voreling)

I may have to start tinkering around with QC. No - wait - eyes growing redder, windpipe - tightening, skin - breaking out in - rash, nausia increasing... (*passes out from severe allergic reaction*) (*gone into anaphalactic shock*) 
Multithread Vis And Light Source 
Willem can you please email me the source code for your multithread vis and light? I am trying to get multithreading to work for linux vis and light tools and a working version would be helpful.

drofmij -AT- gmail -DOT- com 
Sure, I'll do it tonight. 
Seriously - Is There A Multithread Vis??!?! 
That would be cool. I want it. Where do I find Win32 exe?

(Is it as stable as AguirRe's?) 
Yep, the latest version of ToeTag includes a multithreaded version of VIS but it's only going to work on Mac OSX. The code was pretty easy to hook up in all honesty - it was mostly a matter of incorrect function names and a few small changes here and there. If anyone wants my source code for that you can grab it here:

That's the source code for the original id tools that I based mine on, and the multithreaded versions of LIGHT and VIS that I did. I don't know what's involved in making it Win32 happy, but I know that jimbo is working on a Linux version. 
Sound very exciting!!

Unfortunately, I feel the usual symptoms of a severe programming allergy starting to creep in!

There must me someone out there who is interested in making a win32 exe!!

If not, Q1 mapping in OSX seems even more attractive.
Well, I've done what I can. :) There's the source and I assure whoever looks at it that the multithreading in there works on OSX. It shouldn't be a huge hassle for someone to port it to Win32 unless multithreading on Windows is a complete nightmare. In which, you have my condolences. 
I Got This And Need Help Please 
BSP & Prefabs 
Hello, been lurking here for a while finally got time in RL to fart around with mapping and Ive started using BSP & that nice WC3.3 conversion. I like BSP better but it doesnt seem to remember what textures you put on prefabs. Ive been using the "Save Brush" feature I figured this was BSP's "Prefab Factory" equivalent. If there is something else or if anyone knows wether or not BSP will actually save tex info on prefabs please, please fill me in. I have been unable to find anything referencing this in the docs or in the cfgs.

Thanks in advance!

If You're Talking About BspEditor... 
The texture information is saved with the .bru file. However, if you then open that 'prefab' in a map whose pre-defined texture file (as defined in "worldspawn") does not contain the prefab's texture, BspEditor has nowhere to get the texture from.

If that helps... 
Possible Screw-up 
OK, I need some pointers here.

I'm working on a turtlemap which is like 80% done (no roofs and no monsters yet.)

My central area (a 1024x1024 atrium) shares the same sky with the surrounding corridors and rooms, because the roof construction is only made of a steel skeleton (no "shingles".) I'd like to keep sky visible and use sunlight.

So basically this is like a 1600x1600 area divided by some walls, and doors, and eventually probably inhabited by ~ 100 monsters - nothing more. Think Doom map with ceilings ripped open and 4 times the size.

How badly will something like this affect r_speeds?

Also, what kind of stuff apart from torches counts toward the static entity limit? ^^ I have a bad feeling there, too. This might combine into a gigantic mess.

It was my beginning concept though, large atrium surrounded by wide corridors with holding cells. Maybe this was faulty already, most maps have interlocking corridors and only peripheral outdoor areas.

It looked good on paper. Sigh. :-/ It's almost finished though, so we'll soon see anyway... maybe it'll serve as an example to others... :-/ 
Compile it and see if it runs in FitzQuake. Give it a full vis, and then when in FitzQuake type "r_showtris 1", to look at the mesh.

My visblocking is piss-poor at the best of times, but I know enough to know that you can get away with quite a lot when using a good glquake engine! IMHO. ..

As for there being about 100 monsters - this isnt too many for Quake by any means, so I wouldnt worry about that!

Try and block as many of the cielings off from eachother, think "If I put a sky-brush here, blocking this other part from view, will the player *really* be able to tell the difference, if they arent noclipping/flying around the map?". 'Vis-blocking' in this way will keep r_speeds down.

Try running the map in standard GlQuake or even software WinQuake, the original Quake executables. If it runs in them, I would say that its a reasonable statement that it will be fine in all other engines!!

Others will know better than me! ;-P 
Was Thinking... 
...100 monsters on the screen at once wont be healthy for Quake. AguirRes engine, yess, other engines, probably not....

...but who's crazy enough to put 100 monsters on the screen ALL AT THE SAME TIME?!?!? 
Basically what Ricky says - closing off the various sections into rooms that don't look like rooms because their ceilings are sky brushes - the player just assumes its all open space and not completely boxed in.

I mean using 'invisible' sky brushes with a skybox, basically. It works even if you have a pointed roof - put a wedge coming down from the topmost skybrush that meets its top edge. You have to find the best way to fake the visual effect.

Static entities are decorative objects - crucified zombies, func_illusionaries, flames, torches, light globes etc. But not lights, there's a few other exceptions as well.

The map is outdoor, as in lots of triangular faces? In a way that's easier to solve from a vis point of view (even if it's more work) in that you can just throw a dog-leg into a corridor that'll break up LOS more - in a brick or metal corridor you have to do more thinking, although wall pillars and corners help. 
I Am 
All the time, if it's less than 300 in view it looks desolated ... or limited by something ... 
Reminds Me Of That Kascam Demo You Sent Me! 
If the walls are high enough (while the player always stays down on the floor) and the rest is sufficiently visblocked, having only 'one sky' shouldn't be much of a problem. Vis time will be longer than with smaller sky units though.

Are crucified zombies static objects as well? I don't think so. 
Not Sure 
I managed to killtarget them in Nehahra, which should mean they're not, but I've heard alot of coders saying they are.

Another question would be does this apply to spawned models that don't necessarily have animation - Nehahra misc_objects, Quoth corpses and ID hacked bmodels.

I've never managed to decompile the QC and wouldn't know what it meant at first sight anyway. 
I Dunno About Nehahra Ents... 
...but the Quoth corpses, erm, I can tell you one thing: if you noclip outside of a map, you can still see the corpses (certainly in FitzQuake), whereas you cant see monsters/doors etc.

Hope this helps! 
obviously Quoth corpses are static entities... 
Quoth Corpses 
It's actually a bit more involved than that. The lynched and crucified corpses are static entities in quoth, and the flayed ones are dynamic - although the tutorial says all of them are dynamic. Changing them now would be a bad move for quoth2, as it might break existing maps by leaving them with too many static entities, or too many dynamic ones! So instead we now offer two spawnflags on such mapobjects. Spawnflag 1 will make them static, and spawnflag 2 dynamic. This allows you to balance your load of dynamic and static entities as you need to. It also extends to things like torches and flames. 
Sounds really cool!

When can I get it for WIP map, i.e. when is Quoth2 finished?

I mean, christ, I dont want it to be rushed, im just curious. 
Better Vis Saving Methods 
would be easier to judge if we saw the map, you can send it to someone on #terrafusion before vising (do you come/go there?)... Or if you can wait, over here... 
To Mike... 
Yeah I was talking about BspEd, been using the latest build. I am using the same wad I made the prefabs with. Its just taking the first non-animated texture in the wad and applying it to the entire prefab. Ive got everything set up in the worldspawn & whatnot. Drivers maybe? By now I am sure I am a version or two out of date with the nvidia drivers. 
Well, I'm not really used with dynamic vs static entities... so first: what are the maximum limit value for both of them ?
And as it sounds Quoth2 is progressing well, do you have an idea when it will be released ? I rely a little bit on Quoth2 for my next map actually... ;) 
The quoth2 content is basically done, we just keep tweaking things here and there. Although there isn't quite the same monster load in this release as there was for chapters+quoth1, there is a lot of peripheral content like mapobjects, plus a ton of code improvements and other 'under the hood' changes Preach has added to make everyone's life easier.

We could release any day, but I feel the mapping tutorial ought to be updated with all of the new content and features, otherwise there's no point in releasing; no-one will really know what's in the box.

But what do you guys think? Would you rather get the content now, and wait for me to incrementally update the tutorial over the next couple of weeks or so? Or just wait until I finally grind through it like last minute exam revision, so you can clear the first hurdles as soon as your downloads are finished? 
Well, having the pak without any explanations is not really helpfull for people, as nobody but the quoth2 team, knows exactely what's inside..
Well, it's up to you, but I'd rather prefer to read the "manual" before using new stuffs...

In anyway: it is a very good news !! 
I Reckon 
Take your time is better - there's always something left that you want to fix, rushing it at the last minute just means you leave in junk you'd normally sort out.

Writing the docs is a good time to take a breather and look at the whole project, rather than a collection of features under a microscope.

Thanks for the help so far. I sealed the map off with a makeshift skybox and compiled. I got "Too many portals on leaf" with (tyr)vis, so I hacked it and then it compiled.

R_speeds are around 3000 (fastvised) so it seems I should probably seal the areas off more (the sky I have now is just a box over the whole map).

I can close a few windows (no big deal probably) and I can do what Ijed et al. said and "fake" the openness. I probably will have to. I'd prefer a fast map.

Neg!ke, my walls are 256 units high right now IIRC. Without roof stuff. That seems to not be enough to block VIS.

I'll do the invisible skybrush thing.

I don't know if I breached any limits right now, because I run the map in my hacked copy of Tyrquake. ;-) the one that runs Marcher etc. so I wouldn't know. I have a LOT of torches though and there will be corpses. No more than 30 or 40 monsters will be visible at a time.

Louis, I have metal corridors (this is not the grotto map) and doglegging them would be a bit problematic... the outdoor parts are all triangles, yes (compiled fine). I'll close the windows for a start. I'll send you the map soon so you can take a look at it. ;-)

Some more questions arose:

1) How to make a func_train stop at a path_corner and wait to be retriggered? My .def file is rather sparse with comments, I tried spawnflags 4 but it didn't work.

2) My GK door makes the key sound when opening (this is Quoth) but the SK door doesn't. Both are standard two-pane doors and both panes have the relevant key spawnflag set. It's a bit strange.

3) The "angle" key on trigger_once seems to do nothing? No matter what I set it to, the trigger is always activated by touch, regardless of the direction the player moves. Does this even work? I used a value of 180 (due south) but it acted as always...

I checked #terrafusion once but everybody seemed to be away? I'll look into it.

Kell: I'd prefer full documentation, even if it takes longer. 
Sorry but I'm abroad for a little while and as I didn't bring my Quake laptop with me, I can't check things.

Might be worth posting a note on the BspEditor website, he always has answered me quickly.

If not, I'll pick things up when I get home. 
Please find answers to your question embedded below:

1) How to make a func_train stop at a path_corner and wait to be retriggered? My .def file is rather sparse with comments, I tried spawnflags 4 but it didn't work.

It is not possible without any QC hack of the func_train / path_corner. If you add a wait -1 to the path_corner, it will definitively stop the train, and there's no way to restart it... If I remember well it has been already asked in this thread last month... BTW: Kell, will it be a new Quoth2 feature ?

2) My GK door makes the key sound when opening (this is Quoth) but the SK door doesn't. Both are standard two-pane doors and both panes have the relevant key spawnflag set. It's a bit strange.

I never noticed that in Quoth before... effectively this is weird... I'll check that at home this evening, and I'll come back to you to confirm it.. maybe it is a real small bug...

3) The "angle" key on trigger_once seems to do nothing? No matter what I set it to, the trigger is always activated by touch, regardless of the direction the player moves. Does this even work? I used a value of 180 (due south) but it acted as always..

trigger_once angle field is effectively useless (AFAIK). No matter the angle you set, it will react as you mentioned it: I also experimented this behaviour.. so you can remove it, or put whatever value you want: it will work in anyway ;)

I hope it helped a little bit :P 
Fastvis doesn't tell much. If the map is really that small, try a fullvis and see what it's like.

The angle field does have an effect on triggers: it makes then only fire their target when the player touches them looking in the specified direction. It's only useful in very few particular situation but should be avoided in most cases. 
Kell/Preach - That sounds exciting, I have a 'virgin' map you see, the world is about 50% done and I'm kinda hoping to be able to knock a bit of Quoth2 magic into it! So far it has no monsters/weapons or anything except for some machinery, one door and an elevator and a few lights.

I was just curious about the timescale you guys were on, cause I remember you saying at christmas that it was nearly finished. I am by nature horrendously impatient! If it was going to take a long time, I would proceed to fill the map with Quoth1, but if all were left waiting for is a manual then I think I can wait!! :D

Please dont feel rushed by us people (well, me) take your time, please dont release it until you are happy with your creation, as I think everyone will be happier with a finished Quoth2! Patiently looking forwards :-P

Goldenboy - Have you tried AguirRes engine to run your map? I can guarantee that it will run your map! It also will tell you if you are over certain limits when it loads the map. My map 'The SickBase' was, in its released state, well over four of the hard engine limits for Quake1. My last map "The Hand" - I tested it in FitzQuake, but it was tailored to be touching a couple of the engine limits, and AguirRes engine was a real godsend!

I would also recommend his Vis too, as it saved my ass a couple of times, and frankly, now, I wouldnt use anything else!

Could you perhaps post a screenshot of your map? From an angle where you can see the upper section of most of the map? The idea of putting a massive skybrush over the entire level sounds like something I would have done when I started out, but nowadays I think I would spend a little time adding smaller sky brushes, to waste as little space as possible. This could save on speeds/vis times.

It would be easier to see what your facing if you showed a screenshot, perhaps noclipped out of the map, with gl_clear 1 on the console.

That is unless you are sworn to secrecy! 
"It is not possible without any QC hack of the func_train / path_corner. If you add a wait -1 to the path_corner, it will definitively stop the train, and there's no way to restart it... If I remember well it has been already asked in this thread last month... BTW: Kell, will it be a new Quoth2 feature ? "

This is true. It's not possible, AFAIK. I wrote some QuakeC that gives me a custom "func_mover" class that WILL do it but it's not part of any mods I know of.

However, if Preach would like to include it in Quoth2 he could send me an email. The code is real simple. :) 
Btw Kell / Quoth2 
Which new features are in exactly? I'm not interested in new overpowered monsters, but rather some new triggers/funcs and additions to existing ones. Those are the things that make a pack like Quoth useful. 
Re-movable Trains 
Are in Quoth1 
From the description it sounds like the windows are the problem. Just put a brush inside that's a window pane ie. glass texture, which should solve everything, although it'll change the look a fair bit as well since almost all window textures are bright + colourfull. 
I solved the train issue, Quoth seems to already have this indeed. You just set the path_corner to "wait -1" and check spawnflags 2 (apparently TOGGLE, just x in my case) on the train. Thanks Quoth guys.

The angle on the triggers definitely didn't work. I'll use something else.

Ijed, I'll just close the windows because I learned that monsters got activated when I didn't want them to, and this kinda sealed it for me. Problem--

Huge skybox: This was just so I could compile it for playtesting, I'll probably seal off the areas from each other now.

Will try a fullvis today.

AguirRe's tools & engine: Windows only, which is why I hacked Tyrann's already liberal ones. I have a stock Proquake 350 for testing the limits though. :-) atm I'm more concerned about roughly finishing it, then I'll take to the limits stuff.

Key sound issue still unresolved.

New question: I have a powerup (cross) on a func_train, which is supposed to raise the item out of the water/lava when triggered. This works with monsters, but not with the cross? The train rises when triggered, but the cross sitting on it doesn't. Does this just not work with items?

Screenie forthcoming. 
I considered doing that, was a bit leery since I have been hasseling him with noobie questions already. I figured I would ask here & do some forum dredging to see if its been covered before in the past since I have a couple days off. I suppose its not a huge issue really, more of a nagging question.

Thanks, Fatty 
the directional trigger - on the "teaching old progs.dat new tricks" thread, wasnt there a way of 'activating' trigger with another trigger, so it wont fire until another trigger triggers it? It wouldnt be directional, but I think maybe you could use it... 
About your 2nd question (i.e key sound when opening SK/GK), I checked it and it generates no sounds, except door opening sound... I'm in worldtype 2 (base)... and maybe it doesn't work at all here.... though... 
Triggers with angle do work the way I said. Try different angles or touching them while moving backwards and you'll see.

Is the powerup suspended or does it drop to the floor? It has to be placed above the spot the func_train will apprear in-game (first path_corner) and it should work. If it doesn't rise with the platform, try placing it higher above. 
Triggers And Angles... 
note: angle 0 won't work for this, use 360 instead (quakec treats a "0" value in a map the same as the value not being set at all.) 
direction dependent triggers: just tried this for both trigger_once and trigger_multiple:
"target" "silver"
"angle" "270"
works fine.
I suspect this: regardless of the direction the player moves is the misunderstanding. The angle specifies that the trigger only fire when its value matches the player's direction of facing, not their direction of movement.

key sounds: it would hep if you told us what key type you're using. If it's the quoth 'elder keys' then neither gold nor silver makes the key sound along with the door sound when used. I guess this was a deliberate decision to prevent the much more intrusive key sound from drowning out the door sound, though I can't honestly remember.
I tried out the other keys in appropriate maps and got the correct sound with all of them.

falling cross: I think this is a quoth1 error, caused by changes to the func_train that has them spawned in a map after items, instead of before as in id1 progs. I think. 
also, what metl said about 0/360 :P 
All right, thanks for helping.

Key sounds: Worldtype 1. Hm, if it works for you Kell, then it's probably my fault. JPL: Were you using Quoth? If so, I'm certain it should play key sounds when opening base keydoors. It does in one of my maps. Standard Id1 does _not_ play those sounds although they're in the pak files.

Angle triggers: Same. Anyway I changed all of them to info_notnulls so they, in turn, wait for another trigger. Works even better for me. (What Ricky said.) I knew about the 0/360 thing, but I couldn't get 180 to work either. Whatever...

Falling cross: I'll have to find another way then. Hordespawn can spawn items, right? That might work.

oh umm, JPL, I think Quoth1 doesn't have the key sound thing. :-P sorry, mess-up on my part. 
It's not a good idea to use hordespawn for items in quoth1, as it will probably break your monster count on the map. This is fixed in quoth2. 
Gb: No Problem ;) 
I indeed tested your issue with Quoth1 ... I didn't understood you weer beta testing Quoth2 :P

And I'm also waiting patiently for Quoth2 release, as there's no hurry on my side as my project is half completed regarding brush count... 
Yes, It Is!! 
That just makes me wanna do aliens Quake levels again. Make sum, I mean! Played Rubicon last night for the first time. I thought it was quite 'Alienesque'. I suppose my current map is a bit alien style. I'd like to think so. Theres something about creeping around dark techy corridors, exploring at the same time as looking out for nasty beasties! Hehe - new map will have SSG, SNG, PG and GL. They all fit that sort of style!

S00ry - I diverge.... 
Good to know. That'll do then. 
Sound Switching On/off.... 
Question: is there a way to swith on off sounds in Quoth ? Example: I want an alarm sound to start using a trigger (this one is supported), but if I want to switch it off, I don't know if it is possible (using a toggle field, etc...).. Any clue ? 
.MAP And .WAD File Locations 
A user on my blog has come across something which I'm not 100% sure is a problem. What do you guys think?

He saved his maps and wads into another directory on his machine, seperate from Quake. When he went to compile it, ToeTag crashed on him and he couldn't re-open the map.

ToeTag, at this point, requires your MAP files to be in "id1/maps" and your WADs to be in "id1/gfx". Is that unreasonable? Do other editors allow you to keep files wherever you feel like on your hard drive? 
Oh, and of course you can use mods. Like if you're using Quoth, then "quoth/maps" and "quoth/gfx" work fine. 
Yeah That's Kinda Unreasonable In My Opinion 
Neither .maps nor .wads (map texture ones at least) are ever used by the engine so there is no need for them to be anywhere special. 
OK, fair enough. That's something I didn't consider when initially writing the editor since that's not how I personally work (I just use the maps and gfx directories).

Will fix for version 1.0! 
I Think 
you should require the string "toetag" in the editor path and "quake" in the compiler and "maps" in the map path just to be sure that ... that what?

But yeah, seriously, allow people to keep their wads and maps and bsp:s anywhere. Someone could make a map for a mod that is named start.bsp so it definitely needs to be in the right subdir to work. 
Anybody Would Consider... 
... to answer #6943? 
1. Trigger a play_sound_triggered

2. Trigger a trigger_relay, which killtargets the play_sound_triggered after "delay" seconds

That's just guessing though, I didn't try it. 
JPL To #6943 
One way to do it
(starts a loop)
target soundplayer
targetname soundplayer
delay # (slightly longer than the sound)

targetname soundplayer
speed -1 (same volume everywhere in level)
noise misc/alarm.wav

killtarget soundplayer

I dont't see a way to toggle. Have to use another loop 
Gb / Mechtech 
I already tried to use a killtarget, but it did not stop the sound... also, if it would have worked, I doubt I would be able to restart the sound again, like a toggle...

I think there was a trick somewhere (except QC).. Anyway, thanks for the inputs...

Kell: is it something added in Quoth2 ? 
The trick is you need to make the entity play a different non-looping sound on the same channel.

How you do this in quoth I don't know. 
...didn't Mr Woodham get togglable music happening in his last masterpiece (which used Quoth)? 
Was it based on Quoth, but with some QC modifications ? 
It was its own thing, with Quoth included. Having said that I had this working in Quoth1 - warpb. The rune shrine has a looping sound activated when you enter (the chanting) which is kill targeted by the death of any one of the enforcers / defenders.

I can't remember how I did it but it is possible with standard Quoth1 entities - mess with the entity set for long enough and you'll get there. Or else you can download the source from shub-hub, the 7zip password is the name of the pack in lowercase, without a space. 
spawnflag 1 = toggle 
That's The Bunny 
Whats The One 
for getting blood out of stones? 
Toggling The Music... 
...was done as czg said - I simply played a nul.wav on the same channel if the user pushed the button. (It also re-set the music player queue to the same piece of music so that if the player pushed the button again, the music.wav played again and re-set the music queue to the nul.wav etc) 
Thanks for the infos ! I'll try it ASAP. 
Don't forget that I was doing this in my own FMB progs.dat, not Quoth and not the standard one.

If you want more details of my music_player module, let me know. 
Oh... OK, I have to test it.. maybe it does not work with Quoth.. Let's experiment ;) 
The Forge? 
Anyone got a valid link to this site? It used to have some nice downloadable tutorials for setting up alot of the hipnotic entities. Specifically the Force Field ones, Id like to add these to a map I am working on and so far have not figured it out on my own.

Thanks, Fatty 
The Forge: The Legend Continues. 
The old link is dead. However I located an archived copy of the site. Enjoy 
The Forge Is Still There 
at least for me, but PQ sites sometimes play hide and seek ... 
Docs and example maps for Hipnotic stuff. 
QuakeC Question 
So I'm hacking around with some stuff and have a question. I know QuakeC isn't object oriented so you can't call methods within entities but at the same ... man, that would be handy.

I find myself setting up stuff like changing an entities think function to point to a function where I can do something to the entity and then it changes it back to it's regular think. This works but it feels ... hacky and smells bad.

Is there a more elegant way to call functions on an entity that you've just spawned (for example) than this, or is this the only way and I'm wasting time benig annoying about it?

For example, say I have an entity that spawns a monster_army. I then want to call a function on that entity. This is how I currently do it:

myentity = spawn();
myentity.think = monster_army_myinitfunction;
myentity.nextthink = time + 0.01;

And then monster_army_myinitfunction will get called next frame. Which works. But it smells bad. Is there a better way? 
Would something along the lines of this do the job?

local entity temp_self
myentity = spawn();
temp_self = self;
self = temp_self;
Interesting. I assume you left out a "self = myentity;" line though, right? 
Thanks Everyone! 
I looked around Shub-hub yesterday but I missed those files. Lunch hour rush I 'spose...

Anyone have a clue why the doors in my map arent playing their sounds at full volume? Im using BSP v 96d, and Im running Fitzquake080. No matter what sounds I assign it it is barely audible. Other sounds like jumping & weapons fire are fine. 
Arrgh, Yeah 
Yeah, I did.

If this initialisation function never needs to be run as a think function, then the alternative is to pass the spawned entity as a parameter to the monster_army_myinitfunction().

How that would go is you'd change the definition of that function to

void(entity grunt) monster_army_myinitfunction =

Then replace all instances of self in that function with grunt.

You'd then make your calling code look like:

myentity = spawn();
monster_army_myinitfunction (myentity);

As I mentioned above, the problem with this is that you can't then have monster_army_myinitfunction as a .think or .use function. If you like the suggestion in this post, it's cleaner code to my eyes, but you do need it as a .think at some point, then there is a way round that. Simply define another function like so:

void() monster_army_myinitfunction_self =

and use that function as the think. The most frequently used example of this idea in the quakec code is SUB_Remove, which simply calls the function "remove" on the entity "self", making it possible for entities to remove themselves with use and think functions. 
Thanks Preach! It never even occured to me that "self" would be writable. Learn something new every day!

I'll give this all a shot tonight... 
As a follow up, what options do I have for doing HUD stuff in QuakeC on vanilla Quake 1?

Can I do anything at all? Even some text strings would be helpful. 
Not Really 
You're pretty limited. Your options for writing text strings are to centerprint them or bprint them. There are complicated ways of hijacking centerprint so that you can use some space for your own message, and still use the rest of the space for normal centerprints, but it's a pain to do in technical terms.

If you just need a few more weapon/powerup icons, you might consider using the -hipnotic or -rogue options, which are supported in all engines. The best way to see what extra icons they allow you is to just play about in either mission pack and see what new icons are added. Rogue adds more, but they're more complicated to actually use well. Also, both options will probably require you to rewrite some qc code just to make things look normal again. But since you're gonna mess with it to add your icons anyway, it's not that bad. 
...and if the inside3d folks start going on about csqc stay well away. 
Heh, OK, noted.

That's why I was careful to specify vanilla Quake 1 so they wouldn't do that. We'll see.

Bummer about the HUD though. Oh well. 
Skeletal Animation In Quake. 
It can be done, with relative ease. Why haven't we seen it yet? The world may never know.. 
All we need is an engine that supports it, a file format that implements it, and a modelling program that exports it.

Actually, this sounds like the sort of thing Darkplaces would support (it loads a lot of half-life, quake3, etc. formats.) 
Random Squishing 
What is it that the player sometimes seems to block a lift/door/train for no apparent reason (no obstacle in the way)? In most cases the engine only reports an 'unstuck' message, but sometimes it's more severe and the player's health is drained rapidly or he dies if the func's dmg value is high enough. This keeps happening even if all surrounding geometry is clipped off. 
Wouldnt It Make Animation A Lot Easier? 
I mean I never tried modeling (knew from the start I was too ugly man), but you have to sculpt each frame individually dont you? Whereas skeletal animation - your just saying where each 'bone' is going. Wouldnt that make creature creation easier and faster? (Not really for Quake purists though) 
Erm, I played a level called The Harb!ngeR of Fish's 'Assault' level collection. Or to every other Quaker. It is quite creative with func_trains, and there's a shuttle which you have to climb in. You always get gibbed in that! I died about 10 times, without doing anything! Eventually it crash landed as planned and I survived though.... 
Skeletal Animation 
Darkplaces supports it's own file format called dpm, which uses skeletal animation. Models for this format are compiled from smd files, the same ones that are used to create HL1 models. There are ways to create these files from max, gmax, milkshape and probably many other programs.

The reason why it's not widely used is that at the moment there's no way to control individual bones, all you can do with the bone information is read the orientations of the bones. That's useful for, say, attaching weapon models to the players hand, but little else. The plan as I understand it is to get csqc working first, then you will be able to blend animations/rotate bones manually. Of course, that means we could still be years away from it becoming useful.

Even if you aren't using a skeletal format, it's still possible to use bones in the creation process, it's the easiest way to make animations. You just calculate the position of each vertex per frame when it's time to export the model and ignore the bones themselves. Hopefully nobody sculpts each frame by hand in anything complicated. 
When you're talking about a game as old as this it doesn't really matter if it supports bones or not, most modern games only have limited bone support, because as an animation system its excellent but for a programming system to understand it is a ballache.

The only game I remember as using bones well was Undying.

Don't ask me about 'joints' fucking stupid crap.

Any animator with the right mix of sense / laziness / psychosis making a creature for Quake is going to do it in their favourite 3d package then export it frame by frame.

My animation is bad, but I remember suffering over cell animation for weeks in uni; anyone who enjoys putting themselves through that kind of thing isn't going to be bothered by doing a few extra exports, at least one of which needs to be done anyway. 
Whats That Thing "motion Capture"? 
Where you stick rubber balls with sensors in on specific places on your body, and then carry out movements with a sensor picking up where the balls are moving, and then use that data to create the animation?

Hehe, thats got to be quicker than frame-by-frame animation!!

I wander how many thousands of pounds it costs for that sort of rig? :P

Kinda loose that whole hobbyists charm aspect aswell.... dontyouthink? 
OK, I'm trying to spawn monsters by hand and having a hard time. I can get them into the world at the location/rotation that I want but I can't seem to activate them (aka make them hostile towards the player) without them doing bizarro stuff.

I do something like this:

local entity SS;

SS = self;
self = spawn();


self.origin = origin_i_want;
self.angles = angles_i_want;
self.fixangle = TRUE;


self = SS;

This is not my exact code, but close enough. The problem that I'm having is the "monster_use" function. This makes them hostile towards me, but they don't turn to look at me and I can't hurt them (bullets hit them but don't hurt them). If I don't call "monster_use", everything is fine except that I have to shoot them to get them angry.

Does this ring a bell for anyone or do I need to slog through this over the weekend? 
You've fallen afoul of one of the most common problems with spawning monsters, although in one of the most damaging ways I've ever seen :-).

The key to this problem lies at the bottom of the function monster_army, where it calls
walkmonster_start ();
There is a second function called walkmonster_start_go() in monsters.qc, which fixes all of the problems you are having with your monster, giving them a turning speed and making them damagable for instance. What walkmonster_start () does is sets walkmonster_start_go() as the think function for the monster in question, to be carried out some short time in the future. This delay is put in so that not all the monsters start at the same time, which makes the first frame much less demanding.

Normally when you spawn monsters like this, you end up with monsters that are undamageable for a fraction of a second, before walkmonster_start_go() kicks in and they start up. However, this minor glitch that only really affects nitpickers and telefrags is then compounded by the second thing you do.

monster_use() wakes the monster up, but in doing so it also changes its think function to the first frame of its running behaviour. This of course overwrites the previous think function of walkmonster_start_go(), and so the monster is never properly initialised.

So how do you fix it? It's luckily nice and simple. Add a call to walkmonster_start_go() right after your call to monster_army().
This skips the delay, but that's fine because the world is already spawned so there should be no problems with running both functions back to back. Then the monster_use() (probably) overwrites the call to walkmonster_start_go(). I say probably, because it's possible that the monster won't be woken up, if they have a ring of shadows or notarget on. You might want to call self.th_stand() before the call to monster_use, so that they behave straight away if the player is hidden. They will behave after the walkmonster_start_go() call anyway, but this is a little quicker and avoids going through that twice. 
THANK YOU! :) You've been invaluable, Preach. I'll give this a try tonight.

"You've fallen afoul of one of the most common problems with spawning monsters, although in one of the most damaging ways I've ever seen :-)."

When I go down, I go down hard. Heh. 
Skeletal Animation.... 
Of course, professional game animators use skeletal animation to create their work regardless of whether the game itself supports it. And even qME has some half-assed bone system which you can use to animate before exporting to the skeleton-free mdl format.

But a lot of modern games DO support it, and there are two main benefits --

1. reduced disk space usage. Skeletal animation can be seen as a type of compression since there are many more verts than bones on most models.

2. adding/combining animations. Games with skeletal animation can add multiple animations together, such as a walking animation that only affects the legs, and a shooting/gesturing animation that only affects the upper body.

Fun fact: the Medal of Honor:Allied Assault human skeleton only had individual bones for thumb and index finger, and the last three fingers had to share bones. So the characters could point, make a fist, and hold a gun, but could not spread their fingers apart, count from 1 to 5, or do other useful gestures. 
Fused Hands 
The wonderful low poly TF2 models found at
use a similar idea, this time only modelling the thumb and forefinger separately, while combining the three lower fingers into a single polygon to keep the counts low. This is mainly an excuse to share the joy of these models with the rest of the folks here, they are pretty cool though. 
More QuakeC 
OK, so let's say I put this into defs.qc:

.float blargh;

Then, in ToeTag, I add a key "blargh=666" to an entity. Then I add a "dprint( ftos(blargh) );" to the spawn function of that entity.

I would think that 666 would find it's way into the blargh variable - right? Instead, Quake prints "0" in the console. What's up with that? 
Change it to
dprint( ftos(self.blargh) );

The key values are added as fields of that entity, which self points to during spawn functions.

You might also fall victim to some of the limitations of early qc compilers here. It used to be the case that you needed to do
local string debug;
debug = ftos(self.blargh);
dprint("\n"); //add a newline too

fteqcc and probably frikqcc add these temporary variables in for you, so there's no need to worry about it. 
Actually, it DOES seem to work ... the value isn't there at spawn time but it's there in gameplay because the mod code is acting properly for me. Weird.

Thanks for the answer! I'll keep an eye on it. 
Help Me Plz... 
someone replay me plz... i hav a problem... . at the first i open gtkradiant it ask me wat game then i click "Return To Castle Wolfenstein" then it say error,then i close it and reopen the program it ask engine path, wat should i choose?? and how to return to the first setting?? 
Help Me Plz... 
someone replay me plz... i hav a problem... . at the first i open gtkradiant it ask me wat game then i click "Return To Castle Wolfenstein" then it say error,then i close it and reopen the program it ask engine path, wat should i choose?? and how to return to the first setting?? 
I Know I've Asked Before But... 
How do you enable fog in fitz etc? 
Fog In Fitz 
Either in the worldspawn, or with the console.

Command line fog <density> <red> <green> <blue>

density/red/green/blue in 0 to 1 range. In order to adjust red/green/blue, use the wanted value bewenn 0-255 and divide it by 256... and experiment ;) 
Rotating Stuff Again... 

How do I use them correctly? Atm I don't understand how many I need for a given rotating object, how large and what shape they must be...

I can make a rotating "shell" and even cope with the lighting and texturing issues. The collision is the problem. I experimented with visible func_movewalls, but I couldn't make heads or tails of their behaviour in game.

I had a horizontally rotating platform, that should rotate while the player is standing on it, endangering the player to slide into some lava underneath or at least give the feeling. The platform itself was just a 256x256 flat rotate_object. It had the toggle flag set and was triggered once, to rotate slowly, then retriggered by a trigger_relay with a matching delay, to stop it rotating after it turned about 20 degrees.

I got the rotation working as intended, but the func_movewall behaviour was totally weird. I basically duplicated the platform and turned the double into a func_movewall, which I then placed smack on the top of the brush. When testing, the func_movewall moved up through the sky and out of the map in a very trippy manner. It seemed to move faster than the platform, and continue moving even when the platform stopped rotating. And then it just flew out of the map at some weird angle. :-P

I gave up on the rotating platform plan then... it seemed so weird.

but I'd still appreciate an explanation of func_movewall behaviour, and how they should typically be applied when making rotating doors etc.

I'm a bit lost here. Is it possible that the func_movewall ignored the toggle flag/trigger event?

Is there a way of setting spin-up and spin-down time independently? It would be good if the object could start turning slowly, accelerate and then stop abruptly. I guess this isn't possible?

I'm using Quoth/hipnotic here obviously. 
It's a bit weird indeed. It seems you have to make the clipping volume consist of multiple smaller pieces (each an individual func_movewall entity) depending on the rotating object's shape and axis. Try r_showbboxes (Fitzquake) to get a better idea of how it looks in your map (and other maps) and check the hipdocs thing I linked above. 
Movewalls don't rotate, but they move around the info_rotate in an orbital pattern, so you can't use a brush the same size as your visible rotating model because even though it rotates, it's collision won't. Refer to czg's tutorial embedded in the Quoth1 doc's, it's not very easy to follow (probably because the rotating system is a motherfucker) but you'll get there in the end. 
I Didnt Use Movewalls 
in The Hand That Feeds You, because:

a - signon buffer was maxed out
b - not really worth it cause the only way you could reach the fan was via a secret anyway, which isnt realistic anyway.

So you can walk straight through all of the rotating entities in TheHand without getting hurt!!

Quake's Physics 
are fucked anyway in that department. For example jumping up on a horizontally moving platform, you're suddenly horizontally stationary relative to the world, which means you move backwards relative to the platform. And shooting grenades when at speed, you catch your own grens etc...

So I don't know what would happen even if you got the clipping to work, gb. 
neg!ke, thanks, I'll check that out.

Ricky, yup, I have fans in some other map and I came to the same conclusion as you :-) very practical. You could just use a clip brush/trigger_hurt combination in the air duct I guess, if there is a possibility the player might touch the fan. Or just a trigger_push/trigger_void Alien 3 style :-P rather mean.


they move around the info_rotate in an orbital pattern

does this indeed mean a spherical pattern that doesn't follow the shape of the object?

If so, how can the player stand on a func_rotate_train, or can't he?

even though (the model) rotates, it's collision won't.

That's what I feared. That sucks. It means my rotating platform won't work.

However it seems that while the model rotates, its collison moves in some completely trippy way.

Well, I'll try to find some map sources to look at... maybe decompile some hipnotic maps. ^^ gosh I like doing stupid, repetitive things :-P I'll reread czg's doc, but it isn't terribly clear on the collision part.

For example jumping up on a horizontally moving platform, you're suddenly horizontally stationary relative to the world, which means you move backwards relative to the platform

That sounds like a bug that could be fixed in something like Quoth. Not the grenade thing though.

So I don't know what would happen even if you got the clipping to work, gb.

I kinda put my money on the fact that you can stand on a lowering door aka door used as lift... and you can stand on the lowering door in the hipnotic start map, and even let yourself be lifted and squished by it.

Whoever owns it should release the hipnotic map sources ... I think Ritual went belly up though... 
You Can 
As I remember you can stand on a rotating - there's one used in one of the hipnotic maps, but it's cheated past the broken physics by sticking the player to it - so they don't adopt the momentum of the thing they're stood on.

The reason to have lots of movewalls is that they're inside your rotating model, so as it rotates around the axis the movewalls are orbiting around it at the same pace, making them more or less inside the model constantly. 
Collision On Func_movewall 
func_movewall collide in exactly the same way as a door does. The player can stand on one, and when it moves they move with it. As usual for a door, once you just off it, you don't take any momentum from it.

The idea behind them is to make an approximation to the rotating object out of small pieces, each of which can move separately. Since the solid collision hull of objects in quake can't be rotated, the idea is that each small piece is moved in a circular path, so that its centre is in the same place relative to the rotating object. If your pieces are suitably shaped, this should approximate the shape of your rotating object both when it is stationary and when it is in motion. The best shape for each one is probably a cuboid, although you could make them cylindrical with more than 4 faces if you liked/needed.

One image you might want to think of is the carriages on a Ferris wheel. While the wheel turns, the carriages stay the same way up the whole way round, but they trace out the path of a circle. The most useful thing you can do is to apply spawnflag 1 to your func_movewalls. This will make them visible, so that while you are building your map/testing out the idea, you can see what they are doing. Then hide them once you have the rotation working.

One nice thing about the way they work currently is it makes it very easy for a person to stay standing on top of something as it rotates(assuming you make the. In real life the player would have a sense of balance that you can't get from just playing with a mouse and keyboard. Making it easy for them to keep their footing is a good decision, which is why I'd recommend keeping the top surface of each movewall flat.

That sounds like a bug that could be fixed in something like Quoth.

It certainly could be made to happen without too much code, but it won't be changed. One reason is that it would annoy everyone who's used to the quake physics as they are. The other is the sense of balance argument again. Momentum not being imparted to a player might be because of the way quake handles motion on platforms(sticking their feet to the floor and updating their position when the physics is run on the platform). But it might also be a conscious decision, because it's much more natural to control the player like that. 
Don't You Hate 'missing Closing Bracket' Errors... 
(assuming you make the top of the movewall a flat surface) 
Thanks Guys 
That was really what wasn't clear to me, that you should put the movewalls inside the rotating model.

I made a test map with some visible movewalls and the lightbulb went on in my head when I watched the doors from various angles. Very interesting to see the stairstep effect... incidentally that means I could use the back of a "drawbridge" type door as a ladder, since I was using 16 unit high movewalls that somehow didn't remain perfectly vertical in a perfectly vertical door brush. Gosh. Since my editor only lets me adjust things to a 8 unit precision, this isn't fixable (OK, perhaps in a text editor.) I'd need to use a func_togglewall as a momentary clip brush when the door is up. Or something.

The only thing that doesn't work is a rotating lift, at least it doesn't work "well". This is because the movewalls on which the player is standing go into the stairstep effect when the lift is rising, and this stair is rotating while the player stands on it and the whole thing raises, making it a very rough ride. I decided that rotating lifts are stupid, I just did it to see if I could :-P

The collision will probably be good enough to do all kinds of traps, machinery that isn't touched by the player, levers, cogs, and doors and hatches.

It looks like rotating trains are not very useful. Most kinds of rotating doors seem like overkill,too, when the novelty wears off... machinery seems good though...

I'll upload the map when it's finished.

By the way it seems like rotating things are lit in position, not at 0 0 0 (or was it worldspawn?) because I saw some shadows that exactly matched doorposts etc. Suspicious. I used Tyrutils. 
Q1rad Sky Lights 
For the record, so it will be findable in the internet in the future, as it's not mentioned in the readme.
When using q1rad to light maps, add the sky texture in the lights.rad, then make a point entity with name
with fields _light, pitch, angle
And let every sky you want to emit light see it.

My lights.rad includes this line:
SKY9_1 255 0 0 75

And my map has a point entity:
light_environment with the fields
_light 200 200 200 200
pitch -60 -60

This functionality is NOT DOCUMENTED ANYWHERE. Big thanks to Asaki for helping me out on this, for the second time through.
(He adds that "Pitch and angle are both one number." which makes sense of course) 
Does anyone other than Neg!ke and Efdat use Quest? is it awesomer than WC? 
Radiant Entity Definition With Notes 
/*QUAKED light_environment (0 .7 .5) (-8 -8 -8) (8 8 8) START_OFF
Used to create sunlight or outdoor lighing with Q1rad. Must be placed near a sky brush.


"_light" sets brightness
"pitch" sets the vertical angle (-90 = straight down)
"angle" sets the horiztonal angle

Lights.rad is optional and is only required if you want surface lighting (of course, this might be a very good idea with sky brushes!)

Here's the info from the readme, this part at least is documented:

Now, in order to use surface lights, you must create a file called "lights.rad" You can optionally create a file called "levelname.rad" with "levelname" being the name of your level without the .bsp extension. In that file are the surfacelight descriptions. To edit it, feed it to your favorite text editor. Each line should contain the following format

<texture name (capitalized)> <red> <green> <blue> <intensity>

So if you wanted to make the texture +0slip a strong red with 200 intensity, you'd add:
+0SLIP 255 0 0 200

So that for any lights you want to be surfacelights.
Yes Just To Say That I DID Read The Fucking Manual 
but the skylight part is not documented in the docs that come with q1rad and the internet is devoid of such documentation as well (until now in this thread finally).

(I use WC and not radiant). 
Yeah, I figured as much but I was posting that info for those that don't have it. It's quite possible to have q1rad.exe without the readme (there's some zipped versions floating around without it).

At least Riot had a link to the VERC page about light_environment, but as you know it's dead now. Pity he didn't put the actual info in the readme. Thank you for posting it for those that don't have the knowledge. 
Since it is very hard to find I uploaded it:

That's the full zip with readme and example map.

I already forgot who gave it too me in the end but thanks again! 
IK used it too.
I guess Quest is just as quirky and confusing as WC when trying it for the first time. Takes some time getting used to it. I prefer its view modes. You can use the standard three-window view most editors have (albeit not forced to 2D mode exclusively) or one large window and switch between 2D and wireframe or shaded/textured/lighted view. Unlike other editors this one has a stronger focus on the 3D wireframe view - I find the fixed 3-axis 2D view of other editors to be awkward and inflexible, though it's probably a matter of taste.
I grew to really appreciate it's 'click-brush' (brush drawing) feature and the pretty accurate leak detection.
However, one has to learn quite a few key shortcuts to use it proficiently and since it's more or less a DOS program, there might be some compatibility issues. Always ran fine on my XP (apart from rare freezes). Unfortunately my new graphics card doesn't like Quest's palette, so I have to run it on Linux now. :P 
The map looks cool: is that a Doom-ish map ? 
I also use Quest and have become quite fond of it. It has some little features like selecting 20 func_movewalls and setting spawnflag1 on all of them, and more stuff like that. Also texture locking which is useful, and texture rotating, scaling etc.

The key shortcuts are nice and configurable.

The screenshots from mine are very dark though. I mean _really_ dark.

The downside to Quest is the crappy UI, the fact it is no longer developed and some random crashes, I use the save function really often. 
JPL: no, it's quakish :P

I forgot to mention, even though it doesn't have hardware support, the texture view is pretty precise and in combination with the (admittedly extremely slow) polygon mode, which let's you align multiple textures on different planes by visual offset, allows for very neat texture work.

gb: I never use texture locking though. I hate how it changes every face to some strange values even if you just move the brush slightly. If you have slanted faces or rotations, it totally screws up the aligning. I often pressed it by accident only to find out later on when a good chunk of the map suddenly looked borked. 
I often pressed it by accident only to find out later on when a good chunk of the map suddenly looked borked.

Haha, I know that :-)

I use texture locking for crates etc. when I copy-paste them. It seems to work for me. Anyway, the face mode (texture alignment) is rather comfortable, so doing it manually isn't too bad. But when I have 20 crates it gets tedious.

I was SO glad when I found out how to set spawnflags and targetname for multiple entities at once. ^^ The 3D view is rather comfortable I think, I do most things in that. Like selecting brushes and faces. Even copy and paste.

I haven't found out how the group stuff works, do you ever use that neg!ke? Does it let you hide or copy and paste groups? 
Yes, groups are useful in large maps with complicated brushwork or if there's a considerable amount of DM/SP-only stuff. ALT+G opens the group window. Select some brushes (or entities), press ALT+G and "create group". You can change their colors and hide them. Not sure about copy/paste.

Btw. you can align multiple faces in the same plane with the regular face edit window. It always uses the texture and settings of the last selected face. 
See here:

If you flag "s", selecting one brush from the particular group will automatically select all its brushes (then c/p). 
Cool, Thanks 
Useful stuff. So creating groups works like creating models. 
Cool shots - SP or DM in mind? 
Houston, We Got... 
pf_precache_model: overflow

-> segfault...

bspinfo says I have 211 models, is that already too much? Isn't 256 the limit?

I could use some help here, I'm stuck until this is resolved. 
The brush drawing feature sounds pretty cool. Don't think I'll be picking up any new editors though, since I'm too comfortable with wc.

PS - nice shots, as always. 
dude, that balcony looks badass. 
Precached Models 
BspInfo only tells you about the brush models (e.g. doors) in the bsp, it doesn't count all the alias models (e.g. monsters) that in the engine will be added from QC.

So already 211 brush models is pretty much and apparently is enough to put you over the limit. With my engines, you can see how many models that are required.

I've just also noticed that the limit is 256 for precached models, but only 255 for sounds due to a bug in the server code. 
Max Limits 
Is there a document that explains what are the maximal limit values in quake, like edicts, maxsurfedge, maxmarksurface, entities, etc... ? 
256 Models 
Presumably the 256th model wouldn't ever display in game, as it would have modelindex 0, which is the invisible model... 
...I started one ages ago, but each time I got close to putting it out someone released a new engine that changed the previous limits :) Some engines have remained stable with respect to some limits I suppose... 
gb: You can save some brush models by e.g. turning all individual func_walls of room into one large entity (if visibility permits it) and trigger_counters as well as trigger_teleports in monster cabinets into point entities.

JPL, distrans: The standard engine limits are listed in the glquake-bjp readme. 
Thanks a lot for the information: I'll check it right now ! 
Thanks, AguirRe. That makes sense.

It appears my rotating lift alone contains 133 "bmodels", 132 of which are func_movewalls.

Another problem with rotating stuff... all those movewalls will rapidly increase the brush model count. And it looks like they need to be brush models and not point entities.

Think about this: A normal rotating door might have 8 or 12 movewalls, plus the door bmodel(s). Four of those could already add 50 bmodels... then I tried to make all crates in the map breakable, which apparently is not a good idea at all... 20 more bmodels... that's 70... and then I have this sucker of a rotating lift cabin. ^^ All this is not counting the monsters.

So it's rather easy to have over 200 bmodels like that. You live, you learn.

Neg!ke, thanks for the tip with the point entities. I use the Quoth spawning already though, so I don't even have monster trigger_teleports. I'm not even using func_walls yet, but that sure sounds useful.

This map has only 5 rooms and some corridors yet, btw. and only 6 or 8 monsters already placed. And wham, it breaks the model limit. ^^

Good opportunity to learn how to creatively save entities without being too obvious, I guess...

this game gets more and more interesting... 
"monster Only" Teleport 
Is there a way in standard quake to make a teleport that teleports only monsters but not the player? 
...oh good, there is a list of the standard limits. Might be useful at some stage...ta mate! 
VIS Times/portal Numbers 
I have recently completed a Q1SP map, which has roughly 20,000 portals. It is hence taking a very long time to VIS -level four it. Is 20,000 portals much larger than a normal map, and if so, what can I do to remedy it?

Make some complex things func_wall entities?

Make sure complex geometry doesn't see other complex geometry (curved or dogleg corridors..)

Send a fast-vised or non-vised version to some mapper for testing. 
Basically, either reduce visibility via level design (90 degree corners, etc), or reduce the polygon count (make trim flush with walls rather than sticking out, func_walls, etc).

There's really no magic to VIS, just lots of tedious work. :) 
Speaking Of Vis... 
How goes the vis project with the map I sent you Willem? 
Yes, 20k portals is very big, with older vis tools you wouldn't even be able to vis it at all, make sure to use an enhanced vis that can handle it (mine does and I think Tyrann's works, too).

Also, make sure to use a modern qbsp that doesn't create bogus prt files with a huge amount of portals, all wrong. Again, mine and Tyrann's should do.

For more info about improving vis times, see my ToolTips doc. 
"How goes the vis project with the map I sent you Willem?"

My interest sort of petered out there, sorry. I got caught up in other stuff but thanks for sending it along anyway! 
Yup, mine has 20000 portals, too. Fastvis is bearable, fullvis is ... not nice.

Both Tyrann's and Lord Havoc's tools can handle it. So should AguirRe's.

I'll not do that again, though :-)

Question: Do any Q1 tools support Hint brushes?

Question 2: Do sky brushes block vis the same way that normal brushes do? 
Answer ( short ): No.

Answer ( long ): Support would be required not only in the compilers, but in the .bsp format and the engines. This issue appears on Func perennially.

Answer 2: Yes. 
Talking About Vis Blocking: 
If there are two rooms next to eachother with say a 32 unit wide wall between which is just one brush; is this less effective at blocking than 2 separate walls with a void in between? 
Hint Brushes 
Alexander Malmberg's qutils have hint, detail and skip brush support, and while I've never tested it, I'm pretty sure they don't require any special engine. 
Unless I misunderstand hint brushes, it would only be the BSP compiler changing. The hint brushes simply suggest cuts, don't they? 
I Love D3 Engine 
because it has no vis 
...take a trip in noclip. If the brush you are talking about is solid than you should see a void in between anyway :)

Quake does not draw brushes, it draws faces on some of the internal surfaces of volumes. 
Unless I misunderstand hint brushes, it would only be the BSP compiler changing. The hint brushes simply suggest cuts, don't they?

Ack, you guys are right. I was getting confused with detail brushes. My bad. 
No need for hint brushes anymore, it turns out that hvis isn't terribly effective and thus half of the map was drawn at once. This doesn't happen with tyrutils or aguirRe's utils. 
Cheers For The Help 
I've managed to reduce the vis level four time by about a factor of four. 
Nice! Definitely pays off to invest a little effort in your VIS times. Pays off in spades at the end when you want to iterate on the map and tweak things. 
I Wasted Several Days... 
...trying to get sickbase to vis in a reasonable time frame. Unfortunately I started my first final level 4 vis and then after about three days it because apparent that it was going to take a hell of a long time, so I went back and re-worked my arrangement, turned as many things into func_walls as possible, then set it off again. And then I had to do it AGAIN after another couple of days, because although it was going faster than before, it was still gonna take a hell of a long time.

Wasting a couple of days then stopping it, re-working and starting again will save a lot of time in the long run. Half an hour of map adjustments can equate to weeks less vis times, when doing horrible open planned maps!!

Getting it as efficient as possible first time is even better!! :P 
Line 3: Because = Became 
Some Stuff 
hvis is rubbish, I'm sorry to say. I'm only amazed that you even got it to work at all.

Also, fuck the optimization, how about just don't make stupidly open maps in the first place?

p.s. I didn't really mean fuck the optimization. I'm not sure how you'd accomplish that, though it might be an interesting experiment. 
.qc Aid 
I'm attempting to turn the shotgun in to a weapon which delivers a short, three round burst and then is unable to shoot for a second. So far I have only been able to create one which has a two round burst, through modification of the weapons.qc W_Attack() function and the inclusion of a new function which calls both player_shot1() and W_FireShotgun():

void() W_ThreeShot = {



else if (self.weapon == IT_SHOTGUN)
self.nextthink = time + 0.1;
self.think = W_ThreeShot;
self.nextthink = time +0.1;
self.think = W_ThreeShot;
self.attack_finished = time + 1;


The last self.think function appears not to be called. There isn't a wait function or something in qc, is there?

This is probably a laughably simple problem, excuse my lack of coding understanding. 
You can't stack self.think calls like that. It's not a queue. So:

self.nextthink = time + 0.1;
self.think = W_ThreeShot;
self.nextthink = time +0.1;
self.think = W_ThreeShot;

Is the same as:

self.nextthink = time + 0.1;
self.think = W_ThreeShot;

You'll need to add a counter variable that gets checked in W_ThreeShot or something so that it stops firing after the third shot. 
"Also, fuck the optimization, how about just don't make stupidly open maps in the first place?"

It's a fun challenge sometimes, but if you're building those areas then - yeah, you really give up the right to bitch about VIS times. Heh. 
Yeah, I'm just shitstirring anyway. Ignore me :) 
Found A Solution 
I edited the animation stuff in player.qc to call the W_ThreeShot function, and changed the animation to have the shotgun shoot three times rapidly.

Works quite well, bit like the battle rifle. 
Oh yeah, that's a good solution too! 
My Map ATM 
has appalling vis blocking in the central hub area (look at my last screenies ^^^ ), but all of the tunnels and rooms around them, I have spent a l00t of time making sure that blocking is present and as functional as possible!

Besides, vis works really well on a core2duo ! (AguirRes) 
Is it multithreading? If not, that 2nd core isn't doing you much good. :) 
That 2nd core is allowing you to keep using the PC happily while VIS chugs away in the background. It's pretty nice! 
Three Shots 
What Willem said was totally correct, but there's an easier way to make it fire three shots, which will also give you better control over the animation of the v_weapon and player. The trick is to create a set of new animation functions in player.qc, which will handle the shots as the frames are played.

void() player_multishot1 = [$nailatt1, player_multishot2 ]
self.effects = self.effects | EF_MUZZLEFLASH;
void() player_multishot2 = [$shotatt1, player_multishot3 ]
self.effects = self.effects | EF_MUZZLEFLASH;
void() player_multishot3 = [$shotatt2, player_multishot4 ]
self.effects = self.effects | EF_MUZZLEFLASH;
void() player_multishot4 = [$shotatt3, player_multishot5 ] {self.weaponframe=4;};
void() player_multishot5 = [$shotatt4, player_multishot6 ] {self.weaponframe=5;};
void() player_multishot6 = [$shotatt5, player_multishot7 ] {self.weaponframe=6;};
void() player_multishot7 = [$shotatt6, player_run ] {self.weaponframe=7;};

If you've not seen qc animation notation before this might all seem a bit complicated, but it's really just shorthand to save some typing, and worth knowing if you ever want to edit monsters. I'll use player_multishot6 to explain how it works:

Each line defines a function to be used as self.nextthink. The first value in the square brackets specifies the frame to store in self.frame, in our example $shotatt5. The next value tells you what value to assign to self.nextthink at this frame, in this case player_multishot7. Since each frame function sets a new one, you get a chain of animations. It should be noted that although it's not written anywhere, self.think = time + 0.1 is added by the compiler when it sees this shorthand code, to give the 10fps quake models use.

After the square brackets come a set of curly brackets, which basically allow you to add any amount of extra code to your animation function. In our example we add self.weaponframe=6 to update the animation of the weapon. You'll notice that we exploit this capability further in the first three frames by sticking W_FireShotgun in as well. This means that in your W_Attack code you only need

else if (self.weapon == IT_SHOTGUN)
player_multishot1 ();
self.attack_finished = time + 1;

You'll probably need to prototype player_multishot1 at some point. One of the hidden advantages of the animation shorthand notation is that it prototypes the functions automatically, when otherwise you would need to list the frame functions in reverse order or create a bunch of prototypes. 
Shoulda refreshed the thread, you've done exactly that. I snuck an extra $nailatt1 frame in there so that he's moving a bit more during the radip fire sequence. 
"That 2nd core is allowing you to keep using the PC happily while VIS chugs away in the background. It's pretty nice!"

Sure, there's always that. I was referring more to not doing you much good on the VIS side of things.

BTW, my Mac has dual core, uses a multithreaded VIS, and I can still use the computer just fine while it's compiling. Probably because the OS was coded properly - but I digress!

P.S. I joke, I kid, don't go there plz. :) 
Heh, No Worries Preach! 
It's the thought that counts. 
I Dunno About AguirRe's Vis/core 2 Duo 
But fast vis on my map:

Old Athlon XP 1700 = about 1 min 30 sec

New Core2Duo(6750/2.66Ghz) = about 20 seconds!

Go figure 
Worth Pointing Out Also 
The map is bigger than it was, which makes vis time even more disproportionate to the increase in single thread processor speed (2.66/1.7ghz?)

Tyrlite 0.4 is a bit faster than it was on the old XP1700, but mot that much faster...

Weird, eh? 
I don't think any Windows user is going to argue that XP / Vista is coded properly, or even well thought out. 
The Fucking Door 
I have a door with the start open and toggle flags set.

The door itself is working, but the triggering fails.

It is targetted by two different entities, the first is the gold key, which should toggle it shut. The second is a trigger_counter with three monsters attached. Which should re-open it.

So. The door doesn't move one inch. Where am I fucking up? 
I Forgot 
The three monsters are spawned by a relay which in turn is activated by the gold key. Using quoth.

But the door doesn't work even when I bind it to a simple switch instead of the key. 
Yup, thank you. That did it. 
I am trying to get a rotating dopefish-head in my exit room. I would like to know the spawnflags for the rotating entities and brushes please. 
Unless your map already uses Quoth or Hipnotic stuff it is not worth it. Rotating requires you to use a mod (like those two) and is a bitch to setup.

Alternatively you could create an animated texture that rotates the dopefish. :) 
Multiple Skies? 
Does Quake allow for multiple skies? Say, I want one part of my map to use the purple sky and another part to use the blue ... 
Animated Texture 
Is probably even more painstaking, but could pay off.

I wouldn't recommend rotating stuff, tbh - it's always a ballache.

And Spirit, thanks for Flipside; what a great little game. 
Re: Multiple Skies 
no, only one sky texture will end up being displayed, regardless of how many you use in the map. Either the first or last to appear in the .map file, can't remember which. 
Seems to be the last.

Oh well, thanks for the confirmation! 
Look at my rotating entities testmap. The .map file is here:

This is NOT a playable map. But you'll see how the rotaters are set up. I used quoth and I suggest you use that, too. Look at the func_movewalls especially and the target/targetname stuff on the rotate_object, info_rotate, func_rotate and func_movewalls. Always try to envision where the axis of rotation is. Experiment with the "angles" key until it does what you want.

Simple rotating doors or fans are rather easy to setup. For fans etc, you don't need the movewall stuff at all, just put a trigger_hurt with enough damage. 
Preach, Or Any QC Genuis 
I want to run an idea by you for its feasibilaty before actually screwing around with QC, if it is destined to be a waste of time.

My idea is to create a realistic door model (.mdl), have it swing out as if it were hinged. Is it possible to have an animation sequence accomplish this, and then kill the bbox so a player can go through the portal it previously blocked? It seems some games (NOLF I believe is one)use a method like this where the door becomes a nonsolid, and it isn't detrimental to the game play. 

Ok, kidding. The easiest way to do this is with a func_togglewall, look at the source code from the hipnotic mission pack for how to do that. They do some really weird stuff to make the entity nonsolid though - moving it 8000 units on every axis so that it's outside the playable space in quake. You could achieve the same thing by just removing the blocking entity if you're ok with it never returning. 
I forgot about that. Reminds me, there is a similar entity type in the Extras package as well that switches out bmodel brushes to simulate affected conditions (a submarine hull getting squished due to an air pressure collapse is one set up I got working quite well). I'll get to work on this. 
Next QuakeC Question 
Teleporter that waits for trigger, then works normally. My info_notnull experiment didn't work out.

I could probably use a func_wall to cover it or something, but that'd be crude... is it possible with info_notnull? 
The problem you're running into with the info_notnull is that you're creating a teleporter with a targetname. trigger_teleport with a targetname always wait to be triggered before they will teleport anything. So there are two fixes depending on whether you need monsters to be able to take the teleporter or not. If not, then the solution is quite simple - add another info_notnull which will create a trigger_multiple on the same location as the trigger_teleport, and which targets the trigger_teleport.

If you need this to be a full teleporter then you need a pair of trigger_relays repeatedly targetting the trigger_teleport(or does this work with a singe one targetting itself?). At a frequency above 5 times a second the trigger_teleport should stay on all the time, 0.1 seconds between triggers would probably be best. 
more thanks to you :-)

A trigger_relay flipflop. Cool. 
What Is 
a clipnode?

(I will get round to looking at these other two releases ASAP but im too busy ATM :P ) 
Im only askin' cause ive got 28023 of them and I know I'm only allowed 32762, and I want to know what a 'clipnode' is so I can make sure I dont have any unnecessary ones. 
Every Time You Use The Clip Tool On A Brush, That's A Clipnode 
To avoid clipnodes you should use vertex editing instead.
28000 clipnodes? Wow! I average like 400-500 in my maps. 
I use the clip tool all of the time. I used to use the carve tool, i.e make a brush in the shape of the part I wanted to clip off, then carve it into the brush I was wanting to shape. But the clip tool is really great when you realize what it does.

I thought I was gonna hit marksurfaces first. But ive got 275## of those, and more clipnodes.

I have trouble understanding what these things actually are. I know I can reduce marksurfaces by lifting things 1 unit off the ground, or 1 unit away from walls.

And I know that the world model is made up ultimately of triangles:

Is one triangle one marksurface?
Is a clipnode part of the model, part of the mesh?

Im guessing "not" for the latter of the two questions in the above sentance, as czg, you say its more to do with the way you shape your brushes using the clip tool.

Stop Listening To Me You Crazy-ass Cracker 
Ahh - Well Thanks For The Info... 
Somebody Must Know What A Clipnode Is... ? 
After all of these years........ 
In looking around the web, I found this:

struct clipnode
// Index into planes lump
unsigned int plane_idx;
// If > 0, then indices into clipnodes; otherwise, contents enum
unsigned short children[2];

So, it would seem, a clipnode is a split in the BSP that either results in a list of more splits or a content leaf.

To reduce them I guess you would use less brushes or do whatever you could to reduce cuts. 
To Make Up, An Infographic 
This is GROSSLY oversimplified and I probably got it half wrong, but the gist of it and how it works in practice is this:

Place clip brushes over places the player can't get to. For instance if you have built some fancy brushwork up in a ceiling somewhere with lots of beams and trims and shit, block it away with a clip brush unless you need to player to rocketjump up there for some reason. 
Or Isn't Also One Help 
to make details that stick out of walls be func_illusionary... (They don't clip) 
in my experience, that's how i've reduced clipnodes as well.

interestingly enough, in early versions (and probably still now?) of aguire's glquake, you could load maps with >32768 max clipnodes, but some areas would be non-solid. :P 
with newer versions of aguiRe's enhanced glquake, you can play maps up to 65536 clipnodes with no non-solid areas. Anything beyond that though, and the map will start to freak out. 
With regular engines, clipnodes can be exceeded by roughly 10k before problems occur (e.g. monsters slipping through floors, being trapped on the outside). At least this was true for my qte2m6 - it may vary depending on the structure of the map.

Func_illusionary and other func entities don't reduce clipnodes, they add to them, especially if they are made of complicated brushwork or multiple brushes with spaces between each other (e.g. spikes in a tunnel). 
Func_illusionary and other func entities don't reduce clipnodes, they add to them, especially if they are made of complicated brushwork or multiple brushes with spaces between each other (e.g. spikes in a tunnel).

Hmm, but i bet the same clip brush trick works on funcs as well... you could put an entire func_illusionary inside a cube clip brush, and then that model would have very few nodes

anyone know if that's true? :) 
Sources Of Information

Hint: Search for "clipnode" ...

Clipnodes are only generated in hulls 1/2 (the clipping hulls), since they specify what entities "clip" (i.e. collide) against.

If you have a leak in either of these hulls or order qbsp not to fill them, the clipnodes will increase a lot.

I don't think illusionaries generate clipnodes as nothing collide against them, but all normal brush entities do. 
but the compilers don't know how the func_illusionary is going to be used; it doesn't know anything about the quakec code. So it should be treated the same as any other brushmodel. 
Well, Thanks For The Information People!!! 
I think I do know what a clipnode is. I've probably got so many because of my rock-work. And archways. Maybe I can block some parts off or something...

I might just tune my map so it hugs the limit. Its not at the limit yet. 
I always assumed illusionaries didn't add to clipnodes, so the infamous spiky pit automatically became one (the spikes).

If this is wrong then does it mean that a door creates clipnodes from its starting position, even though it will move? I'm thinking of multi-part doors that could potentially produce alot of nodes. Also func-trains - only their starting position? 
I think brush models are their own BSP trees inside the the master one, aren't they? In that case they would have their own set of clipnodes inside of them, independent of the rest of the level. 
QuakeC Question 
Does anyone know how to get the SVC_FINALE message to accept more than one string at a time? I changed the signature for centerprint and others to accept multiple strings like this:

void(entity client, string s, ...) centerprint = #73;

However, that doesn't seem to work for the WriteString function. I want to customize the text that gets displayed at the end of a game of Qonquer but I don't see how to do it. It only ever displays the first string when I do this sort of thing:

WriteString (MSG_ALL, "[qonquer]\n\nfinal stats:\n", "blargh" );


WriteString (MSG_ALL, "[qonquer]\n\nfinal stats:\n" );
WriteString (MSG_ALL, "blargh" );

The first example just plain doesn't work and the second example causes Quake to crash with an "illegible message" error or something.

Sorry, I mean the first example displays the first string but not the second. It doesn't totally fail or anything like that. 
Just wanted to say thanks for the info.
I know I already said thanks, but I was pondering what has been explained and realized that I can probably reduce my clipnode count by changing some func_walls to func_illusionaries! I have some pipes and bars with 12 sided cylinders func_walls where they touch walls/floors. So in theory if I turn them into illusionaries than they wont clip. I will test this l8R!

PS sorry Willem that you might have thought I was Preach. I dont know how to program C. People who do seem very clever to me!! ;P

PPS while your hot, why not knock me up a blood splat progs? I'll love you for ever!!! Also sod Quoth2 if you do, Ill put my map out with standard Quake + blood splat progs!!!! 
Only some of the QC functions can be overloaded like that, it all depends on how they were coded in the engine. I did exactly the same thing yesterday as a test to see if it could be done. In the first example WriteString just ignores additional string parameters, so you only get the first one. In the second case, your first string is null terminated, so the game thinks the command is over. It then reads the first character of your next string as a byte, assuming that it will be the start of a new message type. Unfortunately, "b" = 98 as a byte, and there is no SVC message with that number, so it causes an error.

So what can you do? Well, if you're willing to do a lot of messing about then the way forward is to send each character of your message as a BYTE rather than as one big string. So for instance, to send a finale print saying "killed n" where n is replaced by the number of monsters killed, you would send the following bytes:
31 //the SVC_FINALE code
107,105,108,108,101,100,12 //the codes for the characters 'k' 'i' 'l' 'l' 'e' 'd', ' '
floor(n/100) + 48//the code for the hundreds digit - assuming the number is between 100 and 999
floor( {n - 100 * floor(n/100)} / 10) + 48//subtract off the 100 column and work out the index for the 10s digit.

I'll leave how to get the units column for you to figure out. I've uploaded a mod that will let you test out what numbers correspond to which characters:
Bind 9 to "impulse 9", 0 to "impulse 10" and p to "impulse 16". Then simply type a number between 1 and 254 to get that character.

Special characters worth knowing:
0: null terminates the string, ending that command
1: 'Chat message', makes text red and chat sound play
2: Sets red text without chat sound - possibly a toggle
10: New line character
48-57: digits 0 - 9
65-90: uppercase A-Z
97-122: lowercase a-z

On the other hand, you might feel this is a lot of effort to go just to make things work with the finale text. It'd probably be alright once you've got a function that automatically takes an input number and converts that to the stream of digits required. 
Oh dear god. I'll give that a try once I've worked up the emotional fortitude.

Thanks for the info, Preach! Informative as hell, as always. 
Is there a complete list of byte values and what they mean to Quake somewhere? If I had that, I might be able to work up a small utility program to save me tears in the future. 
Wouldn't it be easier to find/hack a compiler that has string concatenation in it? 
That's a good idea! I'm using FrikQCC. Is there something better that runs on Mac or, at least, has source code available? 
Clip Brushes 
OK, so in the Elder arena I have those gratings that run over the lava at a few points. The gratings are func_walls so I can remove them at higher difficulty levels.

However, monsters would NOT cross them so I covered them with clip brushes in the hopes that they would.

Still no dice.

How can I convince the monsters that, yes, it's safe to walk across the scary gratings? 
That sounds correct, qbsp doesn't know that.

But I can't see how normal clipbrushes (that are world brushes) can help against clipnodes from brush ents, especially since the latter can be moving. The CSG process will only merge stuff within the same model.

And qbsp doesn't like clip texes on ent brushes ... 
Filling the holes with skip func_walls would be the most reliable way. 
Does Quake support skip brushes? I thought it was just clip and trigger... 
String Concatenation 
I don't think there are any compilers that do this, and I suspect that there is no way to hack it in. You can't create new buffers to store strings in without engine extensions, and there's no way to access the individual elements of a string from QC. A string in QC is really just the pointer to where the array of characters is stored. These arrays are either loaded with the progs, loaded from the map data, or accessed from the 16 char array allocated for each player's name. The last one is about as dynamic as strings get in quake.

What could be hacked into a compiler is some kind of keyword/macro thing called _tokenize(string n) or something, which would do all the work of calculating the corresponding character index for each character in the string you feed it, and then send each byte as MSG_ALL or MSG_ONE. It would still only be useful for fixed strings liked "killed " above, not loaded frlom map data. But it would keep the code looking shorter and neater.

A slight step in that direction would be for each fixed string in the progs, create an array of floats, so killed would become
s_finale_killed[7] = {107,105,108,108,101,100,12}

Then you'd have a loop

i = i + 1;

which writes it, which looks a bit better than a row of 7 WriteByte statements, and is certainly nicer for longer strings.

Additional: The idea of sending strings byte by byte is done to a huge extent in Pyrdon Gate, which is where I first heard of the idea. The source to v1.5 of this mod can be found here:

Look at menu/print.qc for a good idea of how it's all done there. One of the most valuable tricks you'll see is once you have a function
p4(float a,b,c,d)
which sends those four floats as bytes over the current channel, you can do stuff like
p4('D', 'a', 'm', ':');
which converts the characters to numbers for you, in this case printing "Dam:". This might be a frikqcc only trick, but it's worth a look. 
You need metl's skip tool (which removes all "skip" textures from the visible plane, thus making the func_wall invisible):

I don't know if the monsters were be able to walk on the grate if the clip brush was part of the func_wall. Skip is a safer bet. 
Fixing A Hole 
Be warned, if you do fill the holes with skip brushes, then they will also block grenades/rockets from going down the gaps, the holes are blocked in all but the visible hull. 
Put Fireballs Coming Out Of The Holes 
that way the monsters will be smarter for not walking over the holes.

There could already be fireballs coming out of the holes, I haven't looked at that map yet ;P 
I just gave it a brief test in your qarena map: You can make the monsters cross the grate by making the clip brush part of the func_wall entity. The brush must stay within the volume defined by the visible brushes. 

That looks usable. Not great, but under the circumstances it seems like the best option.

Thanks again! 

I put a clip brush into the func_wall before and it didn't work but I'll try making it smaller so it just fills in the holes. I'll try that tonight. 
But did you also make it part of the entity? 
Yeah, it was all part of the same func_wall - the regular brushes and the clip brush. The knights wouldn't set foot on it. 
Odd. Those skinny bastards. Shambler and Ogre in my test map had no problems. BBox-related? 
Unsure. I'll run some more tests as time permits. Maybe I'll just turn them into regular geometry and be done with it. Monsters who can chase you is better for gameplay than having gratings that disappear on Hard skill. 
You could also use trigger_monsterjump, of course. 
But I can't see how normal clipbrushes (that are world brushes) can help against clipnodes from brush ents...

Sorry, i meant to say add a clip brush to the entity, which encloses all the visible brushes... not add it to the world.

And qbsp doesn't like clip texes on ent brushes ...

I wouldn't say it doesn't like it, it's just that the model bounds are calculated incorrectly and the in-game physics cullboxes end up being too small (if the clip brushes extend outside the bounds of the visible brushes.)

It seems to work just fine with stock compilers and engines as long as the clip brushes stay inside the bounds of the visible brushes. 
IIRC You Can't 
have e.g. a door with only clip tex, then qbsp will spit out something like "entity with no valid brushes".

I don't know what'll happen if the door consists of several brushes and one of them is a clipbrush, maybe that's what you mean. It's probably a very unusual case, so behaviour might be unexpected ... 
true, brush entites need at least one visible brush.

In my experience, adding clips to a brushmodel that also has visible brushes works, as long as you follow the restriction i mentioned above. If you don't, the collision between the player and the entity will be buggy. (i think this might fixable in qbsp, by the way, by fixing the model bounds calculation.)

I've used clips on funcs in Antedilivian on a number of doors/bars to smooth player collision, so you can't climp up onto the lip, or into a recessed panel, etc. 
are we talking qbsp hull clipnodes (world) or those AND the entity clippy things whatever they are, added together?

Obviously the entities like func_wall or doors can't enter the hull forming process since they can move or disappear. 
I initially thought of monsterjumps as a work around, only problem arises if the jump is blocked by something on the other side. Hehe, the dumb Quake monsters don't look before they leap so they could potentially end up in the stew. 
qbsp generates a seperate bsp tree for each brush model, which includes hulls and nodes and stuff. Though, all the data ends up being stored together in the bsp file. 
What Is... 
...a clip brush? 
It's a brush with the "clip" texture on all faces. It doesn't show up in game, it only collides. Allows you to smooth out rough edges so the player won't get snagged. 
To funnel monsters sometimes as well.

A skip brush doesn't exist, really, but as mentioned before if you run metslime's skip tool on a map then it removes the visible face of all brushes that have a texture named skip. The difference being that the brush remains part of world collision - so grenades will still bounce off it and monsters have no problem walking over it. 
Really - I dont get the difference. The only difference seems to be that you need to use a skip tool for a skip-brush but you only have to use a texture to make a clip brush... ?!

Or would I be right in saying that a grenade will fall through a clip brush but collide with a skip, but you can walk over both?

P P P P P : - D 
"Or would I be right in saying that a grenade will fall through a clip brush but collide with a skip, but you can walk over both?"

QuakeC SVC_FINALE Resolution 
OK, so I wote a quick utility in Cocoa that lets me type in strings and it spits back the necessary QuakeC to emit that text to the finale screen. I'll release the source once it's fully done and Qonquer is using it without issues. 
Wow!!!! - You're Clever! 
But you should have made me a blood splat progs. :-(

(facetiousness is a virtue) 
I'm not that clever. It's, like, 20 lines of code. :) 
I used to program BBC basic (I wasnt bad at it either, I managed to make a top down scrolling racing game once, sort of pong-style stop-the-ball from-falling-out-of the-screen-type-stuff)

And I can do html, css and a bit of xml

Maybe I should try a bit of Quake C.

Honestly though, it looks well hard! 
QuakeC is a heavily stripped down version of C. If you have prior programming experience, the syntax is easy to pick up.

What is more difficult is learning how to do stuff within Quake. It's the same with any system or API, of course, but that's your stumbling block,

"Why doesn't that line of code work?"
"Why won't the monster turn to face me now?"
"No string concatenation, WTF?"

Once you get comfortable with what Quake does and how you can access it, you're golden. A few tutorial reads and a few posts here for Preach to answer, and you'll get it. 
Base Map 
I was wondering if anybody needed a small base style map for anything? It could be easily turned into a start / skill select map or joined onto an existing base map, the reason is that I just don't have the time to finish this one sadly...

Maybe the basepak or quoth2 or something needs a start map? Let me know if anyone is interested. 
It looks really cool ! go map and finish it... or do a DM with this one ;) 
Somebody turn it into a Qonquer arena. :) 
use it as a start map for the base pack! 
clip: players/monsters collide, but bullets/rockets pass through. Doesn't cast shadows or consume lightmaps. Doesn't affect vis time or r_speeds. Can be used to cover up normal brushes and you'll still be able to see the normal brushes underneath.

skip: it's really just an ordinary polygon that is invisible. It uses lightmap space, it cuts up the bsp and affects vis time, it blocks bullets, it casts shadows, etc. It can cause HOM due to the fact that when brushes touch, the touching surface area is removed.

Here's why: the bsp contains three independent "hulls," which are each built using the list of brushes in the map file. Hull 0 is the visible hull, a giant mesh of polygons that you see as you walk around the level. It is also used for collision for point sized entites and line-of-sight calculations. Hulls 1 and 2 are never visible, but used for collision for larger entities -- player sized entities use hull 1, and shambler-sized entities use hull 2.

clip brushes (clip must be an an entire brush, not just a face) are completely excluded from hull 0, but included when building hull 1 and 2. That's why they don't affect the visible stuff at all, or point entities, or bullets.

skip faces (since skip can be added to individual faces) are part of hull 0, and simply hidden from the engine so it doesn't render them. That's why they block bullets, cast shadows, affect vis, etc. 
Maybe release it as GPL or something - whatever you do, just don't waste it on the Base pack. 
Skip Vs. Clip 
You can create doors and other func's from skip brushes-- as long as one face is visible -- but you cannot create them from clip brushes. Right? 
Right, creating them entirely from clip brushes makes QBSP angry. 
Right, Right... 
Metlslime - Thanks again for explaining clearly details of questions I keep chucking at this thread!! I actually UNDERSTAND now - good explanation!

So I cant reduce my clipnode count by using clip-brushes to simplify more complex surfaces.

I could use a clip brush to make it so that a player/monster cant go down a tunnel even if it looks like he could (Gears of War style).

Or I could use clip brushes to make a ladder!! Thats a good idea! Hmmm, got me thinking now...

DaZ: Shame you dont wanna finish that map, I recognize the map from shots on the Base Pack thread. Also think I've seen it on another website somewhere?


I'd be half tempted to try and finish it, but it wouldn't feel right...

Base Pack - YES PLEASE

Neg/Metl - I actually think it would make a really good start map for "a" base pack. It has such distinctive architecture, and looks sooooo cool!

Quoth2 - Created a bit of a staemate really, hasnt it?

If it doesnt come out by the time I finish my world stuff, ya'll will have another Quoth1 map to play! Probably gona happen like that I would say. If you all had the same "easy come, easy go" attitude as me, base pack would have been finished ages ago :P 
Staemate = Stalemate 
Thans Industrial Textures 
Hehe, quite embarassing this, but, er, does anybody know where I can download a WAD file for these? I did see a website a couple of weeks ago but I cant remember where it was. Its either "find the file" or "extract them from Guncotton.bsp". I would rather find the wad. I've looked on Quaddicted but I'm not sure what the file would be called and theres nothing obvious there...

don't waist it on the Base Pack

like this basestart mapper 
For Monsters To Cross Gaps 
you can use Quoth2's func_togglewall (the forcefield entity) with no particles.

It's invisible and they'll cross it. Like a glass bridge. I checked. 
DM Map Sources Released...

I have released the source files to 2 deathmatch maps



The download includes both map sources (rmf & map) the texture wad (wc wad and hammer wad and hi-res tga)and the lighting compile tools (dubsp and durad).

Feel free to do whatever you want with them, I really don't care :) Just include my name in the readme if anyone ends up releasing anything from them...

When I get time I will pack up and release some more sources.

I dont know if this qualifies as news 
Glass In Q3A 
I'm working on a Q3A map and I'm having trouble finding that cool glass texture. I'm using GTKRadiant so two questions:

1)Where can I find the glass texture?
2)How to use it, i.e., how to make glass? 
You Mean 
Q3 glass? That's basically an environment map - maybe something similar would be possible in Dark Places but I've no idea.

To make a transparent brush I'd use .alpha - but search in this thread from the beggining and you'll get a load of different methods on how to do it.

You won't be able to find the glass texture since the diffuse (as I remember) is a flat colour, and an envorment map alone is just a grey blob. 
This Is One I Used... one of my maps. You'll need to add it to mymap.shader in baseq3/scripts (and change the "pjw3dm5" to "mymap"

qer_editorimage textures/base_wall/chrome_metal.tga
surfaceparm nolightmap
surfaceparm trans
qer_trans 0.5
cull disable

map textures/base_wall/chrome_metal.tga
blendfunc add
rgbGen identity
tcGen environment

Just put it on either a patch mesh (for cool curvy glass), or on one face of a common/nodraw brush, and then add clipping as necessary. 
For Fuck's Sake 
Yes, that should be ".tga" on the end of those lines rather than ".tg..."

I like how the auto-magically shortened func_ version is longer than the original. That's pretty cool. 
That worked - thanks! I'll modify it a bit to make it look more transparent. 
Getting An Error On My Quake 1 Map 
I'm working on a map and its goin good but when a friend tries to test it out using DarkPlaces they get this error.

Mod_Q1BSP_RecursiveNodePortals: WARNING: new portal was clipped away Mod_Q1BSP_RecursiveNodePortals: WARNING: new portal was clipped away

The map is a "space map" as in if the player touches the far edges of the map in any direction they will be instantly killed with a hurt function.

Another issue I am have, you die instantly upon spawning in the level, I have checked to make sure the player starting point was not inside a hurt function, but I am still getting instantly killed when I load the map. The only way around being killed is to toggle the console within the split second the map loads and turn god mode on. 
Sounds like one of your hurt trigger brushes is misshapen and Quake is extending it's volume all over the map or something. I would suggest checking them all and make sure they are all truly convex and on the grid. 
Read This

And be aware that you _might_ run into bugs that are Darkplaces-specific and are not affecting other engines. 
2nd Problem 
One thing you should check is whether your spawnpoint at the start of the is positioned at the origin of the map. If it is then what may have happened is you've accidentally created a point sized trigger_hurt. This is basically a brush entity which has lost its brush, so the engine creates it as a single point at the origin of the map.

One way to test this out is to load it in the new version of quoth:
Turn developer mode on and run the map. If this is the problem, then you should get a warning message in the console saying a point sized trigger was removed, and when you spawn you shouldn't be killed by it. 
Turns out something was wrong with one of the trigger_hurt functions. I have removed all 4 trigger_hurt funcs for now.

Thanks to everyone who helped :)

I'll probably be back shortly heh 
I'll probably be back shortly heh

Glad to hear it. I like space maps. 
I get warnings in FitzQuake when loading my new map. Something about being "unable to find whatever/quake.wav"
Obviously its a Quoth2 map :P

Err... I was just wandering if you might know if its a Quoth progs thing or if its more likely to be something in my map, cause I cant see any reason for it...

Anyone Know Where... 
...I can find a Quake Palette color index list? 
The Quake Palette 
Sound Error 
I'm guessing you put an info_screenshake somewhere in your map. This has two default sounds, misc/quake.wav and misc/quakeend.wav. These sounds come from the hipnotic mission pack, but neither of these sounds are supplied in the quoth download, which is an oversight. For now set both "noise" and "noise1" to "misc/null.wav". 
Willem, Kell And Preach 
Thanks for the info! You're very helpfull people!

Now I can have a red forcefield and no weird startup messages so thanks. 
I *somehow* (read : through utter stupidity) managed to delete all trace of the file s_explod.spr from my quake directory, I've even looked inside pak0.pak and it aint there, its all very odd and now I cannot play my beloved Quake :( Could someone please e-mail me the file??? My email address is in my profile. 
Mail sent. 
life-saver :) 
z-fighting, how can i get rid of it? 
I Think This Is What You Are Looking For\

Texture flicker while playing, "zebra-effect"
This is normally caused by the engine trying to render several textures in the same plane,
typically at some distance away. This is probably caused by overlapping brushes or e.g. a door
that isn't sufficiently encapsulated. In GL-engines you can also try setting the cvar
"gl_ztrick 0".
thanx :) 
Fitzquake Question 
when i try to load map with a fitzquake it crashes with allocblock:full what does it mean? 
nevermind, i figured out it 
Usually It Goes Out With A Bang 
but sometimes just a fitzquake... 
excessive lightmaps (90,normal =64) what does is mean, how can i reduce it? (the map has 1543 point ents, 118 solid ents) are lightmaps
only light ents, or every ent on map, ie mosters,ammo,light etc? 
Lightmaps are generated for every BSP surface that accepts lighting. Basically, I think that error means you have too many faces in your BSP. Delete some brushes to reduce your lightmap useage. 
Increase texture scale. The bigger a texture is scaled up the less it requires in light.

Chances are you've got a void map with a large box enclosing the level. Sky brushes can have a texture size of 9999x9999 and look exactly the same in the game. You can also do this to trigger and clip brushes - though I'm not sure if they affect lightmaps.

Aside from this noclip outside the map and look for hollow spaces that aren't meant to be drawn, but are. Sometimes there can a wafer thin chunk of enclosed space that's adding to the compile times of the level. 
there are 7076 brushes,it seems i can't delete
some brushes 'cos of level architecture, the map is only loadable in aguirre's glquake, maybe tyrquake others crashed afaik.
(excessive marksurfaces ==39268 of 32767)
(excessive clipnodes ==48060 of 32767)
also what's benefit of using txqbspbjp over treeqbspbjp 
it's not a void map, quite big though (almost 4096/4096 :) also there's no big box enclosing the level, it has no leaks also. compile time is qbsp~4min,light-full~30min, vis full~40min :) 
Increasing Scale Of Trigger Textures 
reduces lightmaps (on large triggers), yes. They aren't affected by clip though. Sky textures are always drawn with a minimum of surfaces regardless of their scale (assuming you're using a somewhat modern compiler), unless they intersect with other brushes. Upscaling the sky is only important if it's made of a simple (solid) texture.
Also watch out not to have the sky cover large faces of adjacent brushes (if using transparent sky), for these count towards lightmaps as well. 
I guess if the map requires a high-limit engine anyway, you don't really have to bother with optimizing lightmaps. 
Quake lightmaps triggers?! 
Title: "Tower of Dal Gurak"
40529 faces
7076 brushes
1662 entities
103 unique texnames
7522 texinfo
8 texture frames added

Building hulls sequentially...
Processing hull 0...
---- Brush_LoadEntity ----
6722 brushes
---- CSGFaces ----
37900 brushfaces
28040 csgfaces
22457 mergedfaces
---- SolidBSP ----
54241 split nodes
26168 solid leafs
27198 empty leafs
876 water leafs
96502 leaffaces
90736 nodefaces
*** WARNING 12: New portal was clipped away in CutNodePortals_r near (-880 1883 332)
*** WARNING 12: New portal was clipped away in CutNodePortals_r near (-884 1887 520)
*** WARNING 12: New portal was clipped away in CutNodePortals_r near (1025 -2924 -1632)
---- FillOutside ----
9540 outleafs
---- MergeAll ----
19464 mergefaces
---- SolidBSP ----
12630 split nodes
7517 solid leafs
4895 empty leafs
219 water leafs
34874 leaffaces
27869 nodefaces
---- Portalize ----
*** WARNING 12: New portal was clipped away in CutNodePortals_r near (-1708 592 887)
*** WARNING 12: New portal was clipped away in CutNodePortals_r near (1000 -2910 -1344)
*** WARNING 12: New portal was clipped away in CutNodePortals_r near (1116 -3263 -1968)
5114 vis leafs
13598 vis portals
---- Tjunc ----
28552 world edges
98877 edge points
24014 edges added by tjunctions
0 faces added by tjunctions
---- MakeFaceEdges ----
---- GrowRegions ----
Processing hull 1...
Processing hull 2...
*** WARNING 30: Clipnodes 48060 exceed normal engine max 32767
*** WARNING 31: Marksurfaces 39268 exceed normal engine max 32767
---- WriteBSPFile ----
16021 planes 320420
41374 vertexes 496488
15826 nodes 379824
7522 texinfo 300880
31680 faces 633600
48060 clipnodes 384480
7503 leafs 210084
39268 marksurfaces 78536
147534 surfedges 590136
75477 edges 301908
111 textures 2360748
lightdata 0
visdata 0
entdata 131911 
>I guess if the map requires a high-limit engine anyway, you don't really have to bother with optimizing lightmaps.
but the problem is the map is loadable in aguire's gl, it's seems many ppls prefer fitzquake usage (i don't mind when i'll release the map it'll require ONLY aguirre's engine, but this not solution) 
neg|ke, as experienced mapper, would you mind if i'll send my map to you to look at it? 
Uh, Ok. 
I can take a look at it. But with such a high marksurfaces/clipnodes count, it's unlikely the map will ever run in Fitzquake anyway. 
According to my humble experience, it will also depends on the level of occlusion of the map. You can exceed the limits if not all the map is rendered at the same time by the engine. Fullvis the map, and try to load it in FitzQuake: you'll have the answer then... 
it's already fullvised, and its crashed in fitzquake alas, dp also has troubles, the only
engine can load it's aguirre's gl, for me it's not a problem as i using only aguirre's eng. but other ppl prefer something differnt maybe

>neg|ke check yourmail 
AguirRe's engine only for your map.

Thats it. People wont mind too much, as long as you write it clearly in the news post and in the Readme. I like your map, it'll do well. But you'll never cut it down it work in FitzQuake. To many limits are exceeded.


I wander what sort of discussions were held between AguirRe and Kinn when The Marcher Fortress was released... GlMarcher.exe??!?! 
Where did I see a reference to your Industrial themed texture set? I've been looking all over for it and kind find anything. I think I read about it on one of the Quake Expo sites...

Anyone help? :-D 
i like your map too, did u finish it 
i like your map too, do u finish it 
Im Gonna Release It This Week! 
Then start another... 
that's a good news :)
ps. my english is terrible :( 
I can't keep up playing with all these new maps... 
i'm a little curious though, i mean, 7k brushes isn't all that much. the # of brushes don't seem to coincide with the amount of clipnodes, for example.

it's possible you've built the map in such a way to have excessive clipnodes, but i know from experience that maps in the 7k brush range shouldn't have that many clipnodes.

in fact, i had a 11k brush map that had only 36k clipnodes (still over the limit, but much < 48k).

i would check if the map isn't having any infinite planes or something at compile time... you could try looking at the bsp in quark as a start but that may not yield anything. 
look at above qbsp's output there're ~62errors
mostly 'Brush with duplicate plane' 
there're no infinite planes i'm sure, wc reports 6 invalid solids, but i think it's not cause a problem 
You could send me the 7-zipped bsp and I'll take a look at it. 
Come on guys, releasing a map that will only load in aguiRe's engine is just poor. This from the readme of that engine:

This makes it ideal for mappers who at one time or another experience problems with their maps; there are leaks, entity overflow or other issues that prevent the map from loading in a normal engine. These problems should of course be fixed so the map can be loaded in any engine, but during development this engine can be used to help finding and fixing the problems.

I for one don't even have aguiRe's glquake on my machine. I'm sure it's fine and good for its intended purpose, but I'm not going to download, install and configure a new engine just to play 1 map.

Besides which, as far as I know there's only win32 versions available, so you're automatically exclusing mac/linux/other users by making the decision to only support that engine. 
Well That Sucks Too! 
I mean some people make maps which are bigger than the engine limits allow on purpose.

Did you refuse to play Marcher Fortress or W A R P S P A S M just because you aren't "going to download, install and configure a new engine just to play 1 map"?

Spys map is not over limits because of poor mapping. It's over limits because it BIIIIIGG!

It uses Marcher progs for god's sake. Play it with GlMarcher.exe end you'll be fine. Or Warpspasm.

Its a bit like complaining because your on-road car wont go off-road, having access to a 4x4 but refusing to use it because you cant be bothered, or something....

You might as well tell Kinn, Ijed and Me to fuck off too! 
It all depends on the quality of the map if it justifies requiring a specific engine in my opinion. 
What I mean is that it should be jaw-dropping and extraordinary.
Look at gmsp3: Day of the Lord, menk: Menkalinan and czg07: Insomnia. All work in any engine. 
spirit- i can't campare my map with outstanding
work from glassman or czg, it's just an amaturish map, sorta speedmaping :)

frib- i always been your huge fan:) especially
pkeg1 map

aguirre- not sure 'bout 7z, could you accept rar? 
7zip - Download Link

7zip is the mightiest zipper ever!!

Use it, and select 7z as the format, all the other settings to the highest or the biggest number, or whatever, then be stunned by:

A - how long it takes to compress, compared to other zippers

B - How small it becomes!

: D 
Oh, Also 
7zip is also a fantastic thing to have because it reads .rar and .zip files too. I havent found a compressed file which it wouldnt read. Also it can make .rar and .zip files too.

It fantastic ! 
ok, aguirre, i sent it 
Wrote a reply to this and lost it somehow. Brain explosion or something. Anyway, the essence of it was, unless there's a very good reason why the map exceeds the normal engine limits (or has spanktacular new features that require new engine code) then why bother?

Seriously, why not just cut the map down or split it into 2 maps? Will it seriously destroy the gameplay? I doubt it. It will simply mean that more people are able to play your map, and everybody is happier. :) 
Hmmmm . . . 
You could split it up.....

thats not *actually* that bad of an idea...

And the Mac users - well - you know the one about the toothless blowjob.... 
I played Marcher because it came bundled with the required exe (which it damn well better do, if you expect me to play it) and because it was top drawer stuff.

Its a bit like complaining because your on-road car wont go off-road, having access to a 4x4 but refusing to use it because you cant be bothered, or something....

Not at all. You're assuming I want to go off-road. I don't. I'm quite happy here, putzing about on the standard old roads with my nice, familiar old engine. :)

Seriously, if you want me to play a map that won't load in FitzQuake, you had better prepare a pretty compelling argument as to why I should bother going out of my way to do so. Or make it as easy as possible to do it (e.g. include the required exe in the zip). Or both.

You might as well tell Kinn, Ijed and Me to fuck off too!

I might as well, but I won't. Besides, I like Kinn. Who is Ijed and what does he have to do with this?

Actually, on second thought, fuck off. Yes. All I'm doing is expressing my opinion, mate. It doesn't really have anything to do with you at all... does it? 
...I dunno, give an inch and they'll take a mile.

Lord, I dont want to have this debate. I have seen Spys map, and I dont want to spoil it for everyone.

Ijed is a legend! He made WARPSPASM. Full of maps which wont run in FitzQuake.

Anyhoo, I think Spys map uses Marcher Fortress progs. So you can run it under Marcher.exe. And you have to install Marcher Fortress to run the map anyway, so wheres the big inconvenience?

I dont want you to play any maps you dont want to, er, Mr Fribbles. If you see a map you dont want to play, then dont play it. It's a free country.

And we all know you dont like maps which break the mould, you were saying on the GA thread the other day, theres no need to repeat yourself.

Anyway, when I said that splitting the map into two might not *actually* be that bad of an idea, I wasnt kidding. It's a pretty obvious suggestion that I wouldnt have thought of. It would mean that Mac users can view the map.
On the other hand, it would make the set up process oven more complicated in a way, it would be a real Frankenstein job, dont you think - map running with Marcher progs, under Fitzquake. That'd be a first! Dont you think people might complain that it was 'too much messing around to set up'? Or something... 
ha-ha, i thought about to split the map, but it'll ruin my vision of map, maybe i'll release 2 version of map one splited and one not, i dno't wanna after i'll release the map, everybody will complain 'too much ado about nothin' this map isn't that quality as 'marcher fortress' 
And we all know you dont like maps which break the mould, you were saying on the GA thread the other day

Show me where I said that. What the fuck is your problem with me, anyway? All I was doing was expressing an opinion - am I not entitled to do so? 
I'm going to play it, just because you asked nicely. :)

As you can probably tell, I've missed a few Quake things in recent times.*

* as in, the last few years... 
This is nothing personal regarding you or your map, spy... I am always bitching about this every time this issue comes up. Sorry.

I just don't see why everyone is so flippant about exceeding all the usual engine limits these days. In doing so you're restricting engine choice and possibly excluding some people from playing your map. In my opinion this shouldn't be done without good reason. 
I put in the effort to ensure my maps run in FitzQuake. I am not flippant.

My maps are fucking awesome, in case you hadn't noticed. 
My maps are fucking awesome, in case you hadn't noticed.

Somewhere in the Dimension of the Damned I hear Roy G Batty whooping a, 'That's the Spirit!'. 
Mr. Fribbles wrote:
I just don't see why everyone is so flippant about exceeding all the usual engine limits these days...In my opinion this shouldn't be done without good reason.

Spy wrote:
i thought about to split the map, but it'll ruin my -->vision<-- of map

50 monsters/3 secrets, good night ? 
"I just don't see why everyone is so flippant about exceeding all the usual engine limits these days. In doing so you're restricting engine choice and possibly excluding some people from playing your map. In my opinion this shouldn't be done without good reason."

*raises glass*

Well said! 
Hug And Kiss The Engine Limits 
thats what I do. They're my friends. They let me know when to stop mapping cause the map is big enough! Funny how several engine limits will be touched at the same time.

I'm at the limit for Marksurfaces, Clipnodes and Bmodels. I think I must be pretty close to edicts too...

Its easier to avoid breaching engine limits when you know where they all are and how to monitor them.... 
runs in winquake...

that's pretty impressive if you ask me :)

Ricky: I dunno what happened to the textures, but they were for Q3. I can send you the set if you like, but they aren't that great and you'd need to convert them to q1 format. You are probably better off using Sock's metallic industrial textures or trying the kingpin set, which work great in Q1. If you want to use kingpin, I can send you a tidied up version of the megawad that contains just the textures you'd be most likely to use and named nicely so that the Worldcraft doesn't fuck things up when it encounters certain texture names. 
The KingPin 
textures that mix well with Quake also mix well with Evil Lair #3 set for a nice tech/industrial feel. 
...what HT said :)

Kell: unfortunately, some people haven't :(

re: limits - Having a conversation with Baker on this point might be enlightening. His self installers are very popular for a reason. We worked hard to keep Travail playable in standard Fitz, and to make it as simple as possible to install (i.e. simple pak0) but still some people didn't play it till it was converted to self install. Go figure... 
Sanity Check Time 
I'm working on my remix here and ... OK, let's say there's a func_wall in a map covering up a teleporter. If that func_wall doesn't have a targetname and none of it's spawn flags are set, it's never going to go away right? It almost looks like they intended to have this teleporter be revealed at some point but then never bothered to hook it up.

Is that right or am I missing something there? 
It's The Sort Of Thing I'd Do... make hollow spheres which you're never gonna see the inside of!

They probably were on a time limit, and were rushing to get finished! 
Oh no, it appears I'm wrong. The walls do indeed vanish in deathmatch. Weird. I thought you had to set all 3 skill spawnflags for that to happen. I guess setting none works as well.

Learn something new every day! 
Oh god, never mind. This is how it's supposed to work.

Hi everyone, it's my first day mapping!!1! 
+ spawnflags, mdl. Could this possibly be used for any nice trickery or compatibility issues? 
You need to set the "not in dm" (worldcraft name, not sure of the number) flag, not the skill flags. Also, the flags work on just about any entity. Not sure about static ents like func_illusionary, walltorches and sounds, but you can set all trigger setups to not appear in dm. If you load dm3rmx in sp and then dm with showbboxes turned on in fitzquake, you can see the difference... it's a very big difference. I think I culled almost everything. apdm3 is the same - you might as well optimise using the flags as much as possible.

Quoth adds support for coopflags, but afaik they work a little bit differently to the other flags, so I'm not sure how reliable using those will be on things other than enemies and perhaps triggers. Preach will know.

Also, you can use spawnflags on info_intermissions and have different intermissions per skill setting or for dm, so you could even make some kind of ending to your map and emulate games like contra where you get a shit ending unless you do the map on hard :) 
I Always Wandered Why 
people put more than one info_intermissions in maps! (duh) 
Welll, if you have more than one then Quake picks one randomly. 
I didnt know that either!

Infact it took me to this map to realise that you can set a mangle key. Weird tho - the first number (yaw?) seems to be the negative of what it would if it was a light mangle key. i.e. -15 deg = 15 deg.

Either that or i've gone mad
Coopflags should work correctly on all entities currently in quoth, the main difference between them and normal flags is when the removal occurs. The engine removes things with spawnflags before the spawnfunction for that entity is run. We can't do that for coopflags, because the first time an entity appears to us in QC is when the spawnfunction gets called. So instead, an entity with these flags is removed under two circumstances:
1) If it is made into a static entity - so you can remove torches in coop - although one might ask why you'd bother.
2) At the start of the first frame.

Any kind of entity will be removed if it has these flags, but the difference is the spawn function will already have run, resulting in two pitfalls. So firstly the precaches for all entities will be run regardless of their coopflags. Secondly, any effect an entity has on the game during their spawn function will happen even if they are marked with coop flags. For example, putting NOT_IN_COOP on a info_command_spawn won't prevent the command being sent in coop, as the entity sets the commands during it's spawn function then removes itself. It's fairly rare for an entity to have that kind of effect though. One of the cases that's caught and dealt with is an entity trying to spawn a static sound when it has coopflags, again the wall-torches are a good example.

The precaches thing might sound a bit wasteful, but it only causes a problem if you have some precaches that only ever appear in coop and some different ones that only appear in non-coop. Otherwise it's the one with the additional precaches that runs into the engine limits anyway. Also note that all map bmodels are precached regardless of whether they get used or not, so more thorough coopflags would not help there. 
Im horribly confused on the mangle field myself. Some Quake references say it's a pitch,yaw,roll angle field and others say that it's indicating a location in the world to look at.

Which is it? 
viewpos in the console and it'll give you a loadout or where you are and which direction you're looking in (its the second one). Use this with noclip to get good intermissions.

intermissions do have a weird angle setup, different from all the others, but there you go. 
It's definitely a pitch,yaw,roll angle field and not a specific world position to look at.

It's still confusing though - I'm pretty sure some entities handle it differently to others (as in sometimes it's yaw,pitch,roll instead, or whatever). I could be wrong here, but I definitely never fully made sense of it.. I always seem to have to trial and error it when I set up an info_intermission or something. 
Er, Well For Lights 
a light pointing north, tilted down 45 degrees towards the ground would be 90 -45 0, the third number required for no reason whatsoever (!?)

One pointed east, perpendicular beam to the ground would be 0 0 0

One pointed straight up or down would be 0 90 0 or 0 -90 0

This sort of explanation would hopefully help with lights (get you pointed in the right direction), but I've tried a mangle key with info_triggered_lightning (or whatever the quoth entity was) and had no success, and the first number of the three for an info_intermission seens to be the polar opposite of what it would be if it were a light....

Polar Opposite = Negative 
Polar opposite is the wrong term.

I mean a value of 45 0 0 would be a light with its beam perpendicular to the ground pointing north east. If it was an intermission with the same value it would be pointing south east. 
That's why I can never get it straight... it's different on lights and info_intermission entities. I guess this is why - here's the specs for the intermission entity:

/*QUAKED info_intermission (1 0.5 0.5) (-16 -16 -16) (16 16 16)
The camera point for the intermission. Use mangle instead of angle, so you can set pitch or roll as well as yaw. 'pitch roll yaw' Quake does a random pick if more than one exists. If no info_intermission entity is set, Quake uses the player start.

Here's the spotlight comments for Tyrlite:

Spotlights can be optionally aimed by specifying yaw and pitch values, instead of targeting an info_null entity. Add a new key in the form "mangle" "# # 0". The first # is the yaw angle, 0 to 360 degrees around the Z-axis. The second # is the pitch angle, 90 to
-90 degrees up to down. The 0 is just a required placeholder.
Transparent Water 
What do I need to have my water transparent? 
X-ray Specs... 
or is that not helpful? :p 
Check AguirRe's Docs, 
Assuming you're using his compilers.

I think its something like -transparent in txqbsp. 
Mike Woodham r_wateralpha "" change values and set the one you want 
can't you target an info_null from the info_intermission? I thought info_null was specifically for that purpose (along with spotlights).

Having said that, I've never done it, I've always used mangle. 
Dunno, but it sounds like a good method if you can do that.

Also, the viewpos method mentioned previously sounds like a real winner. 
Yeah, I just tried out viewpos in the game and damn if that isn't handy! Winner. 
Me seems to be too stupid to set up radiant, can someone help me please 
Transparent Water 
So, does that mean that I have to compile with -transwater AND use r_wateralpha in FQ?

In my sequal/prequal to FMB-BDG I have an area that gets flooded when the player enters it (a race-against-time affair). The traditional way to effect this seems to be to move the 'room' through a static water brush. However, due to the fact that I cannot (do not want to) turn this amount of the map into a moving object I am using a moving water brush but have a problem whereby when you are underwater looking up you cannot see the surface.

This does not look right in-game. Has anyone got a solution to this? 
Use opaque water then, or prevent the player from being underwater when the flooding takes place. 
The whole point is that the player will be underwater during the game-play and will drown if they do not do the necessary.

I am not looking for alternatives, I am looking for solutions. 
Alpha On Brushes 
The water transparency controlled by r_wateralpha does not apply to brush models, only to world brushes. You need some kind of .alpha support to make the moving brush transparent.

Incidentally, this means you can make teleporters with opaque textures in maps with transparent water by making the teleporter brushes func_wall or similar. 
Well, there is no easy solution (that I can think of). Are you using your own progs.dat - didn't hipprogs have some rising water code? 
Extras Pack 
has that and some other water control functions. 
Yes, most of the code comes from Extras. But with Preach talking about .alpha support, I am lost. 
To Clarify 
Ok, I want to be absolutely sure what the problem is here, because I may have got confused. Either:

1) When you look up while in the water you can see a water texture, but it is opaque rather than semi-transparent like normal water.


2) When you look up while in the water there is no water texture rendered at all, you can see straight out into the level.

The only solution to 1) is to add
.float alpha;
as a field in your progs, then set
self.alpha = 0.7;
on the func_water entity. This can be set through the map editor as a field on the entity instead. Of course, it will only work in engines that support .alpha, so not fq yet.

The best solution to 2) I can see is to comprise the model for your water of a very thin brush of water just on the surface, and then another larger brush just below that. Leave a gap so that the lower surface isn't clipped away. Turned on it's side it would look like:

| [........]

That way the lower face of the thin brush is visible while you are below the water. 
Water Insides... 
the pox_extras mod had example maps with water surfaces visible from inside the water model... i think it was made using extra-thin brushes or something, maybe check the map sources or docs. 
I'll play some more today and let you know if I get anywhere. 
1st Test 
A 1 unit func-water brush placed either inside the other brush or abutted against it does give a surface effect.

Now I will have to see if moving the brush still works with the same effect.

I will revert... 
I now have it working.

As Preach suggested, a 1 unit func_water brush abutted but not inside the main func_water brush, works: they both rise at the same time (triggered). From inside the brush i.e. underwater, when you look up you now see the surface. When viewed from above the surface i.e. you have solved the puzzle and escaped, there is no z-fighting. And when moving through the water and breaking the surface, everything looks fine.

By the way, no clipping takes place - is this because they are entities and not ordinary brushes?

Don't know what all the fuss was about ;-) 
I tried the moving water trick with the pox mod and found it quiet hard to make it arise for large brushes along distances. Also the surface isn't animating, although there is an animated texture for it.

I tried the old fashioned way also by making the room a func_train into a cube of water.
It seems you found a good solution for it.

Can you provide a map with an example?
I am really curious to it, as I feel the fuss somewhere I am loosing you're explanation. 
OK to use the registered e-mail for you?

I can send a sample map today. 
I�d be glad to explore. 
Hang on! Don't get carried away. The map I am sending you is not the FMB map the moving water has been designed for.

It is a single room showing the water brush rising and the use of the 1 unit brush to create a visible surface.

So not much to explore :-) 
You have mail. 
Thanks Mike 
I have received it, I will investigate it. 
Does this map is used in support of the extra progs,or the FMB progs?
I get a func_water missing. 
Sorry, I kind of assumed from your earlier post that you had the progs.dat for this.

It should work with the Extras progs.dat if you have it. If not, you are welcome to my FMB one (the latest one also fixes the music/savegame problem, if you are into music in your levels that is) 
I'll try them. 
Mapping Necessities And The Design Process 
What programs are necessary for creating a Quake map?

How do you go about designing a map? 
What platform are you on? Have you ever used a level editor before? 
I'm using Windows XP Pro. I've used UnrealEd once or twice. 
Er I Would Use Worldcraft 3.3 And The Quakeadapter Package 
Its very easy to use, its basically Hammer. You start off with loads of good textures to use. The Quake .wad files are all converted to Half-Life .hlwad flies for compatibility with the programme.

To make a Quake map you first create a .map file using an editor of your choice. The idea is to use 3D shapes (cubes, cylinders, prisms) to make an area which is sealed off from the 'outside'. If the inside area of your map leaks into the outside area the map will not compile properly. Which brings us to the second part - you have to compile the .map file into a .bsp file by running a QBSP programme on it, the it has to be 'visually optimised' by another programme called VIS, then the lighting has to be rendered with another programme called LIGHT.

All of these tools are supplied with the Worldcraft 3.3/Quakeadapter package, and autmatically set up ready to use. There's a good tutorial to get you started in the help section of Worldcraft.

here's a link:

that should get you started, welcome to Quake 1 mapping! I started doing it less than a year ago, and I just released my 9th map, so I'm sure if you try you'll be successfull!

I would experiment a bit with the above mentioned programmes, I'm sure you'll figure it out, but if you need help you can always ask here, lots of people will help.

As for designing a map, different people use different methods, some draw ideas out on paper first, some people build maps from the ground up.... ;-P 
I personally preferred QERadiant to Worldcraft but that's a somewhat religious argument. If you were on a Mac, I was going to give you the ToeTag pitch but ... oh well. Heh. 
Another vote for Radiant here (GtkRadiant 1.2 or 1.4). Unfortunately it isn't terribly easy to set up for Q1 editing.

Damn it, if I wasn't such an asshole I'd have a package and tutorial ready for new guys to use. (I've been meaning to do this for a while now, but I've been too "busy" (aka lazy)) 
Ive Never Used Radiant 
whats the difference? 
It's better in every way.

Honestly, the only thing I preferred about Worldcraft compared with Radiant was that Worldcraft would let you create illegal brushes (that you were attempting to form into a perfectly legal brush) without killing the brush. 
Heh Heh 
I'll have to give it a try 
I think Radiant will let you do that too, if you turn off "vertex editing splits face". Not entirely sure though.

Just don't use GtkRadiant 1.5 onwards. Don't be lured in by the "native Q1 support" shit. They've changed the basic brush editing/manipulation controls (and not for the better). Sigh, must not begin rant. It'd be quicker for me to dig up the old whinges rather than typing it again... 
Code Question For The Masses 
OK, does anyone know what the magic formula is in C for converting from UV coordinates back into Quake texture vectors?

I know how to go from vectors to UVs (that code is inside of QBSP), but how do you go the other way? If we could figure that out, some real texturing muscle could be added to ToeTag and other level editors. 
Oh and Fribbles, I would love to read some of those old rants if you were being serious there. Are they somewhere that could be linked? 
Worldcraft has visgroups.
Ogier has something even better - hierarchies.

But I'm still trying to learn to use it really.

It's a bit unconfigurable (view window order!) and badly documented (since it's mainly a company internal tool) but seems pretty snappy. There are a huge number of direct keyboard shortcuts for everything.

If the Starbreeze guys could get the company to publish a newer version online... ;) 
OK, This Will Sound 'tarded 
but in Worldcraft you have four projections: xy, zy and xz and 3D or whatever. When I have looked at shots of other editors I am always put off straight away by the fact that most seem to have 2 projections on the screen at any one time - 3D and one other. Like Radiant or Doom-ed or whatever. Surely this means you have to press a button each time you want to see the map from a different angle. Which is surely gonna slow you down somewhat.

Also does Radiant have a fully functional texture lock tool which you can do ANYTHING with? Yes or no? Is it as good as WC3.3 / Hammer's?

I am honestly curious.

I mean you must have to spend a bit of time with an editor before you could say you know it well enough to pass judgement... 
Info_intermission + Mangle 
Different engines point in different directions with the mangle key on info_intermissions BTW, namely JoeQuake/FitzQuake...

(just seeing as we were discussing this the other week....) 
most modern editors have the WC four view style. Radiant has it. 
Oh, OK - I'll Prob Give It A Try At Some Point.. was the purpose built ID editor for Quake2 right? Which version is best for Quake1 mapping, wheres the best place to look?

I'm not a fan of the 4 view layout (as evidenced by ToeTags layout). You only ever need 1 2D view at a time and 90% of the time you'll be using top-down anyway. There, I said it. 
Yeah I Know Its Silly 
I often get annoyed because the four views are too small, but for creating brushes it useful to see a top and a side view at the same time. I guess in other view modes you have a "toggle view" button or something.

Im sure I could get used to other ways, I cant pass judgement till ive tried them! 
traditional four view in GTKRadiant 1.2.11 with the texture theme set to black and green is the way I do it.

I just set the game to Quake 3 Arena, and try to lock my texture handling to Quake acceptable degree handling (I know, the last map was rough, but I was under the lash of time).

I hate 1.5; is the ability to load texture sets really a deprecated feature? I've looked through the literature that came with 1.5 and I've spent many hours working with it and have found nothing to contradict that impression. 
4 views wastes 2 views worth of space. 1 big 'grid view' is all you need to work in, with assistance from the z-checker view and the 3d view. And when you do need a side view , ctrl-tab quickly switches between them once you get used to it. 
4 views wastes 2 views worth of space. 1 big 'grid view' is all you need to work in, with assistance from the z-checker view and the 3d view. And when you do need a side view , ctrl-tab quickly switches between them once you get used to it.

is pretty much the layout I use in Blender and Wings3d, and it works great. I'm more reluctant to do so in Radiant because the view point is not so easy to manipulate the entire scene as it is in a proper 3d ap. 
whenever I use Max or Maya, it's always just a single 3d window, sometimes switched to side views for measurement. 
Advantages Of Worldcraft 
there are a few disadvantages of course, but here is a shortlist of the reasons I still use Worldcraft over other editors:

*the ability to modify the properties of many entities at once. This also works with faces in texturing mode and you needn't change all the properties to be the same. You can just alter, angle, name, brightness, scale or whatever you like and it will only change those things.
*visgroups. Far more useful than some seem to think. Shits all over regions in radiant but requires a little overhead to set them up. Especially useful if you still use 1.6a :)
*fairly decent texture browser and multiwad support. Find/replace also works nicely and the search is great.
*native Quake support (up to 1.6a, you need simple conversion tools for the valve versions I think, but maybe bengt's latest compilers handle the maps natively - not sure).
*vertex edit mulitple brushes at once and select any number of vertices or edges to manipulate at once.
*rmf files store camera settings (you can create lots of cameras around your level and switch between them whilst editing instead of having to fly around) visgroups and brush groups (like func_groups, but you can group anything, including entities and it's stored in a hierachy).

The valve versions of wc from 3.3 onwards benefit from accelerated 3d, improved mouse controls and near perfect texture locking that works with rotations as well as moves. Not sure if it works on flipped brushes. The texture editing window also has a few new features like fit to face etc.

The only features I miss in WC that radiant has are the 3 point clipper (WC has only a 2 point clipper) and the filters. You can show/hide visgroups in worldcraft, but it's really nice having the ability to hide clips, triggers, lights etc. at the click of a button without needing to set up groups. Oh, and the single window view in radiant is quite nice - I can't look at four views at the same time :) 
ToeTag does most of that stuff as well. It does, I tell you! 
Did You Ever Get The Texture Lock 

That is the best feature of Worldcraft. In 1.6a it was buggy, but in the 3.3 version it never fails! I almost feel as though I am cheating by using it.

One thing though, supposedly if you set a faces angle to -1 the texture will be a mirror of the original. I could never get this working in WC, but instead would create a brush then spin it round 180 degrees, and the face on the other side would be a mirror.

I cant get my head round the idea of a three-point clipper. How the hell does that work?!?! 
No, my texture locking is somewhat lame. It works well enough but it's not fantastic or anything.

A 3 point clipper is, IMO, something that you rarely need. Imagine a triangle in the 3D viewport that will do what your 2D clipper is doing. 
One thing though, supposedly if you set a faces angle to -1 the texture will be a mirror of the original. I could never get this working in WC, but instead would create a brush then spin it round 180 degrees, and the face on the other side would be a mirror.

To mirror a texture on a face, give it a negative scale. Most of the time this will just mean -1 scale, you can flip it vertically or horizontally, or both...

If you're using a scale other than 1, same deal, just make it negative (e.g. -0.5, -2, whatever). 
I'd love to try it (ToeTag) to be honest. When is the windows port coming? ;) 
Thanks Fribbles 
Ok, so I haven't used the editor, but I still have some feedback, Willem.

I started looking at the docs and I noticed that the camera controls for the 3D view in ToeTag are limited to mouse wheel and mouse drag shenanigans. This is functional of course, but I have to say it's a hell of a lot nicer to just fly around the map like you can in Radiant (and even Hammmer now!)

If you're not aware, this is implemented just like spectator mode in most of the FPS games that you can map for in these editors. That is, keys to move forward/back and strafe, while the mouse just looks around freely. This is simple and intuitive, and just plain makes sense.

Radiant: arrow keys = move, mouse = look around, RMB in 3D viewport to toggle free fly mode on/off.

Hammer: WASD = move, mouse = look around, Z button toggles free fly mode. 
"When is the windows port coming? ;)"

Flying pork and all that. :) 

A spectator cam might be a useful thing to add.

ToeTag's camera controls might sound weird but they mirror every other 3D application available on the Mac so they aren't really all that strange to Mac people. 
ToeTag's controls don't sound that weird at all (well, I don't know where the option button and all that are, but I assume you've chosen sensible keys! :)

They do sound like common controls for 3D apps or world-building tools... that's the problem really. Of course, if you're happy with it, that's the main thing.

I tell you what though, I get really fucked off with Maya at work because of its shitty camera controls. So often I've wished for (proper, sensible, obvious) camera controls like GtkRadiant's in Maya...

Using the mouse and keys to look around is kind of OK if you're working on one object or a limited area, but it's so much better using freefly/spec camera when you want to get around fast or just get a better sense of the space you're creating by looking at it from many angles. 
Of course, this is all irrelevant since I'm not using the editor and I have no means of doing so. Although buying a whole new system just to edit Quake maps doesn't sound nearly as ridiculous as it should... hmmm... :)

In all seriousness though, consider the spec/freefly mode. Try it in Hammer and GtkRadiant if you are able to. It's just so natural and obvious that once you've used it, you wish every 3D app worked that way.

Both Radiant and Hammer still allow you to select brushes and faces while in that free fly mode as well, so it can be used while editing some things and not just for navigating. For instance, the free fly mode combined with the texturing shortcuts in Radiant make it easy to fly around a room and texture heaps of different surfaces quickly. 
Quoth Vermis 
Is it possible to have it spawn in at a certain point, so it doesn't block the player before it's supposed to appear? 
or, er, spawn delay?

(I've never used a Vermis, but doesnt Quoth allow you spawn enemies in?)

Or failing that can you teleport the Vermis in the old fashioned way?

(I'd imagine this isnt helpfull as you would surely know what you are doing, and ive missed something...?) 

I've become spoiled by UnrealEd which has, hands down, the greatest level design camera system ever built. It's so incredibly productive to use.

I try to replicate it whenever I write an editor and ToeTag is designed sort of along those lines but making Mac concessions along the way. 
I've never spent enough time with UnrealED to actually get a feel for it. I tried an early release version, but I had trouble getting it to run at all at the time (it was a very low-end machine, it couldn't handle it).

I've become spoiled by UnrealEd which has, hands down, the greatest level design camera system ever built. It's so incredibly productive to use.

That's a pretty big call though... I really should give it a go. I've always wanted to do some UT maps. Does the editor ship with both UT3 and Gears of War? 
Yep, it's included in both. 
Re: Vermis Spawn 
Won't work because it's static.
My plan was to have an upside-down Vermis battle the player from above. The bbox stays on the ground though, plus the grab attack loses its effect as the tentacle is too high up. In the end, the battle I planned would have been annoying anyway, the area is way too tight. 
Make all the other monsters attack you from upside-down and the Vermis battle will be easy to implement. 
Did you put the UE3 camera in ToeTag? If so, WINDOWS CONVERSION NOW!

Oh, rewrite Quake's map format and compilers so we can have subtractive geometry too. I can barely stand working on my Quake map now... "what do you mean I have to create 4+ brushes just to make an indent in a wall!?" 

No, sorry. Just saying I like that camera system. ToeTag is using the standard Mac 3D camera set up.

Doesn't Quark do subtractive brushes? Or maybe it's BSP. One of them does... 
You Can Carve In WC 
but it almost always turns the brushes to shit - like most boolean operations. 
He's talking about a system like Unreal has. You place a brush that acts as a negative space in the map. When the BSP compiles, it cuts that brush into the world rather than adding it to the world. It's hella awesome and makes BSP work much easier/quicker than in Quake.

Moving a window, for example, means moving your subtractive brush over a little. You don't have to resize all of the surrounding brushes to surround the new hole you want instead. 
I Suppose Its A Bit Like Making A BSP File Directly 
Rather than making it out of shapes which have sides that the engine doesnt even need, and we waste loads of time with compilers trying to remove them! And I suppose it eliminates leaks too? 
That does sound pretty good.

Straight away I'm thinking of making a map only out of subtractive brushes, just to be awkward. Could be useful with a subtractive mask system, but probably too much for poor ol bsp.

Wasn't there some game that did work like this? 
how hard would it be to make an editor like that? Ie. leafs and nodes.

Then you could possibly even directly edit BSP:s.

Or you could couple it to the engine.

Then you end up with cube style stuff.. 
In my experience, you don't want that. Treating a level editing tool like a modeling tool (which is what this amounts to) has never been shown to be a productivity boost.

It's better for level designers to work with some sort of abstraction (i.e. brushes) and have a compiler that does the right thing later. 
Octree / Cube 
That's what I was thinking of. 
thinking of making a map only out of subtractive brushes

One of my first (unreleased) maps in 1997 was done like this. I thought i was a genius (no leaks!) until, around adding room 5, the qbsp times were already climbing past 5 minutes. 
What Kind Of Machine Was That Metl? 
heh - a P133 w. 16MbRAM and Windows 95? 
pentium 166, 32mb ram, win95. 
yes, quark has those. Called "diggers" or something. I'd use them carefully though. 
quark has some cool features! Not sure I want to switch now though... not after 10 years of Worldcraft.

Holy shit. 10 years. Argh. 
I've tried QuArK, but I could never get into learning how to use it and always went back to wc. The massive amount of features makes it a shameful retreat.

Maybe its the interface - I don't like most modern interfaces with their helpful "features" and round icons for square buttons (fuck XP start menu) but the way QuArK is laid out doesn't gel with how I think about mapping in Q1. Odd. Or lazy. 
No, that's fair. I always felt that I should be using Quark as well but I could never get into it. It never clicked for me. 
Diggers are very good when you're unsure how to build an area.
Tag and glue features are also very nice.
For those who think quark is complex download an older version. And you don't need the interface. Quark has a lot of shortcut keys too.
But it it doesn't suite for quake too good. And is a bit buggy.

Bsp is about the oposite of quark: it's cleaner,(look at the map source,less compiling errors, Hom effects)
but has less features.

Ogier is the most 3D editor I have seen so far.
And radiant seems to be similar to Ogier but not as efficient.

haven't tied Worldcraft yet. Doesn't run on my sys. 
Oh god, that digger is ugly. In their example, 12 tris are created more than a properly built and mitered wall of that example. And since it's done post compile, you can't even fix it.

The point of them is the trade off though. Easier level building/tweaking in exchange for messier brushes. And, really, if the level runs correctly does the brush configuration really matter? 
When you do coding, do you favour methods that work, or methods that work quickly? 
diggers=Compile it and see how it looks ingame.

When you want to have a door somewhere else: just move the negative, otherwise you have to modify more than one brush and doing this severeal times would be a lot of work.
When you are sure build everything around the negative brush. 
"When you want to have a door somewhere else: just move the negative, otherwise you have to modify more than one brush and doing this severeal times would be a lot of work.
When you are sure build everything around the negative brush."

That sounds sensible. If you're concerned about how the brushes are laid out, go with this strategy. Fast iteration times = win. 
Negative Brushes Etc... 
I have to say, considering some of the extra UI involved in some of the features described above (especially the process of linking texture alignment across multiple faces), I'm not sure if it's worth it. Moving doors and stuff in radiant has never been a huge issue for me, and creating/modifying alcoves is also pretty fast. Retexturing multiple faces with the same alignment is very fast too (edit face one, grab the texture alignment with a click, then apply it to other faces with one click each.)

Radiant is far from being perfect or ideal, but I think one of the nice things about it is that it makes a small collection of core interactions very efficient, and you can usually do complex things using those. 
While it's not for everyone, I think you'd really have to get into Unreal mapping to fully grasp how great the subtractive brushes can be. Nowadays we mostly use meshes in Unreal so it's not all that applicable anymore but subtractive brushes were so incredibly useful back in the heady BSP based days,

Of course, UnrealEd would let you see the resulting BSP right there in the editor viewport and you moved the wireframe brushes around to change things so it's not quite analogous to Quake mappping. 
Subtractive Brushes + Meshes 

It's changed somewhat though. I'm not sure how recent your experience is but UnrealEngine3 switched from a subtractive world to an additive one.

So you add brushes like you do in Quake now. Subtractives still work and are heavily employed but you don't start with carving out a space anymore. You start in empty space. 
I've been working with UED3 for the last 2 years of my life.

Subtractive geometry is awesome, since you can build a quick area out of 'Quake style' additive brushes for your layout and gameplay blockouts, then later, when you get art assets and want to trim out a level, you can carve out of your flat blocked out level to place wall meshes, or to add larger scale details to the BSP. 
Oh cool! We're doing things a little differently for Gears 2 in that we're blocking out levels with BSP. Then, once we determine that the layout is fun and gameplay is solid, we convert those BSP brushes into blocking volumes (for those who don't know Unreal - basically, clip brushes), and then add meshes inside of those to flesh the level out.

Works well! 
So THATS What You Doing! 

Loved Gears one! (I could tell you were a pro)

You remind me of another pro (but not quite as nasty!!!)

(dont know where to look now!) :-o 
Da Fuck? 
Why did no one tell me you were Warren Marshall? 
Because it doesn't matter? :) I'm just a guy who likes making Quake maps. 
Just Logical 
that the creme de la creme of the industry comes back focussing on the best game ever... I´m John Carmack btw hehehe 
Just wondering if anyone has any idea on this small issue. - I followed this guide to get WC3.3 to work for Quake mapping, but I noticed a small issue. When I want to apply textures, I can't seem to select a seperate face of the brush - but this should work? I'm just wondering if anyone has a clue on this?

I've tried using QuArK, but I find the process of applying textures quite slow. Guess I'm too spoilt and used to Hammer editor. Haven't really tried out WC1.6a fully yet though. 
shift+a. Press that to get into texture application mode and that should let you select separate faces. There is also a button (a cube with multicoloured sides) that does the same thing.

No idea what the problem could be otherwise. Perhaps it's a 3d card driver problem? I can't select anything in the 3d view in WC 1.6a if I enable 3d acceleration, but v3.3 and up are very different to 1.6a and support proper opengl rendering. 
I was gonna type here, but I get sick of sounding like a blabber-mouth!! :-)
Are you selecting "Texture Application Mode" by clicking on the icon or shift+a as Than describes? Then you click on the face in the 3D view, you can ctrl+select to select multiple faces.

About once every blue moon WC3.3 throws some bug at me. The other day I was unable to get out of this mode where I couldnt select any brushes and I was only able to drag the 2D views around with the mouse (navigation style). Restarting the program wouldn't fix this (god knows, I probably pressed some button or something) but restarting Windows did!

Sometimes I get an error message something like "OpenGL shutdown failed" or something when I exit WC3.3.

Generally it's great though! I hope you get it working Quakis, cause the texture application features of WC3.3 are second to none! ('fit' - yes please!!)

OK so I am a blabber-mouth :-| 
Pretty much I can't select anything in the 3D view, that includes the brush itself - only from the 2D views it allows me to. Therefore, even in texture application mode it doesn't select a single face I tell it to. 
You have to turn off 3d acceleration. Or another option that's in that same window. T remember this being an old WC bug with certain video cards, but I thought it was limited to 1.6a and fixed in Hammer.

Give it a try though. 
I checked through all the options in WC3.3 and found nothing related to 3D/Hardware accelertaion for me to uncheck.

I also installed a copy of WC1.6a test if it does the same. I set it up and made sure hardware accelertaion was unchecked and everything works fine in the 3D view for this version.

Sorry if I sound like I'm pestering, I just don't like giving up too soon on things. 
I've stuck with 1.6a - the features of later version of hammer not being a sufficient draw as oposed to the various problems caused - having to convert textures, no texture packs above a certain size etc.

I just assumed 3.3 would have the same tools/options/3dviews - thought it did from my time messing around with HL1. 
Dont Worry - Pestering Is G00d!! 
Try tools => options => 3D Views => Filter Textures (in 3.3)

I think that probably has to do with the hardware accelleration . . . ?

What graphics card are you using? You could try altering the settings in either the NVidia Controll Center or the Catalyst Contoll Center if you have NVidia/ATI hardware, there could be a global setting which is interfering with WC3.3

Make sure all of the global settings are default or "let the application decide" or whatever....


(let us know how you do...) 
We've had problems here and there in the past with anti-aliasing messing up selecting things in UnrealEd. If you've forced that on in your video card settings, that might be it. 
Unfortunetly, it doesn't seem there's anything on my video card settings that seems to cause it. I also check anti-aliasing but I don't even have it forced.

@ijed: 3.3 camera movement feels a lot more nicer than in 1.6a, and I can go about texturing things much quicker and have a better workflow than the camera movement in 1.6a, amongst a few other things which help. 
Like I Say 
I didn't find the software overall improved enough to go through the rigmarole of changing over. And I'm lazy. 
Your last post - half of it sounded like you still were stuck, the other half sounded like you have fixed the problem (?)

Ijed: I would try it, you might like it (+ it is easier than installing WARPSPASM, even the wadconveter thingy, you wouldnt notice it!!)


PS - I respect everybody has their own way.... 
WC 3.3 
I gave it a try the other day, but I'm not very pleased. Firstly, I don't like the fact that you HAVE to install it in Program Files/Worldcraft, otherwise it will not work.

I'm not all crazy about having to convert the textures in hlwad format every time either. I guess that's not a big deal, but still.

And lastly, I couldn't find the menu option to increase texture brightness. It's not where it should be, as it is in 1.6a.

3.3 does have a very fast 3D window though, and that can be important especially in big maps.

But in the end, I still stick with 1.6. Thats not to say I don't like 3.3, but I'm more comfortable with 1.6 
You Were Never One For Meticulous Texture Alignment Though... 
Seriously, the texture alignment features of WC 3.3 are what sold it for me. And the ability to copy and paste multiple brushes and then rotate them WITHOUT LOOSING THE TEXTURE ALIGNMENT INFO :D :D :D

I too also had problems with the 3D window being too dark, but I ran the NVidia display optimazation wizard (with the Monitor brightness/contrast settings on max, as it says to do) and the I realised that I was getting a better PC picture for it too :D

And why does everybody complain about the texture converter? OK so if you have a texture over 1024 then you need to mess around a bit, but I dont use huge textures. I guess some people like biiiig textures.....

Whatever? :D 
It's Not 
1024 in pixel size, but the Qauntity of textures inside a single WAD. And there's alot of Wads that contain more than 1024 textures. 
Well I Can Live Without 3.3's Texture Alignment 
But I CAN'T live with abnormally dark textures, not being able to see whats what.

You Were Never One For Meticulous Texture Alignment Though...

Maybe not in the past. But in my latest maps, once they're released, you will see I have taken the extra time to make sure everything is aligned. 
@Ricky - No, the issue still persues. But I'm using a mix of the two. 3.3 to construct, 1.6a to texture. It's a slower process due to 1.6a's awkward camera but better than nothing. 
Did you try unchecking the "filter textures" tab in the 3D part of the options menu?

Apart from that Im foxed. (?)

Orl - Have you tried getting fixing up the brightness/contrast settings of your video card? Try it with the monitor brightness/contrast BOTH on 100%, then you'll have a colour correction module somewhere.....

I dunno, I respect that everybody has their own way, I'm only trying to help. 
I can adjust my monitor and video card brightness, both are at 50%. At 100%, I can see the textures fine, but everything else is way to bright. I shouldn't have to change the brightness every time I want to do some mapping.

I know WC 3.3 has the option to adjust the brightness for the 2D view gridlines, but none for the 3D view? Wheres the thought in that.

I'm only trying to help.

I know, and I am glad you are, believe me :)
But I'm content with 1.6 and its super slow 3D view and no auto alignment. It suits me well. 
What About Colour Correction/display Optimisation Module? 
Humour me:

1 - Turn monitor contrast/brightness to 100%

2 - Go into your graphics card's software, and find the colour correction module. There's bound to be one if you have hardware from the last 5-6 years. On my system theres a wizard which gives you a red/green/blue line, and you have to match up the colour's tones. Also you have to do an exercise where you have a group of lines going through shades of black to white. The two darkest strips have to both appear black.
I would imagine you have a similar option somewhere on your computer.
Click on windows desktop with the RMB, then click on properties, then go to the settings tab, then click on "advanced". There's probably something there. On my computer it's the NVidia Controll Panel, on ATI computers its the Catalyst Controll Center.

I found after doing this my games also looked better. And it's easier to see the picture on my monitor in sunlight too.

If you either can't be bothered to try this, or already have, or dont have the option then I'm sorry. I give up! All I can say is it worked for me! 
I Must Admit 
I too had the same problem as your'e describing, and experienced the "washed out" look. In XP all of the beige/grey type areas of the windows seemed very white, and dazzling. But when I figured out how to set the monitor up properly I found it to be better than ever before! 
do I delete the weaponvieuw for screenshots? 
r_drawviewmodel 0 
I did a quick google search and found this thread;,1188737745,4371/1068645/0#7

States exactly the same problem with the same card. Someone mentions a temp-fix that seems to work, by disabling the card, then re-enabling. Though is this practical? Since I don't really want anything to... mess up. 
Solution Works 
Just tested the solution in the link I mentioned above and it works. The only issue is a drop in speed, but nothing unbearable. Hopefully this can be helpful to anyone else that comes across the same problem. 
r_drawvieuwmodel 0

unknown command. 
Becuase You Spelled It Wrong? 
try "r_drawvi" and hit TAB. :P 
I am so stpid! 
mwahaha that sounds so dutch, nice one MadFox 
45 Degree .... Texture Alignment... Can't Quite Remember... 
On some brushes with a 45 degree face, textures ligning up in the editor are 90 degrees out in the game, and vice versa.

I remember two fixes: one was when compiling (-oldaxis ?) and one was in the editor (BspEditor). Anyone know the editor fix? 
Not sure ... that's interesting though because I thought it was only ToeTag that did that. Good to know my editor isn't alone in screwing up sometimes. :P 
File - Preferences - Preferences:
Alt. 45 Deg. Face Texturing checkbox.

Close your map and re-open it to refresh all affected textures (there may be a faster way to do this, but I haven't found it). If you only need to refresh one surface, select it, open the Surface Properties box (hotkey: S), and click one of the Apply buttons. 
Thanks for your help.

I'm using 96b (because support for BspBuild was dropped in 96c) so the sequence is:-

File - Preferences - Game/Directories

then in the Settings Window, from the drop down select Texture

then change the texture_alignment from False to True

then click on Write Bsp.cfg

Everything's fine right now... 
Mashing The Meshing Button 
I'm using fitzquake080(ok, fitzhack080) and testing some code, when I notice a great deal of slowdown. At first I thought I'd created some monstrosity in the progs code, but profile showed nothing out of the ordinary. I eventually remembered what the pentegram at the top right means - disk activity is slowing it down. When I turn on developer mode I discover that some models are getting meshed almost every time I look at them.

I tried deleting glquake folder in the mod directory, but this only worked temporarily. Is it possible that heapsize was too low for the map I was running(tris.bsp)? Would that or something else cause things to be meshed very often when lots of models were onscreen, but for it to die down again when some models got removed? 
Half-Life Wad Editor? 
What's the most popular or prevalent Half-Life wad editor? 
Try either XwE ( or Wally ( 
Holy Shit.... 
I believe higher heapsize would fix that because it sounds like models being re-caches continuously. 
Thanks - this seems to work. Just so long as it's not the change in code! 
Transparant Skin? 
Is it possible to add the grey colour that is used in sprites to a model?
This for adding transparancy to it, like the gaps in the skeleton of bones. 
then I must have seen bublegum watching shrak.
wasn't there that crying babyball, who just slit open?

Looking at the texture it is done with that same colour.
But if I use it on a base tex for an entityit it stays brown. 
Lit Doors 
What is the trick again to have the inner faces of a door (the ones that touch when the door is closed) lit? 
Well I Would Put A Light Inside The Door Opposite 
because lights can be inside solid entities.

Does Ythat Make Sense To You? 
#### ####
###> <###
#### #### <---- A door

#### ####
#x#> <#x#
#### #### <---- The two x's are lights inside the doors 
Think About It 
electrifying something on a moving thing is much harder and more prone to error. 
Ok, Lol 
note to self: read context. 
Oh Nice, Thanks Ricky 
And now I am gonna electrify megaman's moving butt. 
Yeah - I Dont Mean "attatch The Light To The Door" 
I dont think thats even possible, is it?

I just mean put the light inside the door in the .map file so that it casts light onto the "inner faces" of the door opposite. :-)

AFAIK you can put light entities inside any solid entity, because the inside of a solid entity is not in the void, and because solid entities dont cast shadows. 
I didn't even think of that, nice tip Ricky. Makes perfect sense now that you mention it... 
I am having trouble with a func_wall to kill. A monster has "killtarget" "killwall", the func_wall has "targetname" "killwall". Nothing happens when the monster dies, what is wrong? 
If monsters don't have the target field set, then they skip the part of the code that calls SUB_UseTargets - which is the function that handles killtargets. So give the monster a "target" key which doesn't correspond to any targetname in your map, and it should work fine. 
Thanks Preach 
now that is down right evil. 
Disappearing Toolwindows In Hammer 
I roll with the toolbar objects undocked. Thusly:

After a while the toolwindows flicker out, as if the renderorder is reversed or something. Behold:

If I mouseover them, the titlebars flicker back on top, and I can sometimes unfuck it back by resizing them or minimizing the hammer window and maximizing - and after a while they fuck off again. Mothercockgobbling bullshit. It started a few days ago, either when I tried the latest geforce driver or when valve released the latest source SDK update, I'm not sure which, but rolling back the drivers haven't helped.

It's bloodfucking annoying. Anyone know of a fix?


Also, Willem, wtf? Why've you dropped off the PC radar? 
The PC radar? 
the crap 
Any1 has idea why could UV mapping be lost on .ase in radiant?

pictures there 

Ahh right. I dunno, I just got tired of it I guess. 
Multiple Uv Channels? 
or uv channel that isn't set to 0? all i got, sorry. 
Target, Killtarget... 
wait, i thought each entity could only fire a target OR a killtarget, and not both?

So it's the opposite for monsters? 
Simple Solution.. a trigger_relay which in turn fires the killtarget. job done! 
Right The First Time 
You're right that in the basic quake progs, only one out of killtarget and target will work for any given entity. Specifically if an entity has "killtarget" set, then whatever name is in the "target" field will not be triggered when the "killtarget" is fired.

But it is still necessary to have a "target" for the monster to start the whole process, because the check for "target" happens in some monster specific code, which doesn't consider the case of "killtarget". (I get the feeling from these kinds of bugs that the killtarget was a late addition to the code).

I suppose that because it won't ever get used, it doesn't really matter what you put in the "target" field. You do run the risk of triggering something out of turn in fixed/altered progs if you don't make the target a safe name(for example quoth and possibly hipnotic too). 
Half Life 2 Mapping 
currently, there's something in my hl2 map that's causing the engine to just quit. but the stupid thing doesn't give me any kind of error messages to help me understand what's going on.

does anyone know if there's like some kind of log i can look over or something of the type? it's impossible to fix a problem if i can't even find out what it is. -_- 
hl2 is crap delete the all map and remake it for Q1 
I had a hard job on using the killtarget in an end monster pit.

I gave a trigger_once to activate the monster, but because the monster itself opened a space in the pit it had to be closed again. So I used a train with a wait function.

In that way I couldn't use the time it took to kill the monster to open the door again.
Later I found with a trigger relay target to the monsters death could killtarget the trigger_once. The func_train just disapeared.

It took quiet some time before I understood it was the trigger_once I had to killtarget and not the func_train.

But I saw some monsters in the map also just disapear and reapear, so I think it has something to do with mismatching parameters. 
OK, here's a question. I've seen this in several id maps now and I don't get it. Look at E3M4 - from the player start position, there is an exit slipgate on the floor above. On top of that slipgate is a little trigger_teleport brush that will warp the player back to the start position - why? 
Probably Just So You Get That Distinct Ambient Teleport Sound Effect. 
Maybe related to betatesting and forgotten to remove?

I just stumbled on this yesterday: 
Czg Is Correct 
Since a teleport ambient sound does not exist as a seperate entity, a real teleport has to be used to create the sound. No bugs here. 
Huh, OK. Seems they should have made trigger_changelevel emit the sound then. 
Also For The Start Portals 
Such as the beginning of e4m8, there is a real teleporter that goes nowhere above the blocked portal structure. It too, is there to emulate the teleporter sound. 
Nice trick, thanks. 
Hi, It's Me Again 
I am learning a lot with my rmx map.

Any idea with QuArK's Digger thing sometimes stops working? Eg I just used it to try some window positions (faster than doing the actual brushwork) and then added some brush and boom, three diggers don't work anymore. This happened with another one earlier. 
Don't use digger: it is baaaaaaad ;)
Ask rather on QuArK forum here: as it sounds to be more related to QuArK use than mapping issue itself :P 
The digger is only bad if you're excessively anal about your brushes and need to control every single cut yourself.

Oh wait, right, nevermind. Forgot what site I was on for a moment there. :) 
I said I just used it to try some window positions, ok!
It's not too important as I can simply put a normal brush there, the digger just looks nicer until I properly brush it. Just thought I would ask.

Did anyone manage to setup those fancy templates that were added recently? The process is simply retarted anmd for me it once half worked but never usable: 
The problem with digger is that it generates HOM most of the times, and also it basically a hole creator that sucks... just due to texturing difficulty...
Well, I tried to use it in my first map, and I've been adviced by Vondur to not use it anymore, so I did...and it was not a bad advice.. Anyway, perhaps I have to test a little bit more the feature :P but I really doubt it will improve my stuff.... 
Where do I look in order to fix the killtarget / target bug?

- a la Quoth1.

If its not a bug then I'll have to create a new function to handle the extra target? 
SKIP Textures 
Can anyone point me to source code for a QBSP compiler that supports SKIP textures? I'm interested in learning about them... 
its a post full-compile tool, and it works just fine, Metlslime made it!! I used it for the fuse part of Slave. you just run:

newskip -mapname

all there is to it (just texture skip-able faces with a texture called "skip")

The old skip tool (can't remember who made it) doesn't like light tools, and the light tools dont like it)

I've got it at home, I can post it later but I'm sure if you google "newskip.exe Quake" you'll probably find it somewhere... 
Well, thanks, but I'd rather implement it at the QBSP level so it writes out a BSP file that is ready to rock. 
It's Finding Light/vis Tools Which Dont Fuck Up 
when they hit a skipped face. You see it basically removes the faces completely, and from my experience light and vis tools throw fatal errors at you every time :-( , so it can only be done after the process I'm afraid.

Although I can only speak from my level, if you know what I mean ;-P

but if you dont need to vis/light then I guess you could write it into a QBSP tool (?) 
Right. I know the Quest source code is available and they claim to support SKIP textures in QBSP but I was wondering if there were any others. 
Killtarget Bug 
Do you mean the one where a monster needs a target in order to fire it's killtarget, or the one where having a killtarget prevents target from firing?

For the former, the code you need to change lies in monster_death_use in monsters.qc. The line that reads

if (!

should be changed to

if (! && !self.killtarget)

or just commented out, SUB_UseTargets can handle empty strings properly just fine.

The latter problem is a bit harder. The problem is in SUB_UseTargets in subs.qc, find the portion of code that begins
if (self.killtarget)

The do...while bit loops over all the entities, until a return is hit when t is the world entity - which in quake terms means we've gone through the whole list. The problem is we'd like to have it just break out of the loop, rather than return from the whole function - as currently it makes it skip the last portion that checks for targets. Solution 1 is to turn that little loop, everything I cut out from the quote above, into it's own function. Then just call your new function from the same point in the code the loop used to occupy.

Solution 2 is to rewrite the loop so the while condition actually breaks you out of the loop at the right time, without ever removing the world. That would look like:

t = find (world, targetname, self.killtarget);;
remove (t);
t = find (t, targetname, self.killtarget);

Notice how we initialise t to the first found item, and put the while(t) at the front of the loop. This is so that if there are no entities with that targetname, the find returns world, and we skip the first iteration of the loop. Removing world crashes the server, so we really want to avoid that. 
I'm beginning to suspect that I'm the only guy writing tools anymore - aren't I? :) 
There is no compiler that currently supports skip faces, so for now it's done as a post-processing step. Everyone uses either tyrann's original "skip.exe" or my "newskip.exe", which both operate on the same principle -- leave the faces in the bsp, but shuffle them around and lower the marksurface and face counts, so that the game rendrerer doesn't try to render them. Example:

Leaf before processing:
marksurface count: 5
markrsurface array: 1,2,3,4,5

Leaf after processing:
marksurface count: 3
markrsurface array: 1,4,5,2,3 (2 and 3 won't be drawn)

The potential advantages to qbsp support is that it could save lightmaps, reduce light time, lower file size, and reduce the global marksurface count. I don't know how easy or hard it would actually be to write.

I suppose the advantage to the current situation is that you can use any qbsp you want and you don't have to forfeit using skip textures. 
This may be obvious, but if you add skip support to qbsp, you should not do it the cheesy way that our tools do it, you should support it the right way by fully deleting / never creating those faces in the bsp file. 
That's what I want to do, metl. Of course, we'll have to see if my incompetence proves too much for the task. 
the old skip tool is a bit buggy and doesn't support skip on fluids. Metls skip tool supports skip, waterskip, lavaskip and slimeskip textures so you can use it for effects like glass using water brushes and glass underwater etc.

It's pretty nice.

Probably best to implement skip at the end so you don't somehow get lighting promblems from missing faces. Still I personally tend to use it only on solidents and water faces. 
here's the thread for newskip, with links. 
(part 2 Of Previous Message) 
are there any up-to-date tuts on lighting for noobs? 
Jumping Distances 
Does anyone know how far those cheating basta...., I mean trick jumpers, can jump across yawning caverns?

-bunny hopping
-grenade jump
-rocket jump
-vore ball fiend swipe
-double grenade mouse swipe back flip triple sulk ho

...given a flat surface and decent run up. 
You Forgot... 
Shambler Lightning Jump Surf. 
Cheers Preach 
I meant the former, but seeing as you answered both I'll attempt the 2nd when I get back as well, the second solution seeming to be the cleaner way to resolve the issue.

Been away for awhile and get back in a few days, will be nice to be mucking about with Quake again. 
Never had that that a digger does not work. But when you have a digger in a group it only affects brushes in it, which is very usefull:

a room= two brushes: one of them is a digger. Group them. Put stuff into that room but not into that group. 
Push Problem 
I have a trigger_push jumppad that doesn't work for some reason. It's placed a few units about a func_wall/floor and uses angles -90 0 0</a>. Touching it from the side slows down the player, jumping activates the push; touching it from above works fine.

Does Quoth have the coop item bug (items firing targets) fixed? 
I recreated your scenario, and indeed the same thing happens as you describe.

A quick workaround I found was to set the angles to -90.1 0 0. This pushes the player in a different direction very slightly, but only by about a few units, and it seems to work. 
Still Doesn't Work 
I tried different angles for all axes. This is likely related to the angle 0/360 thing. All other jumppads work. 
You could try 270 0 0, I can't think why it's not working but if -90.1 works then 270 might also.

Does Quoth have the coop item bug (items firing targets) fixed?

Do you mean things that you touch firing their targets when you touch them, even if you can't pick them up like a weapon you already own? Yes, this has been fixed in quoth, although I remember me and Kell took a while working out what the right behaviour should be. Weapons will fire the first time they are touched by a player, regardless of whether they are picked up by that touch. Keys also work like this now, although it's not easy to have this problem in coop without allowing coop key cheating.

There is one oversight in the quoth fix of this problem to date. It is still possible for an armour pickup to make a trigger impossible - if the player has equal or better armour than what you want them to pick up. This isn't exclusively a coop issue though, it exists in single player too, so it kinda figures why it didn't get changed...yeah. 
i need a door that:

-opens when shot at from one side
-opens by trigger from that same side
-doesn't open from the other side
-displays a message when being shot at from that other side
-does all that multiple times
-oh and it needs to be passable ;)

my problem here is the shootable triggers - they are solid, right? can you disable stuff and then enable it again? 
You Can Make A Button 
then use Metlslime's skip tool to make it invisible, or make a shootable door with a set close time which is also invisible. You can make doors and buttons which are invisible, either can be set to be shot to activate, this is how you can make it so that it only works from one side of the door....

hope that helps... :-o 
The Moon On A Stick... 
...that's what you want, megaman.

There's a way to do this, but it's in no way pleasant. Here's how it goes:

You need to split your door into a front half and a back half, and make sure the front door is higher in the entity list than the back. Make both of these entities into func_wall entities. We're now going to trick the game into thinking these walls are in fact doors, although we get to pick what functions they run when hurt or touched.

So to begin, give the front and back doors all of these keys

speed (set as usual for a door)
wait (ditto)
health 1
maxhealth 1
pos2 (offset vector - see below)
takedamage 1
state 1

In addition, give the front door

think LinkDoors
nextthink 0.5
th_die door_kiled
touch door_use
noise1 (path to the sound you want played when the door stops)
noise2 (path to the sound you want played while the door moves)

and the back door

th_die SUB_Null

The offset should be how far you want the door to move when it opens. So if it opens vertically upwards 128 units from where it starts, then set pos2 to '0 0 128'.

At this point, you should have a pair of doors that link together when they spawn, so that if you shoot or touch the front part of the door, it opens. When you touch the back door, it should do nothing, and when you shoot it all that happens is it bleeds.

Once you get to that stage, post on here. The final trick to get a message sent to the player when you shoot the back door. That last part is the most difficult thing, because there's a complication or two which means we can't just paste the normal shootable trigger death function into th_die. I may have a way to do it though, but it's best that you have everything in the map working first. If it does work you'll need to do a bit of editing the ents file for it... 
wow, thank you preach.

I have it simplified a bit, which isn't that cool, but requires less of a hack.

I'll see if i find time in the next days to try your suggestion. 
What About That Two Doors Thing I Mentioned 
Two func_door entities next to each other (touching, door_dont_link NOT set), one for each side of the actual door. First door has to be triggered to open and displays the message when touched, the other one has health and opens when shot (only from one side).
Wouldn't that work (haven't tested it)? 
That will work in a similar way. The message for the back door will disappear as soon as the door is opened either by trigger or by shooting. Also it means you can't hijack the way that the back door behaves when you shoot it, but if you're sending the message on touch, that's less of a problem. 
i'm using that, without message triggers. Wait, can doors have a message?

/me checks

i'm such a q1 mapping noob :( 
(new)skip Again 
it doesn't seem to work here, skip surfaces always stay and it's always reporting
----- newskip version 1.0 -----
copyright 2007 John Fitzgibbons

Filename: megad2lvl3-2.bsp
Removed 0 faces.

and my .map file looks like this:

// brush 646
( -2016 352 224 ) ( -2048 352 224 ) ( -2016 224 224 ) skip 0 0 0 1 1
( -1728 352 256 ) ( -1760 320 128 ) ( -1728 352 128 ) metalt2_3 0 0 0 1 1
( -1728 224 128 ) ( -1728 224 256 ) ( -1728 352 256 ) skip 0 0 0 1 1
( -1856 224 128 ) ( -1856 224 256 ) ( -1728 224 256 ) skip 0 0 0 1 1
( -1856 352 256 ) ( -1728 352 256 ) ( -1728 224 256 ) skip 0 0 0 1 1

i tried calling it right after bsp or after light. What are the other possible pitfalls? 
I assume your WAD file contains a texture called "skip"? Because if you hand edited the MAP file then QBSP wouldn't find the skip texture and it would assign it the default checkerboard which might cause the skip tool to fail.

That's probably not helpful but there you go! 
ah, that makes sense - why would the bsp replace the texture though? That doesn't seem to make a whole lot sense ;) 
It doesn't replace it necessarily but since it can't find a texture called "skip" in the WAD file it nulls out the reference and the game draws it as a checkerboard (the default texture). You should get an error when you try to QBSP that MAP file saying something about the SKIP texture wasn't found... 
the replacing part doesn't make much sense.

q3map just assumes a default texture size (so the uvs are scaled wrong) but leaves the face intact otherwise. 
Oh, I can't speak for Quake3 ... sorry, I was talking about what I know from Quake1's QBSP code. 
Texture Question 
There's a .wad a the shubhub named 'ikbase_r2', is this the definitive ikbase .wad? Are there further variations lurking elsewhere? 
basically, if a texture is not in the wad, qbsp doesn't create an entry in the bsp, and if it's not in the bsp, there will not even be a name that can be read by engines/tools. 
...thank you. 
Having Issues Compiling? 
iv got worldcraft 3.3 with the addon that lets u map for quake, but i cant seem to compile my map, i get a error in each and every step of the compilation process. 
OK - What Are Your Errors? 
Give some details, and there may be a solution!

One thing I will say is that the WorldCraft process window has always been a problem, and it would be recommended that you run your compiling programs under a command prompt (i.e. start> programs> accessories> command prompt - then:

cd c:\(insert your .map file and tools dir here)
txqbsp (mapname)
vis -fast (mapname) ==> "-level 4" instead of "-fast" for full compile
light (mapname)

OK, so you may well know all of the above already :P

Please specify the error for more help :-) 
Here's The Error Log From The Compiler. 
i used to have a batch compiler for hl1 i could get it again u think that would work betteR?

** Executing...
** Command: Change Directory
** Parameters: c:\quake

** Executing...
** Command: Copy File
** Parameters: "C:\BSP\Quake\Bats\" "c:\quake\id1\maps\"

The command failed. Windows reported the error:
"The system cannot find the path specified."

** Executing...
** Command: c:\program files\worldcraft\quaketools\nomapversion.exe
** Parameters: "c:\quake\id1\maps\testmap1"

** Executing...
** Command: C:\BSP\Quake\Bats\QBSP.EXE
** Parameters: "c:\quake\id1\maps\testmap1"

Transparent water QBSP with Hipnotic extensions
MultiWAD version 1.65
by Ken Alverson based on original code by John Carmack

outputfile: c:\quake\id1\maps\testmap1.bsp
************ ERROR ************
Error opening c:\quake\id1\maps\ No such file or directory

** Executing...
** Command: C:\BSP\Quake\Bats\rvis.exe
** Parameters: "c:\quake\id1\maps\testmap1"

---- vis ----
************ ERROR ************
Error opening c:\quake\id1\maps\testmap1.bsp: No such file or directory

** Executing...
** Command: c:\program files\worldcraft\quaketools\light.exe
** Parameters: "c:\quake\id1\maps\testmap1"

----- Light 1.43 ---- Modified by Bengt Jardrup

************ ERROR ************
Error opening c:\quake\id1\maps\testmap1.bsp: No such file or directory

Elapsed time : 0:00

** Executing...
** Command: C:\Program Files\Quake\glquake.exe
** Parameters: +map "testmap1" 
Er - what is happening there is that the compilers arent configured properly, I can only speak for myself here but I put the compilers in c:\quake\id1\maps, which is the same place that I store the working rmf and map files. This way the only dir that Worldcraft crappy process window has to look is the one folder that all of the files are in!

Although I will say:

"** Parameters: "c:\quake\ id1\maps\testmap1&q..."

what the hell is the &q doing at the end of this line? Heh - I don't know!

This is a stupid one: - does the dir c:\quake\id1\maps\ exist on your PC?? (I assume so, but you never know!)

From the log it seems that the error first occurrs during the copy file process - because of this none of the other tools will work because the file did not copy to the destination folder, which is where the compilers are looking for the file....

yea, those dir's all exist on my pc lol actually i manually put all the files there myself to try and fix the issue. ill try doing what you have done to fix the issue and if that doesnt work, ill try my batch compiler. 
If In Doubt 
use a command prompt!

You have more control over each step of the comiplation process this way! Just stick all of yer tools in a folder like "c:\quaketools\" or something, then in Worldcraft go:

file> "export to .MAP">

then save it in "c:\quaketools"

then run from the way I described in my first reply, or write all of the commands in a batch file and run the batch file, i.e:

open notepad and write:

@echo Compiling testmap1
@echo Running...
@QBSP testmap1
@vis testmap1
@light -extra testmap1
@echo Finished! Now copy the .bsp file to c:\quake\id1\maps, run Quake and type "map testmap1" on the console...

save this file to c:\quaketools as a .bat file (rather than a txt file), go to c:\quaktools and doubleclick on the .bat file...

If this seems very patronising of me then I'm sorry! Im sure one of the other guys will know a simpler solution!! :P 
I bet this DOES sound quite patronising, sorry, I was typing the last one when you replied! 
Lol K, 
ill try all solutions and which ever one works the best, ill use that one from now on lol thanks guys. 
tryed writing the bat file u suggested even copyed and pasted what u said to write and ran it , and the command window just opened and closed no bsp. 
Well, the error is right the first command where the .map is copied somewhere else:

Make 200% sure these folders are the right:
Hold On 
hold on i might done your way the wrong way i didnt type it in command promt i just double clicked it afterwards lol 
Doing It Manually Should Definately Work! 
the "nomapversion" program is not important, all it does is remove a key from the enitity "worldspawn" which is "mapversion" "220"

This is not critical, it will still run just fine in Quake.

Putting your .map file in a folder like "c:\quaketools\" with your tools, and running the tools one at a time from the command prompt should definately work!

The error report from your process window could be re-posted here, because there is a limit to the size of one word on this messageboard, so if you re-post the error log but put some spaces in to break up the large strings of characters, we will be able to see the complete filenames....

That might help. 
Ok Lol... 
evidently all the csg files and such just disappeared. i have a batch compiler that has been set up for quake i just dont have the batch fiels. 
Can One Hope For Colored Light Support 
from Bengt Jardrup? ligh compiler and engine too

since more and more maps and mappers are using it, and Bengt`s light tool is probably the best and his engines are good at handling big crowded maps and preferd by many 
All That Has 
all that has is vis... :( 
I asked aguirRe the same question a while ago (i.e: when his engine will support colored lights), but he answered it is not part of his plan yet... Maybe he will changed of mind if enough people are pushing for...

aguirRe, any comments ? 
lol anyone know where i can download all of the compiling tools ? 
Look at AguirRe's profile under "people" at the top of this page, and go to his homepage! It's excellent! You can also read his Quake One Tooltips document, it contains a lot of info, and it's a brilliant resource to look up error messages, find out what they mean and how to overcome them... 
I Would Recommend 
you use "TxQbsp", it's the best bsp tool ever dude! Its extremely stable. Also his modified GlQuake is an excellent tool just to run maps which wont run in other engines. Often you find that it will run your map and tell you what is wrong with it! It is generally considered good paractise that you create maps to run in other engines, although there are some maps and mods out there which will only run in AGlQuake because they are over the engine limits..... 
New Log.... 
so, whats up now? i got a new repot on my log.

** Executing...
** Command: Change Directory
** Parameters: c:\quake

** Executing...
** Command: Copy File
** Parameters: "C:\BSP\Quake\Bats\" "C:\Program Files\Quake\id1\maps\"

** Executing...
** Command: C:\Program Files\Worldcraft\quaketools\txqbsp.exe
** Parameters: "C:\Program Files\Quake\id1\maps\testmap1"

TxQBSP 1.12 -- Modified by Bengt Jardrup

Inputfile: C:\Program Files\Quake\id1\maps\
Outputfile: C:\Program Files\Quake\id1\maps\testmap1.bsp
------ LoadMapFile ------
216 faces
37 brushes
7 entities
8 miptex
30 texinfo
Added 7 texture frames

Building hulls sequentially...
Processing hull 0...
------ Brush_LoadEntity ------
35 brushes read
------ CSGFaces ------
204 brushfaces
158 csgfaces
150 mergedfaces
------ SolidBSP ------
172 split nodes
48 solid leafs
108 empty leafs
17 water leafs
401 leaffaces
390 nodefaces
------ FillOutside ------
84 outleafs
------ MergeAll ------
98 mergefaces
------ SolidBSP ------
49 split nodes
28 solid leafs
19 empty leafs
3 water leafs
178 leaffaces
142 nodefaces
------ Portalize ------
22 vis leafs
38 vis portals
------ Tjunc ------
134 world edges
472 edge points
162 edges added by tjunctions
0 faces added by tjunctions
------ MakeFaceEdges ------
------ GrowRegions ------
Processing hull 1...
Processing hull 2...

------ FinishBSPFile ------
WriteBSPFile: C:\Program Files\Quake\id1\maps\testmap1.bsp
90 planes 1800
203 vertexes 2436
61 nodes 1464
30 texinfo 1200
158 faces 3160
192 clipnodes 1536
35 leafs 980
194 marksurfaces 388
798 surfedges 3192
400 edges 1600
15 textures 185624
lightdata 0
visdata 0
entdata 565

Elapsed time : 0:02

Peak memory used : 0.4 MB

** Executing...
** Command: C:\BSP\Quake\Bats\QBSP.EXE
** Parameters: "C:\Program Files\Quake\id1\maps\testmap1"

Transparent water QBSP with Hipnotic extensions
MultiWAD version 1.65
by Ken Alverson based on original code by John Carmack

outputfile: C:\Program Files\Quake\id1\maps\testmap1.bsp
************ ERROR ************
parsing brush

** Executing...
** Command: C:\BSP\Quake\Bats\rvis.exe
** Parameters: "C:\Program Files\Quake\id1\maps\testmap1"

---- vis ----
************ ERROR ************
Error opening C:\Program Files\Quake\id1\maps\testmap1.bsp: No such file or directory

** Executing...
** Command: C:\Program Files\Quake\glquake.exe
** Parameters: +map "testmap1" 
Don't use such stupid batch files.

Just run the tools individually in the command prompt -at least to see if it works. Qbsp, vis, light - it's as simple as that. The log above looks like there's something wrong with your batch, as if two QBSPs are run. Delete the second one (by Ken Alversion). Then it should work. 
you only need to run TxQbsp, it contains all of the features of WQbsp (Ken Alverson's) but it's more modern and has plently other newer features (it's stable as hell)

First run TxQbsp (with no commands)
Then run Vis (type "vis -fast testmap1", or "vis -level 4 testmap1")
Then run light (type "light -extra4 testmap1", or "light -gate testmap1")
then you can run the map in Quake! :-)

If you read the documentation on AguirRe's hompepage it will tell you all of the commands for his tools... 
if you read that log you will see that TxQbsp sucessfully comiles your map with no warnings! But then WQbsp tries to do the same thing and crashes. If you had run the tools one at a time you would have been able to view the map at that point, just with no vis (visual optimisation) and no lighting. The light and vis would have worked if WQbsp hadn't scrambled the perfectly good .bsp file that TxQbsp had created...

(dont worry dude, I found it all very confusing to begin with) 
so far got it workin hehe thanx guys, u know of a website with a forum like this that i can ask modeling questions ? 
Well, Errr........ 
OK, I have never really tried this! If you plan to mod for Quake1 I would look at:

Err, there are some tools at

There's much much more but I.. I just ...

(Im no coder...) 
He Said Modeling (modelling) 
not modding. 
Bat Files Are Not Stupid! 
Open the bat files with a text editor. And look at the paths and modify them. Where is the Problem?!? 
Program Files!!! Sux 
I think I wrote Progra*1

* is not correct but I cant write the "Wave" :( 
Put it in quotation marks. That's how you specify to DOS that it's a long filename with spaces in it. So "c:\program files\windows sucks\qbsp".

However, if you're going to store your maps and things in 'program files' you'll probably find that the Quake tools aren't fans of paths containing spaces. 
My fast.bat :

..\bats\Txqbsp %1
..\bats\light -extra %1
..\bats\vis -fast %1
copy %1.bsp \Progra~1\games\quake\ID1\maps
cd \Progra~1\games\quake
glquake.exe -width 1280 -height 1024 -bpp 32 -heapsize 30000 +map %1

My Comp.bat 
qbsp -oldaxis %1
vis %1
light -gate 1 %1
copy %1.pts c:\quake\id1\maps
copy %1.bsp c:\quake\id1\maps 
I Have Quake Shortcuts 
in ctrl-alt-w (fitz)
and ctrl-alt-a (fuhquake)
You can set up keyboard shortcuts on desktop shortcuts. Very useful. 
Is There A Better Fgd I Can Get Cuz 
on here -

there are a bunch of entities i dont have 
models info:

Also Preach's tutorial is usefull:

I can't help you with your fgd, because I don't use WorldCraft. 
then what do you use, is there a better program? thats just as easy as worldcraft? 
Some People Tend To Use QERadiant Or GTKRadient Or 

Or QuArK. or BSP

But not me! :-) 
Has good quake support. You may or may not prefer it.

P.S. Use 1.4, 1.5 bites. 
"The process cannot access the file because it is being used by another process" is the error I get after trying to compile the first map/room I ever made into a bsp. When I try to run my map to compile it into a a bsp using QBSP.exe and Vis.exe and LIGHT.exe that is the error I get. Can anyone help me out? 
Save To A .map File 
then run qbsp with the file ie "qbsp mymapnamehere" in command prompt by having all the utils and the map file in the same directory. Wait till it finishes. Then run vis and then light. In similar style.

Use aguirre's utils.
That "file in use" thing might be if some program was using the file and then crashed so it never released the lock. You might try to exit the editor, relogon, reboot or something to clear the lock. You must not run any of those tools simultaneously, but one at a time. 
OK so when I tried to convert to BSP using your method in command prompt I typed: ""C:\Documents and Settings\Sam.HOME-Z41XARD8MU\Desktop\Q1tools\QBSP.exe" first

First is the name of my map. I tried just simply typing "QBSP First" but windows couldn't find the file. So when I did what I tried above, a window would pop up for like a second then disappear. 
Wait I'm sorry.. Actually when I did it with qbsp I got: "first.h1", "first.h2", "first.prt", and "first.pts" but no "first.bsp" when I tried doing it with Vis and Light I got nothing new. just a split second window. 
the .map file (in my example and qbsp.exe into the same directory like c:\maps
then go to command prompt and type these two lines (end with enter)
cd maps
qbsp evil 
That looks like you have a leaked map. 
Nevermind.. after messing around I realized that my file extension was too long so I had to move everything to C:/ . Thanks for your help here guys. 
Hey sorry to bother you all but I get this error when I try to compile my map:

LoadPortals: couldn't read C:\QUAKE\2nd.prt

is it because of a leak or something? too many textures? 
If the portal file (.prt) does not exist, then the map has leaked, yes. QBSP will have generated a pointfile (.pts) instead, which you can use to try to find the source of the leak.

Copy the pointfile (it should be 2md.pts for you here) into your quake/id1/maps directory. Load the map and type pointfile in the console.

You will see a dashed line coming from a nearby entity and going through a hole in the map (at least hopefully that's what you'll see, the pointfile isn't always completely reliable...) 
Hey Again 
OK so I did what you told me the first time and it pointed me to the leak.. my leak was that the sky was open to the outside.. so i moved the sky down and made it bigger to cover the top of the screen. I try again. It gives me the same error again. So I try pointfile and it tells me "not enough free particles" "no points read" you think you can help me? Thanks in advance.

On a side note: How do I get more light into my maps? I put so many globes and torches and a lot of my map is still dark.. I even added a sky. 
In the worldspawn, you have to add a light field, and set a value: it will give a minimum light for the map, and then no more completely dark areas ;) 
In the worldspawn, you have to add a light field, and set a value: it will give a minimum light for the map, and then no more completely dark areas ;)

don't do this. it looks horrible

you just need to scatter ambient lights around carefully and play with their values; not all your light needs to come from torches or globes. it's very much a case of trial and error.

as a very rough example guide, in corridor type areas i put ambient ents 64 units off the ground, about 192 units apart from eachother and will typically give them a value of between about 140 and 170 depending how light i want it in there. then for bigger rooms it's a case of spacing them further out & increasing the values.. you really need to experiment though. and contrast between light & dark is important; you need sources lights & well-lit areas but quake wouldn't be quake without the dark shadows! 
*sourced Lights 
that should be.

one other thing to add, a nicer alternative to minlight for quickly lighting large areas is having a couple of lights with 'delay' set to '1' (assuming you have a custom light compiler). try putting one at the centre of a large room & tweaking its values, although it shouldn't be too high and there definitely shouldn't be more than a few in the same area (unless you're using them as an alternative to sunlight). really they're best used as an accompaniment to normal lights, rather than a replacement 
It is however possible to have complete dark areas, even with some minimum light value set in the worldspawn.. Just use antilights, and compile with -nominlimit during lightning processing, in huge map it is necessary ;) 
There Are Over 1000 Lights In My Current Project 
and only 95 monsters.... 
you should do the opposite: 1000 monsters and 95 lights :P 
i'm aware of them, used them before. i didn't mean select dark areas though, i meant all those little shadows & corners that otherwise wouldn't get touched by light. flooding them all with flat dim light sucks so much potential atmosphere out of maps & makes them look ugly, imho (that was actually my main gripe with 5rivers)

and it's never 'necessary', no matter how big the map. just lazy :p 
Yeah - Minlight 
I have learnwed that minlight is a bit crappy - it was used well in "The Bile Plant" alongside some light fog, but generally alowing maps to have areas wich are black is good. So no minlight !!

Used these instead:
"classname" "light"
"light" "60"
"wait" "0.18"

Usefull to light up areas whcih are completely black but you don't want them to be.... 
What does the wait key do in a light? Obviously it's for a specialized lighting program but what does it affect? Fall off? 
Wait Key 
It determines a light's fade distance. Higher values makes it fade faster. 
Hey Well I just started mapping.. what do i do with that code you gave me? also how do i apply fog, make breakable glass, etc.? 
what code who gave you and you need to use a mod for breakable glass.

"60" lights sound pretty dark to me, there is nothing wrong with making bright areas bright (200-max (255?)) actually. 
Mysterious Poster Of #7239 
I assume your name isn't "to ricky" :-)

Well when you make a map, the output of your editor is always in .map format. You can open this file in wordpad or notepad (I use notepad, although there are apparently better text editors). Try opening a map file in a text editor, and scroll to the end of the text (of which there will be shitloads!) The end of the map file is where all of the entities are put.

In more practical terms, in my case I use Worldcraft, whenj I put a light entity into the map by default the light has a bunch of "keys" - these are the settings or parameters of the entity. If I look at the properties of my light entity in Worldcraft it gives me the option of using "smart edit" - sometimes I use "smart edit" but to add a "wait" key to a light entity I need to turn it off. Then click on "add". This sends me to a window where I can enter the "key" and it's "value". So in this case the key would be "wait" and the value would be "0.18" without the quote marks.

As for the wait key on lights, well it works with Tyrlite and AguirRe's light tool - ot makes the light travel further or less distance!

values > 1 = the light travels LESS distance
values < 1 = the light travels MORE distance.

I like to put lights like:

"classname" "light"
"light" "450"
"wait" "6"

close to sourced lights, but along side that I would put another light which is less bright but travels further like:

"classname" "light"
"light" "60"
"wait" "0.2"

and maybe another like

editor is always in .map format. You can open this file in wordpad or notepad (I use notepad, although there are apparently better text editors). Try opening a map file in a text editor, and scroll to the end of the text (of which there will be shitloads!) The end of the map file is where all of the entities are put.

In more practical terms, in my case I use Worldcraft, whenj I put a light entity into the map by default the light has a bunch of "keys" - these are the settings or parameters of the entity. If I look at the properties of my light entity in Worldcraft it gives me the option of using "smart edit" - sometimes I use "smart edit" but to add a "wait" key to a light entity I need to turn it off. Then click on "add". This sends me to a window where I can enter the "key" and it's "value". So in this case the key would be "wait" and the value would be "0.18" without the quote marks.

As for the wait key on lights, well it works with Tyrlite and AguirRe's light tool - ot makes the light travel further or less distance!

values > 1 = the light travels LESS distance
values < 1 = the light travels MORE distance.

I like to put lights like:

"classname" "light"
"light" "450"
"wait" "6"

close to sourced lights, but along side that I would put another light which is less bright but travels further like:

"classname" "light"
"light" "160"

which is just a normal light!

You can have loads of light entities in a very small map! This way you can make a more realistic lighting effect IMHO! It has to be done right, and it's never completely simple. I always have to change things a few times to get it right..... 
Breakable Glass: 
You can map for Quoth 2!

If you make a brush (of what will be glass) into a "func_breakable", and then give it a "alpha" key with a value of "0.25" then that would behave like breakable glass, but it would only work in engines which suport alpha on brushmodels, like AguirRe's modified GLQuake, or Darkplaces or whatever........ 
You Cant Do It In Normal Quake 
only the Quoth mod.

You can have glass in normal Quake, but not breakable...... 
Oops! heh - just ignore the stuff thats in there twice...... 
Ahh OK. In ToeTag, if I wanted a hot light with a large fall off I would do something like:

"_light" "250 64 150 300"

A little easier to do and better for control since you can input the exact radii that you want to use. Above, that would be a 250 brightness light for 64 units and then a 150 with fall off for the next 300. 
One Last Question 
Ok thanks guys. One last question.... Can I make my own textures? 
Yes, it is possible: all textures are generally 8-bit indexed (that uses quake palette: see there
) and texture dimension must 16x16 multiples (e.g 16x16, 16x32, 32x16, 64x64, etc... etc...)

Enjoy ! 
Thakns Guys But 
Thanks guys but how do I turn an image that I have INTO a texture using wally? 
Just Copy Your Picture From Paint Or Whatever 
and paste it into wally. If you create a new .wad file in Wally, you then right-click in the .wad files window, then click on "paste as new"
It converts it to the correct pallette automatically and even creates the incremented mip-maps. 
Thanks again guys!! I think I got everything covered now thanks to you. I just have one last question... I have both worldcraft 1.6a and worldcraft 3.3 quaked.... I also have a wad to hlwad converter... do you think I should use 3.3 or 1.6a? 
That's really up to you, and also you'll get different answers on who you ask. RickyT23 will tell you to use 3.3, whereas I use 1.6a. 3.3 does have things like Enhanced texture positioning and faster rendering. But it also has its share of problems, like for me, its far to dark to see anything and there is no brightness adjuster.

Although using 1.6a involves a bit more work with texture aligning, you need to make the effort. Some of the greatest Q1SP maps were made from 1.6a.

My opinion, try them both out and see which one you feel most comfortable with.

And even if your not satisfied with either, there are other editors and well like Quark, BSP, Radient, ToeTag (Mac only) etc.

Experiment a little and see which version feels best. 
If You're Gonna Use 3.3 Then Do A Google On: 

Baker made a program which sets everything up for you! 
Teams And Player Spawns 
Hey. Is there some type of entity spawn for a player to spawn on a specific side of the map meant for his team? So like if you are playing a map with 2 bases and it's a team deathmatch, can I make a player on one team spawn on his base and all the other players spawn on their specific base? 
As far as I know, this isn't possible in standard Quake. (It'd be possible with a mod, but there's no way to do it nicely without a mod).

It's a shame because it's one of the things that makes Quake team deathmatch fairly, well, shit.

I did see one workaround in a map called Rocket School (r-school.bsp). It wasn't a team deathmatch map, but it had a setup where you'd spawn in an isolated box room which contained teleporters to 3 different areas of the map. I assume there were many different copies of this spawn room, each with its own info_player_deathmatch, because I never got telefragged or shared a spawn room with anyone, even in a full game.

The problem with this is that it's open to exploitation - if a team was leading by just 1 or 2 frags and there wasn't much time remaining in the map, they could all hide in the spawn rooms and not exit, and win in a cheesy fashion.

You could possibly counter this to some extent by having a trigger with a small delay on it (3-5 seconds maybe?) which automatically teleported the player after spawning if they had not already moved out of the spawn room. This might work, I'm not sure. 
Noob Question: No Textures In Gtkradiant 1.5.0 
How do I get textures to show up in gtk radiant 1.5.0? I tried changing the path to H:\Games\Quake and Quake\ID1 but still nothing. Any tips? I tried google searching this with no luck. Thanks! 
eh...nvm. I found this and it seems way too complicated.
Too lazy. I give up. 
How do I disable transparent water using aguirRe's vis? 
QBSP -nowatervis 
-nowatervis For Txqbsp 
I tried applying that to the vis commandline. Thanks to you two. 
Does it have the same effect on glasses and skip feature ? 
Invalid Brush Because Of Texture!? 
I need help guys. I made a button and it worked. I changed the texture on it and all of a sudden it became an invalid brush (the texture was 256x256). When I removed the texture, it was still messed up and I had to delete the button. Why is this? 
You can't mix texture types on a button, or any other brush for that matter - clip, * (liquid) and others are all different types. Animated textures + can be mixed on a brush with others, apart from liquid or clip.

Nope. Originally vis was calculated seperately for each water volume to save compile time. Skip areas cannot have vis inside them since they're solid objects still and glass is just another entity, like a func_wall ie. you can delete or leave it there - it has no affect on vis at all. 
Thanks for the tip, but my real problem was the my texture was named over 3 words, when textures are supposed to be only 1 word... Took me like an hour to remember that and fix it.

Lol I have another problem. I started using txqbsp and an updated version of light and vis. However I'm having this problem: I did not set any light entities but my map is fullbright. I checked my map properties and they are ordinary as I didn't change anything. I heard I need Qrad or something. Do you know where I can get that because I searched everywhere and couldn't find it. Thanks in advance. 
No light = fullbright. If you want darkness just put a tiny light somewhere. Then the rest will be pitch black. For testing you could add a "light" key to worldspawn with a value like "150". That light is rather dull by itself though so you would need to add highlights and shadows (if you plan to keep this). It's called minlight. is a great read. 
Stop Advocating Minlight, Spurty 
I Love You 
I don't. Actually I first wrote something really mean but then I made it "for testing" and "rather dull" instead. 
Oh ok, thanks! 
Monster Infighting 
I am writing some generic monster guide/list at the moment and got stuck.
Monsters infight only other monsters right? Except for grunts, those also attack their own kind? (And of course ogre_marksman, but that is another monster).
Are there any that do not infight?

I scanned through the qc but couldn't see anything about this. Probably it is "hidden in the logic". 
Fish:can't remember seeing infights with them as underwater maps are rare.

And what about Chthon?

btw UWF has a detailed monster guide at his site: 
Spirit, you're right in what you say there - no monster with the same classname infight except for grunts. The code that describes this is all hidden in combat.qc, in the t_damage function.

I'd just like to add that this block of code is a real mess to read in Quoth, not that I'm blaming anybody necros. 
Nah It's Ok 
it *is* ugly.

the class check should have been a full rewrite of the infighting part. also, the added coop ai stuff is in there too which makes it double ugly. 
Ah Snap 
I didn't know about UWF's list but it's interesting how similar mine turned out partly. :)

Thanks for the infos. 
Leak Problem.. 
hi aguiRre :)

so *apparently* i have a leak in my map. this is despite sealing it a long time ago and not making many major architectural changes since. at any rate, it compiled fine earlier this morning and i'll i've done since then is add a few bits & bobs at the opposite end of the map.

but now mr pointfile finds an area of the map i haven't touched for ages and comes up with this:

it goes straight through a completely solid brush. i can fire rockets at that point and have them explode, i can even stand below it & set sv_gravity to -100 without falling out of the level. the weirdest thing is that 'FillOutside' completed with no problems; i can noclip outside the level and see all of it. the leak warning didn't crop up in qbsp until right at the very end.

using TreeQBSP v2.04. any ideas? :|

(typical this had to happen on the deadline for the contest) 
does ogre_marksman do? 
This Pretty Much Answers That One: 

void() monster_ogre_marksman =
monster_ogre ();

obviously something ID never got round to implementing 
rj: has a whole part just about leaks and eliminating them. Good luck!

megaman: It's no different from an ogre but can be used to have infighting. 
rj: Quite possibly portal(?)-related. Try changing the shape of the brush in question or delete/recreate it (so it's moved to be bottom of the .map file). Maybe running QBSP with -hull # might give a hint.

megaman: It's a regular Ogre minus the wakeup sound who can infight with monster_ogre. Isn't spawned in Quoth. 
spirit, negke, thanks

i've been reading that textfile. the '-hull 2' option didn't seem to give any extra info; the pointfile just seemed to shoot up the wall instead (which was still solid to player & rockets). i've yet to try some of the other params but the '-leak 0' caught my attention; seems too much of an easy fix to be true.. what drawbacks arise from using it? 
Oh Oh! 
BspEditor 0.95b:
File #1
7000+ brushes, .map file 70535 lines long, 3.542 meg, everything visible in editor.

File #2 - next saved version of #1
Added small number of brushes, .map file 70945 lines long, 3.564 meg, only 9 bruhes visible in editor, all Groups set to visible, Map Info says 9 brushes.

Any ideas?

No big deal as it was only about one hours work but I am curious. 
I had a ton of leaks similar to the one your describing in omlabx. The ones where they pass through a solid wall.

As negke mentioned, change the brush shape a bit and see if that fixes it. It may in some cases, and sometimes it won't.

But I found out the best guaranteed method to eliminate a leak like that is to place a hollow box around the brush on the outside of the map, where the leak is. It doesn't have to be a big box either, just enough to cover the bad brush up. 
cheers. managed to pinpoint it in the end by deliberately leaking another part of the map (so as to split hull 0 up & prevent the outsides from filling) then noclipping outside; turns out i could fall through the side wall and down into the level.. so built a bunch of brushes around it in a similar fashion to your suggestion and it seemed to work :-) 
Tends to happen when the centre point of the brush (an X in worldcraft) is near the edge of the brush. Splitting it into two brushes can help when you don't want to change it's shape.

In other news I've been getting brushes that delete their own faces on compile - they generally retain a few but some go missing, just aren't drawn so the map leaks.

Seems to happen when using 45 degree angles that intersect with others, usually I have to bracket the offenders as in Orl's solution - but in a limited resources competition I don't want to have to do that if possible. 
So that's where to look. Thanks. 
Driver Issues And Hammer 
I've discovered that I'm no longer able to select brushes from the 3D view in hammer 3.4, no clicks register in that window. The 2D windows work fine, except that it's a pain to pick out overlapping brushes like that.

The biggest thing I remember doing recently is installing the latest catalyst drivers (running on a mobility 9700). Is it possible that installing these could have broken hammer? Has anyone encountered a problem like this and have a fix? And why does the cart on goldrush keep flickering, the new drivers didn't fix that either... 
What sounds like a classic WC bug - go into options and turn off hardware acceleration in the 3d window options.

I'm guessing that you had it turned on before but your previous drivers didn't conflict.

Hopefully that'll sort it out. 
Trigger_count And Bmodels 
Can anyone explain to me why a trigger_count needs to have a brush model, when it seems to me that it could be a point entity? The QC specifies it as needing one in the QUAKED line, but the code associated with it doesn't explain why... 
It Doesn't 
All triggers can be point entities as well. 
Func_door Lighting 
This may be fairly obvious but how do I get a func_door to light itself in the open position rather than the closed? I have a large door entity that I want to slide into the level but the default position places most of the entity in the void - therefore, it's mostly black when it slides into the level. 
Build It In The Open Position 
Then check the 'Start Open' spawnflag. 
Damn it, I knew it would be something obvious. Thanks! 
Sweet. Even more brushes left over now... 
The Fixer 
Yeah, it was the drivers, by going back to 5.x catalysts I managed to get clicking to work again. The option to disable hardware rendering has disappeared from 3.4, although if you uninstall your drivers then it does default to some kind of software rendering, where selecting things works again. 
Drivers And Wc 
I have the same problem and am forced to map without hardware accel, making the 3d view painfully slow on large maps. Visgroups help somewhat, but it can still be a pain. 
Same For Me 
Half my problem with attempting to map on the laptop is dealing with the lack of hardware support, and the other problem is the interface is a pain. Oddly enough, Blender, a much more sophisticated and complex app than Radiant shows very little performance loss without the HW acceleration. The source of the problem could be what Bambuz pointed out some time ago that GTK is a slow api. 
Custom Q3 Texture Packs 
Are there any "definite quake 3 custom textures archive" sites out there where I could grab most of the decent publicly available / free to use custom texture and shader sets for quake3?

^ The Wadfather is the best one I can think of (shortened for ridiculously long URL) 
UT3 - Adjusting Rooms 
Lets assume you a substracted a room from the world, added some details and then proceeded to work on other areas of the map. Now, let's say we go back to the original room and decide that we need to add some variety to the wall textures and the obvious way to do this would be: reduce the height of the original substracted room brush, place a new substracted brush using the new texture right on top of the old resized room.

However, we end up with a problem: the new substracted room brush is going to "override" and erase any additive brush details that were placed in the top part of the old room. Since the old room now has lower height, these details now find themselves inside the new room brush which we added later, meaning that the brush "creation order" of the detail brushes precedes that of the new room brush, meaning the new room brush overrides/erases any such details.

What do I do? 
You Use Static Meshes For Details And Leave Brushes The Hell Alone. 
Right click on any brush and you can move it to the front or back of the list.

Or, use the geometry tools to split the brush in half using the (admittedly clunky) clipping tool. That leaves the ordering the same. 
So in your case, select everything inside the room and moving it to "last" is probably going to work best. 
Yeh, what Willem said.

Tbh I found the way unreal uses brushes so much more tolerable once I found out you could vertex edit/order shift them, spent a good while assuming Uengine mappers all did some crazy level of layout planning before touching the editor ;p 
3d Studio Max Tutorials 
Are there any comprehensive 3d studio max tutorial sites which walk you through most important things, from the very beginniner topics to more advanced stuff and techniques? 

Is a nice resource for tutorials and general stuff. 
3ds max itself has a load of beginner tutorials which show how to use all the basic things like creating objects and applying modifiers, using the material editor and such. 
Ut3 - Simple Mesh Manipulation 
Assume you have a curved ramp like this one: Now, assume you want to bend it in the same way as when this same ramp is being used in Arsenal: so that it not only leads from one side to another, but also also goes upwards, still keeping the edges of both "start" and "end" nicely aligned.

I asked around and Hourences told me that UED has no way to do this directly and that since there are no prefab versions of this mesh bent the way I want, I would have to either 1) export from UED to max, edit mesh and reimport back into UED or 2) create my own mesh, texture it from scratch and import for use in UED.

Is this for real? Am I supposed to be have a modelling package like MAX and know how to use it if all I want is to simply slightly adjust an already existing mesh to suit my task? What about scaling meshes, do I also need a modelling package for this? 
You can't bend or warp meshes in UnrealEd, no. You can scale them, flip them or rotate them but you can't actually modify the shape dynamically. Sorry! 
As for scaling them - open the properties of the mesh once it's in the level and open the "Display" category. Fool around with the DrawScale and DrawScale3D fields. Putting negatives into those fields will flip the mesh along the appropriate axis. 
Mapping Solo Vs Collaboration 
Something I've been curious about:

Seeing as modern games require bigger and bigger time investments to release a map that is at the same level of quality (let alone higher) as the stock maps in the original game, how many people have turned to collaboration instead of doing everything solo from the ground up?

I am asking because, I started playing around with UT3 tech and although I see myself capable of designing the layout, the gameplay and doing *some* detailing and visual work, it is quite obvious to me that in order to make a map that can be comparable to the one found in stock UT3, I would have to either learn modelling in MAX/Maya as well as learn to texture said models (which would probably take at least several months of intense studying before I could *possibly* reach reasonable-looking results) or alternatively I could seek-out someone who already has this skillset and collaborate with said person to work on touching up the map.

I guess wanting to do everything by yourself is partly an ego thing, but is it really reasonable in the days of modern technology? Is it really worth it? Another question: if your resume has a lot of maps done in collaboration with someone, is this a good thing or a bad thing from an industry recruiter perspective? It could be seen as good, because it means you can work in a team environment, but it could also be seen as bad, because it may not be obvious which part of that work you were REALLY responcible for, making it harder to evaluate your own potential as an individual... 
You can do it by yourself but the key would be to use the existing assets (meshes, materials, etc) in creative ways.

Maps are definitely not solo efforts around here. I touched pretty much every map in UT3 at one point or another and I'm pretty sure that's true of every level designer here who worked on it.

Now, a hobbyist LD at home who has all the time in the world can take a few months to crank out a level so it IS doable. It's just tougher. In companies with deadlines and milestones it's not really reasonable anymore. 
Where To Start? 
Long time Quaker needing some advice how to get started with Quake 1 mapping. I've used BSP and Worldcraft ages ago, but have not kept up with the content creation scene since '98. Can anyone suggest a modern editor and/or tutorial site?

Google "Quakeadapter" 
Or "Quakeadapter" + "Worldcraft" 
Mesh Sites 
Are there any sites that have free textured meshes you can dl for use in UT3 maps, kind of like prefab sites? 
Why would free meshes be illegal?

Anyway ... Jago, I don't think so. Although that's not a bad idea for a site to start up though. Heh. I think the problem there is that it's a lot of work to create meshes with proper materials that look great so people probably aren't going to want to give them away for free.

What you might do is look for UT3 maps that have custom content in them that you like. Download those and (assuming they haven't been cooked) you might be able to use their custom meshes in your own levels. 
Was a comment on the pro-DRM crowd here. 
Pro-drm Crowd 
does one even exist? ;) 
Has free meshes of various types, but you'd have to convert them to whatever format UT3 uses and most are probably fridges or mobile phones. 
pro-DRM crowd

Don't be an idiot. CHOOSE NON-FUCKTARDERY. 
How legal or ethical would that be though? Sounds alot like stealing (as long as you don't have the authors authorisation). 
If the readme for the level allows it, go for it. Otherwise contact the author and see if they're OK with it. Done. 
Help Finding Wad(s)... 
This isn't really a mapping problem but it's close enough to not warrant a new thread.

Does anyone know what wad(s) these textures belong to? (they are found in gmsp3 map)

The window glass is from DKT.wad but I'm interested in the frame. Thanks, in advance. 
Not Sure 
but the window frame looks like it's from the 'middle evil' map. 
i think they were custom-made for that level, but obviously were based on some existing artwork (window frame from middle evil, stained glass from original quake wads, etc.) 
--from glassman's readme--
Custom, almost entirely Undule's Gnosis pack converted to quake palette by myself; 
Dumping Data From The Console 
anyone know of a command for fitz or aguirre's quake to dump data from the console to a text file? I want to dump edicts data since it a. doesn't fit into the console buffer and b. is not fun to search manually. 
Just run the game with -condebug (add it to your shortcut) and it should automatically log all console output to a file. Can't remember the file name or the location but I'm sure you'll find it! 
A save game spot is nothing more than a report of the game state at a particular time, and fortunately it is done in ascii and not binary. Just quick save a spot, change that .sav file into a .txt one, and you are golden. 
thanks. That worked a treat.

The file is called qconsole.log and appears in the directory the current progs is located in (e.g. ID1 or Quoth) 
my bad, you are looking for the back text for the
console, then what I mentioned wont be very useful. 
If than is doing what I think he's doing (long output of an edicts command), then the savegame method would also work just as well : - ) 
Pretty useful. 
the log file write was really damn slow in fitz when I called the edicts command. Took 5-10 seconds for quake to become responsive again. I guess the savegame method is faster :) 
Licence Que 
I was wondering how far the restrictions of licences are. Nowadays quake1 is far concerned free to play with, as with all the monsters in it.

But when I create a monster, which has properties that look close to the Quake3 world and is not suported licence free, can I still publish them?

This for the monster bones I created. And although there are lot of parts I had to recompile, it still asambles a monster of the Q3 world. Therefore I am not licenced to publish it.

Not that I want to light up this licence war again, I just want to be sure before I publish a map with it, and get backed off again because I had to know this fact. 
Aren't going to sue you for making retro-Bones.

Alot of their tactics are set up so that a community like this could exist.

Looking forward to the map. 
the bones won't be licenced...

before I realy get crazy from its carving cry! 
Ut3 Jumppad Problem 
I am following this tutorial here precisely, to the letter, but somehow the thing refuses to work. The jumppad does appear in the game and does emit an ambient hum sound, but it doesn't actually launch me in the air even tho it's linked to a PathNode.

What could I be doing wrong? 
It could be you are trying to launch yourself too high and the engine can't create a good path. In the editor, turn on paths (hit 'P') and select the jump pad. That will draw the jump arc in the editor. If nothing appears, try lowering the strength of the jump pad and see if it works better.

I had a bitch of a time getting the pads in DM-BioHazard to work because of this. 
Another Lazy Question... 
What has changed in modern qbsp utilities that keeps the polys on the backside(facing the void) of sky brushes from being removed and merging with the surrounding geometry? For example, all id, hip, rogue and even some levels made in '96 - '97 sky brushes behave like normal brushes. Have they become an entity now?
I'm assuming here that it's something with the bsp process.

Here are screenshots to compare:
id's start.bsp


Sidenote: Regarding the wad(s) I asked about earlier, the window frame is from chicosruin set. For anyone who was losing sleep over it... 
I think I remember reading that id's QBSP had a bug that make projectiles explode on sky brushes or something. They fixed it before releasing the tools to the community. 
That's it. Much appreciated. 
knows the parameter for qcc.exe to recompile a progs.dat back to its origin? 
Found It 
[URL=""]Here's what it looks like in the editor[/URL]

Looks just as I want it to, except for the fact the brush on the left is missing the ceiling as you may be able to see...

[URL=""]Here's what it looks like in game[/URL]

A complete mess.

What am I doing wrong? 
Not too clear from the editor shot, but I'd suspect that there's some sort of brush interference there.

Those two six-sided shapes, try cutting them into wedges in the top view.

It also looks like you've got concave brushes at the top of the top view, if so then change those to wedges as well.

I mean keep the same shape, but made out of more (but simpler) brushes. 
So instead of clipping a single brush multiple times, If I split the brush into different brushes where each new vert starts, it will render properly?

I always answer my own questions 5 minutes after posting. 
My last reply was before I saw yours ijed, I'll give it a shot. 
Hm.. I don't want to start spamming this board, but I have a leak right now, and I just can't figure out where it is.

I loaded the pointfile and it does not lead you to a hole and does not enter the playing area.

I've spent the last half hour examining the area it seems to vaguely point to, but I really can't see anything either in the editor or the game.

Any ideas?

If you wish to do so, feel free to have a look at the .map file: 
Your Map 
crashed my editor. :P 

Absolutely nothing shows up in Radiant when I open your map. I opened it in Q3 mode too, just in case you were editing it in q3 .map format. Still nothing there.

Then I tried compiling it. Compiled fine, apart from the missing texture wads on my machine ( so I modified the worldspawn info so some of the textures would show up ).

There was no leak.

It's such a small and orthogonally constructed volume that I can't see why there'd be a leak or similar error. At least, not one that you'd have any trouble finding.

I suspect something else may be causing problems. But the only thing I can see that looks at all odd is that you specify the wads to be .hlwad format. Is this a worldcraft thing? Are you using half-life compilers or what?

Looks nice btw. 
It's related to the compiler tools. Use aguirRe's instead. 
Good map, no leak.

The best I could find via google was this page:

..And I unzipped some of the files there and overwritten anything that was in the 'quaketools' folder and changed to the just downloaded build tools, but the same thing happens. No vising performed.

I'm using Worldcraft 3.3 with the Quake Adaptor thing. After build, I run the map through WinQuake. 
Yes, That's The Right One 
Are you using a batch file to compile the map? If so, make sure it links to the right Qbsp - or rename txqbsp.exe to qbsp.exe. Check the compile window or log file for information on which one was used. 
I am confused beyond words.

When I compile using BspInfo 1.27, I get nothing about leaks, except I get the following error under vis:

"File: c:\games\quake\id1\maps\map1.bsp
LoadPortals: couldn't read c:\games\quake\id1\maps\map1.prt
No vising performed."

There is a map1.pts in that folder, but no .prt file.

Also, with this BSP a lot of the edges of brushes are out of whack.

When I use TreeQBSP v2.05, I get a whole lot of errors:

*** WARNING 12: New portal was clipped away in CutNodePortals_r near (-248 576 160)
*** WARNING 12: New portal was clipped away in CutNodePortals_r near (-132 584 -32)
*** WARNING 12: New portal was clipped away in CutNodePortals_r near (-240 538 -32)
*** WARNING 12: New portal was clipped away in CutNodePortals_r near (-132 584 -192)
*** WARNING 12: New portal was clipped away in CutNodePortals_r near (-224 560 -320)
*** WARNING 12: New portal was clipped away in CutNodePortals_r near (-224 560 -448)
---- FillOutside ----
*** WARNING 10: Reached occupant at (-192 640 -128), light
Simplifying ... Leak file written to c:\games\quake\id1\maps\map1.pts
*** WARNING 10: Reached occupant at (-704 960 256), light
Processing hull 2...
*** WARNING 10: Reached occupant at (-704 960 256), light

Tools used were:

TreeQBSP v2.05---- Modified by Bengt Jardrup
Vis 2.31 ---- Modified by Bengt Jardrup
Light 1.43 ---- Modified by Bengt Jardrup
BspInfo 1.27 ---- Modified by Bengt Jardrup
Vis 2.31 ---- Modified by Bengt Jardrup
Light 1.43 ---- Modified by Bengt Jardrup

P.S. It does not help my complete confusion that c:\program files is really restricted in Vista. Quake Adapter insists that worldcraft be in that folder whereas I would have normally put it in the c:\program files (x86) where all non-microsoft software goes. It makes me wonder if the tools aren't going correctly because of some Vista restriction coming as a result of the program files folder. 

(It just tells you the "stats" about a .bsp file)

Use "TXQbsp".

THATS "tee-ex-cue-bee-ess-pee"!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Its the best one!!! It's on the site you linked to before.


Just make a folder on your c: called "quaketools". Put your tools DIRECTLY IN THAT FOLDER. Put your .map file (not your rmf file)(make sure it's the correct map file)(open your rmf file, and click on file-"export to map", and save it in "c:\quaketools")

Then click start-programs-accessories-"command prompt"

Then type "cd c:\quaketools" [enter]

Then type "txqbsp mapname"

OK - Let Me Just Re-itterate Some Points That Func_msgboard Has 
missed off because of the long text string thing

"start-programs-accessories- command prompt" 
>*** WARNING 10: Reached occupant at (-192 640 -128), light
Simplifying ... Leak file written to c:\games\quake\id1\maps\map1.pts

you got the leak

find and fix it (seal it) 
The Map Does Not Leak 
And TreeQBSP 2.05 bjp compiles it fine for me without any portal warnings. Are you sure you're trying to compile the same map (version) that you uploaded? 
You are all going to find this very funny. But right now I'm about to kill something.

The reason none of you found any leaks or errors in the map you downloaded is because there are none. Somehow I managed to upload one of the earlier versions of the map where it has only one room.

If I had uploaded the correct map file, you would have seen the start room with two large lava rooms outside that room. I really spent several hours of work on it not to mention the several hours of head scratching trying to find leaks and messing with the build tools.

It doesn't end there. When I tried out RickyT23's suggestion, I found that it didn't work with the map file I had on the hard drive. But I came up with the idea of deleting all traces of the map on my hard drive (no big deal because not much more work was done on it compared to the one I uploaded online.. or at least that was what I thought), and so then I downloaded the .map online and opened in Worldcraft, to my horror it was just the start room.

It doesn't end there either, because I know some of you reading this right now will be about to reply saying 'just restore the deleted files from the recycle bin'... Well to be doubly sure that there were no traces of the map on my hard drive, I emptied the recycle bin.

I really don't know how I managed to upload an earlier .map file rather than a current one. Perhaps because worldcraft seems to want to place the .map file in at least two different directories? Or perhaps because when you click save, it saves to the RMF only?

Oh well, back to square one I guess. has a long and detailed writing how to find and try to eliminate leaks. 
"If the line stays completely
outside the map, there is probably an entity left on the outside, typically a light."

That's was it then. 
Thats Crap :( 
But usually when shit like this happens, and you go back and rebuild it for the 2nd time it always turns out better :) 
A Habit I Picked Up... 
start using svn. :P

tortoise svn is a really easy one to use, if you have the extra disk space to spare. 
I Use 
it at work, and its great. Kind of miss it when I'm at home working on Quake. 
Ow, That Sucks 
Maybe some unerase tool for Vista can restore it. 
There Is A Very Good Chance 
you might be able to restore it with this nice freeware tool 
Couldn't undelete it.

There was an RMF file that wouldn't open in worldcraft but no .map files even though I deleted about 5 of them yesterday. 
Hi i kinda want to try my hand at mapping. a friend of mine was telling me about a lighting program called q1rad but I cant seem to find a download link for it. Does anyone know where i can find it??

q1rad is way too complicated for a starter. Use the tools from instead: 
I'll try those. still ive seen q1rad in action and it looks real nice. I would sure like to try it.

I have another question: where can I find out how to go about setting up GTKRadient for use with quake? Or should i just try a different editor? I understand you need to adjust some settings. also the .map file needs to be altered before compiling it. true? how?

Also is there a good texture resource on the net? where?

sorry for the newbie questions. I have a friend who was into mapping awhile back, however he is a bit vague on the details... and google seems to be failing me. 
What Is I About Q1Rad Which You Liked So Much? 
I personally thing that there are two light tools which are any good. The best is AguirRe's "light.exe" - a heavily modified/improved version of IdSoftware's light tool for the original Quake, which gives a wonderfull finish, and there's no real beating it.
The other is Tyrlite. Which doesn't give as good of a finish IMHO, but supports coloured lighting. Both light tools support spotlighting and sky lighting, as well as min(imum)light, and the ability to use the "wait" key to control falloff.
I recal finding Q1Rad at one point and being frustrated with it.

You can find textures here, you'll need to guess the contents and looks though: 
is actually quite easy to use as long as you setup the texture lights file correctly.

you create a <texturewadname>.rad file in the same location as q1rad.exe and you can add light and colour values to textures, so you dont actually need to place any light entities in the map at all.

If you are interested in the effect this can give, I used q1rad on my map "crdm2 - mechanical tears"

You need to be a bit careful with light placements though or the final effect can be quite flat and dull as the lights bounce off surfaces. Tbh I feel that tyrlite.exe or Arguires improved light.exe are superior in quality as you get more contrast between light and dark, but it takes a more experienced hand to get better effects. 
On The Subject Of Light Tools 
When a face is receiving light from 2 light entities with the 'no fall off' option tagged, it appears that the light stacks. What I mean is if both light entities are 200 brightness, if they both hit the same face, it's as if that face's brightness becomes 400.

Is there any way around that or do you just have to try and avoid them hitting the same face? 
What you say in the second part of your post is the solution, basically, unless you want the flat white effect.

Having said that, read up on AguirRe's documents (also on his site) since there's alot of extra control added through using the delay and wait keys on a light, including antilights, wide range falloff and spotlights without info_notnulls (or nulls?).

FYI Tyrlite is the alternative, supporting coloured light, although it's a bit trial and error.

Looking forward to your map. 
Light Tools 
I would also say that Q1Rad is actually easier for a beginner to handle. You don't even need to set up the lights.rad file if you don't want surface lighting (it is, after all, optional).

Aguire's tool has many features, offers a high level of control and has a smoother "finish" as Ricky suggested (reduces the staircasing on shadow edges and stuff like that). It has almost everything you need and should definitely be your default choice.

Having said that, Q1Rad obviously does one thing that no other tool can offer: radiosity, which is certainly not to be underestimated! It does have less features though (some things just plain don't work as well, e.g. switchable lights... and it crashes on very large maps). 
I feel very stupid now, because I had so much trouble getting q1rad to work when I once tried it. 
Its The Same Idea As The Light Tool 
for HL1 isnt it? 
coming from the q3map2 background, a light compiler without radiosity just feels plain stupid to work with.

It's annoying that q1rad makes faces that emit light fullbright though :/ 
Yeah that is a shame, and does limit its use somewhat.

Now I may just be talking out of my arse here, but wasn't there a hack or program that would read your texture lights file but light the map with a "standard" light util like tyrlite?

I forget... 
Episode Bosses 
What are some Q1 mods with cool episode bosses in the medieval style?

I was thinking Vermis, but would like an alternative... I guess one would be those ghast things from Rogue...

any tips? 
Wasn't that ArghRad for Q2?

gb - don't forget the Dragons. 
the NewBoss from DeathmatchMaker. 
you could try PhantomPholly, I put it in there.
I never saw it in a mod so I tried to mae it look convincing.

Not sure if you think it's cool. 
Madfox: Thanks for the tip, I'll look at it.

Ijed: The dragon from Rogue? It's a bit static... flies around and tosses some projectiles...

perhaps if I have six or eight flying above the moat... but I want to have the boss fight indoors.

Use of svn: This is widely used in the open source community, even in small projects. It's practically standard.

I suggested something like this back when the map sources were released, to put them in a svn repository and gradually improve them in a controlled way.

That was before it became obvious that it's better to rebuild them.

Still, svn is definitely useful and I wonder why the Quake community seems to ignore it. Many open source projects are hosted on, using svn. I can't see why you wouldn't be able to have a Quake map on there just as well as any other software.

I guess nobody tried it yet.

Also, most people don't like to look at maps as software. They are though, technically.

Theoretically, a community svn repository could be hosted on a site like Shub-Hub, too. Much like a miniature version of Such a central repo would be very vulnerable to attacks though.

Thinking out loud, as always. 
the general public can follow every single commit (via "browse svn" at sourceforge) and thus, even during a time without map releases, it's always visible that things are progressing.

People can watch the progress and read the comments. Work in progress would become more visible (and the "Quake is dying" thing would tone down because you can always say "there have been X commits last month so stfu".)

svn can be pretty transparent to the public. It's good for everybody. 
flies around and tosses some projectiles...

I succeeded to compile it out of the SOA mod and yet it has become a quite powerfull dragon.
It can flie around but also attacks you with a rather tacky advancement, becoming a monster Chtong could compare with.
Sets your heals on fire and traces you down to the slightest hideaways. 
Sounds Awesome@@ 
gimme gimme gimme 
The Dragons From Soe(by Tronyn) 
Dragon Fro Rogue 
Look in Necros ne_sp06 - Once upon Atrocity
annd my own hrimsp1 - Frying obstacles. 
2 UT3 Questions 
How does one:

1) Select all static meshes within the "red building box"?
2) Copy/Paste all selected meshes from one map into another? 
can you not filter out everything else and then do a select all? Just a thought as I dont have the editor in front of me right now... 
Just Something To Keep In Mind: 
at the time i made it, i hadn't understood how quake collision hulls worked, so i just made the dragon move like a normal monster, which means he clips into geometry a *lot*.

it would be worth coding some kind of method of navigating via nodes or make extra large bbox collision code.

or build some kind of clipped off area that the dragon can fly in, but that's more limiting because the player will collide into it as well.

it just occured to me that it would be cool to be able to make clip brushes that only affect certain hulls..... that's a compiler thing though. :S 
Or func_monsterclip for problem cases. 
8-) Yeah 
I had a lot of trouble getting that stupid dragon to stay out of the geometry myself!!!

I'm using the dragon once again in a upcomming map. The map is done I just need to finish of the QC code. 
now we're on the subject I'm thinking to open a new toppic about monsters, as I almost seem to like it even more than mapping.
And I see more new maps then new monsters.

I tried to get a hold on the dragon, with some help of preach. I wanted it to function normal as any other entity monster. So I can give it path_corners and all.

I got stuck with the spellmaster.qc so I decide to make my own. This dragon has not only a firenball but also a thunderbolt.
I would like to give it a flame breach but sofar I haven't come.
The frames are rather strange grouped, other than in DOE, but I added some death frames.
It might be hard to kill as the health parameter is 2000, this for the fact it would be an end boss.

I would like to hear your reactions, as I was interested in it the first moment I saw it in DOE. 
Hrimfaxi, thanks for the tips!

I played with this mod for a while:

and I think it is unbelievable. Those dragons circling in the sky and your dragon familiar fighting other dragons in the air, it looks like something from Star Wars... incredible feeling. Several kinds of dragons.

It uses the QTest dragon though, and it's more a regular monster than a boss.

Necros, played that map, have to say very nice! But I feel the dragon is a bit radical for my needs. (HP and attack) You really tried to make it into a boss monster, which was successful (be quick when switching to God mode/picking up the pent). Personally I'd want dragons a bit weaker and kinda circling over the battlefield, and then an indoor boss.

Madfox, newboss: you mean the red snake like thing that comes out of lava? It would perhaps need a better skin... the shape looks ok.

Now on to playing the other maps. 
Madfox' Dragon: 
It's cool, although it moves totally differently from the above mentioned dragons. It kinda floats upright, and it's more worm shaped (rogue) versus more crocodile shaped (qtest).

The upright position makes it look special. It is rather helpless once you get behind it, I think it would need to turn faster and have a bite or tail swipe attack.

Since it has paws, unlike the qtest dragon, I could also imagine it walking on the ground, like the dragon in Tomb Raider 2, only taking off when hurt (or not at all.) In that case, it should be slow and have a ton of HP. Although even with a small dragon like this, a rocket to the face should make some impression... its HP are rather high. The above mentioned dragon takes 5 rockets to kill, in comparison. So it's tempting to use in packs (and it looks cool when they infight.)

The rogue skin is better than the qtest one, although with the detailed skin and unusual movement, it looks distinctly Quoth.

The qtest one looks like just another monster, which isn't bad if you think about it, if you know what I mean. Once you killed it 200 times, the skin isn't so important anymore. :-) 
fuck how do i put the Zombie to start in the floor laydown? 
Search in id for ZOMBIES! by Ace_Dave 
Just Guessing Here But... 
I think you have to set a targetname for the zombie, then target it with a trigger.

I was looking at the map source for E1M3 and there are zombies which target other zombies, zombies targetted by triggers and some with spawnflags 256. That seems to be it! 256 is a "not in whatever skill" isn't it? 
nop... dont work :( 
Doesn't Work In Id1 
Unless you want them for decoration only. Then you can turn a crucified zombies with "angles" "# # #" or use the modelindex hack for its death frame. 
it can be decoracion... but what is value? i try many...

angles" "# # #"???? 
Sleeping Zombies 
spawnfalgs 1(2?)
doesn't work in the regular id progs
'work' in the soa , doe & zer(i guess) 
never had sleeping zombies. they would just push a zombie up from the ground with a func_door. 
No .pts File 
Alright, so since TxQbsp keeps giving me a bogus error of "subdivideface: didn't split the polygon" when I know for a fact I don't have any textures below 0.20 scale, I tried to compile this map I have with TyrQbsp. Surprising enough, it worked with no problems.

Well, almost no problems. The log clearly says the map is leaking "Reached occupant" but when I load it up in an engine and type in "pointfile" it says a .pts file doesn't exist.

Where is tyrqbsp placing the .pts file? 
Trinca: try "-90 0 0" for face down and "90 0 0" for lying on its back. The middle number rotates the zombie horizontally iirc. Play around with these values and you'll see.

Orl: Check the faces at the given coordinates. If the texture is only 32*32 or below, a scale of 0.2 might be too small already.
Tyrqbsp doesn't place the pts file anywhere different. Can't remember what the trick was to get it to create pts/prt in such a situation. 
Well, heres the situation. The texture that is scaled small is 272 by 224. Now when I applied this texture to certain objects at a scale of 0.20, Txqbsp was fine. But after I made more of the same objects, with the texture scaled to 0.40, txqbsp spits out that error.

This doesn't make sense to me. That and why tyrqbsp isn't giving me a leak output. 
The texture that is scaled small is 272 by 224.

I recon that this could be the problem. If you place the texture on a 512x512 canvas that might solve the problem..... 
Sideways Hack 
As an aside, rotating things by pitch yaw roll as negke describes can be applied to teleport_destinations if you want a player to be drunk after a teleport.

Probably better in the old progs thread. 
thks negke but i cant put the way i want... :|

guess is not possible in id1 
That's an odd scale for a texture, but since it's a multple of 8, it should work.
Maybe try to seal off parts of the map with large boxes and see if the supposed leak become visible then. Or create an artificial leak?

Trinca: �_� 
Water Splashes In UT3 
Does anyone have any idea how to make the water make visual splashes when you jump into it in UT3? I have a working UTWaterZone and it makes a proper splashy sound when I enter it, I also have a sheet-brush with the water texture, but quite obviously since they are separate entities, entering the UTWaterZone does nothing to the sheet-brush surface.

How do I make a visual splash effect? 
A Simple Tip 
A new Dark Places build is out today. When the new builds come out, I like to check them out with the Quake 3 arena maps to see if any improvements have been made in the shader rendering, as each build does tend to improve them.

If you want to see how DP works with these maps, simply download the Dark Places executable into your Quake 3 Arena directory, create a short cut, write in the short cut parameters '-game baseq3. You will also need to transfer Id1 from your Quake directory to the Q3Arena directory.
When you load the DP executable be sure to go into multiplayer mode so, info_player_deathmatch is the default loading entity. At this point you can check out any of the maps in your BaseQ3 directory with shaders intact.

is there an updated version of this? when i feed a map into it, it doesn't generate the prt file. :( 
aguirRe's Bspinfo tool 
what's that? 
i just noticed it's bundled with the other 3 tools. :P 
Triple Post 
...and it works. thanks, neg. :) 
Thanks for the tip (seriously, that's pretty clever).

Personally though, I find that quake3.exe does a remarkably good job of running the Q3 bsp files... ;) 
Thanks Mr Fribbles 
I agree, it is still my favorite engine to fart around with the game code, even though my coding skills are meager. 
One Thing I've Noticed 
while doing this, the sdl version I tend to use anyway works fine whereas the DirectX (DP just uses as a wrapper)
version crashes. 
The default UTWaterVolume should automatically create a splash effect when it's touched by bullets and pawns.

Very possible your water sheet is colliding with things, I recommend using a static mesh as your plane (should be reletively easy to find one in a package somewhere. Or to create your own), and set it to have no collision. 
I Has A QuakeC Question 
Let's say I set all players, and all monsters, to have the same .owner, presumably an info_notnull or something innocuous - will this interfere with collision? No players own any monsters or vice versa, it's all through the notnull, so everyone should be fine to bump uglies, right?

Um, don't ask what it's for. �_� 
Yeah, there's no inheritance of "noclipness" between entities with the same owner. I think this might break the last post in the New Tricks thread, and I meant to post something about that. The only other thing you'd have to worry about is that any of them had an owner before, but in regular qc neither player nor monster does. 
Updating Entities Without Map File 
i extracted the entities from a bsp with
bspinfo -copyents
but i can't seem to find a way to re-inject them with either qbsp or bspinfo (both aguire's tools)

does anyone know if it's possible? 
Try Adquedit 
Adquedit is capable of importing an ent file and baking it into a bsp file. I expect there is a way to do it with the normal tools to, but I can't remember it. 
only asking because i don't have it currently and i'd have to search for it;

will adquedit mess up the switchable lights? older qbsp compilers used to do that when you'd do -onlyents and afaik, adquedit hasn't been updated in ages and i was wondering if it will do the same thing. 
.ent Files 
The usual way is $BSP -onlyents

I kow it works with hmap2, I haven't tried with any others. You will possibly want to do the light stage again as well, as it sounds like you are adjusting them.

Speaking of light: what's the recommended program to use these days? 
lighting is finished. old qbsp programs used to mess up switchable lights when you did a -onlyents pass.

i checked aguire's new qbsp and as i should have known, he fixed that problem. :) unfortunately, i don't think i will be able to use the .map file with the .bsp anyway, so i'll look into adquedit.

thanks anyway, guys. 
aguirRe's light tool has -onlyents too. This way you can fix switchable lights after a qbsp -onlyents compile. 
There's a link for Adquedit at QuakeTerminus...

Console Warning: map has to many clipnodes - (31456 should be normal, 32456 exceeded the limit)

Does this mean I used to many polygons? 
Thanks Madfox 
also: clipnodes is basically how much solid collision geometry you have.

i'm pretty sure you can fix this by covering any areas where the player can't walk with giant clip brushes. this will reduce the collision data, iirc. 
even just filling in troughs and small alcove with a flat clip helps. like if you have a recessed trim 32 units wide in the floor where the player can't go in to, just fill it up with clip brushes to bring it flush with the surrounding floor. 
Still Waiting For An Answer To My Question 
I had that error recently on my idbase map, it was because the map was not sealed. 
the map has an enormous part of brushes with the shape as if they were treated with convertmap.
First I had the lightmap error too, but as long as I keep fitting the polygons to eachother this error dissapeared.

It has become 8.5Mb, and I'm trying to keep it playable in the normal engines. 
Exceeding the clipnodes limit only slightly doesn't cause any problems with regular engines. 
it does, but you may not notice it.

from what i can tell, when you exceed the clipnode limit, parts of solid geometry stop being solid.

i guess it's whatever is processed last, so everything the engine reads after it hits the limit isn't solid or something like that (i doubt it's this straight forward. it's a 'node' after all, so it's probably not just a straight 1 to 1 with faces and clipnodes).

this can be fine (areas that you never go to, so doesn't matter if they are solid or not) and it can suck the big one (giant sections of floor are nonsolid and you fall into the void). :P

i think you are thinking of marksurfaces. from what i saw, marksurfaces can sometimes be over the limit and sometimes it will be fine. the chance of it crashing increases the higher you go over the limit though. 
Noobie To Quake Mapping 
Hi everybody, after countless efforts of trying to create high quality maps (mostly performance wise) for Half Life 2 and other Source Mods, i have decided that being unexperienced with mapping i should probably work with something a little more basic (too many triggers / entities / functions to deal with)

Quake 1 has always been my favourite FPS because of the architecture and the way the maps seem, and thats why i have chosen it. And since i am used to Hammer editor i decided to go with World Craft. Unfourtunately i found 1.6a to be a pain in the arse, and tried version 3 (courtesy of a link on these forums) with the Quake tools supplied. However i seem to have problems in terms of publishing or even testing the maps (it will not convert to BSP and has tonnes of errors). This is the same with 1.6 version aswell.

So i downloaded QuARK, however that program seems really complicated to me and i just cant seem to get to grips with it (i've been trying for a few days now). What i do right now is, map in version 3 of WC, then save as .map and open it in version 1.6 then i export it to .map and am able to open it in Quark for testing and saving. Though this method sucks because all of the textures get misaligned. And i cannot get to grips with using either quark or 1.6.

So what i was wandering is, are there any known issues with version 3 hammer with Vista? Because to be totally honest thats the only thing i can think of considering i've installed everything to the correct directories and havn't changed any configs.

Oh and the messages i am getting are just Path files that can't be found, yet i have checked and they all appear to be in check, plus it doesn't make it clear exactly as to what it is looking for.

I'd be greatful for any help with setting this up thanks 
When You Have Made Your Map 
First make a folder on your c: called qtools or something.


in Worldcraft 3.3, click:

File=>Export to .Map=>

Save as "c:\qtools\MAPNAME.MAP"


Go into c:\programfiles\worldcraft\quaketools\

and copy txqbsp.exe, light.exe, vis.exe and nomapversion.exe (not essential) into c:\qtools


Go into start=>programs=>accessories=>command prompt

then type "cd c:\qtools\" (no quotes)

then type "nomapversion MAPNAME" (not essential)

then type "txqbsp MAPNAME"

this should run and create the .bsp file in c:\qtools as well as pts files and prt files whether the map leaks or not.

then you run vis "vis MAPNAME"

then light in the same way

put all of the resulting files (or just the bsp file it it doesnt leak) in c:\quake\id1\maps\

then run from the Quake console "map MAPNAME"

In WC3.3 i save all files in c:\quake\id1\maps also all of the tools are in this directory and if you got to Worldcraft options menu I have all the tools se up to run from there.

The long winded process I have just told you to do is what Worldcraft does automatically when you have it set up properly. Just make sure all files and tools are in c:\quake\id1\maps and you cant go wrong. 
where you see ... in the post above:

1st time "quaktools"

2nd time "command prompt" 
Paths, Hammer, And You 
My general recommendation for people starting out mapping would be to use the compile tools in the command line until you can get them to work. Although the batch stuff in hammer is nice once it works, it adds an extra layer of things that can be going wrong. So export the .map from hammer and type "cmd" in the run dialogue, then see if you can make the map compile like that.

I do have one Hammer specific suggestion though if you're having trouble with paths. Is Hammer installed to your c:\ drive, and are all the .wad/.map files on that same drive? Hammer has some issues with being on a second hard disk if I remember right. This may be fixed with the 3.5 version, but of course that's no good for quake. So if it's practical and not already the case, try putting everything on that drive. 
Ricky beat me to the first suggestion, and described it in much more detail. So just imagine I backed up his suggestions 100% in the first place. 
its worth setting it up so you can use Worldcraft's excellent texturing mode. The "nomapversion" program removes the line "mapversion" "220" from the map file.

This 220 format is incompatible with Quark because it's not standard map file data. So a lot of qbsp utils wont work with it either. But AguirRe's TxQbsp (which came with Quakeadapter) does. It's the only tool I would use.

As for setting up Worldcraft there are two key point here:

1 - worldcraft must be installed in c:\program files\worldcraft\ for it to work with the Quakeadapter.

2 - I would save all files and run all of the tools from c:\quake\id1\maps\ so that the programs dont get confused and loose the files.

This is a place with LOADS of info. On most of the technical stuff a mapper would ever need to know. Its also where AguirRe posts all of his tools. BspInfo is also a very usefull tool. And his engine - whoah! This engine is a mappers tool. It runs broken maps (the only engine which will run a lot of broken maps) and wit will tell you where the problems are.

Andy3012 - if you read up the thread you will see that I am repeating the same info to deifferent people over and over again, and those people before me, and the people before them and the people before them, and people explaining it to me and over and over and over and over and over.......

you can create the batch file eg. compile.bat
with the command line(s) something like this:

qbsp [options] mapname
light [options] mapname
vis [options] mapname
copy mapname path(eg. c:\games\quake\id1\maps

after all just run your batch file

but make sure that your compile utils are placed in the same dir as your compile batch file 
I would recommend running vis before light, sometimes the light data can confuse Vis. 
Re 7756 
This is especially important if you're using Q1Rad, since that tool will use the portal information in its calculations. 
thanks guys for the help guys, i'm gonna make a start on mapping now :) 
What exactly is the rule on releasing wads containing textures from other games? I've noticed that games like Hexen2, Heretic2, Rune, Unreal, Daikatana all have wads made and released. Is this not illegal? Is it legal because the wads only contain textures from the demos(I don't know this, I'm merely assuming)?

The reason I'm asking is because I've made complete wads of the above mentioned games(excluding Unreal & Daikatana) as well as RTCW, ET and Wheel of Time, in both full and half resolution, and they are going to waste just sitting on my hard-drive. 
I think those wads are probably illegal, but I don't think anybody's ever been prosecuted over something like that so whether or not you release them depends upon your personal scruples more than anything else. 
Yeh, they're completely illegal, but it's Q1, hardly competition for these games...

Only time I've known it to actual cause an issue was the Q3 textures being used in a custom map for the UT of the time. The author got a cease and desist from iD iirc 
That was kinda my look on the situation. But what does everyone think about releasing wads that are complete (minus few textures that just wouldn't work in Quake)? Do you think that may be going overboard? 
That Depends 
Some people will tell you that you are an unethical immoral bastard and should be hung by your manly parts. (See but do not let the "loud dogs" bite you).
Others will highly appreciate your work and the possibility of using/see fresh great quality textures in upcoming maps.

It's always been done, it's always been great. Please release them. :) 
I think sikkpin's comment was more based on the practise of releasing every texture from a game as a wad as opposed to generally releasing texture in packs.

I think releasing as wide variety of textures as possible encourages creativity (ie, all the textures from a given game). While it would possibly make more sense to organise the textures from a new game into thematic packs, it is a lot of work to sort an entire games textures and often the folder names create too fractured a set of wads. The only reason the dkt textures are organised by episode is that they were already sorted like that in the folder structure and happen to be fairly exclusive themes.

As for your point about the moral dimension, I don't believe it is any 'better' to release a few textures from a game rather than an entire set. Q1 is an old game now, it'd be a different matter if these games' textures were released for HL2 or UT3. While it is technically illegal so is taping a song off the radio, you don't see the RIAA going after home taping. Therefore it seems best to release these games' textures in their entirety to encourage creativity. 
I apparently have difficulty with the possessive singular 
You are a lacey bitch.

Good way of putting it with home taping paralell. 
Dont Give Those Bastards 
too much credit. They fought the proliferation of
audio digital technology tooth and nail. 
While it is technically illegal so is taping a song off the radio, you don't see the RIAA going after home taping.

It doesn't really work to start with the claim that all infringement is equal, and then use the fact that the RIAA only goes after some infringement and not others as support for your claim.

Regarding the actual point, some infringement is worse than others, and I think that the volume of sampled content is a major factor. In that vein, taking one or two textures from a game is less infringing than a wholesale rip of all textures.

Hell, there are even different degrees of murder, and some are worse than others, why wouldn't there be a spectrum of copyright infringement too? 
There a way to have monsters see through from an ordinarily blocked leaf into another?

So a fish or scrag can see the player through trnsparent water brushes, for example. 
I Am 
Using a func_water entity, but don't want to break the edict limit if I can help it.

Wondering if anyone has a more efficient solution. 
I want to check that I understand the problem correctly. I think what you would like to have is a regular water leaf in your map, and for monsters to be able to trace line of sight through the water leaf and one or more open leaves about it. To achieve this, you need to modify the function visible() in ai.qc. The lines

if(trace_inwater && trace_inopen)
return FALSE;

tell the code to deny line of sight to traces which go through both. Commenting out this code will make all water boundaries visible. If you want some more complicated rules for who can see through what, it might be worth creating seperate visibility functions for different rules. 
That's It 
Thanks Preach.

I was thinking to have this dependant on the water alpha somehow, or on distance, but that seems like overcomplication, when the map should be designed with this in mind. 
Haha I'm A Noob :P 
how do i compile with qbsp and tell it to load multiple wad files?

i have:
"wad" "wad1.wad; wad2.wad; wad3.wad"

but all it does it use the first wad. commas (,) don't load any wads at all, so what am i missing? 
Doh Lol 
i found out it needs to be:
no spaces and a closing ; :P 
Water Transparency 
so making a water brush into a func_illusionary looses the transparency...

is there any way to trick the engine into making a water brush non-solid but still have transparency? :P 
.alpha in the progs for illusionaries is the only thing that occurs, but then you'd still lose the 'animation' of the water texture and it would only work in engines supporting .alpha. 
FitzQuake Gives Me The Error 
too many efrags

Is it because I have too many func_illusionarys? 
OK - Quoted From AguirRe's Tooltips: 
"Too many efrags!"
This console warning is normally caused by having entities (typically torches) too close to or
even partly inside solid walls. Another possibility is too many (or too far apart) brushes that
are included in one brush entity. EFrags means Entity Fragments. Enhanced Win/GLQuake has higher

So there I have it! My func_illusionary is made up of too many parts which are too spread out.... 
Help Me With Bsp 
Alright, first of all , hi ppl.

now onto my problem, I downloaded and installed bsp so I can make quake maps. but after doing the tutorial (in fact any tutorial), they all tell me to go export then click on Qbsp.bat.

Now the problem is, I don't have a Qbsp.bat, When I found it in bats folder, there was a thing that said Qbsp, but it was an application and not a bat.

How can I use this if its not a batch file?

My details are:

OS: Windows xp home (sp3)
bsp dir: C;-> bsp
quake dir: C;-> quake

theyre all in their default locations, but I can't see how to test my maps if I cant compile. 
You need compile tool I guess.

Check there for TxQBSP, VIS, and LIGHT tools: 
- are you using the latest version 0.96d ?

- under 'export' there should be several options:
leaktest.bat and so on.

Just use full.bat to compile your map and you should be ok. (a bat file is just a txt file with commands in it, you can edit it with notepad, rightclick on it to see what I mean)

- the tools JPL linked above are great, but not necessary at first, BSP comes with everything needed to make a map. But you should check them out once you've gained more experience 
I tried the other bats, but how do I test my map? I tried launching quake and typing +map tutorial map (also tried tutorial_map).

It's still weird though how it wasn't a bat when I installed it. 
Once you have compiled the map, there should be a bsp file along with the map file in bsp\Quake\Maps.
Copy the bsp file and put it in Quake\ID1\maps, start the game and type: map tutorial

(without a + or underscore _ ) 
note that there are two meanings of the word "map":

- the .map file used to compile a .bsp file ( is just a text file, open it with notepad)

- the actual compiled .bsp (tutorial.bsp) is also called a map or level.

Hope that makes it clear enough. 
Tried, But I've Got Pak Files 
I tried to copy the map into the maps folder, but it wasn't there, partly becasue i have pak files instead of a map folder (i know whats in them by the way), what do I do now?

I also read the fast.bat, and it tld me that it couldnt copy the file into the directore, im gonna try and modify some configs.

any more help is much appreciated. 
I tried to copy the map into the maps folder, but it wasn't there

just create a new folder called maps in ID1, and put your tutorial.bsp into it, run the game and type: map tutorial

Btw does the compiling work for you/do you end up with a .bsp file after exporting ?

I also read the fast.bat, and it tld me that it couldnt copy the file into the directore

I would say it's better to get a basic understanding about the whole process of compiling and how to run maps, before changing anything in the bat files (or atleast backup them first, or you'll have to reinstall the editor if something goes wrong).

(yes it's possible to modify the paths in the bat files so when you compile, it copies the bsp into ID1\maps and lets Quake launch it, but see above) 
Compiling Question 
let's assume i have a bsp that's been vised.
let's assume i go and change the .map file and change the texture on one face (but don't modify any brushwork).

is it possible to take the updated texture data and put it into the old .bsp file without ruining vis data?

let's assume i finished vising a map that took a week and a half and found an unbelievably stupid texturing error and want to shoot myself. 
I don't think qbsp can just swap out the texture... but theoretically, some tool could be created that did it.

I know quark can open and edit bsp files, don't know if it can edit a texture on a specific face, though. 
Metlslime / Necros 
It is possible to export textures from a bsp with QuArK: I did it for Babel some years ago.
I alos tested to modify texture in a bsp, then save it, but it does not work..
AFAIK, aguirRe made some texture alignement correction in bsp for Travail mission pack, maybe it would be a good idea to ask him how he performed that, and also if it is possible using the same stuff to replace texture by another one ;) 
I tried to copy the map into the maps folder, but it wasn't there

just create a new folder called maps in ID1

I tried that, theres a .file in there called maps and it blocks me from putting a maps folder in there.

this is all too hard, so i'm gonna give up and try a different editor instead. any in mind that are good? 
Editor Isn't The Problem 
It won't matter what editor you use, all compiled BSP files need to be in id1/maps in order for Quake to load them, no matter what editor you use.

Its very strange that windows will not let you create a new folder called 'maps' in your id1 folder, I have never heard of such an issue before. No way should a single file stop you from creating a new folder.

Not really sure what to suggest it sounds a bit odd, maybe post a screenshot of your id1 folder open in windows so we can see whats actually in there :) 
You can't create a folder called 'maps' if there is already one there called 'maps'.

"theres a .file in there called maps": is this file actually a folder/directory? 
No Idea, 
yes, thats what i'm talking about.

don't know what to do with this one, maybe if I did two options

*moved that .fileto the desktop and then made the folder, then trying ti tat way

*or fiddling with the configs where I can use both the maps.file and a folder by renaming it.

anyone every done this before? 
Put the mapname.bsp file in the maps directory, start quake and type "map mapname" in the console, replacing mapname with whatever the map is called.

If you don't already have a maps directory then you need to make one, if there already is one then put the bsp in there. 
how come my cylinder wont show up when i compile and run?
here is a screenshot: [url][/url]
and here is my .map file: [url][/url]
I'm a n00b workin on my first single player map in gtkradiant 1.5.0
someone suggested i switch to worldcraft but i dont feel like learning another program :( 
You could try just compiling the bsp and vis stages (skipping light); that will let you see things clearly. It could be a lighting issue.

Also, look at the output of the map compile with the cylinder there, compared to it not being there. 
turns out quake 1 doesnt support patches, so u have to use prisms! :) thx anyhow 
That Would Be It 
Of course, you could just carve the cylinder out of a cuboid, if you're feeling really hardcore... 
Long Plats And Sounds 
Say I have a plat that I want to move a long way (say 1000 units vertically). What I'm hearing is that the sound plays from where the plat started and doesn't follow - so as you get further and further away, the sound dies out until it's silent.

Is there a trick to getting the sound to follow a plat that travels a long distance? 
and not just that, the sound will emanate from the plat's origin, which is determined by the center of the first brush in it's definition in the .map file.

well, ok, i suppose you could play the sound on the player entity's item, body or weapon channels, as those are special and always play through both speakers, but that would be dumb. :P

one thing i've noticed is that id tend to be pretty lazy about their sound in all of their games. 
Ahh crap, so no work around? Oh well... 
in the code, it looks like the sound comes from origin + (mins + maxs)/2, which means, the center of the bounding box at its default location, shifted to compensate for any movement (since origin for bmodels is normally 0,0,0.)

But, the mins/maxs for bmodels might be calculated badly by qbsp, so you could still be right, i'd have to look into that. 
If the platform is against a wall, you could have another hidden platform moving in exectly the opposite direction and maybe as you move out of the range of one sound, you'll move into the range of the other.

I have used that idea in a map where I wanted to draw the player's attention to a button operated bridge but the player was too far away to hear it - I just put another one of the same spec. in the floor beneath the player. It worked fine. 
Neat idea ... I'll try that, thanks! 
Remember that you can put eprint(self); in the spawn function of various things that use bmodels, and then compare them to what you think they should be.

Question for the coders, though: can you make the sound follow it around? 
To Clarify 
can you make the sound follow it around with code changes? 
Progs Changes Or Exe Changes? 
no & yes respectively 
Sounds Promising 
Feel free to expand on both... 
without modifying the exe, sounds cannot follow an entity.

they are just spawned in at whatever entity it is tied to's origin.

this is the kind of thing i mean about id being lazy about sound in their engines.

another example would be quake 3 having doppler shift, but doom3 NOT having it. they actually took a step back... 
Progs Way 
You can hack it in the progs too, for a reasonable return. The easiest way to do it is spawn a new entity with the platform, the "func_plat_sounddummy", so that the platform's enemy is the sounddummy and the sounddummy's owner is the platform. Then in plat_go_up and plat_go_down you replace the sound call with:

local entity oself;
oself = self;
self = self.enemy;

self.air_finished = time;
self.cnt = 0;

self = oself;

Above them define:

void() sounddummy_play =
setorigin(self, (self.owner.absmin + self.owner.absmax) * 0.5);
sound (self, 1, self.noise, 1, ATTN_NORM);
self.cnt = self.cnt + 1;
self.nextthink = self.air_finished + 1.4 * self.cnt;
self.think = sounddummy_play;

Notice the unusual way to calculate the nextthink time, this makes the sounds play at as close to regular intervals as the discrete frames allow.

Similarly in plat_hit_top and bottom replace the sound call with

local entity oself;
oself = self;
self = self.enemy;
self = oself;

and define

void() sounddummy_stop =
setorigin(self, (self.owner.absmin + self.owner.absmax) * 0.5);
sound (self, 1, self.noise1, 1, ATTN_NORM);

self.nextthink = -1;
self.think = SUB_Null;

Then the sound gets restarted every 1.4 seconds. Of course, this isn't quite the same as the looping sound quake does usually, since it always plays from the beginning, and doesn't wait until the end to restart. But on a lift you can probably create a sound which sounds ok looped like this.

Further improvements would be to dynamically create the sounddummy and remove it once the lift has come to a halt(AND the halting sound has been given time to finish). Also making the looping time customisable/better fitted to your selected sound.

Of course, the best improvement would be to save the extra entity entirely. Unfortunately to do that you need to make the lift perform a number of "think" operations before it reaches it's destination, while remembering that it needs a "think" function for it's arrival at the final destination(see SUB_CalcMoveDone for the details of that). Add to that the fact that you have to work with self.ltime rather than time, and think about what happens to the sound if you're blocked(probably best to make the original sound a looping sample, but not to rethink - if you're blocked then the sound can afford to come from the same place until the lift is unblocked). So it's a much tougher proposition to get right. 
The duplicate entity moving in the opposite direction worked. Hooray! 
if anyone's mapped for half-life and knows what im talking about is it possible to get game_text into my quake maps? 
The map "Visions of Hatred" of Darin McNeal has a CCK.
A kind of Cut-Scene Construktion Kit.

Included is the 'Cut-scene Construction Kit' I developed for this level.
It allows the inclusion of scripted cut-scenes into quake levels." 
I am lighting a static model with a 'light' entity using 'mangle'. It lights the background but not the model.

If I then use 'light' without 'mangle' (default light value in both cases) the model it lit perfectly, albeit that so is a lot of the surrounding area, which I do not want (atmosphere, don't you know!).

So, I suppose my question is: could it be something to do with the (mangled) light's cone not covering the whole of the model's bounding box? Or is some other "undocumented feature" at work here? 
The surface below the model has to be lit properly. Maybe you can achive roughly the same effect as mangled lights by using multiple weaker lights with higher wait values. 
Thanks Negke 
A mixture of two lights, one 'mangled' and the other, a plain light, lighting the floor below, looks just about right.

Only another 1000 or so lights to go... 
Custents Mod - Func_rotating_door 
hey, iv made a door using the "func_rotating_door" solid class entitie and it just makes the brush disappear its no long there ingame... what am i doing wrong? could someone help me and tell me how im supposed to use it? thanks 
only some compilers can properly compile a map with a rotating brush. try aguire's compile tools. 
Frikac's cant? 
nvm thats qc sorry -.- 
No, his aquires compile tools did not help... maybe im making the door wrong?

all i did was make a door shaped brush and tied it to func_rotating_door 
Hip Rotating 
func_rotate_door = info_rotate + rotate_object 
so when i make the func_rotating_door i should use it like a origin brush? 
Sumthin' Like This 
CZG's Instructions For Making A HIPNOTIC Rotating Entity 
WoW all of that just for a rotating door? 
in the quake 1 engine, rotating brushes are basically just a colossal hack. 
Sound Channel Selection 
How can I set a channel for a sound I want to play in a map that is Quoth2-based. I read Kell's tutorial, but nothing is explained about channel setting... 
I Checked 
and you're right. the omission in question is:
A sound channel on which to play the sound can be set, with values from 0 -> 7. Default is 0.

the key you use for that is 'impulse'. 
it should be noted that quake uses channel 0 to mean 'any available channel'. it won't override a sound playing on a channel, so if you want a sound to be stoppable, you need to specify a channel > 0. 
Armor & Health 
I wondered what the skill of player in Quake1 relates in case of health and armor.

When my health state lowers to 15 points I am close to death, but what role does armor play in this?
Does my health count lower slowly when my armor is heigh?
When my armor rate lowers to 15 it turns red, does my health count drop faster?

I can't find any reliable match in these two. 
Thanks a lot for the explanations ;) 
Armour takes a certain % of any hit and deducts those points from the armour first. The % depends on the colour of the armour, green takes 30% of a hit, yellow takes 60% and red takes 80% off the hit. If the amount of damage taken exceeds the amount of armour you have left, the excess points are deducted from health.

This does not change if your armour or health are low, the colour is only there as an indication that you're about to run out of one or the other. 
I suggest that you test it on a test map. as example a box with a soldier + an armor. Let the soldier almost kill you (i.e health lower than 15) and then pick the armor, and check whether health is dropping down in the same way...
Otherwize you would have to explore original progs.dat decompiled qc stuff...
Maybe you could check there whether you can find something of interest: 
I once read that in Doom it's not a bad idea to completely deplete a blue armor first and only then pick up, say, a green one, because its damage deflection surpasses the one of the lower armor regardless of the total amount of armor points the player gets. Does the Quake armors work the same way then? 
That's a clear explanation. I 'm so involved in playing I never had time to watch what exactly happens reffering armor and health.
Mostly I only keep my health score in view, while combat takes that much concentration.

JPL- I already did, but it took quiet some time before the soldier had my armor count down. It already killed all my health before that time, so I was figuring what would be the relation between them two. 
Green Armor 
only protects for 30%, so you're still losing two points of health for every point of armor. (Meaning, with a green armor you can die with 50% armor.) Yellow is 1:1, but you get 150 so you can still die with 50 armor, and then red is 2:1. Only with red armor do you get complete parity. 
Okay, Roughly. 
Coming Soon To A Living Room Near You 
Quake Rules AD&D 
Although it offers the least protection, green does take the most damage before it is completely gone. 250 points of damage in one go would wipe out red and yellow armour exactly(and do 50/100 hp of health damage too). 250 hp of damage in a single blow would leave a full green armour with 25 points left(although the player would need a megahealth to survive the remaining 175hp of damage).

If you imagine the 250 damage being dealt out in smaller portions over time, with healing from medpacks in between, then the numbers only change a small amount due to rounding. So the green armour will last you the longest, assuming you have the healing to keep you alive.

As a final aside, it's worth noting that when rounding occurs, the damage to armour is always rounded up, although the amount taken is also rounded up once the points from the armour are deducted. This can be important when you make new monsters with low damage attacks, as 4hp will do no health damage against red armour, similarly 2hp for yellow and 1hp for green.

Sometimes this is undesirable and should be avoided. Knight melee attacks are random between 0 and 9 damage per frame, with an expectation of 4.5 and heavy weighting towards the center. This means they tend to do more armour damage than you might expect from just looking at the total output of damage. The randomisation also means that they don't always do just armour damage to a red armoured player.

On the other hand, in Quoth the pyro does even lower damage per hit, but may hit the player two or three times per frame. This, along with the health pack it drops, helps solidify it's role as an armour stripping monster: after a fight the player will often be as healed or moreso than when they began, but hopefully with a drop in armour protection. 
Converting Quake 1/Counter-Strike Geometry To Quake 3 Arena. 
I have a bit of an issue here. There's a map that I have built a nice map in CS:CZ not too long ago, using Valve Hammer v3.5, and now I'm looking to port that geometry to GTK Radiant to be built for Q3A. However, I have an issue where the geometry doesn't seem to take, for some strange reason. Does someone know how to get the map geometry to be recognized from Hammer in GTK Radiant for uses for games other than it was originally built for? Any assistance is greatly appreciated. Thanks. 
The .map files follow different formats in later versions of Hammer, even though they have the same extension. You might be able to convert from one map format to another using QuArK, if I remember rightly. 
Is there a manner to get rid of the funny counter turning in the path_rotation?

I've managed to get a rather long track in a map with these infopoints, but for some reason the object always turns in counterangle when passing the 360-grid.

I could hide this path rotation, but I wondered for another solution.
Maybe it isn't possible, otherwise it wouldn't be there in the custent with that hide-away turn. 
The angle turning code probably doesn't deal with the case near 360 degrees elegantly, it can be tricky. It's possible that you'll get better results by setting the target angle to be 360 greater than it is. For example, to turn from 330 to 15 degrees the short way, rotating only 45 degrees in-between, you might want to specify the target angle as 375 rather than 15. I've never tested to see if that helps, but I can imagine some ways of writing the code where it would.

You might also try adding additional in-between path_corner entities with angles and positions between the desired start and end points. This might help it work out which direction you want to see it rotate. 
it might be designed to always turn the shorter direction, so if you try to rotate 270 it will rotate -90 instead. So preach's suggestion might solve that. 
I made some testing maps to see why that hide away corner was added.

When making a square with four path rotation, evidently as 90 -180 270 and 360 the last point to 0 or 360 makes a counterclock point.
I tried to overide it with random degrees but the turning always occurs, clockwise or counterclockwise.

When marking with an angle the object gets straightened to that angle, no angle makes the object collide to the new angle.

For sofar I can follow the logic, but as for sitting in a plane it is strange to see the the object fly turning wrong. 
Inded, the 375 worked. There I go with my 360 round. 
Quoth2 Issues (sound + Func_hordespawn) 
Sound Issue

I have a problem switching on/off sounds using play_sound_trigger. I would like to obtain something like this:

- sound 1 is triggered on payer start (it is a loop)
- sound 2 is triggered by a button push, using the same channel as sound 1, hence it should override it.

The effect must sound like a bigmachine sound, that is stopped when the button is pushed... like rotor speed slowing down.

I noticed 2 problems:

1/ when sound 1 is triggered, but the player cannot hear it as too far away (at the beginning of the map, as the player shall enter a base to hear it), then sound 1 is not played, or cannot be heared, not even when close to the source. Pushing the button allows sound 2 to be played as expected

2/ Then I tried to trigger sound 1 close to its source, then it loops without problems, but sound 2 is played, but does not override sound 1

Any idea ??

func_hordespanw Issue
As said in the tutorial, when triggerd, func_hordespawn must spawn monsters that are aware of the presence of the player... but it is not the case in my map: monsters are stucked and wait to see the player before being angry... like if ambush flag has been set.. weird..

Any idea ?? 
For Hordespawn 
try setting SPAWN_ANGRY on the spawner... and it should pass it to the monsters 
Re 7850 
1/ when sound 1 is triggered, but the player cannot hear it as too far away (at the beginning of the map, as the player shall enter a base to hear it), then sound 1 is not played, or cannot be heared, not even when close to the source. Pushing the button allows sound 2 to be played as expected

this is a limitation of the quake engine. only looping sounds set up at map spawn time will play properly. looping sounds that are out of the player's range will be cleared from memory.

the only way to do it is to make the looping sound loop manually with play_sound_triggered, setting the toggled flag and setting the 'wait' to the appropriate duration.

as for func_hordespawn/info_multispawn
i believe the monsters spawning awake feature of the entity is broken in quoth2.
you are supposed to be able to set the 'awake' key to '1' and make monsters go after you. 
The awake key doesn't work, even though it is advertised, but lardarse is correct that setting SPAWN_ANGRY on the info_multispawn or info_groupspawn will pass that flag on to any monsters spawned. Probably the forthcoming fix to the awake key will be to apply the same effect as the spawnflag, so give it a go.

I should warn now that there is a subtle bug with the info_multispawn and this spawnflag: it looks for the "activator" at the time of spawning the monster when deciding who to get mad at. The problem is there can be a delay between the activation of an info_multispawn and the actual spawning of the monster(why else would you use one over the teleport spawnflag?). The "activator" might change in that time, in which case the monster could end up mad at the wrong player, or not at all if activator isn't a player. info_groupspawn should be safe from this, and it will be fixed in the next release. 
Necros / Preach 
Thanks a lot for the infos: I'll give a try this morning to:

Sound as necros described... and if does not work, I could simply change the effect.. not a big deal :P

Func_hordespawn: well if not possible to make monsters anger easily (i.e at least for those that need to, and not all spawned monsters), I will simply remove it and replace it by normal triggered monsters.

Thanks men: you rock ;) 
The spawnflag goes on the info_groupspawn(which is the new name for a func_hordespawn), so you can do it selectively - only on the ones for which need awake monsters. So what you would like to do is possible, the bug I described doesn't apply to what you want to do. 
More Sound Issue 
I tested the wait field in play_sound_triggered, and it worked well. I had to remove loop indicator in the .wav sound to make it properly. Well, the result is quite acceptable, while there is a small sound break (around a 10th of a second) when the sound is triggerd again, and sthen restarted... maybe an engine issue... :/

BUT, it is not yet possible to stop it with another signal that overrides it onto the same channel, I guess it is a Quoth issue there...

So I removed the wait field, and added a trigger_delay that loops on the initial trigger with the exact sound duration for the delay field, enabling the sound loop as it triggers again the play_sound_trigger.
Using a button push, it allowed me to kill the trigger_delay, then breaking the loop: as a result the second sound can be heared: done !!!

Don't know if it is clear :P

Well, I still have some minor improvement to add in order avoid some sound glitches, but at least it works ;)

Still have to work on spawning ;)

Thanks a lot for the help provided :D 
Hey Willem (or Some Other Ue3 Knowledgeable Person) 
How do you avoid this:

The vertex light fucks up between 2 ground meshes, works better with lightmaps, but I'd rather be using vertex light. The actual vertices are all overlapped fine etc, can bake vertex light perfectly in maya/max... Any idea? 
Are those all static meshes? One thing to try would be to turn off shadow casting on the ground meshes since they won't be shadowing anything anyway. That will stop their corners from turning dark. 
And the sidewalks as well. That's probably what's boning you. 
Yeah they are all static meshes, thanks I'll try tonight! 
the reason play_sound_triggered isn't stopping the sound when triggered again is because you haven't set the sound channel.

the default for that entity is to use channel 0. channel 0 basically tells quake to use whatever channel is available to play a sound.

the way the entity stops a sound playing is it plays a 'silent' sound on the same channel, but if the channel is set to 0, then the engine just chooses another channel instead of cutting off the one already playing. to get it to work, you need to set the 'impulse' key to a value between 1 and 7 (inclusive). 
I did it, but it does not work, I'm pretty sure I'm missing something

Nevermind: as I already exceed some standard limits in this map (clipnodes, max marksurface, max visible leaf, max faces), I will certainely exceed edicts as well, so unfortunately, I think I will not save that much there...

Anyway, I'll give it a try with a test map ;) and thanks a lot for the support. 
Custom Skins 
Is it possible to create a new monster skins without creating a whole new PAK file? Can you simply throw them into a directory structure of some sort and have Quake use them? I'm guessing not since the textures for the standard creatures are embedded inside the MDL files but I figured I'd ask. 
Do You Mean 
textures without .mdls or .mdls without .paks?

You can have stuff loose no problem, but AFAIK skins must be inside a model unless they are external skins - high rez or some such.

But that means the mapper can't turn them on or off, they're always on, or they're not, engine side. 
Right, sorry. So skins must be contained inside of an MDL, but the MDL files can be loose. Is that correct? 
the way quake searches for things is:

1. mod pakfiles
2. mod loose files
3. id1 pakfiles
4. id1 loose files

so you can't override files in #3 by putting them in #4, but you can if you put them in #2. 
If you're running with -hipnotic or -rogue in the command line, the pak files and loose files from the hipnotic or rogue directory are also searched, not sure when, but I'd guess in-between the mod and id1 step. This caused the missing sounds in quoth2, it was very annoying. 
I always thought a loose file would override a file in the pak. Wouldn't it be 2143 rather? With the engine "override" starting on the right and overriding everything from there that comes in the steps to the left.

Are engines that "allow replacement stuff" rewritten for this? (This is no stupid sarcasm in case you are wrong, I am genuinely interested in this). 
this search pattern only applies to multiple files with the same exact filename. So if you want soldier.mdl to override another soldier.mdl, you need to be aware of that search order.

If you have soldier_mdl_skin0.tga, that is going to override the soldier.mdl skin no matter what location the .tga is in, as long as there isn't already a soldier_mdl_skin0.tga located earlier in the search list. 
Necros / Preach 
Sound issue is solved. Actually I think the issue came from a kind of synchronization that was required between the sounds to play (i.e when sound 1 stop, sound 2 has to start, as sound 1 was looped using wait field in pay_sound_triggered). I think the sound 1 was not overriden cause play_sound_trigger wait field forced a restart at some point, that overrided again sound 2, so the effect was not there.

I solved it using trigger_relays, creating my loop there, killing the main trigger relay when button is pushed.

Anyway, thanks a lot for all the help you provided ;) 
i think i misunderstood the first time.

you mean you were trying to get sound 1 to be overridden by sound 2?

yeah, that's not possible. :( the sound channel you specify in the 'impulse' field means the sound channel on that specific entity. if you had two play_sound_triggered, one wouldn't override the other because multiple entities can play sounds on the same channel.

it's an idea though, to expand the sound playing entity to incorporate functionality which uses more than one sound. 
Hence my idea to create a loop with 2 trigger_relays (very old method for loop creation :) ) and use button's killtarget function in order to stop sound 1 to be repeated (killing one trigger_relay), and at the same time triggering sound 2.

Actually, the overlap is possible if you rework the both sounds:
- sound 1 needs to be a looped sound, but you have to remove the loop markers, otherwize it will never stop
- sound 2 is reworked adding sound 1 + sound 2 as a result, but it delays sound 2 effect...

Also, you need to repeat sound 1 faster than its duration (for sound 1 looping) and then you can stop sound 1 without fearing any sound break during "sound 1 stop to sound 2 start" transition.

I also think a good idea would be to make ambient_generalpurpose sound switchable: it would have helped me a lot there :D

Anyway, thanks for the support ;) 
you shouldn't need to killtarget a relay though.

play_sound_triggered still does have the ability to stop a looping sound from playing. as long as impulse is set, if a play_sound_triggered (with the toggle flag on) is triggered again, the sound will be stopped.

also ambient_generalpurpose: that's not a bad idea, but i'm not sure if that will work or not.
the reason has to do with why ambient sounds with that entity (and all other ambient ents) play correctly looped while a looped sound started with play_sound_xxxx does not.

the function used to set up an ambient sound is different from the function to set up a regular sound (play_sound, monster noises, guns, etc). the ambient sound function can ONLY be used at map start. in fact, i'm not even sure if the ambient sound is tied to the entity at all.. could someone try killtargetting an ambient_sound entity? 
Switchable Ambients 
been meaning to ask about these... are they possible with code modifications? Wrong thread, I know... 
That trick doesn't work, the sound lives on. 
I set same channel on both play_sound_triggered, but when sound 2 is trigger, it does not override sound 1, so it does not work actually, hence the trick I had to build with the trigger_relays, and explained in #7872.

I also tried to killtarget an ambient_generalpurpose, and a play_sound_trigger, but unfortunately it does not work neither...

I think there's maybe a small bug there, but nothing impossible to solve by other way ;) 
Invisible Barriers 
I want an invisible player barrier that I can remove by a trigger. Is there such a thing?

Func_wall doesn't work witout a texture, so can't be invisible.

Is it there but I just can't see it? 
... with clip texture ?? I don't know if it works.. 
func_toggle_wall is for Quoth ;) 

Make your main wall out of clip brushes and then add a small cube with a real texture on it, embedded in the surrounding geometry or something. That should allow you to have a func_(whatever) that is effectively invisible. 
Err, in other words : No, you can't create a func_something made entirely of clip brushes. Trickery is required. 
You're not quite getting the problem which is leading to your original setup not working. Each info_sound_triggered entity has it's own set of 7 channels, playing a sound on channel 1 of the second play_sound_triggered doesn't stop the sound on channel 1 of the first, because those are different, distinct channels.

The reason behind this is obvious for players, which have a channel for weapon sounds, and a channel for pain noises. You wouldn't want the sound of player 2's rocket launcher to cancel out the sound of player 1's shotgun. However, you would want player 2's latest pain sound to cancel out the last one if it's still going. In any case, this is all done by the engine, it's fundamental.

There would be a way to do things in the manner you desire. The QC would create a single shared entity which would act as the "speaker" for all the info_sound_triggered entities, sounds would be played by that entity rather than the info_sound_triggered itself. Then since it's always the same entity which owns the sounds, the channels are the same from info_sound_triggered to info_sound_triggered. However, I don't think this is the most intuitive way of setting up the entity, so I don't think it will get changed. Maybe this way can be added as a separate, new entity, but the existing one is behaving as intended, not a bug. 
Tf2 Question 
How in the hell do I run a map without getting stuck at the waiting for players screen? All I want to do is run around with the scout in the official levels and get a proper feel for dimensions and stuff. 
A Guess 
Have you tried setting maxplayers to 1? I think that's what I did to make it work. 
Tried it. Did not work. 
I'm sure there's a way to disable it properly because I've gone running around exploring maps as scout. But I can't remember it, so use "mp_waitingforplayers_cancel 1" once you get into the game to start the round proper. 
That just ends the round in a draw. 
I don't mean to be that guy that answers questions by telling you your whole map is wrong, but what's the context where you need the player to be blocked by something he can't see? Is there an aesthetic/gameplay reason you can't bar his path with a cage or a door? Players won't be expecting clip brushes to disappear, because they don't do that ordinarily. 
Preach / Lunaran 
OK, if it is not a bug, it is that I didn't understand how it works... sorry for this :P Anyway, I achieved the sound effect I was looking for, and this is the most important for me :D


It is not me, it is Mike Woodham who want such effect :P Check post #7877

This "transparent clip wall" effect has been used in Travail start map, where the shambler protects the nightmare skill entry: there is a kind of shield that isolate the shambler and prevent the player from shambler attacks, and that looks like a transparent clip wall.. but once disabled, the shambler can run after the player, and you can walk through the shambler "cage"... Good example of transparent xlip wall there ;) 
Unfortunately (1), it's a hack to get around a hack.

Unfortunately(2). Willem's idea doesn't work - have two brushes touching and set them to be a func_wall. One of the brushes is textured with wall_texture and the other is clip: the clip brush still does not block the player. I
The player probably won't do what I don't want him to do but because I don't want him to do it, I don't him to be able to do it either. 
Weird that it doesn't block the player. If you put a regular texture on it, is the wall there? If so, I'm stuck. 
Stupid idea, but, you could do it with a func_door or a func_wall, setting alpha field to '0'..; It will just restrict engine use to GL enhanced engine (e.g, FitzQuake, aguirRe's GL Quake) 
Mike... To Be Continued... 
Errr alpha filed set transparency of the func_wall / func_door, then having a complete transparent brush, menas something blocking the player, but that can be removed ;) 
Have you tried a Skip-textured func_wall with a skip removal utility ( )? I used that for the void Hell Knights in Schismatic Ablation (768_lurker.bsp). I think RPG did this earlier in one of his RPGSMSE maps. 
Use a func_ consisting of a clip brush surrounded by a solid-textured frame that is inside floor and walls. There have to be at least two proper brushes to determine the volume of the entity, everything within can be clip. 
Ahh, so that's it! Needs real brushes to determine the bounds. OK, committing that to memory... 
Bad Poly 
Almost done with my map, and now I have this cave cellar with a brush diagonally.

It seems the monsters can see me as they start fighting me as soon as I'm in the apparent place. I checked the walls double but I can't get it sealed.
Strange because I copied it from the other side and there the monsters just wait as if that place is sealed.

Even three walls can't stop them?? 
Thanks for the pointers.

Provided all sections of the func_wall are created at the same time i.e. make the brushes, have them touching, change the relevant (middle) one to the texture_clip, then make them a func_wall; then provided the clip is bounded on two opposite sides, it works.

Unfortunately, it is not removable. 
The alpha trick needs "alpha" "-1", as 0 implies 1. 
Oh, I was not aware of that feature, I thought it was working like r_wateralpha, that has value in between [0:1] range. 
Doh, it's all so simple when you know how. Thanks. 
Full: 52.13%, Elapsed 47h59m, Left: 331h33m, Total: 379h33m, 12%

I've got patience, but 2days left and 14days to go is a big heap. 
MadFox u must reduce many things... map is not that big for so many vis time... :\ guess u got to many errors in map! tchak is much bigger and just take 2 hours...
something is wrong... i�ve got almost 8.000 brushes! 
My current map has around 3,000 brushes and will VIS in under a minute. Seriously, turn some stuff into func_walls or something. :) 
There are 318 errors, but for vising it never took that long. P4 3Ghz. 
that�s your problem MadFox u�ve got to many outplaced textures!!! you should fix then all...

I use to have these kid of problems... now in my maps i always have 0 errors!!! this is very important for the compiler...

will give you a pain in the ass for 2 or 3 days... but will compile real fast, you will see...

last map i try to compile with errors was wbase... i ~had also a lot of errors~becouse of rotating peaces of map and gave me many errors... took me two days to fix then all but after that was all pleasure!!! :) 
That's a serious number of errors indicating lots of not-so-great geometry in your level. I would agree with Trinca here. Take a day or two and see if you can clean it up and get the error count reduced. I'll bet you speed up some after that since you won't have little cracks and slivers in the BSP anymore. 
Doesn't a mixed face contents situation even prevent the map from loading? Shouldn't be too hard to get rid of those.

As for the "healing point.." warnings, you should check your map for HOMs and clipping issues (nonsolid brushes). Use gl_clear 1 and set r_clearcolor to something salient - BJP's engine defaults to a bright red, for example. This way you can easily spot problematic areas.
The issues are most likely caused by floating vertices or deformed brushes. If there are odd rock formations for example, it might be better to build them from triangle brushes, for they are more flexible than cubes. 
It is also generated by very tiny brushes, like clip brush used for ladder, rather than using func_ladder when available... Generally not a big problem...

Mixed face content is more problematic, as sky/water/etc... could then become solid on one face... (particularly sky)

And now go map ;) 
Your need to simplify the map SOMEHOW.
Maybe make some things func_illusionaries. Anything you can make an illusionary will help.
You can make something an illusionary and put a clip brush over it so that hull 1/2 are simpler, and marksurfaces and clipnodes are less.

Your vis will go from 13 days left to 1300 days left in 650 days.

Remember - 90% of vis time happens in the last 10% of progress. 
Wasn't the map leaked and boxed? I'd really try to fix the leak, it will make compiling much faster, result in a more performant .bsp file and maybe even teach you new approaches or ideas. I always hate it but the feeling of having a "proper" bsp afterwards always makes up for it. has a lot of infos on leaks. 
Oh, you might be right. I don't see a message in that error log about a "prt" file being written.

Is the map leaking? If so, drop everything, full stop, fix the leak. It'll compile WAY faster once you seal it. 
Sorry, that sounds dumb. What I meant to say was ... is the map boxed because it has a leak? If so, remove the box and fix the leak. You're processing a ton of stuff that you don't need to be outside of the play area. 
the map have many leaks i saw many of then when i beta!

Madfox u must fix then all... 
Wad Repository 
Main problem with leaks is they are sometimes very difficult to solve... furthermore when you are not cleanly mapping (i.e poly and textures off-grid !!!).

The only way to verify you are not generating garbage is to compile a sealed map very often, in order to progress very safely... And when I say "sealed map", I mean a sealing done by huge boxes that occluded the non-finished areas... like "hole-fillers".

If it does not prevent from HOMs (it happens sometimes), it helps a lot anticipating issues before the latest complete map compilation with the tons of warnings/leaks/HOMs/whatever fucking problems you might have onto your final big map...

Believe me, it unfortunately slows down your mapping speed, but it gives more safety in map result...

You should consider make iterations of compilation using occluding huge boxes in order to isolate your leak problems, and solve them one by one... or more ;)

Good luck ;) 
Wad Repository 
And/or newest version of Wally?
Haha, shit. 
JPL speaks the truth, IMO. I regularly stop and throw in temporary walls to block off new passages and doorways in order to verify that I'm still in "valid map" land. If I can get a clean compile and VIS, I'll remove the blockers and carry on. But not before.

It's too painful to do a huge map and then get one of those oh-so-wonderful leaks where it doesn't generate a pointfile. Good luck fixing that! Grr... 
Oh Yeah... 
this is actually an interesting point. When I made my early maps (chaos, rubicon) i just left openings to the void, and it was no big deal. Since i used software quake, the grey looked nice anyway.

Then, switching to quake2, the compilers wouldn't even calculate lighting without a sealed map (if i recall correctly) so i got in the habit of capping off any doorways/hallways to unbuilt areas.

Now that habit stays with me in any engine. And it definitely helps reduce leaks. 
sorry for that, just cut the vising after three days random vacuumcleaner sound. I only had 400 houres to go.

I had to give the outside box a heap of 16, before it stopped leaking on b_models.
After I could seal the box compact to the map without leaking I thought it would be ok.
Fastvis when fine and there were no homs.

And to be serious, if I point to the so called bad area's I end upon somewhere between brushes I can't get a hold which one's ment. 
I thought the corridor blocking was standard practice, but I remember now I learned it from HL1 and Q2. 
Great to see you GOing to MAP! 
.. it is time to open a Best Mapping Method Thread :P 
are there people who want to test a fastvised map, or is it against the rule to publish a not best vised map? 
For beta testing: I always send fastvised map.. fullvis is for final release ;) 
MadFox didn�t you like my advices? :|

i still can give you more feedback :(

but u dont love me anymore...

buaaaaaaaaaaa nobody loves me!!!

i will buy a iceberg near Vondur and stay there forever!!! 
Oh Yeah 
Trinca, I did apreeciate your advices, your demo was usefull. As far as you got kikked half. A lot of leaks you mentioned I couldn't find.

I did send Sielwolf a call but it got bounced.

So again, anyone interested in betatesting? 
Please send 
my email in my profile, u can send it to me if you wish (send it with a pointfile) 
its way. 
just got WC 3.3 - How can I adjust texture brightness? More importantly, I don't seem to be able to select brushes in the 3D view... any way to make that possible? Haven't even tried to compile yet... 
furthermore, I'm currently unable to apply textures... what the fuck? 
Turn Off 
3d accelartion in the options menu - thats some stupid shit default on that does nothing, as far as I can tell. Apart from fuck up moden PC's that is.

That's proably everthing solved, if not (texture correction) then ask Baker. 
I fail to see how hardware 3D acceleration is a bad thing, assuming of course that it works. :D

I had the same problem with Stoneless after a certain DirectX version (many years ago). I guess the obvious answer is that they were using functionality that changed or was removed in later versions. 
It Doesn't 
Not Being Able To Select Brushes 
I had the same problem with brush selection in the 3d view, and had to downgrade my graphics driver by several versions to get it working again. I'm currently using omega drivers, version 5.12, which might not be the most recent version which work, but were the first ones I found which still did. It's also possible newer drivers fix the problem, it's just too much hassle for me to keep upgrading them to find out. 
Nah WC 3.3 Need Hardware Acceleration. 
Adjust the texture brightness using your graphics cards setup menu.

In WC1.6 hardware acceleration is B00rked from my experience. Use Software

In WC3.3 hardware acceleration is fucked up. It works, you need it, but there is no option for adjusting the texture brightness, which is something that WC1.6 does have with its old slow shitty software renderer.

I use 3.3 for many much debated advantages, I like it and im comfortable with it, but I have had to play around with the settings on my graphics card (Nvidia Controll Center) to get a good brightness/contrast in Worldcraft. I mean how do you have your graphics card set up? 
I'm pretty sure Preach nailed it. I've been having to start fitz in window mode and then go fullscreen since I updated my drivers. The brightness I can deal with, but not being able to use the 3d view to map is like not being able to use my hand to scratch my balls. 
It Worked! 
Thanks Preach! 
.pak Files 
I am trying to extract the files from .pak files but am getting a "sharing violation" error with pak explorer. Know of any programs that work in Vista? thx 
That error pops up when the relevant game is running in the background, or you try to open the same .pak again. 
heh i guess i didn't think that HLSW (a server listing program) would cause quake to be running in the background. Thanks erc! :) 
whats a good way to take screenshots in fitz or darkplaces? I want to remove the hud and crosshair and be able to get a good angle, is there a way to go into observer mode in first person? or should i fly and notarget? is there a good .cfg for this? thx 
Copied From My Own: 
Paste these three lines to your autoexec:

alias clean1 "echo Screenshot Mode -ON-; bf; r_drawviewmodel 0; crosshair 0; viewsize 120; fov 120; bind F1 clean2"

alias clean2 "echo Screenshot Mode -OFF-; bf; r_drawviewmodel 1; crosshair 1; viewsize 110; fov 90; bind F1 clean1"

bind "F1" "clean1"

..and change the key (f1) to your liking. The included commands are pretty obvious.

Dunno about an observer mode. I use notarget. 
thx erc :) 
Damn Quake's 15 characters texture name limit. 
anyone experience a weird occurrence where the escape button no longer functions in radiant, i rebooted in order to fix it
i have some other programs running at the same time: -Tread -Firefox -Photoshop -3dsmax
turns out it was photoshop on my vista 64:
guys what are normal engine limits?

i�m afraid i execed mines :| i want the map to run in all engines...

Title: "tchak"
39521 faces
6648 brushes
1523 entities
------ FinishBSPFile ------
WriteBSPFile: maps/tchak.bsp
6482 planes 129640
29779 vertexes 357348
10407 nodes 249768
23801 texinfo 952040
23556 faces 471120
21575 clipnodes 172600
5040 leafs 141120
29584 marksurfaces 59168
110713 surfedges 442852
55427 edges 221708
89 textures 853920
lightdata 0
visdata 0
entdata 128282

i�m close from normal limits in with paramenters? negke said me
marksurfaces were 32.000 somethiing... any other? 
clipnodes: 32767
marksurfaces: 32767

You look like you're ok to me, Trinca.
Im not sure what the limit is for "faces".

The best way of checking your map is to load it in AguirRe's GLQuake, if you break any of the limits it will tell you on loading the map on the console.

Also try loading it in FitzQuake and vanilla winQuake. And if it loads in JoeQuake/TomazQuake....

If it loads then you're OK! :-) 
23556 faces 471120

Actually I think this is fine - within limits.

Slave and Thehand are both closer to the limits than this map! ;P

Trinca - You can make it still bigger, or put some more secrets in!!! Yes please! 
thks RickyT23 u rock

Secrets and Quads will not be few... and i still have a lot of stuff to had... so it will closer!!! 
QBSP-bjp prints warning messages if any of the bsp limits have been exceeded. 
Read This...

Standard limits are listed at the end of this document..

Thanks aguirRe ;) 
Qconverge WC 3.3 Texture Issues. 
The Qconverge utility has a couple of limitations. It can't convert WADs with > 1024 textures or textures larger than 512 x 512.

That is a quote.

I am having issues because many of my favourite texture packs ( kingpin, halflife, etc.) are not being converted to .hlwad format.
I'm no good in tex mex, so I don't know how I would go about converting those files using that program (or any other).

What should I do? 
1/ Export all files as bmp..
2/ Convert all bmp to Quake palette
3/ Ensure bmp file format is 16x16 multiple, and if not: resize
4/ Create a new .wad file
5/ Import all bmp
6/ Save you .wad file

Done :P 
3.5/ Make sure there are no unwanted fullbright pixels 
me grewly out of crunching the last bites out of my scrutinized wrenched up map made me decide to finally screw it up better by straigthing it out from scratch made me looz the last fiftheen months spilling time that could have been spent much better if I only kept brushes on grid and it had never left me with this totally peace of big heap...

it is not your only worst fear, trinca. 
I remapped it, fullvis 37m, and 1 warning.
And most of all, I don't need a large fitbox! 
AAAAAaaaaaaaaahhhhhh... you finally discovered the clean way of mapping ;) 
can open WAD3 format but only save WAD2.
Besides, lol at telling someone to extract and convert some 3000 textures.

No idea how to get it running with WC33, there should a tool somewhere. In the meantime, maybe just make a smaller selection and convert that (working with so many textures at once is counterproductive anyway). 
It can be spedd up using scripts you know...

MadFox Congrats! 
glad u took our advices!!!


is a pain in the ass but it worth it! 
WC3.3 Method Is Very Easy 
but you have to manually re-size any textures which are too big, or remove them from wad.

1: Install Bakers Quakeadapter.

2: Put your Quake1 WAD files in c:\program files\worldcraft\TEXTURES\

3: Start WC3.3 !

The util will open a win32 log window, saying which textures are too big and need to be re-sized.

The output HLWAD is left in the same directiry as your Quake tools, and has the same filename, just with the HLWAD extension!

I have had to do this quite a lot!

Good luck... 
"Quake tools" = "Quake WADS" 
Both Photoshop And Gimp 
can open WAD3 format but only save WAD2.
Besides, lol at telling someone to extract and convert some 3000 textures.

have auto execution tools, so it is not really a big deal to do that before you stick them all back into a WAD. 
Madfox a map with no leaks runs much faster! :)

no leaks and no warning!!! 
A leak disorders and quits the compiler,
so whatever it was, it was crap.
Warnings are more violent on the background,
and can cheat much harder in the end.
(like well compiling and for ever vising) 
huge map you're exploring. 
not as much as warpc but is big yes 
Trigger Enabling 
I have a small problem: I'm mapping for Quoth2, and I would like to know if it is possible to activate a trigger_once using another trigger/button/whatever event...
I would like to make the triggers reacting to player only after a certain event. So is it possible to enable a trigger_once using its target field as example ? 
I Used Invisible Buttons 
using newskip.exe 
Trigger Hack 
info_notnull (brush)
use trigger_once
touch SUB_Null

See progs.dat thread. 
Negke describes the only way to do it in the current version. It's not actually a bad way of doing it, the only thing that I feel is slightly dodgy about it is that the entity never ends up with the correct classname, but it's unavoidable. A more sophisticated method of doing this kind of thing(activating triggers /entities when other events fire) will be in the next version of Quoth, but that's a long way off.

I was hoping to be able to finish this with a short snippet of code to add to a clear quake source, which would make the "simplest way" work with all triggers. Sadly this isn't really possible, the only function which is called on all triggers is InitTrigger, but you can't do enough with it. It doesn't know what function calls it, so you'd need to hide all the possibly relevant fields like touch/use/health/etc, and create a use function
which restores all of these values. But even then you get ruined by trigger_teleport, which overwrites the "use" field after the call to InitTrigger. Bah! 
RickyT23 / Negke / Preach 
RickyT23: I'm using metlslime skip for glasses, and I'm not sure it will help me with my issue :P

OKnegke: I'm not sure to clearly understand, well, I'll give it a try, and I will have a look in te progs.dat thread in anyway..

Preach: Thanks for the infos... ;)

So globally except the method negke described, there's no other way to do what I would like... or I will have to wait for Quoth3 :P

Anyway, thanks alot for the help: you rock ! 
On How It Works (the Nth In A Series Of Overly Long Posts By Preach) 
I think it's about time there was a good post on why that particular info_notnull trick works, because it's a bit complicated why you move the classname to the use field to make it work.

What is a classname?

The classname field is a qc field which stores a string. From the point of view of the QC, it isn't any different to the message field. There is only one thing which is special about classname, which happens when the map starts.

When the engine loads a map, one of the last things it does is load the list of entities, which looks a little like this:

"classname" "misc_fireball"
"delay" "15"
"target" "drawtrap"
"targetname" "draw"
"origin" "-352 -1168 160"
"use" "trigger_once"
"model" "*2"

You can see that all the fields you enter are stored as pairs of keys and values. What the quake engine does for each one of those entries is:
1. Creates a new entity with all of it's fields set to 0.
2. Fills in any of the fields listed in between the {...} with the value given.
3. Sets the "self" entity in the QC code to be this newly formed entity.
4. (this is the important bit) Searches for a function in the qc code with the same name as the classname of the entity, and then runs that function.

The function with the same name as an entity's classname is usually called the class "spawn function". There is technically nothing special about the QC in a "spawn function" - any valid function name is allowed as a classname. But usually "spawn functions" are designed to do important things to "self", like making it solid, giving it an appropriate model, and starting the ai functions in the case of a monster.

What is the use field?
In the example misc_fireball entity above we see the use key has been added. It looks like the use key follows the same format as the classname key, but this is misleading. In QC, use describes a function, not a string. When the quake engine carries out step 2 on the use key, it looks for a function whose name matches that string. Once it finds that function, it stores the function location for the QC and discards the string.

In the (very contrived) example entity I have invented above, use is set to "trigger_once". We are used to trigger_once being a classname, but as we learnt above classnames are always the name of a function. So when we trigger the event "draw", the QC finds every entity with a targetname of "draw". It then calls the function stored in use.

In this case, this gives the entity all the properties of a trigger_once, on top of whatever fields were filled out when it became a misc_fireball.

The thing to remember is that running the function doesn't change it's classname to trigger_once. Sometimes the classname matters (see for the classic example). However, I can assure you that trigger_once is not like that, the classname is never checked once the entity is spawned. So the hack is in fact safe.

What is an info_notnull?
So why are all the hacks obsessed with info_notnull? Well, it's because info_notnull is an entirely empty "spawn function", it does nothing to the entity at all. One of the challenges of making entity hacks is finding a function which does just enough. If you make the classname "trigger_multiple" then it does all the work of making a trigger for you. But that function also overwrites any custom value for use or th_die(a function like use, but called when you kill an entity). Sometimes doing nothing is exactly what you want, in which case you choose info_notnull.

Bringing it all back home
So using all that knowledge, we create a brush based entity with these fields:
"classname" "info_notnull" //do nothing on spawn
"use" "trigger_once" //do what the spawn function for trigger once does once we fire the event
"target" "spawn01" //the event which makes use happen
"targetname" "newevent" //what the trigger sets off

Hope that was enlightening.

ps: The difference between classname and use is why mutliple-spawning entities in hipnotic/quoth/quake-mods always have two fields you need to fill out: spawnclassname and spawnfunction. The former is a string which is copied to classname, the latter is a function field which is called to replicate the engine function of looking up the classname function. You could of course mess with the program by setting the spawnfunction to monster_ogre and the spawnclassname to monster_shambler

Extra Credit Assignment: describe what you would see if you did set "spawnfunction" "monster_ogre" and "spawnclassname" "monster_shambler". Creating a test map to find out is cheating... 
"Hope that was enlightening. "

It really, really was. Thanks a ton for those overly long posts, Preach. They are ridiculously enlightening and useful. 
I'll Hazard A Guess 
The monster will function as an ogre, except that it will infight with orges and not infight with shamblers. It will also take half damage from explosions, which is probably just as well, as it will be somewhat careless about how he shoots his grenades... 
Ok, Just Tried It 
And I forgot something... 
I'd say you got all the important differences, the shambler alert sound and death messages are also used(although the former isn't precached). But yeah, very good work! 
The explanation is really complete and detailed, but I'm still not sure how to implement it: Would you please consider to provide me a short and simple map example (.map / .bsp) that would enlight my spoor mapping skill... 
It's a info_notnull brush entity. Just create a regular trigger and change the classname field. 
Suggestion for Quoth3: customizable light styles, e.g. with "message" "abcdedcba", if that's easily feasible. 
Forget the example, I think I understood the idea thank to negke precision, I missed this important point: The info_notnull shall be a brush !
Thanks a lot for your support guys ! You rock ! 
Explore the world of Fodrian! Operate arcane machinery! Defeat your foes to earn your right to return! Source .map included. 
Oh well, it's a nice pretty map for the next person who asks.

re: Custom light styles. Yeah, that's possible. The best way I can see to do it is have an info_lightstyle where you set style to some number between 20 and 31(32 onwards are reserved for switchable styles, and for purposes of this example I'm reserving 14 to 19 for potential quoth standard light styles) and message to the custom light style. Then you just give any lights you want the corresponding style.

It should also be possible to make these entities targetable. If one was given a targetname, then it would not define the light style when it spawns, but instead when it is triggered. This would allow for dynamic control of light styles, and could possibly be extended to the regular defined styles(although it would still be a bad idea to let styles above 32 be controlled in this way). Possibilities this would open up include:
Switchable flickering lights.
Event triggered lightning flashes across a level.
Day to night transition(if you can figure out what to do about the sky). 
Pretty Map Indeed 
Day to night transition(if you can figure out what to do about the sky).
Nothing easier than that. Quoth's trigger_command with "loadsky skybox_\n". Just do it while the player does not see the sky. It will give a short load freeze though.

More engines need Ogg Vorbis soundtrack support and then also allow the "cd <command>" commands to control it. trigger_command with "cd play 123\n" is just great.

It would be great if the information that \n is needed would be added to the Quoth documentation, I just now remembered and it (once again) gave me a headache yesterday. ;) 
It would be great if all 25% of missing information would be added to the Quoth documentation as well. 
Yeah, changing the skybox works until you have to worry about engines which don't have skyboxes! I think a daytime sky texture with a non-solid func_ brush covered in scaled up black texture which is removed on daybreak/spawned for nightfall is the way to go. I think that's what we did for travail, anyway... 
I'm trying a terrain map with brushes in shape of triangles.
They all have one toppoint en three corners.
As I managed to get them well fit without warnings I've come to the lightning problem.

Most of the triangles get a bad dark shape, as others come through well.
I've read aguire's tool tips but I can't find a way to avoid them. 
I've seen that as well. I think it's just that the BSP compiler can't handle it. I've never had a ton of success with triangular terrain. Even if it lights correctly and looks good, you still get weird collision snags. 
As For That 
ive terrain-mapped using triangles quite a lot in Quake, (well since slave anyway):

if you get errors in hull 1 (clipping errors) try making the area simpler - make the bad "join" 0, 90, 180 or 270 degrees in a straight line.

Also dont make the triangles too small.
And try to stick to a 16x16 grid at the smallest.

All seem to help me!

Hope this helps.

Also try Tyrlite to do the lighting... 
Do your triangles have 4 or 6 corners?

I used primary geocomponents for Quark, triangle brushes of width 6x 64, and I have no warnings, all brushes aligned within 0.1 and integer centers.

First I tried the light with wait function as it gives a more egal lightning. But it looks as if the area's on the floor give the most shade.
If I use brushes with a butom, ie. 7 corners the effect seems less.

Both versions of Tyrlight reach the same results. 
6 Corners 
64 units deep. when it was flat. all aligned to 1 unit. the triangles are on the horizontal axis.

They look like three-sided triangles when you look at them from the top down.

the whole effect can be transposed onto another axis too, though. 
I tried with 4 corners, but it seems then the floorcount in the lightning starts to behave like _not lighted from downside_ what creates the blackouts.

With 6 corners this floorcount is out of order, and they indeed light better.

Thanks for your answer! 
Use Nemesis's terrain generator... and import the resulting .map file. Change the texture and you are done ;) 
QuArK's terrain thing is very very VERY bad.
Nemesis' tool is much better:
One small question guys.

"18 entities inhibited" is this lights in walls? 

Try to keep the bounding boxes of the terrain triangle polys to 16 unit boundaries. The lightmaps, I believe, are at a 16:1 resolution so if you deviate from that you could end up with weird black splotches. 
ops, guess i got it! is the skills settings :| 
Let's Do Some VIS Benchmarking. 
BSP and Light are the quick tools where VIS can take a "while" to complete. I am kinda interested how the VIS speed differs on different machines, so I prepared some stuff:

Put these two into the same directory and run vis bench_koohoo. Then post the time it took here, including your machine's specs (CPU and RAM would be the interesting bits I guess). If you are not using aguirRe's latest Vis ( ) please also mention that (and make sure to use level 4).
It should take about 20-30 minutes, probably much less. Try not to do anything else during that time on your PC. Just browsing around on the internet added 10% to my vis time.
Thanks to Vondur for his steamy swampy map.

My results:
Pentium-M 1.2GHz, 2GB Ram (400MHz I think), Debian Lenny.
Through Wine: 18:32
gb's port: 18:02

Pentium III-M(?) 1GHz, 256MB Ram, Windows XP
Vis: 25:49

Don't forget to use the original .bsp file if you are doing several runs (which might be a good idea). 
I'm Really Interested To Hear What Willems Multi Core 
vis tool does with this....

Ill post some results in a while... 
I won't be able to try until the morning at the earliest. I'll try to remember though. 
OK - heres my effort - XP32 C2D 6750 @ 2.66 GHz (2 cores in processor, but I guess it only used one...?)

Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\Rick>cd c:\quake\id1\maps

C:\Quake\Id1\maps>vis bench_koohoo
---- Vis 2.31 ---- Modified by Bengt Jardrup

File: bench_koohoo.bsp
3381 portalleafs
9565 numportals
testlevel = 4

Base: 0.0%, Elapsed: 0:00
Base: 100.0%, Elapsed: 0:05

Full: 0.0%, Elapsed: 0:00
Full: 30.4%, Elapsed: 0:10
Full: 35.7%, Elapsed: 0:20, Left: 2:04, Total: 2:24, 13%
Full: 38.1%, Elapsed: 0:30, Left: 2:41, Total: 3:11, 15%
Full: 41.4%, Elapsed: 0:40, Left: 3:23, Total: 4:03, 16%
Full: 43.5%, Elapsed: 0:50, Left: 3:36, Total: 4:26, 18%
Full: 45.2%, Elapsed: 1:00, Left: 3:54, Total: 4:54, 20%
Full: 47.0%, Elapsed: 1:10, Left: 4:48, Total: 5:58, 19%
Full: 48.7%, Elapsed: 1:20, Left: 4:59, Total: 6:19, 21%
Full: 50.8%, Elapsed: 1:30, Left: 4:21, Total: 5:51, 25%
Full: 52.9%, Elapsed: 1:40, Left: 3:56, Total: 5:36, 29%
Full: 53.9%, Elapsed: 1:51, Left: 4:39, Total: 6:30, 28%
Full: 55.1%, Elapsed: 2:01, Left: 5:28, Total: 7:29, 27%
Full: 56.5%, Elapsed: 2:11, Left: 6:21, Total: 8:32, 25%
Full: 58.1%, Elapsed: 2:21, Left: 4:56, Total: 7:17, 32%
Full: 59.1%, Elapsed: 2:32, Left: 5:22, Total: 7:54, 32%
Full: 60.2%, Elapsed: 2:42, Left: 5:36, Total: 8:18, 32%
Full: 61.2%, Elapsed: 2:56, Left: 7:15, Total: 10:11, 28%
Full: 62.6%, Elapsed: 3:06, Left: 5:49, Total: 8:55, 34%
Full: 63.8%, Elapsed: 3:16, Left: 5:30, Total: 8:46, 37%
Full: 64.8%, Elapsed: 3:26, Left: 4:49, Total: 8:15, 41%
Full: 66.4%, Elapsed: 3:36, Left: 4:24, Total: 8:00, 45%
Full: 67.4%, Elapsed: 3:46, Left: 4:36, Total: 8:22, 44%
Full: 68.4%, Elapsed: 3:57, Left: 4:37, Total: 8:34, 46%
Full: 69.7%, Elapsed: 4:07, Left: 4:50, Total: 8:57, 45%
Full: 71.2%, Elapsed: 4:17, Left: 3:55, Total: 8:12, 52%
Full: 72.2%, Elapsed: 4:27, Left: 3:41, Total: 8:08, 54%
Full: 73.7%, Elapsed: 4:37, Left: 3:17, Total: 7:54, 58%
Full: 75.0%, Elapsed: 4:47, Left: 3:21, Total: 8:08, 58%
Full: 76.5%, Elapsed: 4:57, Left: 2:43, Total: 7:40, 64%
Full: 77.7%, Elapsed: 5:07, Left: 2:47, Total: 7:54, 64%
Full: 79.3%, Elapsed: 5:18, Left: 2:23, Total: 7:41, 68%
Full: 80.7%, Elapsed: 5:28, Left: 2:18, Total: 7:46, 70%
Full: 83.0%, Elapsed: 5:38, Left: 1:37, Total: 7:15, 77%
Full: 84.7%, Elapsed: 5:48, Left: 1:25, Total: 7:13, 80%
Full: 86.0%, Elapsed: 5:58, Left: 1:18, Total: 7:16, 82%
Full: 87.1%, Elapsed: 6:08, Left: 1:32, Total: 7:40, 79%
Full: 89.3%, Elapsed: 6:18, Left: 1:09, Total: 7:27, 84%
Full: 91.2%, Elapsed: 6:28, Left: 0:51, Total: 7:19, 88%
Full: 93.1%, Elapsed: 6:38, Left: 0:34, Total: 7:12, 92%
Full: 94.5%, Elapsed: 6:48, Left: 0:31, Total: 7:19, 92%
Full: 95.6%, Elapsed: 6:58, Left: 0:29, Total: 7:27, 93%
Full: 96.9%, Elapsed: 7:08, Left: 0:25, Total: 7:33, 94%
Full: 97.9%, Elapsed: 7:18, Left: 0:18, Total: 7:36, 96%
Full: 99.5%, Elapsed: 7:28, Left: 0:03, Total: 7:31, 99%
Full: 100.0%, Elapsed: 7:31, Left: 0:00, Total: 7:31, 100%

average leafs visible: 163
max leafs visible: 424 near (2496 1024 128)
c_chains: 41037083
visdatasize: 146 kb compressed from 1396 kb

Elapsed time : 7:38

Could you please post it again with -verbose 
Ha Ha Funny Bastard 
My Macbook Pro is reporting 8:25. It's a dual core 2.33 GHz with 2GB RAM. Kind of an older machine. 
Yeah, it's skill settings and the NOT_DM spawnflag (2048) 
Left 4 Dead Mapping 
Since this game is fun to play and looks like it will be a lot of fun to map for, I was thinking of getting started sometime soon. Does anyone have any info about how to map for it? Since it just came out there doesn't seem to be a lot of info right now. Has anyone got the SDK to work with L4D assets yet? Anyone else thinking of making a map? 

Xp SP2 P4 2.8 512 RAM

---- Vis 2.30 ---- Modified by Bengt Jardrup

File: bench_koohoo.bsp
3381 portalleafs
9565 numportals
testlevel = 4

average leafs visible: 163
max leafs visible: 424 near (2496 1024 128)
c_chains: 41037083
visdatasize: 146 kb compressed from 1396 kb

Elapsed time : 14:02
State time : 0:01 
Heh, Your Times Are Mean Compared To Mine 
I was so annoyed by searching "that file" so often that I just created
Suggestions and links to more tools are very welcome.

(And now I just realised I should make the wads integrated like that too.) 
I am still uploading tools... 
Nemesis' terrain generator
PAK Explorer
Koohoo - Vistest 
---- Vis 2.30 ---- Modified by Bengt Jardrup

File: ./maps/bench_koohoo.bsp
3381 portalleafs
9565 numportals
testlevel = 4

average leafs visible: 163
max leafs visible: 424 near (2496 1024 128)
c_chains: 41037083
visdatasize: 146 kb compressed from 1396 kb

Elapsed time : 11:07
State time : 0:01

P4 3.4 Ghz - WinXp - 1024 RAM 
Bench_Koohoo Vis 
---- Vis 2.31 ---- Modified by Bengt Jardrup

File: bench_koohoo.bsp
3381 portalleafs
9565 numportals
testlevel = 4

average leafs visible: 163
max leafs visible: 424 near (2496 1024 128)
c_chains: 41037083
visdatasize: 146 kb compressed from 1396 kb

Elapsed time : 13:29
State time : 0:01

Pentium 4 3.0 Ghz HT, 2.5 Gigs of RAM, Windows Vista Home Premium. 
Hey, I've pretty much never used trains. Or at least, very little, and not for a long time. I want to have a train start at a point, then, when triggered by a trigger_multiple, go on a path, and then return to its original point until triggered once more. How should I set that up? I'm sure it's simple enough but it doesn't seem to work as planned. 
Bench_koohoo - Vis Test 
---- Vis 2.31 ---- Modified by Bengt Jardrup

File: bench_koohoo.bsp
3381 portalleafs
9565 numportals
testlevel = 4

average leafs visible: 163
max leafs visible: 424 near (2496 1024 128)
c_chains: 41037083
visdatasize: 146 kb compressed from 1396 kb

Elapsed time : 14:57
State time : 0:01

P4 2.4, 768mb ram, xp sp2 
Can't find or download GenSurf and WinPack. Do you have working links? GenSurf is hosted at stupid atomicgamer and the links are dead. 
I will send you the files through email: both do not need installers ;)
If I remeber well, WinPack allow to dive into Packs, but not to create them (not like PakExplorer...).. and GenSurf is weird to use.. I never used it for my maps, just for tests, and I personnaly prefer Nemesis' tool... 
Such a setup is not actually possible in standard quake, at least not allowing the sequence to be retriggered an indefinite number of times. You would have to use a custom mod like hipnotic or custents or quoth to do so. 
Train Line 
On a related note, I've got a question about func_rotate_train from the hipnotic source code....yeah, that monster.

Normally to make a func_rotate_train rotate to a specific angle on arrival at a point, you would set the second spawnflag on the destination path_rotate, and then set "angles" on that entity to the desired angle.
However, suppose you want the func_rotate_train to "rotate in place", that is reach a path_rotate, then rotate without also moving anywhere, before moving to another waypoint once the rotation completes.

You hit a problem: to do this you have to put the second waypoint(the one containing the rotation instruction) in the same location as first one. The result of this (which I can understand after reading the code) is that the train doesn't stay still to complete the rotation, it in fact completes the rotation as it travels to the third waypoint.

So my question: is there another way of setting up the path_rotates to facilitate this kind of motion(func_train_rotating a fixed arc at a waypoint without moving otherwise)? Or is it an oversight in the code which deserves fixing? A few "Preach, I have no bleeding idea" replies would assure me it's the latter. Alternatively, convince me that even if there is another way of doing it, the fact that the setup I describe does not work is a bug to be fixed. 
---- Vis 2.31 ---- Modified by Bengt Jardrup

File: bench_koohoo.bsp
3381 portalleafs
9565 numportals
testlevel = 4

average leafs visible: 163
max leafs visible: 424 near (2496 1024 128)
c_chains: 41037083
visdatasize: 146 kb compressed from 1396 kb

Elapsed time : 7:29

AMD X2 6000+
2BG ram @667Mhz 5-5-5-21 cr2 XD )

So whos got the longest penis 
Ubuntu 8.10 Is 1 Second Slower 
Elapsed time : 7:30 


Ubuntu+wine is

gbs port is

unexpected result 
I've been working with the path_rotate from custents and experienced the same odd behaviour.
I have a "doombird" which is linked to a rotate_object.
Then there are 24 cubes that act as func_movewall ( one doesn't work as it needs corners to know how to turn.)
An info_rotate to trigger and a func_rotate_train to inform.

All goes well, but as a mentioned earlier, there's always one point that the finc_rotate will counter act anti clockwise. I asked what it could be and then it worked with the 375 degrees function. But I couldn't override that nasty counterpart. So I didn't ask further for the donkey I am.

I had a startpoint on the same place as the endpoint.
func_rotate acts with and without angle.
With angle it turns the func_rotate and without it leads to the next angle.
Still by putting in a func_rotate between the end and the start without angle (or with) couldn�t make the func_rotate correct its position.

I have much ideas but I can't put humpty dumpty back again.
Maybe I should use the hipnotic one. 
Oh... Okay 
How could that scenario be set up in Quoth?
thanks again. 
So Whos Got The Longest Penis 
I guess John Holmes? :)))) 
Nay, Probably This Dude 
Wait For It... 
Give the path_corner you want it to stop at a wait value of -1 (unlike most entities of this kind, not all negative numbers will suffice, -1 is the only value which will work). Then retrigger the func_train with it's original targetname. 
Ok, I'm a little further along with my func_rotate_train testmap, for now I'm just slightly separating the waypoints in space so the bug I described is not an issue. I've run into the problem you describe, that things rotate the "long way round".

Now, I don't think that this is a bug as such. The entity should not be required to take the shortest rotation, because sometimes the long way might be the desirable path, and there's no need to require multiple path_rotates for that. What you need to do is add/subtract 360 degrees to the offending target angle.

As an example, you might have three path_corners with angles:
'90 0 0'
'180 0 0'
'270 0 0'
and you want to make the fourth
'0 0 0' to get it facing the way it began. But if you do that then it will turn the long way round. So then you try
'360 0 0'
and it works.

Until you try to make it a loop, rather than a single motion. Then you run into the same problem between the '360 0 0' and the '90 0 0' path_corner. This is a bit more of a problem, but I have devised a way to make it work...


The essential trick of the map is that from rampath4-rampath6 the rotation is not controlled by the "angles" key, but instead by the "rotate" key, which sets a rotation rate. It does this at the corner where usually the rotation would reach the 360 degree mark. The "rotate" key handles this point more elegantly than the "angles" method does.

Spawnflag 32 is used so that "speed" specifies a 0.1 second travetime rather than 0.1 unit speed travel. This is combined with setting rotate to '0 200 0', to ensure 20 degrees are rotated on each of those segments, enough to put the rotation back into the positive quadrant. If you look closely this actually constitutes a speed-up on that corner, further tweaking of the values could control that. 
thanks for your reply, Preach!
I've been working on the custents and it seems there's a way to get rid of this strange counter clock effekt.
For sofar the doombird turns wrong the first time, everthen it just goes right?!

I'm not familiar with this strange outcome, but it seems a practical way of going.

Drew - take a look at the map, it might be the first part you're looking for. (without the re-ignition of the button) 
my maptester had such a long startpoint betatesting it overgrew its "whatever" length... 
sorry, i will... 
don't try! I already recompiled the map, because it was such a perfect mess,
it killed my real vis time on 5 days.

It had no hurry, so don't worry.
Better to serve you a perfekt map! 
Making U-Turns 
Ok, I'm gonna go back on some of the stuff I posted last time about the func_rotate_train. It turns out there's a function in the hipsubs.qc file which does normalise the angles of the rotation. I think the problem is that 360 is an edge case which is treated badly. The function looks like

while( ang_x > 360 )
ang_x = ang_x - 360;
while( ang_x < 0 )
ang_x = ang_x + 360;

This function is meant to make it so that the multivalued angles are all mapped to a single value. However, '0 0 0' and '0 360 0' both represent the same angle, but are also both left unchanged by the function. Making the function look like:

while( ang_x >= 360 )
ang_x = ang_x - 360;
while( ang_x < 0 )
ang_x = ang_x + 360;

will make it so that each angle has a single representation. Now the simple setup of 4 path_rotates with:
'0 90 0'
'0 180 0'
'0 270 0'
'0 360 0'
will work as you'd imagine.

The way I think the func_rotate_train works is this: while the train is rotating, no normalisation of angles occurs and so the train will rotate in full from the angle it starts at to the one specified. Once the train arrives, the angles on the train(but not the path_rotate) are then normalised to between 0 and 360.

So, as a quick challenge, what happens if you set the angles on the path_rotates to:
'0 450 0'
'0 540 0'
'0 630 0'
'0 720 0'
once the bug is fixed? How about before the bug is fixed? 
guy i�m getting this error and crash joequake when i go to certan zone!

Host_Error: SOLID_BSP with a non-bsp model

any idear?

fuck :\ so close to finish this bastard and now show up errors like this :( 
Corrupted Map 
Looks to be.

Probably removed a door or something but it left behind an invisible point entity holding the door's info.

Your editor hopefully has a method built in to find it, else not you can trawl through the map file to try and find it with notepad++ though that'll be a frustrating way to find it. 
WC3.3 Can Do It 
Tools -> check for errors;

scroll down to the error "entity with no brush info" or whatever;

click it, click "go to error" (and the x/y view will pan to the center of the map)

close the dialogue then finally Press DELETE.

thks guys
was a func_plat :\ i had with no brush becouse i delete all the underground seccion that was made :\

might be in this week scrap speedmap event :) 
GTKR 1.5 And Quake 1 
hey guys...

anyone have a clue as to how to set up GTKR 1.5 for Quake 1 mapping? I'm having problems getting it to set up textures and pointfiles.

damn this was so much easier years ago with qED... :(

GTKR For Newbs 
Put the wad files in your id1 folder. Make sure that GTKR knows where your Quake folder is. Make sure that the pointfile actually exists, and is in the same folder as the map file. 
Preach, Willem, Anyone..... Necros? 
Is there an info_notnull hack or suchlike to allow "statue" type effects, using a single frame of animation from a monster/player model?

i.e. I could have the body of a creature in a map? 
Ok, Ok... 
The traditional way to do it is to create a point entity with:

"classname" "func_illusionary"
"model" "progs/ogre.mdl"
"frame" "23"

You need to make sure that this entity is lower down the list of entities than at least one monster_ogre entity, otherwise the model will not be precached, and you'll get an error. 
Thanks Preach!

So if I wanted to put a player model in I would use player.mdl (or whatever it is) and the precaching thing wouldn't matter because player is always edict no. 1? 
In actual fact, the player model is precached even earlier, as soon as the world spawns. And I seem to remember that even if the qc doesn't precache it, the engine requires the model to be there...So yeah, the player model is nice and safe. 
thanks, Lardarse. 
Hah, and I wrote a bunch of QuakeC to support corpses for "White Room". Damn it! 
The Corpse And The Three Point Clipper 
It's always best to make proper classes for those kinds of things, you don't have to worry about the entity list order, and it's a bit easier to manage the map when things have suggestive classnames.

I've got a light tool question of my own now. I was under the impression that if you gave any entity a "light" key with non-zero value and a "targetname" of some sort, then everything with that targetname would get a switchable lightstyle. However, I've just given this a go with a custom class of entity and the lights are given style 0, which is a bit problematic when you come to toggle them. I can manually set the style to something else on the entity, and things work, but if I set that to 32, and 32 gets allocated elsewhere I'm in trouble.

So my main question is how light.exe decides what is a switchable lightstyle when it comes to custom entities, and if there's a way to deal with this. Any offers? 
"It's always best to make proper classes for those kinds of things, you don't have to worry about the entity list order, and it's a bit easier to manage the map when things have suggestive classnames. "

Well, the way I did it was to add a new spawn flag called "SF_CORPSE" (or something like that). Anything monster with that flag set would spawn in, assume a random death pose and go into a dead state so it didn't take up processor time.

It worked well enough and was definitely manageable. I can see your point about the separate classes though. 
Are definitely underused in Quake - the main problem being model precaches. Corpses aren't a problem because they'll be cached anyway since its almost a given that there's a living version in the map. 
More Lighting Woe 
Further to my post about the switchable lights, I've managed to narrow the problem down to occuring with aguirre's light.exe but not arghlite.exe.

When I give these entities a classname of "light" then they behave as regular switching lights, and are given their own lightstyle. Once I change the classname to "light_tubelight", arghlite treats them no differently, which is what I expect. But aguirre's light stops giving them a unique lightstyle, which causes them to turn off all the lights in the level when they get triggered.

It seems like it's filtering entities by classname before deciding whether the entity in question needs a unique lightstyle. So has anybody run into this, and is there a way to disable this with a command line switch or something? 
Are there any decent front end compilers for Quake similar to Eddi's GUI or Nem's Batch compiler for HL? 
Command Prompt + AguirRe's txqbsp. Its fast, stable and VERY EASY TO USE!!!

(Not as far as I know) 
I'm not sure why but there is **** for Q1 support docs for GTKR 1.5.0. I can't seem to get the compilers configured right, it seems to want to default to Q3 compilers. There's that and Zerowing's gamepacks link is a 404, and there's nothing about how to get GTKR configured for Quake 1. This is frustrating. 
forget it, i just forgot had to remake the .game file. all good. thx for hearing my rant. 
Is a bit like that, Google just throws up lots pages of dead links.

Here's the main mapping place, Inside3d for modding and if there's a dedicated modeling forum then someone let me know.

I will say that there's a lot less timewasters in Quake1. Snarky fuckers in a higher percentage, but there you go. 
Gtkr 1.5.0 And Quake1 
Well I'm now at a loss. I think I need to make a new default_build_menu.xml because the one that comes with 1.5.0 is for Quake 3. I have no idea where to go with this... Google pretty much fails.

Anyone ever set up the build menu and get compiling from Radiant working properly for Quake 1? 
what sort of minimum set up did you stitch together to get Aquire's NehQuake to work without Nehahra present?

Thanks in advance
- Adawanp 
Is it possible to have a "0" gravity in a map ? I think Quoth2 allows it, right ? 
As I remember it needed inside it's own directory a fake packfile that simulated to the engine that Neh was present.

The packfile has a sprite and a map in it, those being the essentials. 
Isn't there already an entity called func_viewthing or somesuch that could be used for statues? Does it require precaching as well? 
you made my work flow today 100.88 percent easier. I was going to follow the pop up error trail to create dummy files otherwise. 
why not give sikkpin's editor a shot? it's very similar to gtkr and it's made for q1 
You are referring I would assume to this thread:

sikkpin's QuakeEd 3.1 (build 102. I will check it out. Thanks for the heads up; cheers :D 
No gravity at all isn't possible, as 0 will default to normal gravity, but you can make the gravity very low. 
Thanks for the info, I was not sure about that point ;) 
Blue Lines 
You can't set the gravity multiplier on individual entities to 0, for the reason lardarse describes. But you can set sv_gravity to 0, which works because cvars can have non-zero defaults. I wouldn't recommend it though, because the player can't properly land, so even when you're against the floor you can't jump. 
So a map with no gravity, like i