Перейти к содержанию
Авторизация  
Mefedroman

[BLOCKADE] Найти оффсеты для игры на Unity

Рекомендуемые сообщения

Крч, учусь геймхакингу, уровень моих знаний это С++, WinAPI на низком уровне, на споке пишу читы для CS:GOvno. Начал изучать геймхакинг именно со взлома этого [CENSORED]а и поэтому ума не приложу, как реверсить, искать оффсеты и т.д., потому что все это было не нужно для написания простого хака под CS. В общем, мне нужно, чтобы кто-нибудь помог мне со взломом такой игры, как BLOCKADE Classic(щас наверно многие в [CENSORED], но погодите). Я решил хакнуть именно ее, потому что она, вроде как, проста для взлома, но не для меня. Я чекал гайды на YT, но они не помогали, в этой игре будто все по-другому, я нашел цепочку указателей на кол-во блоков, патронов, аптечек и хп, но у них по всей видимости стоит костыль, что человек за одну жизнь может поставить лишь 45 блоков и если он ставит больше, то его кикает с сервера, с патронами все работает, как и с аптечками, а вот значение здоровья мне удалось найти только на экране, то-есть отображаемое значение, а не настоящее, естественно мне не удалось найти локального игрока и т.д., к слову, я спокойно нашел все оффсеты для кс сам, без hazedumper, но в [CENSORED] блокаде я этого сделать не могу, поэтому прошу помощи у знающих людей.

Изменено пользователем Xipho
Использование нецензурной лексики недопустимо на нашем ресурсе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Когда в комментарии на Ютубе я говорил про максимум подробностей, я имел именно процесс поиска упомянутых значений, а не факт их нахождения. Я ведь уточнил - чтобы тому, кто возьмется тебе помогать, не проходить этот путь заново. А ты по факту почти слово в слово скопировал коммент с Ютуба, не потрудившись добавить подробностей. На нашем ресурсе так дела не делаются. Хочешь помощи - будь добр, изложи все свои изыскания. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
6 минут назад, Xipho сказал:

 Хочешь помощи - будь добр, изложи все свои изыскания. 

Учитывая то, что там стоит костыль на использования блоков, то это абсолютно не нужная информация, а знающий человек найдет все, что я нашел за одну секунду и это даже не первый уровень, это нулевой и я застрял именно на нем, так что не думаю, что тут можно еще что-либо добавить. Кстати, я прочитал правила на форуме, видимо я был невнимателен раз не заметил там, что тут запрещен мат.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
4 часа назад, Mefedroman сказал:

это нулевой и я застрял именно на нем

Если не можешь, то попытайся ещё разок и ещё разок и ещё, если где застрял, то создай гифку и опиши на чём застрял.. А из набранного тобой текста ничего не понятно, что же именно ты хочешь узнать, можешь даже поэтапно расписать.
В интернете есть уйма тем и видосиков на разного типа [CENSORED].

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
47 минут назад, DieVis сказал:

А из набранного тобой текста ничего не понятно, что же именно ты хочешь узнать, можешь даже поэтапно расписать.

Тут не нужно расписывать поэтапно, чтобы понять, что именно я хочу узнать, ибо все слишком просто. Мне нужно, чтобы кто-нибудь, нашел оффсеты для этой игры и показал всем, как он это сделал.

 

49 минут назад, DieVis сказал:

В интернете есть уйма тем и видосиков на разного типа

Да, я искал не мало, очень много нашел, очень много практиковался на разных играх, но конкретно в этой я не могу ничего сделать, там нет упорядоченности, там все в разнобой, поэтому очень трудно понять какие данные нужны, а какие нет. Дело в том, что в любой другой игре на которой я практиковался такого не было, там ищешь значение здоровья, дальше ищешь цепочку указателей, после создаешь структуру и там уже все упорядоченно и легко найти то, что нужно.

 

52 минуты назад, DieVis сказал:

Если не можешь, то попытайся ещё разок и ещё разок и ещё

Я пытался, но дело в том, что я пытался настолько сильно, что пал в отчаяние и пошел спрашивать людей на разных форумах, как это можно сделать, как же можно найти оффсеты в этой злосчастной игре. К тому же, тот кто поможет сделать это, поможет не только мне, но и многим другим людям, которые начинают обучаться геймхакингу и решили взломать именно эту игру.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Привет. Вообще, не знаю, почему у тебя с этим проблемы, я делал чит для другой игры очень похожей на Unity, называется BLOCKPOST, да и на Блокаду я тоже спокойно все находил автоматическим поиском указателей CE. Да, долго, да, указатель может отвалиться в любой момент, но все работало по итогу. Какие конкретно трудности тебя смущают, можешь их назвать? 

5 часов назад, Mefedroman сказал:

то это абсолютно не нужная информация, а знающий человек найдет все, что я нашел за одну секунду

Проблема в том, что помощь нужна тебе, а не нам. Так что это в твоих интересах, что бы ты предоставил всю информацию, что у тебя есть, что бы знающие сего форума не прошли мимо. Никто за тебя ничего делать не будет. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
13 часов назад, KRYPTOPUNK сказал:

Привет. Вообще, не знаю, почему у тебя с этим проблемы, я делал чит для другой игры очень похожей на Unity, называется BLOCKPOST, да и на Блокаду я тоже спокойно все находил автоматическим поиском указателей CE.

Я возможно очень наглый, но правда, если ты можешь, то пожалуйста запиши видео, как ты это делаешь, у меня почему-то не получается, я нашел указатель да, но когда я создаю структуру и пытаюсь получать оффсет локального игрока, то в структуре все в разнобой и не понятно, что где, вот к примеру, в CS все упорядоченно, находишь значение хп, указатель, дальше структура и вот у тебя уже практически все, что нужно.

Изменено пользователем Mefedroman

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, Mefedroman сказал:

когда я создаю структуру и пытаюсь получать оффсет локального игрока

Я должен задать этот вопрос - а ты пробовал применять в СЕ фишки Mono для этой игры? Раз она на Unity, то это может в разы упростить взлом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
3 часа назад, Mefedroman сказал:

Я возможно очень наглый, но правда, если ты можешь, то пожалуйста запиши видео, как ты это делаешь, у меня почему-то не получается, я нашел указатель да, но когда я создаю структуру и пытаюсь получать оффсет локального игрока, то в структуре все в разнобой и не понятно, что где, вот к примеру, в CS все упорядоченно, находишь значение хп, указатель, дальше структура и вот у тебя уже практически все, что нужно.

Ты вообще понимаешь, что такое структура? Какие оффсеты ты пытаешься получить? Что такое "оффсет локального игрока"? Ты понимаешь, о чем ты вообще говоришь, или все таки тебе нужно подучить основы? 

  • Плюс 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Смотри, класс Control в BLOCKPOST выглядит следующим образом:
 

Спойлер

class Control
{
public:
	char pad_0000[12]; //0x0000
	float cl_fps; //0x000C
	char pad_0010[12]; //0x0010
	float default_speed; //0x001C
	float speed; //0x0020
	float camheight; //0x0024
	float boxheight; //0x0028
	float zombieslowdown; //0x002C
	bool inSlow; //0x0030
	bool invertmouse; //0x0031
	char pad_0032[2]; //0x0032
	float sens; //0x0034
	float zoomsens; //0x0038
	float rx; //0x003C
	float ry; //0x0040
	float movex; //0x0044
	float movez; //0x0048
	float radius; //0x004C
	uint32_t cl_time; //0x0050
	uint32_t sv_time; //0x0054
	uint32_t ping; //0x0058
	float fcl_time; //0x005C
	int32_t prevweaponinput; //0x0060
	int32_t currweaponinput; //0x0064
	char pad_0068[48]; //0x0068
	Vector3 Velocity; //0x0098
	Vector3 Vel; //0x00A4
	bool inDuckKey; //0x00B0
	bool inJumpKey; //0x00B1
	bool inJumpPressed; //0x00B2
	bool inDuck; //0x00B3
	bool inAir; //0x00B4
	bool inAttack; //0x00B5
	bool inZoom; //0x00B6
	bool inReload; //0x00B7
	bool inStuck; //0x00B8
	bool lockMove; //0x00B9
	bool lockLook; //0x00BA
	bool lockAttack; //0x00BB
	bool manualAttack; //0x00BC
	char pad_00BD[3]; //0x00BD
	int32_t burstAttack; //0x00C0
	float tBurstAttack; //0x00C4
	int32_t specid; //0x00C8
	Vector3 prevPos; //0x00CC
	Vector3 nextPos; //0x00D8
	int32_t inAirFrame; //0x00E4
	bool freefly; //0x00E8
	char pad_00E9[3]; //0x00E9
	int32_t buildmode; //0x00EC
	int32_t toolmode; //0x00F0
	float currCamheight; //0x00F4
	Vector3 currPos; //0x00F8
	Vector3 Pos; //0x0104
	float fcurrFrame; //0x0110
	float fnextFrame; //0x0114
	float fdeltatime; //0x0118
	float specialtime_start; //0x011C
	float specialtime_end; //0x0120
	float specialtime_duration; //0x0124
	bool inFreeze; //0x0128
	char pad_0129[3]; //0x0129
	float tFreeze; //0x012C
	int32_t iFreeze; //0x0130
	int32_t demoidx; //0x0134
	class PlayerData *pl; //0x0138
	char pad_013C[84]; //0x013C
	float reload_start; //0x0190
	float reload_end; //0x0194
	float reload_end_msg; //0x0198
	int32_t reload_count; //0x019C
	float reload_active; //0x01A0
	float reload_result; //0x01A4
	float reload_forcept; //0x01A8
	Vector3 blockCursor; //0x01AC
	Vector3 nullvec; //0x01B8
}; //Size: 0x01C4

 

Класс PlayerData так:
 

Спойлер

class PlayerData
{
public:
	char pad_0000[16]; //0x0000
	int32_t idx; //0x0010
	int32_t team; //0x0014
	char *name; //0x0018
	char *formatname; //0x001C
	int32_t clanid; //0x0020
	char pad_0024[4]; //0x0024
	int32_t health; //0x0028
	int32_t skinstate; //0x002C
	char pad_0030[4]; //0x0030
	Vector3 prevPos; //0x0034
	char pad_0040[4]; //0x0040
	Vector3 curPos; //0x0044
	char pad_0050[28]; //0x0050
	float nextFrame; //0x006C
	char pad_0070[16]; //0x0070
	float tM; //0x0080
	class WeaponData *currweapon; //0x0084
	char pad_0088[8]; //0x0088
	int32_t currset; //0x0090
	char pad_0094[176]; //0x0094
	int32_t wstate; //0x0144
	int32_t bstate; //0x0148
	int32_t lf; //0x014C
	int32_t la; //0x0150
	float leg_limit; //0x0154
	char pad_0158[4]; //0x0158
	int32_t frameWaterSplash; //0x015C
	float tWaterSplash; //0x0160
	float yWaterSplash; //0x0164
	float speed; //0x0168
	float drawtime; //0x016C
	char pad_0170[12]; //0x0170
	int32_t exp; //0x017C
	char pad_0180[12]; //0x0180
	int32_t pexp; //0x018C
	char pad_0190[4]; //0x0190
	float spawntime; //0x0194
	bool spawnprotect; //0x0198
	char pad_0199[3]; //0x0199
	char (*cp)[10][4]; //0x019C
	Vector3 restoreHead; //0x01A0
	Vector3 restoreLArm; //0x01AC
	Vector3 restoreRArm; //0x01B8
	int32_t ipx; //0x01C4
	int32_t ipy; //0x01C8
	int32_t ipz; //0x01CC
	int32_t irx; //0x01D0
	int32_t iry; //0x01D4
	int32_t prevbstate; //0x01D8
	bool updatepos; //0x01DC
	bool updaterotx; //0x01DD
	bool updateroty; //0x01DE
	bool visible; //0x01DF
	char (*fragcount)[5][4]; //0x01E0
	char pad_01E4[28]; //0x01E4
	float tHeartBeat; //0x0200
	char pad_0204[4]; //0x0204
}; //Size: 0x0208

 

В твоей игре все практически аналогично, я её смотрел, но файлы к сожалению не сохранились. Так вот, изучи то, что я тебе предоставил, и подумай, как ты можешь выйти на структуру в своей игре, и что с ней в итоге делать. И да, присоединяюсь к замечанию @Xipho, и скажу, что можно использовать Mono, это существенно ускоряет процесс, но так же можно попробовать и без него. Удачи в начинаниях. 

  • Плюс 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
22 часа назад, KRYPTOPUNK сказал:

Смотри, класс Control в BLOCKPOST выглядит следующим образом:

Господи, спасибо, я не знаю, как тут ставить плюсы, по всей видимости я еще пока не могу, но ты правда мне очень сильно помог.

 

22 часа назад, KRYPTOPUNK сказал:

Ты вообще понимаешь, что такое структура? Какие оффсеты ты пытаешься получить? Что такое "оффсет локального игрока"? Ты понимаешь, о чем ты вообще говоришь, или все таки тебе нужно подучить основы?

Я понимаю о чем я говорю, но основы мне все таки нужно подучить, не злитесь на меня, друзья, я пока что начинающий, но огромное тебе спасибо, тему можно закрывать😃

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, Mefedroman сказал:

я не знаю, как тут ставить плюсы

Поставил - за тебя и за себя.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.
Авторизация  

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.