Исходник SAMP 0.3.7-R4 offsets

_raz0r

t.me/sssecretway | ТГК: t.me/razor_code
Автор темы
Модератор
1,890
3,042
SAMP_INFO_PTR = samp.dll + 0x26EA0C
SAMP_CHAT_INFO_PTR = samp.dll + 0x26E9F8
SAMP_INPUT_INFO_PTR = samp.dll + 0x26E9FC
SAMP_KILL_INFO_PTR = samp.dll + 0x26EA00
SAMP_MISC_INFO_PTR = samp.dll + 0x26EA24
SAMP_DIALOG_INFO_PTR = samp.dll + 0x26E9C8
SAMP_SCOREBOARD_INFO_PTR = samp.dll + 0x26E9C4

SAMP_FUNC_ADD_CLIENT_COMMAND = samp.dll + 0x69730
SAMP_FUNC_SENDCMD = samp.dll + 0x698C0
SAMP_FUNC_SENDSAY = samp.dll + 0x5A00
SAMP_FUNC_MSGTOCHAT = samp.dll + 0x680B0
FUNC_UPDATESCOREBOARD = samp.dll + 0x8F00 //by batonkal
FUNC_SAMP_PLAYAUDIOSTR = samp.dll + 0x66920 //by batonkal
FUNC_SAMP_STOPAUDIOSTR = samp.dll + 0x66520 //by batonkal
FUNC_SAMP_SETCHECKPOINT = samp.dll + 0xA1DF0
FUNC_SAMP_SHOWGAMETEXT = samp.dll + 0xA0D10
FUNC_SAMP_SPECIALACTION = samp.dll + 0x30F0 // by S E V E N
FUNC_SAMP_SETSPAWNINFO = samp.dll + 0x3BE0 // by S E V E N
FUNC_SAMP_SETCOLOR = samp.dll + 0x3EC0 // by S E V E N

SAMP_HOOK_RPC_HANDLER1 = samp.dll + 0x3AEDD
SAMP_HOOK_RPC_HANDLER2 = samp.dll + 0x3AE69

ToggleHeadMoves = samp.dll + 0x68920
TestDeathWindow = samp.dll + 0x684C0
SetPageSize = samp.dll + 0x685B0
SetFontSize = samp.dll + 0x68630
DrawTimeStamp = samp.dll + 0x686F0
EnableHudScaleFix = samp.dll + 0x68830
SendExitFromGame = samp.dll + 0x689A0
SaveCurrentCoordinates = samp.dll + 0x689C0
SaveCurrentCooordinates(RAW) = samp.dll + 0x68B40
SendRconCommand = samp.dll + 0x68FF0
ShowMem = samp.dll + 0x68870
EnableFpsLimit = samp.dll + 0x68890
TestDW (/testdw)? = samp.dll + 0x684C0
(DEBUG) SpawnCar = samp.dll + 0x68E70
(DEBUG) SpawnCar = samp.dll + 0x68D30
(DEBUG) SetPlayerSkin = samp.dll + 0x68CC0
(DEBUG) SetWeather = samp.dll + 0x68E90
(DEBUG) SetTime = samp.dll + 0x68EE0
CurrentInterior = samp.dll + 0x68F90
ToggleObjectLights = samp.dll + 0x68FC0
EnableDL = samp.dll + 0x68FE0
EnableLogUrls = samp.dll + 0x687C0
/dl render distance = samp.dll + 0xE5804


SAMP_CMP_R4 = 0000889E33020000FF15

Thanks: @alexandersaxon, @poletaev., @_=Gigant=_
 
Последнее редактирование:

_=Gigant=_

Известный
134
191
by batonkal
FUNC_UPDATESCOREBOARD = samp.dll + 0x8F00
FUNC_SAMP_PLAYAUDIOSTR = samp.dll + 0x66920
FUNC_SAMP_STOPAUDIOSTR = samp.dll + 0x66520

FUNC_SAMP_SETCHECKPOINT = samp.dll + 0xA1DF0
FUNC_SAMP_SHOWGAMETEXT = samp.dll + 0xA0D10


btw do you have SAMP_CMP for R4 ?

Edit 0: found some structs for 0.3.7 R4 https://github.com/yugecin/scmcleoscripts/blob/master/cleoplugins/plpanel/samp.h
Edit 1:
found some 0.37 R2 addresses
 
Последнее редактирование:
  • Нравится
Реакции: _raz0r

_raz0r

t.me/sssecretway | ТГК: t.me/razor_code
Автор темы
Модератор
1,890
3,042
Последнее редактирование:
  • Нравится
Реакции: _=Gigant=_

_raz0r

t.me/sssecretway | ТГК: t.me/razor_code
Автор темы
Модератор
1,890
3,042
FUNC_SPECIALACTION = samp.dll + 0x30F0
(CLocalPlayer pointer, special action number)
1597420991493.png

ToggleHeadMoves = samp.dll + 0x68920
TestDeathWindow = samp.dll + 0x684C0
SetPageSize = samp.dll + 0x685B0
SetFontSize = samp.dll + 0x68630
DrawTimeStamp = samp.dll + 0x686F0
EnableHudScaleFix = samp.dll + 0x68830
SendExitFromGame = samp.dll + 0x689A0
SaveCurrentCoordinates = samp.dll + 0x689C0
SaveCurrentCooordinates(RAW) = samp.dll + 0x68B40
SendRconCommand = samp.dll + 0x68FF0
ShowMem = samp.dll + 0x68870
EnableFpsLimit = samp.dll + 0x68890
TestDW (/testdw)? = samp.dll + 0x684C0
(DEBUG) SpawnCar = samp.dll + 0x68E70
(DEBUG) SpawnCar = samp.dll + 0x68D30
(DEBUG) SetPlayerSkin = samp.dll + 0x68CC0
(DEBUG) SetWeather = samp.dll + 0x68E90
(DEBUG) SetTime = samp.dll + 0x68EE0
CurrentInterior = samp.dll + 0x68F90
ToggleObjectLights = samp.dll + 0x68FC0
EnableDL = samp.dll + 0x68FE0
EnableLogUrls = samp.dll + 0x687C0

SA:MP 0.3.7 R4 Commands
UPD: samp + 0x1A50 (RakClientInterface not tested)
 
Последнее редактирование:

_raz0r

t.me/sssecretway | ТГК: t.me/razor_code
Автор темы
Модератор
1,890
3,042
by S E V E N
C++:
CChat::CChat(IDirect3DDevice9* pDevice, CFonts* pFontRenderer, const char* szLogPath) {
    ((void(__thiscall*)(CChat*, IDirect3DDevice9*, CFonts*, const char*))GetAddress(0x68340))(this, pDevice, pFontRenderer, szLogPath);
}

int CChat::GetMode() {
    return ((int(__thiscall*)(CChat*))GetAddress(0x61270))(this);
}

void CChat::SwitchMode() {
    ((void(__thiscall*)(CChat*))GetAddress(0x61280))(this);
}

void CChat::OnResetDevice() {
    ((void(__thiscall*)(CChat*))GetAddress(0x68190))(this);
}

void CChat::AddMessage(D3DCOLOR color, const char* szText) {
    ((void(__thiscall*)(CChat*, D3DCOLOR, const char*))GetAddress(0x68130))(this, color, szText);
}

void CChat::AddChatMessage(const char* szPrefix, D3DCOLOR prefixColor, const char* szText) {
    ((void(__thiscall*)(CChat*, const char*, D3DCOLOR, const char*))GetAddress(0x67FE0))(this, szPrefix, prefixColor, szText);
}
 

_raz0r

t.me/sssecretway | ТГК: t.me/razor_code
Автор темы
Модератор
1,890
3,042
by S E V E N
C++:
void CChat::RecalcFontSize() {
    ((void(__thiscall*)(CChat*))GetAddress(0x670E0))(this);
}

void CChat::OnLostDevice() {
    ((void(__thiscall*)(CChat*))GetAddress(0x67160))(this);
}

void CChat::UpdateScrollbar() {
    ((void(__thiscall*)(CChat*))GetAddress(0x671C0))(this);
}

void CChat::SetPageSize(int nValue) {
    ((void(__thiscall*)(CChat*, int))GetAddress(0x67260))(this, nValue);
}

void CChat::PageUp() {
    ((void(__thiscall*)(CChat*))GetAddress(0x67290))(this);
}

void CChat::PageDown() {
    ((void(__thiscall*)(CChat*))GetAddress(0x672F0))(this);
}

void CChat::ScrollToBottom() {
    ((void(__thiscall*)(CChat*))GetAddress(0x67350))(this);
}

void CChat::Scroll(int nDelta) {
    ((void(__thiscall*)(CChat*, int))GetAddress(0x67380))(this, nDelta);
}

void CChat::PushBack() {
    ((void(__thiscall*)(CChat*))GetAddress(0x67410))(this);
}

void CChat::RenderEntry(const char* szText, CRect rect, D3DCOLOR color) {
    ((void(__thiscall*)(CChat*, const char*, CRect, D3DCOLOR))GetAddress(0x67430))(this, szText, rect, color);
}

void CChat::Log(int nType, const char* szText, const char* szPrefix) {
    ((void(__thiscall*)(CChat*, int, const char*, const char*))GetAddress(0x67790))(this, nType, szText, szPrefix);
}

void CChat::ResetDialogControls(CDXUTDialog* pGameUi) {
    ((void(__thiscall*)(CChat*, CDXUTDialog*))GetAddress(0x67860))(this, pGameUi);
}

void CChat::Render() {
    ((void(__thiscall*)(CChat*))GetAddress(0x67900))(this);
}

void CChat::AddEntry(int nType, const char* szText, const char* szPrefix, D3DCOLOR textColor, D3DCOLOR prefixColor) {
    ((void(__thiscall*)(CChat*, int, const char*, const char*, D3DCOLOR, D3DCOLOR))GetAddress(0x67BA0))(this, nType, szText, szPrefix, textColor, prefixColor);
}

void CChat::Draw() {
    ((void(__thiscall*)(CChat*))GetAddress(0x67DC0))(this);
}

void CChat::RenderToSurface() {
    ((void(__thiscall*)(CChat*))GetAddress(0x67E90))(this);
}
 
  • Нравится
Реакции: Z3roKwq

_raz0r

t.me/sssecretway | ТГК: t.me/razor_code
Автор темы
Модератор
1,890
3,042
by S E V E N
CInput:

C++:
CInput::CInput(IDirect3DDevice9* pDevice) {
    ((void(__thiscall*)(CInput*, IDirect3DDevice9*))GetAddress(0x69390))(this, pDevice);
}

void CInput::GetRect(CRect* pRect) {
    ((void(__thiscall*)(CInput*, CRect*))GetAddress(0x69400))(this, pRect);
}

void CInput::Open() {
    ((void(__thiscall*)(CInput*))GetAddress(0x69440))(this);
}

void CInput::Close() {
    ((void(__thiscall*)(CInput*))GetAddress(0x69540))(this);
}

void CInput::AddRecall(const char* szString) {
    ((void(__thiscall*)(CInput*, const char*))GetAddress(0x69590))(this, szString);
}

void CInput::RecallUp() {
    ((void(__thiscall*)(CInput*))GetAddress(0x695F0))(this);
}

void CInput::RecallDown() {
    ((void(__thiscall*)(CInput*))GetAddress(0x69660))(this);
}

void CInput::EnableCursor() {
    ((void(__thiscall*)(CInput*))GetAddress(0x696B0))(this);
}

CMDPROC CInput::GetCommandHandler(const char* szName) {
    return ((CMDPROC(__thiscall*)(CInput*, const char*))GetAddress(0x696D0))(this, szName);
}

void CInput::SetDefaultCommand(CMDPROC proc) {
    ((void(__thiscall*)(CInput*, CMDPROC))GetAddress(0x69720))(this, proc);
}

void CInput::AddCommand(const char* szName, CMDPROC handler) {
    ((void(__thiscall*)(CInput*, const char*, CMDPROC))GetAddress(0x69730))(this, szName, handler);
}

BOOL CInput::MsgProc(int uMsg, int wParam, int lParam) {
    return ((BOOL(__thiscall*)(CInput*, int, int, int))GetAddress(0x69790))(this, uMsg, wParam, lParam);
}

void CInput::ResetDialogControls(CDXUTDialog* pGameUi) {
    ((void(__thiscall*)(CInput*, CDXUTDialog*))GetAddress(0x69800))(this, pGameUi);
}

void CInput::Send(const char* szString) {
    ((void(__thiscall*)(CInput*, const char*))GetAddress(0x698C0))(this, szString);
}

void CInput::ProcessInput() {
    ((void(__thiscall*)(CInput*))GetAddress(0x69990))(this);
}

CDeathWindow:

C++:
CDeathWindow::CDeathWindow(IDirect3DDevice9* pDevice) {
    ((void(__thiscall*)(CDeathWindow*, IDirect3DDevice9*))GetAddress(0x6A610))(this, pDevice);
}

CDeathWindow::~CDeathWindow() {
    ((void(__thiscall*)(CDeathWindow*))GetAddress(0x69AFD))(this);
}

void CDeathWindow::InitializeAuxFonts() {
    ((void(__thiscall*)(CDeathWindow*))GetAddress(0x69B70))(this);
}

void CDeathWindow::PushBack() {
    ((void(__thiscall*)(CDeathWindow*))GetAddress(0x69BE0))(this);
}

void CDeathWindow::DrawText(const char* szText, CRect rect, D3DCOLOR color, int nFormat) {
    ((void(__thiscall*)(CDeathWindow*, const char*, CRect, D3DCOLOR, int))GetAddress(0x69C00))(this, szText, rect, color, nFormat);
}

void CDeathWindow::DrawWeaponSprite(const char* szSpriteId, CRect rect, D3DCOLOR color) {
    ((void(__thiscall*)(CDeathWindow*, const char*, CRect, D3DCOLOR))GetAddress(0x69D00))(this, szSpriteId, rect, color);
}

void CDeathWindow::GetWeaponSpriteRectSize(void* pPoint) {
    ((void(__thiscall*)(CDeathWindow*, void*))GetAddress(0x69D90))(this, pPoint);
}

const char* CDeathWindow::GetWeaponSpriteId(char nWeapon) {
    return ((const char*(__thiscall*)(CDeathWindow*, char))GetAddress(0x69E10))(this, nWeapon);
}

void CDeathWindow::ResetFonts() {
    ((void(__thiscall*)(CDeathWindow*))GetAddress(0x6A110))(this);
}

void CDeathWindow::Draw() {
    ((void(__thiscall*)(CDeathWindow*))GetAddress(0x6A2A0))(this);
}

void CDeathWindow::AddEntry(const char* szKiller, const char* szVictim, D3DCOLOR killerColor, D3DCOLOR victimColor, char nWeapon) {
    ((void(__thiscall*)(CDeathWindow*, const char*, const char*, D3DCOLOR, D3DCOLOR, char))GetAddress(0x6A590))(this, szKiller, szVictim, killerColor, victimColor, nWeapon);
}

void CDeathWindow::AddMessage(const char* szKiller, const char* szVictim, D3DCOLOR killerColor, D3DCOLOR victimColor, char nWeapon) {
    ((void(__thiscall*)(CDeathWindow*, const char*, const char*, D3DCOLOR, D3DCOLOR, char))GetAddress(0x6A670))(this, szKiller, szVictim, killerColor, victimColor, nWeapon);
}
 
  • Нравится
Реакции: Z3roKwq и loganhackerdff

_raz0r

t.me/sssecretway | ТГК: t.me/razor_code
Автор темы
Модератор
1,890
3,042
CNetGame struct:

C++:
struct stSAMP
{
    char                    pad_0[44];
    void *                   pRakClientInterface;
    char                    m_szHostAddress[257];
    char                    m_szHostname[257];
    bool                    m_bDisableCollision;
    bool                    m_bUpdateCameraTarget;
    bool                    m_bNametagStatus;
    int                     m_nPort;
    BOOL                    m_bLanMode;
    uint32_t                m_aMapIcons[100];
    int                     m_nGameState;
    uint32_t                m_lastConnectAttempt;
    Settings *                   m_pSettings;
    char                    pad_2[5];
    void *                      m_pPools; // i`m not found :(
};
Server settings struct:

C++:
struct stServerPresets
{
    bool          m_bUseCJWalk;
        unsigned int  m_nDeadDropsMoney;
        float         m_fWorldBoundaries[4];
        bool          m_bAllowWeapons;
        float         m_fGravity;
        bool          m_bEnterExit;
        BOOL          m_bVehicleFriendlyFire;
        bool          m_bHoldTime;
        bool          m_bInstagib;
        bool          m_bZoneNames;
        bool          m_bFriendlyFire;
        BOOL          m_bClassesAvailable;
        float         m_fNameTagsDrawDist;
        bool          m_bManualVehicleEngineAndLight;
        unsigned char m_nWorldTimeHour;
        unsigned char m_nWorldTimeMinute;
        unsigned char m_nWeather;
        bool          m_bNoNametagsBehindWalls;
        int           m_nPlayerMarkersMode;
        float         m_fChatRadius;
        bool          m_bNameTags;
        bool          m_bLtdChatRadius;
};
 
  • Нравится
Реакции: gaZmanoV и Musaigen

_raz0r

t.me/sssecretway | ТГК: t.me/razor_code
Автор темы
Модератор
1,890
3,042
C++:
struct stSAMPPools
{
    // NOT TESTED
    void *u1; // i
    void *u2; // dont
    void *u3; // know
    void *u4; // what is this
    struct stActorPool *pActor;
    struct stObjectPool *pObject;
    struct stGangZonePool *pGangzone;
    struct stTextLabelPool *pText3D;
    struct stTextdrawPool *pTextdraw;
    void *u5; // maybe 3D text pools
    struct stPlayerPool *pPlayer;
    struct stVehiclePool *pVehicle;
    struct stPickupPool *pPickup;
};
 
  • Bug
Реакции: gaZmanoV

sc6ut

неизвестный
Модератор
382
1,074
CGame__ProcessFrameLimiter = samp.dll + 0xA1C20
 
Последнее редактирование: