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

  #1  
Старый 16.08.2024, 04:28
Smeruxa
Познавший АНТИЧАТ
Регистрация: 27.11.2020
Сообщений: 1,431
С нами: 2874035

Репутация: 183


По умолчанию

Ставлю хук, но он не срабатывает при выстреле, в чем проблема может быть?

C++:





Код:
using
addBullet
=
bool
(
__cdecl
*
)
(
CEntity
*
,
eWeaponType
,
CVector
,
CVector
)
;
constructor
(
)
{
std
::
uintptr_t base
=
reinterpret_cast

(
GetModuleHandleA
(
"samp.dll"
)
)
;
kthook
::
kthook_simple

(
bullet
)
;
bullet
.
set_cb
(
[
]
(
const
auto
&
hook
,
CEntity
*
eShooter
,
eWeaponType weaponType
,
CVector vecPosition
,
CVector vecVelocity
)
{
sampapi
::
v037r1
::
RefChat
(
)
->
AddMessage
(
-
1
,
(
std
::
to_string
(
(
int
)
weaponType
)
)
.
c_str
(
)
)
;
return
hook
.
get_trampoline
(
)
(
eShooter
,
weaponType
,
vecPosition
,
vecVelocity
)
;
}
)
;
bullet
.
set_dest
(
base
+
0xA0BB0
)
;
bullet
.
install
(
)
;
}
 
Ответить с цитированием

  #2  
Старый 16.08.2024, 10:22
вайега52
Флудер
Регистрация: 19.06.2022
Сообщений: 2,997
С нами: 2055431

Репутация: 3


По умолчанию

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

Ставлю хук, но он не срабатывает при выстреле, в чем проблема может быть?

C++:





Код:
using
addBullet
=
bool
(
__cdecl
*
)
(
CEntity
*
,
eWeaponType
,
CVector
,
CVector
)
;
constructor
(
)
{
std
::
uintptr_t base
=
reinterpret_cast

(
GetModuleHandleA
(
"samp.dll"
)
)
;
kthook
::
kthook_simple

(
bullet
)
;
bullet
.
set_cb
(
[
]
(
const
auto
&
hook
,
CEntity
*
eShooter
,
eWeaponType weaponType
,
CVector vecPosition
,
CVector vecVelocity
)
{
sampapi
::
v037r1
::
RefChat
(
)
->
AddMessage
(
-
1
,
(
std
::
to_string
(
(
int
)
weaponType
)
)
.
c_str
(
)
)
;
return
hook
.
get_trampoline
(
)
(
eShooter
,
weaponType
,
vecPosition
,
vecVelocity
)
;
}
)
;
bullet
.
set_dest
(
base
+
0xA0BB0
)
;
bullet
.
install
(
)
;
}

В чит энджине смотрел, там стоит на месте Хука джамп на аллоциированный адрес и по которому можно будет увидеть следы твоего плагина (в случае ктхука) ?
 
Ответить с цитированием

  #3  
Старый 16.08.2024, 13:28
0x73616D
Участник форума
Регистрация: 27.05.2021
Сообщений: 140
С нами: 2614229

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

Как получить статус дверей автомобиля, которым я управляю?

Как узнать состояние двигателя автомобиля, на котором я еду?

Если возможно, это может быть использование адресов памяти.
 
Ответить с цитированием

  #4  
Старый 16.08.2024, 13:44
вайега52
Флудер
Регистрация: 19.06.2022
Сообщений: 2,997
С нами: 2055431

Репутация: 3


По умолчанию

Цитата:
Сообщение от 0x73616D  

Как узнать состояние двигателя автомобиля, на котором я еду?
SAMP-API/include/sampapi/0.3.DL-1/CVehicle.h at multiver · BlastHackNet/SAMP-API

A library for interacting with functions, classes and structures of SA-MP client - BlastHackNet/SAMP-API

github.com


Цитата:
Сообщение от 0x73616D  

Как узнать статус дверей автомобиля, которым я управляю?
SAMP-API/include/sampapi/0.3.DL-1/CVehicle.h at multiver · BlastHackNet/SAMP-API

A library for interacting with functions, classes and structures of SA-MP client - BlastHackNet/SAMP-API

github.com
 
Ответить с цитированием

  #5  
Старый 16.08.2024, 17:23
Smeruxa
Познавший АНТИЧАТ
Регистрация: 27.11.2020
Сообщений: 1,431
С нами: 2874035

Репутация: 183


По умолчанию

Нужно отправить дамаг в человека, но ничего не происходит, в чем ошибка? (В первом аргумент отдавал как true, так и false)



C++:





Код:
RakNet
::
BitStream bsDamage
;
bsDamage
.
Write
(
true
)
;
bsDamage
.
Write
(
(
uint16_t
)
nearId
.
first
)
;
bsDamage
.
Write
(
resultDamage
)
;
bsDamage
.
Write
(
(
uint32_t
)
byteWeapon
)
;
bsDamage
.
Write
(
(
uint32_t
)
nearBone
)
;
rakhook
::
emul_rpc
(
115
,
bsDamage
)
;


Вариант ниже тоже не отправляет ничего







C++:





Код:
sampapi
::
v037r1
::
RefNetGame
(
)
->
GetPlayerPool
(
)
->
GetLocalPlayer
(
)
->
SendGiveDamage
(
nearId
.
first
,
resultDamage
,
byteWeapon
,
nearBone
)
;


Дебагом когда вывожу - все правильно определяет, проблема ТОЧНО именно в отправке урона
 
Ответить с цитированием

  #6  
Старый 17.08.2024, 02:25
manukhov
Участник форума
Регистрация: 14.04.2018
Сообщений: 122
С нами: 4254200

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

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

bsDamage.Write(true);
Первый параметр должен быть false, если речь идет про исходящий урон.

И не совсем понятно зачем тут эмулировать, почему бы просто не отправить?
 
Ответить с цитированием

  #7  
Старый 16.08.2024, 20:23
AdCKuY_DpO4uLa
Постоянный
Регистрация: 05.08.2018
Сообщений: 372
С нами: 4091290

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

emul_rpc эмулирует входящий рпц, а не отправляет его. Так же нужно отправлять пулю в человека (ID_BULLET_SYNC). Еще желательно слать аим синхну (ID_AIM_SYNC) и онфут синхру (ID_ONFOOT_SYNC), чтобы сервер не кикал за читы
 
Ответить с цитированием

  #8  
Старый 16.08.2024, 23:20
Smeruxa
Познавший АНТИЧАТ
Регистрация: 27.11.2020
Сообщений: 1,431
С нами: 2874035

Репутация: 183


По умолчанию

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

emul_rpc эмулирует входящий рпц, а не отправляет его. Так же нужно отправлять пулю в человека (ID_BULLET_SYNC). Еще желательно слать аим синхну (ID_AIM_SYNC) и онфут синхру (ID_ONFOOT_SYNC), чтобы сервер не кикал за читы
Пуля в человека уже сэмулирована, осталось только урон отправить
 
Ответить с цитированием

  #9  
Старый 23.08.2024, 02:02
Smeruxa
Познавший АНТИЧАТ
Регистрация: 27.11.2020
Сообщений: 1,431
С нами: 2874035

Репутация: 183


По умолчанию

Задача - повернуть матрицу, как это сделать? Я пробовал уже по разному, разные оси

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




И ее нужно повернуть например в противоположном направлении

Матрицу если отдаю измененную в функцию - просто не отображает необходимый мне объект

C++:





Код:
RwMatrix
*
matrix
=
RwMatrixCreate
(
)
;
RwV3d axis
=
{
0.f
,
0.f
,
1.f
}
;
RwMatrixRotate
(
matrix
,
&
axis
,
180.f
,
RwOpCombineType
::
rwCOMBINEPOSTCONCAT
)
;
 
Ответить с цитированием

  #10  
Старый 23.08.2024, 11:15
walkerdev
Новичок
Регистрация: 31.07.2022
Сообщений: 7
С нами: 1994625

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

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





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


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




ANTICHAT ™ © 2001- Antichat Kft.

×

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

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

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

×

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

Сумма USDT:

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

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