You can\'t use fractions in your timers, mIRC will just take them as being equal to an immediate execution (0 second delay).
If you want a half-second delay you have to use the -m switch which makes the timer a millisecond timer, so your 0.5 would have to be changed to 500
There are many other parts of this code which, while they might work, do not follow mIRC\'s scripting format, so might not work with various versions of mIRC as Khaled/helpers find and repair various bugs.