Hello ,

A few thing to say in no good order
First - I have told you not to check if(you) as a Boolean. YOU' will ALWAYS have a value, if c_scan finds nothing YOU still has a value. If you do no want to compare pointer 'if(you ==player), then set YOU=0; before the scan.
Next - you are not setting IGNORE_ME, I realize the SCAN_FLAG2 may be used to stop the ME ent from being found and return into the YOU pointer. However if the monster has flag2 set then infact it will find itself and return it's own pointer into the YOU pointer.

Code:
//before loop...
var im_on_path=0;
// in loop................................
you=NULL;
c_scan(my.x,my.pan,vector(360,0,750),SCAN_ENTS | SCAN_FLAG2 | IGNORE_ME);

      if (you && !im_on_path)
      {
        im_on_path=1;
         ...

         ent_movepath(me, "path_000", 2, 1+2);

         ...
      }



Next paths in wed have 2 names, one name is this WED list name and it's not important , the second name is it's real name. IN WED -> click path to select it, -> look at it's properties tab -> ignore name in path box, check name in NAME bow.
Make sure you have the right path name E1513 in the ent_movepath function can only be caused by -> the ME pointer is invalid or the path name is ivalid.

Last - Start a new level -> copy the path however put it in a empty hollow cube, -> add the player and monster to this new test level -> include you script with the actions for player/monster. Run you'r test in a big empty level so you can see what the heck happens to the monster when the player comes near.

Final - Always test new code and re-actions in small mostly empty test-level. If it works in the test then you can add it to a larger real level. Your game level is for play testing not for learning by trail.

Have fun
Mal

Last edited by Malice; 10/29/15 22:37.