Оффсеты кс

Начинающий
Статус
Оффлайн
Регистрация
19 Июл 2018
Сообщения
50
Реакции[?]
6
Поинты[?]
0
Инициализированные переменные не должен! Если у тебя что-то объявлено внутри фигурных скобок, оно там и останется.
C++:
{
    int a;
    a = 1;
}
cout << a; //Ошибка при компиляции
------------------------------
int a = 0;
{
    int a = 1;
}
std::cout << a; //Выведет 0
------------------------------
void f()
{
    int a = 1;
}

int main()
{
    int a = 0;
    f();
    std::cout << a; //Выведет 0
}
-------------------------------
int a;
void f()
{
    a = 1;
}

int main()
{
    a = 0;
    f();
    std::cout << a; //Выведет 1
}
------------------------------
int a;
void f()
{
    int a = 1;
}

int main()
{
    a = 0;
    f();
    std::cout << a; //Выведет 0
}
-----------------------------
int a;
void f()
{
    a = 1;
}

int main()
{
    int a = 0;
    f();
    std::cout << a; //Выведет 0
}
Ну не, это понятно, я не так выразился, хотел сказать, что в воиде я присваиваю переменным нахождение чего-то, того же самого модуля, а потом вызываю воид в мейне. У меня есть сомнения, что вот у меня функция void getProcess() и функция void banNy(), которые я вызываю в int main() и будут ли они между собой работать? И всё же, у тебя есть мб вк или телега, где тебе написать можно?
 
money++
Разработчик
Статус
Оффлайн
Регистрация
14 Июн 2018
Сообщения
638
Реакции[?]
339
Поинты[?]
22K
Ну не, это понятно, я не так выразился, хотел сказать, что в воиде я присваиваю переменным нахождение чего-то, того же самого модуля, а потом вызываю воид в мейне. У меня есть сомнения, что вот у меня функция void getProcess() и функция void banNy(), которые я вызываю в int main() и будут ли они между собой работать? И всё же, у тебя есть мб вк или телега, где тебе написать можно?
Между собой работать НЕ будут(в плане передевать переменные между собой). Только если создашь глобальные переменные. ВК, телегу, дискорд и т.п. свои пока шарить желание не имею
 
Начинающий
Статус
Оффлайн
Регистрация
19 Июл 2018
Сообщения
50
Реакции[?]
6
Поинты[?]
0
Между собой работать НЕ будут(в плане передевать переменные между собой). Только если создашь глобальные переменные. ВК, телегу, дискорд и т.п. свои пока шарить желание не имею
Ддада, я уже попробовал внести всё под одну функцию и вуаля, всё работает. Вот тг:

Пожалуйста, зарегистрируйтесь или авторизуйтесь, чтобы увидеть содержимое.

. Сейчас всё-таки как-то хочу сделать это распределение по функциям, тем более мне кажется, что код так будет лучше работать, красивее выглядеть и тяжелее читаться). И как я понял, флаги всегда меняются, поэтому их нужно добавлять в бескон цикл вместе с бхопом. Или как, просто я сделал такой эксперимент и в бесконечном цикле, где ищу флаги и заставляю локала прыгать, я сделал такое условие (if (flags == NULL)) и потом сделал цикл внутри этого ифа с таким же условием, в котором он опять ищет флаги (после всех этих строк далее идёт сам бхоп), так вот при добавлении такого ифа бхоп перестаёт почему-то потом работать, это нам говорит, что в программе всё-таки идёт обращение к этому условию (хотя перед условием тоже ищутся флаги, они каким-то образом сбрасываются или как?), ну и потом как я сказал бхоп не запускается - это нам говорит о том, что цикл с нахождением флага этого ифа не прекращается. Есть 2 вариант, что всё же почему-то идёт обращение к этому условию, он опять записывает флаг и перед бхопом сбрасывает его в очередной раз, после игнорируется прыжок, тк не удовлетворяется условию (нет флага) и всё начинается по новой. Вот и вопрос: как работают флаги блин?
 
Начинающий
Статус
Оффлайн
Регистрация
19 Июл 2018
Сообщения
50
Реакции[?]
6
Поинты[?]
0
Между собой работать НЕ будут(в плане передевать переменные между собой). Только если создашь глобальные переменные. ВК, телегу, дискорд и т.п. свои пока шарить желание не имею
Ещё когда я убираю значение на земле он или в воздухе (1597087760582.png), ничего не меняется. Зачем нужно это: 1597087808561.png (стоит в конце Modulegame + ofsdwFJump, 6) и почему мы пишем память по координате модуля + оффсетпрыжка, а не локалплеера или флага? Ия убирал кстати 1 << 0 для того, чтобы он не стопился при нажатии прыжка в воздухе (он останавливается и понятно почему он это делает, ибо в условии стоит, что он должен быть на земле, хотя когда я это убрал, нчего не поменялось), и да, он перестаёт прыгать не только, когда мы нажимаем пробел в воздухе, но и когда мы нажимаем пробел, стоя на машине или какой-то соответственно другой текстурки, не являющейся FL_GROUND или типо того
 
Последнее редактирование:
money++
Разработчик
Статус
Оффлайн
Регистрация
14 Июн 2018
Сообщения
638
Реакции[?]
339
Поинты[?]
22K
Ддада, я уже попробовал внести всё под одну функцию и вуаля, всё работает. Вот тг: Скрытое содержимое. Сейчас всё-таки как-то хочу сделать это распределение по функциям, тем более мне кажется, что код так будет лучше работать, красивее выглядеть и тяжелее читаться). И как я понял, флаги всегда меняются, поэтому их нужно добавлять в бескон цикл вместе с бхопом. Или как, просто я сделал такой эксперимент и в бесконечном цикле, где ищу флаги и заставляю локала прыгать, я сделал такое условие (if (flags == NULL)) и потом сделал цикл внутри этого ифа с таким же условием, в котором он опять ищет флаги (после всех этих строк далее идёт сам бхоп), так вот при добавлении такого ифа бхоп перестаёт почему-то потом работать, это нам говорит, что в программе всё-таки идёт обращение к этому условию (хотя перед условием тоже ищутся флаги, они каким-то образом сбрасываются или как?), ну и потом как я сказал бхоп не запускается - это нам говорит о том, что цикл с нахождением флага этого ифа не прекращается. Есть 2 вариант, что всё же почему-то идёт обращение к этому условию, он опять записывает флаг и перед бхопом сбрасывает его в очередной раз, после игнорируется прыжок, тк не удовлетворяется условию (нет флага) и всё начинается по новой. Вот и вопрос: как работают флаги блин?
Воспользуйся глобальными переменными и дели на функции это все, кто тебе мешает? Флаги меняются в зависимости от того, что происходит в игре, это же очевидно. Покажи вообще, как ты получаешь flags
 
Начинающий
Статус
Оффлайн
Регистрация
19 Июл 2018
Сообщения
50
Реакции[?]
6
Поинты[?]
0
Воспользуйся глобальными переменными и дели на функции это все, кто тебе мешает? Флаги меняются в зависимости от того, что происходит в игре, это же очевидно. Покажи вообще, как ты получаешь flags

Пожалуйста, зарегистрируйтесь или авторизуйтесь, чтобы увидеть содержимое.

 
money++
Разработчик
Статус
Оффлайн
Регистрация
14 Июн 2018
Сообщения
638
Реакции[?]
339
Поинты[?]
22K
Начинающий
Статус
Оффлайн
Регистрация
19 Июл 2018
Сообщения
50
Реакции[?]
6
Поинты[?]
0
Воспользуйся глобальными переменными и дели на функции это все, кто тебе мешает? Флаги меняются в зависимости от того, что происходит в игре, это же очевидно. Покажи вообще, как ты получаешь flags
Кстати тип BYTE у fFlag по той причине, что он в себе хранит много оффсетов (PL_GROUND и прочее), типо в флаге хранятся оффсеты перемещения, которые изменяются побитно и они записаны в байтах в fFlag? И как тогда будет этот флаг называться, который в себе хранит все эти оффсеты? Он эе по-любому типа байт, а не дворд, как все, по той причине, что имеет больше значений, в отличии от локалплеера или оффсета dwForceJump, да и в принципе все оффсеты типа данных DWORD, но именно флаг ищется, как BYTE и переменная его была записана, как BYTE, в тоже время переменная локалплеера была записана как DWORD (я сейчас не про оффсеты, а про перменные, которые создавались для присвоения к ним нахождения тел или иных объектов в игре)
 
Начинающий
Статус
Оффлайн
Регистрация
19 Июл 2018
Сообщения
50
Реакции[?]
6
Поинты[?]
0
money++
Разработчик
Статус
Оффлайн
Регистрация
14 Июн 2018
Сообщения
638
Реакции[?]
339
Поинты[?]
22K
Кстати тип BYTE у fFlag по той причине, что он в себе хранит много оффсетов (PL_GROUND и прочее), типо в флаге хранятся оффсеты перемещения, которые изменяются побитно и они записаны в байтах в fFlag? И как тогда будет этот флаг называться, который в себе хранит все эти оффсеты? Он эе по-любому типа байт, а не дворд, как все, по той причине, что имеет больше значений, в отличии от локалплеера или оффсета dwForceJump, да и в принципе все оффсеты типа данных DWORD, но именно флаг ищется, как BYTE и переменная его была записана, как BYTE, в тоже время переменная локалплеера была записана как DWORD (я сейчас не про оффсеты, а про перменные, которые создавались для присвоения к ним нахождения тел или иных объектов в игре)
DWORD содержит 32 бита, BYTE - 8. FL_ONGROUND не оффсет, а флаг. Условная строка #define FL_ONGROUND (1 << 2) означает то, что в байте fFlag бит с индексом 2 отвечает за нахождение на земле
 
money++
Разработчик
Статус
Оффлайн
Регистрация
14 Июн 2018
Сообщения
638
Реакции[?]
339
Поинты[?]
22K
Тип данных BYTE
Скрытое содержимое
Нельзя писать search.localPlayer и надеется что что-то произойдет) search.localPlayer это не функция, это DWORD. Тебе вообще не надо его переопределять. Просто перед первым бесконечным циклом вставь твою строку search.localPlayer = memory.readMem... и все, указатель на localPlayer'a не поменяется в середине игры. Тоже самое и с search.fFlag. Строка search.fFlag; не делает ВООБЩЕ ничего.
Про то куда и зачем ты пишешь 6 -
Пожалуйста, авторизуйтесь для просмотра ссылки.
(noad)
 
Начинающий
Статус
Оффлайн
Регистрация
19 Июл 2018
Сообщения
50
Реакции[?]
6
Поинты[?]
0
DWORD содержит 32 бита, BYTE - 8. FL_ONGROUND не оффсет, а флаг. Условная строка #define FL_ONGROUND (1 << 2) означает то, что в байте fFlag бит с индексом 2 отвечает за нахождение на земле
Получается в байте флаг есть много флагов, а что по поводу самого оффсета флага, как он зависит от байта флаг и где хранится, если зависит от него? И как понял я: флаг типа байт только по той причине, что он хранит множество флагов, которые зависят от битов, в отличии от локалплеера того же самого, который ничего в себе не хранит, тк существует только в виде оффсета, а все оффсеты у нас типа дворд, аналогично и с прыжком. Стоп, или, кстати, локал тоже хранится в флагах, как флаг и поэтому он дворд, как и FL_ONGROUND, который скорее всего и содержит в себе оффсет типа дворд, правильно мыслю?
 
money++
Разработчик
Статус
Оффлайн
Регистрация
14 Июн 2018
Сообщения
638
Реакции[?]
339
Поинты[?]
22K
Получается в байте флаг есть много флагов, а что по поводу самого оффсета флага, как он зависит от байта флаг и где хранится, если зависит от него? И как понял я: флаг типа байт только по той причине, что он хранит множество флагов, которые зависят от битов, в отличии от локалплеера того же самого, который ничего в себе не хранит, тк существует только в виде оффсета, а все оффсеты у нас типа дворд, аналогично и с прыжком. Стоп, или, кстати, локал тоже хранится в флагах, как флаг и поэтому он дворд, как и FL_ONGROUND, который скорее всего и содержит в себе оффсет типа дворд, правильно мыслю?
В твоем случае да, "в байте флаг есть много флагов". Но ты можешь хоть к каждому биту отдельно обращаться. Это было сделано для удобства. Вообще search.localplayer для нас просто хранит адрес локалплеера и все, никаких флагов он не хранит. А в середине твоего сообщение я как бы все слова узнал, но ничего не понял - там неправильно, сам разбирайся что и где, потому что мой мозг устал(
 
Начинающий
Статус
Оффлайн
Регистрация
19 Июл 2018
Сообщения
50
Реакции[?]
6
Поинты[?]
0
Нельзя писать search.localPlayer и надеется что что-то произойдет) search.localPlayer это не функция, это DWORD. Тебе вообще не надо его переопределять. Просто перед первым бесконечным циклом вставь твою строку search.localPlayer = memory.readMem... и все, указатель на localPlayer'a не поменяется в середине игры. Тоже самое и с search.fFlag. Строка search.fFlag; не делает ВООБЩЕ ничего.
Про то куда и зачем ты пишешь 6 -
Пожалуйста, авторизуйтесь для просмотра ссылки.
(noad)
Нееет, а если я в меню буду, он же не найдёт. И когда я внутри цикла выполнение serch.localPlayer, я же над этим условием прописал, что должна выполнять эта переменная, тем более, кстати, это работает). А статью я ту видел, но мало что понял, из-за своего английского
 
money++
Разработчик
Статус
Оффлайн
Регистрация
14 Июн 2018
Сообщения
638
Реакции[?]
339
Поинты[?]
22K
Нееет, а если я в меню буду, он же не найдёт. И когда я внутри цикла выполнение serch.localPlayer, я же над этим условием прописал, что должна выполнять эта переменная, тем более, кстати, это работает). А статью я ту видел, но мало что понял, из-за своего английского
Насчет локалплеера в меню согласен, давно ничего такого не писал) Про search.localPlayer НЕ согласен. Функции создаются по другому в C++
 
money++
Разработчик
Статус
Оффлайн
Регистрация
14 Июн 2018
Сообщения
638
Реакции[?]
339
Поинты[?]
22K
Нееет, а если я в меню буду, он же не найдёт. И когда я внутри цикла выполнение serch.localPlayer, я же над этим условием прописал, что должна выполнять эта переменная, тем более, кстати, это работает). А статью я ту видел, но мало что понял, из-за своего английского
А английский надо учить, без него в кодинге, а тем более в геймхакинге никак
 
Начинающий
Статус
Оффлайн
Регистрация
19 Июл 2018
Сообщения
50
Реакции[?]
6
Поинты[?]
0
В твоем случае да, "в байте флаг есть много флагов". Но ты можешь хоть к каждому биту отдельно обращаться. Это было сделано для удобства. Вообще search.localplayer для нас просто хранит адрес локалплеера и все, никаких флагов он не хранит. А в середине твоего сообщение я как бы все слова узнал, но ничего не понял - там неправильно, сам разбирайся что и где, потому что мой мозг устал(
ох, прости(((, но ласт вопрос, что по повоу того момента отпрыгивания от машины, типо если быть на текстурке машины, то програ не считает, что ты на земле и когда ты зажимаешь пробел прыгая с неё, перс не делает распрыжку. Я пытался сделать так, чтобы перс мог и в воздухе прыгать, потому что если пользователь будет падать с какого-то объекта и нажмёт пробел в воздухе (момент падения), то перс у него не отпрыгнет, по той причине, что в условии указали прыгать только когда на земле. Я это делал путём удаления этой строчки

Пожалуйста, зарегистрируйтесь или авторизуйтесь, чтобы увидеть содержимое.

, но ничего после её удаления не изменилось, от слова - абсолютно
 
Начинающий
Статус
Оффлайн
Регистрация
19 Июл 2018
Сообщения
50
Реакции[?]
6
Поинты[?]
0
Начинающий
Статус
Оффлайн
Регистрация
19 Июл 2018
Сообщения
50
Реакции[?]
6
Поинты[?]
0
Начинающий
Статус
Оффлайн
Регистрация
19 Июл 2018
Сообщения
50
Реакции[?]
6
Поинты[?]
0
В твоем случае да, "в байте флаг есть много флагов". Но ты можешь хоть к каждому биту отдельно обращаться. Это было сделано для удобства. Вообще search.localplayer для нас просто хранит адрес локалплеера и все, никаких флагов он не хранит. А в середине твоего сообщение я как бы все слова узнал, но ничего не понял - там неправильно, сам разбирайся что и где, потому что мой мозг устал(
А, и вот, думаю этот вопрос абсолютно лёгок для тебя. Почему мы оффсет прыжка записываем в адрес модуля игры, а не в адрес локалплеера или оффсета?

Пожалуйста, зарегистрируйтесь или авторизуйтесь, чтобы увидеть содержимое.

 
Сверху Снизу