This can happen on the "rare" (coding caused) occasion where the old entity is removed,
and A new entity is created in the same place in memory in the same frame.

IF the function that does the remove is the same function that does the create,
put a single wait between the remove and the create to give the action time to kill itself.

If thats not managable, try this variation.
Code:
action follower_action()
{
        wait(1);
        ENTITY* ent = ptr_for_handle(my.skill10);
        var ID = random(100000);
        if(ent)   ent.skill75 = ID;    //pick a skill number unused by parent entity
        while(ent)
        {
                vec_set(my.x,ent.x);
                wait(1);
                if(ent!=NULL)   if(ent.skill75!=ID)   ent = NULL;   //dual IF's required
        }
}



"There is no fate but what WE make." - CEO Cyberdyne Systems Corp.
A8.30.5 Commercial