Гость justy Опубликовано 20 июля, 2021 Поделиться Опубликовано 20 июля, 2021 (изменено) Здравствуйте, я пытаюсь написать простейший fakeAdmin для Rust. Для получения офсетов я использою Il2CppDumper-v6.4.22 В итоге у меня исходник PlayerFlags // Namespace: [FlagsAttribute] // RVA: 0x1D90 Offset: 0x1190 VA: 0x180001D90 public enum BasePlayer.PlayerFlags // TypeDefIndex: 8880 { //... public const BasePlayer.PlayerFlags IsAdmin = 4; //... } а также офсеты #define PLAYER_FLAGS 0x650 //public BasePlayer.PlayerFlags playerFlags #define BASE_PLAYER 0x28 //public BasePlayer basePlayer; Насколько я понимаю так как playerFlags является полем basePlayer то я должен суммировать офсеты. fake admin судя по PlayerFlags включается добавляя флаг с помощю побитного или Но собрав весь код чита в таком виде Спойлер #include <windows.h> #include <iostream> #define PLAYER_FLAGS 0x650 //public BasePlayer.PlayerFlags playerFlags [BasePlayer + Offset] #define BASE_PLAYER 0x28 //public BasePlayer basePlayer; DWORD targetProcId; HWND targetHwnd; HANDLE targetHandle; using namespace std; int main() { targetHwnd = FindWindowA(NULL, "Rust"); GetWindowThreadProcessId(targetHwnd, &targetProcId); targetHandle = OpenProcess(PROCESS_ALL_ACCESS, false, targetProcId); int currentPlayerFlags; cout << ReadProcessMemory(targetHandle, LPCVOID(BASE_PLAYER + PLAYER_FLAGS), ¤tPlayerFlags, sizeof(currentPlayerFlags), 0); cout << endl; cout << GetLastError(); cout << endl; currentPlayerFlags |= 4; cout << WriteProcessMemory(targetHandle, LPVOID(BASE_PLAYER + PLAYER_FLAGS), ¤tPlayerFlags, sizeof(currentPlayerFlags), 0); cout << endl; cout << GetLastError(); cout << endl; } Я не могу ни прочитать ни записать значения, меня напрягает то что используя cheat engine я тоже не могу ничего у видеть по адресу 0x650 + 0x28. Как вариант я ошибся в офсетах, так чит для пиратки eac нету, virtualProtect тоже... Простите за неученнсть, ето мой первый чит)) не считая assaultCube)) Изменено 20 июля, 2021 пользователем justy На будущее - прочитай правила форума, и оформляй темы и посты правильно. На первый раз устное предупреждение без занесения в личное дело. Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения