• Unfortunately, we have experienced significant hard drive damage that requires urgent maintenance and rebuilding. The forum will be a state of read only until we install our new drives and rebuild all the configurations needed. Please follow our Facebook page for updates, we will be back up shortly! (The forum could go offline at any given time due to the nature of the failed drives whilst awaiting the upgrades.) When you see an Incapsula error, you know we are in the process of migration.

how to show guildPQ buff?

Newbie Spellweaver
Joined
Sep 25, 2013
Messages
81
Reaction score
6
dhl0UVt - how to show guildPQ buff? - RaGEZONE Forums

no idea how to show this buff
 
Custom Title Activated
Loyal Member
Joined
Jan 18, 2010
Messages
3,109
Reaction score
1,139
This is a guildPQ buff? In what version? I just started coding the guild system in my source so I can look into it, but if that's a buff, that may be a Guild skill in newer versions and I don't have Guild skills yet :(

If it's just a regular Guild skill like in v95+ like the rest, then it's possibly even one of these skills:
Code:
/**
     * Guild Skill
     */
    public static class Guild extends Skills {
        // <editor-fold defaultstate="collapsed" desc="Guild Skills">
        public static final int MesoUp = 91000000;
        public static final int ExperienceUp = 91000001;
        public static final int DefenceUp = 91000002;
        public static final int ATTnMAGUp = 91000003;//?
        public static final int AgilityUp = 91000004;
        public static final int BusinessEfficiencyUp = 91000005;
        public static final int RegularSupport = 91000006;
        // </editor-fold>
    }

You possibly have a video? That would probably help.
 
Upvote 0
Newbie Spellweaver
Joined
Sep 25, 2013
Messages
81
Reaction score
6
This is a guildPQ buff? In what version? I just started coding the guild system in my source so I can look into it, but if that's a buff, that may be a Guild skill in newer versions and I don't have Guild skills yet :(

If it's just a regular Guild skill like in v95+ like the rest, then it's possibly even one of these skills:
Code:
/**
     * Guild Skill
     */
    public static class Guild extends Skills {
        // <editor-fold defaultstate="collapsed" desc="Guild Skills">
        public static final int MesoUp = 91000000;
        public static final int ExperienceUp = 91000001;
        public static final int DefenceUp = 91000002;
        public static final int ATTnMAGUp = 91000003;//?
        public static final int AgilityUp = 91000004;
        public static final int BusinessEfficiencyUp = 91000005;
        public static final int RegularSupport = 91000006;
        // </editor-fold>
    }

You possibly have a video? That would probably help.

this buff in register guildPQ will have
in guildPQ when open already have, no v95+ guild skill
 
Upvote 0
Custom Title Activated
Loyal Member
Joined
Jan 18, 2010
Messages
3,109
Reaction score
1,139
this buff in register guildPQ will have
in guildPQ when open already have, no v95+ guild skill


Yep it's not a guild skill. The icon seemed familiar to me, I remember stumbling upon it and being confused what it was so many times when I did wz editing. Took me a bit but I remembered that I found it in UI.wz.

It's called "TemporaryStatView".
kaokaotw - how to show guildPQ buff? - RaGEZONE Forums


So I thought I'd find it in the client using SP's.. Just as I thought, there was one.
Code:
3621;"UI/UIWindow.img/TemporaryStatView/%d"

So I traced the SP value in the client to the function
Code:
void __thiscall CTemporaryStatView::TEMPORARY_STAT::TEMPORARY_STAT(CTemporaryStatView::TEMPORARY_STAT *this, int nType, int nID, int tDuration, UINT128 uFlagTemp, ZXString<char> sToolTip, int nSubID, int nHideTime)

There wasn't really much to see besides it utilizing the StringPool and having a nType value of 3 which is the first argument. It's only xref is SetTemporary, which is the function called from OnTemporaryStatSet. However, there's only one other XREF -- and that is from OnGuildResult! Which definitely make sense considering it is GPQ. It also sends nType as 3 just like it should. This buff is sent from mode 79 (0x4F). The official Nexon name of this value is called
Code:
GuildRes_GuildQuest_NoticeOrder = 0x4F,

It follows the following structure:
Code:
public static byte[] OnGuildResult(byte nChannelIdx, int nNoticeOrder) {
        OutPacket oPacket = new OutPacket();
        oPacket.Encode2(GuildResult);//short header -> the GUILD_OPERATION packet.
        oPacket.Encode1(GuildResCode.GuildQuest_NoticeOrder.getCode());//byte result code -> 0x4F NoticeOrder.
        oPacket.Encode1(nChannelIdx);//byte Channel ID
        oPacket.Encode4(nNoticeOrder);//int Notice Order.
        return oPacket.ToArray();
    }

The "nNoticeOrder" variable is another mode that switches. It is as follows:
Code:
0 -> Reset the temporary stat of the buff (removes it i guess)
1-> Sends message "Please go see the Guild Quest NPC at Channel %s immediately to enter." (I think this enables the buff?)
2-> Sends message "Your guild is up next. Please head to the Guild Quest map at Channel %s and wait."
3-> Sends message "There's currently 1 guild participating in the Guild Quest, and your guild is number %d on the waitlist."

Weird part is, technically modes 1,2, and 3 all call the SetTemporary function. Except 0, that has a label jump and just disables the buff. I think the way Nexon probably handles it which is honestly stupid (though I haven't coded this from BMS yet so I can't confirm lmao) is they send the error first (1,2,3) and then send 0 so you don't see the buff.

Don't know too much otherwise as I have yet to work on this, I only just started guilds..

Hope this helps!
 
Upvote 0
Newbie Spellweaver
Joined
Sep 25, 2013
Messages
81
Reaction score
6
Yep it's not a guild skill. The icon seemed familiar to me, I remember stumbling upon it and being confused what it was so many times when I did wz editing. Took me a bit but I remembered that I found it in UI.wz.

It's called "TemporaryStatView".
kaokaotw - how to show guildPQ buff? - RaGEZONE Forums


So I thought I'd find it in the client using SP's.. Just as I thought, there was one.
Code:
3621;"UI/UIWindow.img/TemporaryStatView/%d"

So I traced the SP value in the client to the function
Code:
void __thiscall CTemporaryStatView::TEMPORARY_STAT::TEMPORARY_STAT(CTemporaryStatView::TEMPORARY_STAT *this, int nType, int nID, int tDuration, UINT128 uFlagTemp, ZXString<char> sToolTip, int nSubID, int nHideTime)

There wasn't really much to see besides it utilizing the StringPool and having a nType value of 3 which is the first argument. It's only xref is SetTemporary, which is the function called from OnTemporaryStatSet. However, there's only one other XREF -- and that is from OnGuildResult! Which definitely make sense considering it is GPQ. It also sends nType as 3 just like it should. This buff is sent from mode 79 (0x4F). The official Nexon name of this value is called
Code:
GuildRes_GuildQuest_NoticeOrder = 0x4F,

It follows the following structure:
Code:
public static byte[] OnGuildResult(byte nChannelIdx, int nNoticeOrder) {
        OutPacket oPacket = new OutPacket();
        oPacket.Encode2(GuildResult);//short header -> the GUILD_OPERATION packet.
        oPacket.Encode1(GuildResCode.GuildQuest_NoticeOrder.getCode());//byte result code -> 0x4F NoticeOrder.
        oPacket.Encode1(nChannelIdx);//byte Channel ID
        oPacket.Encode4(nNoticeOrder);//int Notice Order.
        return oPacket.ToArray();
    }

The "nNoticeOrder" variable is another mode that switches. It is as follows:
Code:
0 -> Reset the temporary stat of the buff (removes it i guess)
1-> Sends message "Please go see the Guild Quest NPC at Channel %s immediately to enter." (I think this enables the buff?)
2-> Sends message "Your guild is up next. Please head to the Guild Quest map at Channel %s and wait."
3-> Sends message "There's currently 1 guild participating in the Guild Quest, and your guild is number %d on the waitlist."

Weird part is, technically modes 1,2, and 3 all call the SetTemporary function. Except 0, that has a label jump and just disables the buff. I think the way Nexon probably handles it which is honestly stupid (though I haven't coded this from BMS yet so I can't confirm lmao) is they send the error first (1,2,3) and then send 0 so you don't see the buff.

Don't know too much otherwise as I have yet to work on this, I only just started guilds..

Hope this helps!

thanks, and oldms have summon buff mask?
why odinms use combo buff mask
 
Upvote 0
Custom Title Activated
Loyal Member
Joined
Jan 18, 2010
Messages
3,109
Reaction score
1,139
thanks, and oldms have summon buff mask?
why odinms use combo buff mask

The summon buffmask? This is a hack buffstat. In the real game, MapleStory has never had "Summons" or "Puppets" as a physical buffstat because they were never a buff. You cannot cancel a summon, you have to wait for it to timeout.

However, Combo Attack? This does use a buffstat. and if OdinMS is using the Combo buffstat for summons, it's probably because nobody changed it. The buffstats for PUPPET/SUMMON are actual buffstats in Odin though -- they just don't affect the player (or shouldn't). That was Odin's goal anyway, alongside you can cancel your summons on a private server.
 
Upvote 0
Back
Top