Help with triggerbot delayed

Posts 1–5 of 5 · Page 1 of 1
Help with triggerbot delayed
So I made this triggerbot and I'm having some problems with it. I can't find any problems in the code and it works fine its just that there is a big delay. This is a class which gets called at the top "Dim triggered As New Triggerbot" then can be activated below using triggered.start(set delay) even when the delay is set to 0 there is still a noticeable delay in the program. I need someone to look at the code as I can't post it here.(security reasons). Please reply if you would be willing to have a look!
Post your trigger bot function. There's no risk in doing that because I doubt you have some secret triggerbot code.
Code:
Public Class Triggerbot
    Public Declare Sub mouse_event Lib "user32" Alias "mouse_event" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)
    WithEvents Timer1 As Timer = New Timer

    Public Player_Base_Pointer As Integer = &HAA5834   ' client.dll
    Public Entity_Base_Pointer As Integer = &H4AC8014  ' client.dll
    Public Loop_Distance As Integer = &H10
    Public Crosshair_ID_Distance As Integer = &HAA70
    Public Team_Distance As Integer = &HF0

    Private Base_Client As Integer
    Private Base_Engine As Integer
    Private Player_Pointer As Integer
    Private Entity_Pointer As Integer

    Private Crosshair_Still_On As Boolean = False
    Private Delay_After_Hover As Integer = 0
    Private Process() As Process

    Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
        Dim Entity_In_Crosshair_Base_Pointer As Integer
        Dim In_Crosshair_Entity_ID As Integer
        Dim Entity_Team_Number As Integer
        Dim My_Team_Number As Integer
        If Delay_After_Hover = 0 Then GoTo nexter
        If Crosshair_Still_On = False Then
            pause(Delay_After_Hover)
        End If
nexter:
        ReadProcessMemory(Process(0).Handle, Base_Client + Player_Base_Pointer, Player_Pointer, 4, 0)

        ReadProcessMemory(Process(0).Handle, Player_Pointer + Crosshair_ID_Distance, In_Crosshair_Entity_ID, 4, 0)
        Form1.TextBox1.Text = In_Crosshair_Entity_ID
        If In_Crosshair_Entity_ID > 0 And In_Crosshair_Entity_ID < 69 Then

            ReadProcessMemory(Process(0).Handle, Base_Client + Entity_Base_Pointer + ((In_Crosshair_Entity_ID - 1) * Loop_Distance), Entity_Pointer, 4, 0)
            ReadProcessMemory(Process(0).Handle, Entity_Pointer + Team_Distance, Entity_Team_Number, 4, 0)
            ReadProcessMemory(Process(0).Handle, Player_Pointer + Team_Distance, My_Team_Number, 4, 0)
            Form1.TextBox1.Text = My_Team_Number & " " & Entity_Team_Number
            If Not Entity_Team_Number = My_Team_Number And Not Entity_Team_Number = 0 Then
                Crosshair_Still_On = True
                Click_With_Random()
                GoTo last
            End If
        End If
        Crosshair_Still_On = False
last:
    End Sub

    Private Sub Click_With_Random()
        mouse_event(&H2, 0, 0, 0, 1)
        Threading.Thread.Sleep(Random(15, 25))
        mouse_event(&H4, 0, 0, 0, 1)
    End Sub

    Private Function Random(ByVal Min As Integer, ByVal Max As Integer) As Integer
        Static Generator As System.Random = New System.Random()
        Return Generator.Next(Min, Max)
    End Function

    Private Sub pause(delay As Integer)
        Dim a As String = DateTime.Now.AddMilliseconds(delay)
        Do Until DateTime.Now > a
            My.Application.DoEvents()
        Loop
    End Sub

    Public Sub Start(Delay As Integer)
        Timer1.Interval = 1
        Delay_After_Hover = Delay
        Base_Client = GetBaseAdress("csgo", "client.dll")
        Process = System.Diagnostics.Process.GetProcessesByName("csgo")
        Timer1.Start()
    End Sub

    Public Sub Stop_It()
        Timer1.Stop()
    End Sub





    Public Declare Function ReadProcessMemory Lib "kernel32" (ByVal Handle As Integer, ByVal Address As Integer, ByRef Value As Long, ByVal Size As Long, ByRef BytesWritten As Long) As Long


    Public Function GetBaseAdress(Process As String, BaseDLL As String)
        Dim Proc() As Process
        Dim base As Integer = 0
        Proc = System.Diagnostics.Process.GetProcessesByName(Process)
        If Proc.Length > 0 Then
            For Each [Module] As System.Diagnostics.ProcessModule In Proc(0).Modules
                If [Module].ModuleName = BaseDLL Then
                    base = [Module].BaseAddress
                End If
            Next
        Else
            MsgBox("Start Process before")
        End If
        Return base
    End Function
End Class
Code:
 public void Update()
        {
            if (!MiscUtils.ShouldUpdate())
                return;

            ReadSettings();

            if (!_triggerEnabled)
                return;

            if (Core.KeyUtils.KeyIsDown(_triggerKey))
            {
                ViewAngles = Core.Memory.Read<Vector3>((IntPtr)(Core.ClientState + Offsets.ClientState.ViewAngles));

                if (_triggerZoomed)
                    if (Core.LocalPlayerWeapon.ZoomLevel == 0)
                        return;

                if (_triggerDash)
                    if (Core.LocalPlayer.Velocity > 0)
                        return;

                RandomizeDelay();

                if (_inCrossTrigger)
                    InCrossTriggerBot();
                else if (_boneTrigger)
                    BoneTriggerBot();
                else if (_hitboxTrigger)
                    HitBoxTriggerBot();
            }
            else
                AimOntarget = false;
        }

        private void HitBoxTriggerBot()
        {
            GetValidTargets();
            foreach (Player target in _validTargets)
            {
                if (target.Health > 0 & !target.IsDormant)
                {
                    Vector3 bBone = target.GetBonePos(target, 8) + new Vector3(0, 0, 3);
                    Vector3 bottomHitboxHead = new Vector3(bBone.X - 2.54f, bBone.Y - 4.145f, bBone.Z - 7f);
                    Vector3 topHitboxHead = new Vector3(bBone.X + 2.54f, bBone.Y + 4.145f, bBone.Z + 3f);

                    Vector3 hBone = target.GetBonePos(target, 3);
                    Vector3 bottomHitboxBody = new Vector3(hBone.X - 7f, hBone.Y - 5.5f, hBone.Z - 25f);
                    Vector3 topHitboxBody = new Vector3(hBone.X + 7f, hBone.Y + 5.5f, hBone.Z + 15f);

                    Vector3 viewDirection = TraceRay.AngleToDirection(ViewAngles);
                    TraceRay viewRay = new TraceRay(Core.LocalPlayer.Position + Core.LocalPlayer.VecView, viewDirection);
                    float distance = 0;

                    if (viewRay.Trace(bottomHitboxHead, topHitboxHead, ref distance) | viewRay.Trace(bottomHitboxBody, topHitboxBody, ref distance))
                    {
                        if (!CheckDelay())
                            return;

                        _triggerLastShot = DateTime.Now.Ticks;

                        Engine.ForceAttack(0, 12, 10);
                    }
                }

            }

        }

        public float GetNextEnemyToCrosshair(int bone, ref IntPtr pPointer)
        {
            float fov = 0;
            Vector3 pAngles = ViewAngles;

            int[] playerArray = new int[33];
            float[] angleArray = new float[33];


            for (int i = 1; i <= 32; i++)
            {
                Player player = new Player(Core.Objects.GetEntityPtr(i));

                Vector3 pAngle = player.GetBonePos(player, bone);
                pAngle = Core.LocalPlayer.Position.CalcAngle(pAngle);
                pAngle = pAngle.ClampAngle();
                float iDiff = MathUtils.Get3DDistance(pAngle, pAngles);

                playerArray[i] = (int)player.BaseAddress;
                angleArray[i] = iDiff;
            }

            int closestPlayer = 0;
            float closestAngle = 360;

            for (int i = 1; i <= 32; i++)
            {
                Player player = new Player((IntPtr)playerArray[i]);
                float angle = angleArray[i];

                int curPlayerTeam = (int)player.Team;
                bool dormant = player.IsDormant;
                int health = player.Health;

                Vector3 pOriginVec = player.Position;
                pOriginVec.Z += 64;

                if (!(curPlayerTeam != (int) Core.LocalPlayer.Team & (!dormant) & health > 0 & angle < closestAngle))
                    continue;

                closestPlayer = (int)player.BaseAddress;
                closestAngle = angle;
                fov = angle;
            }
            pPointer = (IntPtr)closestPlayer;
            return fov;
        }

        private void InCrossTriggerBot()
        {
            BaseEntity target = Core.LocalPlayer.Target;
            if (target != null && ((_triggerAllies && target.Team == Core.LocalPlayer.Team) || (_triggerEnemies && target.Team != Core.LocalPlayer.Team)))
            {
                if (!AimOntarget)
                {
                    AimOntarget = true;
                    _triggerLastTarget = DateTime.Now.Ticks;
                }
                else
                {
                    if (!CheckDelay())
                        return;

                    _triggerLastShot = DateTime.Now.Ticks;

                    if (!_triggerSpawnProtection)
                        if (target.GunGameImmune)
                            return;

                    Engine.ForceAttack(0, 12, 10);
                }
            }
        }

        private void BoneTriggerBot()
        {
            GetValidTargets();
            foreach (Player validTarget in _validTargets)
            {
                Vector3 myView = Core.LocalPlayer.Position + Core.LocalPlayer.VecView;

                for (int i = 0; i < 81; i++)
                {
                    Vector3 aimView = validTarget.GetBonePos(validTarget, i);
                    Vector3 dst = myView.CalcAngle(aimView);
                    dst = dst.NormalizeAngle();
                    var fov = MathUtils.Fov(ViewAngles, dst, Vector3.Distance(Core.LocalPlayer.Position, validTarget.Position));

                    if (!(fov <= 5))
                        continue;

                    if (!AimOntarget)
                    {
                        AimOntarget = true;
                        _triggerLastTarget = DateTime.Now.Ticks;
                    }
                    else
                    {
                        if (!CheckDelay())
                            return;

                        _triggerLastShot = DateTime.Now.Ticks;

                        Engine.ForceAttack(0, 12, 10);
                    }
                }
            }
        }

        private bool CheckDelay()
        {
            if (!(new TimeSpan(DateTime.Now.Ticks - _triggerLastTarget).TotalMilliseconds >= TriggerDelayFirstRandomize))
                return false;
            if (!(new TimeSpan(DateTime.Now.Ticks - _triggerLastShot).TotalMilliseconds >= TriggerDelayShotsRandomize))
                return false;

            return true;
        }

        private void GetValidTargets()
        {
            _validTargets = Core.Objects.Players.Where(p => p.IsAlive && !p.IsDormant && p.Id != Core.LocalPlayer.Id /*&& p.SeenBy(Core.LocalPlayer)*/);
            if (_triggerEnemies)
                _validTargets = _validTargets.Where(p => p.Team != Core.LocalPlayer.Team);
            if (_triggerAllies)
                _validTargets = _validTargets.Where(p => p.Team == Core.LocalPlayer.Team);
            if (!_triggerSpawnProtection)
                _validTargets = _validTargets.Where(p => !p.GunGameImmune);
        }

        private void RandomizeDelay()
        {
            TriggerDelayFirstRandomize = new Random().Next(_triggerDelayFirstShotMin, _triggerDelayFirstShotMax) + 1;
            TriggerDelayShotsRandomize = new Random().Next(_triggerDelayShotsMin, _triggerDelayShotsMax) + 1;
        }
Code:
 Delay_After_Hover = Delay
Idk VB but look for the value 'Delay'.

EDIT: Change delay in that line to 0;
Posts 1–5 of 5 · Page 1 of 1

Post a Reply

Similar Threads

Tags for this Thread

None

Talk with us