Подписывайтесь на наш Telegram и не пропускайте важные новости! Перейти

Вопрос SpookyTime Rotation

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
10 Апр 2026
Сообщения
44
Реакции
0
bypass$:
Expand Collapse Copy
public class SpookyTimeRotationMode {
private float tick = 0f;

public Rotation process(SpookyTimeRotationConfig config, Rotation current, Rotation target) {
if (mc.player == null || mc.world == null) return current;

LivingEntity entity = Aura.INSTANCE.getTarget();
if (entity == null) return current;

Vec3d eyePos = mc.player.getEyePos();
float timeVar  = (float) Math.cos((double) System.currentTimeMillis() / MathUtil.randomValue(700L, 834L));
float addyVact = 0.21f * timeVar;

float timeVarZ = (float) Math.cos((double) System.currentTimeMillis() / 1200L);
float addyVacZ = MathUtil.random(0.06F, 0.25F) * timeVarZ;

float timeVarX = (float) Math.cos((double) System.currentTimeMillis() / 750L);
float addyVacX = MathUtil.random(0.20f, 0.48f) * timeVarX;

        Vec3d directionVec = entity.getPos()
                .add(addyVacZ,
MathHelper.clamp(eyePos.y - entity.getY(), 0.0f, 1f + addyVact),
                        addyVacX)
                .subtract(eyePos)
                .normalize();
boolean isAttack = Aura.INSTANCE.isCanAttack();
if (isAttack) tick = 4f;

boolean attack = false;
if (tick > 0f) {
attack = true;
 tick--;
        }

float baseYaw = (float) Math.toDegrees(
Math.atan2(-directionVec.x, directionVec.z)
        );

float basePitch = (float) MathHelper.clamp(
-Math.toDegrees(Math.atan2(directionVec.y, Math.hypot(directionVec.x, directionVec.z))),
-89f, 90f
        );

float waveA = (float) Math.cos(System.currentTimeMillis() / 99.0);
float waveB = (float) Math.sin(System.currentTimeMillis() / 67.0);
float waveC = (float) Math.cos(System.currentTimeMillis() / 12.0);

float randomAttackShift = 0f;
 if (attack) {
randomAttackShift = ThreadLocalRandom.current().nextFloat(-0.8f, 0.8f);
        }

float yawJitter   = (PerlinNoise.noise(0.005F) * 0.25f * waveB) + (waveA * 0.18f) + (waveC * 0.10f);
float pitchJitter = (PerlinNoise.noise(0.003F) * 0.18f * waveA) + (waveB * 0.15f) + (waveC * 0.08f);

float pitchChangeSpeed = MathUtil.random(8,  12);
float yawChangeSpeed   = MathUtil.random(52, 67);

 float newYaw = baseYaw + yawJitter + randomAttackShift;
 float newPitch = basePitch + pitchJitter + randomAttackShift;

newPitch = MathHelper.clamp(newPitch, -90f, 90f);

float lerpedYaw = MathHelper.lerpAngleDegrees(0.85f, current.getYaw(), newYaw);
float lerpedPitch = MathHelper.lerp(0.85f, current.getPitch(), newPitch);

Rotation desired = new Rotation(lerpedYaw, lerpedPitch);
 return current.towardsLinear(desired, yawChangeSpeed, pitchChangeSpeed)
                .normalize(current);
    }
    }

не пойму, вроде бупасс сделан жоский но банит, че не так в ротке?
 
Последнее редактирование:
ну типо отводит прицел влево вправо сильно
Java:
Expand Collapse Copy
public class SpookyTimeRotationMode {
    private float tick = 0f;
    private int hitCount = 0;
    private boolean lastAttack = false;
    private float spinProgress = 0f;

    public Rotation process(SpookyTimeRotationConfig config, Rotation current, Rotation target) {
        if (mc.player == null || mc.world == null) return current;

        LivingEntity entity = Aura.INSTANCE.getTarget();
        if (entity == null) return current;

        Vec3d eyePos = mc.player.getEyePos();
        float timeVar  = (float) Math.cos((double) System.currentTimeMillis() / MathUtil.randomValue(700L, 834L));
        float addyVact = 0.16f * timeVar;

        float timeVarZ = (float) Math.cos((double) System.currentTimeMillis() / 1200L);
        float addyVacZ = MathUtil.random(0.06F, 0.21F) * timeVarZ;

        float timeVarX = (float) Math.cos((double) System.currentTimeMillis() / 750L);
        float addyVacX = MathUtil.random(0.20f, 0.41f) * timeVarX;

        Vec3d directionVec = entity.getPos()
                .add(addyVacZ,
                        MathHelper.clamp(eyePos.y - entity.getY(), 0.0f, 1f + addyVact),
                        addyVacX)
                .subtract(eyePos)
                .normalize();
        boolean isAttack = Aura.INSTANCE.isCanAttack();
        if (isAttack && !lastAttack) {
            hitCount++;
            if (hitCount >= 10) {
                spinProgress = 50f;
                hitCount = 0;
            }
        }
        lastAttack = isAttack;

        if (isAttack) tick = 4f;

        boolean attack = false;
        if (tick > 0f) {
            attack = true;
            tick--;
        }

        float baseYaw = (float) Math.toDegrees(
                Math.atan2(-directionVec.x, directionVec.z)
        );

        float basePitch = (float) MathHelper.clamp(
                -Math.toDegrees(Math.atan2(directionVec.y, Math.hypot(directionVec.x, directionVec.z))),
                -89f, 90f
        );

        float waveA = (float) Math.cos(System.currentTimeMillis() / 67.0);
        float waveB = (float) Math.sin(System.currentTimeMillis() / 45.0);
        float waveC = (float) Math.cos(System.currentTimeMillis() / 12.0);

        float randomAttackShift = 0f;
        if (attack) {
            randomAttackShift = ThreadLocalRandom.current().nextFloat(-0.8f, 0.8f);
        }

        float yawJitter   = (PerlinNoise.noise(0.002F) * 0.15f * waveB) + (waveA * 0.13f) + (waveC * 0.08f);
        float pitchJitter = (PerlinNoise.noise(0.001F) * 0.08f * waveA) + (waveB * 0.11f) + (waveC * 0.05f);

        float currentSwayAmplitude = attack ? 8f : 20f;
        float sway = (float) Math.sin(System.currentTimeMillis() / 130.0) * currentSwayAmplitude;

        float pitchChangeSpeed = MathUtil.random(8,  12);
        float yawChangeSpeed   = MathUtil.random(52, 67);

        float newYaw   = baseYaw   + yawJitter   + randomAttackShift + sway;
        float newPitch = basePitch + pitchJitter + randomAttackShift;

        newPitch = MathHelper.clamp(newPitch, -90f, 90f);

        float lerpedYaw;
        float lerpedPitch;

        if (spinProgress > 0) {
            float step = Math.min(12f, spinProgress);
            lerpedYaw = current.getYaw() + step;
            lerpedPitch = current.getPitch();
            spinProgress -= step;
            yawChangeSpeed = 60f;
        } else {
            lerpedYaw = MathHelper.lerpAngleDegrees(0.85f, current.getYaw(), newYaw);
            lerpedPitch = MathHelper.lerp(0.85f, current.getPitch(), newPitch);
        }

        Rotation desired = new Rotation(lerpedYaw, lerpedPitch);
        return current.towardsLinear(desired, yawChangeSpeed, pitchChangeSpeed)
                .normalize(current);
    }
}

вот так?
 
Java:
Expand Collapse Copy
public class SpookyTimeRotationMode {
    private float tick = 0f;
    private int hitCount = 0;
    private boolean lastAttack = false;
    private float spinProgress = 0f;

    public Rotation process(SpookyTimeRotationConfig config, Rotation current, Rotation target) {
        if (mc.player == null || mc.world == null) return current;

        LivingEntity entity = Aura.INSTANCE.getTarget();
        if (entity == null) return current;

        Vec3d eyePos = mc.player.getEyePos();
        float timeVar  = (float) Math.cos((double) System.currentTimeMillis() / MathUtil.randomValue(700L, 834L));
        float addyVact = 0.16f * timeVar;

        float timeVarZ = (float) Math.cos((double) System.currentTimeMillis() / 1200L);
        float addyVacZ = MathUtil.random(0.06F, 0.21F) * timeVarZ;

        float timeVarX = (float) Math.cos((double) System.currentTimeMillis() / 750L);
        float addyVacX = MathUtil.random(0.20f, 0.41f) * timeVarX;

        Vec3d directionVec = entity.getPos()
                .add(addyVacZ,
                        MathHelper.clamp(eyePos.y - entity.getY(), 0.0f, 1f + addyVact),
                        addyVacX)
                .subtract(eyePos)
                .normalize();
        boolean isAttack = Aura.INSTANCE.isCanAttack();
        if (isAttack && !lastAttack) {
            hitCount++;
            if (hitCount >= 10) {
                spinProgress = 50f;
                hitCount = 0;
            }
        }
        lastAttack = isAttack;

        if (isAttack) tick = 4f;

        boolean attack = false;
        if (tick > 0f) {
            attack = true;
            tick--;
        }

        float baseYaw = (float) Math.toDegrees(
                Math.atan2(-directionVec.x, directionVec.z)
        );

        float basePitch = (float) MathHelper.clamp(
                -Math.toDegrees(Math.atan2(directionVec.y, Math.hypot(directionVec.x, directionVec.z))),
                -89f, 90f
        );

        float waveA = (float) Math.cos(System.currentTimeMillis() / 67.0);
        float waveB = (float) Math.sin(System.currentTimeMillis() / 45.0);
        float waveC = (float) Math.cos(System.currentTimeMillis() / 12.0);

        float randomAttackShift = 0f;
        if (attack) {
            randomAttackShift = ThreadLocalRandom.current().nextFloat(-0.8f, 0.8f);
        }

        float yawJitter   = (PerlinNoise.noise(0.002F) * 0.15f * waveB) + (waveA * 0.13f) + (waveC * 0.08f);
        float pitchJitter = (PerlinNoise.noise(0.001F) * 0.08f * waveA) + (waveB * 0.11f) + (waveC * 0.05f);

        float currentSwayAmplitude = attack ? 8f : 20f;
        float sway = (float) Math.sin(System.currentTimeMillis() / 130.0) * currentSwayAmplitude;

        float pitchChangeSpeed = MathUtil.random(8,  12);
        float yawChangeSpeed   = MathUtil.random(52, 67);

        float newYaw   = baseYaw   + yawJitter   + randomAttackShift + sway;
        float newPitch = basePitch + pitchJitter + randomAttackShift;

        newPitch = MathHelper.clamp(newPitch, -90f, 90f);

        float lerpedYaw;
        float lerpedPitch;

        if (spinProgress > 0) {
            float step = Math.min(12f, spinProgress);
            lerpedYaw = current.getYaw() + step;
            lerpedPitch = current.getPitch();
            spinProgress -= step;
            yawChangeSpeed = 60f;
        } else {
            lerpedYaw = MathHelper.lerpAngleDegrees(0.85f, current.getYaw(), newYaw);
            lerpedPitch = MathHelper.lerp(0.85f, current.getPitch(), newPitch);
        }

        Rotation desired = new Rotation(lerpedYaw, lerpedPitch);
        return current.towardsLinear(desired, yawChangeSpeed, pitchChangeSpeed)
                .normalize(current);
    }
}

вот так?
+20 процентов еще
 
Java:
Expand Collapse Copy
public class SpookyTimeRotationMode {
    private float tick = 0f;
    private int hitCount = 0;
    private boolean lastAttack = false;
    private float spinProgress = 0f;

    public Rotation process(SpookyTimeRotationConfig config, Rotation current, Rotation target) {
        if (mc.player == null || mc.world == null) return current;

        LivingEntity entity = Aura.INSTANCE.getTarget();
        if (entity == null) return current;

        Vec3d eyePos = mc.player.getEyePos();
        float timeVar  = (float) Math.cos((double) System.currentTimeMillis() / MathUtil.randomValue(700L, 834L));
        float addyVact = 0.16f * timeVar;

        float timeVarZ = (float) Math.cos((double) System.currentTimeMillis() / 1200L);
        float addyVacZ = MathUtil.random(0.06F, 0.21F) * timeVarZ;

        float timeVarX = (float) Math.cos((double) System.currentTimeMillis() / 750L);
        float addyVacX = MathUtil.random(0.20f, 0.41f) * timeVarX;

        Vec3d directionVec = entity.getPos()
                .add(addyVacZ,
                        MathHelper.clamp(eyePos.y - entity.getY(), 0.0f, 1f + addyVact),
                        addyVacX)
                .subtract(eyePos)
                .normalize();
        boolean isAttack = Aura.INSTANCE.isCanAttack();
        if (isAttack && !lastAttack) {
            hitCount++;
            if (hitCount >= 10) {
                spinProgress = 50f;
                hitCount = 0;
            }
        }
        lastAttack = isAttack;

        if (isAttack) tick = 4f;

        boolean attack = false;
        if (tick > 0f) {
            attack = true;
            tick--;
        }

        float baseYaw = (float) Math.toDegrees(
                Math.atan2(-directionVec.x, directionVec.z)
        );

        float basePitch = (float) MathHelper.clamp(
                -Math.toDegrees(Math.atan2(directionVec.y, Math.hypot(directionVec.x, directionVec.z))),
                -89f, 90f
        );

        float waveA = (float) Math.cos(System.currentTimeMillis() / 67.0);
        float waveB = (float) Math.sin(System.currentTimeMillis() / 45.0);
        float waveC = (float) Math.cos(System.currentTimeMillis() / 12.0);

        float randomAttackShift = 0f;
        if (attack) {
            randomAttackShift = ThreadLocalRandom.current().nextFloat(-0.8f, 0.8f);
        }

        float yawJitter   = (PerlinNoise.noise(0.002F) * 0.15f * waveB) + (waveA * 0.13f) + (waveC * 0.08f);
        float pitchJitter = (PerlinNoise.noise(0.001F) * 0.08f * waveA) + (waveB * 0.11f) + (waveC * 0.05f);

        float currentSwayAmplitude = attack ? 8f : 20f;
        float sway = (float) Math.sin(System.currentTimeMillis() / 130.0) * currentSwayAmplitude;

        float pitchChangeSpeed = MathUtil.random(8,  12);
        float yawChangeSpeed   = MathUtil.random(52, 67);

        float newYaw   = baseYaw   + yawJitter   + randomAttackShift + sway;
        float newPitch = basePitch + pitchJitter + randomAttackShift;

        newPitch = MathHelper.clamp(newPitch, -90f, 90f);

        float lerpedYaw;
        float lerpedPitch;

        if (spinProgress > 0) {
            float step = Math.min(12f, spinProgress);
            lerpedYaw = current.getYaw() + step;
            lerpedPitch = current.getPitch();
            spinProgress -= step;
            yawChangeSpeed = 60f;
        } else {
            lerpedYaw = MathHelper.lerpAngleDegrees(0.85f, current.getYaw(), newYaw);
            lerpedPitch = MathHelper.lerp(0.85f, current.getPitch(), newPitch);
        }

        Rotation desired = new Rotation(lerpedYaw, lerpedPitch);
        return current.towardsLinear(desired, yawChangeSpeed, pitchChangeSpeed)
                .normalize(current);
    }
}

вот так?
можешь её впринципе добавить после отключения ауры чтобы голова сильно плавала влево вправо плавно + Добавь мультипоинты

левое плечо/право плечо
голова
шея
чуть ниже шее
 
bypass$:
Expand Collapse Copy
public class SpookyTimeRotationMode {
private float tick = 0f;

public Rotation process(SpookyTimeRotationConfig config, Rotation current, Rotation target) {
if (mc.player == null || mc.world == null) return current;

LivingEntity entity = Aura.INSTANCE.getTarget();
if (entity == null) return current;

Vec3d eyePos = mc.player.getEyePos();
float timeVar  = (float) Math.cos((double) System.currentTimeMillis() / MathUtil.randomValue(700L, 834L));
float addyVact = 0.21f * timeVar;

float timeVarZ = (float) Math.cos((double) System.currentTimeMillis() / 1200L);
float addyVacZ = MathUtil.random(0.06F, 0.25F) * timeVarZ;

float timeVarX = (float) Math.cos((double) System.currentTimeMillis() / 750L);
float addyVacX = MathUtil.random(0.20f, 0.48f) * timeVarX;

        Vec3d directionVec = entity.getPos()
                .add(addyVacZ,
MathHelper.clamp(eyePos.y - entity.getY(), 0.0f, 1f + addyVact),
                        addyVacX)
                .subtract(eyePos)
                .normalize();
boolean isAttack = Aura.INSTANCE.isCanAttack();
if (isAttack) tick = 4f;

boolean attack = false;
if (tick > 0f) {
attack = true;
 tick--;
        }

float baseYaw = (float) Math.toDegrees(
Math.atan2(-directionVec.x, directionVec.z)
        );

float basePitch = (float) MathHelper.clamp(
-Math.toDegrees(Math.atan2(directionVec.y, Math.hypot(directionVec.x, directionVec.z))),
-89f, 90f
        );

float waveA = (float) Math.cos(System.currentTimeMillis() / 99.0);
float waveB = (float) Math.sin(System.currentTimeMillis() / 67.0);
float waveC = (float) Math.cos(System.currentTimeMillis() / 12.0);

float randomAttackShift = 0f;
 if (attack) {
randomAttackShift = ThreadLocalRandom.current().nextFloat(-0.8f, 0.8f);
        }

float yawJitter   = (PerlinNoise.noise(0.005F) * 0.25f * waveB) + (waveA * 0.18f) + (waveC * 0.10f);
float pitchJitter = (PerlinNoise.noise(0.003F) * 0.18f * waveA) + (waveB * 0.15f) + (waveC * 0.08f);

float pitchChangeSpeed = MathUtil.random(8,  12);
float yawChangeSpeed   = MathUtil.random(52, 67);

 float newYaw = baseYaw + yawJitter + randomAttackShift;
 float newPitch = basePitch + pitchJitter + randomAttackShift;

newPitch = MathHelper.clamp(newPitch, -90f, 90f);

float lerpedYaw = MathHelper.lerpAngleDegrees(0.85f, current.getYaw(), newYaw);
float lerpedPitch = MathHelper.lerp(0.85f, current.getPitch(), newPitch);

Rotation desired = new Rotation(lerpedYaw, lerpedPitch);
 return current.towardsLinear(desired, yawChangeSpeed, pitchChangeSpeed)
                .normalize(current);
    }
    }

не пойму, вроде бупасс сделан жоский но банит, че не так в ротке?
хз,раставь мультипоинтов мб не будет банить
 
да так,затести как будет работать
Java:
Expand Collapse Copy
public class SpookyTimeRotationMode {
    private float tick = 0f;
    private int hitCount = 0;
    private boolean lastAttack = false;
    private float spinProgress = 0f;

    public Rotation process(SpookyTimeRotationConfig config, Rotation current, Rotation target) {
        if (mc.player == null || mc.world == null) return current;

        LivingEntity entity = Aura.INSTANCE.getTarget();
        if (entity == null) return current;

        Vec3d eyePos = mc.player.getEyePos();
        float timeVar  = (float) Math.cos((double) System.currentTimeMillis() / MathUtil.randomValue(700L, 834L));
        float addyVact = 0.16f * timeVar;

        float timeVarZ = (float) Math.cos((double) System.currentTimeMillis() / 1200L);
        float addyVacZ = MathUtil.random(0.06F, 0.21F) * timeVarZ;

        float timeVarX = (float) Math.cos((double) System.currentTimeMillis() / 750L);
        float addyVacX = MathUtil.random(0.20f, 0.41f) * timeVarX;

        Vec3d directionVec = entity.getPos()
                .add(addyVacZ,
                        MathHelper.clamp(eyePos.y - entity.getY(), 0.0f, 1f + addyVact),
                        addyVacX)
                .subtract(eyePos)
                .normalize();
        boolean isAttack = Aura.INSTANCE.isCanAttack();
        if (isAttack && !lastAttack) {
            hitCount++;
            if (hitCount >= 10) {
                spinProgress = 50f;
                hitCount = 0;
            }
        }
        lastAttack = isAttack;

        if (isAttack) tick = 4f;

        boolean attack = false;
        if (tick > 0f) {
            attack = true;
            tick--;
        }

        float baseYaw = (float) Math.toDegrees(
                Math.atan2(-directionVec.x, directionVec.z)
        );

        float basePitch = (float) MathHelper.clamp(
                -Math.toDegrees(Math.atan2(directionVec.y, Math.hypot(directionVec.x, directionVec.z))),
                -89f, 90f
        );

        float waveA = (float) Math.cos(System.currentTimeMillis() / 67.0);
        float waveB = (float) Math.sin(System.currentTimeMillis() / 45.0);
        float waveC = (float) Math.cos(System.currentTimeMillis() / 12.0);

        float randomAttackShift = 0f;
        if (attack) {
            randomAttackShift = ThreadLocalRandom.current().nextFloat(-0.8f, 0.8f);
        }

        float yawJitter   = (PerlinNoise.noise(0.002F) * 0.15f * waveB) + (waveA * 0.13f) + (waveC * 0.08f);
        float pitchJitter = (PerlinNoise.noise(0.001F) * 0.08f * waveA) + (waveB * 0.11f) + (waveC * 0.05f);

        float currentSwayAmplitude = attack ? 8f : 20f;
        float sway = (float) Math.sin(System.currentTimeMillis() / 130.0) * currentSwayAmplitude;

        float pitchChangeSpeed = MathUtil.random(8,  12);
        float yawChangeSpeed   = MathUtil.random(52, 67);

        float newYaw   = baseYaw   + yawJitter   + randomAttackShift + sway;
        float newPitch = basePitch + pitchJitter + randomAttackShift;

        newPitch = MathHelper.clamp(newPitch, -90f, 90f);

        float lerpedYaw;
        float lerpedPitch;

        if (spinProgress > 0) {
            float step = Math.min(12f, spinProgress);
            lerpedYaw = current.getYaw() + step;
            lerpedPitch = current.getPitch();
            spinProgress -= step;
            yawChangeSpeed = 60f;
        } else {
            lerpedYaw = MathHelper.lerpAngleDegrees(0.85f, current.getYaw(), newYaw);
            lerpedPitch = MathHelper.lerp(0.85f, current.getPitch(), newPitch);
        }

        Rotation desired = new Rotation(lerpedYaw, lerpedPitch);
        return current.towardsLinear(desired, yawChangeSpeed, pitchChangeSpeed)
                .normalize(current);
    }
}

вот так?
да так
 
Назад
Сверху Снизу