Correct me if I am wrong, but "specialeffect" only displays an effect (in this case, the EF_FREEZED animation), it doesn't actually cause the effect.
The first script (the stuff inside the {}) in autobonus is always the effect (+10 def), and the second script is always the animation, that's what it says in the documentation.