#233 posted by JneeraZ on 2008/06/01 14:33:41
Fribbles, here's what I have for those standard flags:
SF_NotInEasy = 256,
SF_NotInNormal = 512,
SF_NotInHardNightmare = 1024,
I think "DM only" is all of those combined (so, not in any skill level - only DM). It's not a real spawnflag, just a side effect (I think). Or, obviously, not setting any of them will also let the entity appear in DM which is why your DM maps worked.
Not In Deathmatch
#234 posted by Preach on 2008/06/01 14:49:12
Not in deathmatch is 2048, it's a different flag. Quoth adds
coop only = 4096
not in coop = 8192
which are the next two flags. The quoth coop flags don't work quite as efficiently as the built in ones, mostly with regard to precaching things. If all the shamblers in your map had not_in_easy, then the shambler models wouldn't get precached in easy skill. The same can't be said for the coop flags, as it's done by the qc code, not the engine. Hopefully other than that the effects are the same.
Preach
#235 posted by inertia on 2008/06/02 04:13:04
Could you respond to my email pretty please?
One More
#236 posted by Preach on 2008/06/05 19:15:56
Details for the info_trap entity, which is quite complex:
info_trap
This entity allows you to create highly customisable shooters along the lines of the spikeshooter in regular Quake.
targetname
if set, will not start until triggered. Will also turn off when triggered again.
target
info_notnull to shoot towards. Theoretically, you could target monsters or func_trains... This is only the initial direction. If "tracking" is set, projectiles will eventually curve toward the activator.
wait
delay between shots
delay
delay for first shot
speed
determines the speed of the projectile
tracking
0 = None, 1 = Vore style, 2 = Death Lord/Rocketeer style
style
0 = Flying, 1 = Ballistic (Explode on Impact), 2 = Bounce (noise2 sets bounce sound, duration sets fuse time)
mindamage
Defaults to 1. This is the least amount of damage the projectile will cause
maxdamage
If set, damage will be between 'mindamage' and 'maxdamage'. Maxdamage is at least mindamage
dmg
Makes this projectile explode. Higher values increase radius and damage. (Player rockets are 120 for reference)
noise
Sets the sound to play when firing
noise1
Sets the sound to play when hitting
noise2
Sets the sound to play when bouncing (only applicable with style=2)
duration
How long the fuse should burn before exploding
multiplier
This is how much damage will be multiplied when the shooter hits func_breakables. This is so shooters can break func_breakables fast, without needed to be overpowering strong and kill the player in one shot.
flashlight
Whether projectile should glow, 0 = Don't glow, 1 = glow
deathtype
String for obituary message, "was zapped by a trap" outputs "Player was zapped by a trap"
preset
Various preset values for common projectile settings. Preset settings simply replace default settings. Can be overridden selectively.
0 - No preset
1 - Player Rockets
2 - Player Grenades
3 - Player Plasma
4 - Player Nails
5 - Player Super Nails
That Just Leaves
#237 posted by Lardarse on 2008/06/20 21:53:05
func_door_button, which sounds like it's related to doors somehow...
Yup
#238 posted by Preach on 2008/06/21 01:35:17
It's a regular func_button except that it can be attached to a door, so that the pair of them move together. This is basically for making lifts with attached buttons. While the door is in motion the attached button and any other buttons which target the door are disabled.
bind
Set this key to the targetname of the door you wish to attach the button to. If you require several doors, each with their own attached buttons but all of them affected by by the same trigger, then give them a unique targetname and use targetname2 to give all the doors a single name to trigger them with. In all respects besides this key, the func_door_button is identical to a regular button, and the usual keys of wait, delay, target apply.
Interesting
#239 posted by Lardarse on 2008/06/21 05:54:54
You just gave me an idea...
#240 posted by negke on 2008/06/21 16:58:06
So why does Quoth2's ambient_generalpurpose precache that one machine sound instead of drip1.wav as specified? Placing a regular ambient_drip entity somewhere in the map seems to fix it though.
#241 posted by negke on 2008/06/21 19:54:30
And what's with those "lr_strt.wav not precached" warnings every time doors have sounds 0?
Sounding Off
#242 posted by Preach on 2008/06/21 23:03:02
The machine sound is always precached regardless of any entities you add, so that it's first on the list for some protocol message hacking. Not sure why drip1.wav isn't being precached if you've set it in the noise field, I've just made a test map in which this sound works.
I also included a door with 'sounds 0' and I get no warning messages. "doors/ir_strt.wav" is the noise for 'sounds 5', but if that was the cause then it would be precached. You're gonna have to send me the map file with these problems, as I can't replicate them myself.
#243 posted by negke on 2008/06/22 10:31:57
Oh, I didn't know there's a 'sounds 5' option (as well as 'sounds 6' which uses er_strt/stop), especially since none of the sounds are included in the Quoth 1/2 paks.
I'll send you the map file later on.
Sounds To Me
#244 posted by Preach on 2008/06/22 16:42:44
Sounds to me like you're trying to do some hacky stuff with the noise fields to support custom sounds on your door. This isn't necessary in quoth, leave the sounds field at 0, and set noise1, noise2 to the desired effects. They will be precached by the progs if you do this, so you don't have to worry about including them with another entity.
#245 posted by negke on 2008/06/23 08:45:31
Yeah, I'm using sound hacks. Setting the sound fields to 0 did the trick.
As for the ambient_generalpurpose sounds, I don't know what I did apart from moving some entities up the list but for some reason it works now. Odd.
There's
#246 posted by ijed on 2008/06/23 15:14:46
play_sound_triggered as well.
So...
#247 posted by Lardarse on 2008/06/23 15:31:21
How do I make a door button stick to a door that starts open?
Solution
#248 posted by Preach on 2008/06/23 18:37:03
Place the button in line with the starting position of the door(the "closed" position). Not very intuitive, but the buttons don't take account of the spawnflags of the door. In theory this could be changed, but if I did that now, then you'd be put in the position of making a map that works with the current progs, or one that will work with a new one.
Discovered 30 Minutes After Posting
#249 posted by Lardarse on 2008/06/23 18:42:44
New issue: It appears from the documentation that trigger_relay can't use the broadcast flag. Yet, when I rename it to trigger_once (so I can set the notouch flag), the entity mvoes to the origin and becmes unselectable by clicking on it (GTKR 1.5.0). I must be missing something here...
Relay Race
#250 posted by Preach on 2008/06/23 20:17:00
The documentation might be a bit misleading then, because the broadcast flag does work on a trigger_relay, it should work on any of the regular entities used for activating targets. Myself and Kell would like to add that we cannot be held responsible for editor bugs that result from attempting to make a Quoth map : - ).
Preach
#251 posted by ijed on 2008/06/23 20:43:52
Does "cnt" work for all triggers? I mean to autoremove a trigger after n uses.
What, A Cnt?
#252 posted by Preach on 2008/06/23 20:49:43
No, that was only added to trigger_hurt, and I didn't know it was there until now. Adding it to trigger_multiple/all triggers is certainly something to think about for Quoth part 3 though.
While We're At It
#253 posted by negke on 2008/06/23 21:26:09
Finally being able to toggle triggers is something to think about for Quoth part 3!
I Remember
#254 posted by ijed on 2008/06/23 21:57:30
it being a neat little feature, but a bit limited for trigger_hurts; only really good for making health generators.
The multiple targeting features mean the mapper can just killtarget whatever they like, but an internal thing (to the trigger) would make it simpler and avoid potential logic fuck-ups.
It Can Stay A Trigger_relay Then
#255 posted by Lardarse on 2008/06/24 02:45:44
I was wrong about "that just leaves". I've also noticed that info_groupspawn and info_multispawn aren't described in here yet. Because it's not obvious to me: which one is the old func_hordespawn, and what does the other one do?
Coop Switch?
#256 posted by Lardarse on 2008/06/24 05:54:58
The documentation specifies the following:
coop_only = 4096
not_in_coop = 8192
However, my own experiences, combined with examining the source to e1m2quoth tells me that the opposite has been implemented, namely:
not_in_coop = 4096
coop_only = 8192
This could be a serious shock to any mapper that doesn't do lots of testing, and a source of confusion to any mapper that does. Was a definite wtf moment for me...
Info_multispawn And Info_groupspawn
#257 posted by Preach on 2008/06/24 14:48:18
Both of these entities are for spawning multiple monsters(or items are supported now) from a single entity. Combined with corpse removal or judicious killtarget use, this lets you juggle entities in a large map. They differ in the position and way they put the monsters into the map once triggered - the multispawn teleports the monsters in one at a time from the origin of the object; the groupspawn teleports a whole squad in at once.
info_multispawn
Quoting from the old documents on func_hordespawn:
This entity spawns them in one at a time from the same point (it's origin). The entity will only spawn a monster if there is room, and will wait if there isn't. Once it is activated, it will spawn until it has created the amount of monsters specified.
The value for "spawnclassname" and "spawnfunction" should be the classname for the type of monster to be spawned e.g. monster_demon1. Both of these values must be added and both must be the same. Only one type of monster can be spawned form each func_hordespawn.
Specify the number of monsters to spawn with "count". Default is 3.
Key change here, the default value of "count" for an info_multispawn is 1 instead of 3. Note that if you use the old name of func_hordespawn then the default remains 3. This is the only difference between these two entity classes, and the latter only exists for legacy support. So don't include it in entity definition files "just for completeness".
The "wait" key as usual is used to specify the pause between each spawning.
If you want to have different types of monster spawning into a horde, you can use multiple func_hordespawns but you cannot place them on top of each other without risking different monsters getting stuck.
It should be added that only the following keys get transfered from the info_multispawn to the monsters spawned from it:
angles
spawnflags
target
corpse_time
startonground
aflag
For anything more sophisticated(if you're trying some entity hack for example), you need to add the entity in the regular manner.
info_groupspawn
All the info about setting spawnclassname, spawnfunction, count and which keys are transfered is common to both these entities.
The wait key is not used. Instead, the monsters are spawned in a grid starting from the origin of the entity. The entities are spaced "lip" units apart, and the rows are "t_width" units wide in total. So to get a 3x2 block of monsters 64 units apart, set "lip" to "64" and t_width to "192" You may have to experiment a little to get the placement and values correct. (thanks to Kinn for this idea)
|