Well actually... If you were to make your own enemy, technically that would work. You could have one object that upon spawning, will choose a random enemy state (read: not spawn an enemy, just go to that enemy's usual states that it uses), and behave accordingly. Then you could have whatever object you need target that one object, thus chasing it despite its appearance and behavior. This is just off the top of my head, though. It may require some A_SetObjectFlags depending on the type of enemy it chooses, but you could just do crawlas as a test.