Ok, I just finished giving the animevents system a good thrashing. It's basically now useable for what it was intented for, a customizable way to attach sounds to your model's animations. It's very powerful and pretty userfriendly. I suggest you check it out.
For those who are keeping score at home, here's the technical details of what I fixed/added:
- dynamic (custom) animevent sounds now work for all players. These are sounds that depend on the individual's sound files (taunts, pain grunts, etc.)
- Player models can now use per model (individualized) animevent.cfgs. This means that you can now customize your player to make the right sounds at the right times.
- In case where the individualized model animevents is missing, the default animevent.cfg for that model's skeleton will be used.
If anyone wants a tutorial on how to create your own animevents.cfg, free free to ask.
I should add that animevents can also do animation linked special effects. So, if you want your character to have burning hands or glowing eyes while bowing, you can.
Originally posted by razorace
I should add that animevents can also do animation linked special effects. So, if you want your character to have burning hands or glowing eyes while bowing, you can.
that sounds very promising.
is there anyway to assign an ambient sound to a model? for instance, vader's respirator?
Hmmm, not really right now, but that's a good idea. I'll check into how much work it would take to do.
Ok, I looked things over and it looks like I can do it. I'll give it a shot and will see what happens.
Would it be possible to associate a model with an animation? Like, stomping a pie into someone's face? Just a crazy little idea here..
Sure, it's possible, but it would be hard to do and the animation would have to be in the _humaniod.gla file.
Also, I've got the ambient sound system working. I'm currently in the beta testing phase.
I've got it set up so you can have two seperate ambient sounds (allthou this does translate into 2+ if you use the random setting) with seperate attributes. There's one "torso" (in the UPPEREVENTS set) and one "legs" ( ambient sound (They aren't actually attached to the torso and legs, it's just for the animevent.cfg)
The Format:
AEV_AMBIENT intervals randomfactor Channels soundpath randomlow randomhi chancetoplay
AEV_AMBIENT : The AMBIENT sounds tag.
intervals: The base time between ambient sound attempts (in msecs)
randomfactor: The max -/+ random factor to the base time (in msecs). 0 = no random factor
Channels: The sound channel that this ambient is played on.
soundpath: The location of the sound file. There are two ways of doing this:
A. direct sound path link (sound/weapons/saber/saberspinoff.wav)
B. a dynamic sound pointer. This determines the sound file at run time based on your player model. This for times when you want your player to use one of the standard model sounds pain25.mp3, taunt1.mp3, etc. OR when you want your animevent to not be specific to a certain model. To use these, just type in the name with a "*" at the beginning (like *taunt1.mp3)
For both types you can also do a range of given sound files with names seperated by a number (taunt1/taunt2) quickly and easily. Just replace the number with a "%d" and use the randomlow randomhi fields to set the upper and lower limits of the number. (*gloat%d.mp3)
randomlow: Sets the lower limit to the random file selection.
randomhi: Sets the higher limit to the random file selection.
chancetoplay: Determines the chances (in percentage) of playing a given sound when it is suppose to. 0 = 100% change of playing
0-99 are the only valid entries. Don't try anything "clever" by setting it to 1000 or something.
Example:
AEV_AMBIENT 5000 0 CHAN_AUTO *taunt%d.mp3 1 3 0
And, yes, it works great with Vader. In fact, it works so good that the rest of the sounds will need to be rearranged to get rid of the old jump/lang = breath hack.
In addition, since this is so customizable, I'm going to suggest that we open up the floor for everyone to submit custom animevents.cfg for the various player models, that way people can get maximum exposer to this neato feature right out of the gate.
I should also add that the ambient does have a minor flaw. The ambient timing isn't transmitted between players so those sounds will not be in sync. I don't think this is a biggie.
That's interesting. How hard is it to make a animevent.cfg?
Darth Vader with breathing sounds...cool. :cool:
It's just a text file. However, you'll probably need/want to use modview, it lets you try about the animations and helps you set up the animation events right in the program. It (modview) won't work for my ambient since it wasn't programmed for it and because the ambients aren't linked to the animations.
so, do we just add something like your example:
LOWEREVENTS
{
AEV_AMBIENT 5000 0 CHAN_AUTO *taunt%d.mp3 1 3 50
}
to the end of that model's animevents file? or am i missing something...
edit: nm, i get it! although i made vader sound like he just ran a marathon. >_< time to up the delay. :D
If you're doing this just for vader, I suggest you did up a bigger variety of Vader breathing noises. I was only able to find one "normal" breathing sound and it didn't sound very right.
In addition, I'd rename the breathing sounds to something different than taunt so you can use the taunt sounds for something else (like taunting!)
Maybe we could get permission from the original authors to put him in OJP skins.
which vader were you using? the "jump1" sound for cheshire_vader sounds regular to me.
That one. But it seems too uniform. I think there needs to be like two or three different "normal" breathing samples to make it sound just right. :)
Originally posted by razorace
That one. But it seems too uniform. I think there needs to be like two or three different "normal" breathing samples to make it sound just right. :)
yeah, i was thinking about that... maybe even just editing the pitch of that sound to have 3 slightly different versions would work for variation. if i knew what program was good for that sort of thing i would try it myself.
Hey there, I tried this by putting this animevents.cfg in a pak with a jedi_kdm folder in it:
include _humanoid
LOWEREVENTS
{
AEV_AMBIENT 5000 1000 CHAN_AUTO *breath.mp3 0 0 0
}
Unfortunately, I just get an "UNKNOWN ANIM AEV_AMBIENT" error when I fire up single player. What am I doing wrong?
it won't work in SP. I'm sorry that wasn't obvious.
Since this has been bumped back up, I'll just restate that this is one of my favorite features you added Razor. You really opened up the use of the animevents.
Hehe, I feel like such an idiot. I spent over an hour trying to make it work.
Any chance of this working in single player sometime? Or is that just impossible?
It's basically impossible without the SP source code.
However, once the Co-Op gametype is finished, it won't matter anyway.