Right, i'll warn this is a best guess but i'd bet its a close guess. The way it seems to work, is, 12 values.
={a,b,c,d,e,f,g,h,i,j,k,l}
This seems to be broken down into 4 sections. (I'd colour code it but I cant make the forums work!
)
1: a,b,c - this section represents starting position.
2: d,e,f - this represents initial effect (ie, the actual kick).
3: g,h,i - this represents 'correction' or reversal of the effect.
4: j,k,l - this represents the end of the recoil animation - as it says, an 'anihilator impulse' of [time,0,0] is needed to end it, i guess this just tells the engine what is going on and bring the recoil full circle.
Within each of these, the first letter represents time, the second represents recoil along the horizontal, and the third represents recoil along the vertical.
To put this into an actual example, i'll take the pistol recoil you posted.
{0,0,0, 0.08,0.003,0.02, 0.05,-0.003,-0.033, 0.05,0,0}
1: (the start) {0,0,0,
Time: 0
X: 0,
Y: 0
- starts in a neutral/stationary position.2: 0.08,0.003,0.02
Time: 0.08
X: 0.003
Y: 0.02
-Over 0.08 seconds, moves 0.003 backwards and 0.02 upwards3: 0.05,-0.003,-0.033,
Time: 0.05
X: -0.003
Y: -0.033
-Over 0.05 seconds, moves 0.003 in the opposite direction and 0.033 downwards4: (the finishing code) 0.05,0,0}
Time: 0.05
X: 0
Y: 0
-Over 0.05 seconds, returns to neutral/stationaryI can't see anything wrong with lots of 0's, apart from that maybe you ought to put some time values back in, but I still can't explain why the ironsights no longer work. However, did you fiddle with any other values? Ie, the initspeed of the rounds it fires?