partoftheworlD
-
Постов
2 687 -
Зарегистрирован
-
Посещение
-
Победитель дней
172
Тип контента
Профили
Форумы
Загрузки
Блоги
Сообщения, опубликованные partoftheworlD
-
-
На самом деле с хуками очень просто, но на русском материала мало.
- 1
-
(7E 1A 8B 55 7F) если занопить инструкцию оружие будет выкидываться и оставаться в руках, что-то типа копирования получится.
(48 8B 78 60 48 8B D9), по этой сигнатуре в rax были ID оружия.Как вариант еще можно эту проверить, тут вроде бы тоже, ID оружия или таблица всех ID только в rdx (8B C8 48 8B 42 E8 4C 8B 04 C8)
-
Там не большие значение типа 100-5000(оружие, оружие из длс без установленного длс), я искал текущее оружие которое в руках находилось изменилось/не изменилось и писал прогу когда делал таблицу, для дампа всех предметов в игре, если найду кину список предметов или программу.
-
2 часа назад, LIRW сказал:
Главное интерфейс остался не измененным - я как то к нему привык
А ты попробуй Vivaldi, отличный браузер со старым интерфейсом Opera(10-12)
-
В VS15 компьюнити есть заголовочные d3d9-11
-
Трассировать код в отладчике. Не знаю как в WoW,но в кс генерировался CRC хеш. Где-то в конце главной функции будет вызов на подтверждение её значений.
-
Попробуй сначала получить базовый адрес, а потом работать от него с указателями. Т.е
pm.ReadMemory(0x40000000, &baseaddress, 4); //получил базовый адрес pm.ReadMemory(baseaddress + 0x10, &outta, 4); //получил значение которое хранится в baseaddress->0x10 wsprintf(text, L"0x%X", outta);
получится что ты прочитаешь значение из baseaddress->0x10 и выводишь его.
Вот пример из исходников старого чита
Packetbase = memory->ReadMem<DWORD>(Engine + 0x4416B8); //получаем базовый адрес Packetbase = memory->ReadMem<DWORD>(Packetbase + 0x634); //baseaddress->0x634 Packetbase = memory->ReadMem<DWORD>(Packetbase + 0x110); //baseaddress->0x634->0x110 memory->WriteMem(Packetbase + 0x6a8, &value); //тут записываем в конечное значение baseaddress->0x634->0x110->0x6A8 наш value
Скрытый текстvoid Functions::RadarHack() { bool value = false; bool value2 = true; auto Packetbase = 0; auto old = 0; for (auto index_player = 1; index_player < MAX_PLAYERS; ++index_player) { entity->getPlayer(index_player); switch (local_player->getTeam()) { case Side::T: entity->getHealth() >= 1 ? Draw(index_player, true, false) : Draw(index_player, false, false); break; case Side::CT: entity->getHealth() >= 1 ? Draw(index_player, true, true) : Draw(index_player, false, true); break; } } if(old + 0x32 == GetTickCount()) { Packetbase = memory->ReadMem<DWORD>(Engine + 0x4416B8); Packetbase = memory->ReadMem<DWORD>(Packetbase + 0x634); Packetbase = memory->ReadMem<DWORD>(Packetbase + 0x110); memory->WriteMem(Packetbase + 0x6a8, &value); printf("%u\n", memory->ReadMem<int>(Packetbase + 0x6a8)); } else memory->WriteMem(Packetbase + 0x6a8, &value2); old = GetTickCount(); Sleep(1); }
-
ProcessManager *pManager; wsprintf(text, L"%u", pManager->m_pID);
-
У CE открытый исходный код. на сайте исходники в разделе загрузок. Возможно использует видюху вместо процессора при поиске.
-
Если после смены отладчика как написал Garik66 будет все равно вылетать, то смени метод точки останова на Int3
- 1
-
Для:
1. SpeeHack
2. Teleport
Нужно будет отыскать функцию которая создает движение(CreateMove) и функцию которая подтверждает значения и "говорит" серверу, что все значения в том числе измененные тобой нормальные, подтверждение данных прошло успешно и сервер будет думать что все хорошо, даже если будешь бегать со скоростью света. В функции создающей движение обычно указывается время выборки кадров, его и надо изменять
На счет 3. Invisible mode (без лимита по времени), не играл в wow, так что тут догадка, ищешь таймер, выходишь на главную функцию,дальше либо хукаешь функцию, либо изменяешь значения и так же подтверждаешь изменение той функцией которая "говорит" серверу, что все хорошо.
Без функции подтверждения, тебя будет откидывать назад когда изменяешь значения координат к примеру. на питоне делать хук функции это извращение как по мне, на C++ есть уже готовые библиотеки для этого.
-
1 час назад, LIRW сказал:
Вот Скрипт и игра не вылетает в обще то
Где ты игру брал? Стим версия и Skidrow вылетают при установке бряка. Игра вроде не сложно взламываемая, но постоянные вылеты напрягают.
-
2 минуты назад, A1t0r сказал:
Вот я тоже думаю взять попроще или 6700K или 5960X
Дешевле выйдет взять амд 8 ядер и водянку, чтобы не было адской температуры из системника. Интеловские процы в 2.5 раза подорожали у нас в городе. 6700K стоит около 33 тысяч, амд с водянкой около 22-25
.
-
8 минут назад, A1t0r сказал:
Intel Core i7 6950X Extreme Edition Broadwell(10 core)
20 потоков я думаю будет слишком много
-
Сейчас:
Собирал в 2013-2014
CPU AMD Phenom II X4 955 3.2Ghz
RAM 12 Гб
VRAM MSI Radeon R9 290 2GB
HDD 1TB + 250GB старый
Обновил бы до:
CPU: i7-6700K, чтобы не обновлять ближайшие 5 лет.
RAM: DDR3L/4 - 12-16Gb\1600\2133Mhz
VRAM: MSI GTX 970 4GD5T или вторую R9
HDD:1TB
SSD: под систему на 250гб будет достаточно.
- 1
-
Какая разница где его создавать?В мейне это был пример. Под спойлером примеры создания с описание. Он создается одинаково везде.
-
Скрытый текст
#include <iostream> #include <vector> int main ( ) { // Создание вектора, содержащего целые числа std::vector<int> v = {7, 5, 16, 8}; // Добавление ещё двух целых чисел в вектор v.push_back(25); v.push_back(13); // Проход по вектору с выводом значений for ( int n : v ) { std::cout << n << '\n'; } }
Пример создания вектора:
Скрытый текст// Вектор из 10 элементов типа int std::vector<int> v1(10); // Вектор из элементов типа float // С неопределенным размером std::vector<float> v2; // Вектор, состоящий из 10 элементов типа int // По умолчанию все элементы заполняются нулями std::vector<int> v3(10, 0);
Тут более подробно о векторах.
-
1 час назад, 2zolo2 сказал:
partoftheworlD, поставь старую версию WinDbg или обнови плагин для ида.
Пробовал, ставил старую и новую версию windbg, ida.
Видимо проблема в винде. На 7-ке все прекрасно запустилось.
-
После последнего обновления WinDbg, ида перестала находить путь к отладчику и пишет типа не найден модуль. Если указывать принудительно путь к отладчику, то возникает ошибка:
Необработанное исключение по адресу 0x5F8C6BE4 (dbgeng.dll) в idaq.exe: 0xC0000005: нарушение прав доступа при записи по адресу 0xC25F4B42.
Скрытый текстDebugger::DataModel::Host::DataModelHost::CreateModuleSignature: 5F8C6BD0 push 4 5F8C6BD2 mov eax,5F9E1526h 5F8C6BD7 call __EH_prolog3 (5F990B74h) 5F8C6BDC mov edi,dword ptr [ebp+18h] 5F8C6BDF xor ebx,ebx 5F8C6BE1 mov dword ptr [ebp-10h],ebx 5F8C6BE4 mov dword ptr [edi],ebx 5F8C6BE6 mov dword ptr [ebp-4],ebx 5F8C6BE9 lea eax,[ebp+14h] 5F8C6BEC push eax 5F8C6BED lea eax,[ebp-10h] 5F8C6BF0 push eax 5F8C6BF1 lea edx,[ebp+10h] 5F8C6BF4 lea ecx,[ebp+0Ch] 5F8C6BF7 call Microsoft::WRL::Details::MakeAndInitialize<Debugger::DataModel::Host::ModuleSignature,Debugger::DataModel::Host::ModuleSignature,unsigned short const * &,unsigned short const * &,unsigned short const * &> (5F8C5335h) 5F8C6BFC mov esi,eax 5F8C6BFE test esi,esi 5F8C6C00 js Debugger::DataModel::Host::DataModelHost::CreateModuleSignature+3Ah (5F8C6C0Ah) 5F8C6C02 mov ecx,dword ptr [ebp-10h] 5F8C6C05 mov dword ptr [ebp-10h],ebx 5F8C6C08 mov dword ptr [edi],ecx 5F8C6C0A or dword ptr [ebp-4],0FFFFFFFFh 5F8C6C0E lea ecx,[ebp-10h] 5F8C6C11 call Microsoft::WRL::ComPtr<Debugger::DataModel::Client::Details::PropertyAccessor<Debugger::DataModel::Host::Objects::DebuggerVariablesModel> >::~ComPtr<Debugger::DataModel::Client::Details::PropertyAccessor<Debugger::DataModel::Host::Objects::DebuggerVariablesModel> > (5F7744C5h) 5F8C6C16 mov eax,esi 5F8C6C18 call __EH_epilog3 (5F990B33h) 5F8C6C1D ret 14h 5F8C6C20 int 3
Вдруг кто-нибудь знает как решить эту проблему.
-
Там вроде бы значение выносливости в integer, 0 когда заполнена, когда уменьшается 1, при восстановлении 3 или 4 точно сказать не могу.
- 1
-
Лучше ураган или шторм, чем целый день под 33-35 с высокой влажностью.
-
2 часа назад, Dmitryhip сказал:
Не во всех играх все так просто, например в css уже так на анти отдачу не выйдешь.
В css, csgo, insurgensy есть значение отвечающее за отдачу называется vecPunch
cl_pdump 1 и будет вся отладочная информация или искать расширение прицела которое хранится в 4 байтах.
-
1 0 ищешь в байтах, ставишь на доступ бряк, в игре какой-то была инструкция типа mov [esi+edi*4],al т.е где edi был id игрока и в цикле прогоняешь всех игроков и устанавливаешь всем 1 и все подсвечивались. Думаю с предметами примерно так же будет.
Все зависит от того как предмет подсвечивается. Если по контуру предмета, то будет проще взломать. + для каждого предмета можно будет настроить цвет и степень подсветки.
Например как в играх на движке соурс или frostbyte.
-
24 минуты назад, gmz сказал:
хм раньше вс просто предупр. генерила если без _s
Даже с _s все нормально генерит
- 1
использование sdk
in Вопросы по взлому FPS игр
Опубликовано
Подключаешь СДК в проект и работаешь.
на примере структуры игрока, находишь жизни, подгружаешь иду(лучше всего к дампу), переходишь по адресу найденной инструкции и смотришь выше по коду откуда она возникает..
Методом изучения инструкций и понимания что каждая из них делает.