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

  #2311  
Старый 24.04.2018, 20:17
Шурик
Новичок
Регистрация: 01.12.2009
Сообщений: 0
С нами: 8654409

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

Цитата:
Сообщение от ๖ۣۣۜШурик  

Может кто помочь с подключением ImGui последней версии? Пользовался данным проектом, но тут большинства функций нет.
Актуально, нужна помощь
 
Ответить с цитированием

  #2312  
Старый 24.04.2018, 20:32
CleanLegend
Постоянный
Регистрация: 28.03.2013
Сообщений: 495
С нами: 6908018

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

Цитата:
Сообщение от ๖ۣۣۜШурик  

Актуально, нужна помощь
Хукаешь present, reset,wnd_proc.

Если ты это хочешь сделать с помощью SF, то регаешь callback на present,reset.

Проводишь инициализацию в present с помощь imgui_init,в ресет добавляешь перезагрузку, в wndproc ImGui_ImplDX9_WndProcHandler.

В проекте достаточно, что бы все это сделать.
 
Ответить с цитированием

  #2313  
Старый 25.04.2018, 15:02
Шурик
Новичок
Регистрация: 01.12.2009
Сообщений: 0
С нами: 8654409

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

В чём проблема? Не грузит весь список (1-2 элемента только)

C++:





Код:
static
int
fraction_current
=
fraction
;
const
char
*
fractionList
[
]
=
{
to_utf8
(
"Не выбрано"
)
.
c_str
(
)
,
to_utf8
(
"Полиция г.Los-Santos"
)
.
c_str
(
)
,
to_utf8
(
"Полиция г.San-Fierro"
)
.
c_str
(
)
,
to_utf8
(
"Полиция г.Las-Venturas"
)
.
c_str
(
)
,
to_utf8
(
"Федеральное Бюро Расследований"
)
.
c_str
(
)
}
;
if
(
ImGui
::
Combo
(
"fraction"
,
&
fraction_current
,
fractionList
,
IM_ARRAYSIZE
(
fractionList
)
)
)
fraction
=
fraction_current
;
 
Ответить с цитированием

  #2314  
Старый 27.04.2018, 23:55
_Vine_
Участник форума
Регистрация: 06.01.2016
Сообщений: 154
С нами: 5447649

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

Цитата:
Сообщение от ๖ۣۣۜШурик  

В чём проблема? Не грузит весь список (1-2 элемента только)

C++:





Код:
static
int
fraction_current
=
fraction
;
const
char
*
fractionList
[
]
=
{
to_utf8
(
"Не выбрано"
)
.
c_str
(
)
,
to_utf8
(
"Полиция г.Los-Santos"
)
.
c_str
(
)
,
to_utf8
(
"Полиция г.San-Fierro"
)
.
c_str
(
)
,
to_utf8
(
"Полиция г.Las-Venturas"
)
.
c_str
(
)
,
to_utf8
(
"Федеральное Бюро Расследований"
)
.
c_str
(
)
}
;
if
(
ImGui
::
Combo
(
"fraction"
,
&
fraction_current
,
fractionList
,
IM_ARRAYSIZE
(
fractionList
)
)
)
fraction
=
fraction_current
;

ocornut/imgui(https://github.com/ocornut/imgui/blob/master/imgui_demo.cpp)

В imgui_demo.cpp с помощью поиска ищещь Imgui::Combo и смотришь как правильно его юзать.

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

Хукаешь present, reset,wnd_proc.
Если ты это хочешь сделать с помощью SF, то регаешь callback на present,reset.
Проводишь инициализацию в present с помощь imgui_init,в ресет добавляешь перезагрузку, в wndproc ImGui_ImplDX9_WndProcHandler.
В проекте достаточно, что бы все это сделать.
Делал такую штуку без СФ апи, проблема в том, что если в игру будет загружено два плагина с подрбным хуком пресент и ресет - краш.

Хук через виртуальную таблицу методов. С чем может быть связан краш, как исправить?

И еще, можно ли искать d3dDevice гташки с помощью сигнатуры?(не надо писать, что есть статик. Указатель)

Сигратура будет работаь в разных версиях гта, отличается ли сигнатура в одиночной игре и в сампе?
 
Ответить с цитированием

  #2315  
Старый 28.04.2018, 19:27
Шурик
Новичок
Регистрация: 01.12.2009
Сообщений: 0
С нами: 8654409

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

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

ocornut/imgui(https://github.com/ocornut/imgui/blob/master/imgui_demo.cpp)
В imgui_demo.cpp с помощью поиска ищещь Imgui::Combo и смотришь как правильно его юзать.
Изначально делал строго по примеру и не получалось, вот и обратился сюда.
 
Ответить с цитированием

  #2316  
Старый 28.04.2018, 19:59
_Vine_
Участник форума
Регистрация: 06.01.2016
Сообщений: 154
С нами: 5447649

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

Цитата:
Сообщение от ๖ۣۣۜШурик  

Изначально делал строго по примеру и не получалось, вот и обратился сюда.
C++:





Код:
static
int
fraction_current
=
0
;
const
char
*
list
=
{
u8
"Не выбрано\0"
u8
"Полиция г.Los-Santos\0"
u8
"Полиция г.San-Fierro\0"
u8
"Полиция г.Las-Venturas\0"
u8
"Федеральное Бюро Расследований\0"
}
;
ImGui
::
Combo
(
u8
"Фракция"
,
&
fraction_current
,
list
,
sizeof
(
list
)
)
;
 
Ответить с цитированием

  #2317  
Старый 28.04.2018, 21:18
CleanLegend
Постоянный
Регистрация: 28.03.2013
Сообщений: 495
С нами: 6908018

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

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

Делал такую штуку без СФ апи, проблема в том, что если в игру будет загружено два плагина с подрбным хуком пресент и ресет - краш.
Хук через виртуальную таблицу методов. С чем может быть связан краш, как исправить?
И еще, можно ли искать d3dDevice гташки с помощью сигнатуры?(не надо писать, что есть статик. Указатель)
Сигратура будет работаь в разных версиях гта, отличается ли сигнатура в одиночной игре и в сампе?
Попробуй другой метод хука. Насчет поиска device, можешь посмотреть как в собейте это реализуется или через findpattern
 
Ответить с цитированием

  #2318  
Старый 28.04.2018, 22:00
SAMP.ASI
Участник форума
Регистрация: 27.05.2016
Сообщений: 223
С нами: 5242744

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

Решил перевести из lua в с++

C:





Код:
#include 
#include 
#include 
using namespace std
;
DWORD pid
;
DWORD ped
=
0xb6f5f0
;
DWORD p_target
;
DWORD p_player
;
DWORD test
;
DWORD intS
;
int
main
(
)
{
HWND hWnd
=
FindWindowA
(
0
,
"GTA:SA:MP"
)
;
GetWindowThreadProcessId
(
hWnd
,
&
pid
)
;
HANDLE pHandle
=
OpenProcess
(
PROCESS_VM_READ
,
FALSE
,
pid
)
;
HANDLE pwHandle
=
OpenProcess
(
PROCESS_VM_WRITE
,
FALSE
,
pid
)
;
//ReadProcessMemory(pHandle, (LPVOID)0xb6f5f0, &p_player, 4, 0);
while
(
true
)
{
Sleep
(
500
)
;
ReadProcessMemory
(
pHandle
,
(
LPVOID
)
(
0xB6F3B8
)
,
&
p_player
,
4
,
0
)
;
p_player
=
p_player
+
0x79C
;
ReadProcessMemory
(
pHandle
,
(
LPVOID
)
p_player
,
&
intS
,
4
,
0
)
;
if
(
intS
>
0
)
{
DWORD lol
=
0xB73458
;
lol
=
lol
+
34
;
int
temp
=
255
;
WriteProcessMemory
(
pwHandle
,
(
LPVOID
)
lol
,
&
temp
,
4
,
0
)
;
Sleep
(
100
)
;
DWORD inet
;
ReadProcessMemory
(
pHandle
,
(
LPVOID
)
0xB6F3B8
,
&
inet
,
4
,
0
)
;
inet
=
inet
+
0x79C
;
DWORD temp2
=
0
;
WriteProcessMemory
(
pwHandle
,
(
LPVOID
)
inet
,
&
temp2
,
4
,
0
)
;
}
}
return
0
;
}


Из этого

Lua:





Код:
script_name
(
"Trigger Bot"
)
script_author
(
"iTz_WEEZY"
)
script_dependencies
(
"SAMP"
)
require
"lib.moonloader"
local
trigger
=
false
function
main
(
)
if
not
isSampLoaded
(
)
and
isSampAvailable
(
)
then
return
end
sampRegisterChatCommand
(
"trigger"
,
activ
)
while
true
do
wait
(
0
)
if
trigger
and
not
isCharOnAnyBike
(
playerPed
)
and
not
isCharDead
(
playerPed
)
then
local
int
=
readMemory
(
0xB6F3B8
,
4
,
0
)
int
=
int
+
0x79C
local
intS
=
readMemory
(
int
,
4
,
0
)
if
intS
>
0
then
local
lol
=
0xB73458
lol
=
lol
+
34
writeMemory
(
lol
,
4
,
255
,
0
)
wait
(
100
)
local
int
=
readMemory
(
0xB6F3B8
,
4
,
0
)
int
=
int
+
0x79C
writeMemory
(
int
,
4
,
0
,
0
)
end
end
end
end
function
activ
(
)
if
trigger
then
trigger
=
false
else
trigger
=
true
end
end


Что я делаю не так?
 
Ответить с цитированием

  #2319  
Старый 29.04.2018, 12:02
ed1k
Новичок
Регистрация: 06.03.2008
Сообщений: 19
С нами: 9569033

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

Есть ли в SAMPFUNCS, что-то по типу такого
 
Ответить с цитированием

  #2320  
Старый 29.04.2018, 15:41
iAmerican
Постоянный
Регистрация: 17.02.2014
Сообщений: 611
С нами: 6438231

Репутация: 133


По умолчанию

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

Есть ли в SAMPFUNCS, что-то по типу такого
C++:





Код:
void
GameText
(
const
char
*
szText
,
int
iTime
,
signed
int
iStyle
)
{
typedef
void
(
__stdcall
*
GameText_t
)
(
const
char
*
,
int
,
signed
int
)
;
GameText_t pGameText
=
(
GameText_t
)
(
g_dwSAMP
+
0x9C2C0
)
;
return
pGameText
(
szText
,
iTime
,
iStyle
)
;
}
using
:
GameText
(
"~r~my text!"
,
1000
,
5
)
;


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

Решил перевести из lua в с++

C:





Код:
#include 
#include 
#include 
using namespace std
;
DWORD pid
;
DWORD ped
=
0xb6f5f0
;
DWORD p_target
;
DWORD p_player
;
DWORD test
;
DWORD intS
;
int
main
(
)
{
HWND hWnd
=
FindWindowA
(
0
,
"GTA:SA:MP"
)
;
GetWindowThreadProcessId
(
hWnd
,
&
pid
)
;
HANDLE pHandle
=
OpenProcess
(
PROCESS_VM_READ
,
FALSE
,
pid
)
;
HANDLE pwHandle
=
OpenProcess
(
PROCESS_VM_WRITE
,
FALSE
,
pid
)
;
//ReadProcessMemory(pHandle, (LPVOID)0xb6f5f0, &p_player, 4, 0);
while
(
true
)
{
Sleep
(
500
)
;
ReadProcessMemory
(
pHandle
,
(
LPVOID
)
(
0xB6F3B8
)
,
&
p_player
,
4
,
0
)
;
p_player
=
p_player
+
0x79C
;
ReadProcessMemory
(
pHandle
,
(
LPVOID
)
p_player
,
&
intS
,
4
,
0
)
;
if
(
intS
>
0
)
{
DWORD lol
=
0xB73458
;
lol
=
lol
+
34
;
int
temp
=
255
;
WriteProcessMemory
(
pwHandle
,
(
LPVOID
)
lol
,
&
temp
,
4
,
0
)
;
Sleep
(
100
)
;
DWORD inet
;
ReadProcessMemory
(
pHandle
,
(
LPVOID
)
0xB6F3B8
,
&
inet
,
4
,
0
)
;
inet
=
inet
+
0x79C
;
DWORD temp2
=
0
;
WriteProcessMemory
(
pwHandle
,
(
LPVOID
)
inet
,
&
temp2
,
4
,
0
)
;
}
}
return
0
;
}


Из этого

Lua:





Код:
script_name
(
"Trigger Bot"
)
script_author
(
"iTz_WEEZY"
)
script_dependencies
(
"SAMP"
)
require
"lib.moonloader"
local
trigger
=
false
function
main
(
)
if
not
isSampLoaded
(
)
and
isSampAvailable
(
)
then
return
end
sampRegisterChatCommand
(
"trigger"
,
activ
)
while
true
do
wait
(
0
)
if
trigger
and
not
isCharOnAnyBike
(
playerPed
)
and
not
isCharDead
(
playerPed
)
then
local
int
=
readMemory
(
0xB6F3B8
,
4
,
0
)
int
=
int
+
0x79C
local
intS
=
readMemory
(
int
,
4
,
0
)
if
intS
>
0
then
local
lol
=
0xB73458
lol
=
lol
+
34
writeMemory
(
lol
,
4
,
255
,
0
)
wait
(
100
)
local
int
=
readMemory
(
0xB6F3B8
,
4
,
0
)
int
=
int
+
0x79C
writeMemory
(
int
,
4
,
0
,
0
)
end
end
end
end
function
activ
(
)
if
trigger
then
trigger
=
false
else
trigger
=
true
end
end


Что я делаю не так?
А что происходит , можно подробнее? у тебя цикл раз в пол секунды идет. Может из за этого и не видишь результата.
 
Ответить с цитированием
Ответ





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


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




ANTICHAT ™ © 2001- Antichat Kft.