Другое С/С++ Вопрос - Ответ

_Vine_

Активный
154
57
Как самп отправляет данные на сервер?
Думал сокеты, проверял какие данные проходят через функции send, sendto - не увидел данных которые могли бы отправляться.
Отправлялись данные в основном размером 4, 6, иногда 10 байт, при этом RakLogger показывал что отправляются пакеты/RPC намного большего размера.
В исходниках сампа 0.2.5 найти этого не смог.
 
Последнее редактирование:

Roger571

Известный
58
31
Как самп отправляет данные на сервер?
Думал сокеты, проверял какие данные проходят через функции send, sendto - не увидел данных которые могли бы отправляться.
Отправлялись данные в основном размером 4, 6, иногда 10 байт, при этом RakLogger показывал что отправляются пакеты/RPC намного большего размера.
В исходниках сампа 0.2.5 найти этого не смог.
C++:
void ReliabilityLayer::Update( SOCKET s, PlayerID playerId, int MTUSize, RakNetTimeNS time, DataStructures::List<PluginInterface*> &messageHandlerList )
void ReliabilityLayer::SendBitStream( SOCKET s, PlayerID playerId, RakNet::BitStream *bitStream )
int SocketLayer::SendTo( SOCKET s, const char *data, int length, unsigned int binaryAddress, unsigned short port )
int sendto(  SOCKET s,  const char *buf, int len, int flags,  const sockaddr *to,  int tolen);

Функции указаны в порядке их вызова
 
  • Нравится
Реакции: _Vine_

lorgon

Известный
656
271
Почему-то работает везде кроме игры, в чём проблема?
C++:
#include "stdafx.h"
#include "Windows.h"
#include <iostream>

int main()
{
    while (true) {
        if (GetAsyncKeyState(VK_INSERT))
        {   
            keybd_event(VK_SPACE, 0, 0, 0);
            Sleep(50);
        }
    }
    return 0;
}
 

Неадекватная сова

Известный
Проверенный
208
147
Почему-то работает везде кроме игры, в чём проблема?
C++:
#include "stdafx.h"
#include "Windows.h"
#include <iostream>

int main()
{
    while (true) {
        if (GetAsyncKeyState(VK_INSERT))
        {  
            keybd_event(VK_SPACE, 0, 0, 0);
            Sleep(50);
        }
    }
    return 0;
}
Пример нажатия клавиши H на 300 милисекунд:
Код:
int keyState = 0;

DWORD WINAPI tsendmsg(LPVOID Param) {

    HWND wndHndl = FindWindowA(NULL, "GTA:SA:MP");

    while (keyState == 1) {
        SendMessage(wndHndl, WM_KEYDOWN, 0x48, 0);
        Sleep(300);
        keyState = 0;
        SendMessage(wndHndl, WM_KEYUP, 0x48, 0);
    }

    return 0;
}


void CALLBACK cmd_paya(std::string param) {
    keyState = 1;
    CreateThread(NULL, 0, tsendmsg, 0, 0, NULL);
}
 

Harryss

Участник
233
26
ImGui, столкнулся с внезапной проблемой кодировки. Введенный текст в Input начал отображаться некорректно, если вставлять через Crtl + V - все отлично, а ввод ручную выдает такие черкаши. Как поправить?
 

Вложения

  • Безымянный.png
    Безымянный.png
    5.3 KB · Просмотры: 256

#Rin

Известный
Всефорумный модератор
1,214
1,043
ImGui, столкнулся с внезапной проблемой кодировки. Введенный текст в Input начал отображаться некорректно, если вставлять через Crtl + V - все отлично, а ввод ручную выдает такие черкаши. Как поправить?
Открой imgui_impl_win32.cpp и замени case WM_CHAR на этот:
C++:
case WM_CHAR:
    wchar_t wch;
    MultiByteToWideChar(CP_ACP, MB_PRECOMPOSED, (char*)&wParam, 1, &wch, 1);
    io.AddInputCharacter(wch);
    return 0;
 

Stiopko

Известный
Проверенный
307
218
Как перевести char* в utf8 для ImGui, u8 перед указателем не подходит.
 

Karbun

Участник
112
3
Поделитесь функцией отправки текстовой информации в базу данных на сайте...
 

koncumone

Известный
337
87
Ребят, есть може какие нибудь уроки с 0. Хочу писать СФ для сампа
 

Karbun

Участник
112
3
Парни, как искать адрес памяти в игре? Допустим, адрес памяти открытия меню, движения персонажа, чувствительность мыши... Пробовал через СЕ, но это довольно долго... Есть ли способ быстрого поиска адреса памяти?
 

#Rin

Известный
Всефорумный модератор
1,214
1,043
Парни, как искать адрес памяти в игре? Допустим, адрес памяти открытия меню, движения персонажа, чувствительность мыши... Пробовал через СЕ, но это довольно долго... Есть ли способ быстрого поиска адреса памяти?
IDA Pro