Hola jota, bienvenida a CristaLab,

aqui tienes el código corregido y funcional en AS2 y FP7:
Código :
/*
Adaptado a AS2 y FP7 por MorphX.
*/
var mioreja:Object = new Object();
var level = 0; //En AS2 es NECESARIO inicializar las variables.
onMouseMove = function()
{
var nuevo:MovieClip;
var ult:MovieClip;
ult.play();
nuevo = estela.duplicateMovieClip("estela"+level, level);
with (nuevo)
{
_x = _root._xmouse;
_y = _root._ymouse;
gotoAndStop("inicio");
}
ult=nuevo;
++level;
};
Mouse.addListener(mioreja);
estela._visible=false;
Mouse.hide();
Ahora te lo explico

veras en AS2 es bastante interesante que se declaren las variables antes de usarlas, dado que de ese modo puedes aprovechar mejor los recursos de tu maquina, y aparte de esto, la inicialización de variables es requerida, dado que si no inicializamos se considera una referencia a una instancia ya creada, algo parecido a los punteros en C++ o a las referecias en Java (solo PARECIDO eh?

)
Y nada màs, la variable level estaba declarada implicitamente, pero NO estaba inicializada a valor alguno, de modo que al usarla obtenias un bonito NaN, en lugar de un numero de nivel

Saludos y suerte...