Xbox 360 Open Source Community Code List

Discussion in 'Call of Duty: AW Modding' started by S7 Pro, Jul 12, 2015 with 134 replies and 13,193 views.

  1. Oda

    Oda Enthusiast

    Messages:
    255
    Ratings:
    114
    It checks for Dev data only, its even calling a function to check if the players gamertag exists inside mp/iwgamertags.cvs...pls stop using ghosts PDB information, it's not the exact same as how the console functions work (I know you're using PDB info because I know about you lmao)
     
    • Like Like x 1
  2. SC58

    SC58 Enthusiast

    Messages:
    360
    Ratings:
    108
    i know not everything is in the pdb but atleast give the functions a proper name as it just verifing a string not a privileges lol
     
  3. Medaka

    Medaka Getting There

    Messages:
    388
    Ratings:
    286
    Pretty ****ing useless but whatever.

    Code:
    enum functionId_e{
        SV_GameSendServerCommand,
        SV_LinkEntity
    };
    
    byte addresses[][4] = {
        //SV_GameSendServerCommand
        { 0x82, 0x3E, 0x5B, 0xF8 },
    
        //SV_LinkEntity
        { 0x82, 0x3C, 0xA8, 0x38 }
    };
    
    int getAddress(functionId_e id){
        int address = 0, func = 0;
        const int size = sizeof(addresses);
        byte tmp[size / 4][4];
    
        memcpy(tmp, addresses, size);
    
        for(int i = 24; i > -1; i -= 8)
            address |= ((tmp[id][func++]) << i);
    
        return address;
    }
    
    void (*SV)(int client, int type, const char* format);
    
    void callSV(int client, int type, const char* format){
         SV = (void(*)(int, int, const char*))getAddress(SV_GameSendServerCommand);
    
         SV(client, type, format);
    }
    
     
    Last edited: Oct 22, 2015
  4. Oda

    Oda Enthusiast

    Messages:
    255
    Ratings:
    114
    But it isn't that function...it has changed since CoD4, now it's only reference is with developer related crap...I've reversed it, you clearly haven't seeing as you're putting so much faith into what an old 2008 PDB says XD.

    EDIT: For those confused, I looked at the ghosts PDB and found no reference to the function he stated, so I could only assume he was using even more invalid information...
     
    Last edited: Nov 2, 2015
  5. Medaka

    Medaka Getting There

    Messages:
    388
    Ratings:
    286
    When is anything new going to be posted? Other than Oda and I.
     
    • Like Like x 1
  6. stepto

    stepto Enthusiast

    Messages:
    255
    Ratings:
    66
    You do remember what forum you're on, right?
     
    • Like Like x 1
  7. Medaka

    Medaka Getting There

    Messages:
    388
    Ratings:
    286
    Yes I am aware. Which is why I asked.
     
  8. stepto

    stepto Enthusiast

    Messages:
    255
    Ratings:
    66
    There is a very select few nowadays that do any sort of research. I'd say they won't be back until BO3 and will keep their stuff private:dead:
     
    • Like Like x 1
  9. xI cHOcOLaTe

    xI cHOcOLaTe Getting There

    Messages:
    1,496
    Ratings:
    1,514
    Probably no time soon since AW is trash and so is Call of Duty nowadays. I mean Black Ops 3 is coming out soon for 360 so I'm sure there's gonna be tons of 'new and innovative research'.

    It's the same **** as it is every year. Just new function addresses and barely any new logic.
     
    • Like Like x 2
  10. Medaka

    Medaka Getting There

    Messages:
    388
    Ratings:
    286
    Post something.
     
  11. xI cHOcOLaTe

    xI cHOcOLaTe Getting There

    Messages:
    1,496
    Ratings:
    1,514
    I honestly haven't looked into CoD in months. What else is left to look into?
     
  12. Medaka

    Medaka Getting There

    Messages:
    388
    Ratings:
    286
    Just post something, anything.
     
  13. Oda

    Oda Enthusiast

    Messages:
    255
    Ratings:
    114
    Code:
    int (*StringTable_GetRankForXP)(int xp, char*szName) = ((int(__cdecl*)(int,char*))0x827BC0C8);
    
    int GetRankForXP(int expeirence)
    {
          return StringTable_GetRankForXP(experience, "mp/rankTable.cvs");
    }
    
    Example usage:
    Code:
    typedef struct _STAT_INFO
    {
           char* m_data;
           int m_size;
    }STAT_INFO, *pSTAT_INFO
    
    bool GetStatData(pSTAT_INFO buf, int localNum) {
          buf = { GetStatBuffer(localNum, isOffline()), 0x93FC };
         return GetStatBuffer(localNum, isOffline()) != 0;
         // 8245A060 (gsb), 8245BDB8 (io)
    }
    #define SL_GetString(s) SL_GetStringSizeOf(s, 0, strlen(s)+1, 8)//8242FD70
    #define getint(stat, buf) LiveStorage_PlayerDataGetIntByName(SL_GetString(stat), buf) //82462940
    
    int CalculcateXP(int localNum) {
         pSTATE_INFO data;
         GetStatData(data, localNum);
         return (getint("experience", data) + getint("inventoryTotalXP", data)) - getint("inventoryXPAtLastReset");
    }
    
    //call
    printf("we are rank %d\n", GetRankForXP(CalculateXP(0)));
    
    happy bro?

    There is still tons to do. That is, if you're an advanced reverse engineer who knows what they're doing. The majority of this scene depends on the PC scene for anything "out of this world", so theres that reason why many people would assume we've done everything.
     
    Last edited: Nov 2, 2015
  14. apollyonmods

    apollyonmods HadesLive Founder Premium

    Messages:
    266
    Ratings:
    109
    It's a couple different things you need for instance the first thing you need is GetGamertag, Gamertag, getPlayerState, and a few others. I don't have much knowledge in this but I am trying my best to get all them working.
     
  15. Infxntry

    Infxntry Enthusiast

    Messages:
    13
    Ratings:
    7
    dont worry about it
     
    Last edited: Sep 16, 2018

Share This Page