Jump to content

Koutaro Satomi

Members
  • Posts

    22
  • Joined

  • Last visited

Posts posted by Koutaro Satomi

  1. Hi, I'm making a hat maker quest but unfortunately it kepts adding a Item thats not supposed to be in the 2nd quest shop here's the script and here's the item thats popping out ID # 5352

    // Shop NPCs -- supplying no argument displays entire menu.
    //    callfunc "qshop"{,<shop ID>{,<shop ID>{,...}}};
    //============================================================
    prt_in,37,103,6    script    Hat Maker    503,{ callfunc "qshop3"; }
    
    
    // Script Core
    //============================================================
    -    script    quest_shop3    -1,{
    function Add; function Chk; function Slot;
    OnInit:
        freeloop(1);
    
    // -----------------------------------------------------------
    //  Basic shop settings.
    // -----------------------------------------------------------
    
        set .Announce,0;    // Announce quest completion? (1: yes / 0: no)
        set .ShowSlot,1;    // Show item slots? (2: all equipment / 1: if slots > 0 / 0: never)
        set .ShowID,0;      // Show item IDs? (1: yes / 0: no)
        set .ShowZeny,0;    // Show Zeny cost, if any? (1: yes / 0: no)
        set .MaxStack,100;    // Max number of quest items purchased at one time.
    
    // -----------------------------------------------------------
    //  Points variable -- optional quest requirement.
    //    setarray .Points$[0],"<variable name>","<display name>";
    // -----------------------------------------------------------
    
        setarray .Points$[0],"#CASHPOINTS","Cash Points";
    
    // -----------------------------------------------------------
    //  Shop IDs -- to add shops, copy dummy data at bottom of file.
    //    setarray .Shops$[1],"<Shop 1>","<Shop 2>",<Shop 3>"{,...};
    // -----------------------------------------------------------
    
        setarray .Shops$[3],"Hat Maker Quest";
    
    // -----------------------------------------------------------
    //  Quest items -- do NOT use a reward item more than once!
    //    Add(<shop ID>,<reward ID>,<reward amount>,
    //        <Zeny cost>,<point cost>,
    //        <required item ID>,<required item amount>{,...});
    // -----------------------------------------------------------
    
    
    
    // -----------------------------------------------------------
    
        freeloop(0);
        set .menu$,"";
        for(set .@i,1; .@i<=getarraysize(.Shops$); set .@i,.@i+1) {
            set .menu$, .menu$+.Shops$[.@i]+":";
            npcshopdelitem "qshop"+.@i,909;
        }
        end;
    
    OnMenu:
        set .@size, getarraysize(@i);
        if (!.@size) set .@i, select(.menu$);
        else if (.@size == 1) set .@i, @i[0];
        else {
            for(set .@j,0; .@j<.@size; set .@j,.@j+1)
                set .@menu$, .@menu$+.Shops$[@i[.@j]]+":";
            set .@i, @i[select(.@menu$)-1];
        }
        deletearray @i[0],getarraysize(@i);
        if (.Shops$[.@i] == "") {
            message strcharinfo(0),"An error has occurred.";
            end;
        }
        dispbottom "Select one item at a time.";
        callshop "qshop"+.@i,1;
        npcshopattach "qshop"+.@i;
        end;
    
    OnBuyItem:
        // .@q[] : RewardID, BoughtAmt, RewardAmt, BaseAmt, ReqZeny, ReqPts, { ReqItem, ReqAmt, ... }
        setarray .@q[0],@bought_nameid[0],((@bought_quantity[0] > .MaxStack)?.MaxStack:@bought_quantity[0]);
        copyarray .@q[3],getd(".q_"+.@q[0]+"[0]"),getarraysize(getd(".q_"+.@q[0]));
        set .@q[2],.@q[1]*.@q[3];
        if (!.@q[2] || .@q[2] > 30000) {
            message strcharinfo(0),"You can't purchase that many "+getitemname(.@q[0])+".";
            end;
        }
        mes "[Quest Shop]";
        mes "Reward: ^0055FF"+((.@q[2] > 1)?.@q[2]+"x ":"")+Slot(.@q[0])+"^000000";
        mes "Requirements:";
        disable_items;
        if (.@q[4]) mes " > "+Chk(Zeny,.@q[4]*.@q[1])+(.@q[4]*.@q[1])+" Zeny^000000";
        if (.@q[5]) mes " > "+Chk(getd(.Points$[0]),.@q[5]*.@q[1])+(.@q[5]*.@q[1])+" "+.Points$[1]+" ("+getd(.Points$[0])+"/"+(.@q[5]*.@q[1])+")^000000";
        if (.@q[6]) for(set .@i,6; .@i<getarraysize(.@q); set .@i,.@i+2)
            mes " > "+Chk(countitem(.@q[.@i]),.@q[.@i+1]*.@q[1])+((.ShowID)?"{"+.@q[.@i]+"} ":"")+Slot(.@q[.@i])+" ("+countitem(.@q[.@i])+"/"+(.@q[.@i+1]*.@q[1])+")^000000";
        next;
        setarray @qe[1], getiteminfo(.@q[0],5), getiteminfo(.@q[0],11);
        if (@qe[2] > 0 && ((@qe[1] & 1) || (@qe[1] & 256) || (@qe[1] & 512) || (@qe[1] & 1024) || (@qe[1] & 2048) || (@qe[1] & 4096) || (@qe[1] & 4) || (@qe[1] & 8192)))
            set .@preview,1;
        addtimer 1000, strnpcinfo(0)+"::OnEnd";
        while(1) {
            switch(select(" ~ Purchase ^0055FF"+getitemname(.@q[0])+"^000000:"+((.@preview && !@qe[7])?" ~ Preview...":"")+": ~ ^777777Cancel^000000")) {
            case 1:
                if (@qe[0]) {
                    mes "[Quest Shop]";
                    mes "You're missing one or more quest requirements.";
                    close;
                }
                if (!checkweight(.@q[0],.@q[2])) {
                    mes "[Quest Shop]";
                    mes "^FF0000You need "+(((.@q[2]*getiteminfo(.@q[0],6))+Weight-MaxWeight)/10)+" additional weight capacity to complete this trade.^000000";
                    close;
                }
                if (.@q[4]) set Zeny, Zeny-(.@q[4]*.@q[1]);
                if (.@q[5]) setd .Points$[0], getd(.Points$[0])-(.@q[5]*.@q[1]);
                if (.@q[6]) for(set .@i,6; .@i<getarraysize(.@q); set .@i,.@i+2)
                    delitem .@q[.@i],.@q[.@i+1]*.@q[1];
                getitem .@q[0],.@q[2];
                if (.Announce) announce strcharinfo(0)+" has created "+((.@q[2] > 1)?.@q[2]+"x "+getitemname(.@q[0]):callfunc("F_InsertArticle",getitemname(.@q[0])))+"!",0;
                specialeffect2 EF_FLOWERLEAF;
                close;
            case 2:
                setarray @qe[3], getlook(LOOK_HEAD_BOTTOM), getlook(LOOK_HEAD_TOP), getlook(LOOK_HEAD_MID), getlook(LOOK_ROBE), 1;
                if ((@qe[1] & 1) || (@qe[1] & 4096)) changelook LOOK_HEAD_BOTTOM, @qe[2];
                else if ((@qe[1] & 256) || (@qe[1] & 1024)) changelook LOOK_HEAD_TOP, @qe[2];
                else if ((@qe[1] & 512) || (@qe[1] & 2048)) changelook LOOK_HEAD_MID, @qe[2];
                else if ((@qe[1] & 4) || (@qe[1] & 8192)) changelook LOOK_ROBE, @qe[2];
                break;
            case 3:
                close;
            }
        }
    
    OnEnd:
        if (@qe[7]) {
            changelook LOOK_HEAD_BOTTOM, @qe[3];
            changelook LOOK_HEAD_TOP, @qe[4];
            changelook LOOK_HEAD_MID, @qe[5];
            changelook LOOK_ROBE, @qe[6];
        }
        deletearray @qe[0],8;
        end;
    
    function Add {
        if (getitemname(getarg(1)) == "null") {
            debugmes "Quest reward #"+getarg(1)+" invalid (skipped).";
            return;
        }
        setarray .@j[0],getarg(2),getarg(3),getarg(4);
        for(set .@i,5; .@i<getargcount(); set .@i,.@i+2) {
            if (getitemname(getarg(.@i)) == "null") {
                debugmes "Quest requirement #"+getarg(.@i)+" invalid (skipped).";
                return;
            } else
                setarray .@j[.@i-2],getarg(.@i),getarg(.@i+1);
        }
        copyarray getd(".q_"+getarg(1)+"[0]"),.@j[0],getarraysize(.@j);
        npcshopadditem "qshop"+getarg(0),getarg(1),((.ShowZeny)?getarg(3):0);
        return;
    }
    
    function Chk {
        if (getarg(0) < getarg(1)) {
            set @qe[0],1;
            return "^FF0000";
        } else
            return "^00FF00";
    }
    
    function Slot {
        set .@s$,getitemname(getarg(0));
        switch(.ShowSlot) {
            case 1: if (!getitemslots(getarg(0))) return .@s$;
            case 2: if (getiteminfo(getarg(0),2) == 4 || getiteminfo(getarg(0),2) == 5) return .@s$+" ["+getitemslots(getarg(0))+"]";
            default: return .@s$;
        }
    }
    }
    
    function    script    qshop3    {
        deletearray @i[0],getarraysize(@i);
        for(set .@i,0; .@i<getargcount(); set .@i,.@i+1)
            set @i[.@i],getarg(.@i);
        doevent "quest_shop3::OnMenu";
        end;
    }
    
    
    // Dummy shop data -- copy as needed.
    //============================================================
    -    shop    qshop1    -1,909:-1
    -    shop    qshop2    -1,909:-1
    -    shop    qshop3    -1,909:-1
    -    shop    qshop4    -1,909:-1
    -    shop    qshop5    -1,909:-1 

    Found the cause of it.. kindly delete the topic. thanks

  2. Hi i would just like to know some answers regarding of the following questions.

    1. Tatacho card on my server its effect is earth instead of neutral but did some research regarding this and it says on iro, rms, ro doddler that its neutral. search in rathena and the codes for the effect is earth so which is it?

    2. Spiral / Clashing Pierce skill. We probably all know that its supposed to be a any type of spear and two handed sword was implemented on renewal state but then again it says that its allowed to wear a two hand sword even if its pre-renewal.

    3. Whitesmith / Mastersmith skill(no idea for this char nvr used) i only know a few knowledgw regarding this character, i would just like to know if used by meltdown and maximum thrust does it stack on the skill cart ram?? i know if melee it could destroy some equipments but not with skill. no knowledge about this one kindly help

  3. just a quick question im very sorry as well if im noob.. i don't have any background experience on scripting but im still learning each and everytime..

     

    i would justl ike to know how would i be able to make 5 npc out of this instead of 5 is to 1 something like that.. here's my script

    
    //===== rAthena Script =======================================
    //= Euphy's Quest Shop
    //===== By: ==================================================
    //= Euphy
    //===== Current Version: =====================================
    //= 1.6b
    //===== Compatible With: =====================================
    //= rAthena SVN r16862+
    //===== Description: =========================================
    //= A dynamic quest shop based on Lunar's, with easier config.
    //= Includes support for multiple shops & cashpoints.
    //= Item Preview script by ToastOfDoom.
    //===== Additional Comments: =================================
    //= 1.0 Initial script.
    //= 1.2 Added category support.
    //= 1.3 More options and fixes.
    //= 1.4 Added debug settings.
    //= 1.5 Replaced categories with shop IDs.
    //= 1.6 Added support for purchasing stackables.
    //= 1.6a Added support for previewing costumes and robes.
    //= 1.6b Added 'disable_items' command.
    //============================================================
    
    // Shop NPCs -- supplying no argument displays entire menu.
    //    callfunc "qshopd"{,<shop ID>{,<shop ID>{,...}}};
    //============================================================
    prontera,101,81,4    script    Consumables    856,{ callfunc "qshopd"; }
    
    
    // Script Core
    //============================================================
    -    script    quest_shopd    -1,{
    function Add; function Chk; function Slot; function A_An;
    OnInit:
        freeloop(1);
    
    // -----------------------------------------------------------
    //  Basic shop settings.
    // -----------------------------------------------------------
    
        set .Announce,0;    // Announce quest completion? (1: yes / 0: no)
        set .ShowSlot,1;    // Show item slots? (2: all equipment / 1: if slots > 0 / 0: never)
        set .ShowID,0;      // Show item IDs? (1: yes / 0: no)
        set .ShowZeny,1;    // Show Zeny cost, if any? (1: yes / 0: no)
        set .MaxStack,100;    // Max number of quest items purchased at one time.
    
    // -----------------------------------------------------------
    //  Points variable -- optional quest requirement.
    //    setarray .Points$[0],"<variable name>","<display name>";
    // -----------------------------------------------------------
    
        setarray .Points$[0],"#CASHPOINTS","Cash Points";
    
    // -----------------------------------------------------------
    //  Shop IDs -- to add shops, copy dummy data at bottom of file.
    //    setarray .Shops$[1],"<Shop 1>","<Shop 2>"{,...};
    // -----------------------------------------------------------
    
    //    setarray .Shops$[1],"Weapon Donates","Armor Donates","Donate Cards";
        setarray .Shops$[1],"Consumables";
    
    // -----------------------------------------------------------
    //  Quest items -- do NOT use a reward item more than once!
    //    Add(<shop ID>,<reward ID>,<reward amount>,
    //        <Zeny cost>,<point cost>,
    //        <required item ID>,<required item amount>{,...});
    // -----------------------------------------------------------
    
        Add(1,14003,1,0,0,7179,3);
        Add(1,13696,1,0,0,7179,30);
        Add(1,12901,1,0,0,7179,5);
        Add(1,12909,1,0,0,7179,5);
        Add(1,12213,1,0,0,7179,100);
        Add(1,6127,1,0,0,7179,10);
        Add(1,7776,1,0,0,7179,30);
        Add(1,13710,1,0,0,7179,250);
        Add(1,12029,2,0,0,7179,1);
        Add(1,13989,1,0,0,7179,2);
        Add(1,17070,1,0,0,7179,50);
        Add(1,13973,1,0,0,7179,15);
        Add(1,13718,1,0,0,7179,5);
        Add(1,14287,1,0,0,7179,2);
        Add(1,14288,1,0,0,7179,2);
        Add(1,13547,1,0,0,7179,5);
        Add(1,14003,1,0,0,7179,3);
        Add(1,12922,1,0,0,7179,5);
        Add(1,12913,1,0,0,7179,5);
        Add(1,12914,1,0,0,7179,5);
        Add(1,12917,1,0,0,7179,5);
        Add(1,12916,1,0,0,7179,5);
        Add(1,12910,1,0,0,7179,5);
        Add(1,13553,1,0,0,7179,5);
        Add(1,12903,1,0,0,7179,30);
        Add(1,12904,1,0,0,7179,30);
        Add(1,12905,1,0,0,7179,30);
        Add(1,12906,1,0,0,7179,30);
        Add(1,12907,1,0,0,7179,30);
        Add(1,12908,1,0,0,7179,30);
        Add(1,14284,1,0,0,7179,20);
        Add(1,14285,1,0,0,7179,20);
        Add(1,14286,1,0,0,7179,20);
    
    
    // -----------------------------------------------------------
    
        freeloop(0);
        set .menu$,"";
        for(set .@i,1; .@i<=getarraysize(.Shops$); set .@i,.@i+1) {
            set .menu$, .menu$+.Shops$[.@i]+":";
            npcshopdelitem "qshopd"+.@i,909;
        }
        end;
    
    OnMenu:
        set .@size, getarraysize(@i);
        if (!.@size) set .@i, select(.menu$);
        else if (.@size == 1) set .@i, @i[0];
        else {
            for(set .@j,0; .@j<.@size; set .@j,.@j+1)
                set .@menu$, .@menu$+.Shops$[@i[.@j]]+":";
            set .@i, @i[select(.@menu$)-1];
        }
        deletearray @i[0],getarraysize(@i);
        if (.Shops$[.@i] == "") {
            message strcharinfo(0),"An error has occurred.";
            end;
        }
        dispbottom "Select one item at a time.";
        callshop "qshopd"+.@i,1;
        npcshopattach "qshopd"+.@i;
        end;
    
    OnBuyItem:
        // .@q[] : RewardID, BoughtAmt, RewardAmt, BaseAmt, ReqZeny, ReqPts, { ReqItem, ReqAmt, ... }
        setarray .@q[0],@bought_nameid[0],((@bought_quantity[0] > .MaxStack)?.MaxStack:@bought_quantity[0]);
        copyarray .@q[3],getd(".q_"+.@q[0]+"[0]"),getarraysize(getd(".q_"+.@q[0]));
        set .@q[2],.@q[1]*.@q[3];
        if (!.@q[2] || .@q[2] > 30000) {
            message strcharinfo(0),"You can't purchase that many "+getitemname(.@q[0])+".";
            end;
        }
        mes "[Quest Shop]";
        mes "Reward: ^0055FF"+((.@q[2] > 1)?.@q[2]+"x ":"")+Slot(.@q[0])+"^000000";
        mes "Requirements:";
        disable_items;
        if (.@q[4]) mes " > "+Chk(Zeny,.@q[4]*.@q[1])+(.@q[4]*.@q[1])+" Zeny^000000";
        if (.@q[5]) mes " > "+Chk(getd(.Points$[0]),.@q[5]*.@q[1])+(.@q[5]*.@q[1])+" "+.Points$[1]+" ("+getd(.Points$[0])+"/"+(.@q[5]*.@q[1])+")^000000";
        if (.@q[6]) for(set .@i,6; .@i<getarraysize(.@q); set .@i,.@i+2)
            mes " > "+Chk(countitem(.@q[.@i]),.@q[.@i+1]*.@q[1])+((.ShowID)?"{"+.@q[.@i]+"} ":"")+Slot(.@q[.@i])+" ("+countitem(.@q[.@i])+"/"+(.@q[.@i+1]*.@q[1])+")^000000";
        next;
        setarray @qe[1], getiteminfo(.@q[0],5), getiteminfo(.@q[0],11);
        if (@qe[2] > 0 && ((@qe[1] & 1) || (@qe[1] & 256) || (@qe[1] & 512) || (@qe[1] & 1024) || (@qe[1] & 2048) || (@qe[1] & 4096) || (@qe[1] & 4) || (@qe[1] & 8192)))
            set .@preview,1;
        addtimer 1000, strnpcinfo(0)+"::OnEnd";
        while(1) {
            switch(select(" ~ Purchase ^0055FF"+getitemname(.@q[0])+"^000000:"+((.@preview && !@qe[7])?" ~ Preview...":"")+": ~ ^777777Cancel^000000")) {
            case 1:
                if (@qe[0]) {
                    mes "[Quest Shop]";
                    mes "You're missing one or more quest requirements.";
                    close;
                }
                if (!checkweight(.@q[0],.@q[2])) {
                    mes "[Quest Shop]";
                    mes "^FF0000You need "+(((.@q[2]*getiteminfo(.@q[0],6))+Weight-MaxWeight)/10)+" additional weight capacity to complete this trade.^000000";
                    close;
                }
                if (.@q[4]) set Zeny, Zeny-(.@q[4]*.@q[1]);
                if (.@q[5]) setd .Points$[0], getd(.Points$[0])-(.@q[5]*.@q[1]);
                if (.@q[6]) for(set .@i,6; .@i<getarraysize(.@q); set .@i,.@i+2)
                    delitem .@q[.@i],.@q[.@i+1]*.@q[1];
                getitem .@q[0],.@q[2];
                if (.Announce) announce strcharinfo(0)+" has created "+((.@q[2] > 1)?.@q[2]+"x "+getitemname(.@q[0]):A_An(getitemname(.@q[0])))+"!",0;
                specialeffect2 EF_FLOWERLEAF;
                close;
            case 2:
                setarray @qe[3], getlook(LOOK_HEAD_BOTTOM), getlook(LOOK_HEAD_TOP), getlook(LOOK_HEAD_MID), getlook(LOOK_ROBE), 1;
                if ((@qe[1] & 1) || (@qe[1] & 4096)) changelook LOOK_HEAD_BOTTOM, @qe[2];
                else if ((@qe[1] & 256) || (@qe[1] & 1024)) changelook LOOK_HEAD_TOP, @qe[2];
                else if ((@qe[1] & 512) || (@qe[1] & 2048)) changelook LOOK_HEAD_MID, @qe[2];
                else if ((@qe[1] & 4) || (@qe[1] & 8192)) changelook LOOK_ROBE, @qe[2];
                break;
            case 3:
                close;
            }
        }
    
    OnEnd:
        if (@qe[7]) {
            changelook LOOK_HEAD_BOTTOM, @qe[3];
            changelook LOOK_HEAD_TOP, @qe[4];
            changelook LOOK_HEAD_MID, @qe[5];
            changelook LOOK_ROBE, @qe[6];
        }
        deletearray @qe[0],8;
        end;
    
    function Add {
        if (getitemname(getarg(1)) == "null") {
            debugmes "Quest reward #"+getarg(1)+" invalid (skipped).";
            return;
        }
        setarray .@j[0],getarg(2),getarg(3),getarg(4);
        for(set .@i,5; .@i<getargcount(); set .@i,.@i+2) {
            if (getitemname(getarg(.@i)) == "null") {
                debugmes "Quest requirement #"+getarg(.@i)+" invalid (skipped).";
                return;
            } else
                setarray .@j[.@i-2],getarg(.@i),getarg(.@i+1);
        }
        copyarray getd(".q_"+getarg(1)+"[0]"),.@j[0],getarraysize(.@j);
        npcshopadditem "qshopd"+getarg(0),getarg(1),((.ShowZeny)?getarg(3):0);
        return;
    }
    
    function Chk {
        if (getarg(0) < getarg(1)) {
            set @qe[0],1;
            return "^FF0000";
        } else
            return "^00FF00";
    }
    
    function Slot {
        set .@s$,getitemname(getarg(0));
        switch(.ShowSlot) {
            case 1: if (!getitemslots(getarg(0))) return .@s$;
            case 2: if (getiteminfo(getarg(0),2) == 4 || getiteminfo(getarg(0),2) == 5) return .@s$+" ["+getitemslots(getarg(0))+"]";
            default: return .@s$;
        }
    }
    
    function A_An {
        setarray .@A$[0],"a","e","i","o","u";
        set .@B$, "_"+getarg(0);
        for(set .@i,0; .@i<5; set .@i,.@i+1)
            if (compare(.@B$,"_"+.@A$[.@i])) return "an "+getarg(0);
        return "a "+getarg(0);
    }
    }
    
    function    script    qshopd    {
        deletearray @i[0],getarraysize(@i);
        for(set .@i,0; .@i<getargcount(); set .@i,.@i+1)
            set @i[.@i],getarg(.@i);
        doevent "quest_shopd::OnMenu";
        end;
    }
    
    
    // Dummy shop data -- copy as needed.
    //============================================================
    -    shop    qshopd1    -1,909:-1
    -    shop    qshopd2    -1,909:-1
    -    shop    qshopd3    -1,909:-1
    -    shop    qshopd4    -1,909:-1
    -    shop    qshopd5    -1,909:-1
    
  4. how could i make this close to official?? like a character must quest this.. only people who have done the quest could go in?... bcoz on my server only 1 person was able to do the quest but alot of my players was able to get in...

  5. Hello !.. i would just like to ask how would i be able to add a Taekwon Kid, Master and a Soul linker on my jobchange.txt??

    //===== rAthena Script =======================================
    //= Job Master
    //===== By: ==================================================
    //= Euphy
    //===== Current Version: =====================================
    //= 1.4
    //===== Compatible With: =====================================
    //= rAthena Project
    //===== Description: =========================================
    //= A fully functional job changer.
    //===== Additional Comments: =================================
    //= 1.0 Initial script.
    //= 1.1 Fixed reset on Baby job change.
    //= 1.2 Added Expanded Super Novice support and initial Kagerou/Oboro support.
    //= 1.3 Kagerou/Oboro added.
    //= 1.4 Rebellion added.
    //============================================================
     
    prontera,153,193,6    script    Job Master    123,{
    function Job_Menu;
     
        set .@eac, eaclass();
        mes "[Job Master]";
        if ( .@eac&EAJL_THIRD && .@eac&EAJ_THIRDMASK == .@eac && upper != 2 ) {
            mes "Switch to third trans class?";
            next;
            Job_Menu(roclass(.@eac&EAJ_UPPERMASK|EAJL_UPPER|EAJL_THIRD));
            close;
        }
        if (Class > 4049) {
            mes "No more jobs are available.";
            close;
        }
        if (checkfalcon() || checkcart() || checkriding() || ismounting()) {
            mes "Please remove your "+((checkfalcon())?"falcon":"")+((checkcart())?"cart":"")+((checkriding())?"Peco":"")+((ismounting())?"mount":"")+" before proceeding.";
            close;
        }
        if (.SkillPointCheck && SkillPoint) {
            mes "Please use all your skill points before proceeding.";
            close;
        }
     
        set .@i, ((.ThirdClass)?roclass(.@eac&EAJ_UPPERMASK):Class);
        if (.@i > 6 && .@i < 22) {
            if (BaseLevel < .Rebirth[0] || JobLevel < .Rebirth[1]) {
                set .@blvl, .Rebirth[0]-BaseLevel; set .@jlvl, .Rebirth[1]-JobLevel;
                mes "You need "+((.@blvl>0)?.@blvl+" more base levels "+((.@jlvl>0)?"/ ":""):"")+((.@jlvl>0)?.@jlvl+" more job levels ":"")+"to continue.";
                close;
            }
            if (Class > 21) {
                mes "Switch to third class?";
                next;
                Job_Menu(roclass(.@eac|EAJL_THIRD));
                close;
            }
            while(1) {
                mes "Select an option.";
                next;
                set .@i, select(" ~ ^0055FF"+ jobname(roclass(.@eac|EAJL_UPPER)) +"^000000:"+((.ThirdClass)?" ~ ^FF0000Third Class^000000":"")+": ~ ^777777Cancel^000000");
                if (.@i==3) close;
                mes "[Job Master]";
                mes "Are you sure?";
                next;
                Job_Menu(((.@i==1)?roclass(.@eac|EAJL_UPPER):roclass(.@eac|EAJL_THIRD)));
                mes "[Job Master]";
            }
        }
        set .@j1, roclass(.@eac|EAJL_2_1); set .@j2,roclass(.@eac|EAJL_2_2);
        if ((.@eac&EAJ_UPPERMASK) == EAJ_SUPER_NOVICE) setarray .@exp[0],roclass(.@eac|EAJL_THIRD),99;
        if (Class == Job_Ninja || Class == Job_Gunslinger) setarray .@exp[0],.@j1,70;
        if (.@exp[0] && .SecondExpanded) {
            if (BaseLevel < .Rebirth[0] || JobLevel < .@exp[1]) {
                set .@blvl, .Rebirth[0]-BaseLevel; set .@jlvl, .@exp[1]-JobLevel;
                mes "You need "+((.@blvl>0)?.@blvl+" more base levels "+((.@jlvl>0)?"/ ":""):"")+((.@jlvl>0)?.@jlvl+" more job levels ":"")+"to continue.";
                close;
            }
            mes "Switch to "+jobname(.@exp[0])+"?";
            next;
            Job_Menu(.@exp[0]);
            close;
        }
        if (.@eac&EAJL_2)
            if (.@eac&(EAJL_UPPER|EAJL_BABY) || roclass(.@eac|EAJL_UPPER) == -1) {
                mes "No more jobs are available.";
                close;
            }
        if ((.@eac&EAJ_BASEMASK) == EAJ_NOVICE) {
            if (JobLevel < .JobReq[0])
                mes "A job level of "+.JobReq[0]+" is required to change into the 1st Class.";
            else if (Class == 4001 && .LastJob && lastJob) {
                mes "Switch classes now?";
                next;
                Job_Menu(roclass((eaclass(lastJob)&EAJ_BASEMASK)|EAJL_UPPER));
            } else switch(Class) {
                case 0: Job_Menu(1,2,3,4,5,6,23,4046,24,25,4023);
                case 4001: Job_Menu(4002,4003,4004,4005,4006,4007);
                case 4023: Job_Menu(4024,4025,4026,4027,4028,4029,4045);
                default: mes "An error has occurred."; break;
            }
            close;
        }
        if (roclass(.@eac|EAJL_2_1) == -1 || roclass(.@eac|EAJL_2_2) == -1)
            mes "No more jobs are available.";
        else if (!(.@eac&EAJL_2) && JobLevel < .JobReq[1])
            mes "A job level of "+.JobReq[1]+" is required to change into the 2nd Class.";
        else if (.LastJob && lastJob && (.@eac&EAJL_UPPER)) {
            mes "Switch classes now?";
            next;
            Job_Menu(lastJob+4001);
        } else
            Job_Menu(.@j1,.@j2);
        close;
     
    function Job_Menu {
        while(1) {
            if (getargcount() > 1) {
                mes "Select a job.";
                set .@menu$,"";
                for(set .@i,0; .@i<getargcount(); set .@i,.@i+1)
                    set .@menu$, .@menu$+" ~ "+jobname(getarg(.@i))+":";
                set .@menu$, .@menu$+" ~ ^777777Cancel^000000";
                next;
                set .@i, getarg(select(.@menu$)-1,0);
                if (!.@i) close;
                if ((.@i == 23 || .@i == 4045) && BaseLevel < .SNovice) {
                    mes "[Job Master]";
                    mes "A base level of "+.SNovice+" is required to turn into a "+jobname(.@i)+".";
                    close;
                }
                mes "[Job Master]";
                mes "Are you sure?";
                next;
            } else
                set .@i, getarg(0);
            if (select(" ~ Change into ^0055FF"+jobname(.@i)+"^000000 class: ~ ^777777"+((getargcount() > 1)?"Go back":"Cancel")+"^000000") == 1) {
                mes "[Job Master]";
                mes "You are now "+callfunc("F_InsertArticle",jobname(.@i))+"!";
                if (.@i==4001 && .LastJob) set lastJob, Class;
                jobchange .@i;
                if (.@i==4001 || .@i==4023) resetlvl(1);
                specialeffect2 EF_ANGEL2; specialeffect2 EF_ELECTRIC;
                if (.Platinum) callsub Get_Platinum;
                close;
            }
            if (getargcount() == 1) return;
            mes "[Job Master]";
        }
        end;
    }
     
    Get_Platinum:
        skill 142,1,0;
        switch(BaseClass) {
            case 0: if (Class !=23) skill 143,1,0; break;
            case 1: skill 144,1,0; skill 145,1,0; skill 146,1,0; break;
            case 2: skill 157,1,0; break;
            case 3: skill 147,1,0; skill 148,1,0; break;
            case 4: skill 156,1,0; break;
            case 5: skill 153,1,0; skill 154,1,0; skill 155,1,0; break;
            case 6: skill 149,1,0; skill 150,1,0; skill 151,1,0; skill 152,1,0; break;
            default: break;
        }
        switch(BaseJob) {
            case 7: skill 1001,1,0; break;
            case 8: skill 1014,1,0; break;
            case 9: skill 1006,1,0; break;
            case 10: skill 1012,1,0; skill 1013,1,0; break;
            case 11: skill 1009,1,0; break;
            case 12: skill 1003,1,0; skill 1004,1,0; break;
            case 14: skill 1002,1,0; break;
            case 15: skill 1015,1,0; skill 1016,1,0; break;
            case 16: skill 1007,1,0; skill 1008,1,0; skill 1017,1,0; skill 1018,1,0; skill 1019,1,0; break;
            case 17: skill 1005,1,0; break;
            case 18: skill 238,1,0; break;
            case 19: skill 1010,1,0; break;
            case 20: skill 1011,1,0; break;
            default: break;
        }
        return;
     
    OnInit:
        setarray .Rebirth[0],99,50;    // Minimum base level, job level to rebirth OR change to third class
        setarray .JobReq[0],10,40;    // Minimum job level to turn into 1st class, 2nd class
        set .ThirdClass,0;        // Enable third classes? (1: yes / 0: no)
        set .SecondExpanded,0;        // Enable new expanded second classes: Ex. Super Novice, Kagerou/Oboro, Rebellion? (1: yes / 0: no)
        set .SNovice,45;        // Minimum base level to turn into Super Novice
        set .LastJob,1;            // Enforce linear class changes? (1: yes / 0: no)
        set .SkillPointCheck,0;        // Force player to use up all skill points? (1: yes / 0: no)
        set .Platinum,1;        // Get platinum skills automatically? (1: yes / 0: no)
        end;
    }
    

    here's the script im using. thanks alot for helping :D

  6. //===== rAthena Script =======================================
    //= Euphy's Quest Shop
    //===== By: ==================================================
    //= Euphy
    //===== Current Version: =====================================
    //= 1.6b
    //===== Compatible With: =====================================
    //= rAthena SVN r16862+
    //===== Description: =========================================
    //= A dynamic quest shop based on Lunar's, with easier config.
    //= Includes support for multiple shops & cashpoints.
    //= Item Preview script by ToastOfDoom.
    //===== Additional Comments: =================================
    //= 1.0 Initial script.
    //= 1.2 Added category support.
    //= 1.3 More options and fixes.
    //= 1.4 Added debug settings.
    //= 1.5 Replaced categories with shop IDs.
    //= 1.6 Added support for purchasing stackables.
    //= 1.6a Added support for previewing costumes and robes.
    //= 1.6b Added 'disable_items' command.
    //============================================================
    
    // Shop NPCs -- supplying no argument displays entire menu.
    //    callfunc "qshopd"{,<shop ID>{,<shop ID>{,...}}};
    //============================================================
    prontera,101,81,4    script    Consumables    856,{ callfunc "qshopd"; }
    
    
    // Script Core
    //============================================================
    -    script    quest_shopd    -1,{
    function Add; function Chk; function Slot; function A_An;
    OnInit:
        freeloop(1);
    
    // -----------------------------------------------------------
    //  Basic shop settings.
    // -----------------------------------------------------------
    
        set .Announce,0;    // Announce quest completion? (1: yes / 0: no)
        set .ShowSlot,1;    // Show item slots? (2: all equipment / 1: if slots > 0 / 0: never)
        set .ShowID,0;      // Show item IDs? (1: yes / 0: no)
        set .ShowZeny,0;    // Show Zeny cost, if any? (1: yes / 0: no)
        set .MaxStack,100;    // Max number of quest items purchased at one time.
    
    // -----------------------------------------------------------
    //  Points variable -- optional quest requirement.
    //    setarray .Points$[0],"<variable name>","<display name>";
    // -----------------------------------------------------------
    
        setarray .Points$[0],"#CASHPOINTS","Cash Points";
    
    // -----------------------------------------------------------
    //  Shop IDs -- to add shops, copy dummy data at bottom of file.
    //    setarray .Shops$[1],"<Shop 1>","<Shop 2>"{,...};
    // -----------------------------------------------------------
    
    //    setarray .Shops$[1],"Weapon Donates","Armor Donates","Donate Cards";
        setarray .Shops$[1],"Consumables";
    
    // -----------------------------------------------------------
    //  Quest items -- do NOT use a reward item more than once!
    //    Add(<shop ID>,<reward ID>,<reward amount>,
    //        <Zeny cost>,<point cost>,
    //        <required item ID>,<required item amount>{,...});
    // -----------------------------------------------------------
    
        Add(1,14003,1,0,0,7179,3);
        Add(1,13696,1,0,0,7179,30);
        Add(1,12901,1,0,0,7179,5);
        Add(1,12909,1,0,0,7179,5);
        Add(1,12213,1,0,0,7179,100);
        Add(1,6127,1,0,0,7179,10);
        Add(1,7776,1,0,0,7179,30);
        Add(1,13710,1,0,0,7179,250);
        Add(1,12029,2,0,0,7179,1);
        Add(1,13989,1,0,0,7179,2);
        Add(1,17070,1,0,0,7179,50);
        Add(1,13973,1,0,0,7179,15);
        Add(1,13718,1,0,0,7179,5);
        Add(1,14287,1,0,0,7179,2);
        Add(1,14288,1,0,0,7179,2);
        Add(1,13547,1,0,0,7179,5);
        Add(1,14003,1,0,0,7179,3);
        Add(1,12922,1,0,0,7179,5);
        Add(1,12913,1,0,0,7179,5);
        Add(1,12914,1,0,0,7179,5);
        Add(1,12917,1,0,0,7179,5);
        Add(1,12916,1,0,0,7179,5);
        Add(1,12910,1,0,0,7179,5);
        Add(1,13553,1,0,0,7179,5);
        Add(1,12903,1,0,0,7179,30);
        Add(1,12904,1,0,0,7179,30);
        Add(1,12905,1,0,0,7179,30);
        Add(1,12906,1,0,0,7179,30);
        Add(1,12907,1,0,0,7179,30);
        Add(1,12908,1,0,0,7179,30);
        Add(1,14284,1,0,0,7179,20);
        Add(1,14285,1,0,0,7179,20);
        Add(1,14286,1,0,0,7179,20);
    
    
    
    
    // -----------------------------------------------------------
    
        freeloop(0);
        set .menu$,"";
        for(set .@i,1; .@i<=getarraysize(.Shops$); set .@i,.@i+1) {
            set .menu$, .menu$+.Shops$[.@i]+":";
            npcshopdelitem "qshopd"+.@i,909;
        }
        end;
    
    OnMenu:
        set .@size, getarraysize(@i);
        if (!.@size) set .@i, select(.menu$);
        else if (.@size == 1) set .@i, @i[0];
        else {
            for(set .@j,0; .@j<.@size; set .@j,.@j+1)
                set .@menu$, .@menu$+.Shops$[@i[.@j]]+":";
            set .@i, @i[select(.@menu$)-1];
        }
        deletearray @i[0],getarraysize(@i);
        if (.Shops$[.@i] == "") {
            message strcharinfo(0),"An error has occurred.";
            end;
        }
        dispbottom "Select one item at a time.";
        callshop "qshopd"+.@i,1;
        npcshopattach "qshopd"+.@i;
        end;
    
    OnBuyItem:
        // .@q[] : RewardID, BoughtAmt, RewardAmt, BaseAmt, ReqZeny, ReqPts, { ReqItem, ReqAmt, ... }
        setarray .@q[0],@bought_nameid[0],((@bought_quantity[0] > .MaxStack)?.MaxStack:@bought_quantity[0]);
        copyarray .@q[3],getd(".q_"+.@q[0]+"[0]"),getarraysize(getd(".q_"+.@q[0]));
        set .@q[2],.@q[1]*.@q[3];
        if (!.@q[2] || .@q[2] > 30000) {
            message strcharinfo(0),"You can't purchase that many "+getitemname(.@q[0])+".";
            end;
        }
        mes "[Quest Shop]";
        mes "Reward: ^0055FF"+((.@q[2] > 1)?.@q[2]+"x ":"")+Slot(.@q[0])+"^000000";
        mes "Requirements:";
        disable_items;
        if (.@q[4]) mes " > "+Chk(Zeny,.@q[4]*.@q[1])+(.@q[4]*.@q[1])+" Zeny^000000";
        if (.@q[5]) mes " > "+Chk(getd(.Points$[0]),.@q[5]*.@q[1])+(.@q[5]*.@q[1])+" "+.Points$[1]+" ("+getd(.Points$[0])+"/"+(.@q[5]*.@q[1])+")^000000";
        if (.@q[6]) for(set .@i,6; .@i<getarraysize(.@q); set .@i,.@i+2)
            mes " > "+Chk(countitem(.@q[.@i]),.@q[.@i+1]*.@q[1])+((.ShowID)?"{"+.@q[.@i]+"} ":"")+Slot(.@q[.@i])+" ("+countitem(.@q[.@i])+"/"+(.@q[.@i+1]*.@q[1])+")^000000";
        next;
        setarray @qe[1], getiteminfo(.@q[0],5), getiteminfo(.@q[0],11);
        if (@qe[2] > 0 && ((@qe[1] & 1) || (@qe[1] & 256) || (@qe[1] & 512) || (@qe[1] & 1024) || (@qe[1] & 2048) || (@qe[1] & 4096) || (@qe[1] & 4) || (@qe[1] & 8192)))
            set .@preview,1;
        addtimer 1000, strnpcinfo(0)+"::OnEnd";
        while(1) {
            switch(select(" ~ Purchase ^0055FF"+getitemname(.@q[0])+"^000000:"+((.@preview && !@qe[7])?" ~ Preview...":"")+": ~ ^777777Cancel^000000")) {
            case 1:
                if (@qe[0]) {
                    mes "[Quest Shop]";
                    mes "You're missing one or more quest requirements.";
                    close;
                }
                if (!checkweight(.@q[0],.@q[2])) {
                    mes "[Quest Shop]";
                    mes "^FF0000You need "+(((.@q[2]*getiteminfo(.@q[0],6))+Weight-MaxWeight)/10)+" additional weight capacity to complete this trade.^000000";
                    close;
                }
                if (.@q[4]) set Zeny, Zeny-(.@q[4]*.@q[1]);
                if (.@q[5]) setd .Points$[0], getd(.Points$[0])-(.@q[5]*.@q[1]);
                if (.@q[6]) for(set .@i,6; .@i<getarraysize(.@q); set .@i,.@i+2)
                    delitem .@q[.@i],.@q[.@i+1]*.@q[1];
                getitem .@q[0],.@q[2];
                if (.Announce) announce strcharinfo(0)+" has created "+((.@q[2] > 1)?.@q[2]+"x "+getitemname(.@q[0]):A_An(getitemname(.@q[0])))+"!",0;
                specialeffect2 EF_FLOWERLEAF;
                close;
            case 2:
                setarray @qe[3], getlook(LOOK_HEAD_BOTTOM), getlook(LOOK_HEAD_TOP), getlook(LOOK_HEAD_MID), getlook(LOOK_ROBE), 1;
                if ((@qe[1] & 1) || (@qe[1] & 4096)) changelook LOOK_HEAD_BOTTOM, @qe[2];
                else if ((@qe[1] & 256) || (@qe[1] & 1024)) changelook LOOK_HEAD_TOP, @qe[2];
                else if ((@qe[1] & 512) || (@qe[1] & 2048)) changelook LOOK_HEAD_MID, @qe[2];
                else if ((@qe[1] & 4) || (@qe[1] & 8192)) changelook LOOK_ROBE, @qe[2];
                break;
            case 3:
                close;
            }
        }
    
    OnEnd:
        if (@qe[7]) {
            changelook LOOK_HEAD_BOTTOM, @qe[3];
            changelook LOOK_HEAD_TOP, @qe[4];
            changelook LOOK_HEAD_MID, @qe[5];
            changelook LOOK_ROBE, @qe[6];
        }
        deletearray @qe[0],8;
        end;
    
    function Add {
        if (getitemname(getarg(1)) == "null") {
            debugmes "Quest reward #"+getarg(1)+" invalid (skipped).";
            return;
        }
        setarray .@j[0],getarg(2),getarg(3),getarg(4);
        for(set .@i,5; .@i<getargcount(); set .@i,.@i+2) {
            if (getitemname(getarg(.@i)) == "null") {
                debugmes "Quest requirement #"+getarg(.@i)+" invalid (skipped).";
                return;
            } else
                setarray .@j[.@i-2],getarg(.@i),getarg(.@i+1);
        }
        copyarray getd(".q_"+getarg(1)+"[0]"),.@j[0],getarraysize(.@j);
        npcshopadditem "qshopd"+getarg(0),getarg(1),((.ShowZeny)?getarg(3):0);
        return;
    }
    
    function Chk {
        if (getarg(0) < getarg(1)) {
            set @qe[0],1;
            return "^FF0000";
        } else
            return "^00FF00";
    }
    
    function Slot {
        set .@s$,getitemname(getarg(0));
        switch(.ShowSlot) {
            case 1: if (!getitemslots(getarg(0))) return .@s$;
            case 2: if (getiteminfo(getarg(0),2) == 4 || getiteminfo(getarg(0),2) == 5) return .@s$+" ["+getitemslots(getarg(0))+"]";
            default: return .@s$;
        }
    }
    
    function A_An {
        setarray .@A$[0],"a","e","i","o","u";
        set .@B$, "_"+getarg(0);
        for(set .@i,0; .@i<5; set .@i,.@i+1)
            if (compare(.@B$,"_"+.@A$[.@i])) return "an "+getarg(0);
        return "a "+getarg(0);
    }
    }
    
    function    script    qshopd    {
        deletearray @i[0],getarraysize(@i);
        for(set .@i,0; .@i<getargcount(); set .@i,.@i+1)
            set @i[.@i],getarg(.@i);
        doevent "quest_shopd::OnMenu";
        end;
    }
    
    
    // Dummy shop data -- copy as needed.
    //============================================================
    -    shop    qshopd1    -1,909:-1
    -    shop    qshopd2    -1,909:-1
    -    shop    qshopd3    -1,909:-1
    -    shop    qshopd4    -1,909:-1
    -    shop    qshopd5    -1,909:-1
    

    Quick question how would i be able to see the prices of each items? it kept saying 0 on the display but while when i try to buy it would show the prices.

  7. Hello. i would just like to ask how could i disable a memo in certain places such as odin_tem03

    
    //===== rAthena Script =======================================
    //= Mapflag: Disable Warp Portal memory.
    //===== By: ==================================================
    //= rAthena Dev Team
    //===== Current Version: =====================================
    //= 2.0
    //===== Compatible With: =====================================
    //= rAthena SVN
    //===== Description: =========================================
    //= Prevents players from using /memo on a map.
    //= Also disables marriage warp skills.
    //===== Additional Comments: =================================
    //= 1.6a Added up to Hugel maps. [Lupus]
    //= 1.6b Added job_knt map. [Samuray22]
    //= 1.7 Added all novice maps. [L0ne_W0lf]
    //= 1.8 Added nameless_i location. [Lupus]
    //= 1.8a Removed duplicate gef_cas nomemo mapflags. [Yommy]
    //= 1.8b Removed duplicate arug_dun01 & schg_dun01 entries. [Gepard]
    //= 1.9 Updated. [L0ne_W0lf]
    //= 2.0 Renewal split. [Euphy]
    //============================================================
    
    // Towns  ====================
    ayo_in01    mapflag    nomemo
    ayo_in02    mapflag    nomemo
    alb_ship    mapflag    nomemo
    alberta_in    mapflag    nomemo
    aldeba_in    mapflag    nomemo
    ama_in01    mapflag    nomemo
    ama_in02    mapflag    nomemo
    ama_test    mapflag    nomemo
    cmd_in01    mapflag    nomemo
    cmd_in02    mapflag    nomemo
    gef_tower    mapflag    nomemo
    geffen_in    mapflag    nomemo
    gon_test    mapflag    nomemo
    gon_in    mapflag    nomemo
    in_orcs01    mapflag    nomemo
    izlude_in    mapflag    nomemo
    jawaii_in    mapflag    nomemo
    lou_in01    mapflag    nomemo
    lou_in02    mapflag    nomemo
    moc_castle    mapflag    nomemo
    morocc_in    mapflag    nomemo
    mosk_in    mapflag    nomemo
    mosk_ship    mapflag    nomemo
    mosk_fild01    mapflag    nomemo
    mosk_fild02    mapflag    nomemo
    mosk_dun01    mapflag    nomemo
    mosk_dun02    mapflag    nomemo
    mosk_dun03    mapflag    nomemo
    nameless_in    mapflag    nomemo
    niflheim    mapflag    nomemo
    nif_in    mapflag    nomemo
    new_zone01    mapflag    nomemo
    new_zone02    mapflag    nomemo
    new_zone03    mapflag    nomemo
    new_zone04    mapflag    nomemo
    new_1-1    mapflag    nomemo
    new_1-2    mapflag    nomemo
    new_1-3    mapflag    nomemo
    new_1-4    mapflag    nomemo
    new_2-1    mapflag    nomemo
    new_2-2    mapflag    nomemo
    new_2-3    mapflag    nomemo
    new_2-4    mapflag    nomemo
    new_3-1    mapflag    nomemo
    new_3-2    mapflag    nomemo
    new_3-3    mapflag    nomemo
    new_3-4    mapflag    nomemo
    new_4-1    mapflag    nomemo
    new_4-2    mapflag    nomemo
    new_4-3    mapflag    nomemo
    new_4-4    mapflag    nomemo
    new_5-1    mapflag    nomemo
    new_5-2    mapflag    nomemo
    new_5-3    mapflag    nomemo
    new_5-4    mapflag    nomemo
    pay_arche    mapflag    nomemo
    payon_in01    mapflag    nomemo
    payon_in02    mapflag    nomemo
    payon_in03    mapflag    nomemo
    prt_castle    mapflag    nomemo
    prt_church    mapflag    nomemo
    prt_in    mapflag    nomemo
    um_in    mapflag    nomemo
    xmas_in    mapflag    nomemo
    valkyrie    mapflag    nomemo
    yuno_in01    mapflag    nomemo
    yuno_in02    mapflag    nomemo
    yuno_in03    mapflag    nomemo
    yuno_in04    mapflag    nomemo
    yuno_in05    mapflag    nomemo
    yuno    mapflag    nomemo
    ein_in01    mapflag    nomemo
    airport    mapflag    nomemo
    airplane    mapflag    nomemo
    airplane_01    mapflag    nomemo
    lighthalzen    mapflag    nomemo
    yuno_pre    mapflag    nomemo
    y_airport    mapflag    nomemo
    lhz_airport    mapflag    nomemo
    einbroch    mapflag    nomemo
    einbech    mapflag    nomemo
    lhz_cube    mapflag    nomemo
    lhz_in01    mapflag    nomemo
    lhz_in02    mapflag    nomemo
    lhz_in03    mapflag    nomemo
    hu_in01    mapflag    nomemo
    auction_01    mapflag    nomemo
    auction_02    mapflag    nomemo
    ra_in01    mapflag    nomemo
    ra_temin    mapflag    nomemo
    ra_temsky    mapflag    nomemo
    ve_in    mapflag    nomemo
    ve_in02    mapflag    nomemo
    thor_camp    mapflag    nomemo
    moc_para01    mapflag    nomemo
    
    // Fields  ===================
    alb2trea    mapflag    nomemo
    ayo_fild02    mapflag    nomemo
    cmd_fild01    mapflag    nomemo
    cmd_fild02    mapflag    nomemo
    cmd_fild03    mapflag    nomemo
    cmd_fild04    mapflag    nomemo
    cmd_fild05    mapflag    nomemo
    cmd_fild06    mapflag    nomemo
    cmd_fild07    mapflag    nomemo
    cmd_fild08    mapflag    nomemo
    cmd_fild09    mapflag    nomemo
    gef_fild02    mapflag    nomemo
    gef_fild03    mapflag    nomemo
    gef_fild06    mapflag    nomemo
    gef_fild08    mapflag    nomemo
    gef_fild10    mapflag    nomemo
    gef_fild11    mapflag    nomemo
    gef_fild12    mapflag    nomemo
    gef_fild14    mapflag    nomemo
    glast_01    mapflag    nomemo
    hu_fild01    mapflag    nomemo
    hu_fild05    mapflag    nomemo
    izlu2dun    mapflag    nomemo
    mjolnir_01    mapflag    nomemo
    mjolnir_02    mapflag    nomemo
    mjolnir_03    mapflag    nomemo
    mjolnir_04    mapflag    nomemo
    mjolnir_05    mapflag    nomemo
    mjolnir_07    mapflag    nomemo
    mjolnir_08    mapflag    nomemo
    mjolnir_10    mapflag    nomemo
    mjolnir_11    mapflag    nomemo
    moc_fild01    mapflag    nomemo
    moc_fild02    mapflag    nomemo
    moc_fild03    mapflag    nomemo
    moc_fild04    mapflag    nomemo
    moc_fild05    mapflag    nomemo
    moc_fild08    mapflag    nomemo
    moc_fild09    mapflag    nomemo
    moc_fild13    mapflag    nomemo
    moc_fild14    mapflag    nomemo
    moc_fild15    mapflag    nomemo
    moc_fild16    mapflag    nomemo
    moc_fild17    mapflag    nomemo
    moc_fild18    mapflag    nomemo
    moc_fild20    mapflag    nomemo
    moc_fild21    mapflag    nomemo
    moc_fild22    mapflag    nomemo
    nif_fild01    mapflag    nomemo
    nif_fild02    mapflag    nomemo
    pay_fild02    mapflag    nomemo
    pay_fild04    mapflag    nomemo
    pay_fild05    mapflag    nomemo
    pay_fild09    mapflag    nomemo
    pay_fild10    mapflag    nomemo
    pay_fild11    mapflag    nomemo
    prt_fild00    mapflag    nomemo
    prt_fild03    mapflag    nomemo
    prt_fild04    mapflag    nomemo
    prt_fild09    mapflag    nomemo
    prt_fild10    mapflag    nomemo
    prt_fild11    mapflag    nomemo
    prt_monk    mapflag    nomemo
    um_fild01    mapflag    nomemo
    um_fild02    mapflag    nomemo
    um_fild03    mapflag    nomemo
    yuno_fild02    mapflag    nomemo
    yuno_fild03    mapflag    nomemo
    yuno_fild04    mapflag    nomemo
    yuno_fild05    mapflag    nomemo
    yuno_fild07    mapflag    nomemo
    yuno_fild08    mapflag    nomemo
    yuno_fild09    mapflag    nomemo
    yuno_fild10    mapflag    nomemo
    ra_fild01    mapflag    nomemo
    ra_fild02    mapflag    nomemo
    ra_fild03    mapflag    nomemo
    ra_fild04    mapflag    nomemo
    ra_fild05    mapflag    nomemo
    ra_fild06    mapflag    nomemo
    ra_fild10    mapflag    nomemo
    ve_fild01    mapflag    nomemo
    ve_fild02    mapflag    nomemo
    ve_fild03    nomemo
    ve_fild04    mapflag    nomemo
    ve_fild06    mapflag    nomemo
    cave    mapflag    nomemo
    
    // Job Quests ================
    // First Job Class
    job_sword1    mapflag    nomemo
    job_thief1    mapflag    nomemo
    job_star    mapflag    nomemo
    // Primary Second Job Class
    job_knt    mapflag    nomemo
    job_prist    mapflag    nomemo
    job_wiz    mapflag    nomemo
    job_hunte    mapflag    nomemo
    in_hunter    mapflag    nomemo
    in_moc_16    mapflag    nomemo
    // Secondary Second Job Class
    alde_alche    mapflag    nomemo
    job_cru    mapflag    nomemo
    job_duncer    mapflag    nomemo
    job_monk    mapflag    nomemo
    monk_test    mapflag    nomemo
    monk_in    mapflag    nomemo
    in_rogue    mapflag    nomemo
    job_sage    mapflag    nomemo
    job_soul    mapflag    nomemo
    que_ng    mapflag    nomemo
    
    // Special Quests Places =====
    que_god01    mapflag    nomemo
    que_god02    mapflag    nomemo
    que_bingo    mapflag    nomemo
    que_sign01    mapflag    nomemo
    que_hugel    mapflag    nomemo
    que_rachel    mapflag    nomemo
    que_san04    mapflag    nomemo
    que_thor    mapflag    nomemo
    poring_c01    mapflag    nomemo
    poring_c02    mapflag    nomemo
    // Dungeons =================
    alde_dun01    mapflag    nomemo
    alde_dun02    mapflag    nomemo
    alde_dun03    mapflag    nomemo
    alde_dun04    mapflag    nomemo
    // Anthell -------------------
    anthell01    mapflag    nomemo
    anthell02    mapflag    nomemo
    // Amatsu Dungeon ------------
    ama_dun01    mapflag    nomemo
    ama_dun02    mapflag    nomemo
    ama_dun03    mapflag    nomemo
    // Ayothaya ------------------
    ayo_dun01    mapflag    nomemo
    ayo_dun02    mapflag    nomemo
    // Comodo Beach --------------
    beach_dun    mapflag    nomemo
    beach_dun2    mapflag    nomemo
    beach_dun3    mapflag    nomemo
    // Clock Tower ---------------
    c_tower1    mapflag    nomemo
    c_tower2    mapflag    nomemo
    c_tower3    mapflag    nomemo
    c_tower4    mapflag    nomemo
    // Einbech Mines -------------
    ein_dun01    mapflag    nomemo
    ein_dun02    mapflag    nomemo
    // Geffen Dun ----------------
    gef_dun00    mapflag    nomemo
    gef_dun01    mapflag    nomemo
    gef_dun02    mapflag    nomemo
    gef_dun03    mapflag    nomemo
    // Glast Hiem ----------------
    gl_cas01    mapflag    nomemo
    gl_cas02    mapflag    nomemo
    gl_church    mapflag    nomemo
    gl_chyard    mapflag    nomemo
    gl_dun01    mapflag    nomemo
    gl_dun02    mapflag    nomemo
    gl_in01    mapflag    nomemo
    gl_knt01    mapflag    nomemo
    gl_knt02    mapflag    nomemo
    gl_prison    mapflag    nomemo
    gl_prison1    mapflag    nomemo
    gl_sew01    mapflag    nomemo
    gl_sew02    mapflag    nomemo
    gl_sew03    mapflag    nomemo
    gl_sew04    mapflag    nomemo
    gl_step    mapflag    nomemo
    // Guild Dun -----------------
    gld_dun01    mapflag    nomemo
    gld_dun02    mapflag    nomemo
    gld_dun03    mapflag    nomemo
    gld_dun04    mapflag    nomemo
    // Bayalan Island ------------
    iz_dun00    mapflag    nomemo
    iz_dun01    mapflag    nomemo
    iz_dun02    mapflag    nomemo
    iz_dun03    mapflag    nomemo
    iz_dun04    mapflag    nomemo
    // Sphinx --------------------
    in_sphinx1    mapflag    nomemo
    in_sphinx2    mapflag    nomemo
    in_sphinx3    mapflag    nomemo
    in_sphinx4    mapflag    nomemo
    in_sphinx5    mapflag    nomemo
    // Louyang Dun --------------
    lou_dun03    mapflag    nomemo
    lou_dun02    mapflag    nomemo
    lou_dun01    mapflag    nomemo
    // Magma Dun -----------------
    mag_dun01    mapflag    nomemo
    mag_dun02    mapflag    nomemo
    // Pyrmaids ------------------
    moc_pryd01    mapflag    nomemo
    moc_pryd02    mapflag    nomemo
    moc_pryd03    mapflag    nomemo
    moc_pryd04    mapflag    nomemo
    moc_pryd05    mapflag    nomemo
    moc_pryd06    mapflag    nomemo
    moc_prydb1    mapflag    nomemo
    // Coal Mine (Dead Pit) ------
    mjo_dun01    mapflag    nomemo
    mjo_dun02    mapflag    nomemo
    mjo_dun03    mapflag    nomemo
    // Orc Dun -------------------
    orcsdun01    mapflag    nomemo
    orcsdun02    mapflag    nomemo
    // Payon Cave ----------------
    pay_dun00    mapflag    nomemo
    pay_dun01    mapflag    nomemo
    pay_dun02    mapflag    nomemo
    pay_dun03    mapflag    nomemo
    pay_dun04    mapflag    nomemo
    // Hidden Temple  ------------
    prt_maze01    mapflag    nomemo
    prt_maze02    mapflag    nomemo
    prt_maze03    mapflag    nomemo
    // Culvert Sewers ------------
    prt_sewb1    mapflag    nomemo
    prt_sewb2    mapflag    nomemo
    prt_sewb3    mapflag    nomemo
    prt_sewb4    mapflag    nomemo
    // Gonryun Dun ---------------
    gon_dun01    mapflag    nomemo
    gon_dun02    mapflag    nomemo
    gon_dun03    mapflag    nomemo
    // Sunken Ship ---------------
    treasure01    mapflag    nomemo
    treasure02    mapflag    nomemo
    // Turtle Island -------------
    tur_dun01    mapflag    nomemo
    tur_dun02    mapflag    nomemo
    tur_dun03    mapflag    nomemo
    tur_dun04    mapflag    nomemo
    tur_dun05    mapflag    nomemo
    tur_dun06    mapflag    nomemo
    // Umbala Dun ----------------
    um_dun01    mapflag    nomemo
    um_dun02    mapflag    nomemo
    // Toy Factory ---------------
    xmas_dun01    mapflag    nomemo
    xmas_dun02    mapflag    nomemo
    // Yggdrasil Tree Dun --------
    yggdrasil01    mapflag    nomemo
    // Old Geffenia --------------
    gefenia01    mapflag    nomemo
    gefenia02    mapflag    nomemo
    gefenia03    mapflag    nomemo
    gefenia04    mapflag    nomemo
    // Bio Lab Dungeon -----------
    lhz_dun01    mapflag    nomemo
    lhz_dun02    mapflag    nomemo
    lhz_dun03    mapflag    nomemo
    // Juperos Dungeon -----------
    juperos_01    mapflag    nomemo
    juperos_02    mapflag    nomemo
    jupe_area1    mapflag    nomemo
    jupe_area2    mapflag    nomemo
    jupe_core    mapflag    nomemo
    jupe_ele    mapflag    nomemo
    jupe_ele_r    mapflag    nomemo
    jupe_gate    mapflag    nomemo
    jupe_cave    mapflag    nomemo
    // Thanatos Tower ------------
    thana_boss    mapflag    nomemo
    tha_scene01    mapflag    nomemo
    tha_t01    mapflag    nomemo
    tha_t02    mapflag    nomemo
    tha_t03    mapflag    nomemo
    tha_t04    mapflag    nomemo
    tha_t05    mapflag    nomemo
    tha_t06    mapflag    nomemo
    tha_t07    mapflag    nomemo
    tha_t08    mapflag    nomemo
    tha_t09    mapflag    nomemo
    tha_t10    mapflag    nomemo
    tha_t11    mapflag    nomemo
    tha_t12    mapflag    nomemo
    thana_step    mapflag    nomemo
    // Abyss Lake Dungeon --------
    abyss_01    mapflag    nomemo
    abyss_02    mapflag    nomemo
    abyss_03    mapflag    nomemo
    //Odin's Temple & Kiehl
    
    odin_tem01    mapflag    nomemo
    odin_tem02    mapflag    nomemo
    odin_tem03    mapflag    nomemo
    kh_kiehl02    mapflag    nomemo
    kh_kiehl01    mapflag    nomemo
    kh_dun02    mapflag    nomemo
    kh_dun01    mapflag    nomemo
    kh_mansion    mapflag    nomemo
    kh_rossi    mapflag    nomemo
    kh_school    mapflag    nomemo
    kh_vila    mapflag    nomemo
    //Ice Dungeon
    ice_dun01    mapflag    nomemo
    ice_dun02    mapflag    nomemo
    ice_dun03    mapflag    nomemo
    ice_dun04    mapflag    nomemo
    //Rachel Santuary
    ra_san01    mapflag    nomemo
    ra_san02    mapflag    nomemo
    ra_san03    mapflag    nomemo
    ra_san04    mapflag    nomemo
    ra_san05    mapflag    nomemo
    //Thor Volcano
    thor_v01    mapflag    nomemo
    thor_v02    mapflag    nomemo
    thor_v03    mapflag    nomemo
    //Cursed Abbey
    nameless_i    mapflag    nomemo
    nameless_n    mapflag    nomemo
    abbey01    mapflag    nomemo
    abbey02    mapflag    nomemo
    abbey03    mapflag    nomemo
    
    // Guild Castles =============
    //alde_gld    mapflag    nomemo
    aldeg_cas01    mapflag    nomemo
    aldeg_cas02    mapflag    nomemo
    aldeg_cas03    mapflag    nomemo
    aldeg_cas04    mapflag    nomemo
    aldeg_cas05    mapflag    nomemo
    gefg_cas01    mapflag    nomemo
    gefg_cas02    mapflag    nomemo
    gefg_cas03    mapflag    nomemo
    gefg_cas04    mapflag    nomemo
    gefg_cas05    mapflag    nomemo
    //pay_gld    mapflag    nomemo
    payg_cas01    mapflag    nomemo
    payg_cas02    mapflag    nomemo
    payg_cas03    mapflag    nomemo
    payg_cas04    mapflag    nomemo
    payg_cas05    mapflag    nomemo
    prt_gld    mapflag    nomemo
    prtg_cas01    mapflag    nomemo
    prtg_cas02    mapflag    nomemo
    prtg_cas03    mapflag    nomemo
    prtg_cas04    mapflag    nomemo
    prtg_cas05    mapflag    nomemo
    nguild_alde    mapflag    nomemo
    nguild_gef    mapflag    nomemo
    nguild_pay    mapflag    nomemo
    nguild_prt    mapflag    nomemo
    schg_cas01    mapflag    nomemo
    schg_cas02    mapflag    nomemo
    schg_cas03    mapflag    nomemo
    schg_cas04    mapflag    nomemo
    schg_cas05    mapflag    nomemo
    arug_cas01    mapflag    nomemo
    arug_cas02    mapflag    nomemo
    arug_cas03    mapflag    nomemo
    arug_cas04    mapflag    nomemo
    arug_cas05    mapflag    nomemo
    //To Protect Novices Guilds from level abusers
    n_castle    mapflag    nomemo    1
    
    // GvG Arenas ================
    guild_vs1    mapflag    nomemo
    guild_vs2    mapflag    nomemo
    guild_vs3    mapflag    nomemo
    guild_vs4    mapflag    nomemo
    guild_vs5    mapflag    nomemo
    
    // Arenas ====================
    arena_room    mapflag    nomemo
    force_1-1    mapflag    nomemo
    force_1-2    mapflag    nomemo
    force_1-3    mapflag    nomemo
    force_2-1    mapflag    nomemo
    force_3-1    mapflag    nomemo
    force_4-1    mapflag    nomemo
    force_5-1    mapflag    nomemo
    ordeal_1-1    mapflag    nomemo
    ordeal_1-2    mapflag    nomemo
    ordeal_1-3    mapflag    nomemo
    ordeal_2-1    mapflag    nomemo
    ordeal_2-2    mapflag    nomemo
    ordeal_2-3    mapflag    nomemo
    ordeal_3-1    mapflag    nomemo
    ordeal_3-2    mapflag    nomemo
    ordeal_3-3    mapflag    nomemo
    pvp_c_room    mapflag    nomemo
    quiz_00    mapflag    nomemo
    quiz_01    mapflag    nomemo
    sec_in01    mapflag    nomemo
    sec_in02    mapflag    nomemo
    hunter_1-1    mapflag    nomemo
    hunter_2-1    mapflag    nomemo
    hunter_3-1    mapflag    nomemo
    knight_1-1    mapflag    nomemo
    knight_2-1    mapflag    nomemo
    knight_3-1    mapflag    nomemo
    priest_1-1    mapflag    nomemo
    priest_2-1    mapflag    nomemo
    priest_3-1    mapflag    nomemo
    prt_are_in    mapflag    nomemo
    prt_are01    mapflag    nomemo
    wizard_1-1    mapflag    nomemo
    wizard_2-1    mapflag    nomemo
    wizard_3-1    mapflag    nomemo
    
    // PvP Arenas ================
    pvp_y_room    mapflag    nomemo
    pvp_y_1-1    mapflag    nomemo
    pvp_y_1-2    mapflag    nomemo
    pvp_y_1-3    mapflag    nomemo
    pvp_y_1-4    mapflag    nomemo
    pvp_y_1-5    mapflag    nomemo
    pvp_y_2-1    mapflag    nomemo
    pvp_y_2-2    mapflag    nomemo
    pvp_y_2-3    mapflag    nomemo
    pvp_y_2-4    mapflag    nomemo
    pvp_y_2-5    mapflag    nomemo
    pvp_y_3-1    mapflag    nomemo
    pvp_y_3-2    mapflag    nomemo
    pvp_y_3-3    mapflag    nomemo
    pvp_y_3-4    mapflag    nomemo
    pvp_y_3-5    mapflag    nomemo
    pvp_y_4-1    mapflag    nomemo
    pvp_y_4-2    mapflag    nomemo
    pvp_y_4-3    mapflag    nomemo
    pvp_y_4-4    mapflag    nomemo
    pvp_y_4-5    mapflag    nomemo
    pvp_y_5-1    mapflag    nomemo
    pvp_y_5-2    mapflag    nomemo
    pvp_y_5-3    mapflag    nomemo
    pvp_y_5-4    mapflag    nomemo
    pvp_y_5-5    mapflag    nomemo
    pvp_y_6-1    mapflag    nomemo
    pvp_y_6-2    mapflag    nomemo
    pvp_y_6-3    mapflag    nomemo
    pvp_y_6-4    mapflag    nomemo
    pvp_y_6-5    mapflag    nomemo
    pvp_y_7-1    mapflag    nomemo
    pvp_y_7-2    mapflag    nomemo
    pvp_y_7-3    mapflag    nomemo
    pvp_y_7-4    mapflag    nomemo
    pvp_y_7-5    mapflag    nomemo
    pvp_y_8-1    mapflag    nomemo
    pvp_y_8-2    mapflag    nomemo
    pvp_y_8-3    mapflag    nomemo
    pvp_y_8-4    mapflag    nomemo
    pvp_y_8-5    mapflag    nomemo
    pvp_n_room    mapflag    nomemo
    pvp_n_1-1    mapflag    nomemo
    pvp_n_1-2    mapflag    nomemo
    pvp_n_1-3    mapflag    nomemo
    pvp_n_1-4    mapflag    nomemo
    pvp_n_1-5    mapflag    nomemo
    pvp_n_2-1    mapflag    nomemo
    pvp_n_2-2    mapflag    nomemo
    pvp_n_2-3    mapflag    nomemo
    pvp_n_2-4    mapflag    nomemo
    pvp_n_2-5    mapflag    nomemo
    pvp_n_3-1    mapflag    nomemo
    pvp_n_3-2    mapflag    nomemo
    pvp_n_3-3    mapflag    nomemo
    pvp_n_3-4    mapflag    nomemo
    pvp_n_3-5    mapflag    nomemo
    pvp_n_4-1    mapflag    nomemo
    pvp_n_4-2    mapflag    nomemo
    pvp_n_4-3    mapflag    nomemo
    pvp_n_4-4    mapflag    nomemo
    pvp_n_4-5    mapflag    nomemo
    pvp_n_5-1    mapflag    nomemo
    pvp_n_5-2    mapflag    nomemo
    pvp_n_5-3    mapflag    nomemo
    pvp_n_5-4    mapflag    nomemo
    pvp_n_5-5    mapflag    nomemo
    pvp_n_6-1    mapflag    nomemo
    pvp_n_6-2    mapflag    nomemo
    pvp_n_6-3    mapflag    nomemo
    pvp_n_6-4    mapflag    nomemo
    pvp_n_6-5    mapflag    nomemo
    pvp_n_7-1    mapflag    nomemo
    pvp_n_7-2    mapflag    nomemo
    pvp_n_7-3    mapflag    nomemo
    pvp_n_7-4    mapflag    nomemo
    pvp_n_7-5    mapflag    nomemo
    pvp_n_8-1    mapflag    nomemo
    pvp_n_8-2    mapflag    nomemo
    pvp_n_8-3    mapflag    nomemo
    pvp_n_8-4    mapflag    nomemo
    pvp_n_8-5    mapflag    nomemo
    pvp_2vs2    mapflag    nomemo
    
    //Aldebaran Turbo Track
    turbo_room    mapflag    nomemo
    turbo_n_1    mapflag    nomemo
    turbo_n_4    mapflag    nomemo
    turbo_n_8    mapflag    nomemo
    turbo_n_16    mapflag    nomemo
    turbo_e_4    mapflag    nomemo
    turbo_e_8    mapflag    nomemo
    turbo_e_16    mapflag    nomemo
    
    //Monster Races ================
    p_track01    mapflag    nomemo
    p_track02    mapflag    nomemo
    
    // Poring War ====================
    poring_w01    mapflag    nomemo
    poring_w02    mapflag    nomemo
    
    //Vision of Okolnir ==========
    que_qsch01    mapflag    nomemo
    que_qsch02    mapflag    nomemo
    que_qsch03    mapflag    nomemo
    que_qsch04    mapflag    nomemo
    que_qsch05    mapflag    nomemo
    que_qaru01    mapflag    nomemo
    que_qaru02    mapflag    nomemo
    que_qaru03    mapflag    nomemo
    que_qaru04    mapflag    nomemo
    que_qaru05    mapflag    nomemo
    
    //Sealed Shrine ==================
    1@cata    mapflag    nomemo
    2@cata    mapflag    nomemo
    
    //Endless Tower ==================
    e_tower    mapflag    nomemo
    1@tower    mapflag    nomemo
    2@tower    mapflag    nomemo
    3@tower    mapflag    nomemo
    4@tower    mapflag    nomemo
    5@tower    mapflag    nomemo
    6@tower    mapflag    nomemo
    
    // Battle Grounds ================
    bat_c01    mapflag    nomemo
    bat_c02    mapflag    nomemo
    bat_c03    mapflag    nomemo
    bat_room    mapflag    nomemo
    bat_b01    mapflag    nomemo
    bat_b02    mapflag    nomemo
    bat_a01    mapflag    nomemo
    bat_a02    mapflag    nomemo
    
    // Episode 13 ====================
    mid_campin    mapflag    nomemo
    man_fild01    mapflag    nomemo
    man_fild03    mapflag    nomemo
    spl_fild02    mapflag    nomemo
    spl_fild03    mapflag    nomemo
    moc_fild22b    mapflag    nomemo
    que_dan01    mapflag    nomemo
    que_dan02    mapflag    nomemo
    schg_que01    mapflag    nomemo
    schg_dun01    mapflag    nomemo
    arug_que01    mapflag    nomemo
    arug_dun01    mapflag    nomemo
    nyd_dun01    mapflag    nomemo
    nyd_dun02    mapflag    nomemo
    manuk    mapflag    nomemo
    man_fild02    mapflag    nomemo
    man_in01    mapflag    nomemo
    splendide    mapflag    nomemo
    spl_fild01    mapflag    nomemo
    spl_in01    mapflag    nomemo
    spl_in02    mapflag    nomemo
    
    //evt_zombie    mapflag    nomemo
    
    // Bossnia (custom) ==============
    bossnia_01    mapflag    nomemo
    bossnia_02    mapflag    nomemo
    bossnia_03    mapflag    nomemo
    bossnia_04    mapflag    nomemo
    

    thanks for helping in advance..

  8. Hi i wouldjust like to know how would i be able to reset and change my script for the rachel sanctuary quest? bcoz the donation was only set to 100k instead of 500m +even people who hasnt done the quest yet was able to get in the sanctuary.. kindly help.. thank you

  9. I want to know how would i be able to buy a bulk bcoz its only letting me buy 1 at a time..

    
    
    //===== rAthena Script =======================================
    //= Euphy's Quest Shop
    //===== By: ==================================================
    //= Euphy
    //===== Current Version: =====================================
    //= 1.4a
    //===== Compatible With: =====================================
    //= rAthena SVN r15340+
    //===== Description: =========================================
    //= A dynamic quest shop based on Lunar's, with easier config.
    //= Includes support for multiple shops & cashpoints.
    //= Item Preview script by ToastOfDoom.
    //============================================================
                        
    prt_in,33,116,4    script    Juice Vendor    564,{
    function Add; function Chk; function Slot; function A_An;
    
        if(.Shops$ != "") set .@i,1;
        else {
            set .@menu$,"";
            for(set .@i,1; .@i<=getarraysize(.Shops$); set .@i,.@i+1)
                set .@menu$, .@menu$+.Shops$[.@i]+":";
            set .@i, select(.@menu$); }
        dispbottom "Select one item at a time.";
        callshop "hourshop"+.@i,1;
        npcshopattach "hourshop"+.@i;
        end;
    
    function Add {
        if (getitemname(getarg(1))=="null") {
            debugmes "Quest reward #"+getarg(1)+" invalid (skipped)."; return; }
        for(set .@n,5; .@n<127; set .@n,.@n+2) {
            if (!getarg(.@n,0)) break;
            if (getitemname(getarg(.@n))=="null") {
                debugmes "Quest requirement #"+getarg(.@n)+" invalid (skipped)."; return; } }
        for(set .@i,2; .@i<.@n; set .@i,.@i+1)
            set getd(".q_"+getarg(1)+"["+(.@i-2)+"]"), getarg(.@i);
        npcshopadditem "hourshop"+getarg(0),getarg(1),((.ShowZeny)?getarg(3):0);
        return; }
    function Chk {
        if (getarg(0)<getarg(1)) { set @qe0,1; return "^FF0000"; }
        else return "^00FF00"; }
    function Slot {
        set .@s$,getitemname(getarg(0));
        switch(.ShowSlot){
            case 1: if (!getitemslots(getarg(0))) return .@s$;
            case 2: if (getiteminfo(getarg(0),11)>0) return .@s$+" ["+getitemslots(getarg(0))+"]";
            default: return .@s$; } }
    function A_An {
        setarray .@A$[0],"a","e","i","o","u";
        set .@B$, "_"+getarg(0);
        for(set .@i,0; .@i<5; set .@i,.@i+1)
            if (compare(.@B$,"_"+.@A$[.@i])) return "an "+getarg(0);
        return "a "+getarg(0); }
    
    OnBuyItem:
        set .@q[0],@bought_nameid;
        copyarray .@q[1],getd(".q_"+@bought_nameid+"[0]"),getarraysize(getd(".q_"+@bought_nameid+"[0]"));
        if (!.@q[1]) { message strcharinfo(0),"An error has occurred."; end; }
        mes "[Quest Shop]";
        mes "Reward: ^0055FF"+((.@q[1]>1)?.@q[1]+"x ":"")+Slot(.@q[0])+"^000000";
        mes "Requirements:";
        if (.@q[2]) mes " > "+Chk(Zeny,.@q[2])+.@q[2]+" Zeny^000000";
        if (.@q[3]) mes " > "+Chk(getd(.Points$[0]),.@q[3])+.@q[3]+" "+.Points$[1]+" ("+getd(.Points$[0])+"/"+.@q[3]+")^000000";
        if (.@q[4]) for(set .@i,4; .@i<getarraysize(.@q); set .@i,.@i+2)
            mes " > "+Chk(countitem(.@q[.@i]),.@q[.@i+1])+((.DisplayID)?"{"+.@q[.@i]+"} ":"")+Slot(.@q[.@i])+" ("+countitem(.@q[.@i])+"/"+.@q[.@i+1]+")^000000";
        next;
        set @qe1, getiteminfo(.@q[0],5); set @qe2, getiteminfo(.@q[0],11);
        addtimer 1000, strnpcinfo(1)+"::OnEnd";
        while(1){
            switch(select(" ~ Purchase ^0055FF"+getitemname(.@q[0])+"^000000:"+((((@qe1&1) || (@qe1&256) || (@qe1&512)) && @qe2>0 && !@qe6)?" ~ Preview...":"")+": ~ ^777777Cancel^000000")) {
                case 1:
                    if (@qe0) {
                        mes "[Quest Shop]";
                        mes "You're missing one or more quest requirements.";
                        close; }
                    if (!checkweight(.@q[0],.@q[1])) {
                        mes "[Quest Shop]";
                        mes "^FF0000You need "+(((.@q[1]*getiteminfo(.@q[0],6))+Weight-MaxWeight)/10)+" additional weight capacity to complete this trade.^000000";
                        close; }
                    if (.@q[2]) set Zeny, Zeny-.@q[2];
                    if (.@q[3]) setd .Points$[0], getd(.Points$[0])-.@q[3];
                    if (.@q[4]) for(set .@i,4; .@i<getarraysize(.@q); set .@i,.@i+2)
                        delitem .@q[.@i],.@q[.@i+1];
                    getitem .@q[0],.@q[1];
                    if (.Announce) announce strcharinfo(0)+" has created "+A_An(getitemname(.@q[0]))+"!",0;
                    specialeffect2 699;
                    close;
                case 2:
                    set @qe3, getlook(3); set @qe4, getlook(4); set @qe5, getlook(5);
                    if (@qe1&1) atcommand "@changelook 3 "+@qe2;
                    if (@qe1&256) atcommand "@changelook 1 "+@qe2;
                    if (@qe1&512) atcommand "@changelook 2 "+@qe2;
                    set @qe6,1;
                    break;
                case 3:
                    close; } }
    OnEnd:
        if (@qe6) { atcommand "@changelook 3 "+@qe3; atcommand "@changelook 1 "+@qe4; atcommand "@changelook 2 "+@qe5; }
        for(set .@i,0; .@i<7; set .@i,.@i+1) setd "@qe"+.@i,0;
        end;
    OnInit:
        freeloop(1);
    // --------------------- Config ---------------------
    // Custom points, if needed: "<variable>","<name to display>"
        setarray .Points$[0],"#CASHPOINTS","Cash Points";
    
        set .Announce,0;    // Announce quest completion? (1: yes / 0: no)
        set .ShowSlot,1;    // Show item slots? (2: all equipment / 1: if slots > 0 / 0: never)
        set .DisplayID,0;    // Show item IDs? (1: yes / 0: no)
        set .ShowZeny,0;    // Show Zeny cost, if any? (1: yes / 0: no)
    
    // Shop categories, if needed: "<Shop 1>","<Shop 2>"{,...};
    // Duplicate dummy data for any additional shops (bottom of script).
    // If no categories, use the second line instead (remove //).
    
        setarray .Shops$[2],"Juices";
        // set .Shops$,"n/a";
    
    // Add(<shop number>,<reward ID>,<reward amount>,<Zeny cost>,<point cost>,
    //     <required item ID>,<required item amount>{,...});
    // Shop number corresponds with order above (default is 1).
    // Note: Do NOT use a reward item more than once!
    
        Add(2,531,1,500,0,0,1,2,3,4,5,6,7,8);
        Add(2,533,1,500,0,0,0,0,0,0,0,0,0,0,0,0,0);
        Add(2,532,1,500,0,0,0,0,0,0,0,0,0,0);
        Add(2,620,1,500,0,0,0,0,0,0,0,0,0,0,0);
    
    
    
    
    
    
    // --------------------------------------------------
        freeloop(0);
        for(set .@i,1; .@i<=getarraysize(.Shops$); set .@i,.@i+1)
            npcshopdelitem "hourshop"+.@i,909;
        end;
    }
    
    // -------- Dummy data (duplicate as needed) --------
    -    shop    hourshop1    -1,909:-1
    -    shop    hourshop2    -1,909:-1
    -    shop    hourshop3    -1,909:-1
    
    
  10. Hi, i was just wondering if someone could take a look on my script because the npc doesn't show himself.. but i dont get errors at all..

    
    - shop Emistry_Shop1 -1,512:100
    
    prontera,102,81,4 script Donate Custom 811,{
    // NPC Name
    set .name$,"[^FF0000 AsaRO Shop ^000000]";
    
    mes .name$;
    mes "Each Shop Buy Item Using Different Items.";
    mes "Which shop you like to look at it";
    next;
    select("New Donate Custom Upper:New Donate Custom Mid: New Donate Lower");
    
    callsub CaseCH,@menu;
    npcshopitem "Emistry_Shop1",512,1;
    npcshopdelitem "Emistry_Shop1",512;
    for(set .@i,0; .@i < getarraysize( @ItemLists ); set .@i,.@i+1)
    npcshopadditem "Emistry_Shop1",@ItemLists[.@i],@ItemPrice[.@i];
    mes "Okay...wait awhile";
    mes "This Shop use ^FF0000"+getitemname( @Currency )+"^000000 to buy the Items.";
    close2;
    callsub CaseCH,@menu;
    callshop "Emistry_Shop1",1;
    npcshopattach "Emistry_Shop1";
    dispbottom "You currently have "+countitem( @Currency )+" "+getitemname( @Currency )+".";
    end;
    
    OnBuyItem:
    callsub CaseCH,@menu;
    for(set @i,0; @i < getarraysize( @bought_nameid ); set @i,@i+1)
    for(set @j,0; @j < getarraysize( @ItemLists ); set @j,@j+1)
    if( @ItemLists[@j] == @bought_nameid[@i] )
    set @TotalCost,@TotalCost + ( @ItemPrice[@j] * @bought_quantity[@i] );
    if( countitem( @Currency ) < @TotalCost ){
    for( set @i,0; @i < getarraysize( @bought_nameid ); set @i,@i+1 ){
    mes "Item : ^0000FF"+getitemname( @bought_nameid[@i] )+"^000000";
    mes "Quantity : ^0000FF"+@bought_quantity[@i]+"^000000";
    }
    mes "^00FF00____________________________^000000";
    mes "Total Cost : ^0000FF"+@TotalCost+" x "+getitemname( @Currency )+"^000000";
    mes "^00FF00____________________________^000000";
    mes "[ ^FF0000X^000000 ] You do not have enough ^0000FF"+getitemname( @Currency )+"^000000 to purchase this.";
    }else{
    for(set @i,0; @i < getarraysize( @bought_nameid ); set @i,@i+1){
    getitem @bought_nameid[@i],@bought_quantity[@i];
    message strcharinfo(0),"Purchased "+getitemname( @bought_nameid[@i] );
    }
    delitem @Currency,@TotalCost;
    mes "Thank you for shopping.";
    mes "You now have ^FF0000"+countitem( @Currency )+" "+getitemname( @Currency )+"^000000 left.";
    }
    set @TotalCost,0;
    deletearray @bought_nameid[0],getarraysize( @bought_nameid );
    deletearray @bought_quantity[0],getarraysize( @bought_quantity );
    deletearray @ItemLists[0],getarraysize( @ItemLists );
    deletearray @ItemPrice[0],getarraysize( @ItemPrice );
    close;
    
    CaseCH:
    deletearray @ItemLists[0],getarraysize( @ItemLists );
    deletearray @ItemPrice[0],getarraysize( @ItemPrice );
    switch( getarg(0) ){
    
    case 1:
    // Item Currency
    set @Currency,7179;
    // Item ID Lists
    setarray @ItemLists[0],18730,18729,18726,18725,18723,18721,18718,18717,18714,18715,18713,18709,18708,18707,18705,18706,18701,18699,18695,18696,18694,18693,18692,18691,18681,18680,18673,18672,18669;
    // Item Price
    setarray @ItemPrice[0],350,350,350,350,350,350,350,350,350,350,350,350,350,350,350,350,350,350,350,350,350,350,350,350,350,350,350,350,350;
    return;
    
    case 2:
    // Item Currency
    set @Currency,7179;
    // Item ID Lists
    setarray @ItemLists[0],18720,18711,18682,18676;
    // Item Price
    setarray @ItemPrice[0],350,350,350,350;
    return;
    
    case 3:
    // Item Currency
    set @Currency,7179;
    // Item ID Lists
    setarray @ItemLists[0],18712,18710,18716,18703,18702,18698,18697,18683,18679,18678,18677,18670,18666;
    // Item Price
    setarray @ItemPrice[0],350,350,350,350,350,350,350,350,350,350,350,350,350;
    return;
    
    // case 4,5,6.....etc...
    default:
    mes "Wrong Selection / Configurations";
    close;
    }
    }
    
  11. uhm on the map there are a few errors such as the hatmakerquest due to disabling them >.< but like i stated it was working properly a few days ago and then when i try to change my commands for normal players everything got changed.

  12. Could somebody help with my script.. all of the sudden the freebie npc doesnt talk to me at all nor give freebies even to a new accounts

    here's my script

     

    prontera,150,184,4    script Freebies    790 {
    OnInit:
    waitingroom "Freebies",0;
    end;
    }

        if(#sorry == 1) go to L_1;
        mes "You will receive some present as a reward for joining the server.";
        mes "We're gladly thankful for your support in the future too.";
        next;
        if(checkweight(2504,1) == 0 ) go to L_OverWeight;
    getitem2 5200,1,1,0,0,0,0,0,0;
    getitem 1209,1,1,10,0,0,0,0,0;
    getitem2 14533,10,1,0,0,0,0,0,0;
    getitem 12210,10,1,0,0,0,0,0,0;
    getitem 13576,1;
    getitem 13584,1;
    getitem 11501,500;
    getitem 11502,300;
    getitem 7621,5;
    getitem 7059,30;
    getitem 7060,30;
    rentitem 2137,604800;
    rentitem 2763,604800;
    rentitem 2763,604800;
    rentitem 2548,604800;
        emotion e_thx;
        set #sorry,1;
        close;



    L_Overweight:
        mes "Sorry, you are over weight";
        emotion e_omg;
        close;



    L_1:
        mes "You had already received before the gift.";
        emotion e_bzz;
        close;
    }

  13. Could somebody help with my script.. all of the sudden the freebie npc doesnt talk to me at all nor give freebies even to a new accounts

    here's my script

     

    prontera,150,184,4    script Freebies    790 {
    OnInit:
    waitingroom "Freebies",0;
    end;
    }

        if(#sorry == 1) go to L_1;
        mes "You will receive some present as a reward for joining the server.";
        mes "We're gladly thankful for your support in the future too.";
        next;
        if(checkweight(2504,1) == 0 ) go to L_OverWeight;
    getitem2 5200,1,1,0,0,0,0,0,0;
    getitem 1209,1,1,10,0,0,0,0,0;
    getitem2 14533,10,1,0,0,0,0,0,0;
    getitem 12210,10,1,0,0,0,0,0,0;
    getitem 13576,1;
    getitem 13584,1;
    getitem 11501,500;
    getitem 11502,300;
    getitem 7621,5;
    getitem 7059,30;
    getitem 7060,30;
    rentitem 2137,604800;
    rentitem 2763,604800;
    rentitem 2763,604800;
    rentitem 2548,604800;
        emotion e_thx;
        set #sorry,1;
        close;



    L_Overweight:
        mes "Sorry, you are over weight";
        emotion e_omg;
        close;



    L_1:
        mes "You had already received before the gift.";
        emotion e_bzz;
        close;
    }

×
×
  • Create New...