HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #7121  
Старый 30.10.2023, 23:04
Digger Man52
Познавший АНТИЧАТ
Регистрация: 14.07.2019
Сообщений: 1,097
С нами: 3596877

Репутация: 183


По умолчанию

Цитата:
Сообщение от WeWorny  

как мне сделать функцию StartAdditionalThread в отдельном файле. Чтобы при кнопке start вызывалась эта функция из другого файла
создаешь другой файл, вообще поебать какое расширение(принято .h), назовем его допустим hui.lol потом #include "hui.lol" в основном файле, и прописываешь реализацию функции в hui.lol, потом вызываешь функцию
 
Ответить с цитированием

  #7122  
Старый 02.11.2023, 19:50
Basedbounty
Участник форума
Регистрация: 25.11.2021
Сообщений: 198
С нами: 2351419

Репутация: 48
По умолчанию

C++:





Код:
void
func1
(
)
{
std
::
cout «
"func1"
;
}
void
func2
(
)
{
std
::
cout «
"func2"
;
}
int
main
(
)
{
while
(
true
)
{
func1
;
func2
;
}
return
0
;
}


- как вы видите у меня есть две функции, и третия основая, в которой я вызываю две эти функции, как мне в главной функции сделать что при вызове func1 - замараживалось на определенное время, но func2 продалжала работать, после разморозки функции func1, происходил код из func1, а потом опять замораживался, но func2 продалжал работу
 
Ответить с цитированием

  #7123  
Старый 02.11.2023, 20:48
Digger Man52
Познавший АНТИЧАТ
Регистрация: 14.07.2019
Сообщений: 1,097
С нами: 3596877

Репутация: 183


По умолчанию

Цитата:
Сообщение от WeWorny  

void func1(){
std::cout « "func1";
}

void func2(){
std::cout « "func2";
}

int main() {
while(true) {
func1;
func2;
}
return 0;
} - как вы видите у меня есть две функции, и третия основая, в которой я вызываю две эти функции, как мне в главной функции сделать что при вызове func1 - замараживалось на определенное время, но func2 продалжала работать, после разморозки функции func1, происходил код из func1, а потом опять замораживался, но func2 продалжал работу
создать bool переменную, и если она фолс, то пропускать func1, а когда тебе надо, сделаешь ее true, если тебе по какому то таймеру надо, тогда запускай в отдельном потоке таймер и считай, потом делай true
 
Ответить с цитированием

  #7124  
Старый 03.11.2023, 17:52
Digger Man52
Познавший АНТИЧАТ
Регистрация: 14.07.2019
Сообщений: 1,097
С нами: 3596877

Репутация: 183


По умолчанию

Цитата:
Сообщение от percheklii  

такой вопрос, можно это реализовать на c++ в asi плагине? адреса памяти то понятно, но samp.events реально?

Цитата:
Сообщение от Спойлер  


Lua:





Код:
local
sampev
=
require
(
"samp.events"
)
local
memory
=
require
(
"memory"
)
memory
.
write
(
0x70476E
,
0x0B32
,
4
,
true
)
;
memory
.
write
(
0x70476A
,
0xE9575653
,
4
,
true
)
--NoPostFx
memory
.
write
(
0x53EA95
,
0xB7C7F0
,
4
,
true
)
;
memory
.
setfloat
(
0xB7C7F0
,
201
,
true
)
--Drawdist
memory
.
setuint8
(
getModuleHandle
(
"samp.dll"
)
+
0x9D170
,
0xC3
,
true
)
--FpsUnlock
memory
.
copy
(
0x4EB9A0
,
memory
.
strptr
(
"\xC2\x04\x00"
)
,
3
,
true
)
--NoRadio
memory
.
copy
(
0x866C94
,
memory
.
strptr
(
"$%d"
)
,
6
,
true
)
--NoMoneyZero
memory
.
write
(
0x52228E
,
0xB6EC1C
,
4
,
true
)
-- SensitivityFix
memory
.
write
(
5497324
,
235
,
1
,
true
)
--NoTargetBlip
memory
.
write
(
8931716
,
0
,
4
,
true
)
--FixBlackRoads
memory
.
setuint8
(
0x5909AB
,
0x1
,
true
)
--FastLoad
function
main
(
)
callFunction
(
0x7469A0
,
0
,
0
)
end
function
sampev
.
onServerMessage
(
color
,
text
)
if
text
:
find
(
"Чтобы завести транспорт"
)
or
text
:
find
(
"Чтобы закрыть транспорт"
)
then
sampSendChat
(
"/engine"
)
end
end
function
sampev
.
onShowTextDraw
(
id
,
data
)
data
.
text
=
data
.
text
:
gsub
(
"~w~galaxy%-rpg%.online~n~"
,
""
)
return
{
id
,
data
}
end
function
sampev
.
onDisplayGameText
(
style
,
time
,
text
)
return
{
4
,
2000
,
text
}
end


ну, просто 3 хука…
 
Ответить с цитированием

  #7125  
Старый 03.11.2023, 22:34
Vintik
Познавший АНТИЧАТ
Регистрация: 18.08.2017
Сообщений: 1,568
С нами: 4598023

Репутация: 183


По умолчанию

Цитата:
Сообщение от Digger Man  

ну, просто 3 хука…
пытался помочь челику и найти в исходниках самп.луа адреса хуков, но не нашёл

может быть ты найдёшь?
 
Ответить с цитированием

  #7126  
Старый 03.11.2023, 23:23
redcode
Участник форума
Регистрация: 26.06.2018
Сообщений: 166
С нами: 4149151

Репутация: 213
По умолчанию

Цитата:
Сообщение от Vintik  

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

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

  #7127  
Старый 04.11.2023, 19:59
0x73616D
Участник форума
Регистрация: 27.05.2021
Сообщений: 140
С нами: 2614229

Репутация: 33
По умолчанию

What is wrong with my code? When getting into a vehicle the game crashes (R1)

Что не так с моим кодом? При посадке в транспорт игра вылетает (R1)

C++:





Код:
bool
MemoryCheck
(
int
pAddress
,
unsigned
char
cByte
)
{
unsigned
long
dwProtect
[
2
]
;
unsigned
char
cValue
=
cByte
;
VirtualProtect
(
reinterpret_cast

(
pAddress
)
,
1
,
PAGE_READWRITE
,
&
dwProtect
[
0
]
)
;
memcpy
(
&
cValue
,
reinterpret_cast

(
pAddress
)
,
1
)
;
VirtualProtect
(
reinterpret_cast

(
pAddress
)
,
1
,
dwProtect
[
0
]
,
&
dwProtect
[
1
]
)
;
return
(
cValue
>
cByte
)
;
}
DWORD
GetVehicleCPEDPtr
(
)
{
unsigned
long
dwProtect
[
2
]
;
DWORD vehicleCPEDPtr
;
VirtualProtect
(
reinterpret_cast

(
0xBA18FC
)
,
sizeof
(
DWORD
)
,
PAGE_EXECUTE_READ
,
&
dwProtect
[
0
]
)
;
memcpy
(
&
vehicleCPEDPtr
,
reinterpret_cast

(
0xBA18FC
)
,
sizeof
(
DWORD
)
)
;
return
vehicleCPEDPtr
;
}
float
GetVehicleSpeed
(
DWORD vehicleCPEDPtr
)
{
unsigned
long
dwProtect
[
2
]
;
float
speedX
,
speedY
;
VirtualProtect
(
reinterpret_cast

(
vehicleCPEDPtr
+
0x44
)
,
sizeof
(
float
)
,
PAGE_EXECUTE_READ
,
&
dwProtect
[
0
]
)
;
memcpy
(
&
speedX
,
reinterpret_cast

(
vehicleCPEDPtr
+
0x44
)
,
sizeof
(
float
)
)
;
VirtualProtect
(
reinterpret_cast

(
vehicleCPEDPtr
+
0x44
)
,
sizeof
(
float
)
,
dwProtect
[
0
]
,
&
dwProtect
[
1
]
)
;
VirtualProtect
(
reinterpret_cast

(
vehicleCPEDPtr
+
0x48
)
,
sizeof
(
float
)
,
PAGE_EXECUTE_READ
,
&
dwProtect
[
0
]
)
;
memcpy
(
&
speedY
,
reinterpret_cast

(
vehicleCPEDPtr
+
0x48
)
,
sizeof
(
float
)
)
;
VirtualProtect
(
reinterpret_cast

(
vehicleCPEDPtr
+
0x48
)
,
sizeof
(
float
)
,
dwProtect
[
0
]
,
&
dwProtect
[
1
]
)
;
float
speed
=
(
speedX
+
speedY
)
*
4.0f
;
return
speed
;
}
int
WINAPI
Thread
(
)
{
while
(
*
(
DWORD
*
)
0xC8D4C0
!=
9
)
Sleep
(
100
)
;
InitHook
(
)
;
while
(
true
)
{
if
(
MemoryCheck
(
0xBA18FC
,
1
)
)
{
if
(
GetVehicleCPEDPtr
(
)
!=
0
)
{
float
speed
=
GetVehicleSpeed
(
GetVehicleCPEDPtr
(
)
)
;
if
(
speed
>=
0
&&
speed

60
&&
speed

120
&&
speed

180
)
{
speed
=
33
;
}
else
{
speed
=
0
;
}
}
}
}
return
0
;
}


The addresses are fine since in the cheat engine, when you obtain both speeds, add them and multiply them by 4, the returned value is the correct one.

С адресами все в порядке, поскольку в чит-движке, когда вы получаете обе скорости, складываете их и умножаете на 4, возвращаемое значение является правильным.
 
Ответить с цитированием

  #7128  
Старый 08.11.2023, 05:43
F0RQU1N and
Познавший АНТИЧАТ
Регистрация: 29.09.2018
Сообщений: 1,292
С нами: 4012500

Репутация: 138


По умолчанию

Цитата:
Сообщение от ччбчлчлчъ ччччшчьпьппзвжв  

???
Функция PsSetLoadImageNotifyRoutine (ntddk.h) - Windows drivers

Подпрограмма PsSetLoadImageNotifyRoutine регистрирует обратный вызов, предоставленный драйвером, который впоследствии уведомляется при загрузке образа (или сопоставлен в память).

learn.microsoft.com


Или через ssdt хукай LdrLoadDll
 
Ответить с цитированием

  #7129  
Старый 08.11.2023, 05:57
etereon
Постоянный
Регистрация: 08.03.2016
Сообщений: 332
С нами: 5358262

Репутация: 213
По умолчанию

Цитата:
Сообщение от F0RQU1N and  

Или через ssdt хукай LdrLoadDll
Она лежит в ntdll.dll, так что в ядре можно перехватить только сусколлы, которые она использует
 
Ответить с цитированием

  #7130  
Старый 08.11.2023, 07:53
ARMOR
Флудер
Регистрация: 02.02.2019
Сообщений: 5,070
С нами: 3831395

Репутация: 183


По умолчанию

Цитата:
Сообщение от percheklii  

адреса памяти то понятно, но samp.events реально?
Исходник - RakHook 1.0-beta

RakHook - библиотека, которая добавляет события RakNet'a (входящие/исходящие пакеты и RPC), эмуляцию и отправку пакетов и RPC. Есть одновременная поддержка версий 0.3.7-R1, 0.3.7-R3-1, 0.3.7-R4 и 0.3DL-R1. Функции std::uintptr_t rakhook::samp_addr(std::uintptr_t offset = 0); // получить адрес...

www.blast.hk
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.

×

Внести депозит

Введите сумму USDT:

Принимается только USDT TRC20. Fake/Flash USDT не засчитывается.

×

Вывести депозит

Сумма USDT:

Ваш USDT TRC20 кошелек:

Заявка будет отправлена администратору.