Окей. По порядку:
1. Тебе нужно создать моба и добавить его в мир. Делается это классической комбинацией (пример с 1.16.4):
SoulBurstEntity soul = new SoulBurstEntity(world, pos);
world.addEntity(soul);
2. После того, как ты создал моба, тебе нужно сообщить ему, что его задача - следовать за игроком. Делается это двумя основными способами:
a) Создание своей таски подобно тому, как работают животные, когда держишь в руках их любимую еду
b) Хранение где-либо в обновляющемся месте UUID'а твоего моба и назначение ему вектора движения в методе обновления
Тут уже тебе на выбор, но вот тебе пример остановки движения определенного моба из моей практики:
LivingEntity victim = (LivingEntity) ((ServerWorld) world).getEntityByUuid(getVictim());
if (victim != null) victim.setMotion(0, 0, 0);