Register for your free account! | Forgot your password?

You last visited: Today at 08:45

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



S4 Player Ids Names etc.

Discussion on S4 Player Ids Names etc. within the S4 League Hacks, Bots, Cheats & Exploits forum part of the S4 League category.

Reply
 
Old   #1
 
Decrypted's Avatar
 
elite*gold: 0
Join Date: Mar 2016
Posts: 70
Received Thanks: 176
S4 Player Ids Names etc.

Before it rots on my harddrive.
Code:
#define S4DefaultCharLen 16
struct SCharName
{
    char m_acData[S4DefaultCharLen];
    uint32_t m_iLen;
    char* getName()
    {
        if (m_iLen < S4DefaultCharLen )
        {
            return (char*)&m_acData[0];
        }
        else
        {
            return *(char**)&m_acData[0];
        }
    }
};
class CPlayer
{
    public:
        char        m_acUnk1[72];
        uint32_t    m_iPlayerID;
        uint32_t    m_iSessionID;
        SCharName   m_oName;
};

class CPlayerHolder
{
    public:
        CPlayer* getPlayer(uint32_t i_iPlayerID)
        {
            if (!i_iPlayerID)
                return nullptr;

            auto vcall = (CPlayer*(__thiscall*)(CPlayerHolder* i_pThisPtr, uint32_t i_iPlayerID, uint32_t iii))(g_iS4Base + 0x759070);
            return vcall(this, i_iPlayerID, 0);
        }
        char* getPlayerName(uint32_t i_iPlayerID)
        {
            if (!i_iPlayerID)
                return nullptr;

            auto vcall = (CPlayer*(__thiscall*)(CPlayerHolder* i_pThisPtr, uint32_t i_iPlayerID, uint32_t iii))(g_iS4Base + 0x759070);
            CPlayer* a_pPlayer = vcall(this, i_iPlayerID, 0);

            return a_pPlayer->m_oName.getName();
        }
};
Code:
class CTeamManager
{
    public:
        enum ERoomTeam : uint8_t
        {
            ETeamNeutral = 0,
            ETeamAlpha = 1,
            ETeamBeta = 2
        };
    public:
        uint32_t getTeamPlayerAmount(ERoomTeam i_bTeam)
        {
            auto vcall = (uint32_t(__thiscall*)(CTeamManager* i_pThisPtr, uint32_t i_iTeam))(g_iS4Base + 0xCF3110);
            return vcall(this, i_bTeam);
        }
        uint32_t getPlayerID(ERoomTeam i_bTeam, uint32_t i_iIndex)
        {
            struct SRet
            {
                uint32_t m_iPlayerID;
                uint32_t res2;
            };
    
            auto vcall = (SRet(__thiscall*)(CTeamManager* i_pThisPtr, uint32_t i_iTeam, uint32_t i_iIndex))(g_iS4Base + 0xCF32D0);
            return vcall(this, i_bTeam, i_iIndex).m_iPlayerID;
        }
};
Code:
class CRoom
{
    public:
        uint8_t       m_acUnknownData1[0x10];
        CTeamManager* m_pTeamManager;
};
Code:
class CGame
{
    public:
        uint8_t       m_acUnknownData1[0x0000012C];
        CRoom*        m_pRoom;
};
Decrypted is offline  
Thanks
5 Users
Old 07/10/2016, 22:36   #2
 
elite*gold: 39
Join Date: Jun 2016
Posts: 269
Received Thanks: 805
gj, well done.
gοd is offline  
Old 07/10/2016, 23:14   #3
 
elite*gold: 0
Join Date: Nov 2014
Posts: 741
Received Thanks: 2,648
Ah the good old stuff which got used by kick vote system ( and more ofc. )..

Code:
s4client.exe+4C97E0 - push ebp
But why you use CGameManager->CRoom and not CGameManager->CTeamManager->CTeam .. and then the vector like Ant.'s open source

Edit : class CPlayer != CActor ??
RingleRangleRob is offline  
Thanks
1 User
Old 07/11/2016, 02:17   #4
 
Decrypted's Avatar
 
elite*gold: 0
Join Date: Mar 2016
Posts: 70
Received Thanks: 176
Quote:
Originally Posted by Sycode' View Post
Ah the good old stuff which got used by kick vote system ( and more ofc. )..

Code:
s4client.exe+4C97E0 - push ebp
But why you use CGameManager->CRoom and not CGameManager->CTeamManager->CTeam .. and then the vector like Ant.'s open source

Edit : class CPlayer != CActor ??
Didn´t noticed that ant already released it ^^
Edit:
As far as i can see there are some differences between the Actor class and Player class.
Decrypted is offline  
Old 07/11/2016, 07:42   #5
 
▒ Ant.'s Avatar
 
elite*gold: 0
Join Date: Dec 2008
Posts: 423
Received Thanks: 1,378
This is complete cancer code. I've already published this and much more, you're using excess addresses for functions that you don't even need. Also, SCharName, are you kidding me? You've never heard of std::string?

Quote:
Originally Posted by Decrypted View Post
Get on my reversing and c++ style
This is hardly C++ worthy, please don't quote me and claim you know what you're doing with this garbage.


OnTopic: There is no such thing as "CPlayer", merely CActor. Perhaps you're looking at another derivation of the IActor class which is why you notice "differences."

#TeachByFlame
▒ Ant. is offline  
Thanks
4 Users
Reply


Similar Threads Similar Threads
[Selling] LoL Europe / North American Pro Player Names [S] E*G
01/08/2015 - elite*gold Trading - 8 Replies
Hello peops I wanna sell some Level 1 Accounts . All Accounts on EUW as lvl 1. I creat all Accs + Email Account by myself. All Names listet in the Spoiler ! What u will get from me? Account Login + Password Email + Password All Accounts are lvl 1 and unverified !
No Player Names
12/29/2013 - Rohan - 6 Replies
Hi, i managed to run a server, but there's my problem, i can't see anything, just like after f11 button, anyone knows how to change that?
Player names showing as numbers
10/13/2012 - Cabal Private Server - 5 Replies
Hi, I just set up a PServer with the old OGame version files. When playing, my player name shows correctly, but other player names show as numbers. Same for other players, theirs shows for them ok, but others' names show as numbers. Someone please give me some guidance? Thanks!
( Time to Pin ! ) E*PvP Player NAMES
04/24/2012 - League of Legends Guides & Strategies - 5 Replies
Du willst mit mehr leuten spielen ? mit deiner E*PvP komu. ? Na denn, wer möchte wird hier geaddet =) Pool :
See player names in WAR servers ANYWHERE! EASY! (EXPLOIT)
10/15/2008 - Cabal Hacks, Bots, Cheats, Exploits & Macros - 20 Replies
Ok, I just found 2 methods that this glitch works with. This Bug/Glitch/Exploit allows you to view the names of Players in the War Server. Here are the instructions. METHOD 1 Step 1. Find a player in the game that you want to see the name of. Such as someone that keeps PKing you, KSing you or any other reason you can think of. Step 2. Press Esc to bring you into "Menu" Step 3. make sure that the person you want to see the name of is in view. Step 4. Press the "Select Server"...



All times are GMT +1. The time now is 08:45.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.