make special effects use fixed point rather than double float