#8081 posted by negke on 2008/12/01 21:01:27
8bit.
If the sounds are 22khz etc, they usually aren't played in regular engines, I think.
JPL
#8082 posted by gb on 2008/12/01 21:22:01
space zero G maps, have you looked at Gyro? You can set various physics properties on entities, among them "hovering" which counters gravity IIRC.
http://inside3d.com/showtutorial.php?id=161
http://inside3d.com/showtutorial.php?id=163
http://inside3d.com/showtutorial.php?id=168
JPL
#8083 posted by golden_boy on 2008/12/01 21:26:30
sounds:
Engine needs 44.1kHz sound support, which many have, but your good sounds will stick out among the low quality Quake ones.
Metallic buzzing: Maybe distortion? Digital sounds can't be louder than 0 dB, otherwise you'll get bad clipping. Especially when several sounds come together, like an ambient sound plus monster, player and weapon sounds... the volume adds up, and then you get clipping.
Make any new sounds around -8 or -10 dBFS, often lower, and ambient sounds can be at -20 dBFS or similar.
Quake can't handle too many sounds at the same time, unless you do it right.
gb
And
#8084 posted by gb on 2008/12/01 21:28:27
higher sample rate sounds are normally roughly downsampled at runtime, which costs lots of processing power, and can maybe make your soundcard puke. Theoretically. Unlikely though.
:(
#8085 posted by Spirit on 2008/12/01 21:49:32
I soooo want more engines with Ogg Vorbis support. Ever since I started playing with the soundtrack playing Quake has become so much more atmospheric. And with Quoth and it's *_command you can even change the playing track on-the-fly (well, if the engine supports it).
OK Guys
#8086 posted by JPL on 2008/12/01 22:19:22
Thanks a lot for the advices.
Some of my sounds (and the faulty one) is 44kHz... so I have to make it 11kHz, as well as I have to check if it not too loud (i.e <0dB)...
hmmm, I know what I have to do now ;)
Sounds
#8087 posted by necros on 2008/12/01 23:37:06
if we're talking about a glquake engine or something close (fitzquake) then sounds in higher sample rates like 22 and 44khz, will be automatically downsampled to 11khz. this is actually worse than using an 11khz sound because the automatic downsampling used is bad unlike downsampling in a proper sound editing package.
also, use 16 bit. it's twice as big as 8bit, but 8bit makes for fuzzy sounds unless the sound is very loud like an explosion, but something subtle like wind humming or something will be fuzzy.
Monster Pathing Question
#8088 posted by JneeraZ on 2008/12/02 12:51:57
I'm trying to set it up so that monsters will seek the player out in the level. They don't care if the player is visible, they will just hunt him regardless.
What I currently do is I set the monsters goalentity to the player and set them to walking. Now, that works but monsters like scrags won't change their elevation in pursuit of the goal. I notice that they WILL fly up and down when attacking so ... what can I do to make them Z aware when simply walking towards a goal?
Dont Know Willem, Sorry...
#8089 posted by RickyT33 on 2008/12/02 13:04:08
But that made me think of a query:
In Ijeds 256 brush SpaceHulk map, he used Quoth's "spawn aware" thingy to get the hordes of feinds to run towards the player.
Ijed - was this easy, or did it cause problems - I seem to remember trying to use the spawn aware flag and it not working ... (?)
How Do You Do That?
#8090 posted by ijed on 2008/12/02 13:08:22
In the case of cooperative?
Point of fact, how do you do that anyway? (the first part).
I'm new to writing code, but I tend to think in the right way.
Monsters are never z-aware AFAIK. You could make some sort of hacked entity flag for path points, but it wouldn't work so well.
http://www.inside3d.com/showtutorial.php?id=52
Is how I got z-aware working - maybe it can be applied to the goalentity.
#8091 posted by JneeraZ on 2008/12/02 13:19:59
"In Ijeds 256 brush SpaceHulk map, he used Quoth's "spawn aware" thingy to get the hordes of feinds to run towards the player."
I can do that just fine but I don't want them to get aggressive until they actually SEE the player. So I want them casually walking while moving towards the player.
"Monsters are never z-aware AFAIK."
Well, scrags seem to become z-aware when they get aggressive because then they start moving up/down to find the player. When they're just pathing around, they won't.
Fly AI
#8092 posted by ijed on 2008/12/02 15:03:21
Means they'll try and find a higher altitude than their enemy, but that's about it, I think.
#8093 posted by JneeraZ on 2008/12/02 16:45:10
Sure, but they aren't doing that. If I put a scrag into a hole I've cut in the floor and tell him that I'm his goalentity, he'll move towards me just fine but he'll never come out of the hole. He seems to only move along a 2D plane.
Until he gets attacked, that is. Once aggro'd, he'll change elevation all the live long day.
It Can Be Done.
#8094 posted by Lardarse on 2008/12/02 19:47:17
By setting them along a path, and then instead of pointing them around in a loop (like the ogre in e1m2), you leave the last path_corner pointing nowhere, so that then it will start walking towards the player (there's an enforcer by the second floodgate switch that does this, you may need noclip and notarget to observe this). However, to make scrags z-aware would require changes to the flymonster "walk" code. At which point you may as well find a better way to signify that the monster should track the player.
#8095 posted by JneeraZ on 2008/12/02 19:51:31
OK, how about this : is the z-aware combat movement behavior something that is handled in QuakeC or is that an engine thing?
Z-aware Walking
#8096 posted by necros on 2008/12/02 20:53:49
to get around this with the melee mod i'm working on (since a scragg can be made to follow the player without attacking) i had to introduce a sort of hack.
essentially, it uses velocity to push the scragg up or down. this would look out of place unless you are using the flying monster hack (running movetogoal, resetting position, setting velocity to match movetogoal's new position) but works well because you don't have to worry about z-collision since the engine will handle that on it's own with velocity.
unfortunatly, this is the only fast way to do it since using walkmove(0) to check if a bbox is stuck doesn't work with flying monsters.
you need to make a special exception to keep it from getting stuck on floors though, so you'd need to have it clear the onground flag and then set a delay to prevent it from hitting the floor again.
Source Of The Problem
#8097 posted by Preach on 2008/12/02 21:34:20
I had a look in the engine source, and the relevant lines are:
enemy = PROG_TO_EDICT(ent->v.enemy);
if (i == 0 && enemy != sv.edicts)
{
dz = ent->v.origin[2] - PROG_TO_EDICT(ent->v.enemy) ->v.origin[2];
if (dz > 40)
neworg[2] -= 8;
if (dz < 30)
neworg[2] += 8;
}
I know it's horribly out of context and not everyone here who knows QC will know C. But the main things to take away are:
The dz, which is the intended destination, is bumped up or down if the flying monster is more than 40 units or less than 30 units from the ideal.
The ideal level is calculated from the origin of the monster's enemy. Which is what we all guessed anyway.
If you wanted to be able to use this navigation directly, then you'd need to set enemy to the player as well as goalentity. The important thing then is to make sure that other bits of the code stop treating "enemy" as the indicator that the monster should be aggressive. The most vital place for this change is ai_run, and FindTarget would also need changing, along with everything it calls.
You could define a new entity field, "lifelongenemy" or something, which would be substituted for "enemy" almost everywhere. Then you're free to use "enemy" to dictate hovering height. The reason I say almost everywhere is because you'd want to make sure "enemy" matches "lifelongenemy" once the monster is aggravated.
#8098 posted by JneeraZ on 2008/12/02 21:41:28
Hmm, leveraging "enemy" ... that's something I hadn't considered.
I guess my other option is to not have scrags hunt the player since they are the ONLY monster that will have this problem. :P
#8099 posted by JneeraZ on 2008/12/02 21:42:03
Well, and fish, but in a different way ... but fuck them, scaly little bastards.
Stoneless
#8100 posted by JneeraZ on 2008/12/03 19:39:28
Here's a question for the hive mind ... I remember WAY back in the day seeing screen shots for an upcoming editor called Stoneless. Anyone know what became of it or if the web site is archived somewhere?
Willem, Ask Mr.frib
#8101 posted by spy on 2008/12/03 20:06:44
About Stoneless
#8102 posted by spy on 2008/12/03 20:07:25
As I Recall
#8103 posted by lurker on 2008/12/03 20:10:06
The Stoneless website didn't contain much, but the editor itself was released.
ftp://ftp.fu-berlin.de/pc/games/idgames2/utils/level_edit/editors/stls101.zip (1.2 MB)
Willem
#8104 posted by RickyT33 on 2008/12/03 20:14:46
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.
You said this to me a while ago when someone was talking about lights. I would really like to know what the resultant light entity would look like in .map format.
Could you tell me :) ?
You see I dont know how the Toetag lighting system works, but I need to reduce the amount of lights in my map (tyrlite wont work on maps with more than 2048 entities, as far as I can tell, and I have an excessive number of lights in my map, many sourced lights have 2 entities or more next to them)
Now I dont know what
"_light" "250 64 150 300"
means, but I do know what
{
"classname" "light"
"light" "300"
"wait" "1.5"
}
means.
When I start using the "delay" key I get confused. I like the effect that Tyrlite gives from "delay" "2", but it seems to produce a massive radius of minlight, which I dont really want......
So I would like to see what
"_light" "250 64 150 300"
looks like in game, and in .map format.
Please help!
#8105 posted by JneeraZ on 2008/12/03 20:46:37
It's basically saying "give me a 250 strength light for a radius of 64, and a 150 strength light with a radius of 300".
Basically just 2 light entities for the price of one. The only technical difference is that the second light doesn't start falling off until the radius of the first light is exhausted (so it fades starting at 64 and ending at 300).
|