manstie wrote:BJ = Blow Job Functions

Blizzard Jass. They are just wrapper functions to real natives. Take a look at this:
Code: Select all
function SetUnitTurnSpeedBJ takes unit whichUnit, real turnSpeed returns nothing
call SetUnitTurnSpeed(whichUnit, turnSpeed)
endfunction
From this, everyone can see that if we removed those two letters B and J, our code would run faster. Most BJs just call a native with the same parameters. BJ functions are useless and should not be used. (Some people use CustomDefeatBJ and similar functions, because they don't understand how they work. Some BJs span a hundred lines. Not many has patience to read them all so they accept the crippled speed at which they run.) And I agree with you, this name choice really
sucks.

manstie wrote:I think an example would be Custom Hero Line Wars, I noticed that the pack horse takes a huge time to turn around and sometimes walks around in a circle to try and turn 180 degrees.
Pack horse's turn rate is 0.01, a value which is not allowed in the world editor by default. Catapults move like this too.
manstie wrote:3ICE, take a look at this; the turn rates from 0.5 to 3 look almost exactly the same, but 0 is different.
Interesting. Will edit this post after testing is done.
EDIT:
Why did you leave in one empty trigger?

Renaming the peasants to their corresponding turn rates was a clever idea.
But 0.0 actually has 0.1! Always double check everything to avoid such errors.
Could have used more between 0.1 and 0.3, probably a 0.25 too.
I hope everyone realizes that this is percentage-based, so 0.1 is 10%, 0.5 is 50% and 3.0 is 300%.
You should have imported my sliding system so we could test how this all affects sliding.
There is still much change going on between 0.5 and 0.9 though.
The {0.01 ; 0.99} interval is important. {0} remains untested and the purpose of {1;3} is not yet understood.
All in all, thank you. Now we all know everything about turn rate.
EDIT2:
manstie wrote:but 0 is different.
There is no 0.