partoftheworlD
Пользователи+- 
				
Постов
2 687 - 
				
Зарегистрирован
 - 
				
Посещение
 - 
				
Победитель дней
172 
Тип контента
Профили
Форумы
Загрузки
Блоги
Весь контент partoftheworlD
- 
	Может потому что это чит!!!!
 - 
	Значит не тот файл декомпилируешь. Пробуй руками, через отладчик и CreateProcessA
 - 
	Урок из разряда "как из сигнатуры, сделать проблемы для новичков" Такие сигнатуры ужасны из-за того, что уникальность сигнатуры зависит от её длинны, т.е на том же юнити, SigMaker'у достаточно 10-20 байт, чтобы сигнатура работала долгое время(7+ месяцев), способом который показан на видео её придется раза в 3-4 удлинять, такой способ будет годным, если будет какой-нибудь плагин, который бы в цикле создавал сигнатуру и проверял её уникальность по всему модулю игры, пока она 100% не будет уникальной.
 - 
	Но можно же сделать проще, даже 3 способа есть. Перехватывать возвращающее значение VirtualAlloc фильтруя по размеру структуры, либо найти функцию выделяющую память под предметы, просто поставив бряк на обращение к классу предметов. Ну и последний, найти адрес контейнера в котором хранятся указатели на предметы.
 - 
	хм, а это не шутки, но если хочется взломать все по щелчку пальцев, тогда начнем. для начала, тебе надо найти какие-нибудь значения, которые передаются серверу. затем восстановить код игры, чтобы найти место, где составляется пакет. теперь, как только пакет составлен, надо восстановить его структуру. раз структура восстановлена, что ж приступим к поиску функции шифровки/дешифровки пакетов, на них надо повесить хук, чтобы в реальном времени можно было считывать клиент-серверные значения и менять их. и как только ты все это проделаешь у тебя появится шанс, найти несколько способов обмануть локально серверные проверки, чтобы модифицированное значение сервер посчитал валидным. ну и базовые знания периодической таблицы уязвимостей, хотя бы простейшие целочисленные переполнения.
 - 
	а value кто обнулять будет? вообще вычисления лучше делать в отдельной переменной, которая после будет зачищаться.
 - 
	Написал скрипт для удаления поисковых запросов яндекса, код работает из консоли, но не из плагина. Функция и событие отрабатывает дважды, код выполняется, но слишком рано.
 - 
	звезды 4 байта здоровье машины 2 значения по 1000 float часы не помню таймеры статические значения, к примеру если таймер на 5 минут, то надо искать 5*60*1000=30000 мс в этой игре все что угодно можно взломать.
 - 
	Возможно сможешь декомпилировать игру чем-то типа Easy Python Decompiler. Так же можешь написать свой модуль, который бы перехватывал значения, что-то типа плагина для игры, есть доки и "Ren'Py is open source and free for commercial use." А значит у тебя есть исходный код движка и без проблем можно найти функции обрабатывающие значения.
 - 
	Адрес на сигнатуру замени.
 - 
	Это фиксится легко и быстро, но для тестов нужна камера, не буду же каждые 5-10 секунд после написания патча часа в 3-4 утра звонить в скайп ради теста в несколько секунд. В общем для фикса тебе понадобиться создать новый сегмент в длл чтобы прописать новую/модифицированную функцию, пропатчить хедеры и повесить хук на функцию сохраняющую настройки для того, чтобы изменить путь сохранения настроек, как я себе это представляю. Хук делает двойное сохранение настроек в разных местах, но ещё дописывается его хеш пусть хоть это будет обычный CRC, если он не совпадает, то проверяется хеш копии сохранения в другой месте и если все хорошо, то передает копию конфига на считывание программе. А на счет кривого сохранения, лучше посмотреть с помощью Process Hacker куда сохраняются настройки, может они вообще во временную папку сохраняются.
 - 
	Для воображляндии это может и нормальная цена, но в реальности цены в раз 10-20 больше.
 - 
	Я начал делать свой скин для vivaldi и наткнулся на такую проблему, некоторые элементы переопределяют стиль заданный в css. Так что мне нужно переопределить переопределение стиля используя только CSS. типа: <span class="button-badge" style="background-color: rgb(238, 49, 49);">1</span> сам CSS.
 - 
	Код не правильный. А скрипты не активируются из-за того, что не могут найти сигнатуру, а сигнатуру ты делал во время отладки инструкции, поэтому первый байт CC
- 4 ответа
 - 
	
- 1
 - 
					
						
					
							
					
						
					
				 
 
 - 
	Там только функциональная часть, дизайн форм кодирован.
 - 
	Нет, если это чужой трейнер, за такое вообще по рукам бьют.
 - 
	Поочередно открываешь структуры в EntityList и смотришь на смещение примеру здоровья, если оно там есть, то считаешь между ними дистанцию, к примеру в EntityList открываешь по смещению 0x10 указатель, ищешь здоровье по смещение 0xFC к примеру или номер команды, если оно там есть, то запоминаешь или записываешь смещение на указатель в entitylist, дальше открываешь следующую структуру 0x14 в ней ничего нет, пропускаешь и т.д пока не найдешь очередную структуру со здоровьем по тому же смещению 0xFC или номером команды, нашел вторую структуру к примеру по смещению 0x28, теперь смещение на структуру второго игрока отнимаешь от смещения на первого игрока и получаешь "entityloop". 0x28 - 0x10 = 0x18(enitityloop) 0xFC смещение здоровья для примера. Некоторые строки валв пакует, чтобы старые уроки по взлому вызывали трудности с поиском.
 - 
	Это же вранье, сотни уроков на разных языках есть как находить их и что это такое. Список игроков и дистанция между структурами игроков. Не понятно как ты умудрился найти локальную структуру, но не структуру со списком игроков, ну да ладно.? Можешь мой экспериментальный способ нахождения структур LocalPlayer и EntityList попробовать. Либо традиционный, находишь правильный адрес здоровья, как его определить? Нужно зайти в любой дизассемблер x64dbg/IDA и найти 2 значения "m_iHealth" и "m_iTeamNum" ,взять их смещения, они обычно на инструкцию выше и выглядит как push 0xAB, где 0xAB смещение, так же смещения у тебя есть и в структуре локального игрока, в общем тебе нужно посчитать дистанцию между ними, это нужно для того чтобы проверить адрес здоровья. Итак, посчитал уже дистанцию между здоровьем и номером команды, теперь ищешь здоровье, отсеиваешь до минимума и выделяя каждый адрес нажимаешь CTRL+B, дальше смотришь в окошко с хекс значениями, тут нам и нужна дистанция между здоровьем и номером команды, если она совпадает, то адрес правильный и на него вешаешь поиск указателей 1 уровневый, если нет, то ищешь дальше. Правильный адрес здоровья только один, остальные его копии и никак не помогут в поиске нужных тебе структур. Теперь, как только нашлись указатели(их обычно 5-7), первый указатель будет указателем на LocalPlayer(твою структуру), второй указатель будет указателем на EntityList(список игроков), остальные указатели тебе не нужны, они работают с левыми структурами которые ни как не понадобятся в написании ESP, но можешь поковырять их ради интереса.
 - 
	хах, это странные выводы, но особой разницы нет в нахождении между офлайн игрой и онлайн, структуры везде похожи, ведь как-то игра должна рисовать других игроков на твоем экране. Да и способ в большинстве уроков рабочий, но не универсальный, из-за разного количества уровней указателя, куда проще поставить бряк на доступ на начало своей структуры, чтобы посмотреть, где структура используется, одна из инструкций будет работать со всеми структурами игроков, а дальше найти структуру хранящую список игроков не составит труда.
 
![Gamehacklab[RU]](https://old.gamehacklab.ru/uploads/monthly_2022_06/1_PNG_GHL_64x.png.6d61ef42c3de6821543db4c0243672ae.png)