Well, it's working, and I'm getting the hang of things. No pretty screenshots yet, though.
And a few things are immediately annoying. I know this is going to sound like whining, but meh... I'd rather whine now, while the code's still very young, then whine later when it'd be too much of a pain to change it.
1. I hate the Vector system. I hated it when it was used to restrict the aim of weapons. I really hate it now. Is it that much harder to simply specify the cone like this?
ConeAngleX
ConeAngleZ
ConeAngleY
ConeWidth
ConeWidthSpread
This isn't hard to turn back into a cone, but it's a LOT EASIER to work with, conceptually speaking, for the vast majority of content developers. If I have the following values:
ConeAngleX=0;
ConeAngleZ=0;
ConeAngleY=0;
ConeWidth=90;
ConeWidthSpread=45;
Then I have a cone that points straight up, has a default angle of 90 degrees, which can be as much as 135 degrees. Simple... straightforward, easy to think about, for anybody who has done any 3D modeling

Turning it back into a vector isn't much math, either.
Pleeeeeeease make this less painful. The current system is almost totally the inverse of how I'd design it, because it's very hard to get the results at all right... without doing a chunk of trig.
2. There needs to be some sort've time-delay available, so that we don't have to use multiples of the same system to get a longer-term spew of particles. IOW, I should be able to specify some values like: "SpawnAmount=10" and "SpawnDelay=10" and every 10 ticks, we'd see another spawn of the same particle event, until 10 Spawns had passed. Trust me... I keep going on and on about timing of events because it's really important. Not having it means that this is pretty much limited to very fast, simple events, because who wants a slow event without event timing controls?
3. I see it forming rings, not really random distributions within the cone. It's following the cone sides, but is not distributing particles in lesser angles properly. Which is great, if I wanted rings, but I want vectored cones that are random within the cone, that I can then apply the other factors to.
4. Because of the use of the Vector system and the fact that Spread operates in a 0-to-variable fashion, it's impossible to have cones that grow evenly all the way around with random variables. Which, in my opinion, makes having the ConeSpread variable completely pointless. Here, let me make a picture of what I think most people are going to want, as opposed to what it does:
This is how a cone defined (let's for the sake of argument, stick with your TDF declarations) as the following should look, if it has the following parameters:
emitVector=0 1 0;
emitRot=90;
See? Instead of rotating the vector 90 degrees from 0, which is what it does now, it splits the difference, giving us a 90 degree cone centered on the desired vector. This is how it should've been done with the weapon aiming-arc stuff, and this isn't any better.
Next, let's look at emitRotSpread. What we should get is something like this, if given a value of 30:
Which is not at all what we are currently getting
5. Last but not least, at least thus far the alpha doesn't seem to work... and AtlasedTexture seems to be the line that causes the crash. And just plain "texturename" doesn't work- I have to append a filename, which means it's not looking in AtlasedTexture properly yet. So, no pretty fireworks yet.