No funciona asi , los comodines como dices no están reflejados en la ayuda del plugin ftp , no todo es extrapolable de una accion a otras , tienes que adaptarte a lo que te ofrece el plugin y codificar sobre eso.
Una forma seria utilizando los atributos de la tabla ftp.list , tienes la opción "type" que te dice si es un archivo o una carpeta y a partir de hay codifica , te dejo este script basado en el tuyo pero no lo he probado ni nada, deberás adaptarlo a tu código:
Espero que con esto soluciones tu problema 
Aki tienes un ejemplo de ftp que hice hace tiempo
http://dl.dropbox.com/u/27007640/Plugins/xFtp.apz
Una forma seria utilizando los atributos de la tabla ftp.list , tienes la opción "type" que te dice si es un archivo o una carpeta y a partir de hay codifica , te dejo este script basado en el tuyo pero no lo he probado ni nada, deberás adaptarlo a tu código:
path=_DesktopFolder; -- path de descarga
filename = tblFiles[i].Name;-- nombre de tu archivo
Type = tblFiles[i].Type;-- comprobacion de si es file o folder
if (Type == 1)-- si es un archivo palante...
FTP.Download(filename,path.."\\"..filename);-- descragamos archivos en el path
err = Application.GetLastError();
if err == FTP.OK then-- si no hay error...
Dialog.Message("Ok", "Descargado con exito", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);--msg
else-- si hay error...
Dialog.Message("error",_tblErrorMessages[err] , MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);-- msg
end
else -- type == 0 por lo tanto es una carpeta
FTP.ChangeDir(filename);-- nos posicionamos en la carpeta
if not Folder.DoesExist(path.."\\"..filename) then-- si la carpeta no esta en nuestro sistema , la creamos...
Folder.Create(path.."\\"..filename);--creamos...
end
tbFiles = FTP.ListFiles();-- obtenemos tabla con los archivos del directorio
for i = 1, tbFiles.Count do-- loop
f = tbFiles[i].Name;-- nombre del archivo
FTP.Download(f,path.."\\"..f);-- descarga
err = Application.GetLastError();
if err ~= FTP.OK then-- si es diferente hay error en la descarga
Dialog.Message("error",_tblErrorMessages[err] , MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);--msg error
break;-- paramos el loop
end
end
if err == FTP.OK then -- si no hay error(importante...fuera del loop)
Dialog.Message("Ok", "Descargado con exito", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
end
end

Aki tienes un ejemplo de ftp que hice hace tiempo

http://dl.dropbox.com/u/27007640/Plugins/xFtp.apz