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: https://www.celephais.net/board/view_thread.php?id=60097
First | Previous | Next | Last
Crisis Averted. 
Reinstalling TyrUtils (which I thought I was using anyways) apparently solved the problem. Sigh. 
Degenerate Edge 
Getting an issue with qbsp:
************ ERROR ************
Degenerate edge at (0.000 0.000 0.000)

However even after seeing nothing suspicious - and moving everything in the area to be sure - it persisted. Some searching revealed it's apparently an issue with the editor accidentally creating a brush with a size of 0 in all dimensions, and that most editors should have built in tools to remove it. How do I go about doing this in Trenchbroom? 
 
Huh, nevermind, the issue is gone after I removed my rock wall to have a crack at making one following the guide ericw posted. 
 
Huh, nevermind, the issue is gone after I removed my rock wall to have a crack at making one following the guide ericw posted. 
Func_Train Won't Damage Players? 
In Quake 1, is it possible to have a func_train damage and kill players when it touches them, without having to push them into a wall for the damage to actually be applied? It seems like it will only kill the player when they've been pushed into another surface. 
 
I'm not really able to test it, but it could be as simple as adding
"touch" "train_blocked"
as a key to the train. 
Not By Regular Means 
There's a hack that *kind of* does that, but it's not entirely reliable.
If you add "touch" "hurt_touch" and a sufficiently high "dmg" value to the func_train, it'll kill the player when he actively touches it. Actively means the player needs to move towards the train in order for the damage to be applied; just standing still will make the train push the player as usual.
Preach probably knows a way to do it more reliably. Depends on what the whole thing is for really, and if there isn't another approach. 
 
@czg

Thanks! That did exactly what I wanted it to do. I didn't know I could just add that keyvalue to the entity. 
How Feasible Are Brush Based Trees In BSP2? 
I made these out of brushes + _phong for a swamp and I was quite happy with the result

http://www.youtube.com/watch?v=ksL2sIViaFs

They are quite detailed and I made sure to fix any non-integer verts that popped up, but how feasible is this for BSP2? Would I be able to fill up a decent sized level with these? 
Umm 
At this point you may prefer a .map to .mdl converter. 
What About As Entities? 
I had made a large group of trees as one func breakable with negative health so they would be like a group of trees with accurate collision. Is having them as ents that way still a problem?

I could convert them to mdl no problem and use skip for collision, it just helped me save on temp ent limit problems that would be caused by too many tree entities in one visleaf 
 
Coming Back To Q1 Mapping [EDIT]
Posted by demorlo [73.138.207.223] on 2017/03/03 16:37:16
I've started to map again and i'm trying to known the current toolset for Q1. I've chosen QuakeSpasm as my engine, since it runs pretty well on Linux. And TrenchBroom seems to be the standard now. However:

- What are the current options for building BSP's?
- What is being used for textures? 
 
Documentation On Parsing MAP Format [EDIT]
Posted by demorlo [73.138.207.223] on 2017/03/03 16:39:26
I've been able to find lot's and lot's of detailed information on the BSP format and how to render it, but the MAP is another story. Does anyone have any good links on the details of the format? Not only Q1, but the differences between Q1, Q2 and Q3 as well. 
 
Ok so I pretty much have the same question I had last time... but this time with doors. Can I make it so that touching a func_door kills the player? 
Use Trigger_hurt? 
You can use a thin trigger_hurt brush assigned with enough damage to kill the player, placed right in front of the door.

Then if you had a button(or another entity/trigger/action)to open the door you would also add a "killtarget" targeting the trigger_hurt brush.

Here's the setup...

door:
targetname = dr1
spawnflag set to "toggle"

trigger_hurt:
targetname = kill_payer_now
Damage(dmg) = 1000

button:
target = dr1
killtarget = kill_player_now

In JACK adding a killtarget to a button is done using "smart edit" and adding a new key/value pair. I don't know about TB and other editors.

You of course can adjust this to suit your needs.

hth's,
- damage_ 
MissBubbles 
You mean, a door that crushes the player while closing? It's the property "dmg". Give it a high value like 1000. 
 
I should have clarified. In my original post about the func_train issue, I wanted the player to be killed by merely touching the train, not the force of the train pushing you into the wall. This was made possibly by using "touch" "train_blocked" as a keyvalue.

I'm trying to replicate that effect but this time with a door. Essentially, I want to create a large spike ( using a func_door ) that acts as a trap that kills the player as if by impalement, instead of being " crushed " aka pushed into a wall by the spike. So the problem is that, even though I'm giving it a high damage value, it isn't doing anything to the player without having another surface nearby to press them into.

If that isn't possible, I could try to redesign the whole thing by using a func_train instead of a func_door I suppose. 
I'm Not Able To Look At The Source Atm So I Don't Know For Sure 
I'm not sure if func_door overwrites the touch function in its setup. I know it does if you give it a message, but it might not if you leave it blank? If it does, you should be able to use the same trick as for the train. 
Oh Never Mind. 
From https://quakewiki.org/wiki/doors.qc
self.touch = door_touch;
It always overrides the touch function, so you can't use that trick.

I guess you could maybe do the whole thing as an info_notnull and add all the door functionality manually? It's not doing anything crazy on setup, you just have to explicitly set its movement and give it sounds and stuff.

Posting on mobile so I can't verify anything... 
 
Or simply a clip brush above the spike? 
MissBubbles 
Then just make your spike inside a trigger_hurt. 
Hacks On Doors 
Hacks on doors tend to be very hard to pull off. Some of the reasons:

� The door spawn function overrides almost all of the functions that you can use for hacks. Not just touch, but also use, think, blocked and th_die

� Every class of SOLID_BSP type has a use function specified in its spawn function, putting up barriers to the idea of creating a SOLID_BSP info_notnull which can be activated like a door

� The function LinkDoors requires all of your doors to have the same classname, so a door made from a hacked func_wall cannot link to regular doors.

� Entities which go through the func_door spawn function get their classname changed to "door", which prevents masquerading of classnames

Nevertheless, I think I still have some tricks up my sleeve, so I'll persist. If I come up with something it'll be posted in the Teaching Old Progs New Tricks thread, but I'll try to post the bad news here if it fails. 
Success 
Here's how to do it:

https://tomeofpreach.wordpress.com/2017/03/05/masquerading-as-a-door/

Here's a test map that demonstrates it:

http://www.quaketastic.com/files/single_player/maps/mask.zip

Obviously this is a bit more complicated than just adding one key to an entity, but I can't see a simpler way. Let me know if it misbehaves. 
Nice 
Obviously way over the top for something as simple as a spike trap, but I'm curious as to which other application this may have. 
 
@Preach Thanks for the help - unfortunately this solution looks a bit over my head, and I'm not sure how I would go about applying it to the way I have my trap set up. I've never messed with these types of entities before. As far as my problem goes, I might just look into other ways to set up the trap itself, as in the positioning of it, not the entity functions. I appreciate you going out of your way to help though! 
First | Previous | Next | Last
You must be logged in to post in this thread.
Website copyright © 2002-2024 John Fitzgibbons. All posts are copyright their respective authors.