XenonH
-
Постов
31 -
Зарегистрирован
-
Посещение
Тип контента
Профили
Форумы
Загрузки
Блоги
Сообщения, опубликованные XenonH
-
-
Что я делаю не так? Нашел нужный адрес. Он динамический. Нашел указатель. Вот скрин. Значение переменной m_WeaponID = 0x04FD76B8
-
2 часа назад, partoftheworlD сказал:
bClient + dwBaseCombatWeapon, найти dwBaseCombatWeapon
А как его найти? Не догоняю.
-
2 минуты назад, partoftheworlD сказал:
точно так же как и любой другой, выйти на него можешь на прямую через id(список я кинул выше), находишь значение, сканер указателей 1 уровень, найдешь указатель на weapon id. Который будет выглядеть как указатель на структуру(DT_BaseCombatWeapon) + смещение до id
А программно как? Вот bClient это Client.dll. Playerbase это bClient + dwPlayerBase
-
2 минуты назад, partoftheworlD сказал:
Класс работающий с оружием и только с ним.
Как его высчитать? Я не работал с таким классом.
-
Только что, partoftheworlD сказал:
bClient это не DT_BaseCombatWeapon
А что это?
-
Смотри как я высчитал. bClient + iweaponid и playerbase + activeweapon
В weaponid одно и то же число а в activeweapon меняется но там примерно такое 19857986
-
21 минуту назад, partoftheworlD сказал:
DT_BaseCombatWeapon -> m_iWeaponID DT_BasePlayer -> m_hActiveWeapon
А как сделать чтобы выводило в string. Допустим awp. Как высчитать? Мне нужно узнать какое оружие в руках у себя, чтобы проверять - Если в руках авп или ссг рисуем прицел.
-
Как узнать какое оружие в руках?
C#. CS:GO
И какой оффсет за это отвечает?
-
2 минуты назад, mrPTyshnik сказал:
тогда как ты рисуешь?))
тоже в консольном приложении выводишь символьное ESP?Давай лс?
-
1 минуту назад, mrPTyshnik сказал:
Создание хацка через overlay - это наложение прозначного Window(окна) на окно игры и дальнейшая разрисовка этого прозрачного окна, используя примитивы.
Моя идея заключается в том, чтобы это прозрачное окно было всегда активным "поверх всех окон".
Если не могёшь дотянуться до свойств созданного тобою же окна, юзай SetWindowPos (MSDN)
SetWindowPos(Handle, HWND_NOTOPMOST, Left, Top, Width, Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE),где HWND_TOPMOST - Places the window above all non-topmost windows. The window maintains its topmost position even when it is deactivated.
Не берусь утверждать, что это решит твою проблему, но попробовать стоит.Я же говорю у меня консольное приложение.
-
Только что, mrPTyshnik сказал:
в характеристиках окна, которое ты создаёшь
У меня консольное приложение. То есть переставить?
-
1 минуту назад, mrPTyshnik сказал:
попробуй выставить AlwaysOnTop для Overlay
И проверять, если окноCS активно(GetForegroundWindow), то рисоватьА где ставить?
-
-
42 минуты назад, mrPTyshnik сказал:
External или Internal Overlay?
GetForegroundWindow
External
-
2 часа назад, elvis66666 сказал:
Возможно при переходе из borderless в fullscreen пересоздается девайс и поэтому крашится)
Игра не крашится. Просто не рисует вообще. А когда в окне. Линии рисуется даже поверх вк, рабочего стола и т.д.
-
Скрытый текст
using System; using System.Drawing; using System.Diagnostics; using DirectXOverlayWindow; using System.Numerics; namespace ESP_Box { class Program { private static OverlayWindow window; private static Matrix4x4 VMatrix = Matrix4x4.Identity; private static int bClient; private static int espFont = -1; private static int redBrush = -1; private static int greenBrush = -1; private static Memory mem; internal static ScreenVector WorldToScreen(float x, float y, float z) { float w; float sx; float sy; sx = VMatrix.M11 * x + VMatrix.M12 * y + VMatrix.M13 * z + VMatrix.M14; sy = VMatrix.M21 * x + VMatrix.M22 * y + VMatrix.M23 * z + VMatrix.M24; w = VMatrix.M41 * x + VMatrix.M42 * y + VMatrix.M43 * z + VMatrix.M44; if (w < 0.01f) return new ScreenVector() { Result = false, X = 0, Y = 0 }; float invw = 1f / w; sx *= invw; sy *= invw; int width = window.Width; int height = window.Height; float xt = width / 2; float yt = height / 2; xt += 0.5f * sx * width + 0.5f; yt -= 0.5f * sy * height + 0.5f; sx = xt; sy = yt; return new ScreenVector() { Result = true, X = sx, Y = sy }; } static void Main() { while (!GetDll()) { } Console.WriteLine("ESP ON"); while (true) { window.Graphics.BeginScene(); window.Graphics.ClearScene(); int scx = window.Width / 2 - 1; int scy = window.Height / 2 + 11; window.Graphics.DrawBox3D(scx, scy, 3, 3, 1, 1, redBrush, redBrush); int PlayerBase = mem.Read<int>(bClient + Offsets.m_dwLocalPlayer); int LocalTeam = mem.Read<int>(PlayerBase + Offsets.m_iTeamNum); int LocalHp = mem.Read<int>(PlayerBase + Offsets.m_iHealth); bool LocalDormant = mem.Read<bool>(PlayerBase + Offsets.m_bDormant); if (LocalDormant || LocalHp == 0) continue; VMatrix = mem.Read<Matrix4x4>(bClient + Offsets.m_dwViewMatrix); for (int i = 0; i <= 64; i++) { int EntityBase = mem.Read<int>(bClient + Offsets.m_dwEntityList + (i - 1)*0x10); int EntityTeam = mem.Read<int>(EntityBase + Offsets.m_iTeamNum); int EntityHp = mem.Read<int>(EntityBase + Offsets.m_iHealth); bool EntityDormant = mem.Read<bool>(EntityBase + Offsets.m_bDormant); if (EntityDormant || EntityTeam == LocalTeam || EntityHp == 0) continue; Vector3 EntityPos = mem.Read<Vector3>(EntityBase + Offsets.m_vecOrigin); ScreenVector sv = WorldToScreen(EntityPos.X, EntityPos.Y, EntityPos.Z); if (!sv.Result) continue; int ex = (int)sv.X; int ey = (int)sv.Y; int sx = window.Width / 2; int sy = window.Height - 10; window.Graphics.DrawLine(sx, sy, ex, ey, 2, redBrush); window.Graphics.DrawText(EntityHp.ToString(), espFont, greenBrush, ex, ey); } window.Graphics.EndScene(); } } private static bool GetDll() { try { Process csgo = Process.GetProcessesByName("csgo")[0]; foreach (ProcessModule module in csgo.Modules) { if (module.ModuleName == "client.dll") bClient = (int)module.BaseAddress; } window = new OverlayWindow(csgo.MainWindowHandle); redBrush = window.Graphics.CreateBrush(Color.Red); greenBrush = window.Graphics.CreateBrush(Color.Lime); espFont = window.Graphics.CreateFont("Tamoha", 12); mem = new Memory("csgo"); return true; } catch { return false; } } } }
-
Как? Не шарю.
-
Кто поможет?
-
Overlay
-
Сделал SnapLines и вывод хп на противнике. Чит работает все отлично, но только в окне. Не знаю как сделать, чтобы он работал на весь экран в cs:go
-
А я делал на свои хп. Обязательно нужно на хп бота?
А на противнике можно?
Янашёл только двух игроков. А коородинаты только два float а потом еще ниже и там еще два флоат которые при ходьбе ботов изменяются
Чтобы написать что - то мне нужно изучить MSDN?
-
Такая вот проблема. Нашёл два указателя здоровья. Как найти структуру? Я зашёл, создал структуру и ищу поинтеры открываю и ищу нужное смещение, но везде в значениях указано ненужное либо какой - то указатель
-
Окей, я совсем в этом новичок. Что тогда посоветуете? Хочу допустим на браузерную игру написать чит (Контра Сити). нужный процесс - процесс браузера? Пытался отсканить точным значением, но ничего не нашёл. Как же быть? Мне даже не нужно что - то рисовать. Просто вывести хп на экран и чтобы фиксировались на игроке (и было бы как вх)
-
Наоборот, я хочу знать как это всё работает. Я не беру исходники. Я хочу сделать своё и понять, как всё это сделать, но негде
Как узнать какое оружие в руках. C#. CS:GO
in Вопросы по взлому FPS игр
Опубликовано
Спасибо за помощь