The easiest way I can break it down is as stated: in macro software "assuming berserker software is the same" one bar is 10MS @ stock speed multiplier settings; ex 1.00 So one box or 10 bars is 100MS @,1.00 speed multiplier. If u want to know the MS of a specific line segment with a different speed mulitplier all u need to do is add the total up @ stock speed multiplier settings then divide your figure by the new speed multiplier setting and u will get the new MS speed. Ex. A line drawn one box & 4 bars long is 140MS @ stock multiplier speed. Change the multiplier to say 2.76 and u will do math as followed 140MS ÷ 2.76 multiplier = 50.72463768 or rounded 50.72 MS.
Most important thing that is overlooked is this is just the HOLD times. This means how long a particular button is pressed! If u want a true rate of fire setting say for rapid fire u have to add the dead space between the starting bar on the timeline and where your line starts. In a perfect world u would space your dead space the same length as your line drawn to make the PULLs and RELEASEs the same or 50 50. If u make a RF all u would need to do is divide your figure again by 2 and this will be your actual sps. So the figure in the first paragraph which is 50.72 u would divide it by 2 and u would get 25.36 sps.
If u are making a more complicated rapid fires I'll show u the formula i use to figure it out.
My Ex: Right trigger funtion starts 6 bars in then the RT hold or line drawn is 8 bars long & speed multiplier is set @,1.34. What is the true sps?
Here's my formula in example form; start by adding both dead time "a.k.a" release and hold times together. 8+6= 14 or 140 MS @ stock speed multiplier setting. Now take 140MS ÷ by 1.34"adjusted SM" = 104.48MS. (This is the total run time of the RF from beginning to end before it loops back around.) Now take the dead time or "release" which is 6 bars or 60MS @,stock SM. Next take the 60 MS ÷ by 1.34 "adjusted SM" = 44.78MS. 44.78 is the release time. Now u will subtract 104.48 "total run time" by 44.78 "release time" to get 59.70 MS "RT hold time".
We now have RT held for 59.70 MS, RT released for 44.78 MS, macro run time is 104.48 MS long. So how do we transform this info to actual sps?
First use 1000ms then divide it by total run time 104.48 = 9.57sps.
Now its not 50 50 pull release. We now need to take the pull and release and subtract it by 50 %; 59.70 - 44.78 = 30.08. Now we add the rest up to 100 30.08 + 64.92 = 100 %. So its a 64.92 MS hold to 30.08 MS relesse offset. Sometimes 50% pull to 50% release does not yeild the best / fastest RF speeds. These offsets can produce a more cleaner fire pattern.
This is the math formula I use and it seems to be spot on with other formats of programs that I use.
If I'm wrong with my math feel free to correct me. I do round up to get my figures so this can slightly alter the results.
Its not easy to get real sps features in viking format. It basically deconstruting the timeline to a whole different format.
I feel it would be a nice update if there was a side box that calculated this math together to give the users actual figures when they make a RF or any other macro/runes. This way it will show the hold time, release time, total run time & actual adjusted sps!