#7448 posted by JneeraZ on 2008/05/23 20:20:07
I'm beginning to suspect that I'm the only guy writing tools anymore - aren't I? :)
Willem...
#7449 posted by metlslime on 2008/05/23 21:47:02
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.
P.S.
#7450 posted by metlslime on 2008/05/23 21:48:43
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.
#7451 posted by JneeraZ on 2008/05/23 23:12:48
That's what I want to do, metl. Of course, we'll have to see if my incompetence proves too much for the task.
Skip
#7452 posted by than on 2008/05/24 01:34:42
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.
Willem:
#7453 posted by metlslime on 2008/05/24 03:48:17
here's the thread for newskip, with links.
(part 2 Of Previous Message)
#7454 posted by metlslime on 2008/05/24 03:48:36
#7455 posted by gone on 2008/05/24 16:54:31
are there any up-to-date tuts on lighting for noobs?
Jumping Distances
#7456 posted by Mike Woodham on 2008/05/24 17:41:22
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
-etc
...given a flat surface and decent run up.
You Forgot...
#7457 posted by bal on 2008/05/24 17:44:29
Shambler Lightning Jump Surf.
Cheers Preach
#7458 posted by ijed on 2008/05/24 18:29:34
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.
@spirit
#7459 posted by rudl on 2008/05/24 19:10:58
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
#7460 posted by negke on 2008/05/24 19:21:12
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?
Negke
#7461 posted by Orl on 2008/05/24 20:29:58
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
#7462 posted by negke on 2008/05/24 23:39:06
I tried different angles for all axes. This is likely related to the angle 0/360 thing. All other jumppads work.
Jumppad
#7463 posted by Preach on 2008/05/25 00:05:11
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.
Hmm
#7464 posted by megaman on 2008/05/25 16:12:28
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
#7465 posted by RickyT33 on 2008/05/25 17:39:37
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...
#7466 posted by Preach on 2008/05/25 23:53:28
...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...
Hrrrm
#7467 posted by megaman on 2008/05/26 01:08:16
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
#7468 posted by negke on 2008/05/26 08:08:41
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)?
Yeah
#7469 posted by Preach on 2008/05/26 09:57:41
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.
Yep
#7470 posted by megaman on 2008/05/26 11:39:23
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
#7471 posted by megaman on 2008/05/26 16:05:09
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?
#7472 posted by JneeraZ on 2008/05/26 16:18:44
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!
|