Vanilla Mode via Stage Option

Results 1 to 6 of 6
  1. #1
    In Progress... FFXIV... Anju is offline
    MemberRank
    Oct 2010 Join Date
    Mist Ward 7 #38Location
    1,946Posts

    Vanilla Mode via Stage Option

    I have been working on this for only about 10 minutes max. To be honest, I hate roomtags. Instead, I made it work from the stage option settings. There is probably a better way of doing this, but it still work. After all, I am still a beginner at programming.

    Gunz solution
    ZCharacter.cpp: (Above your 'if(GetUserGrade() == MMUG_DEVELOPER) {' )
    Code:
    if(ZGetGameClient()->GetMatchStageSetting()->GetStageSetting()->bVanilla == true 
    		&& ZGetGame()->GetMatch()->GetMatchType() != (MMATCH_GAMETYPE_QUEST || MMATCH_GAMETYPE_SURVIVAL))
        {
            m_Property.fMaxHP.Set_CheckCrc(120);
    			m_fPreMaxHP = 120;
    		m_Property.fMaxAP.Set_CheckCrc(110);
    			m_fPreMaxAP = 110;
        }
    ZStageSetting.cpp: (Above your 'static bool BuildStageSetting(MSTAGE_SETTING_NODE* pOut' )
    Code:
    #define STAGESETTING_VANILLA_MAX        2
    #define STAGESETTING_VANILLA_DEFAULT    0
    static struct _STAGESETTING_VANILLA
    {
        bool    Value;
        char    szText[32];
    } StageSetting_StageVanilla[STAGESETTING_VANILLA_MAX] = 
    { {true, "ON"}, {false, "OFF"} };

    ZStageSetting.cpp: (Above your 'return true;' in the ending of 'static bool BuildStageSetting(MSTAGE_SETTING_NODE* pOut' )
    Code:
    BUILD_STAGESETTING_ITEM("StageVanilla", pOutNode->bVanilla,
                                StageSetting_StageVanilla, STAGESETTING_VANILLA_MAX);
    ZStageSetting.cpp (Above your 'if (pShowAll)' in 'void ZStageSetting::ShowStageSettingDialog( const MSTAGE_SETTING_NODE* pStageSetting, bool bShowAll)' )
    Code:
    SHOWSTAGESETTING_ITEM("StageVanilla", pStageSetting->bVanilla,
            STAGESETTING_VANILLA_MAX, StageSetting_StageVanilla);
    ZStageSetting.cpp: (Paste this at the end inside your 'void ZStageSetting::InitStageSettingDialog()' function)
    Code:
    strcpy( StageSetting_StageVanilla[0].szText, ZMsg(MSG_WORD_ON));
        strcpy( StageSetting_StageVanilla[1].szText, ZMsg(MSG_WORD_OFF));
        INITSTAGESETTING_ITEM("StageVanilla", pStageSetting->bVanilla,
            STAGESETTING_VANILLA_MAX, StageSetting_StageVanilla, STAGESETTING_VANILLA_DEFAULT);
    CSCommon solution
    MMatchStageSetting.h: (Above your 'bool bIsRelayMap;'. Should be in 'struct MSTAGE_SETTING_NODE' structure)
    Code:
    bool                bVanilla;
    MMatchStageSetting.h: (Above your '#define STAGESETTING_LIMITTIME_UNLIMITED')
    Code:
    #define MMATCH_DEFAULT_STAGESETTING_ISVANILLA            false    // global vanilla mode
    MMatchStageSetting.h (Above your 'const MMatchGameTypeInfo* GetCurrGameTypeInfo();')
    Code:
    bool                        GetIsVanilla()				{ return m_StageSetting.Ref().bVanilla; }
    MMatchStageSetting.cpp: (Above your 'm_StageSetting.Ref().bIsRelayMap = false;'. If you can't find it, look in 'void MMatchStageSetting::SetDefault()')
    Code:
    m_StageSetting.Ref().bVanilla = MMATCH_DEFAULT_STAGESETTING_ISVANILLA;
    MatchServer solution
    MBMatchServer_Stage.cpp: (Above your 'pAttacker->GetCharInfo()->IncXP(nAttackerExp);')
    Code:
    if (pStage->GetStageSetting()->GetStageSetting()->bVanilla == true) return;
    XML files
    StageSettingFrame.xml: (Above your '<BUTTON item="StageSettingApplyBtn" parent="StageSettingFrame">')
    Code:
        <LABEL item="Label" parent="StageSettingFrame">
            <BOUNDS>
                <X>20</X>
                <Y>262</Y>
                <W>150</W>
                <H>24</H>
            </BOUNDS>
            <TEXT>STR:UI_SSF_09</TEXT>
        </LABEL>    
    
        <COMBOBOX item="StageVanilla" parent="StageSettingFrame">
            <LISTBOXLOOK>CustomListBoxLook</LISTBOXLOOK>
            <BUTTONLOOK>ListBoxButtonLook</BUTTONLOOK>
            <TEXTALIGN>
                <HALIGN>center</HALIGN>
                <VALIGN>center</VALIGN>
            </TEXTALIGN>
            <ITEMHEIGHT>18</ITEMHEIGHT>
            <BOUNDS>
                <X>137</X>
                <Y>262</Y>
                <W>150</W>
                <H>24</H>
            </BOUNDS>
            <DROPSIZE>210</DROPSIZE>
            <COMBOTYPE>1</COMBOTYPE>
            <COMBOFIRSTSIZE>51</COMBOFIRSTSIZE>
            <ENABLE>true</ENABLE>
        </COMBOBOX>
    strings.xml: (Above your '<!-- Option.xml -->')
    Code:
    <STR id="UI_SSF_09">Vanilla</STR>
    Note: In '<FRAME item="StageSettingFrame">', increase your height, '<H></H>', by 30.


  2. #2
    Account Upgraded | Title Enabled! medotarek is offline
    MemberRank
    Apr 2012 Join Date
    Egypt/RageZoneLocation
    615Posts

    Re: Vanilla Mode via Stage Option

    very easy but not bad :)

  3. #3
    Account Upgraded | Title Enabled! Patrick2607 is offline
    MemberRank
    May 2013 Join Date
    The NetherlandsLocation
    345Posts

    Re: Vanilla Mode via Stage Option

    You can do this with all kinds of modes. Think about Vampire, Anti-Lead, Classic, Training etc. etc.
    Thanks for the release.

  4. #4
    Proficient Member damn321 is offline
    MemberRank
    Dec 2012 Join Date
    176Posts

    Re: Vanilla Mode via Stage Option

    what is the function of vanilla mode?

  5. #5
    Account Upgraded | Title Enabled! Patrick2607 is offline
    MemberRank
    May 2013 Join Date
    The NetherlandsLocation
    345Posts

    Re: Vanilla Mode via Stage Option

    Quote Originally Posted by damn321 View Post
    what is the function of vanilla mode?
    Code:
    if(ZGetGameClient()->GetMatchStageSetting()->GetStageSetting()->bVanilla == true 
            && ZGetGame()->GetMatch()->GetMatchType() != (MMATCH_GAMETYPE_QUEST || MMATCH_GAMETYPE_SURVIVAL))
        {
            m_Property.fMaxHP.Set_CheckCrc(120);
                m_fPreMaxHP = 120;
            m_Property.fMaxAP.Set_CheckCrc(110);
                m_fPreMaxAP = 110;
        }

  6. #6
    Proficient Member damn321 is offline
    MemberRank
    Dec 2012 Join Date
    176Posts

    Re: Vanilla Mode via Stage Option

    Quote Originally Posted by Patrick2607 View Post
    Code:
    if(ZGetGameClient()->GetMatchStageSetting()->GetStageSetting()->bVanilla == true 
            && ZGetGame()->GetMatch()->GetMatchType() != (MMATCH_GAMETYPE_QUEST || MMATCH_GAMETYPE_SURVIVAL))
        {
            m_Property.fMaxHP.Set_CheckCrc(120);
                m_fPreMaxHP = 120;
            m_Property.fMaxAP.Set_CheckCrc(110);
                m_fPreMaxAP = 110;
        }

    ahh i see sorry i forgot to read!!!



Advertisement