I don't know if that causes desyncs. I have read in a few articles, that floating point arithmetic can generally indeed cause desyncs and therefore, often some kind of fixed-point numbers are used in games. However, even if this would be the cause for desyncs in wc3, I see little what we can do about it, since most natives and wc3 internals operate with the real datatype (which is just a 32 bit float)... and we can't really get around that.