├── CS2 AnimatedDamageHitmarker.lua ├── CS2AFKscript.lua ├── CS2AimbotFOVCircles.lua ├── CS2AimbotFOVCircles_inc_deadzone.lua ├── CS2AntiaimFlickznJitter.lua ├── CS2AutoSkins.lua ├── CS2BeepSonarSoundESP.lua ├── CS2BombDamage.lua ├── CS2BombESPText.lua ├── CS2ChromaCrosshair.lua ├── CS2DeadESP.lua ├── CS2JumpScoutFix.lua ├── CS2NightMode.lua ├── CS2NoSpecListwithoutSpectators.lua ├── CS2OutofViewCircles.lua ├── CS2RainbowCrosshairChamsEsp.lua ├── CS2RainbowThemeAndHUD.lua ├── CS2RandomRainbowOrCustomSmokeColors.lua ├── CS2ScoreboardEquipment.lua ├── CS2Searchbar.lua ├── CS2SimpleIndicators.lua ├── CS2SimpleWatermark.lua ├── CS2SkyboxChanger.lua ├── CS2WatermarkOnLoad.lua ├── README.md └── autorun.lua /CS2 AnimatedDamageHitmarker.lua: -------------------------------------------------------------------------------- 1 | -- Thanks to Gladiator and 2878713023 with help to fix some issues 2 | -- Original was made for CS:GO by Verieth [https://aimware.net/forum/user/283534] 3 | -- *Updated/Fixed to make it work in CS2 by ticZz* 4 | 5 | local lua_ref = gui.Reference("Visuals", "World", "Camera") 6 | local lua_ref_group = gui.Groupbox(lua_ref, "Animated Damage Indicator") 7 | local lua_enable_damage_marker = gui.Checkbox(lua_ref_group, "damage_indicator_checkbox", "Enable Damage Indicators", true) 8 | local lua_defoult_color = gui.ColorPicker(lua_ref_group, "defoult_color", "Default Shot Color", 170, 166, 255, 255) 9 | local lua_lethal_color = gui.ColorPicker(lua_ref_group, "lethal_color", "Lethal Shot Color", 255, 40, 40, 255) 10 | local lua_damage_speed = gui.Slider(lua_ref_group, "damage_speed", "Animation Speed", 5, 1, 15) 11 | local lua_damage_time = gui.Slider(lua_ref_group, "damage_time", "Time of Visibility", 250, 50, 800, 10) 12 | local damage_font = draw.CreateFont("Verdana", 18, 1200) 13 | 14 | local particles = { {} } 15 | local shot_particle = {} 16 | callbacks.Register("FireGameEvent", function(ctx) 17 | if not entities:GetLocalPlayer() or not entities:GetLocalPlayer():IsAlive() then 18 | return 19 | end 20 | if not lua_enable_damage_marker:GetValue() then 21 | lua_defoult_color:SetInvisible(true) 22 | lua_lethal_color:SetInvisible(true) 23 | lua_damage_speed:SetInvisible(true) 24 | lua_damage_time:SetInvisible(true) 25 | else 26 | lua_defoult_color:SetInvisible(false) 27 | lua_lethal_color:SetInvisible(false) 28 | lua_damage_speed:SetInvisible(false) 29 | lua_damage_time:SetInvisible(false) 30 | end 31 | 32 | local math_random_1 = math.random(1, 10) 33 | local math_random_2 = math.random(1, 10) 34 | local math_random_3 = math.random(1, 10) 35 | if ctx then 36 | if ctx:GetName() == "player_hurt" then 37 | local pVictimController = entities.GetByIndex(ctx:GetInt("userid") + 1) 38 | local pAttackerController = entities.GetByIndex(ctx:GetInt("attacker") + 1) 39 | local pVictimPawn = pVictimController:GetPropEntity("m_hPawn") 40 | local pAttackerPawn = pAttackerController:GetPropEntity("m_hPawn") 41 | local user_index = pVictimPawn:GetIndex() 42 | local attacker_index = pAttackerPawn:GetIndex() 43 | local localplayer_index = entities:GetLocalPlayer():GetIndex() 44 | if attacker_index == localplayer_index and user_index ~= localplayer_index then 45 | local HitGroup = ctx:GetInt("hitgroup") 46 | pos = pVictimPawn:GetHitboxPosition(HitGroup) 47 | if pos == nil then 48 | pos = pVictimPawn:GetAbsOrigin() 49 | pos.z = pos.z + 50 50 | end 51 | pos.x = pos.x - 2 + (math_random_1 * 3) 52 | pos.y = pos.y - 2 + (math_random_2 * 3) 53 | pos.z = pos.z - 4 + (math_random_3 * 1) 54 | 55 | shot_particle = {} 56 | 57 | table.insert(shot_particle, pos.x) 58 | table.insert(shot_particle, pos.y) 59 | table.insert(shot_particle, pos.z) 60 | 61 | time = globals.TickCount() + lua_damage_time:GetValue() 62 | table.insert(shot_particle, time) 63 | 64 | health = ctx:GetInt("health") 65 | table.insert(shot_particle, health) 66 | 67 | damage = ctx:GetInt("dmg_health") 68 | table.insert(shot_particle, damage) 69 | 70 | pos_hitmarker = pVictimPawn:GetHitboxPosition(ctx:GetInt("hitgroup")) 71 | if pos_hitmarker == nil then 72 | pos_hitmarker = pVictimPawn:GetAbsOrigin() 73 | pos_hitmarker.z = pos_hitmarker.z + 50 74 | end 75 | table.insert(shot_particle, pos_hitmarker.x) 76 | table.insert(shot_particle, pos_hitmarker.y) 77 | table.insert(shot_particle, pos_hitmarker.z) 78 | 79 | table.insert(particles, shot_particle) 80 | end 81 | end 82 | end 83 | end) 84 | 85 | function animation() 86 | if not entities:GetLocalPlayer() or not entities:GetLocalPlayer():IsAlive() then 87 | return 88 | end 89 | for i = 1, #particles, 1 do 90 | if particles[i][1] ~= nil then 91 | local delta_time = particles[i][4] - globals.TickCount() 92 | if delta_time > 0 then 93 | particles[i][3] = particles[i][3] + (lua_damage_speed:GetValue() / 10) 94 | end 95 | end 96 | end 97 | end 98 | callbacks.Register("CreateMove", animation) 99 | 100 | function render_damage() 101 | if not entities:GetLocalPlayer() or not entities:GetLocalPlayer():IsAlive() then 102 | particles = {} 103 | timer = 0 104 | end 105 | for i = 1, #particles, 1 do 106 | if particles[i][1] ~= nil and particles[i][2] ~= nil and particles[i][3] ~= nil then 107 | position_x, position_y = client.WorldToScreen(Vector3(particles[i][1], particles[i][2], particles[i][3])) 108 | local timer = particles[i][4] - globals.TickCount() 109 | health_remaining = particles[i][5] 110 | 111 | if timer > 255 then 112 | timer = 255 113 | end 114 | if timer > 0 then 115 | if lua_enable_damage_marker:GetValue() and position_x ~= nil and position_y ~= nil then 116 | if health_remaining > 0 then 117 | lua_damage_color_r, lua_damage_color_g, lua_damage_color_b = lua_defoult_color:GetValue() 118 | end 119 | if health_remaining <= 0 then 120 | lua_damage_color_r, lua_damage_color_g, lua_damage_color_b = lua_lethal_color:GetValue() 121 | end 122 | draw.SetFont(damage_font) 123 | draw.Color(0, 0, 0, timer) 124 | draw.Text(position_x, position_y + 1 - 75, "-" .. particles[i][6]) 125 | draw.Text(position_x, position_y - 1 - 75, "-" .. particles[i][6]) 126 | draw.Text(position_x + 1, position_y - 75, "-" .. particles[i][6]) 127 | draw.Text(position_x - 1, position_y - 75, "-" .. particles[i][6]) 128 | draw.Color(lua_damage_color_r, lua_damage_color_g, lua_damage_color_b, timer) 129 | draw.Text(position_x, position_y - 75, "-" .. particles[i][6]) 130 | end 131 | end 132 | end 133 | end 134 | end 135 | callbacks.Register("Draw", render_damage) 136 | 137 | --***********************************************-- 138 | 139 | local name = GetScriptName() 140 | print("♥♥♥ " .. name .. " loaded without Errors ♥♥♥") 141 | -------------------------------------------------------------------------------- /CS2AFKscript.lua: -------------------------------------------------------------------------------- 1 | local status, err = pcall(function() 2 | local calibri = draw.CreateFont("Calibri bold", 29, 600) 3 | local screen_size_x, screen_size_y = draw.GetScreenSize() -- screen 4 | local ctx = screen_size_x / 2 5 | local cty = screen_size_y / 2 6 | local commandExecuted = false 7 | local resetCommandExecuted = true 8 | local ref = gui.Reference("Misc", "Enhancement", "Appearance") 9 | local afkmaster = gui.Checkbox(ref, "afkmaster", "AFK", false) 10 | local afkbind = gui.Keybox(ref, "afkbind", "AFK key", 0) 11 | local shouldtalk = gui.Checkbox(ref, "shouldtalk", "Say in Chat", false) 12 | local indicator = gui.Checkbox(ref, "indicator", "Indicator", false) 13 | local color = gui.ColorPicker(indicator, "color", "Indicator Color", 255, 255, 255, 255) 14 | local sayExecuted = false 15 | local printExecuted = true 16 | 17 | local function afkgo() 18 | if afkbind:GetValue() and input.IsButtonPressed(afkbind:GetValue()) then 19 | afkmaster:SetValue(true) 20 | else 21 | afkmaster:SetValue(false) 22 | end 23 | 24 | if afkmaster:GetValue() and not commandExecuted then 25 | client.Command("+duck;+forward;+left", true) 26 | commandExecuted = true 27 | resetCommandExecuted = false 28 | elseif not afkmaster:GetValue() and not resetCommandExecuted then 29 | client.Command("-forward;-duck;-left", true) 30 | resetCommandExecuted = true 31 | commandExecuted = false 32 | end 33 | end 34 | 35 | local function shouldittalk() 36 | if shouldtalk:GetValue() and afkmaster:GetValue() and not sayExecuted then 37 | client.Command("say_team Afk!", true) 38 | sayExecuted = true 39 | elseif afkmaster:GetValue() == false and shouldtalk:GetValue() == true and sayExecuted then 40 | sayExecuted = false 41 | end 42 | 43 | if shouldtalk:GetValue() and not afkmaster:GetValue() and not printExecuted then 44 | client.Command("say_team Back!", true) 45 | printExecuted = true 46 | elseif afkmaster:GetValue() and printExecuted then 47 | printExecuted = false 48 | end 49 | end 50 | 51 | local function on_paint() 52 | local r, g, b, a = color:GetValue() 53 | if indicator:GetValue() then 54 | if afkmaster:GetValue() then 55 | draw.SetFont(calibri) 56 | draw.Color(r, g, b, a) 57 | draw.Text(ctx, cty, "AFK") 58 | end 59 | end 60 | end 61 | 62 | callbacks.Register("CreateMove", afkgo) 63 | callbacks.Register("CreateMove", shouldittalk) 64 | callbacks.Register("Draw", on_paint) 65 | 66 | -- Handle errors 67 | if not status then 68 | print("Error " .. err) 69 | logFile = file.Open("error.txt", "a") 70 | logFile:Write(err .. "\n") 71 | logFile:Close() 72 | return 73 | end 74 | end) 75 | -------------------------------------------------------------------------------- /CS2AimbotFOVCircles.lua: -------------------------------------------------------------------------------- 1 | -- Create a configurations menu 2 | local menuRef = gui.Reference("Visuals", "Local", "Helper") 3 | local colorPicker = gui.ColorPicker(menuRef, "aimbot_fov_color", "FOV Circle Color", 255, 0, 0, 150) 4 | local enableCheckbox = gui.Checkbox(menuRef, "aimbot_fov_enable", "Enable FOV Circle", false) 5 | 6 | -- Cache frequently accessed values 7 | local localPlayer = entities.GetLocalPlayer() 8 | local rbotMaster = gui.GetValue("rbot.master") 9 | local lbotMaster = gui.GetValue("lbot.master") 10 | local rbotFov = gui.GetValue("rbot.aim.target.fov") 11 | local minFOV 12 | local maxFOV 13 | local GetScriptName 14 | 15 | -- Get the middle of the Games Display 16 | local screenCenterX, screenCenterY = draw.GetScreenSize() 17 | screenCenterX = screenCenterX / 2 18 | screenCenterY = screenCenterY / 2 19 | 20 | -- Master function state to enable or disable 21 | local function enableState() 22 | if not enableCheckbox:GetValue() or not localPlayer:IsAlive() then 23 | return false 24 | end 25 | end 26 | 27 | -- Get the weapon type 28 | local function getWeaponType() 29 | local activeWeapon = entities.GetLocalPlayer():GetPropEntity("m_hActiveWeapon") 30 | return activeWeapon:GetWeaponType() 31 | end 32 | 33 | -- Get the circle radius 34 | local function getCircleRadius() 35 | if not enableState() then 36 | return 37 | end 38 | if rbotMaster then 39 | return rbotFov * 10 40 | elseif lbotMaster then 41 | local weaponType = getWeaponType() 42 | if lbotMaster and weaponType then 43 | minFOV = gui.GetValue("lbot.weapon." .. weaponType .. ".target.minfov") 44 | maxFOV = gui.GetValue("lbot.weapon." .. weaponType .. ".target.maxfov") 45 | return (minFOV + maxFOV) / 2 * 10 46 | end 47 | end 48 | return 0 49 | end 50 | 51 | local circleColor 52 | local circleRadius 53 | 54 | -- Draw the circle 55 | local function drawFOVCircle() 56 | if not enableState() then 57 | return 58 | end 59 | 60 | circleColor = colorPicker:GetValue() 61 | circleRadius = getCircleRadius() 62 | 63 | draw.Color(circleColor.r, circleColor.g, circleColor.b, circleColor.a) 64 | draw.OutlinedCircle(screenCenterX, screenCenterY, circleRadius) 65 | end 66 | 67 | callbacks.Register("Draw", drawFOVCircle) 68 | 69 | local name = GetScriptName() 70 | 71 | -- Print a message to the console 72 | print("♥♥♥ " .. name .. " loaded without Errors ♥♥♥") 73 | -------------------------------------------------------------------------------- /CS2AimbotFOVCircles_inc_deadzone.lua: -------------------------------------------------------------------------------- 1 | local lua_ref = gui.Reference("Visuals", "Other", "Effects") 2 | 3 | local Screen_Weight, Screen_Height = draw.GetScreenSize() 4 | 5 | local lua_enable_fov_circle = gui.Checkbox(lua_ref, "enable_fov_circle", "Enable Fov Circle", true) 6 | local lua_enable_fov_circle_deadzone = gui.Checkbox(lua_ref, "enable_fov_circle", "Show DeadZone", true) 7 | local lua_fov_circle_color = gui.ColorPicker(lua_enable_fov_circle, "fov_circle_color", "Circle Color", 255, 255, 255) 8 | local lua_fov_deadzone_color = 9 | gui.ColorPicker(lua_enable_fov_circle_deadzone, "fov_circle_color", "Circle Color", 255, 0, 0) 10 | local lua_enable_fov_circle_rage = gui.Checkbox(lua_ref, "enable_fov_circle", "Show Rage", true) 11 | local lua_fov_rage_color = gui.ColorPicker(lua_enable_fov_circle, "fov_circle_color", "Cirle Color", 120, 120, 255) 12 | 13 | local target = nil 14 | function current_target() 15 | if not entities:GetLocalPlayer() or not entities:GetLocalPlayer():IsAlive() then 16 | return 17 | end 18 | local nearest = math.huge 19 | for k, v in pairs(entities.FindByClass("C_CSPlayerPawn")) do 20 | if 21 | v:GetIndex() ~= entities.GetLocalPlayer():GetIndex() 22 | and v:GetTeamNumber() ~= entities.GetLocalPlayer():GetTeamNumber() 23 | and v:IsAlive() 24 | then 25 | local screen_position_target_x, screen_position_target_y = client.WorldToScreen(v:GetAbsOrigin()) 26 | if screen_position_target_x ~= nil and screen_position_target_y ~= nil then 27 | local distance_from_center = math.sqrt( 28 | ( 29 | ((Screen_Weight * Screen_Weight) - (screen_position_target_x * screen_position_target_x)) 30 | + ((Screen_Height * Screen_Height) - (screen_position_target_y * screen_position_target_y)) 31 | ) 32 | ) 33 | if distance_from_center < nearest then 34 | target = v 35 | nearest = distance_from_center 36 | end 37 | end 38 | end 39 | end 40 | end 41 | callbacks.Register("Draw", current_target) 42 | 43 | local distance = 0 44 | local function target_distance() 45 | if not entities:GetLocalPlayer() or not entities:GetLocalPlayer():IsAlive() then 46 | return 47 | end 48 | if target ~= nil then 49 | target_origin = target:GetAbsOrigin() 50 | local_origin = entities:GetLocalPlayer():GetAbsOrigin() 51 | distance = ( 52 | vector.Distance( 53 | { local_origin.x, local_origin.y, local_origin.z }, 54 | { target_origin.x, target_origin.y, target_origin.z } 55 | ) 56 | ) 57 | end 58 | end 59 | callbacks.Register("Draw", target_distance) 60 | 61 | function Get_Weapon() 62 | if not entities:GetLocalPlayer() or not entities:GetLocalPlayer():IsAlive() then 63 | return 64 | end 65 | local localplayer = entities:GetLocalPlayer() 66 | local localplayerweapon = localplayer:GetWeaponID() 67 | if 68 | localplayerweapon == 2 69 | or localplayerweapon == 3 70 | or localplayerweapon == 4 71 | or localplayerweapon == 30 72 | or localplayerweapon == 32 73 | or localplayerweapon == 36 74 | or localplayerweapon == 61 75 | or localplayerweapon == 63 76 | then 77 | weaponclass = "pistol" 78 | elseif localplayerweapon == 9 then 79 | weaponclass = "sniper" 80 | elseif localplayerweapon == 40 then 81 | weaponclass = "scout" 82 | elseif localplayerweapon == 1 then 83 | weaponclass = "hpistol" 84 | elseif 85 | localplayerweapon == 17 86 | or localplayerweapon == 19 87 | or localplayerweapon == 23 88 | or localplayerweapon == 24 89 | or localplayerweapon == 26 90 | or localplayerweapon == 33 91 | or localplayerweapon == 34 92 | then 93 | weaponclass = "smg" 94 | elseif 95 | localplayerweapon == 7 96 | or localplayerweapon == 8 97 | or localplayerweapon == 10 98 | or localplayerweapon == 13 99 | or localplayerweapon == 16 100 | or localplayerweapon == 39 101 | or localplayerweapon == 61 102 | then 103 | weaponclass = "rifle" 104 | elseif localplayerweapon == 25 or localplayerweapon == 27 or localplayerweapon == 29 or localplayerweapon == 35 then 105 | weaponclass = "shotgun" 106 | elseif localplayerweapon == 38 or localplayerweapon == 11 then 107 | weaponclass = "asniper" 108 | elseif localplayerweapon == 28 or localplayerweapon == 14 then 109 | weaponclass = "lmg" 110 | elseif 111 | localplayerweapon == 42 112 | or localplayerweapon == 505 113 | or localplayerweapon == 506 114 | or localplayerweapon == 507 115 | or localplayerweapon == 508 116 | or localplayerweapon == 509 117 | or localplayerweapon == 510 118 | or localplayerweapon == 511 119 | or localplayerweapon == 512 120 | or localplayerweapon == 513 121 | or localplayerweapon == 514 122 | or localplayerweapon == 515 123 | or localplayerweapon == 516 124 | or localplayerweapon == 517 125 | or localplayerweapon == 518 126 | or localplayerweapon == 519 127 | or localplayerweapon == 520 128 | or localplayerweapon == 521 129 | or localplayerweapon == 522 130 | or localplayerweapon == 523 131 | or localplayerweapon == 524 132 | then 133 | weaponclass = "knife" 134 | elseif localplayerweapon == 31 then 135 | weaponclass = "zeus" 136 | elseif 137 | localplayerweapon == 43 138 | or localplayerweapon == 44 139 | or localplayerweapon == 45 140 | or localplayerweapon == 46 141 | or localplayerweapon == 47 142 | or localplayerweapon == 48 143 | then 144 | weaponclass = "nade" 145 | else 146 | weaponclass = "shared" 147 | end 148 | end 149 | callbacks.Register("Draw", Get_Weapon) 150 | 151 | function draw_circle() 152 | if not entities:GetLocalPlayer() or not entities:GetLocalPlayer():IsAlive() then 153 | return 154 | end 155 | if weaponclass ~= "knife" and weaponclass ~= "nade" then 156 | if target ~= nil then 157 | if lua_enable_fov_circle:GetValue() then 158 | draw.Color(lua_fov_circle_color:GetValue()) 159 | draw.OutlinedCircle( 160 | Screen_Weight / 2, 161 | Screen_Height / 2, 162 | (25 * gui.GetValue("lbot.weapon.target." .. weaponclass .. ".maxfov") * (500 / distance)) 163 | ) 164 | end 165 | if lua_enable_fov_circle_deadzone:GetValue() then 166 | draw.Color(lua_fov_deadzone_color:GetValue()) 167 | draw.OutlinedCircle( 168 | Screen_Weight / 2, 169 | Screen_Height / 2, 170 | (25 * gui.GetValue("lbot.weapon.target." .. weaponclass .. ".minfov") * (500 / distance)) 171 | ) 172 | end 173 | if lua_enable_fov_circle_rage:GetValue() then 174 | draw.Color(lua_fov_rage_color:GetValue()) 175 | draw.OutlinedCircle(Screen_Weight / 2, Screen_Height / 2, (13 * gui.GetValue("rbot.aim.target.fov"))) 176 | end 177 | end 178 | end 179 | end 180 | callbacks.Register("Draw", draw_circle) 181 | 182 | --***********************************************-- 183 | 184 | print("♥♥♥ " .. GetScriptName() .. " loaded without Errors ♥♥♥") 185 | -------------------------------------------------------------------------------- /CS2AntiaimFlickznJitter.lua: -------------------------------------------------------------------------------- 1 | -- Configuration Advanced-AA 2 | local USER_NAME = cheat.GetUserName() 3 | local LOCAL_WATERMARK = draw.CreateFont("Verdana", 13, 900) 4 | local SIZE_X, SIZE_Y = draw.GetScreenSize() 5 | local VERTICAL, HORIZONTAL = 30, 70 6 | local FONT_INDICATOR = draw.CreateFont("Tahoma", 15, 1300) 7 | 8 | -- Components 9 | local REFERENCE = gui.Window("aawindow", "Advanced AntiAim", 10, 10, 1280, 640) 10 | --local TAB = gui.Tab(REFERENCE, "Advanced-AA", "Pitch & Yaw Jitter") 11 | local WELCOME_BOX = gui.Groupbox(REFERENCE, "Welcome to Advanced-AntiAim, " .. USER_NAME .. "!", 10, 10, 1260, 640) 12 | local MASTER_CHECKBOX = gui.Checkbox(WELCOME_BOX, "master_enable", "Master Enable", false) 13 | 14 | local PITCH_JITTER_CONTROL_BOX = gui.Groupbox(WELCOME_BOX, "Pitch Jitter Control", 10, 30, 400, 100) 15 | local PITCH_JITTER_ENABLE_CHECKBOX = 16 | gui.Checkbox(PITCH_JITTER_CONTROL_BOX, "pitch_jitter_enable", "Enable Pitch Jitter", false) 17 | local PITCH_JITTER_SPEED_SLIDER = 18 | gui.Slider(PITCH_JITTER_CONTROL_BOX, "pitch_jitter_speed", "Pitch Jitter Speed (Ticks)", 1, 1, 32) 19 | local pitchState = false 20 | local lastPitchChange = 0 21 | 22 | local YAW_JITTER_CONTROL_BOX = gui.Groupbox(WELCOME_BOX, "Yaw Jitter Control", 10, 170, 400, 300) 23 | local YAW_JITTER_ENABLE_CHECKBOX = gui.Checkbox(YAW_JITTER_CONTROL_BOX, "yaw_jitter_enable", "Yaw Jitter Enable", false) 24 | local YAW_JITTER_LEFT_SLIDER = gui.Slider(YAW_JITTER_CONTROL_BOX, "yaw_jitter_left", "Yaw Jitter Left", 45, 0, 90) 25 | local YAW_JITTER_RIGHT_SLIDER = gui.Slider(YAW_JITTER_CONTROL_BOX, "yaw_jitter_right", "Yaw Jitter Right", 45, 0, 90) 26 | local YAW_JITTER_BACKWARD_CHECKBOX = 27 | gui.Checkbox(YAW_JITTER_CONTROL_BOX, "yaw_jitter_backward", "Yaw Jitter Backward", false) 28 | local YAW_JITTER_SPEED_SLIDER = 29 | gui.Slider(YAW_JITTER_CONTROL_BOX, "yaw_jitter_speed", "Yaw Jitter Speed (Ticks)", 1, 1, 32) 30 | 31 | local RANDOM_YAW_CONTROL_BOX = gui.Groupbox(WELCOME_BOX, "Random Yaw Control", 420, 30, 400, 300) 32 | local RANDOM_YAW_ENABLE_CHECKBOX = gui.Checkbox(RANDOM_YAW_CONTROL_BOX, "random_yaw_enable", "Random Yaw Enable", false) 33 | local RANDOM_YAW_MIN_SLIDER = gui.Slider(RANDOM_YAW_CONTROL_BOX, "random_yaw_min", "Random Yaw Range", 90, 0, 180) 34 | local RANDOM_YAW_BACKWARD_CHECKBOX = 35 | gui.Checkbox(RANDOM_YAW_CONTROL_BOX, "random_yaw_backward", "Random Yaw Backward", false) 36 | local RANDOM_YAW_SPEED_SLIDER = 37 | gui.Slider(RANDOM_YAW_CONTROL_BOX, "random_yaw_speed", "Random Yaw Speed (Ticks)", 1, 1, 32) 38 | local jitterDirection = true 39 | local lastJitterChange = 0 40 | 41 | local SPIN_CONTROL_BOX = gui.Groupbox(WELCOME_BOX, "Spin Control", 420, 255, 400, 100) 42 | local SPIN_ENABLE_CHECKBOX = gui.Checkbox(SPIN_CONTROL_BOX, "spin_enable", "Enable Spin Control", false) 43 | local SPIN_SPEED_SLIDER = gui.Slider(SPIN_CONTROL_BOX, "spin_speed", "Spin Speed", 16, 1, 64) 44 | local lastSpinChange = 0 45 | local currentYaw = 0 46 | 47 | local ffpkeybind = gui.Groupbox(WELCOME_BOX, "FakeFlick Pitch", 830, 30, 400, 300) 48 | ffpkeybind:SetDescription("Toggle/hold key") 49 | 50 | -- ##### FAKE FLICK PITCH CHECKBOXES ##### 51 | local fake_flick_pitch = gui.Checkbox(ffpkeybind, "fake_flick_pitch", "Fake Flick Pitch", false) 52 | local flick_period_pitch = gui.Slider(ffpkeybind, "flick_period_pitch", "Flick Period Pitch", 2, 1, 128) 53 | local invert_pitch = gui.Checkbox(ffpkeybind, "invert_pitch", "Invert Pitch", false) 54 | 55 | local ffykeybind = gui.Groupbox(WELCOME_BOX, "FakeFlick Yaw & Manual", 830, 210, 400, 300) 56 | ffykeybind:SetDescription("Toggle/hold key") 57 | local manual_right = gui.Checkbox(ffykeybind, "manual_right", "Manual Right AA", false) 58 | local manual_left = gui.Checkbox(ffykeybind, "manual_left", "Manual Left AA", false) 59 | local default_yaw = gui.Slider(ffykeybind, "default_yaw", "Default Yaw", 0, -180, 180) 60 | 61 | -- ##### FAKE FLICK YAW CHECKBOXES ##### 62 | local fake_flick_yaw = gui.Checkbox(ffykeybind, "fake_flick", "Fake Flick Yaw", false) 63 | local flick_period_yaw = gui.Slider(ffykeybind, "flick_period", "Flick Period Yaw", 64, 1, 128) 64 | local invert_yaw = gui.Checkbox(ffykeybind, "invert_flick", "Invert Flick Yaw", false) 65 | -- ##### MANUAL ANTI-AIM FUNCTIONALITY WITH USER-ADJUSTABLE FAKE FLICK PITCH ##### 66 | local last_fake_flick_tick = 0 67 | 68 | -- Functions 69 | local function HandlePitchJitter() 70 | if MASTER_CHECKBOX:GetValue() and PITCH_JITTER_ENABLE_CHECKBOX:GetValue() then 71 | local currentTime = globals.TickCount() 72 | if currentTime - lastPitchChange > PITCH_JITTER_SPEED_SLIDER:GetValue() then 73 | local pitchValue = pitchState and 1 or 2 74 | gui.SetValue("rbot.antiaim.advanced.pitch", pitchValue) 75 | pitchState = not pitchState 76 | lastPitchChange = currentTime 77 | end 78 | end 79 | end 80 | 81 | local function HandleYawJitter() 82 | if MASTER_CHECKBOX:GetValue() and YAW_JITTER_ENABLE_CHECKBOX:GetValue() then 83 | local currentTime = globals.TickCount() 84 | if currentTime - lastJitterChange > YAW_JITTER_SPEED_SLIDER:GetValue() then 85 | local leftValue = YAW_JITTER_BACKWARD_CHECKBOX:GetValue() and -(180 - YAW_JITTER_LEFT_SLIDER:GetValue()) 86 | or -YAW_JITTER_LEFT_SLIDER:GetValue() 87 | local rightValue = YAW_JITTER_BACKWARD_CHECKBOX:GetValue() and (180 - YAW_JITTER_RIGHT_SLIDER:GetValue()) 88 | or YAW_JITTER_RIGHT_SLIDER:GetValue() 89 | local yawValue = jitterDirection and rightValue or leftValue 90 | gui.SetValue("rbot.antiaim.base", yawValue) 91 | jitterDirection = not jitterDirection 92 | lastJitterChange = currentTime 93 | end 94 | end 95 | end 96 | 97 | local function HandleRandomYaw() 98 | if MASTER_CHECKBOX:GetValue() and RANDOM_YAW_ENABLE_CHECKBOX:GetValue() then 99 | local currentTime = globals.TickCount() 100 | if currentTime - lastJitterChange > RANDOM_YAW_SPEED_SLIDER:GetValue() then 101 | local yawRange = RANDOM_YAW_MIN_SLIDER:GetValue() 102 | local yawMin, yawMax 103 | if RANDOM_YAW_BACKWARD_CHECKBOX:GetValue() then 104 | yawMin = 180 - yawRange 105 | yawMax = 180 + yawRange 106 | else 107 | yawMin = -yawRange 108 | yawMax = yawRange 109 | end 110 | local randomYaw = math.random(yawMin, yawMax) 111 | if randomYaw > 180 then 112 | randomYaw = randomYaw - 360 113 | elseif randomYaw < -179 then 114 | randomYaw = randomYaw + 360 115 | end 116 | gui.SetValue("rbot.antiaim.base", randomYaw) 117 | lastJitterChange = currentTime 118 | end 119 | end 120 | end 121 | 122 | local function HandleSpinControl() 123 | if MASTER_CHECKBOX:GetValue() and SPIN_ENABLE_CHECKBOX:GetValue() then 124 | local currentTime = globals.TickCount() 125 | if currentTime - lastSpinChange > SPIN_SPEED_SLIDER:GetValue() then 126 | currentYaw = (currentYaw + 10) % 360 127 | if currentYaw > 180 then 128 | currentYaw = currentYaw - 360 129 | end 130 | gui.SetValue("rbot.antiaim.base", currentYaw) 131 | lastSpinChange = currentTime 132 | end 133 | end 134 | end 135 | 136 | -- ##### MANUAL ANTI-AIM FUNCTIONALITY WITH USER-ADJUSTABLE FAKE FLICK PITCH ##### 137 | local function manual_aa_pitch_func() 138 | if MASTER_CHECKBOX:GetValue() then 139 | -- Pitch 140 | local pitch_value = 1 141 | 142 | -- Fake Flick Pitch 로직 143 | local g_vars_tick = globals.TickCount() 144 | local period_pitch = flick_period_pitch:GetValue() 145 | 146 | if fake_flick_pitch:GetValue() then 147 | if g_vars_tick % period_pitch < 1 then 148 | -- 주기일 때 피치를 1 또는 2로 설정 149 | local pitch = invert_pitch:GetValue() and 1 or 2 150 | if last_fake_flick_tick ~= g_vars_tick then 151 | gui.SetValue("rbot.antiaim.advanced.pitch", pitch) 152 | last_fake_flick_tick = g_vars_tick 153 | end 154 | else 155 | -- 주기가 아닐 때 피치를 1 또는 2로 설정 (invert 적용) 156 | local pitch = invert_pitch:GetValue() and 2 or 1 157 | if last_fake_flick_tick ~= g_vars_tick then 158 | gui.SetValue("rbot.antiaim.advanced.pitch", pitch) 159 | last_fake_flick_tick = g_vars_tick 160 | end 161 | end 162 | else 163 | -- Fake Flick 164 | last_fake_flick_tick = 0 165 | end 166 | end 167 | end 168 | local yaw_value 169 | --##### MANUAL ANTI-AIM FUNCTIONALITY WITH USER-ADJUSTABLE FAKE FLICK YAW ##### 170 | local function manual_aa_yaw_func() 171 | if MASTER_CHECKBOX:GetValue() and fake_flick_yaw:GetValue() then 172 | local current_right_value = manual_right:GetValue() 173 | local current_left_value = manual_left:GetValue() 174 | 175 | if current_right_value then 176 | manual_left:SetValue(false) 177 | local yaw_value = -90 178 | gui.SetValue("rbot.antiaim.base", yaw_value) 179 | elseif current_left_value then 180 | manual_right:SetValue(false) 181 | local yaw_value = 90 182 | gui.SetValue("rbot.antiaim.base", yaw_value) 183 | else 184 | local yaw_value = default_yaw:GetValue() 185 | gui.SetValue("rbot.antiaim.base", yaw_value) 186 | end 187 | 188 | -- Fake Flick Yaw 189 | local g_vars_tick = globals.TickCount() 190 | local period = flick_period_yaw:GetValue() 191 | if invert_yaw:GetValue() and g_vars_tick % period < 1 then 192 | local flick_angle = yaw_value:GetValue() and -90 or 90 193 | gui.SetValue("rbot.antiaim.base", flick_angle) 194 | end 195 | end 196 | end 197 | 198 | -- Watermark 199 | local function watermark() 200 | draw.SetFont(LOCAL_WATERMARK) 201 | draw.Color(255, 5, 5, 255) 202 | draw.Text(10, SIZE_Y - 60, "Advanced-AntiAim") 203 | end 204 | 205 | -- Register callbacks 206 | callbacks.Register("Draw", HandlePitchJitter) 207 | callbacks.Register("Draw", HandleYawJitter) 208 | callbacks.Register("Draw", HandleRandomYaw) 209 | callbacks.Register("Draw", HandleSpinControl) 210 | callbacks.Register("Draw", manual_aa_pitch_func) 211 | callbacks.Register("Draw", manual_aa_yaw_func) 212 | callbacks.Register("Draw", watermark) 213 | -------------------------------------------------------------------------------- /CS2AutoSkins.lua: -------------------------------------------------------------------------------- 1 | -- CS2AutoSkins.lua - Lua code for automatically enabling/disabling skins in Aimware based on server and player status 2 | 3 | function requireModule(name) 4 | package = package or {} 5 | package.loaded = package.loaded or {} 6 | function lib_return(value) 7 | package.loaded[name] = value or true 8 | end 9 | if not package.loaded[name] then 10 | RunScript(name .. ".lua") 11 | end 12 | lib_return = nil 13 | return package.loaded[name] or nil 14 | end 15 | 16 | -- Load the module 'isInGameIsConnectedGetMapName' using the 'requireModule' function 17 | local isInGameIsConnectedMapName = requireModule("libraries/isInGameIsConnectedGetMapName") 18 | -- Check if the module 'isInGameIsConnectedGetMapName' has been loaded successfully 19 | if isInGameIsConnectedMapName then 20 | print("The library has been loaded.") 21 | else 22 | print("Failed to load the library.") 23 | end 24 | 25 | -- Create a groupbox and GUI elements within it using the GUI library 26 | local visualsGroup = gui.Reference("Visuals", "Skins (Beta)") 27 | local group = gui.Groupbox(visualsGroup, "AutoDis-ReenableSkins", 16, 380, 325, 80) 28 | local autoskinchangerswitch = gui.Checkbox(group, "auto.skinchanger.switch", "", true) 29 | gui.Text(group, "Erstellt von ticzz | aka KriZz87") 30 | gui.Text(group, "https://github.com/ticzz/Aimware-v5-CS2-luas") 31 | 32 | -- Define variables related to the local player, map, and script name 33 | local localPlayer = entities.GetLocalPlayer() 34 | local localPlayerIndex = client.GetLocalPlayerIndex() 35 | local localPlayerName = localPlayerIndex and client.GetPlayerNameByIndex(localPlayerIndex) 36 | 37 | -- Define a function to check if the player is in-game 38 | local function isInGame() 39 | if not native_IsConnected() then 40 | return false 41 | end 42 | return native_IsInGame() 43 | end 44 | 45 | -- Define a function to check if the player is connected 46 | local function isConnected() 47 | if not native_IsConnected() then 48 | return false 49 | end 50 | return native_IsConnected() 51 | end 52 | 53 | --Define a function to get the name of the map 54 | local function getMapName() 55 | if not localPlayer:IsAlive() then 56 | return 57 | end 58 | if not native_GetLevelNameShort() then 59 | return false 60 | end 61 | return native_GetLevelNameShort() --engine.GetMapName() 62 | end 63 | 64 | -- This function handles the value change of the autoskinchangerswitch checkbox 65 | local function handleAutoskinsValueChanged() 66 | if not autoskinchangerswitch then -- Check if Autoskins value is true 67 | return 68 | else 69 | --local mapname = getMapName() 70 | if getMapName() and isInGame() and isConnected() then -- Check if map load has finished 71 | state = true 72 | --print("Ist es ein Flugzeug oder ein Komet? Nein, es ist " .. (localPlayerName or "")) -- Display console text 73 | else 74 | state = false 75 | --print("Niemand ist hier anscheinend") -- Display console text 76 | end 77 | gui.SetValue("esp.skins.enabled", state) -- Update GUI value 78 | end 79 | end 80 | -- Register the 'handleAutoskinsValueChanged' function to be called every frame 81 | callbacks.Register("Draw", handleAutoskinsValueChanged) 82 | 83 | local function Indicator() 84 | if gui.GetValue("esp.skins.enabled") then 85 | draw.Color(255, 0, 0, 255) 86 | draw.TextShadow(15, 1065, "Skins enabled") 87 | else 88 | draw.Color(0, 255, 0, 255) 89 | draw.TextShadow(15, 1065, "Skins disabled") 90 | end 91 | end 92 | 93 | -- Register the 'Indicator' function to be called every frame 94 | callbacks.Register("Draw", Indicator) 95 | 96 | -- Register a callback function to be called when the script is unloaded 97 | callbacks.Register("Unload", function() 98 | if group then 99 | group:Remove() -- Remove the GUI elements 100 | end 101 | --UnloadScript(scriptName) -- Unload the script 102 | end) 103 | 104 | 105 | print("♥♥♥ " .. scriptName .. " loaded without Errors ♥♥♥") 106 | -------------------------------------------------------------------------------- /CS2BeepSonarSoundESP.lua: -------------------------------------------------------------------------------- 1 | --[==[ 2 | Original was for v4 and made by ambien55 (https://aimware.net/forum/user/240129) 3 | ForumThread: https://aimware.net/forum/thread/101870 4 | 5 | 2024-5-27 2878713023(https://aimware.net/forum/user/366789) Fixed for cs2 v5 6 | 7 | ]==] 8 | 9 | local REFER = gui.Reference "Misc" 10 | local BEEPTAB = gui.Tab(REFER, "sonar.esp.tab", "Sonar ESP") 11 | local GROUP = gui.Groupbox(BEEPTAB, "Sonar ESP", 16, 16, 297, 300) 12 | local ENABLE = gui.Checkbox(GROUP, "sonar.enabled", "Enable", false) 13 | local VOLUME = gui.Slider(GROUP, "sonar.volume", "Volume", 50, 0.5, 100, 0.5) 14 | local SOUND = gui.Combobox(GROUP, "sonar.sound", "Sound", "Buttons Bell 1", "Buttons Blip 1", "Buttons Blip 2", "Button 8", "Button 9") 15 | local DISTANCE = gui.Slider(GROUP, "sonar.distance", "Distance", 200, 100, 1500, 50) 16 | local FOV = gui.Slider(GROUP, "sonar.fov", "FOV", 10, 1, 180, 1) 17 | local FOV_ROTATION = gui.Slider(GROUP, "sonar.rotation", "FOV rotation", 360, 0, 360, 1) 18 | local DISTANCEBASED = gui.Checkbox(GROUP, "sonar.distancebasedfreq", "Distancebased Beep-frequency", false) 19 | local DISTANCEBASED_VOLUME = gui.Checkbox(GROUP, "sonar.distancebasedvol", "Distancebased Beep-volume", false) 20 | local VISUALIZE_FOV = gui.Checkbox(GROUP, "sonar.visualize", "Visualize FOV", false) 21 | 22 | --- Descriptions 23 | ENABLE:SetDescription "Enables Sonar ESP." 24 | SOUND:SetDescription "Select which sound should be played." 25 | VOLUME:SetDescription "Master volume of the sound." 26 | DISTANCE:SetDescription "Distance of the FOV." 27 | FOV:SetDescription "Field of view of the sonar." 28 | FOV_ROTATION:SetDescription "Rotation of the FOV." 29 | DISTANCEBASED:SetDescription "Play sound more frequently when enemies are near." 30 | DISTANCEBASED_VOLUME:SetDescription "Play sound louder when enemies are near." 31 | VISUALIZE_FOV:SetDescription "Visualize the FOV." 32 | 33 | --- Variables 34 | local lastBeep = 0 35 | local sounds = {"buttons/bell1", "buttons/blip1", "buttons/blip2", "buttons/button8", "buttons/button9"} 36 | 37 | --- Localize API 38 | local rad = math.rad 39 | local cos = math.cos 40 | local sin = math.sin 41 | local sqrt = math.sqrt 42 | local atan = math.atan 43 | local w2s = client.WorldToScreen 44 | local renderLine = draw.Line 45 | 46 | local function drawFOV(vector, radius, color) 47 | local oldX, oldY 48 | draw.Color(color[1], color[2], color[3], color[4]) 49 | local fov = FOV:GetValue() 50 | local fovRotation = 180 - FOV_ROTATION:GetValue() 51 | local engineAngles = engine.GetViewAngles() 52 | engineAngles.y = engineAngles.y + fovRotation + (180 - fov) 53 | engineAngles:Normalize() 54 | 55 | for rotation = engineAngles.y, engineAngles.y + (fov * 2), 1 do 56 | local rotRad = rad(rotation) 57 | local newVector = Vector3(radius * cos(rotRad) + vector.x, radius * sin(rotRad) + vector.y, vector.z) 58 | local x, y = w2s(newVector) 59 | 60 | if fov ~= 180 then 61 | if rotation == engineAngles.y or rotation == engineAngles.y + (fov * 2) then 62 | local x2, y2 = w2s(vector) 63 | if x ~= nil and x2 ~= nil then 64 | renderLine(x, y, x2, y2) 65 | for i = 0, 4 do 66 | renderLine(x, y + i, x2, y2 + i) 67 | end 68 | end 69 | end 70 | end 71 | 72 | if x ~= nil and oldX ~= nil then 73 | renderLine(x, y, oldX, oldY) 74 | for i = 0, 4 do 75 | renderLine(x, y + i, oldX, oldY + i) 76 | end 77 | end 78 | oldX, oldY = x, y 79 | end 80 | end 81 | 82 | local function Magnitude(vec) 83 | return sqrt(vec.x * vec.x + vec.y * vec.y + vec.z * vec.z) 84 | end 85 | 86 | local function Subtract(vector1, vector2) 87 | return Vector3(vector1.x - vector2.x, vector1.y - vector2.y, vector1.z - vector2.z) 88 | end 89 | 90 | local function calcAngle(src, dst) --- From source sdk, thx valve 91 | local angles = EulerAngles(0, 0, 0) 92 | local delta = Subtract(src, dst) 93 | local hyp = Magnitude(delta) 94 | angles.x = atan(delta.z / hyp) * 180.0 / 3.14159265358979323846 95 | angles.y = atan(delta.y / delta.x) * 180.0 / 3.14159265358979323846 96 | angles.z = 0.0 97 | 98 | if delta.x >= 0.0 then 99 | angles.y = angles.y + 180.0 100 | end 101 | 102 | angles:Normalize() 103 | return angles 104 | end 105 | 106 | local function hkDraw() 107 | local pLocal = entities.GetLocalPlayer() 108 | 109 | if pLocal and pLocal:IsAlive() and ENABLE:GetValue() then 110 | local absOrigin = pLocal:GetAbsOrigin() 111 | local enemiesInRange = 0 112 | local enemies = 0 113 | local replayGap = 1 114 | local closestDistance = 9999 115 | local fov = FOV:GetValue() 116 | local fovRotation = FOV_ROTATION:GetValue() 117 | local engineAngles = engine.GetViewAngles() 118 | local maxDistance = DISTANCE:GetValue() 119 | 120 | for i = 1, 64, 1 do 121 | local pEntity = entities.GetByIndex(i) 122 | 123 | if pEntity then 124 | local m_hPawn = pEntity:GetPropEntity "m_hPawn" 125 | 126 | if m_hPawn and m_hPawn:IsAlive() then 127 | if m_hPawn:GetTeamNumber() ~= pLocal:GetTeamNumber() then 128 | enemies = enemies + 1 129 | local pEntityOrigin = m_hPawn:GetAbsOrigin() 130 | local CalcAngles = calcAngle(absOrigin, pEntityOrigin) 131 | local originDelta = sqrt((absOrigin.x - pEntityOrigin.x) ^ 2 + (absOrigin.y - pEntityOrigin.y) ^ 2) 132 | 133 | if originDelta <= maxDistance then 134 | CalcAngles.y = (CalcAngles.y - engineAngles.y + fovRotation) 135 | CalcAngles:Normalize() 136 | 137 | if CalcAngles.y < 0 then 138 | if CalcAngles.y >= (fov * -1) then 139 | enemiesInRange = enemiesInRange + 1 140 | end 141 | elseif CalcAngles.y > 0 then 142 | if CalcAngles.y <= fov then 143 | enemiesInRange = enemiesInRange + 1 144 | end 145 | end 146 | if originDelta < closestDistance then 147 | closestDistance = originDelta 148 | end 149 | end 150 | end 151 | end 152 | end 153 | end 154 | 155 | if DISTANCEBASED:GetValue() then 156 | replayGap = 0.1 + (0.8 * (closestDistance / 1500)) 157 | end 158 | 159 | if enemiesInRange > 0 and lastBeep < globals.RealTime() - replayGap then 160 | local button = sounds[SOUND:GetValue() + 1] 161 | local vol = VOLUME:GetValue() / 1000 162 | 163 | if DISTANCEBASED_VOLUME:GetValue() then 164 | vol = (1 - (closestDistance / 1500)) * vol 165 | end 166 | 167 | client.SetConVar("snd_toolvolume", vol, true); 168 | client.Command("play sounds/" .. button, true) 169 | lastBeep = globals.RealTime() 170 | end 171 | 172 | if VISUALIZE_FOV:GetValue() then 173 | drawFOV(absOrigin, maxDistance, {255 * (enemiesInRange / enemies), 25, 25, 155}) 174 | end 175 | end 176 | end 177 | callbacks.Register("Draw", "hkDraw", hkDraw) 178 | -------------------------------------------------------------------------------- /CS2BombDamage.lua: -------------------------------------------------------------------------------- 1 | --[==[ 2 | This script was made by Good_Evening (https://aimware.net/forum/user/455340) 3 | ForumThread: https://aimware.net/forum/thread/174929 4 | ]==] 5 | 6 | local _DEBUG = false 7 | 8 | local font = draw.CreateFont("Arial", 12, 100) 9 | 10 | local g_stBombRadius = { 11 | --map_showbombradius 12 | ["( 0, 0, 0 ),( 0, 0, 0 )"] = 1750, -- Game's Default Value 13 | ["( -440, -2150, -168 ),( -2048, 256, -151 )"] = 2275, -- Mirage 14 | ["( -2136, 662, 506 ),( -1104, 64, 108 )"] = 2275, -- Overpass 15 | ["( -293.5, -621, 11791.5 ),( -2248, 797.5, 11758 )"] = 1750, -- Vertigo 16 | ["( -1392, 844, 68 ),( 886.5, 62, 144 )"] = 2275, -- Ancient 17 | ["( 1976, 462, 180 ),( 351.99997, 2768, 173 )"] = 2170, -- Inferno 18 | ["( 688, -719.99994, -368 ),( 592, -1008, -748 )"] = 2275, -- Nuke 19 | ["( 1237.4761, 1953.5, -181.5 ),( -1040, 694, -2 )"] = 1575, -- Anubis 20 | ["( 1112, 2480, 144 ),( -1536, 2680, 48 )"] = 1750, -- Dust 2 21 | } 22 | 23 | local function GetBombRadius() 24 | local iBombRadius = 1750 -- Game's Default Value 25 | local sFormat = "%s,%s" 26 | 27 | local aC_CSPlayerResource = entities.FindByClass("C_CSPlayerResource") 28 | 29 | if type(aC_CSPlayerResource) ~= "table" then 30 | return 31 | end 32 | 33 | if #aC_CSPlayerResource <= 0 then 34 | return 35 | end 36 | 37 | for _, ent in pairs(aC_CSPlayerResource) do 38 | local sIdentifier = 39 | sFormat:format(ent:GetPropVector("m_bombsiteCenterA") or "", ent:GetPropVector("m_bombsiteCenterB") or "") 40 | 41 | local v = g_stBombRadius[sIdentifier] 42 | if not v and _DEBUG then 43 | print(('["%s"]'):format(sIdentifier)) 44 | end 45 | 46 | iBombRadius = math.max(iBombRadius, v or 0) 47 | end 48 | 49 | return iBombRadius 50 | end 51 | 52 | local g_iTickCount = 0 53 | local g_iLastTickCount = 0 54 | 55 | local g_iLocalHealth = 0 56 | local g_iLocalArmor = 0 57 | local g_vLocalViewOrigin = Vector3(0, 0, 0) 58 | 59 | local g_iBombRadius = 1750 60 | 61 | local function OnTick() 62 | local pLocalPlayer = entities.GetLocalPlayer() 63 | if not pLocalPlayer then 64 | return 65 | end 66 | 67 | g_iLocalHealth = pLocalPlayer:GetPropInt("m_iHealth") or 0 68 | g_iLocalArmor = pLocalPlayer:GetPropInt("m_ArmorValue") or 0 69 | g_vLocalViewOrigin = pLocalPlayer:GetAbsOrigin() 70 | + (pLocalPlayer:GetPropVector("m_vecViewOffset") or Vector3(0, 0, 62)) 71 | 72 | g_iBombRadius = GetBombRadius() 73 | end 74 | 75 | callbacks.Register("Draw", function() 76 | g_iTickCount = globals.TickCount() 77 | 78 | if g_iTickCount ~= g_iLastTickCount then 79 | g_iLastTickCount = g_iTickCount 80 | OnTick() 81 | end 82 | end) 83 | 84 | callbacks.Register("DrawESP", function(ctx) 85 | local pEnt = ctx:GetEntity() 86 | 87 | if not pEnt or g_iLocalHealth <= 0 then 88 | return 89 | end 90 | 91 | if pEnt:GetClass() ~= "C_PlantedC4" then 92 | return 93 | end 94 | 95 | if not pEnt:GetPropBool("m_bBombTicking") then 96 | return 97 | end 98 | 99 | local fDistance = (pEnt:GetAbsOrigin() - g_vLocalViewOrigin):Length() 100 | 101 | local fDamage = (g_iBombRadius / 3.5) * math.exp(fDistance ^ 2 / (-2 * (g_iBombRadius / 3) ^ 2)) 102 | 103 | if g_iLocalArmor > 0 then 104 | fDamage = (fDamage / 4 > g_iLocalArmor) and (fDamage - g_iLocalArmor * 2) or (fDamage / 2) 105 | end 106 | 107 | fDamage = math.floor(fDamage + 0.75) 108 | 109 | if fDamage >= g_iLocalHealth then 110 | ctx:Color(255, 55, 55, 255) 111 | draw.SetFont(font) 112 | ctx:AddTextBottom("LETHAL") 113 | 114 | return 115 | end 116 | 117 | local v = math.floor(255 - 200 * math.max(fDamage / g_iLocalHealth, 0)) 118 | 119 | ctx:Color(255, v, v, 255) 120 | ctx:AddTextBottom(("-%0.0fHP"):format(fDamage)) 121 | end) 122 | 123 | print("Bombdamage loaded") 124 | -------------------------------------------------------------------------------- /CS2BombESPText.lua: -------------------------------------------------------------------------------- 1 | local ref = gui.Reference("Visuals", "Overlay", "Enemy") 2 | local chk = gui.Checkbox(ref, "enablebombesptext", "BoooooooombESP", false) 3 | local function OnDrawESP(builder) 4 | if not entities.GetLocalPlayer() or not chk then 5 | return 6 | end 7 | local players = entities.FindByClass("C_CSPlayerPawn") 8 | local ent = builder:GetEntity() 9 | for i = 1, #players do 10 | local player = players[i] 11 | print(player) 12 | end 13 | local c4bomb = ent:GetPropEntity("m_iPlayerC4") 14 | if not c4bomb then 15 | return 16 | else 17 | builder:Color(255, 0, 0, 255) 18 | builder:AddTextBottom("BOMBer") 19 | end 20 | end 21 | callbacks.Register("DrawESP", OnDrawESP) 22 | --***********************************************-- 23 | print("" .. GetScriptName() .. " loaded without Errors") 24 | -------------------------------------------------------------------------------- /CS2ChromaCrosshair.lua: -------------------------------------------------------------------------------- 1 | -- Created by ArtzHarvest - https://aimware.net/forum/user/484354 2 | 3 | callbacks.Register("Draw", function() 4 | local lp = entities.GetLocalPlayer() 5 | if not lp:IsAlive() then return end 6 | 7 | client.Command("cl_crosshaircolor 5", true); 8 | 9 | local maxColorValue = 255 10 | local speed = 1 11 | 12 | local counter = 1 13 | if counter <= maxColorValue then 14 | local r = math.floor(math.sin(globals.RealTime() * speed) * 127 + 128) 15 | local g = math.floor(math.sin(globals.RealTime() * speed + 2) * 127 + 128) 16 | local b = math.floor(math.sin(globals.RealTime() * speed + 4) * 127 + 128) 17 | 18 | client.Command("cl_crosshaircolor_g "..g..";cl_crosshaircolor_r "..r..";cl_crosshaircolor_b "..b, true); 19 | 20 | counter = counter + 1 21 | end 22 | if counter == maxColorValue then 23 | counter = 1 24 | end 25 | end) 26 | -------------------------------------------------------------------------------- /CS2DeadESP.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | DeadESP Script for Aimware 3 | Author: ticzz | aka KriZz87 4 | GitHub: https://github.com/ticzz/Aimware-v5-CS2-luas 5 | 6 | Description: 7 | This script enables extra ESP visuals for dead players to help teammates, 8 | while disabling most extras for alive players to hide cheats. 9 | It also allows briefly enabling extras while alive via a toggle hotkey. 10 | 11 | Inspired by zack's [https://aimware.net/forum/user-36169.html] "always esp on dead.lua" 12 | ]] 13 | 14 | local esp_tab = gui.Tab(gui.Reference("VISUALS"), "deadesp.tab", "DeadESP") 15 | local gui_group = gui.Groupbox(esp_tab, "DeadESP", 10, 10, 300, 0) 16 | 17 | local enabled = gui.Checkbox(gui_group, "enable", "Enable DeadESP", false) 18 | local key_mode = gui.Combobox(gui_group, "keymode", "Key Mode", "Hold", "Toggle") 19 | local toggle_key = gui.Keybox(gui_group, "togglekey", "Toggle Key", 0) 20 | local chams_type = gui.Combobox(gui_group, "chamsTypes", "Chams Type", "Off", "Flat") 21 | local indicator_color = gui.ColorPicker(gui_group, "indicator.color", "Indicator Color", 0, 0, 0, 255) 22 | local indicator_x = gui.Slider(gui_group, "Indicator X Position", 15, 0, draw.GetScreenSize()) 23 | local indicator_y = gui.Slider(gui_group, "Indicator Y Position", draw.GetScreenSize() / 2, 0, draw.GetScreenSize()) 24 | 25 | gui.Text(gui_group, "Created by ticzz | aka KriZz87") 26 | gui.Text(gui_group, "https://github.com/ticzz/Aimware-v5-CS2-luas") 27 | key_mode:SetDescription(key_mode, "Switch between onhold key and perm toggle key modes") 28 | toggle_key:SetDescription(toggle_key, "Key to turn on Chams through walls while alive") 29 | chams_type:SetDescription(chams_type, "Chams used for on-key wallhack and while dead") 30 | indicator_color:SetDescription(indicator_color, "Sets the color of the indicator") 31 | indicator_x:SetDescription(indicator_x, "Sets the X position for the indicator") 32 | indicator_y:SetDescription(indicator_y, "Sets the Y position for the indicator") 33 | 34 | local font = draw.AddFont("Verdana", 13, 800) 35 | local is_alive = false 36 | local is_toggled = false 37 | 38 | local function EnableExtraESP() 39 | gui.SetValue("esp.chams.enemy.occluded", 1) 40 | gui.SetValue("esp.chams.enemy.visible", 1) 41 | gui.SetValue("esp.chams.enemyattachments.occluded", 0) 42 | gui.SetValue("esp.chams.enemyattachments.visible", 0) 43 | gui.SetValue("esp.chams.friendlyattachments.occluded", 0) 44 | gui.SetValue("esp.chams.friendlyattachments.visible", 0) 45 | gui.SetValue("esp.overlay.enemy.box", false) 46 | gui.SetValue("esp.overlay.enemy.flags.hasdefuser", true) 47 | gui.SetValue("esp.overlay.enemy.flags.hasc4", true) 48 | gui.SetValue("esp.overlay.enemy.flags.reloading", false) 49 | gui.SetValue("esp.overlay.enemy.flags.scoped", false) 50 | gui.SetValue("esp.overlay.enemy.health.healthnum", true) 51 | gui.SetValue("esp.overlay.enemy.health.healthbar", true) 52 | gui.SetValue("esp.overlay.enemy.weapon", true) 53 | gui.SetValue("esp.overlay.weapon.ammo", true) 54 | gui.SetValue("esp.overlay.enemy.barrel", false) 55 | gui.SetValue("esp.overlay.enemy.armor", true) 56 | end 57 | 58 | local function DisableExtraESP() 59 | gui.SetValue("esp.chams.enemy.visible", chams_type:GetValue()) 60 | gui.SetValue("esp.chams.enemy.occluded", 0) 61 | gui.SetValue("esp.chams.enemyattachments.occluded", 0) 62 | gui.SetValue("esp.chams.enemyattachments.visible", 0) 63 | gui.SetValue("esp.chams.friendlyattachments.occluded", 0) 64 | gui.SetValue("esp.chams.friendlyattachments.visible", 0) 65 | gui.SetValue("esp.overlay.enemy.box", false) 66 | gui.SetValue("esp.overlay.enemy.flags.hasdefuser", false) 67 | gui.SetValue("esp.overlay.enemy.flags.hasc4", false) 68 | gui.SetValue("esp.overlay.enemy.flags.reloading", false) 69 | gui.SetValue("esp.overlay.enemy.flags.scoped", false) 70 | gui.SetValue("esp.overlay.enemy.health.healthnum", false) 71 | gui.SetValue("esp.overlay.enemy.health.healthbar", false) 72 | gui.SetValue("esp.overlay.enemy.weapon", false) 73 | gui.SetValue("esp.overlay.weapon.ammo", false) 74 | gui.SetValue("esp.overlay.enemy.barrel", false) 75 | gui.SetValue("esp.overlay.enemy.armor", false) 76 | end 77 | 78 | local function EnableOnHoldESP() 79 | gui.SetValue("esp.chams.enemy.occluded", 1) 80 | end 81 | 82 | local function UpdateESP() 83 | draw.SetFont(font) 84 | 85 | local local_player = entities.GetLocalPlayer() 86 | if not local_player or not enabled:GetValue() then 87 | return 88 | end 89 | 90 | if not toggle_key:GetValue() then 91 | return 92 | end 93 | 94 | is_alive = local_player:IsAlive() 95 | 96 | if is_alive then 97 | DisableExtraESP() 98 | 99 | if key_mode:GetValue() == 0 then -- Hold mode 100 | if input.IsButtonDown(toggle_key:GetValue()) then 101 | EnableOnHoldESP() 102 | draw.Color(indicator_color:GetValue()) 103 | draw.TextShadow(indicator_x:GetValue(), indicator_y:GetValue(), "OnHold Chams") 104 | else 105 | DisableExtraESP() 106 | end 107 | else -- Toggle mode 108 | if input.IsButtonPressed(toggle_key:GetValue()) then 109 | is_toggled = not is_toggled 110 | end 111 | 112 | if is_toggled then 113 | EnableOnHoldESP() 114 | draw.Color(indicator_color:GetValue()) 115 | draw.TextShadow(indicator_x:GetValue(), indicator_y:GetValue(), "WH Chams On") 116 | else 117 | DisableExtraESP() 118 | end 119 | end 120 | else 121 | EnableExtraESP() 122 | end 123 | end 124 | 125 | callbacks.Register("Draw", UpdateESP) 126 | 127 | 128 | 129 | --***********************************************-- 130 | 131 | local gui_name = gui.GetScriptName() 132 | print("♥♥♥ " .. gui_name .. " loaded without errors ♥♥♥") 133 | -------------------------------------------------------------------------------- /CS2JumpScoutFix.lua: -------------------------------------------------------------------------------- 1 | local function get_weapon_class(weapon_id) 2 | if weapon_id == 11 or weapon_id == 38 then 3 | return "asniper" 4 | elseif weapon_id == 1 or weapon_id == 64 then 5 | return "hpistol" 6 | elseif weapon_id == 14 or weapon_id == 28 then 7 | return "lmg" 8 | elseif weapon_id == 2 or weapon_id == 3 or weapon_id == 4 or weapon_id == 30 or weapon_id == 32 or weapon_id == 36 or 9 | weapon_id == 61 or weapon_id == 63 then 10 | return "pistol" 11 | elseif weapon_id == 7 or weapon_id == 8 or weapon_id == 10 or weapon_id == 13 or weapon_id == 16 or weapon_id == 39 or 12 | weapon_id == 60 then 13 | return "rifle" 14 | elseif weapon_id == 40 then 15 | return "scout" 16 | elseif weapon_id == 17 or weapon_id == 19 or weapon_id == 23 or weapon_id == 24 or weapon_id == 26 or weapon_id == 33 or 17 | weapon_id == 34 then 18 | return "smg" 19 | elseif weapon_id == 25 or weapon_id == 27 or weapon_id == 29 or weapon_id == 35 then 20 | return "shotgun" 21 | elseif weapon_id == 9 then 22 | return "sniper" 23 | elseif weapon_id == 31 then 24 | return "zeus" 25 | elseif weapon_id == 37 then 26 | return "SHIELD" 27 | elseif weapon_id == 85 then 28 | return "Bumpmine" 29 | end 30 | return "shared" 31 | end 32 | 33 | callbacks.Register("Draw", jump_scout_fix, function() 34 | local localPlayer = entities.GetLocalPlayer() 35 | if not localPlayer or not localPlayer:IsAlive() then 36 | gui.SetValue("misc.strafe.enable", true) 37 | return 38 | end 39 | 40 | local weapon_id = localPlayer:GetWeaponID() 41 | local weapon_group = get_weapon_class(weapon_id) 42 | local velocity = localPlayer:GetPropVector("m_vecVelocity") 43 | local localspeed = velocity:Length2D() 44 | if not localspeed then 45 | return 46 | end 47 | if weapon_group ~= "scout" then 48 | return 49 | elseif weapon_group == "scout" then 50 | if localspeed < 25 then 51 | gui.SetValue("misc.strafe.enable", false) 52 | else 53 | gui.SetValue("misc.strafe.enable", true) 54 | end 55 | end 56 | end) 57 | 58 | print("♥♥♥ " .. GetScriptName() .. " loaded without Errors ♥♥♥") 59 | -------------------------------------------------------------------------------- /CS2NightMode.lua: -------------------------------------------------------------------------------- 1 | local effects = gui.Reference("Visuals", "Other", "Effects") 2 | local nightmode = gui.Slider(effects, "visuals.brightness.amount", "Brightness adjustment", 1.0, 0.0, 4.0, 0.01) 3 | nightmode:SetDescription("Modify exposure values.") 4 | local amount = 0 5 | local alive = false 6 | 7 | local function handle_update() 8 | local C_PostProcessingVolume = entities.FindByClass("C_PostProcessingVolume"); 9 | 10 | if #C_PostProcessingVolume <= 0 or amount == nil then 11 | return 12 | end 13 | 14 | for i, v in pairs(C_PostProcessingVolume) do 15 | v:SetPropBool(true, "m_bExposureControl") 16 | v:SetPropFloat(amount, "m_flMinExposure") 17 | v:SetPropFloat(amount, "m_flMaxExposure") 18 | end 19 | end 20 | 21 | -- reset on unload 22 | callbacks.Register("Unload", function() 23 | amount = 1 24 | handle_update() 25 | end) 26 | 27 | callbacks.Register("Draw", function() 28 | -- callbacks are fucked, also resets on death 29 | state = entities.GetLocalPlayer():IsAlive() 30 | if state ~= alive then 31 | handle_update() 32 | alive = state 33 | end 34 | 35 | -- update dat ho 36 | if amount ~= nightmode:GetValue() then 37 | amount = nightmode:GetValue() 38 | handle_update() 39 | end 40 | end) 41 | 42 | -------------------------------------------------------------------------------- /CS2NoSpecListwithoutSpectators.lua: -------------------------------------------------------------------------------- 1 | local iLastTick = 0 2 | 3 | callbacks.Register("Draw", function() 4 | if globals.TickCount() > iLastTick then 5 | local playerList = entities.FindByClass("C_CSPlayerPawn") 6 | for i = 1, #playerList do 7 | if playerList[i]:GetPropEntity("m_hObserverTarget"):GetIndex() == entities.GetLocalPlayer():GetIndex() then 8 | gui.SetValue("misc.showspec", true) 9 | return 10 | end 11 | end 12 | gui.SetValue("misc.showspec", false) 13 | end 14 | iLastTick = globals.TickCount() 15 | end) 16 | -------------------------------------------------------------------------------- /CS2OutofViewCircles.lua: -------------------------------------------------------------------------------- 1 | local ref = gui.Reference("Visuals", "World", "Helper") 2 | local OOV_always = gui.Checkbox(ref, "OOV.always", "Consider FOV", false) 3 | local OOV_color = gui.ColorPicker(ref, "OOV.clr", "Out Of Viev Color", 255, 255, 255, 255) 4 | 5 | local function bad_argument(expression, name, expected) 6 | assert( 7 | type(expression) == expected, 8 | " bad argument #1 to '%s' (%s expected, got %s)", 9 | 4, 10 | name, 11 | expected, 12 | tostring(type(expression)) 13 | ) 14 | end 15 | 16 | function circle_outline(x, y, r, g, b, a, radius, start_degrees, percentage, thickness, radian) 17 | bad_argument(x and y and radius and start_degrees and percentage and thickness, "circle_outline", "number") 18 | 19 | local thickness = radius - thickness 20 | local percentage = math.abs(percentage * 360) 21 | local radian = radian or 1 22 | 23 | draw.Color(r, g, b, a) 24 | 25 | for i = start_degrees + radian, start_degrees + percentage, radian do 26 | local cos_1 = math.cos(i * math.pi / 180) 27 | local sin_1 = math.sin(i * math.pi / 180) 28 | local cos_2 = math.cos((i + radian) * math.pi / 180) 29 | local sin_2 = math.sin((i + radian) * math.pi / 180) 30 | 31 | local x0 = x + cos_2 * thickness 32 | local y0 = y + sin_2 * thickness 33 | local x1 = x + cos_1 * radius 34 | local y1 = y + sin_1 * radius 35 | local x2 = x + cos_2 * radius 36 | local y2 = y + sin_2 * radius 37 | local x3 = x + cos_1 * thickness 38 | local y3 = y + sin_1 * thickness 39 | 40 | draw.Triangle(x1, y1, x2, y2, x3, y3) 41 | draw.Triangle(x3, y3, x2, y2, x0, y + sin_2 * thickness) 42 | end 43 | end 44 | local function clamp(val, min, max) 45 | if val > max then 46 | return max 47 | elseif val < min then 48 | return min 49 | else 50 | return val 51 | end 52 | end 53 | 54 | local alpha = {} 55 | local players = { activity = {} } 56 | 57 | local function Draw() 58 | local lp = entities.GetLocalPlayer() 59 | if not lp then 60 | return 61 | end 62 | 63 | local fade = ((1.0 / 0.15) * globals.FrameTime()) * 80 64 | local r, g, b, a = OOV_color:GetValue() 65 | 66 | local screen_size = { draw.GetScreenSize() } 67 | local screen_size_x = screen_size[1] * 0.5 68 | local screen_size_y = screen_size[2] * 0.5 69 | 70 | local out_of_view_scale = 15 71 | 72 | local temp = {} 73 | local lp_abs = lp:GetAbsOrigin() 74 | local view_angles = engine.GetViewAngles() 75 | 76 | local CCSPlayer = entities.FindByClass("C_CSPlayerPawn") 77 | for k, v in pairs(CCSPlayer) do 78 | local index = v:GetIndex() 79 | 80 | local v_abs = v:GetAbsOrigin() 81 | local dist = vector.Distance({ v_abs.x, v_abs.y, v_abs.z }, { lp_abs.x, lp_abs.y, lp_abs.z }) 82 | 83 | alpha[index] = alpha[index] or 0 84 | if players.activity[index] then 85 | alpha[index] = players[index] and lp:IsAlive() and clamp(alpha[index] + fade, 0, a) 86 | or clamp(alpha[index] - fade, 0, a) 87 | else 88 | alpha[index] = v:IsPlayer() 89 | and v:GetTeamNumber() ~= lp:GetTeamNumber() 90 | and v:IsAlive() 91 | and lp:IsAlive() 92 | and dist <= 1500 93 | and clamp(alpha[index] + fade, 0, a) 94 | or clamp(alpha[index] - fade, 0, a) 95 | end 96 | 97 | if alpha[index] ~= 0 then 98 | table.insert(temp, CCSPlayer[k]) 99 | end 100 | players[index] = nil 101 | players.activity[index] = nil 102 | end 103 | 104 | for k, v in pairs(temp) do 105 | local index = v:GetIndex() 106 | local v_abs = v:GetAbsOrigin() 107 | local psx, psy = client.WorldToScreen(v_abs) 108 | angle = (v_abs - lp_abs):Angles() 109 | angle.y = angle.y - view_angles.y 110 | for i = 1, 2, 0.2 do 111 | local alpha = i / 5 * alpha[index] 112 | 113 | if 114 | psx == nil and psy == nil 115 | or psx < 100 116 | or psy < 100 117 | or psx > screen_size_x + 500 118 | or psy > screen_size_y + 100 119 | or not OOV_always:GetValue() 120 | then 121 | circle_outline( 122 | screen_size_x, 123 | screen_size_y, 124 | r, 125 | g, 126 | b, 127 | alpha, 128 | (125 + i), 129 | (270 - 0.13 * 170) - angle.y + (i * 0.2), 130 | 0.075 + (i * 0.00005), 131 | (i * 2) 132 | ) 133 | circle_outline( 134 | screen_size_x, 135 | screen_size_y, 136 | r, 137 | g, 138 | b, 139 | alpha, 140 | (130 + i), 141 | (270 - 0.13 * 170) - angle.y + (i * 0.2), 142 | 0.075 + (i * 0.00005), 143 | (i * 0.5) 144 | ) 145 | end 146 | end 147 | end 148 | end 149 | 150 | callbacks.Register("Draw", Draw) 151 | 152 | --***********************************************-- 153 | 154 | print("♥♥♥ " .. GetScriptName() .. " loaded without Errors ♥♥♥") 155 | -------------------------------------------------------------------------------- /CS2RainbowCrosshairChamsEsp.lua: -------------------------------------------------------------------------------- 1 | local ref = gui.Reference("Visuals", "Other", "Effects") 2 | 3 | -- Create necessary components 4 | gui.Text(ref, "Enable Rainbow Colors") 5 | local crosshairEnabled = gui.Checkbox(ref, "crosshairEnabled", "Enable Crosshair", false) 6 | local chamsEnabled = gui.Checkbox(ref, "chamsEnabled", "Enable Chams", false) 7 | local espEnabled = gui.Checkbox(ref, "espEnabled", "Enable ESP", false) 8 | 9 | local crosshairFrequency = gui.Slider(ref, "crosshairFreq", "Crosshair Frequency", 0.75, 0, 50, 0.05) 10 | local chamsFrequency = gui.Slider(ref, "chamsFreq", "Chams Frequency", 0.75, 0, 50, 0.05) 11 | local espFrequency = gui.Slider(ref, "espFreq", "ESP Frequency", 0.75, 0, 50, 0.05) 12 | 13 | -- Function to handle updating colors 14 | local updateColors = function() 15 | local enabled = crosshairEnabled:GetValue() or chamsEnabled:GetValue() or espEnabled:GetValue() 16 | 17 | if enabled then 18 | if crosshairEnabled:GetValue() then 19 | local freq = crosshairFrequency:GetValue() 20 | local r = math.floor(math.sin(globals.RealTime() * freq + 0) * 127 + 128) 21 | local g = math.floor(math.sin(globals.RealTime() * freq + 2) * 127 + 128) 22 | local b = math.floor(math.sin(globals.RealTime() * freq + 4) * 127 + 128) 23 | client.Command("cl_crosshaircolor 5", true) 24 | client.Command("cl_crosshaircolor_r " .. r, true) 25 | client.Command("cl_crosshaircolor_g " .. g, true) 26 | client.Command("cl_crosshaircolor_b " .. b, true) 27 | end 28 | 29 | if chamsEnabled:GetValue() then 30 | local freq = chamsFrequency:GetValue() 31 | local r = math.floor(math.sin(globals.RealTime() * freq + 0) * 127 + 128) 32 | local g = math.floor(math.sin(globals.RealTime() * freq + 2) * 127 + 128) 33 | local b = math.floor(math.sin(globals.RealTime() * freq + 4) * 127 + 128) 34 | gui.SetValue("esp.chams.enemy.visible.clr", r, g, b, 255, true) 35 | gui.SetValue("esp.chams.enemy.occluded.clr", r, g, b, 255, true) 36 | gui.SetValue("esp.chams.friendly.visible.clr", r, g, b, 255, true) 37 | gui.SetValue("esp.chams.friendly.occluded.clr", r, g, b, 255, true) 38 | gui.SetValue("esp.chams.local.occluded.clr", r, g, b, 255, true) 39 | gui.SetValue("esp.chams.local.visible.clr", r, g, b, 255, true) 40 | gui.SetValue("esp.chams.localweapon.visible.clr", r, g, b, 255, true) 41 | gui.SetValue("esp.chams.localweapon.occluded.clr", r, g, b, 255, true) 42 | gui.SetValue("esp.chams.localarms.visible.clr", r, g, b, 255, true) 43 | gui.SetValue("esp.chams.localarms.occluded.clr", r, g, b, 255, true) 44 | gui.SetValue("esp.chams.weapon.visible.clr", r, g, b, 255, true) 45 | gui.SetValue("esp.chams.weapon.occluded.clr", r, g, b, 255, true) 46 | end 47 | 48 | if espEnabled:GetValue() then 49 | local freq = espFrequency:GetValue() 50 | local r = math.floor(math.sin(globals.RealTime() * freq + 0) * 127 + 128) 51 | local g = math.floor(math.sin(globals.RealTime() * freq + 2) * 127 + 128) 52 | local b = math.floor(math.sin(globals.RealTime() * freq + 4) * 127 + 128) 53 | gui.SetValue("esp.overlay.enemy.skeleton.clr1", r, g, b, 255, true) 54 | gui.SetValue("esp.overlay.enemy.ammo.clr1", r, g, b, 255, true) 55 | gui.SetValue("esp.overlay.enemy.ammo.clr2", r, g, b, 255, true) 56 | gui.SetValue("esp.overlay.enemy.weapon.clr1", r, g, b, 255, true) 57 | gui.SetValue("esp.overlay.weapon.box.clr1", r, g, b, 255, true) 58 | gui.SetValue("esp.overlay.enemy.box.clr1", r, g, b, 255, true) 59 | gui.SetValue("esp.overlay.enemy.health.healthbar.healthclr1", r, g, b, 255, true) 60 | gui.SetValue("esp.overlay.enemy.health.healthbar.healthclr2", r, g, b, 255, true) 61 | gui.SetValue("esp.other.crosshair.clr", r, g, b, 255, true) 62 | gui.SetValue("esp.other.recoilcrosshair.clr", r, g, b, 255, true) 63 | gui.SetValue("esp.overlay.enemy.skeleton.clr1", r, g, b, 255, true) 64 | end 65 | end 66 | end 67 | 68 | -- Function to handle resetting values 69 | local resetValues = function() 70 | crosshairEnabled:SetValue(false) 71 | chamsEnabled:SetValue(false) 72 | espEnabled:SetValue(false) 73 | end 74 | 75 | -- Register callbacks 76 | callbacks.Register("Draw", updateColors) 77 | callbacks.Register("Unload", resetValues) 78 | -------------------------------------------------------------------------------- /CS2RainbowThemeAndHUD.lua: -------------------------------------------------------------------------------- 1 | local ref = gui.Reference("Visuals", "Other", "Effects") 2 | local rainbowthemecb = gui.Checkbox(ref, "rainbowtheme", "GUI Theme Colors Changer", false) 3 | local rainbowhud = gui.Checkbox(ref, "rgbhud", "Hud Colors Changer", false) 4 | local rainbowhudinterval = gui.Slider(ref, "rainbowhud.interval", "Rainbow Hud Interval", 1, 0, 5, 0.05) 5 | local saturation = 0.5 -- range: [0.00, 1.00] | lower is less saturated 6 | 7 | -- Rainbow Hud by stacky 8 | local color = 1 9 | local time = globals.CurTime() 10 | local orig = client.GetConVar("cl_hud_color") 11 | 12 | callbacks.Register("Draw", "rgbhud", function() 13 | if rainbowhud:GetValue() then 14 | client.Command("cl_hud_color " .. color, true) 15 | if globals.CurTime() - rainbowhudinterval:GetValue() >= time then 16 | color = color + 1 17 | time = globals.CurTime() 18 | end 19 | if color > 9 then 20 | color = 1 21 | end 22 | end 23 | end) 24 | 25 | local function hsvToRgb(h, s, v) 26 | local r, g, b 27 | 28 | local i = math.floor(h * 6) 29 | local f = h * 6 - i 30 | local p = v * (1 - s) 31 | local q = v * (1 - f * s) 32 | local t = v * (1 - (1 - f) * s) 33 | 34 | i = i % 6 35 | 36 | if i == 0 then 37 | r, g, b = v, t, p 38 | elseif i == 1 then 39 | r, g, b = q, v, p 40 | elseif i == 2 then 41 | r, g, b = p, v, t 42 | elseif i == 3 then 43 | r, g, b = p, q, v 44 | elseif i == 4 then 45 | r, g, b = t, p, v 46 | elseif i == 5 then 47 | r, g, b = v, p, q 48 | end 49 | 50 | return r, g, b 51 | end 52 | 53 | local function rainbowtheme() 54 | local R, G, B = hsvToRgb((globals.RealTime() * frequency) % 1, saturation, 1) 55 | gui.SetValue("theme.footer.bg", math.floor(R), math.floor(G), math.floor(B), 255) 56 | gui.SetValue("theme.footer.text", math.floor(R), math.floor(G), math.floor(B), 25) 57 | gui.SetValue("theme.header.bg", math.floor(R), math.floor(G), math.floor(B), 25) 58 | gui.SetValue("theme.header.line", math.floor(R), math.floor(G), math.floor(B), 25) 59 | gui.SetValue("theme.header.text", math.floor(R), math.floor(G), math.floor(B), 25) 60 | gui.SetValue("theme.nav.active", math.floor(R), math.floor(G), math.floor(B), 255) 61 | gui.SetValue("theme.nav.bg", math.floor(R), math.floor(G), math.floor(B), 65) 62 | gui.SetValue("theme.nav.shadow", math.floor(R), math.floor(G), math.floor(B), 180) 63 | gui.SetValue("theme.nav.text", math.floor(R), math.floor(G), math.floor(B), 255) 64 | gui.SetValue("theme.tablist.shadow", math.floor(R), math.floor(G), math.floor(B), 32) 65 | gui.SetValue("theme.tablist.tabactivebg", math.floor(R), math.floor(G), math.floor(B), 255) 66 | gui.SetValue("theme.tablist.tabdecorator", math.floor(R), math.floor(G), math.floor(B), 255) 67 | gui.SetValue("theme.tablist.text", math.floor(R), math.floor(G), math.floor(B), 25) 68 | gui.SetValue("theme.tablist.text2", math.floor(R), math.floor(G), math.floor(B), 25) 69 | gui.SetValue("theme.ui2.border", math.floor(R), math.floor(G), math.floor(B), 25) 70 | gui.SetValue("theme.ui2.lowpoly1", math.floor(R), math.floor(G), math.floor(B), 255) 71 | gui.SetValue("theme.ui2.lowpoly2", math.floor(R), math.floor(G), math.floor(B), 105) 72 | end 73 | callbacks.Register("Draw", "rainbowvisuals", function() 74 | if rainbowthemecb == true then 75 | rainbowtheme() 76 | end 77 | end) 78 | 79 | callbacks.Register("Unload", function() 80 | client.Command("cl_hud_color " .. orig, true) 81 | UnloadScript(GetScriptName()) 82 | end) 83 | -------------------------------------------------------------------------------- /CS2RandomRainbowOrCustomSmokeColors.lua: -------------------------------------------------------------------------------- 1 | -- Original "Custom Smoke Colour" by Clark --> https://aimware.net/forum/user/115569 2 | -- (Original was without rainbow effect) 3 | local ref = gui.Reference("Visuals", "Other", "Effects") 4 | local enable = gui.Checkbox(ref, "smoke.enabled", "Change Smoke Colour", false) 5 | local colour = gui.ColorPicker(enable, "smoke.colour", "Smoke Colour", 0, 255, 0, 255) 6 | local rainbow = gui.Checkbox(ref, "smoke.rainbow", "Rainbow Smoke", false) 7 | local smokefrequency = gui.Slider(ref, "smoke.freq", "Set the frequency of Changer", 0.75, 0, 100, 0.05) 8 | smokefrequency:SetDescription("default = 0.75 -- range: [0, 100) | lower is slower") 9 | 10 | local r, g, b = 0, 0, 0 11 | local tick = 0 12 | 13 | callbacks.Register("Draw", function() 14 | if not enable:GetValue() then 15 | return 16 | end 17 | 18 | local smokes = entities.FindByClass("C_SmokeGrenadeProjectile") 19 | 20 | if rainbow:GetValue() then 21 | tick = tick + 1 22 | local smokefreq = smokefrequency:GetValue() -- you can adjust this value to change the speed of the rainbow 23 | r = math.floor(math.sin(tick * smokefreq + 0) * 127 + 128) 24 | g = math.floor(math.sin(tick * smokefreq + 2) * 127 + 128) 25 | b = math.floor(math.sin(tick * smokefreq + 4) * 127 + 128) 26 | else 27 | r, g, b = colour:GetValue() 28 | end 29 | 30 | for i = 1, #smokes do 31 | local smoke = smokes[i] 32 | local bDidSmokeEffect = smoke:GetPropBool("m_bDidSmokeEffect") 33 | 34 | if bDidSmokeEffect == false then 35 | smoke:SetPropVector(Vector3(r, g, b), "m_vSmokeColor") 36 | end 37 | end 38 | end) 39 | -------------------------------------------------------------------------------- /CS2ScoreboardEquipment.lua: -------------------------------------------------------------------------------- 1 | -- Original Scoreboard Equipment by thekorol --> https://aimware.net/forum/user/174137 2 | -- Original Thread in Forum of Aimware --> https://aimware.net/forum/thread/152643 3 | -- Original RAWlink to Lua --> https://raw.githubusercontent.com/thekorol/Aimware-luas/master/ScoreboardEquipment.lua 4 | 5 | -- Just made small changes to this. I added 3 nil-checks and extended a check in line 140 to prevent error spam in console, while no weapon equiped or when the player_ent returns nil like in warmup round. 6 | 7 | local console_handlers = {} 8 | function string:split(sep) 9 | if type(self) ~= "string" then 10 | return {} 11 | end 12 | local sep, fields = sep or ":", {} 13 | local pattern = string.format("([^%s]+)", sep) 14 | self:gsub(pattern, function(c) 15 | fields[#fields + 1] = c 16 | end) 17 | return fields 18 | end 19 | 20 | local weapon_type_int = { 21 | 1, 22 | 1, 23 | 1, 24 | 1, 25 | [7] = 3, 26 | [8] = 3, 27 | [9] = 5, 28 | [10] = 3, 29 | [11] = 5, 30 | [13] = 3, 31 | [14] = 6, 32 | [16] = 3, 33 | [17] = 2, 34 | [19] = 2, 35 | [20] = 19, 36 | [23] = 2, 37 | [24] = 2, 38 | [25] = 4, 39 | [26] = 2, 40 | [27] = 4, 41 | [28] = 6, 42 | [29] = 4, 43 | [30] = 1, 44 | [31] = 0, 45 | [32] = 1, 46 | [33] = 2, 47 | [34] = 2, 48 | [35] = 4, 49 | [36] = 1, 50 | [37] = 19, 51 | [38] = 5, 52 | [39] = 3, 53 | [40] = 5, 54 | [41] = 0, 55 | [42] = 0, 56 | [43] = 9, 57 | [44] = 9, 58 | [45] = 9, 59 | [46] = 9, 60 | [47] = 9, 61 | [48] = 9, 62 | [49] = 7, 63 | [50] = 19, 64 | [51] = 19, 65 | [52] = 19, 66 | [55] = 19, 67 | [56] = 19, 68 | [57] = 11, 69 | [59] = 0, 70 | [60] = 3, 71 | [61] = 1, 72 | [63] = 1, 73 | [64] = 1, 74 | [68] = 9, 75 | [69] = 12, 76 | [70] = 13, 77 | [72] = 15, 78 | [74] = 16, 79 | [75] = 16, 80 | [76] = 16, 81 | [78] = 16, 82 | [80] = 0, 83 | [81] = 9, 84 | [82] = 9, 85 | [83] = 9, 86 | [84] = 9, 87 | [85] = 14, 88 | [500] = 0, 89 | [503] = 0, 90 | [505] = 0, 91 | [506] = 0, 92 | [507] = 0, 93 | [508] = 0, 94 | [509] = 0, 95 | [512] = 0, 96 | [514] = 0, 97 | [515] = 0, 98 | [516] = 0, 99 | [517] = 0, 100 | [518] = 0, 101 | [519] = 0, 102 | [520] = 0, 103 | [521] = 0, 104 | [522] = 0, 105 | [523] = 0, 106 | [525] = 0, 107 | } 108 | 109 | local wep_type = { 110 | taser = 0, 111 | knife = 0, 112 | pistol = 1, 113 | smg = 2, 114 | rifle = 3, 115 | shotgun = 4, 116 | sniperrifle = 5, 117 | machinegun = 6, 118 | c4 = 7, 119 | grenade = 9, 120 | stackableitem = 11, 121 | fists = 12, 122 | breachcharge = 13, 123 | bumpmine = 14, 124 | tablet = 15, 125 | melee = 16, 126 | equipment = 19, 127 | } 128 | local function getWeaponType(wepIdx) 129 | local typeInt = weapon_type_int[tonumber(wepIdx)] 130 | if not typeInt then 131 | return nil 132 | end 133 | for index, value in pairs(wep_type) do 134 | if value == typeInt then 135 | return index ~= 0 and index or (tonumber(wepIdx) == 31 and "taser" or "knife") 136 | end 137 | end 138 | end 139 | 140 | local function register_console_handler(command, handler, force) 141 | if not command or not handler or type(handler) ~= "function" or (console_handlers[command] and not force) then -- if console_handlers[command] and not force then 142 | return false 143 | end 144 | console_handlers[command] = handler 145 | return true 146 | end 147 | 148 | -- Console input 149 | callbacks.Register("SendStringCmd", "lib_console_input", function(c) 150 | local raw_console_input = c:Get() -- Maximum 255 chars 151 | if raw_console_input then 152 | local parsed_console_input = raw_console_input:split(" ") 153 | local command = table.remove(parsed_console_input, 1) 154 | local str = "" 155 | for index, value in ipairs(parsed_console_input) do 156 | str = str .. value .. " " 157 | end 158 | if console_handlers[command] and console_handlers[command](str:sub(1, -2)) then 159 | c:Set("\0") 160 | end 161 | end 162 | end) 163 | local main = [====[ 164 | if (typeof(SClient) == 'undefined' && $.GetContextPanel().id == "CSGOHud") { 165 | SClient = (function () { 166 | $.Msg("Scoreboard Weapon injected successfully! Welcome : " + MyPersonaAPI.GetName()) 167 | var handlers = {} 168 | let registerHandler = function (type, callback) { 169 | handlers[type] = callback 170 | } 171 | let receivedHandler = function (message) { 172 | if (handlers[message.type]) { 173 | handlers[message.type](message) 174 | } 175 | } 176 | return { 177 | register_handler: registerHandler, 178 | receive: receivedHandler 179 | } 180 | })() 181 | } 182 | if ($.GetContextPanel().id == "CSGOHud") { $.Schedule(1, ()=>{GameInterfaceAPI.ConsoleCommand("!panoCall e_PanelWeaponLoaded")}) } 183 | if (typeof(SImageManager) == 'undefined' && $.GetContextPanel().id == "CSGOHud") { 184 | SImageManager = (function () { 185 | var HashMap = function HashMap() { 186 | var length = 0; 187 | var obj = new Object(); 188 | this.isEmpty = function () { 189 | return length == 0; 190 | }; 191 | this.containsKey = function (key) { 192 | return (key in obj); 193 | }; 194 | this.containsValue = function (value) { 195 | for (var key in obj) { 196 | if (obj[key] == value) { 197 | return true; 198 | } 199 | } 200 | return false; 201 | }; 202 | this.put = function (key, value) { 203 | if (!this.containsKey(key)) { 204 | length++; 205 | } 206 | obj[key] = value; 207 | }; 208 | this.get = function (key) { 209 | return this.containsKey(key) ? obj[key] : null; 210 | }; 211 | this.remove = function (key) { 212 | if (this.containsKey(key) && (delete obj[key])) { 213 | length--; 214 | } 215 | }; 216 | this.values = function () { 217 | var _values = new Array(); 218 | for (var key in obj) { 219 | _values.push(obj[key]); 220 | } 221 | return _values; 222 | }; 223 | this.keySet = function () { 224 | var _keys = new Array(); 225 | for (var key in obj) { 226 | _keys.push(key); 227 | } 228 | return _keys; 229 | }; 230 | this.size = function () { 231 | return length; 232 | }; 233 | this.clear = function () { 234 | length = 0; 235 | obj = new Object(); 236 | }; 237 | } 238 | var ImagePool = new HashMap() 239 | class ImageCell { 240 | constructor(xuid) { 241 | var updating = false 242 | var lastUpdateWep = "" 243 | var lastUpdateHL = "" 244 | var lastColor = "" 245 | let primaryLut = ['smg', 'rifle', 'heavy'] 246 | let partInit = "" 247 | this.getTargetXUID = () => { 248 | return xuid 249 | } 250 | this.getTargetPanel = () => { 251 | var panel 252 | var par = $.GetContextPanel().FindChildTraverse("player-" + xuid) 253 | if (!par) 254 | return 255 | var parent = par.FindChildTraverse("name") 256 | if (!parent) 257 | return 258 | panel = parent.FindChildTraverse("CustomImagePanel") 259 | if (!panel) { 260 | panel = $.CreatePanel("Panel", parent, "CustomImagePanel") 261 | } 262 | return panel 263 | } 264 | this.getState = () => { 265 | return updating 266 | } 267 | this.update = (color, equipments, alpha, hl) => { 268 | let colorRGBtoHex = (color) => { 269 | var rgb = color.split(',') 270 | var r = parseInt(rgb[0]) 271 | var g = parseInt(rgb[1]) 272 | var b = parseInt(rgb[2]) 273 | var hex = "#" + ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1) 274 | return hex 275 | } 276 | let targetColor = colorRGBtoHex(color) 277 | let panel = this.getTargetPanel() 278 | if (!panel) {return} 279 | if (GameStateAPI.GetPlayerStatus(xuid) == 1) { 280 | panel.RemoveAndDeleteChildren() 281 | return 282 | } 283 | if (lastUpdateHL != hl || lastUpdateWep != equipments.toString() || lastColor != color) { 284 | updating = true 285 | panel.RemoveAndDeleteChildren() 286 | panel.BLoadLayoutFromString(partInit, false, false) 287 | let sortedEQ = [] 288 | let nades = [] 289 | let others = [] 290 | equipments.forEach((item)=>{ 291 | let curType = InventoryAPI.GetSlot(InventoryAPI.GetFauxItemIDFromDefAndPaintIndex(parseInt(item), 0)) 292 | if(curType == 'grenade'){ 293 | nades.push(item) 294 | } else if (curType == 'secondary') { 295 | nades.unshift(item) 296 | } else if(primaryLut.includes(curType)) { 297 | sortedEQ.push(item) 298 | } else { 299 | others.push(item) 300 | } 301 | }) 302 | sortedEQ.concat(nades).concat(others).forEach((item) => { 303 | let cellPanel = $.CreatePanel("Panel", panel, "CustomPanelCell", { 304 | style: 'margin-right:3px; height:18px;' 305 | }) 306 | let nameUnClipped = InventoryAPI.GetItemDefinitionName(InventoryAPI.GetFauxItemIDFromDefAndPaintIndex(parseInt(item), 0)) 307 | if (!nameUnClipped) 308 | return 309 | $.CreatePanel("Image", cellPanel, "CustomImageCell", { 310 | scaling: 'stretch-to-fit-y-preserve-aspect', 311 | src: 'file://{images}/icons/equipment/' + nameUnClipped.replace( 'weapon_', '' ).replace('item_defuser', 'defuser') + '.svg', 312 | style: hl == item ? ('wash-color-fast: white;opacity:' + alpha + ';-s2-mix-blend-mode: normal;img-shadow: ' + targetColor + ' 1px 1px 1.5px 0.5;') : ('wash-color-fast: hsv-transform(#e8e8e8, 0, 0.96, 0.18);opacity:' + (alpha-0.02) + ';-s2-mix-blend-mode: normal;') 313 | }) 314 | }) 315 | } 316 | lastUpdateHL = hl 317 | lastUpdateWep = equipments.toString() 318 | lastColor = color 319 | updating = false 320 | } 321 | } 322 | } 323 | return { 324 | get_cache: (xuid) => { 325 | if (ImagePool.containsKey(xuid)) { 326 | return ImagePool.get(xuid) 327 | } else { 328 | return false 329 | } 330 | }, 331 | dispatch: (entid, color, alpha, weapons, hl) => { 332 | let xuid = GameStateAPI.GetPlayerXuidStringFromEntIndex(entid) 333 | if (ImagePool.containsKey(xuid)) { 334 | var targetCell = ImagePool.get(xuid) 335 | var waitForUpdate = () => { 336 | if (targetCell.getState()){ 337 | $.Schedule(0.05, waitForUpdate) 338 | } else { 339 | targetCell.update(color, weapons, alpha, hl) 340 | } 341 | } 342 | waitForUpdate() 343 | return true 344 | } else { 345 | ImagePool.put(xuid, new ImageCell(xuid)) 346 | return false 347 | } 348 | }, 349 | destroy: () => { 350 | ImagePool.clear() 351 | } 352 | } 353 | })() 354 | $.RegisterForUnhandledEvent("Scoreboard_OnEndOfMatch", SImageManager.destroy) 355 | $.RegisterForUnhandledEvent('CSGOShowMainMenu', SImageManager.destroy) 356 | $.RegisterForUnhandledEvent('OpenPlayMenu', SImageManager.destroy) 357 | $.RegisterForUnhandledEvent('PanoramaComponent_Lobby_ReadyUpForMatch', SImageManager.destroy) 358 | SClient.register_handler("updateWeapons", (message) => { 359 | if (!SImageManager.dispatch(message.content.xuid, message.content.colorSet, message.content.alpha, message.content.weapons, message.content.highLightWep)) { 360 | $.Schedule(0.5, () => { 361 | SImageManager.dispatch(message.content.xuid, message.content.colorSet, message.content.alpha, message.content.weapons, message.content.highLightWep) 362 | }) 363 | } 364 | }) 365 | } 366 | ]====] 367 | -- Client 368 | local handlers = {} 369 | local pending = {} 370 | local Client = { 371 | updateWeapons = loadstring([=[ 372 | return function(entid, color, alpha, weapons, highLight) 373 | if not weapons or #weapons == 0 then 374 | return 375 | end 376 | alpha = string.format("%1.3f", alpha / 255) 377 | local colorStr = "" .. tostring(color[1]) .. "," .. tostring(color[2]) .. "," .. tostring(color[3]) 378 | local weaponsStr = "" 379 | for index, value in ipairs(weapons) do 380 | weaponsStr = weaponsStr .. "\"" .. value .. "\"" .. "," 381 | end 382 | weaponsStr = weaponsStr:sub(1, -2) 383 | local panoStr = string.format("if(typeof (SClient) != 'undefined') { SClient.receive(%s) }", string.format([[{type: "%s", content: %s}]], "updateWeapons", string.format([[{xuid: %s, colorSet: "%s", alpha: %s , weapons: [%s], highLightWep:"%s" }]], entid, colorStr, alpha, weaponsStr, highLight))) 384 | panorama.RunScript(panoStr) 385 | end 386 | ]=])(), 387 | receive = function(message) 388 | for index, value in ipairs(handlers) do 389 | if value(message) then 390 | return 391 | end 392 | end 393 | end, 394 | register_handler = function(callback) 395 | table.insert(handlers, callback) 396 | end, 397 | } 398 | register_console_handler("!panoCall", function(args) 399 | Client.receive(args) 400 | return true 401 | end, true) 402 | local last_check_sec = 0 403 | local loaded = false 404 | callbacks.Register("Draw", "AWStrangePanoramaFixer", function() 405 | if loaded then 406 | return 407 | end 408 | local cur = string.format("%1.0f", tostring(globals.RealTime())) 409 | if last_check_sec ~= cur then 410 | panorama.RunScript(main) 411 | last_check_sec = cur 412 | end 413 | end) 414 | Client.register_handler(function(msg) 415 | if msg == "e_PanelWeaponLoaded" then 416 | loaded = true 417 | callbacks.Unregister("Draw", "AWStrangePanoramaFixer") -- Credit: squid for api correction 418 | return true 419 | end 420 | end) 421 | local rb_ref = gui.Reference("Visuals") 422 | local tab = gui.Tab(rb_ref, "hudweapon", "Scoreboard Add-ons") 423 | local hudweapon_enable = gui.Checkbox(tab, "hudweapon.enabled", "Display Weapon -> Scoreboard", false) 424 | local menu = { filter = gui.Multibox(tab, "Weapon filter") } 425 | local itemList = { "Primary", "Secondary", "Knife/Taser", "Grenades", "C4", "Defuser", "Armor", "Other" } 426 | for index, value in ipairs(itemList) do 427 | menu["item_" .. index] = gui.Checkbox(menu.filter, "hudweapon.item_" .. index, value, false) 428 | end 429 | local hudweapon_color = gui.ColorPicker(tab, "hudweapon.color", "Blur color of WeaponIcons outlines", 136, 71, 255, 255) 430 | 431 | local player_weapons = {} 432 | for i = 0, 64 do 433 | player_weapons[i] = {} 434 | end 435 | gui.Button(tab, "Clear equipments data", function() 436 | for i = 0, 64 do 437 | player_weapons[i] = {} 438 | end 439 | end) 440 | local function filter_weapon(wepList) 441 | for index, value in ipairs(wepList) do 442 | local wepType = getWeaponType(value) 443 | if 444 | wepType == "smg" 445 | or wepType == "rifle" 446 | or wepType == "shotgun" 447 | or wepType == "sniperrifle" 448 | or wepType == "machinegun" 449 | then 450 | if not menu.item_1:GetValue() then 451 | table.remove(wepList, index) 452 | end 453 | elseif wepType == "pistol" then 454 | if not menu.item_2:GetValue() then 455 | table.remove(wepList, index) 456 | end 457 | elseif wepType == "taser" or "knife" then 458 | if not menu.item_3:GetValue() then 459 | table.remove(wepList, index) 460 | end 461 | elseif wepType == "grenade" then 462 | if not menu.item_4:GetValue() then 463 | table.remove(wepList, index) 464 | end 465 | elseif wepType == "c4" then 466 | if not menu.item_5:GetValue() then 467 | table.remove(wepList, index) 468 | end 469 | elseif wepType == "defuser" then 470 | if not menu.item_6:GetValue() then 471 | table.remove(wepList, index) 472 | end 473 | elseif wepType == "armor" then 474 | if not menu.item_7:GetValue() then 475 | table.remove(wepList, index) 476 | end 477 | else 478 | if not menu.item_8:GetValue() then 479 | table.remove(wepList, index) 480 | end 481 | end 482 | end 483 | return wepList 484 | end 485 | 486 | local hl = {} 487 | local function add_weapon(idx, weapon) 488 | if player_weapons and player_weapons[idx] and #player_weapons[idx] > 0 then 489 | for i = 1, #player_weapons[idx] do 490 | if player_weapons[idx][i] == weapon then 491 | return 492 | end 493 | end 494 | end 495 | table.insert(player_weapons[idx], weapon) 496 | end 497 | 498 | local function remove_weapon(idx, weapon) 499 | if #player_weapons[idx] > 0 then 500 | for i = 1, #player_weapons[idx] do 501 | if player_weapons[idx][i] == weapon then 502 | table.remove(player_weapons[idx], i) 503 | end 504 | end 505 | end 506 | end 507 | 508 | local function deep_compare(tbl1, tbl2) 509 | for key1, value1 in pairs(tbl1) do 510 | local value2 = tbl2[key1] 511 | if value2 == nil then 512 | return false 513 | elseif value1 ~= value2 then 514 | if type(value1) == "table" and type(value2) == "table" then 515 | if not deep_compare(value1, value2) then 516 | return false 517 | end 518 | else 519 | return false 520 | end 521 | end 522 | end 523 | for key2, _ in pairs(tbl2) do 524 | if tbl1[key2] == nil then 525 | return false 526 | end 527 | end 528 | return true 529 | end 530 | 531 | local lastUpdate = 0 532 | 533 | callbacks.Register("Draw", "hud_weapon_render", function() 534 | if hudweapon_enable:GetValue() and entities.GetLocalPlayer() then 535 | local player_resource = entities.GetPlayerResources() 536 | local currentUpdatePlayer = globals.FrameCount() % 16 537 | 538 | if currentUpdatePlayer ~= lastUpdate then 539 | local function updateIdx(currentUpdatePlayer) 540 | local r, g, b, a = hudweapon_color:GetValue() 541 | local forced_index = math.floor(currentUpdatePlayer) 542 | local playerInfo = client.GetPlayerInfo(forced_index) 543 | 544 | if playerInfo and not playerInfo.IsGOTV then 545 | local player_ent = entities.GetByIndex(forced_index) 546 | 547 | if player_ent and not player_ent:IsDormant() then 548 | local current_player_data = {} 549 | local active_weapon = player_ent:GetWeaponID() 550 | 551 | if active_weapon ~= nil then 552 | if player_ent:GetPropInt("m_bHasDefuser") == 1 then 553 | table.insert(current_player_data, "55") 554 | end 555 | 556 | for slot = 0, 63 do 557 | local weapon_ent = 558 | player_ent:GetPropEntity("m_hMyWeapons", string.format("%0.3d", slot)) 559 | 560 | if weapon_ent ~= nil then 561 | local wep_id = weapon_ent:GetWeaponID() 562 | 563 | if wep_id then 564 | table.insert(current_player_data, tostring(wep_id)) 565 | end 566 | end 567 | end 568 | end 569 | 570 | if player_resource:GetPropInt("m_iArmor", player_ent:GetIndex()) > 0 then 571 | if player_resource:GetPropInt("m_bHasHelmet", player_ent:GetIndex()) == 1 then 572 | table.insert(current_player_data, "51") 573 | else 574 | table.insert(current_player_data, "50") 575 | end 576 | end 577 | 578 | Client.updateWeapons( 579 | forced_index, 580 | { r, g, b }, 581 | a, 582 | filter_weapon(current_player_data), 583 | tostring(active_weapon) 584 | ) 585 | 586 | return 587 | elseif player_weapons[forced_index] and #player_weapons[forced_index] > 0 then 588 | Client.updateWeapons( 589 | forced_index, 590 | { r, g, b }, 591 | a, 592 | filter_weapon(player_weapons[forced_index]), 593 | hl[forced_index] 594 | ) 595 | 596 | return 597 | elseif player_weapons[forced_index] and #player_weapons[forced_index] == 0 then 598 | Client.updateWeapons(player_ent:GetIndex(), { r, g, b }, a, { "dead" }, "dead") 599 | end 600 | 601 | if not player_ent:IsAlive() then 602 | Client.updateWeapons(player_ent:GetIndex(), { r, g, b }, a, { "dead" }, "dead") 603 | end 604 | end 605 | end 606 | 607 | updateIdx(currentUpdatePlayer) 608 | updateIdx(currentUpdatePlayer * 2) 609 | updateIdx(currentUpdatePlayer * 4) 610 | end 611 | 612 | lastUpdate = currentUpdatePlayer 613 | end 614 | end) 615 | 616 | callbacks.Register("FireGameEvent", "hud_weapon_events", function(event) 617 | if not entities.GetLocalPlayer() then 618 | return 619 | end 620 | local eventName = event:GetName() 621 | if eventName then 622 | if eventName == "item_equip" then 623 | local entid = entities.GetByUserID(event:GetInt("userid")):GetIndex() 624 | local wepName = event:GetString("defindex") 625 | hl[entid] = wepName 626 | elseif eventName == "item_pickup" then 627 | add_weapon(entities.GetByUserID(event:GetInt("userid")):GetIndex(), event:GetString("defindex")) 628 | elseif eventName == "item_remove" then 629 | remove_weapon(entities.GetByUserID(event:GetInt("userid")):GetIndex(), event:GetString("defindex")) 630 | elseif eventName == "player_death" then 631 | if player_weapons then 632 | player_weapons[entities.GetByUserID(event:GetInt("userid")):GetIndex()] = {} 633 | Client.updateWeapons( 634 | entities.GetByUserID(event:GetInt("userid")):GetIndex(), 635 | { 0, 0, 0 }, 636 | 0, 637 | { "dead" }, 638 | "dead" 639 | ) 640 | end 641 | elseif eventName == "round_end" or eventName == "bomb_dropped" then 642 | for k, v in pairs(player_weapons) do 643 | remove_weapon(k, "49") 644 | end 645 | end 646 | end 647 | end) 648 | --©thekorol 649 | client.AllowListener("item_equip") 650 | client.AllowListener("item_pickup") 651 | client.AllowListener("item_remove") 652 | client.AllowListener("grenade_thrown") 653 | client.AllowListener("player_death") 654 | client.AllowListener("cs_game_disconnected") 655 | client.AllowListener("cs_match_end_restart") 656 | client.AllowListener("start_halftime") 657 | client.AllowListener("game_newmap") 658 | client.AllowListener("round_end") 659 | client.AllowListener("bomb_dropped") 660 | client.AllowListener("item_equip") 661 | client.AllowListener("item_pickup") 662 | client.AllowListener("item_remove") 663 | client.AllowListener("grenade_thrown") 664 | client.AllowListener("player_death") 665 | client.AllowListener("cs_game_disconnected") 666 | client.AllowListener("cs_match_end_restart") 667 | client.AllowListener("start_halftime") 668 | client.AllowListener("game_newmap") 669 | client.AllowListener("round_end") 670 | client.AllowListener("bomb_dropped") 671 | 672 | --***********************************************-- 673 | 674 | print("♥♥♥ " .. GetScriptName() .. " loaded without Errors ♥♥♥") 675 | -------------------------------------------------------------------------------- /CS2Searchbar.lua: -------------------------------------------------------------------------------- 1 | local files = { lua = {} } 2 | local ui_lua = gui.Reference("Settings", "Lua Scripts", "Browse", "") 3 | ui_lua:SetPosY(50) 4 | ui_lua:SetHeight(386) 5 | 6 | local ui_search_lua = gui.Editbox(gui.Reference("Settings", "Lua Scripts", "Browse"), "search", "Search scripts") 7 | ui_search_lua:SetPosY(-10) 8 | ui_search_lua:SetWidth(280) 9 | 10 | local function GetFiles(f) 11 | if f:match(".*lua$") then --or f:match(".*/$*lua$") then 12 | table.insert(files.lua, f) 13 | end 14 | end 15 | 16 | local function Refresh() 17 | files.lua = {} 18 | file.Enumerate(GetFiles) 19 | end 20 | 21 | Refresh() 22 | 23 | local ui_refresh_lua = gui.Button(gui.Reference("Settings", "Lua Scripts", "Other"), "Refresh List", Refresh) 24 | ui_refresh_lua:SetPosY(42) 25 | ui_refresh_lua:SetWidth(123) 26 | ui_refresh_lua:SetPosX(0) 27 | ui_refresh_lua:SetHeight(28) 28 | 29 | local function ApplyLuaSearch() 30 | local temp = { lua = {} } 31 | temp.lua = {} 32 | local searchPattern = ui_search_lua:GetValue():lower() 33 | 34 | for _, lua in ipairs(files.lua) do 35 | if lua:lower():match(searchPattern .. string.format(".*lua$")) ~= nil then 36 | table.insert(temp.lua, lua) 37 | end 38 | end 39 | 40 | ui_lua:SetOptions(unpack(temp.lua)) 41 | end 42 | 43 | local lua_search = 44 | gui.Custom(gui.Reference("Settings", "Lua Scripts"), "lua.search", 0, 0, 0, 0, ApplyLuaSearch, nil, nil) 45 | 46 | callbacks.Register("Unload", function() 47 | ui_lua:SetPosY(0) 48 | ui_lua:SetHeight(432) 49 | end) 50 | 51 | 52 | --***********************************************-- 53 | -- Info about success or failure of loading the script 54 | --***********************************************-- 55 | local name = GetScriptName() 56 | print("♥♥♥ " .. name .. " loaded without Errors ♥♥♥") 57 | -------------------------------------------------------------------------------- /CS2SimpleIndicators.lua: -------------------------------------------------------------------------------- 1 | local logFile = file.Open("error.txt", "a") 2 | local font = draw.CreateFont("Tahoma", 14, 400) 3 | local font2 = draw.CreateFont("Tahoma", 12, 400) 4 | local color = draw.Color 5 | local text = draw.TextShadow 6 | local w, h = draw.GetScreenSize() 7 | local half_h = h / 2 8 | local tab = gui.Reference("Visuals") 9 | local ragebot_accuracy_weapon = gui.Reference("Ragebot", "Accuracy", "Automate") 10 | local gb =gui.Tab(tab,"indicatortab", "Indicators") 11 | local ref= gui.Groupbox(gb, "Indicators") 12 | local activateAll = gui.Checkbox(ref, "activateAll", "Activate All Indicators", false) 13 | local autofire_check = gui.Checkbox(ref, "autofire.ind", "AutoFire Indicator", false) 14 | local fov_check = gui.Checkbox(ref, "fov.ind", "FOV Indicator", false) 15 | local hc_check = gui.Checkbox(ref, "hc.ind", "HC Indicator", false) 16 | local mindmg_check = gui.Checkbox(ref, "mindmg.ind", "MinDmg Indicator", false) 17 | local backtrack_check = gui.Checkbox(ref, "backtrack.ind", "Backtrack Indicator", false) 18 | local quickpeek_check = gui.Checkbox(ref, "quickpeek.ind", "Quickpeek Indicator", false) 19 | local antiaim_check = gui.Checkbox(ref, "antiaim.ind", "AntiAim Indicator", false) 20 | local x_offset = gui.Slider(ref, "w_offset.ind.offset", "Indicators W", 10, 0, w) 21 | local y_offset = gui.Slider(ref, "h_offset.ind.offset", "Indicators H", 240, 0, h) 22 | local on_clr = gui.ColorPicker(ref, "ind.on.color", "Indicators ON Color", 78, 193, 89, 255) 23 | local off_clr = gui.ColorPicker(ref, "ind.off.color", "Indicators OFF Color", 225, 25, 25, 255) 24 | local value_clr = gui.ColorPicker(ref, "ind.value.color", "Indicators Value Color", 30, 170, 200, 255) 25 | local function menu_weapon(var) 26 | local wp = string.match(var, '"(.+)"') 27 | local wp = string.lower(wp) 28 | if wp == "heavy pistol" then 29 | return "hpistol" 30 | elseif wp == "auto sniper" then 31 | return "asniper" 32 | elseif wp == "submachine gun" then 33 | return "smg" 34 | elseif wp == "awp" then 35 | return "sniper" 36 | elseif wp == "ssg08" then 37 | return "scout" 38 | elseif wp == "light machine gun" then 39 | return "lmg" 40 | else 41 | return "shared" 42 | end 43 | end 44 | 45 | 46 | callbacks.Register("Draw", "SimpleIndicators", function() 47 | local lp = entities.GetLocalPlayer() 48 | if not lp then 49 | return 50 | end 51 | local wid = lp:GetWeaponID() 52 | local weapon_ref = menu_weapon(ragebot_accuracy_weapon:GetValue()) 53 | local quickpeek = gui.GetValue("rbot.accuracy.walkbot.peek") 54 | local quickpeekkey = gui.GetValue("rbot.accuracy.walkbot.peekkey") 55 | local fov = gui.GetValue("rbot.aim.target.fov") 56 | local aa_base = gui.GetValue("rbot.antiaim.base") 57 | local aa_base_rot = gui.GetValue("rbot.antiaim.base.rotation") 58 | draw.SetFont(font) 59 | if autofire_check:GetValue() then 60 | if gui.GetValue("rbot.master") == true then 61 | color(on_clr:GetValue()) 62 | text(10 + x_offset:GetValue(), half_h - 40 + y_offset:GetValue(), "AutoFire") 63 | else 64 | color(off_clr:GetValue()) 65 | text(10 + x_offset:GetValue(), half_h - 40 + y_offset:GetValue(), "AutoFire") 66 | end 67 | end 68 | if fov_check:GetValue() then 69 | if fov:GetValue() then 70 | color(on_clr:GetValue()) 71 | text(10 + x_offset:GetValue(), half_h - 25 + y_offset:GetValue(), "FOV: ") 72 | color(value_clr:GetValue()) 73 | text(82 + x_offset:GetValue(), half_h - 25 + y_offset:GetValue(), "" .. fov) 74 | else 75 | color(on_clr:GetValue()) 76 | text(10 + x_offset:GetValue(), half_h - 25 + y_offset:GetValue(), "FOV: ") 77 | color(value_clr:GetValue()) 78 | text(82 + x_offset:GetValue(), half_h - 25 + y_offset:GetValue(), "no ragefov") 79 | end 80 | end 81 | if hc_check:GetValue() then 82 | if not wid then 83 | return 84 | end 85 | if 86 | wid == 41 87 | or wid == 42 88 | or wid == 74 89 | or wid == 41 90 | or wid == 43 91 | or wid == 44 92 | or wid == 45 93 | or wid == 46 94 | or wid == 47 95 | or wid == 48 96 | or wid == 49 97 | or wid == 57 98 | or wid == 59 99 | or wid == 500 100 | or wid == 503 101 | or wid == 505 102 | or wid == 506 103 | or wid == 507 104 | or wid == 508 105 | or wid == 509 106 | or wid == 512 107 | or wid == 514 108 | or wid == 515 109 | or wid == 516 110 | or wid == 517 111 | or wid == 518 112 | or wid == 519 113 | or wid == 520 114 | or wid == 521 115 | or wid == 522 116 | or wid == 523 117 | or wid == 525 118 | then 119 | color(124, 176, 34, 255) 120 | text(10 + x_offset:GetValue(), half_h - 10 + y_offset:GetValue(), "HC %: ") 121 | color(value_clr:GetValue()) 122 | text(82 + x_offset:GetValue(), half_h - 10 + y_offset:GetValue(), "N/A") 123 | else 124 | local hc = gui.GetValue("rbot.hitscan.accuracy." .. weapon_ref .. ".hitchance") 125 | color(124, 176, 34, 255) 126 | text(10 + x_offset:GetValue(), half_h - 10 + y_offset:GetValue(), "HC %: ") 127 | color(value_clr:GetValue()) 128 | text(82 + x_offset:GetValue(), half_h - 10 + y_offset:GetValue(), "" .. hc) 129 | end 130 | end 131 | if mindmg_check:GetValue() then 132 | if not wid then 133 | return 134 | end 135 | if 136 | wid == 41 137 | or wid == 42 138 | or wid == 74 139 | or wid == 41 140 | or wid == 43 141 | or wid == 44 142 | or wid == 45 143 | or wid == 46 144 | or wid == 47 145 | or wid == 48 146 | or wid == 49 147 | or wid == 57 148 | or wid == 59 149 | or wid == 500 150 | or wid == 503 151 | or wid == 505 152 | or wid == 506 153 | or wid == 507 154 | or wid == 508 155 | or wid == 509 156 | or wid == 512 157 | or wid == 514 158 | or wid == 515 159 | or wid == 516 160 | or wid == 517 161 | or wid == 518 162 | or wid == 519 163 | or wid == 520 164 | or wid == 521 165 | or wid == 522 166 | or wid == 523 167 | or wid == 525 168 | then 169 | color(124, 176, 34, 255) 170 | text(10 + x_offset:GetValue(), half_h + 5 + y_offset:GetValue(), "MinDMG: ") 171 | color(value_clr:GetValue()) 172 | text(82 + x_offset:GetValue(), half_h + 5 + y_offset:GetValue(), "N/A") 173 | else 174 | local mindmg = gui.GetValue("rbot.hitscan.accuracy." .. weapon_ref .. ".mindamage") 175 | color(124, 176, 34, 255) 176 | text(10 + x_offset:GetValue(), half_h + 5 + y_offset:GetValue(), "MinDMG: ") 177 | color(value_clr:GetValue()) 178 | text(82 + x_offset:GetValue(), half_h + 5 + y_offset:GetValue(), "" .. mindmg) 179 | draw.SetFont(font2) 180 | text(10 + x_offset:GetValue(), half_h + 20 + y_offset:GetValue(), "Weapon: ") 181 | text(82 + x_offset:GetValue(), half_h + 20 + y_offset:GetValue(), "" .. weapon_ref) 182 | end 183 | end 184 | draw.SetFont(font) 185 | color(0, 0, 0, 255) 186 | text(10 + x_offset:GetValue(), half_h + 25 + y_offset:GetValue(), "-------------------") 187 | if backtrack_check:GetValue() then 188 | if gui.GetValue("rbot.aim.posadj.backtrack") == true then 189 | color(on_clr:GetValue()) 190 | text(10 + x_offset:GetValue(), half_h + 35 + y_offset:GetValue(), "Backtrack") 191 | else 192 | color(off_clr:GetValue()) 193 | text(10 + x_offset:GetValue(), half_h + 35 + y_offset:GetValue(), "Backtrack") 194 | end 195 | end 196 | 197 | if quickpeek_check:GetValue() then 198 | if quickpeek then 199 | if quickpeekkey ~= 0 and input.IsButtonDown(quickpeekkey) == true then 200 | color(on_clr:GetValue()) 201 | text(10 + x_offset:GetValue(), half_h + 125 + y_offset:GetValue(), "Quickpeek/IT") 202 | else 203 | color(off_clr:GetValue()) 204 | text(10 + x_offset:GetValue(), half_h + 125 + y_offset:GetValue(), "Quickpeek/IT") 205 | end 206 | end 207 | end 208 | color(0, 0, 0, 255) 209 | text(10 + x_offset:GetValue(), half_h + 135 + y_offset:GetValue(), "-------------------") 210 | if antiaim_check:GetValue() then 211 | if gui.GetValue("rbot.master") ~= true then 212 | color(off_clr:GetValue()) 213 | text(10 + x_offset:GetValue(), half_h + 145 + y_offset:GetValue(), "AntiAim: ") 214 | color(value_clr:GetValue()) 215 | text(82 + x_offset:GetValue(), half_h + 145 + y_offset:GetValue(), "Off") 216 | color(on_clr:GetValue()) 217 | text(10 + x_offset:GetValue(), half_h + 160 + y_offset:GetValue(), "Rotation: ") 218 | color(value_clr:GetValue()) 219 | text(82 + x_offset:GetValue(), half_h + 160 + y_offset:GetValue(), "Off") 220 | else 221 | color(on_clr:GetValue()) 222 | text(10 + x_offset:GetValue(), half_h + 145 + y_offset:GetValue(), "AntiAim: ") 223 | color(value_clr:GetValue()) 224 | text(82 + x_offset:GetValue(), half_h + 145 + y_offset:GetValue(), "" .. aa_base) 225 | color(on_clr:GetValue()) 226 | text(10 + x_offset:GetValue(), half_h + 160 + y_offset:GetValue(), "Rotation: ") 227 | color(value_clr:GetValue()) 228 | text(82 + x_offset:GetValue(), half_h + 160 + y_offset:GetValue(), "" .. aa_base_rot) 229 | end 230 | end 231 | end) 232 | 233 | 234 | 235 | callbacks.Register("Draw", function() 236 | if activateAll:GetValue() then 237 | gui.SetValue("esp.indicatortab.autofire.ind", true) 238 | gui.SetValue("esp.indicatortab.fov.ind", true) 239 | gui.SetValue("esp.indicatortab.hc.ind", true) 240 | gui.SetValue("esp.indicatortab.mindmg.ind", true) 241 | gui.SetValue("esp.indicatortab.backtrack.ind", true) 242 | gui.SetValue("esp.indicatortab.quickpeek.ind", true) 243 | gui.SetValue("esp.indicatortab.antiaim.ind", true) 244 | else 245 | return 246 | end 247 | end) 248 | 249 | --***********************************************-- 250 | -- Info about success or failure of loading the script 251 | --***********************************************-- 252 | 253 | print("♥♥♥ " .. GetScriptName() .. " loaded without Errors ♥♥♥") 254 | -------------------------------------------------------------------------------- /CS2SimpleWatermark.lua: -------------------------------------------------------------------------------- 1 | local font = draw.CreateFont("Tahoma", 14) 2 | local ref = gui.Reference("Misc", "Enhancement", "Appearance") 3 | local watermarktextColor = gui.ColorPicker(ref, "watermark_color", "Watermark Color", 204, 96, 112, 255) 4 | local size_x, size_y = draw.GetScreenSize() 5 | local cheatname = "aimware.net Beta" 6 | local user_name = cheat.GetUserName() 7 | local seperator = " | " 8 | local fps = "fps" 9 | 10 | local count = 0 11 | local last = globals.RealTime() 12 | 13 | local frame_rate = 0.0 14 | local get_abs_fps = function() 15 | frame_rate = 0.9 * frame_rate + (1.0 - 0.9) * globals.AbsoluteFrameTime() 16 | return math.floor((1.0 / frame_rate) + 0.5) 17 | end 18 | 19 | local watermarktext = cheatname .. seperator .. user_name 20 | 21 | local function draw_logo() 22 | draw.SetFont(font) 23 | draw.Color(110, 110, 110, 255) 24 | draw.FilledRect(5, 5, 245, 35) 25 | draw.Color(255, 255, 255, 255) 26 | draw.FilledRect(10, 10, 240, 30) 27 | draw.Color(watermarktextColor:GetValue()) 28 | draw.Text(15, 15, watermarktext) 29 | 30 | local fps = get_abs_fps() 31 | 32 | if fps < 30 then 33 | draw.Color(150, 0, 0, 255) 34 | elseif fps < 60 then 35 | draw.Color(150, 150, 0, 255) 36 | else 37 | draw.Color(0, 150, 0, 255) 38 | end 39 | 40 | draw.Text(143, 15, watermarktext .. seperator .. " fps" .. get_abs_fps()) 41 | end 42 | 43 | callbacks.Register("Draw", draw_logo) 44 | 45 | --***********************************************-- 46 | 47 | print("♥♥♥ " .. GetScriptName() .. " loaded without Errors ♥♥♥") 48 | -------------------------------------------------------------------------------- /CS2SkyboxChanger.lua: -------------------------------------------------------------------------------- 1 | --[[ 2 | Download for the skyboxes used in script --> https://mega.nz/file/yLQxFIJC#eVdoc9Fwx_BPcJxt6vBNi0PQ0Sc9tunXesdTM_vt2tI 3 | 4 | Open Skybox.rar and drag skybox folder into --> steamapps\common\Counter-Strike Global Offensive\csgo\materials\ 5 | 6 | so that the final path looks like this --> steamapps\common\Counter-Strike Global Offensive\csgo\materials\skybox\ 7 | 8 | then copy the .vmt and .vtf files into the skybox folder and add them to the Script.. 9 | aaaand... if u dont know how to add new boxes just look at the other examples, its very easy to understand how it works 10 | 11 | 12 | PS: if u want more/other skyboxes u can go to --> https://gamebanana.com/mods/cats/653 13 | ]] 14 | -- 15 | 16 | local skyref = gui.Reference("Visuals", "World", "Camera") 17 | 18 | local listbox = gui.Combobox(skyref, "skybox_list", "Skybox", options) 19 | 20 | local skyboxes = { 21 | "Default", 22 | "amethyst", 23 | "dreamyocean", 24 | "greenscreen", 25 | "sky_csgo_night02", 26 | "sky_csgo_night05", 27 | "projektd", 28 | "sky_otherworld", 29 | "sky_091", 30 | "galaxy", 31 | "space_1", 32 | "space_3", 33 | "space_4", 34 | "space_5", 35 | "space_6", 36 | "space_7", 37 | "space_8", 38 | "space_9", 39 | "space_10", 40 | "space_13", 41 | "sky_descent", 42 | "******", 43 | } 44 | 45 | local skyboxesMenu = { 46 | "Default", 47 | "Amethyst", 48 | "Dreamy Ocean", 49 | "Greenscreen", 50 | "Night 2", 51 | "Night 5", 52 | "pAnime", 53 | "Other World", 54 | "Sky091", 55 | "Galaxy", 56 | "Space 1", 57 | "Space 3", 58 | "Space 4", 59 | "Space 5", 60 | "Space 6", 61 | "Space 7", 62 | "Space 8", 63 | "Space 9", 64 | "Space 10", 65 | "Space 13", 66 | "Decent", 67 | "Decent2", 68 | } 69 | 70 | options = listbox:SetOptions(unpack(skyboxesMenu)) 71 | local set = client.Command -- client.SetConVar 72 | local last = listbox:GetValue() 73 | 74 | local function SkyBox() 75 | if last ~= listbox:GetValue() then 76 | set("sv_skyname " .. skyboxes[listbox:GetValue() + 1], true) 77 | last = listbox:GetValue() 78 | end 79 | end 80 | callbacks.Register("Draw", SkyBox) 81 | 82 | callbacks.Register("Unload", "Skybox", function() 83 | listbox:SetOptions("Default") 84 | end) 85 | 86 | --***********************************************-- 87 | print("♥♥♥ " .. GetScriptName() .. " loaded without Errors ♥♥♥") 88 | -------------------------------------------------------------------------------- /CS2WatermarkOnLoad.lua: -------------------------------------------------------------------------------- 1 | local USER_NAME = cheat.GetUserName() 2 | local LOCAL_WATERMARK = draw.CreateFont("Verdana", 15, 1200) 3 | local SIZE_X, SIZE_Y = draw.GetScreenSize() 4 | local function watermark() 5 | draw.SetFont(LOCAL_WATERMARK) 6 | draw.Color(250, 55, 55, 255) 7 | draw.FilledRect(SIZE_X - 190, 10, SIZE_X - 35, 30) 8 | draw.Color(255, 255, 255, 255) 9 | draw.Text(SIZE_X - 180, 15, "Welcome back " .. USER_NAME .. "!") 10 | end 11 | callbacks.Register("Draw", watermark) 12 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | # Aimware-v5.x-luas 3 | 4 | 5 | ## ° **LUAscripts for Aimware in CS2** ° 6 | 7 | ### Usage: 8 | **Put the scripts in format filetype '.lua' in the folder containing your configs & luas, path is like** 9 | 10 | `C:\Users\YOURPCNAME\AppData\Roaming\RANDOMLETTERSNAMEDFOLDER\RANDOMLETTERSNAMEDFOLDER` 11 | 12 | **or just type %AppData% in WindowsSearch,** 13 | **then open Roaming -> RANDOMLETTERSNAMEDFOLDER -> RANDOMLETTERSNAMEDFOLDER** 14 | **Replace YOURPCNAME, RANDOMLETTERSNAMEDFOLDER & RANDOMLETTERSNAMEDFOLDER with your details obviously..** 15 | 16 | 17 | #### `Note about autorun.lua:` 18 | ```````` 19 | ‎Because Aimware injection can sometimes take some time, 20 | autorun.lua includes a simple script that runs immediately after the injection completes, 21 | providing a visual indicator of when Aimware is fully usable. 22 | ```````` 23 | -------------------------------------------------------------------------------- /autorun.lua: -------------------------------------------------------------------------------- 1 | local font = draw.CreateFont("Bahnschrift", 20) 2 | local frames = 0 3 | local fadeout = 0 4 | local fadein = 0 5 | 6 | local function drawFadingText() 7 | if frames < 5.5 then 8 | frames = frames + globals.AbsoluteFrameTime() 9 | if frames > 5 then 10 | fadeout = ((frames - 5) * 510) 11 | end 12 | if frames > 0.1 and frames < 0.25 then 13 | fadein = (frames - 0.1) * 4500 14 | end 15 | 16 | fadein = math.max(0, math.min(650, fadein)) 17 | fadeout = math.max(0, math.min(255, fadeout)) 18 | 19 | if frames >= 0.25 then 20 | fadein = 634 21 | end 22 | 23 | local screenWidth, screenHeight = draw.GetScreenSize() 24 | local textWidth = draw.GetTextSize("Aimware.net injected") -- Get width of entire text string 25 | local textX = (screenWidth - textWidth) / 2 -- Center the text 26 | 27 | -- Draw the background 28 | draw.Color(15, 15, 15, 200 - fadeout) 29 | draw.FilledRect(textX - 650 - 5 + fadein, screenHeight / 2 - 15, textX + textWidth + 650 - fadein, screenHeight / 2 + 15) 30 | draw.Color(239, 150, 255, 200 - fadeout) 31 | draw.FilledRect(textX - 650 - 5 + fadein, screenHeight / 2 + 15, textX + textWidth + 650 - fadein, screenHeight / 2 + 16) 32 | 33 | draw.SetFont(font) 34 | draw.Color(225, 50, 50, 255 - fadeout) 35 | 36 | -- Calculate the starting position for each word 37 | local aimwareTextWidth = draw.GetTextSize("Aimware") 38 | local dotNetTextWidth = draw.GetTextSize(".net") 39 | local injectedTextWidth = draw.GetTextSize("injected") 40 | 41 | -- Draw each word with its own color 42 | draw.TextShadow(textX - 650 + fadein, screenHeight / 2 - 8, "Aimware") 43 | draw.Color(225, 225, 225, 255 - fadeout) 44 | draw.TextShadow(textX + aimwareTextWidth + 2 - 650 + fadein, screenHeight / 2 - 8, ".net") 45 | draw.Color(0, 225, 0, 255 - fadeout) 46 | draw.TextShadow(textX + aimwareTextWidth + dotNetTextWidth + 4 - 650 + fadein, screenHeight / 2 - 8, "injected") 47 | end 48 | end 49 | 50 | callbacks.Register("Draw", drawFadingText) 51 | --------------------------------------------------------------------------------