I suppose we are talking about SEFE's script, so:
1) the missile is visible. If you want a bigger one, make the script
fire a maverick !
2) If you use ECP, a more visible smoke trail is added to standard BIS
missile. If you're using a custom missile, you could use a function called
every cycle, like this (trail.sqf):
drop ["cl_basic", "", "Billboard", 5, 4, [0,-.80,0], [0,0,0], 2, 0.8925, 0.7, 0, [0.25,1.75,0], [[0.7,0.7,0.7,0.4]], [1,1], 5, 0, "", "", _this];
drop ["cl_basic", "", "Billboard", 5, 4, [0,-1.2,0], [0,0,0], 2, 0.8925, 0.7, 0, [0.25,1.75,0], [[0.7,0.7,0.7,0.4]], [1,1], 5, 0, "", "", _this];
drop ["cl_basic", "", "Billboard", 5, 4, [0,-1.6,0], [0,0,0], 2, 0.8925, 0.7, 0, [0.25,1.75,0], [[0.7,0.7,0.7,0.4]], [1,1], 5, 0, "", "", _this];
drop ["cl_basic", "", "Billboard", 5, 4, [0,-2,0], [0,0,0], 2, 0.8925, 0.7, 0, [0.25,1.75,0], [[0.7,0.7,0.7,0.4]], [1,1], 5, 0, "", "", _this];
true
call this with this syntax: _Missile call trailFunction,
inside SEFE's script, where trailFunction is the function you defined
in the init.sqs as
trailFunction = preProcessFile "\missionpath\trail.sqf"
3) use a low speed missile like the "AT3" or a rocket. Or a custom
one. Since this script is not written with setVelocity, the missile
acceleration and max speed are completely controlled by OFP engine.
And about an heli being able to dodge it, input a very little _LockAngle
when you exec the script itself.