You’re deleting the spawn object, and then creating something at it’s position. But it’s deleted, so GDevelop doesn’t know where to place it.
Every time a rat is created, create an EnemyVision object for the rat and position it at the rat’s position (not the deleted spawn object).
I’d recommend you use the Sticker extension and stick the EnemyVision to the rat (here’s an older post on how to do this). As the rat moves and rotates, so does the EnemyVision that’s attached to it. No need to find the EnemyVision linked to a rat and reposition it.