 |
|

18.10.2024, 23:52
|
|
Флудер
Регистрация: 19.06.2022
Сообщений: 2,997
С нами:
2055431
Репутация:
3
|
|
Сообщение от Nexter1
Почему игра может вылетать?
deletee:
Код:
void
deletee
(
const
char
*
params
)
{
auto
id
=
atoi
(
params
)
;
sampapi
::
v037r3
::
RefNetGame
(
)
->
GetPlayerPool
(
)
->
GetPlayer
(
id
)
->
Remove
(
)
;
}
я бы добавил обработчик исключений для atoi + добавил проверку на то, что игрок с таким id существует
|
|
|

19.10.2024, 00:10
|
|
Познающий
Регистрация: 21.08.2021
Сообщений: 34
С нами:
2489933
Репутация:
8
|
|
Сообщение от whyega52
я бы добавил обработчик исключений для atoi + добавил проверку на то, что игрок с таким id существует
Да именно крашит когда существующий ид игрока (в зоне стрима) ввожу. Если игрока нет в зоне стрима - ничего не происходит.
|
|
|

19.10.2024, 04:06
|
|
Участник форума
Регистрация: 23.10.2020
Сообщений: 135
С нами:
2925217
Репутация:
83
|
|
Крашит при вызове RefNetGame::GetRakClient, имеется rce фикс, самп р3
|
|
|

19.10.2024, 04:42
|
|
Познавший АНТИЧАТ
Регистрация: 12.01.2023
Сообщений: 1,016
С нами:
1757019
Репутация:
88
|
|
Сообщение от maksmanus228
Крашит при вызове RefNetGame::GetRakClient, имеется rce фикс, самп р3
Покажи код
|
|
|

19.10.2024, 06:11
|
|
Участник форума
Регистрация: 23.10.2020
Сообщений: 135
С нами:
2925217
Репутация:
83
|
|
Сообщение от Lance_Sterling
Покажи код
Код:
RakNet::BitStream stream {};
stream.Write("hui");
GetRefGame()->GetRakClient()->Send(&stream, HIGH_PRIORITY, RELIABLE_ORDERED, 0);
пишет что адрес памяти 0x2C недоступен
|
|
|

20.10.2024, 16:08
|
|
Познающий
Регистрация: 21.08.2021
Сообщений: 34
С нами:
2489933
Репутация:
8
|
|
Как можно в sampapi выключить коллизию у объекта? (определенного по id) в cobject не нашел ничего связанного с этим
|
|
|

20.10.2024, 16:25
|
|
Флудер
Регистрация: 19.06.2022
Сообщений: 2,997
С нами:
2055431
Репутация:
3
|
|
|
|
|

23.10.2024, 16:14
|
|
Познавший АНТИЧАТ
Регистрация: 27.11.2020
Сообщений: 1,431
С нами:
2874035
Репутация:
183
|
|
Почему крашит при использовании?
C++:
Код:
sampapi
::
v037r1
::
RefNetGame
(
)
->
GetPlayerPool
(
)
->
GetLocalPlayer
(
)
->
m_onfootData
.
m_controllerState
.
m_bRightShoulder1
Это в условие сую, как я понял, плагин вызывает краш на этапе с GetLocalPlayer
Криво косо что-то попытался сделать так sampapi::v037r1::CLocalPlayer* localPlayer = *(sampapi::v037r1::CLocalPlayer**)0xB6F5F0;
Но не срабатывало, хоть краш и пропал 😅
|
|
|

01.11.2024, 14:42
|
|
Участник форума
Регистрация: 23.10.2020
Сообщений: 135
С нами:
2925217
Репутация:
83
|
|
добрый день, у меня есть новая функция UpdateNetwork (пока что переписанная с idb сампа) и у меня крашит игра при попытке прописать packet->data
вот код
Код:
void __fastcall SSmpPackets::UpdateNetwork(CNetGame* game, void* edx)
{
Packet* packet = nullptr;
uint8_t* localdata = nullptr;
uint8_t state {};
for(packet = game->m_pRakClient->Receive(); packet; packet = game->m_pRakClient->Receive())
{
localdata = packet->data;
if(*localdata == 40) state = localdata[5];
switch(state)
{
case 12:
game->Packet_AuthKey(packet);
break;
case 29:
{
AddDebugMessage("The server didn't respond. Retrying..");
game->m_nGameState = 1;
break;
}
case 31:
{
AddDebugMessage("The server didn't respond. Retrying..");
break;
}
case 32:
game->Packet_DisconnectionNotification(packet);
break;
case 33:
game->Packet_ConnectionLost(packet);
break;
case 34:
game->Packet_ConnectionSucceeded(packet);
break;
case 35:
AddDebugMessage("Failed to initialize encryption.");
break;
case 36:
AddDebugMessage("You are banned from this server.");
break;
case 37:
{
AddDebugMessage("Wrong server password.");
game->m_pRakClient->Disconnect(0, 0);
break;
}
case 200:
game->Packet_VehicleSync(packet);
break;
case 203:
game->Packet_AimSync(packet);
break;
case 206:
game->Packet_BulletSync(packet);
break;
case 207:
game->Packet_PlayerSync(packet);
break;
case 208:
game->Packet_MarkersSync(packet);
break;
case 209:
game->Packet_UnoccupiedSync(packet);
break;
case 210:
game->Packet_TrailerSync(packet);
break;
case 211:
game->Packet_PassengerSync(packet);
break;
default: break;
}
game->m_pRakClient->DeallocatePacket(packet);
}
}
В чем может быть дело? структура Packet взяты из этого репозитория:
рак нет для сампа
и еще: работает ли правильно структура Packet2 от этого же репозитория
|
|
|

01.11.2024, 17:12
|
|
Флудер
Регистрация: 19.06.2022
Сообщений: 2,997
С нами:
2055431
Репутация:
3
|
|
Сообщение от maksmanus228
m_pRakClient->Receive
может возвращать nullptr, поэтому проверяй, что пакет и дата в нем указывают на данные
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|