bug1

VisGroups: Part V

Now I'm going to show you a nasty little 'bug' that Worldcraft has. It really isn't a bug at all - not totally, but you have no doubt heard of Worldcraft's infamous 'map corruption' from time to time. I'm about to show you where some of it comes from and why QBSP can take a long time to run on some maps...

In this picture, we see the teleporter and a 'trigger' brush that I made into a 'trigger_teleport' entity. To do this, I selected the brush, right clicked, and selected Tie To Entity.

Now, Worldcraft's default entity (tied to a brush - a.k.a. a SolidClass Entity in the quake.fgd file) is func_door. Clicking once on the SmartEdit button turns off SmartEdit and you can see the default attributes that Worldcraft assigns to func_door.

But I don't want a func_door though, I want a trigger_teleport; so I go on down the list and select trigger_teleport. It's usually the last item on the list of SolidClass entities.

Uh oh! What's this? Hmmm it looks like Worldcraft didn't take away the func_door's attributes from the list! Well, no matter - I'll just click on the SmartEdit button again and assign a Target to the trigger_teleport entity. I'll use tpd1 for teleport destination #1.

There! Now I have a new entity with the correct information.

Or do I? Let's hit that SmartEdit button again and let's see what happened.

UhOh. Trigger_teleports don't have atributes like that! Speed? Sound? Damage? LIP?!!! What the hell is going on here?!

This is the 'bug' (part of it anyway) that I was referring to earlier. Actually, Worldcraft should clean up after itself, but that probably won't happen until version 2.0 comes out later this year. The other part is something entirely beyond Worldcraft's control. So, since Worldcraft won't clean up after itself, I'll show you how to do the 'laundry'...

First off, if you were making the map, you would need to delete all the 'illegal' fields. To to this takes some experience in knowing what attributes belong to what entities. In this case, a trigger_teleport only has four. For a complete list of what attributes go with what entities, I suggest that you visit The Quake Map Specs in Theory and Practice. (Note: Imaginos is referring to the prior name of The Quake Editors Reference Guide - I removed his link because - hey - you're already there!! -Zaphod) This site contains what the calls 'detailed files' on all the different entities and 'how-to' information on things like making those pesky 'info_intermission' cameras work. Andy Patrizio, the SiteMaster has spent a lot of time making these issues crystal clear and that's a vast improvement over the old Quake Map Specs which were written in id-speak! This site is also contains a Worldcraft-specific section of the Quake entities. It can even be downloaded an browsed offline. How's that for service?

For now, though, we'll just look at what can be assigned to the trigger_teleport entity.

For the most part, there are only two options - the Target (the info_teleport_destination's targetname) and any spawnflags, like Silent or Player Only.

So, highlight the ones you don't need (all of em except 'target - tpd1') and press the Delete button. You'll have to do them one at a time, unfortunately. There is no multi-select available here.

There is another way to do this, however - several, actually, but this is the simplist.

When you first go into the Object Properties box, func_door is selected. Scroll on down to the trigger_teleport entity and turn SmartEdit off (you can tell because the button isn't depressed or highlighted anymore). Then, select the last item on the attribute list and click Delete. The cursor will automatically rise to the next item. Keep hitting Delete until they are all gone. Once this is done, click File/Save - then go back an enable SmartEdit. Now click on Target and enter tpd1.

Let's suppose you didn't do all this though - what could be the harm - right?

Here's what a regular trigger_teleport entry looks like in a .map file:

The 'spawnflags' entry is there because I set the Silent flag in the Flags folder of the Object Properties box.

Now, let's see what it would look like if I hadn't 'cleaned up' Worldcraft's act:

When QBSP gets to this entity, it has a lot of work to do! And if you have a couple of hundred entities in your map (and who doesn't?) you can see why QBSP might have a little problem.

I have seen 'light' statements that ran 20 lines long! This is something that I haven't heard anyone talking about, but it is a real problem!

Of course, you could just take a text editor and edit the .map file manually, save it, and load it back into Worldcraft - which is something you should do anyway. But do it before you start adding VisGroups! Remember that the VisGroups information is contained only in the .rmf (rich map format) file. If you export your (VisGrouped) .rmf file to a .map file and load the .map file back into Worldcraft - the VisGroup information will be gone, gone, gone!

I looked at some of my old .rmf files and found all kinds nasty stuff in them. So it's a good idea to look them over before you get started. Next I'll show you some of the dangers involved in copying/pasting things from one map file to another in Worldcraft.

[ Back | Next ]