Welcome on MasterOf13FPS! MasterOf13FPS

Register today or sign up if you are already a member and never miss any cool content again :)

Killaura-Util: Block-Evasion wie in Suicide & Range-Maximierung

MasterOf13FPS

Administrator
Staff member
Administrator
MasterOf13FPS
Joined
Jul 11, 2020
Messages
0
Reaction score
25
Points
0
Ein bisschen Source für die Leute, die ihre Killaura verbessern wollen.

Diese Methode sucht den nächst besten Vector auf der Hitbox, um die Range zu maximieren und versucht gleichzeitig einen Punkt zu finden, wo die Killaura durch keine Blöcke schlägt.

Das Ganze sieht, bei richtiger Implementierung, wie folgt aus:

Achtung! Der Source ist über ein Jahr alt (stammt aus Despair) und ist daher nicht optimiert.

Ich selber habe in meinen alten Clients die Precision auf ca 10 ~ 20 gestellt, kann aber jeder für sich entscheiden.

[HIDE]
Code:
public static Vec3 resolveBestHitVec(Entity enty, int precision, boolean evadeBlocks) {

    try {
        Vec3 headVec = mc.thePlayer.getPositionEyes(1.0f);
        Vec3 bestHitVec = new Vec3(Double.MAX_VALUE, Double.MAX_VALUE, Double.MAX_VALUE);

        int offset = precision / 3;

        float height = enty.getEyeHeight() / precision;
        float width = (enty.width * 0.5f) / offset;

        for (int offsetY = 0; offsetY <= precision; offsetY++) {
            for (int offsetX = -offset; offsetX <= offset; offsetX++) {
                for (int offsetZ = -offset; offsetZ <= offset; offsetZ++) {

                    Vec3 possibleVec = new Vec3(enty.posX + width * offsetX, enty.posY + height * offsetY,
                            enty.posZ + width * offsetZ);

                    if (evadeBlocks) {
                        MovingObjectPosition movingObj = mc.thePlayer.getEntityWorld().rayTraceBlocks(headVec,
                                possibleVec);
                           
                        if(movingObj != null) {
                            continue;
                        }
                           
                    }
                    if (headVec.distanceTo(possibleVec) < headVec.distanceTo(bestHitVec)) {
                        bestHitVec = possibleVec;
                    }
                }
            }
        }

        if (bestHitVec.xCoord == Double.MAX_VALUE) {
            bestHitVec = null;
        }

        return bestHitVec;
    } catch (Throwable t) {
        t.printStackTrace();
        return enty.getPositionVector();
    }
}
[/HIDE]
LG Tru3.
 
Last edited by a moderator:
@Tru3 kannst du die Methode:"getPositionEyes" mal rein posten habe die nicht
 
Thank you. More posts like this, please :)
 
@Tru3 kannst du die Methode:"getPositionEyes" mal rein posten habe die nicht
Den Vec3, den du aus der Methode getPositionEyes bekommst, kannst du auch selbst wie folgt bekommen:
Code:
Vec3 headVec = new Vec3(mc.thePlayer.posX, mc.thePlayer.posY + mc.thePlayer.getEyeHeight, mc.thePlayer.posZ);
 
Den Vec3, den du aus der Methode getPositionEyes bekommst, kannst du auch selbst wie folgt bekommen:
Code:
Vec3 headVec = new Vec3(mc.thePlayer.posX, mc.thePlayer.posY + mc.thePlayer.getEyeHeight, mc.thePlayer.posZ);
Danke
 
Ein bisschen Source für die Leute, die ihre Killaura verbessern wollen.

Diese Methode sucht den nächst besten Vector auf der Hitbox, um die Range zu maximieren und versucht gleichzeitig einen Punkt zu finden, wo die Killaura durch keine Blöcke schlägt.

Das Ganze sieht, bei richtiger Implementierung, wie folgt aus:

Achtung! Der Source ist über ein Jahr alt (stammt aus Despair) und ist daher nicht optimiert.

Ich selber habe in meinen alten Clients die Precision auf ca 10 ~ 20 gestellt, kann aber jeder für sich entscheiden.

Code:
public static Vec3 resolveBestHitVec(Entity enty, int precision, boolean evadeBlocks) {

    try {
        Vec3 headVec = mc.thePlayer.getPositionEyes(1.0f);
        Vec3 bestHitVec = new Vec3(Double.MAX_VALUE, Double.MAX_VALUE, Double.MAX_VALUE);

        int offset = precision / 3;

        float height = enty.getEyeHeight() / precision;
        float width = (enty.width * 0.5f) / offset;

        for (int offsetY = 0; offsetY <= precision; offsetY++) {
            for (int offsetX = -offset; offsetX <= offset; offsetX++) {
                for (int offsetZ = -offset; offsetZ <= offset; offsetZ++) {

                    Vec3 possibleVec = new Vec3(enty.posX + width * offsetX, enty.posY + height * offsetY,
                            enty.posZ + width * offsetZ);

                    if (evadeBlocks) {
                        MovingObjectPosition movingObj = mc.thePlayer.getEntityWorld().rayTraceBlocks(headVec,
                                possibleVec);
                           
                        if(movingObj != null) {
                            continue;
                        }
                           
                    }
                    if (headVec.distanceTo(possibleVec) < headVec.distanceTo(bestHitVec)) {
                        bestHitVec = possibleVec;
                    }
                }
            }
        }

        if (bestHitVec.xCoord == Double.MAX_VALUE) {
            bestHitVec = null;
        }

        return bestHitVec;
    } catch (Throwable t) {
        t.printStackTrace();
        return enty.getPositionVector();
    }
}
LG Tru3.
Wie benutzt man die?
 
Wie benutzt man die?
Die Methode gibt einen Vector zurück und zu dem musst du dann die Rotation berechnen.

Das sollte dann so ungefähr aussehen:
Code:
Vec3 bestHitVec = resolveBestHitVec(entity, precision, evandeBlocks);

float[] rotations = getRotationToVec3(bestHitVec);

Das Array "rotations" beinhaltet, dann die Winkel, die du für die Killaura benutzen solltest.
 
was ist diese getRotationToVec3 Methode? Also könntest du mal den Code reinschicken
Die Methode getRotationToVec3 macht genau das was der name sagt und nein ich sende den Source dafür nicht rein, da wenn du eine Killaura in deinem eigenem Client hast, solltest du such verstehen wie sie funktioniert.

Kleiner Tipp an dich:
Damit deine Killaura überhaupt richtig auf Servern mit einem Anticheat funktioniert wird eine gewisse Methode immer wieder aufgerufen. Diese musst du nur kopieren und entsprechend anpassen.
 
Die Methode getRotationToVec3 macht genau das was der name sagt und nein ich sende den Source dafür nicht rein, da wenn du eine Killaura in deinem eigenem Client hast, solltest du such verstehen wie sie funktioniert.

Kleiner Tipp an dich:
Damit deine Killaura überhaupt richtig auf Servern mit einem Anticheat funktioniert wird eine gewisse Methode immer wieder aufgerufen. Diese musst du nur kopieren und entsprechend anpassen.

WIe soll man die methode denn finden?
 
Ich hitte only Head....woran liegt das?
 
shape1
shape2
shape3
shape4
shape5
shape6
Back
Top