[Odin] Enable Gendered Cash Shop

Results 1 to 13 of 13
  1. #1
    I can't leave this place RaptorJesus is offline
    MemberRank
    Apr 2008 Join Date
    1,923Posts

    [Odin] Enable Gendered Cash Shop

    Allows females to buy female cash items without having to equip them and buy equipped.
    This is probably improper but whatever, IT JUST WERKS (for Odin based sources obviously).

    PlayerLoggedInHandler.java

    Add:
    c.announce(MaplePacketCreator.updateGender(player));

    Under:
    c.setPlayer(player);
    c.setAccID(player.getAccountID());

    Smash that motherfuckin like button.
    Last edited by RaptorJesus; 25-01-16 at 10:43 PM.


  2. #2
    Valued Member Straight Edgy is offline
    MemberRank
    Jun 2015 Join Date
    125Posts

    Re: Enable Gendered Cash Shop

    How is it improper? That's the setGender packet. This implementation is odinms-specific, no idea why it's in web development. Post the packet instead, if you've actually made it yourself.

  3. #3
    I can't leave this place RaptorJesus is offline
    MemberRank
    Apr 2008 Join Date
    1,923Posts

    Re: Enable Gendered Cash Shop

    Quote Originally Posted by Straight Edgy View Post
    How is it improper? That's the setGender packet. This is odinms-specific, no idea why it's in web development.
    I'm literally stupid, mods please move to server releases.
    Last edited by RaptorJesus; 08-11-19 at 01:16 AM.

  4. #4
    Moderator Eric is offline
    ModeratorRank
    Jan 2010 Join Date
    DEV CityLocation
    3,188Posts

    Re: Enable Gendered Cash Shop

    Quote Originally Posted by RaptorJesus View Post
    I'm literally retarded, mods please move to server releases.
    this is the best release 2016. ily

    and ya, it's not improper at all (however, i send it after they enter the field, not at the top like this), this is actually how Nexon handles it themselves upon game migration :)

  5. #5
    I can't leave this place RaptorJesus is offline
    MemberRank
    Apr 2008 Join Date
    1,923Posts

    Re: Enable Gendered Cash Shop

    Quote Originally Posted by Eric View Post
    this is the best release 2016. ily

    and ya, it's not improper at all (however, i send it after they enter the field, not at the top like this), this is actually how Nexon handles it themselves upon game migration :)
    Gotcha, I figured it had to be somewhat improper with how simple of a fix this was and how fucking long its gone without being publicly fixed.

  6. #6
    Omega sunnyboy is offline
    MemberRank
    Mar 2010 Join Date
    6,109Posts

    Re: Enable Gendered Cash Shop

    Quote Originally Posted by RaptorJesus View Post
    Gotcha, I figured it had to be somewhat improper with how simple of a fix this was and how fucking long its gone without being publicly fixed.
    Code:
    /*
         CUser::OnMigrateInSuccess
    */
    
    COutPacket::Encode1(&thisa, v1->m_character.characterStat.nGender);
    I see gender being set when you get ingame, but not in CS. o-o

  7. #7
    Moderator Eric is offline
    ModeratorRank
    Jan 2010 Join Date
    DEV CityLocation
    3,188Posts

    Re: Enable Gendered Cash Shop

    Quote Originally Posted by sunnyboy View Post
    Code:
    /*
         CUser::OnMigrateInSuccess
    */
    
    COutPacket::Encode1(&thisa, v1->m_character.characterStat.nGender);
    I see gender being set when you get ingame, but not in CS. o-o
    The gender set when you migrate in-game here sets the client's gender to where the cash shop reads it client-sided.

  8. #8
    Valued Member Burgundy is offline
    MemberRank
    Mar 2015 Join Date
    126Posts

    Re: [Odin] Enable Gendered Cash Shop

    I honestly had no idea this was an issue. I guess that speaks to the ratio of male/female players.

    Played around with this and the SET_GENDER packet for v62 is 0x37. Not sure if that was public knowledge or not, but it wasn't defined in my source (xiuz based).

  9. #9
    Valued Member Straight Edgy is offline
    MemberRank
    Jun 2015 Join Date
    125Posts

    Re: [Odin] Enable Gendered Cash Shop

    Quote Originally Posted by Burgundy View Post
    I honestly had no idea this was an issue. I guess that speaks to the ratio of male/female players.

    Played around with this and the SET_GENDER packet for v62 is 0x37. Not sure if that was public knowledge or not, but it wasn't defined in my source (xiuz based).
    Since the packet is implemented in most v83 sources, it's basically common knowledge. But for someone working on older versions, without packet knowledge, this could be useful.

    The subs in the picture are from v.62 (left) and v.95 (right), as you can see they are identical.
    v.95 = 58 (0x3A), v.83 = 58 (0x3A), v.62 = 55 (0x37).
    Code:
    public static MaplePacket setGender(MapleCharacter chr) {
         MaplePacketLittleEndianWriter mplew = new MaplePacketLittleEndianWriter();
         mplew.writeShort(SendPacketOpcode.SET_GENDER.getValue());
         mplew.write(chr.getGender()); // 0 = Male, 1 = Female
         return mplew.getPacket();
    }

  10. #10
    Valued Member Burgundy is offline
    MemberRank
    Mar 2015 Join Date
    126Posts

    Re: [Odin] Enable Gendered Cash Shop

    @Straight Edgy thanks for the information, yeah, I'm somewhat new with packets myself.

  11. #11
    Moderator Eric is offline
    ModeratorRank
    Jan 2010 Join Date
    DEV CityLocation
    3,188Posts

    Re: [Odin] Enable Gendered Cash Shop

    @Straight Edgy agreed, but fix ur ida symbols :(

    PHP Code:
    void __thiscall CWvsContext::OnSetGender(CWvsContext *thisCInPacket *iPacket)
    {
      
    this->m_nGender = (unsigned __int8)CInPacket::Decode1(iPacket);

    PHP Code:
    enum GENDER
    {
      
    GENDER_MALE 0x0,
      
    GENDER_FEMALE 0x1,
      
    GENDER_NONE 0x2,
    }; 
    To be honest, I'm kind of surprised people didn't know about this. I first messed with this when trying to make all items transgender so anyone could buy, but it didn't work lolol.. I wonder, do they know about how Nexon handles their Report system? It's another thing I didn't see in many sources and is the exact same thing as gender, enables the functionality sent upon migration.

    PHP Code:
    void __thiscall CWvsContext::OnClaimSvrStatusChanged(CWvsContext *thisCInPacket *iPacket)
    {
      
    this->m_bClaimSvrConnected CInPacket::Decode1(iPacket) != 0;


  12. #12
    I can't leave this place RaptorJesus is offline
    MemberRank
    Apr 2008 Join Date
    1,923Posts

    Re: [Odin] Enable Gendered Cash Shop

    Yeah I didn't know any of this because I don't use IDA since I'm practically brain-dead when it comes to IDA. Somehow I've fixed a lot of issues without looking into it though. ¯\_(ツ)_/¯

  13. #13
    Account Upgraded | Title Enabled! StripedCow is offline
    MemberRank
    Jun 2011 Join Date
    813Posts

    Re: [Odin] Enable Gendered Cash Shop

    adding this to the repack as we speak thanks raptorjesus



Advertisement