Начинающий
-
Автор темы
- #1
Я вообще полный 0 в c++, пытаюсь разобраться. Не понимаю как можно включить dota_use_particle_fow 0 без св чита в паблике. Буду пытаться найти через оффсеты с помощью чит энжина
нахуй вы плодите столько одинаковых топиков ну ладноЯ вообще полный 0 в c++, пытаюсь разобраться. Не понимаю как можно включить dota_use_particle_fow 0 без св чита в паблике. Буду пытаться найти через оффсеты с помощью чит энжина
Не нетвар, а конвар, но в целом ты прав. (Соре, приебался, но чтоб точно чел понимал о чем идет речь).нахуй вы плодите столько одинаковых топиков ну ладно
1. заходишь чит енжин
2. заходишь в доту и в меню ставишь sv_cheats 998
3. полрубаешь чит енжин к доте и ищешь значение 998
4. альтабаешься в доту и ставишь в консоле уже sv_cheats 228
5. в читенжинине ставишь 228 и нажимаешь некст
(если у тебя там по прежнему 10+ адресов - сортируешь дальше по способу 3-5)
ты нашел этот адрес можешь на него тыкнуть и скопировать рва (релейтив вирутал адрес) что то типо client.dll + 0x2281337
дальше ты можешь просто перезаписывать память (ака pm.write_int(client + offset, 1 чтобы св читс было 1)) чел в прошлом топике делал это через питон решений масса если ты нихуя не знаешь сделай как он через питон (контро ц контрл в)
есть минус такой хуйни этот рва тобишь оффсет будет меняется каждый микроапдейт в доте(каждую неделю) если ты не хочешь обновлять его каждую неделю сделай сигу на нетвар (sv_cheats) гайд по сиге на нетвар уже писал либералист топиком ниже почитай
приеду домой сделаю более подробный гайд в топике гайдов (уж слишком много однотипных тем) а пока думаю и так разбершсч
я опечатался :) upd: исправилНе нетвар, а конвар, но в целом ты прав. (Соре, приебался, но чтоб точно чел понимал о чем идет речь).
sv_cheats -- конвар. А в нем ты ищешь скорее всего value которое лежит в структуре конвара для sv_cheats. Так правильнее будет сказать.
И меняться будет именно положение конвара, когда же структура самого конвара раз в 5 лет меняется.
Самый лучший вариант для экстерна, это как реализовывают нормальные люди в ксго:
Находишь оффсет где лежит CCVar структура, в ней если отреверсить - можно сделать итератор по всем convar\concommand, следом в нужном менять value\flags (Value - чтобы вкл\выкл или еще чот, а flags - чтобы убрать например флаг на то, что это CHEAT_COMMAND или DEVELOPER_ONLY)
Но если лень заниматься вариантом выше, то можно рил паттерн на оффсет и надеятся, что сига будет жить долго.
Слушай Извини меня, я не могу понять, как можно сделать функцию в этот исходник? https://yougame.biz/threads/263327/page-3#post-2694713я опечатался :) upd: исправил
это интернал тобишь инжект длл там можно крейт интрефейс у конвара взять и даже искать ниче не нужно будетСлушай Извини меня, я не могу понять, как можно сделать функцию в этот исходник? https://yougame.biz/threads/263327/page-3#post-2694713
Я хочу с помощью оффсетов включать св читс, оффсеты я получил но не понимаю как реализовать.. извини за то что так много вопросов
class ConCommandBase {
public:
// Get
float GetFloat() {
typedef float (*Fn)(void*);
return Memory::GetVFunc<Fn>(this, 13)(this);
}
int GetInt() {
typedef int (*Fn)(void*);
return Memory::GetVFunc<Fn>(this, 14)(this);
}
bool GetBool() {
typedef bool (*Fn)(void*);
return Memory::GetVFunc<Fn>(this, 15)(this);
}
// Set
void SetString(const char* value) {
typedef void (*Fn)(void*, const char*);
Memory::GetVFunc<Fn>(this, 16)(this, value);
}
void SetFloat(float value) {
typedef void (*Fn)(void*, float);
Memory::GetVFunc<Fn>(this, 17)(this, value);
}
void SetInt(int value) {
typedef void (*Fn)(void*, int);
Memory::GetVFunc<Fn>(this, 18)(this, value);
}
void SetBool(bool value) {
typedef void (*Fn)(void*, bool);
Memory::GetVFunc<Fn>(this, 19)(this, value);
}
};
class ICvar {
public:
ConCommandBase* FindCommandBase(char const* convar) {
typedef ConCommandBase* (*Fn)(void*, char const*);
return Memory::GetVFunc<Fn>(this, 16)(this, convar);
}
};
void ConVars::FindConVars() {
this->sv_cheats = vmt.cvar->FindCommandBase("sv_cheats");
this->dota_camera_distance = vmt.cvar->FindCommandBase("dota_camera_distance");
this->r_farz = vmt.cvar->FindCommandBase("r_farz");
this->fog_enable = vmt.cvar->FindCommandBase("fog_enable");
this->fow_client_nofiltering = vmt.cvar->FindCommandBase("fow_client_nofiltering");
this->cl_weather = vmt.cvar->FindCommandBase("cl_weather");
this->volume = vmt.cvar->FindCommandBase("volume");
this->dota_range_display = vmt.cvar->FindCommandBase("dota_range_display");
this->dota_use_particle_fow = vmt.cvar->FindCommandBase("dota_use_particle_fow");
}
void ConVars::SetConVars() {
this->sv_cheats->SetInt(1);
this->dota_camera_distance->SetFloat(static_cast<float>(Config::camera.camera_distance));
this->r_farz->SetFloat(static_cast<float>(Config::camera.camera_distance * 2));
this->fog_enable->SetInt(!Config::camera.fog_enable);
this->fow_client_nofiltering->SetInt(Config::camera.fow_client_nofiltering);
this->cl_weather->SetInt(Config::misc.cl_weather);
this->dota_range_display->SetFloat(static_cast<float>(Config::ranges.dota_range_display));
if (Protection::IsFree)
this->dota_use_particle_fow->SetInt(!Config::camera.dota_use_particle_fow);
}
vmt.cvar = tier0->LoadInterface<ICvar>("VEngineCvar007", 42);
А куда это можно вставить? Я просто попытался, одни ошибки.. извини из за этих очень тупых вопросовэто интернал тобишь инжект длл там можно крейт интрефейс у конвара взять и даже искать ниче не нужно будет
base:class ConCommandBase { public: // Get float GetFloat() { typedef float (*Fn)(void*); return Memory::GetVFunc<Fn>(this, 13)(this); } int GetInt() { typedef int (*Fn)(void*); return Memory::GetVFunc<Fn>(this, 14)(this); } bool GetBool() { typedef bool (*Fn)(void*); return Memory::GetVFunc<Fn>(this, 15)(this); } // Set void SetString(const char* value) { typedef void (*Fn)(void*, const char*); Memory::GetVFunc<Fn>(this, 16)(this, value); } void SetFloat(float value) { typedef void (*Fn)(void*, float); Memory::GetVFunc<Fn>(this, 17)(this, value); } void SetInt(int value) { typedef void (*Fn)(void*, int); Memory::GetVFunc<Fn>(this, 18)(this, value); } void SetBool(bool value) { typedef void (*Fn)(void*, bool); Memory::GetVFunc<Fn>(this, 19)(this, value); } }; class ICvar { public: ConCommandBase* FindCommandBase(char const* convar) { typedef ConCommandBase* (*Fn)(void*, char const*); return Memory::GetVFunc<Fn>(this, 16)(this, convar); } };
example:void ConVars::FindConVars() { this->sv_cheats = vmt.cvar->FindCommandBase("sv_cheats"); this->dota_camera_distance = vmt.cvar->FindCommandBase("dota_camera_distance"); this->r_farz = vmt.cvar->FindCommandBase("r_farz"); this->fog_enable = vmt.cvar->FindCommandBase("fog_enable"); this->fow_client_nofiltering = vmt.cvar->FindCommandBase("fow_client_nofiltering"); this->cl_weather = vmt.cvar->FindCommandBase("cl_weather"); this->volume = vmt.cvar->FindCommandBase("volume"); this->dota_range_display = vmt.cvar->FindCommandBase("dota_range_display"); this->dota_use_particle_fow = vmt.cvar->FindCommandBase("dota_use_particle_fow"); } void ConVars::SetConVars() { this->sv_cheats->SetInt(1); this->dota_camera_distance->SetFloat(static_cast<float>(Config::camera.camera_distance)); this->r_farz->SetFloat(static_cast<float>(Config::camera.camera_distance * 2)); this->fog_enable->SetInt(!Config::camera.fog_enable); this->fow_client_nofiltering->SetInt(Config::camera.fow_client_nofiltering); this->cl_weather->SetInt(Config::misc.cl_weather); this->dota_range_display->SetFloat(static_cast<float>(Config::ranges.dota_range_display)); if (Protection::IsFree) this->dota_use_particle_fow->SetInt(!Config::camera.dota_use_particle_fow); }
cvar interface:vmt.cvar = tier0->LoadInterface<ICvar>("VEngineCvar007", 42);
ну создай файлик или найди как там в структуре интрефейсы расписаны и сделай я не могу тебе подсказывать как в детском садикеА куда это можно вставить? Я просто попытался, одни ошибки.. извини из за этих очень тупых вопросов
А что делать при компиляции выдает 37 ошибок...Советую тебе плюсы выучить что бы что то понимать в этом
Сурсы можешь отсюда спиздить
Пожалуйста, авторизуйтесь для просмотра ссылки.
удалить visual studio и пойти играть в маинкрафтА что делать при компиляции выдает 37 ошибок...
может быть выучить плюсы и затем поймёшь как зафиксить ошибки?А что делать при компиляции выдает 37 ошибок...
да не нахуй надо я лучше пойду еще 300 тем создам про конвары ) а потом на 2 обязательно спрошу как же сделать скин ченджрможет быть выучить плюсы и затем поймёшь как зафиксить ошибки?
Проект предоставляет различный материал, относящийся к сфере киберспорта, программирования, ПО для игр, а также позволяет его участникам общаться на многие другие темы. Почта для жалоб: admin@yougame.biz