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

  #1  
Старый 07.01.2023, 19:09
Хз кто я
Новичок
Регистрация: 02.01.2023
Сообщений: 5
С нами: 1771779

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

Вопрос:

Load Runtime

Failed to load "cef/vccorlib140.dll" 7e

Can't load Runtime

Это строка из гэймлога в лаунчере аризоны. Это хрень связана с Microsoft Visual C++ как мне говорят технари аризоны. Я уже их 100 раз скачивал и ничего. Кто то смог решить? Из-за нее проблемы с cef.
 
Ответить с цитированием

  #2  
Старый 12.01.2023, 18:54
Young123
Новичок
Регистрация: 08.10.2022
Сообщений: 10
С нами: 1895177

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

Я решил сделать чит для samp или crmp mobile и столкнулся с такой проблемой, я могу сделать имгуи для чита и вшить его, но не понимаю как писать сам функционал, к примеру я видел что в сурсах sampmodmobile или каких то других есть код с функционалом телепорт, rpc и тд, но это все сделано на libsamp.so, а я делаю на отдельной либке, и вопрос такой как сделать функционал по типу того же rpc и тд на отдельной либке и использовать его на проектах (крупных, по типу бр, орп и тд), может как то можно ее подключать к либ(типо либку самп к моей имею ввиду) или же есть какой то samp api для мобилки?
 
Ответить с цитированием

  #3  
Старый 18.01.2023, 07:06
Yuriy Code
Постоянный
Регистрация: 01.05.2021
Сообщений: 752
С нами: 2650753

Репутация: 98


По умолчанию

Решил немного залезть в реверс.

Открыл иду и в неё кинул samp.dll.

Решил пропатчить строку от сампа, нашёл её адрес в IDA (наверное), пытаюсь пропатчить, но, она не патчится. То есть, текст там изменить хочу, но, он не изменяется.

1674010999189.pngYuriy Code · 18 Янв 2023 в 06:06' data-fancybox="lb-post-1239293" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/186387/" style="cursor: pointer;" title="1674010999189.png">


C++:





Код:
SF
->
getSAMP
(
)
->
registerChatCommand
(
"patch"
,
[
]
(
std
::
string params
)
{
strcpy
(
(
char
*
)
0x100D3A78
,
"SWWWWW CCCCCC the connection."
)
;
AddChat
(
-
1
,
"Наверное, пропатчилось..."
)
;
}
)
;


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

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

Репутация: 183


По умолчанию

Цитата:
Сообщение от Yuriy Code  

Решил немного залезть в реверс.
Открыл иду и в неё кинул samp.dll.

Решил пропатчить строку от сампа, нашёл её адрес в IDA (наверное), пытаюсь пропатчить, но, она не патчится. То есть, текст там изменить хочу, но, он не изменяется.

C++:





Код:
SF
->
getSAMP
(
)
->
registerChatCommand
(
"patch"
,
[
]
(
std
::
string params
)
{
strcpy
(
(
char
*
)
0x100D3A78
,
"SWWWWW CCCCCC the connection."
)
;
AddChat
(
-
1
,
"Наверное, пропатчилось..."
)
;
}
)
;

Адрес должен быть не 0x100D3A78, а 0xD3DA78, и ты не добавил GetModuleHandleA("samp.dll") к адресу. Так что игра думает что ты обращаешься к памяти ГТА, а не сампа.

Вот патч как по мне правильный( мб ***ню сморозил )

C++:





Код:
// Функция для записи строки в память ( Автор вроде Скаут )
inline
void
writeString
(
char
*
memory
,
const
char
*
str
)
{
DWORD NewProtection
;
VirtualProtect
(
memory
,
sizeof
(
str
)
,
PAGE_EXECUTE_READWRITE
,
&
NewProtection
)
;
std
::
strcpy
(
memory
,
str
)
;
VirtualProtect
(
memory
,
sizeof
(
str
)
,
NewProtection
,
&
NewProtection
)
;
}
// Сам патч
writeString
(
(
char
*
)
GetModuleHandleA
(
"samp"
)
+
0xD3A78
,
"Сервер сдох на***"
)


Кстати при записи строк в память ( и вообще записи чего либо в память ) смотри не залезь на байты которые ты менять не должен ( к примеру в строке 5 символов, а ты записал 20, тем самым ты запишешь лишних 14 байтов в память которая вообще может не быть строкой )
 
Ответить с цитированием

  #5  
Старый 19.01.2023, 14:22
writeline
Новичок
Регистрация: 16.01.2022
Сообщений: 28
С нами: 2276608

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

Цитата:
Сообщение от Yuriy Code  

Решил немного залезть в реверс.
Открыл иду и в неё кинул samp.dll.

Решил пропатчить строку от сампа, нашёл её адрес в IDA (наверное), пытаюсь пропатчить, но, она не патчится. То есть, текст там изменить хочу, но, он не изменяется.

C++:





Код:
SF
->
getSAMP
(
)
->
registerChatCommand
(
"patch"
,
[
]
(
std
::
string params
)
{
strcpy
(
(
char
*
)
0x100D3A78
,
"SWWWWW CCCCCC the connection."
)
;
AddChat
(
-
1
,
"Наверное, пропатчилось..."
)
;
}
)
;

C++ R3:





Код:
std
::
string str_kicked
{
"Сервер закрыл соединение."
}
;
//0x8A77
class
patchstr_kicked
{
private
:
uintptr_t module_samp
{
0
}
;
public
:
patchstr_kicked
(
)
{
module_samp
=
reinterpret_cast

(
GetModuleHandleA
(
"samp.dll"
)
)
;
DWORD lpflOldProtect
;
VirtualProtect
(
reinterpret_cast

(
module_samp
+
0x8A77
)
,
0x4
,
PAGE_EXECUTE_READWRITE
,
&
lpflOldProtect
)
;
*
reinterpret_cast

(
module_samp
+
0x8A77
)
=
&
str_kicked
[
0
]
;
VirtualProtect
(
reinterpret_cast

(
module_samp
+
0x8A77
)
,
0x4
,
lpflOldProtect
,
&
lpflOldProtect
)
;
}
}
pstr_kicked
;


Цвет можешь указывать вот так:

С++:





Код:
std::string str_kicked{ " {ff0000} Сервер закрыл соединение." };


Либо

С++:





Код:
std::string str_kicked{ " {red} Сервер закрыл соединение." };
 
Ответить с цитированием

  #6  
Старый 18.01.2023, 08:11
Yuriy Code
Постоянный
Регистрация: 01.05.2021
Сообщений: 752
С нами: 2650753

Репутация: 98


По умолчанию

Как найти функцию через IDA? К примеру, добавления сообщения в чат.

Пытаюсь, но, увы, не получается.

Прошу объяснить пошагово.

Открыл в IDA samp.dll, пытался по строкам найти функцию.





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

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

Репутация: 183


По умолчанию

Цитата:
Сообщение от Yuriy Code  

Как найти функцию через IDA? К примеру, добавления сообщения в чат.
Пытаюсь, но, увы, не получается.
Прошу объяснить пошагово.

Открыл в IDA samp.dll, пытался по строкам найти функцию.
 
Ответить с цитированием

  #8  
Старый 18.01.2023, 08:59
Yuriy Code
Постоянный
Регистрация: 01.05.2021
Сообщений: 752
С нами: 2650753

Репутация: 98


По умолчанию

Цитата:
Сообщение от Digger Man  
Мне надо не переменную найти, а функцию! 😕
 
Ответить с цитированием

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

Репутация: 183


По умолчанию

Цитата:
Сообщение от Yuriy Code  

Мне надо не переменную найти, а функцию! 😕
В самп апи все есть
 
Ответить с цитированием

  #10  
Старый 18.01.2023, 17:42
ARMOR
Флудер
Регистрация: 02.02.2019
Сообщений: 5,070
С нами: 3831395

Репутация: 183


По умолчанию

Цитата:
Сообщение от Yuriy Code  

Как найти функцию через IDA? К примеру, добавления сообщения в чат.
Пытаюсь, но, увы, не получается.
Прошу объяснить пошагово.

Открыл в IDA samp.dll, пытался по строкам найти функцию.
Вот тут можешь увидеть вот эту строчку:



Это вызов функции 64520. В неё передается два параметра: Указатель на структуру чата, и сообщение ( Эта функция в САМП'е отвечает за отправление в чат сообщений по типу "Connecting to 185.189.15.89:7228...", "The server is full. Retrying"). Цвет ты тут указать не можешь, ибо функция берет цвет из структуры CChat.

Цвет у тебя будет такой:



Ну, или если у тебя замененный samp.dll то цвет может отличаться.

Если ты хочешь указывать цвет сам - тебе нужна функция CChat_AddMessage. В R1 её смещение 645A0. Принимает агрументы в таком порядке:

C++:





Код:
(
CChat
*
this_
,
int
color
,
const
char
*
text
)
 
Ответить с цитированием
Ответ





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


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




ANTICHAT ™ © 2001- Antichat Kft.