Jump to content

chromus28

Members
  • Posts

    263
  • Joined

  • Last visited

Posts posted by chromus28

  1. Try this one, bear with my laziness xD i didn't include many dialogues. 

    -    script    Sample::test    -1,{
        if ( !getcharid(2) ) end;
        if ( !$@guild_owner && getcharid(2) ) {
            if ( getguildmaster( getcharid(2) ) != strcharinfo(0) ) end;
            mes .npc$;
            mes "Buy me for " +.prize_of_npc+ " zeny.";
            next;
            mes .npc$;
            if ( Zeny < .prize_of_npc )
                mes "You don't have enough zeny";
            else 
                Zeny -= .prize_of_npc;
            $@guild_owner = getcharid(2);
            announce "[" +getguildname($@guild_owner)+ "] guild bought me for " +.prize_of_npc+ " zeny!",0;
            close;
        }
        
        if ( getcharid(2) != $@guild_owner ) {
            mes .npc$;
            mes "This npc is not dedicated on your guild";
            close;
        }
        
        mes .npc$;
        mes "What you want me to do master?";
        next;
        switch(select("Heal Me:No thanks:" +(getguildmaster($@guild_owner)==strcharinfo(0)?"Sell me":""))) {
            case 1: percentheal 100,100; break;
            case 2:    break;
            case 3: mes .npc$;
                    mes "Done!";
                    Zeny += .prize_of_npc;
                    announce getguildmaster($@guild_owner)+ " sell me. Someone buy me!",0;
                    $@guild_owner = 0;
                    break;
            default: debugmes "Error on NPC " +.npc$; break;
        }
        
        OnInit:
            .prize_of_npc = 20;
            .npc$ = strnpcinfo(1);
            end;
    }
    prontera,150,150,0    duplicate(test)    Sample    100
    prontera,153,153,0    duplicate(test)    Sample    100
    

    Configuration :

    .prize_of_npc = 20; // price of npc
    .npc$ = strnpcinfo(1); // npc name

    When guild bought the npc, You can add more benefit here. On my example i only have heal benefit, i add also the "sell me" choice when talking to the npc :

    switch(select("Heal Me:No thanks:" +(getguildmaster($@guild_owner)==strcharinfo(0)?"Sell me":"")))
    

    sir im getting error on this part >> Zeny -= .prize_of_npc;

  2. does anyone have a simple monster hunting script? i know about the mob hunt of sir euphy but i just a simple script only like. they hunt then they can get prizes after killing all that monster???  btw not only 1 monster is needed to hunt i mean example they need to kill 100 poring and 100 drops to get the prize...i hope there is some script like this thanks

  3. Any error message on your server window?

    no error but the event is not starting

     

    prontera,156,219,4	script	Disguise Event	794,{
    //--- Basic Script Configuration Options ---//
    set .@npcname$,"[^0000FFDisguise NPC^000000]"; //<- NPC Name.
    set $@GMLevel,80; //<- GM Level needed to be considered a GM.
    //--- The Script ---//
    if (getgmlevel()>=$@GMLevel){goto GM_Player;}
    if ($@EventON){end;}
    
    mes .@npcname$;
    mes "Welcome, how may i be of assistance.";
    menu "Information",iInfo,"Nothing, just passing through.",iNothing;
    iInfo:
    next;
    mes .@npcname$;
    mes "This event is actually quite simple";
    mes "At the start of the event, I will disguise myself";
    mes "into a monster randomly. You will then merely have to shout that monsters name outloud.";
    next;
    mes "If you get it correct, you get a prize. If not, then keep trying.";
    mes "Thatis all there is to know about this event.";
    close;
    iNothing:
    close;
    GM_Player:
    mes .@npcname$;
    mes "Please select an Option to modify.";
    menu "Turn ON/OFF Event",iEvent,"Event Settings",iSettings;
    iEvent:
    next;
    mes .@npcname$;
    if ($@EventON){mes "The Event is currently: [^0000FFON^000000]";
    mes "Would you like to turn it OFF?";}
    if (!$@EventON){mes "The Event is currently: [^FF0000OFF^000000]";
    mes "Would you like to turn it ON?";}
    menu "Yes",iYes,"No",iNothing;
    iYes:
    if ($@EventON)
    {set $@EventON,0; set $@Timer,0;
    setnpctimer 0; stopnpctimer;
    announce "A GM has decided to turn the Disguise Event off. As a result no further prizes will be given.",bc_map | bc_blue;
    deletepset 1;
    setnpcdisplay "Disguise Event",997;
    close;}
    set $@EventON,1; set $@Timer,1; setnpctimer 0; initnpctimer;
    set $@ResetCounter,$@ResetCounter+1;
    announce "The Disguise Event will begin in 3 minutes.",bc_all;
    announce "The Event is being held in prontera 156 223.",bc_all;
    close;
    iSettings:
    next;
    mes .@npcname$;
    mes "Please select a setting to modify.";
    menu "Monster Display",iMonster,"Number of Rounds",iRounds,"Prize Settings",iPrize;
    iMonster:
    callfunc "Monster_Display";
    iRounds:
    callfunc "Rounds";
    iPrize:
    callfunc "Prize";
    
    OnInit:
    defpattern 1,"([^:]+):.\\s*OMFGBBQLEETSAUCEGMOCEANRULESHAI!!.*", "iCorrect";
    activatepset 1;
    set $@EventON,0;
    set $@Wait,0;
    set $@Winner,0;
    set $Points,$Points;
    set $@ResetCounter,0;
    set $Rounds,$Rounds;
    set $Prize,$Prize;
    set $PrizeAmt,$PrizeAmt;
    set $Rule,$Rule;
    setarray $@MVP[0],1038,1039,1046,1059,1086,1087,1112,1115,1147,1150,1157,1159,1190,1251,1252,1272,1312,1373,
                      1389,1399,1418,1492,1502,1511,1583,1623,1630,1646,1647,1648,1649,1650,1651,1658,1685,1688,
    				  1708,1719,1734,1751,1768,1779,1785,1802,1832,1871,1874,1885,1917,1980,2022,2068,2087,2131,
    				  2156,2165;
    setarray $@BlackList[0], 1003,1006,1017,1021,1022,1027,1043,1075,1136,1137,1168,1171,1172,1173,1181,1210,1217,1218,
    						 1222,1223,1224,1225,1226,1227,1228,1233,1284,1407,1411,1414,1495,1501,1900,1996,2000,2001,
    						 2002,2003,2004,2005,2006,2007,2011,2012,2025,2028,2029,2030,2031,2032,2033,2034,2035,2036,
    						 2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049,2050,2051,2052,2053,2054,
    						 2055,2056,2057,2058,2059,2060,2061,2062,2063,2064,2065,2066,2067,2075,2076,2077,2078,2079,
    						 2080,2081,2083,2084,2085,2086,2087,2088,2089,2090,2091,2092,2093,2094,2095,2096,2097,2098,
    						 2099,2100,2101,2012,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113,2114,2115,2116,
    						 2117,2118;
    setarray $@BlackList2[0],2119,2120,2121,2123,2124,2125,1496;
    end;
    OnClock0000:
    OnClock0030:
    OnClock0100:
    OnClock0130:
    set $@ResetCounter,$@ResetCounter+1;
    set $@EventON,1;
    set $@Timer,1;
    set $@Wait,1;
    announce "The Disguise Event will begin in 3 minutes.",bc_all;
    announce "The Event is being held in prontera 156 223.",bc_all;
    setnpctimer 0;
    initnpctimer;
    end;
    OnTimer10000:
    if ($@Timer){end;}
    if ($@Change){end;}
    set $@Wait,0;
    goto iDisguise;
    //donpcevent "DisguiseEvent::OnDisguise";
    end;
    OnTimer30000:
    if ($@Timer){end;}
    set $@Change,0;
    setnpcdisplay "Disguise Event",795;
    npctalk "You took too long to guess what i was. Please wait 10 seconds while i disguise again.";
    specialeffect 730;
    set $MonsterName$,"OMFGBBQLEETSAUCEGMOCEANRULESHAI!!";
    deletepset 1;
    stopnpctimer;
    setnpctimer 0;
    initnpctimer;
    end;
    OnTimer60000:
    if ($@Timer!=1){end;}
    if ($@Timer==1)
    {announce "The Disguise Event will begin in 2 minutes.",bc_all;
    announce "The Event is being held in prontera 156 223.",bc_all;
    end;}
    OnTimer120000:
    if ($@Timer!=1){end;}
    if ($@Timer==1)
    {announce "The Disguise Event will begin 1 minute.",bc_all;
    announce "The Event is being held in prontera 156 223.",bc_all;
    end;}
    OnTimer180000:
    if ($@Timer!=1){end;}
    if ($@Timer==1)
    {announce "The Disguise Event has begun!",bc_all;
    announce "The Event is being held in prontera 156 223.",bc_all;
    set $@Timer,0; stopnpctimer;
    setnpctimer 0; initnpctimer;
    goto iDisguise;
    //donpcevent "DisguiseEvent::OnDisguise";
    end;}
    announce "Something went wrong with the Disguise Event.",bc_all | bc_blue;
    announce "Please notify a GM ASAP. Thank you.",bc_all | bc_blue;
    end;
    iDisguise:
    if ($Rule==1)
    {set $@Winner,0;
    set $@Monster,1000+rand(1,995);
    for(set .@BL,0; .@BL<getarraysize($@BlackList); set .@BL,.@BL+1)
    {if ($@Monster==$@BlackList[.@BL] || $@Monster==$@BlackList2[.@BL])
    {goto iDisguise;}}
    if ($@Monster==$@LastMonster){goto iDisguise;}
    set $@LastMonster,$@Monster;
    set $MonsterName$,getmonsterinfo($@Monster,0);}
    if ($Rule==2)
    {set $@Winner,0;
    set $@Monster,rand(49);
    set $MonsterName$,getmonsterinfo($@MVP[$@Monster],0);}
    deletepset 1;
    defpattern 1,"([^:]+):.\\s*"+$MonsterName$+".*", "iCorrect";
    activatepset 1;
    if ($Rule==1){setnpcdisplay "Disguise Event",$@Monster;}
    if ($Rule==2){setnpcdisplay "Disguise Event",$@MVP[$@Monster];}
    set $@Change,1;
    setnpctimer 0;
    //Hint
    //npctalk ""+$@Monster+", "+$MonsterName$+"";
    end;
    iCorrect:
    if ($@Winner){dispbottom "Someone has already won this round."; end;}
    set $@Winner,1;
    set $@RoundCount,$@RoundCount+1;
    deletepset 1;
    defpattern 1,"([^:]+):.*\\sOMFGBBQLEETSAUCEGMOCEANRULESHAI!!.*", "iFailCheater";
    activatepset 1;
    getitem $Prize,$PrizeAmt;
    announce ""+strcharinfo(0)+" is correct! I was disguised as: "+$MonsterName$+"",bc_map | bc_blue;
    if ($@RoundCount>=$Rounds)
    {setnpcdisplay "Disguise Event",795;
    set $@RoundCount,0; set $@Change,0; set $@EventON,0;
    setnpctimer 0; stopnpctimer;
    npctalk "Thank you all for playing. That was the last round of the Disguise Event. Come play again later.";
    end;}
    setnpcdisplay "Disguise Event",794;
    set $@Change,0;
    setnpctimer 0;
    end;
    
    iFailCheater:
    end;
    }
    //--- The Functions ---//
    function	script	Rounds	{
    next;
    mes "Please Input the number of rounds you want the event to last.";
    mes "Current Number of Rounds: [^0000FF"+$Rounds+"^000000]";
    input .@Rounds;
    set $Rounds,.@Rounds;
    next;
    mes "The number of rounds has been changed successfully.";
    mes "Number of Rounds: [^0000FF"+$Rounds+"^000000]";
    mes "Come again.";
    close;
    }
    function	script	Prize	{
    next;
    mes "Please Input the ItemID of the prize that will be given each round.";
    mes "Current Items is: [^0000FF"+getitemname($Prize)+"^000000] ItemID - ^0000FF"+$Prize+"^000000";
    input .@Prize;
    if (getitemname(.@Prize)=="" || getitemname(.@Prize)=="null")
    {next; mes "That item does not exist. Please try again."; close;}
    set $Prize,.@Prize;
    next;
    mes "Please Input the Ammount that is to be given.";
    input .@Ammount;
    if (.@Ammount<=0 || .@Ammount>=10000)
    {next; mes "That ammount is invalid. Using default ammount of 1.";}
    set $PrizeAmt,.@Ammount;
    next;
    mes "The Prize has been changed successfully.";
    mes "Prize: [^0000FF"+getitemname($Prize)+"^000000]x(^0000FF"+$PrizeAmt+"^000000)";
    close;
    }
    function	script	Monster_Display	{
    setarray .@Rule[0],0,1,2;
    setarray .@Desc$[0],"","Transform as all monsters.","Transform as MvP's only.";
    next;
    mes "Please select a Disguise Rule.";
    mes "Rule 1 - Transform as all monsters.";
    mes "Rule 2 - Transform as MvP's only.";
    menu "Rule 1:Rule 2",iRule;
    iRule:
    set $Rule,.@Rule[@menu];
    next;
    mes "The Disguise Rule, has been changed successfully.";
    mes "Current Rule: ^0000FF"+$Rule+"^000000 - ^0000FF"+.@Desc$[@menu]+"^000000";
    close;
    }
    
    

    i did just like this

    sorry it works but its like something wrong.. i will report again later

  4. Just change the "OnClock" label

    Just like the way you want, like this:

     

    If you want the script to run every 2 hours.

    OnClock0000:

    OnClock0200:

    OnClock0400:

     

    If you want the script to run every 1 hour.

    OnClock0000:

    OnClock0100:

    OnClock0200:

     

    And so on, so the script will be activated when your server clock reaches the specified time  /no1

    If you want the script to run every  30 minutes.

    OnClock0000:

    OnClock0030:

    OnClock0100:

    OnClock0130:

    sis the event is not starting >.<

    OnMinute45:

    sis patskie i tried to put the time of nanakiwurtz but the event is not starting...

  5. Just change the "OnClock" label

    Just like the way you want, like this:

     

    If you want the script to run every 2 hours.

    OnClock0000:

    OnClock0200:

    OnClock0400:

     

    If you want the script to run every 1 hour.

    OnClock0000:

    OnClock0100:

    OnClock0200:

     

    And so on, so the script will be activated when your server clock reaches the specified time  /no1

    If you want the script to run every  30 minutes.

    OnClock0000:

    OnClock0030:

    OnClock0100:

    OnClock0130:

    Oh Thanks!!

    uhm mam. is it possible for every 45 mins?

  6. Can anyone help me make this event every 2 Hours

     

    -	script	LMS#disable	-1,{
    
    OnInit:
    disablenpc "Mr. Banker";
    disablenpc "All Job Manager";
    end;
    }
    
    -	script	LMS	-1,{
    
    OnClock0310:
    OnClock0610:
    OnClock0910:
    OnClock1210:
    OnClock1510:
    OnClock1810:
    OnClock2110:
    OnClock2310:
    
    goto startlmsevent;
    
    startlmsevent:
    announce "Mr. Manager: The Last Man Standing event will be starting shortly.",0;
    sleep2 10000;
    announce "Mr. Manager: Those who want to play, please proceed to prontera 149 225 and register.",0;
    sleep2 10000;
    announce "Mr. Manager: After 1 Minute the Registration will close.",0;
    sleep2 10000;
    announce "Mr. Manager: Please go to prontera 149 225 and Register now if you want to join.",0;
    enablenpc "All Job Manager";
    initnpctimer;
    end;
    
    OnTimer30000:
    announce "Mr. Manager: Last 30 seconds.",0;
    sleep2 5000;
    announce "Mr. Manager: If you want to join please Register in prontera 149 225.",0;
    end;
    
    OnTimer50000:
    announce "Mr. Manager: Last 10 seconds.",0;
    end;
    
    OnTimer55000:
    announce "Mr. Manager: 5.",0;
    end;
    
    OnTimer56000:
    announce "Mr. Manager: 4.",0;
    end;
    
    OnTimer57000:
    announce "Mr. Manager: 3.",0;
    end;
    
    OnTimer58000:
    announce "Mr. Manager: 2.",0;
    end;
    
    OnTimer59000:
    announce "Mr. Manager: 1.",0;
    end;
    
    OnTimer60000:
    announce "Mr. Manager: Time's up.",0;
    end;
    
    OnTimer61000:
    disablenpc "All Job Manager";
    donpcevent "Mr. Banker::OnEnable";
    stopnpctimer;
    end;
    }
    //---------All Job Registration---------------
    prontera,149,225,5	script	All Job Manager	106,{
    
    mes "[Mr. Manager]";
    mes "Hello What can I do for you?";
    next;
    menu "Register",-,"What is LMS?",what,"Leave",leave;
    next;
    mes "[Mr. Manager]";
    mes "Thankyou for registering Mr. " + strcharinfo(0) + ", Have fun!";
    warp "quiz_02",264,343;
    end;
    what:
    mes "[Mr. Manager]";
    mes "LMS is also known as Last Man Standing Event";
    next;
    mes "[Mr. Manager]";
    mes "LMS is also like a PvP.";
    next;
    mes "[Mr. Manager]";
    mes "That's all";
    close;
    leave:
    mes "[Mr. Manager]";
    mes "I hope you will register next time";
    close;
    
    
    }
    
    //--------------------------
    
    //--------------------------
    guild_vs1,50,51,6	script	Mr. Banker	56,{
    
    mes "[Banker]";
    mes "Congrats. You've won.";
    next;
    announce "Mr. Manager: We have a winner! well done "+strcharinfo(0)+".",0;
    getitem 27000, 10; // Change This item id to what ever you want . item id,amount
    set class_s,class_s+8;
    mes "You will return now";
    warp "prontera",155,173;
    disablenpc "Mr. Banker";
    close;
    end;
    
    OnEnable:
    pvpoff "guild_vs1";
    mapannounce "quiz_02","Mr. Manager:The Last Man Standing Event will start shortly",0;
    sleep2 10000;
    mapannounce "quiz_02","Mr. Manager:But before we start this is just a few reminders..",0;
    sleep2 10000;
    mapannounce "quiz_02","Mr. Manager:Using Cloaking , Hiding is strictly not allowed..",0;
    sleep2 10000;
    mapannounce "quiz_02","Mr. Manager: Only the Last Man Standing will win this event!!",0;
    sleep2 10000;
    mapannounce "quiz_02","Mr. Manager: What are we waiting for?..Let's Get Ready to Rumble!!...",0;
    areawarp "quiz_02",252,357,275,334,"guild_vs1",0,0;
    sleep2 10000;
    goto L_Start;
    end;
    L_Start:
    if(getmapusers("guild_vs1") == 1) { goto L_nocontest;
    } else if(getmapusers("guild_vs1") == 0) { goto L_None;
    } else {
    mapannounce "guild_vs1","Mr. Manager: Get ready at the count of 5 we will start!....",0;
    sleep2 10000;
    mapannounce "guild_vs1","Mr. Manager: 5",0;
    sleep2 5000;
    mapannounce "guild_vs1","Mr. Manager: 4",0;
    sleep2 4000;
    mapannounce "guild_vs1","Mr. Manager: 3",0;
    sleep2 3000;
    mapannounce "guild_vs1","Mr. Manager: 2",0;
    sleep2 2000;
    mapannounce "guild_vs1","Mr. Manager: 1",0;
    sleep2 1000;
    pvpon "guild_vs1";
    goto timer;
    end;
    }
    timer:
    initnpctimer;
    end;
    
    OnTimer1000:
    end;
    
    OnTimer1100:
    if(getmapusers("guild_vs1") == 1) goto L_Champ;
    if(getmapusers("guild_vs1") > 2) goto timer;
    if(getmapusers("guild_vs1") == 2) goto champ;
    stopnpctimer;
    end;
    
    champ:
    announce "Mr. Manager: Last 2 Brave warriors are still alive!",0;
    sleep2 10000;
    if(getmapusers("guild_vs1") == 1) goto L_Champ;
    if(getmapusers("guild_vs1") > 1) goto timer;
    end;
    
    L_Champ:
    mapannounce "guild_vs1","Mr. Banker: Please talk to me to get your prize.. Im in the middle",0;
    pvpoff "guild_vs1";
    enablenpc "Mr. Banker";
    end;
    
    L_None:
    disablenpc "Banker";
    pvpoff "guild_vs1";
    end;
    
    L_nocontest:
    mapannounce "guild_vs1","Since only you joined, there will be no event. BUT you will be given 10 Quest Tickets!",0;
    enablenpc "Mr. Banker";
    end;
    }
    //----- Die = warp prt -----
    -	script	Killa_warp	-1,{
    
    OnPCDieEvent:
    	getmapxy(.@map$,.@x,.@y,0);
    	if(.@map$=="guild_vs1")
    	{
    		set #kill_point, 0;
    		announce ""+strcharinfo(0)+" died, and out of the game!.",bc_all;
    		warp "prontera",155,173;
    		end;
    	}
    	end;
    }
    
    
    // == Mapflags
    guild_vs1	mapflag	nowarp
    guild_vs1	mapflag	nowarpto
    guild_vs1	mapflag	noteleport
    guild_vs1	mapflag	nosave
    guild_vs1	mapflag	nomemo
    guild_vs1	mapflag	nobranch
    guild_vs1	mapflag	pvp_noparty
    guild_vs1	mapflag	restricted	1
    guild_vs1	mapflag	nocommand	90
    quiz_02	mapflag	nowarp
    quiz_02	mapflag	nowarpto
    quiz_02	mapflag	noteleport
    quiz_02	mapflag	nosave
    quiz_02	mapflag	nomemo
    quiz_02	mapflag	nobranch
    quiz_02	mapflag	pvp_noparty
    quiz_02	mapflag	restricted	1
    quiz_02	mapflag	nocommand	90
    

    And this one for every Hour

     

    -	script	DiceHide	-1,{
    OnInit:
    	disablenpc "Dice Manager#1";
    	disablenpc "Prize Manager";
    	pvpoff "quiz_01";
    	end;
    }
    
    -	script	DICE#1	-1,{
    OnClock0210:
    OnClock0410:
    OnClock0610:
    OnClock0810:
    OnClock1010:
    OnClock1210:
    OnClock1410:
    OnClock1610:
    OnClock1810:
    OnClock2010:
    OnClock2210:
    	goto startdice;
    	end;
    
    startdice:
    	disablenpc "Prize Manager";
    	mapwarp "quiz_01","prontera",0,0;
    	announce "The Dice Event will start soon",0;
    	sleep2 2000;
    	announce "If you want to participant warp to prontera 159 225 now",0;
    	sleep2 2000;
    	announce "You have 2 Minutes to register",0;
    	enablenpc "Dice Manager#1";
    	sleep2 120000;
    	announce "The registration has closed",0;
    	disablenpc "Dice Manager#1";
    	donpcevent "Dice Manager#1::OnDiceStart";
    	end;
    }
    
    prontera,162,225,5	script	Dice Manager#1	715,{
    
    mes "Do you want to register to the dice event?";
    menu "I want to register",L_yes,"Later",L_no;
    
    L_yes:
    warp "quiz_01" ,49,88;
    set #dice_play, 1;
    end;
    
    L_no:
    mes "Ok";
    close;
    
    OnDiceStart:
    mapannounce "quiz_01","Go to the box 1,2,3,4 and no staying on the outside of box",0;
    sleep2 2000;
    mapannounce "quiz_01","This is the mechanic of the event",0;
    sleep2 2000;
    mapannounce "quiz_01","I will say a number between 1-4",0;
    sleep2 2000;
    mapannounce "quiz_01","If your box number is the same with my number, you're safe you will proceed to the next round",0;
    sleep2 2000;
    mapannounce "quiz_01","And if your box number is not the same will warp to brasilis",0;
    sleep2 2000;
    mapannounce "quiz_01","Good Luck",0;
    sleep2 2000;
    mapannounce "quiz_01","I will pick in 30 seconds! good luck!",0;
    sleep2 30000;
    mapannounce "quiz_01","Dice Manager: OK! I will pick now a number",0;
    sleep2 2000;
    goto Start;
    
    Start:
    	switch(rand(1,4)) {
    	Case 1:
    	mapannounce "quiz_01","The Winner is 1",0;
    	areawarp "quiz_01",45,81,53,59,"prontera",156,177;
    	areawarp "quiz_01",57,81,65,59,"prontera",156,177;
    	areawarp "quiz_01",69,81,77,59,"prontera",156,177;
    	areawarp "quiz_01",32,94,78,86,"prontera",156,177;
    	areawarp "quiz_01",36,85,38,82,"prontera",156,177;
    	areawarp "quiz_01",48,85,50,82,"prontera",156,177;
    	areawarp "quiz_01",60,85,62,82,"prontera",156,177;
    	areawarp "quiz_01",72,85,74,82,"prontera",156,177;
    	
    	goto OnWinner;
    	end;
    	break;
    	Case 2:
    	mapannounce "quiz_01","The Winner is 2",0;
    	areawarp "quiz_01",33,81,41,59,"prontera",156,177;
    	areawarp "quiz_01",57,81,65,59,"prontera",156,177;
    	areawarp "quiz_01",69,81,77,59,"prontera",156,177;
    	areawarp "quiz_01",32,94,78,86,"prontera",156,177;
    	areawarp "quiz_01",36,85,38,82,"prontera",156,177;
    	areawarp "quiz_01",48,85,50,82,"prontera",156,177;
    	areawarp "quiz_01",60,85,62,82,"prontera",156,177;
    	areawarp "quiz_01",72,85,74,82,"prontera",156,177;
    	goto OnWinner;
    	end;
    	break;
    	Case 3:
    	mapannounce "quiz_01","The Winner is 3",0;
    	areawarp "quiz_01",45,81,53,59,"prontera",156,177;
    	areawarp "quiz_01",33,81,41,59,"prontera",156,177;
    	areawarp "quiz_01",69,81,77,59,"prontera",156,177;
    	areawarp "quiz_01",32,94,78,86,"prontera",156,177;
    	areawarp "quiz_01",36,85,38,82,"prontera",156,177;
    	areawarp "quiz_01",48,85,50,82,"prontera",156,177;
    	areawarp "quiz_01",60,85,62,82,"prontera",156,177;
    	areawarp "quiz_01",72,85,74,82,"prontera",156,177;
    	goto OnWinner;
    	end;
    	break;
    	Case 4:
    	mapannounce "quiz_01","The Winner is 4",0;
    	areawarp "quiz_01",45,81,53,59,"prontera",156,177;
    	areawarp "quiz_01",33,81,41,59,"prontera",156,177;
    	areawarp "quiz_01",57,81,65,59,"prontera",156,177;
    	areawarp "quiz_01",32,94,78,86,"prontera",156,177;
    	areawarp "quiz_01",36,85,38,82,"prontera",156,177;
    	areawarp "quiz_01",48,85,50,82,"prontera",156,177;
    	areawarp "quiz_01",60,85,62,82,"prontera",156,177;
    	areawarp "quiz_01",72,85,74,82,"prontera",156,177;
    	goto Onwinner;
    	end;
    	break;
    	}
    	end;
    	
    	
    
    OnWinner:
    mapannounce "quiz_01","To those who are winner",0;
    sleep2 2000;
    mapannounce "quiz_01"," Please go in the middle to claim you prize",0;
    	enablenpc "Prize Manager";
    	end;
    
    OnPCLoadMapEvent:
    	if (#dice_play == 0) {
    		warp "prontera",0,0;
    		end;
    	}
    		end;
    OnPCLogOutEvent:
    	if (#dice_play == 1 ) {
    		set #dice_play, 1;
    		end;
    	}
    		end;
    }
    quiz_01,49,90,1	script	Prize Manager	715,{
    
    getitem 671, 1;
    set class_s,class_s+3;
    warp "prontera",156,177;
    end;
    
    }
    quiz_01	mapflag	nowarp
    quiz_01	mapflag	nowarpto
    quiz_01	mapflag	loadevent
    quiz_01	mapflag	nomemo
    quiz_01	mapflag	nosave
    

    And this one for every 30mins only

     

    prontera,156,219,4	script	Disguise Event	794,{
    //--- Basic Script Configuration Options ---//
    set .@npcname$,"[^0000FFDisguise NPC^000000]"; //<- NPC Name.
    set $@GMLevel,80; //<- GM Level needed to be considered a GM.
    //--- The Script ---//
    if (getgmlevel()>=$@GMLevel){goto GM_Player;}
    if ($@EventON){end;}
    
    mes .@npcname$;
    mes "Welcome, how may i be of assistance.";
    menu "Information",iInfo,"Nothing, just passing through.",iNothing;
    iInfo:
    next;
    mes .@npcname$;
    mes "This event is actually quite simple";
    mes "At the start of the event, I will disguise myself";
    mes "into a monster randomly. You will then merely have to shout that monsters name outloud.";
    next;
    mes "If you get it correct, you get a prize. If not, then keep trying.";
    mes "Thatis all there is to know about this event.";
    close;
    iNothing:
    close;
    GM_Player:
    mes .@npcname$;
    mes "Please select an Option to modify.";
    menu "Turn ON/OFF Event",iEvent,"Event Settings",iSettings;
    iEvent:
    next;
    mes .@npcname$;
    if ($@EventON){mes "The Event is currently: [^0000FFON^000000]";
    mes "Would you like to turn it OFF?";}
    if (!$@EventON){mes "The Event is currently: [^FF0000OFF^000000]";
    mes "Would you like to turn it ON?";}
    menu "Yes",iYes,"No",iNothing;
    iYes:
    if ($@EventON)
    {set $@EventON,0; set $@Timer,0;
    setnpctimer 0; stopnpctimer;
    announce "A GM has decided to turn the Disguise Event off. As a result no further prizes will be given.",bc_map | bc_blue;
    deletepset 1;
    setnpcdisplay "Disguise Event",997;
    close;}
    set $@EventON,1; set $@Timer,1; setnpctimer 0; initnpctimer;
    set $@ResetCounter,$@ResetCounter+1;
    announce "The Disguise Event will begin in 3 minutes.",bc_all;
    announce "The Event is being held in prontera 156 223.",bc_all;
    close;
    iSettings:
    next;
    mes .@npcname$;
    mes "Please select a setting to modify.";
    menu "Monster Display",iMonster,"Number of Rounds",iRounds,"Prize Settings",iPrize;
    iMonster:
    callfunc "Monster_Display";
    iRounds:
    callfunc "Rounds";
    iPrize:
    callfunc "Prize";
    
    OnInit:
    defpattern 1,"([^:]+):.\\s*OMFGBBQLEETSAUCEGMOCEANRULESHAI!!.*", "iCorrect";
    activatepset 1;
    set $@EventON,0;
    set $@Wait,0;
    set $@Winner,0;
    set $Points,$Points;
    set $@ResetCounter,0;
    set $Rounds,$Rounds;
    set $Prize,$Prize;
    set $PrizeAmt,$PrizeAmt;
    set $Rule,$Rule;
    setarray $@MVP[0],1038,1039,1046,1059,1086,1087,1112,1115,1147,1150,1157,1159,1190,1251,1252,1272,1312,1373,
                      1389,1399,1418,1492,1502,1511,1583,1623,1630,1646,1647,1648,1649,1650,1651,1658,1685,1688,
    				  1708,1719,1734,1751,1768,1779,1785,1802,1832,1871,1874,1885,1917,1980,2022,2068,2087,2131,
    				  2156,2165;
    setarray $@BlackList[0], 1003,1006,1017,1021,1022,1027,1043,1075,1136,1137,1168,1171,1172,1173,1181,1210,1217,1218,
    						 1222,1223,1224,1225,1226,1227,1228,1233,1284,1407,1411,1414,1495,1501,1900,1996,2000,2001,
    						 2002,2003,2004,2005,2006,2007,2011,2012,2025,2028,2029,2030,2031,2032,2033,2034,2035,2036,
    						 2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049,2050,2051,2052,2053,2054,
    						 2055,2056,2057,2058,2059,2060,2061,2062,2063,2064,2065,2066,2067,2075,2076,2077,2078,2079,
    						 2080,2081,2083,2084,2085,2086,2087,2088,2089,2090,2091,2092,2093,2094,2095,2096,2097,2098,
    						 2099,2100,2101,2012,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113,2114,2115,2116,
    						 2117,2118;
    setarray $@BlackList2[0],2119,2120,2121,2123,2124,2125,1496;
    end;
    OnClock0000:
    OnClock0200:
    OnClock0400:
    OnClock0600:
    OnClock0800:
    OnClock1000:
    OnClock1200:
    OnClock1400:
    OnClock1600:
    OnClock1800:
    OnClock2000:
    OnClock2200:
    set $@ResetCounter,$@ResetCounter+1;
    set $@EventON,1;
    set $@Timer,1;
    set $@Wait,1;
    announce "The Disguise Event will begin in 3 minutes.",bc_all;
    announce "The Event is being held in prontera 156 223.",bc_all;
    setnpctimer 0;
    initnpctimer;
    end;
    OnTimer10000:
    if ($@Timer){end;}
    if ($@Change){end;}
    set $@Wait,0;
    goto iDisguise;
    //donpcevent "DisguiseEvent::OnDisguise";
    end;
    OnTimer30000:
    if ($@Timer){end;}
    set $@Change,0;
    setnpcdisplay "Disguise Event",795;
    npctalk "You took too long to guess what i was. Please wait 10 seconds while i disguise again.";
    specialeffect 730;
    set $MonsterName$,"OMFGBBQLEETSAUCEGMOCEANRULESHAI!!";
    deletepset 1;
    stopnpctimer;
    setnpctimer 0;
    initnpctimer;
    end;
    OnTimer60000:
    if ($@Timer!=1){end;}
    if ($@Timer==1)
    {announce "The Disguise Event will begin in 2 minutes.",bc_all;
    announce "The Event is being held in prontera 156 223.",bc_all;
    end;}
    OnTimer120000:
    if ($@Timer!=1){end;}
    if ($@Timer==1)
    {announce "The Disguise Event will begin 1 minute.",bc_all;
    announce "The Event is being held in prontera 156 223.",bc_all;
    end;}
    OnTimer180000:
    if ($@Timer!=1){end;}
    if ($@Timer==1)
    {announce "The Disguise Event has begun!",bc_all;
    announce "The Event is being held in prontera 156 223.",bc_all;
    set $@Timer,0; stopnpctimer;
    setnpctimer 0; initnpctimer;
    goto iDisguise;
    //donpcevent "DisguiseEvent::OnDisguise";
    end;}
    announce "Something went wrong with the Disguise Event.",bc_all | bc_blue;
    announce "Please notify a GM ASAP. Thank you.",bc_all | bc_blue;
    end;
    iDisguise:
    if ($Rule==1)
    {set $@Winner,0;
    set $@Monster,1000+rand(1,995);
    for(set .@BL,0; .@BL<getarraysize($@BlackList); set .@BL,.@BL+1)
    {if ($@Monster==$@BlackList[.@BL] || $@Monster==$@BlackList2[.@BL])
    {goto iDisguise;}}
    if ($@Monster==$@LastMonster){goto iDisguise;}
    set $@LastMonster,$@Monster;
    set $MonsterName$,getmonsterinfo($@Monster,0);}
    if ($Rule==2)
    {set $@Winner,0;
    set $@Monster,rand(49);
    set $MonsterName$,getmonsterinfo($@MVP[$@Monster],0);}
    deletepset 1;
    defpattern 1,"([^:]+):.\\s*"+$MonsterName$+".*", "iCorrect";
    activatepset 1;
    if ($Rule==1){setnpcdisplay "Disguise Event",$@Monster;}
    if ($Rule==2){setnpcdisplay "Disguise Event",$@MVP[$@Monster];}
    set $@Change,1;
    setnpctimer 0;
    //Hint
    //npctalk ""+$@Monster+", "+$MonsterName$+"";
    end;
    iCorrect:
    if ($@Winner){dispbottom "Someone has already won this round."; end;}
    set $@Winner,1;
    set $@RoundCount,$@RoundCount+1;
    deletepset 1;
    defpattern 1,"([^:]+):.*\\sOMFGBBQLEETSAUCEGMOCEANRULESHAI!!.*", "iFailCheater";
    activatepset 1;
    getitem $Prize,$PrizeAmt;
    announce ""+strcharinfo(0)+" is correct! I was disguised as: "+$MonsterName$+"",bc_map | bc_blue;
    if ($@RoundCount>=$Rounds)
    {setnpcdisplay "Disguise Event",795;
    set $@RoundCount,0; set $@Change,0; set $@EventON,0;
    setnpctimer 0; stopnpctimer;
    npctalk "Thank you all for playing. That was the last round of the Disguise Event. Come play again later.";
    end;}
    setnpcdisplay "Disguise Event",794;
    set $@Change,0;
    setnpctimer 0;
    end;
    
    iFailCheater:
    end;
    }
    //--- The Functions ---//
    function	script	Rounds	{
    next;
    mes "Please Input the number of rounds you want the event to last.";
    mes "Current Number of Rounds: [^0000FF"+$Rounds+"^000000]";
    input .@Rounds;
    set $Rounds,.@Rounds;
    next;
    mes "The number of rounds has been changed successfully.";
    mes "Number of Rounds: [^0000FF"+$Rounds+"^000000]";
    mes "Come again.";
    close;
    }
    function	script	Prize	{
    next;
    mes "Please Input the ItemID of the prize that will be given each round.";
    mes "Current Items is: [^0000FF"+getitemname($Prize)+"^000000] ItemID - ^0000FF"+$Prize+"^000000";
    input .@Prize;
    if (getitemname(.@Prize)=="" || getitemname(.@Prize)=="null")
    {next; mes "That item does not exist. Please try again."; close;}
    set $Prize,.@Prize;
    next;
    mes "Please Input the Ammount that is to be given.";
    input .@Ammount;
    if (.@Ammount<=0 || .@Ammount>=10000)
    {next; mes "That ammount is invalid. Using default ammount of 1.";}
    set $PrizeAmt,.@Ammount;
    next;
    mes "The Prize has been changed successfully.";
    mes "Prize: [^0000FF"+getitemname($Prize)+"^000000]x(^0000FF"+$PrizeAmt+"^000000)";
    close;
    }
    function	script	Monster_Display	{
    setarray .@Rule[0],0,1,2;
    setarray .@Desc$[0],"","Transform as all monsters.","Transform as MvP's only.";
    next;
    mes "Please select a Disguise Rule.";
    mes "Rule 1 - Transform as all monsters.";
    mes "Rule 2 - Transform as MvP's only.";
    menu "Rule 1:Rule 2",iRule;
    iRule:
    set $Rule,.@Rule[@menu];
    next;
    mes "The Disguise Rule, has been changed successfully.";
    mes "Current Rule: ^0000FF"+$Rule+"^000000 - ^0000FF"+.@Desc$[@menu]+"^000000";
    close;
    }
    
    

    Thanks in advance

  7. can anyone have Mission board that i can edit it easily without using SQL? i mean it just a simple script that i can put some quest and there is no limit of time.. they can do it again after they finish it..

  8. what is the prob on my NPC if im having this error?

     

    [Error]: npc_event: event not found [Donate NPC ::OnExit]
     


    here is the script if in case

     

    //===== eAthena Script =======================================
    //= Euphy's Quest Shop
    //===== By: ==================================================
    //= Euphy
    //===== Current Version: =====================================
    //= 1.3
    //===== Description: =========================================
    //= A dynamic quest shop based on Lunar's, with easier config.
    //= Includes support for multiple shops & cashpoints.
    //= Item Preview script by ToastOfDoom.
    //============================================================
    					
    prontera,139,225,6	script	Donate NPC 	719,{
    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 "5shop"+.@i,1;
    	npcshopattach "5shop"+.@i;
    	end;
    
    function Add {
    	for(set .@n,5; 1; set .@n,.@n+2)
    		if (!getarg(.@n,0)) break;
    	for(set .@i,2; .@i<.@n; set .@i,.@i+1)
    		set getd(".q_"+getarg(1)+"["+(.@i-2)+"]"), getarg(.@i);
    	npcshopadditem "5shop"+getarg(0),getarg(1),((.ShowZeny)?getarg(3):0);
    	return; }
    function Chk {
    	if (getarg(0)<getarg(1)) { set @qf,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";
    	if (@qf) { set @qf,0; close; }
    	next;
    	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; }
    	set @qe1, getiteminfo(.@q[0],5); set @qe2, getiteminfo(.@q[0],11);
    	addtimer 1000, strnpcinfo(3)+"::OnExit";
    	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 (.@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; } }
    OnExit:
    	if (@qe6) { atcommand "@changelook 3 "+@qe3; atcommand "@changelook 1 "+@qe4; atcommand "@changelook 2 "+@qe5; }
    	for(set .@i,1; .@i<7; set .@i,.@i+1) setd "@qe"+.@i,0;
    	end;
    
    OnInit:
    
    // --------------------- 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$[1],"Armor","Shield","Garment","Accesories","Cards","Weapon's","Headgear's","Usable";
    	// 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(1,2394,1,0,0,7179,30);
    	Add(1,2345,1,0,0,7179,20);
    	Add(1,2347,1,0,0,7179,20);
    	Add(1,2349,1,0,0,7179,20);
    	Add(1,2351,1,0,0,7179,20);
    
    	Add(2,2137,1,0,0,7179,30);
    	Add(2,2138,1,0,0,7179,18);
    	Add(2,2130,1,0,0,7179,18);
    
    	Add(3,2554,1,0,0,7179,35);
    
    	Add(4,2772,1,0,0,7179,28);
    	Add(4,2737,1,0,0,7179,18);
    	Add(4,2733,1,0,0,7179,24);
    
    	Add(5,4441,1,0,0,7179,35);
    	Add(5,4429,1,0,0,7179,20);
    	Add(5,4430,1,0,0,7179,30);
    	Add(5,4427,1,0,0,7179,25);
    	Add(5,4361,1,0,0,7179,45);
    	Add(5,4365,1,0,0,7179,100);
    	Add(5,4359,1,0,0,7179,35);
    	Add(5,4357,1,0,0,7179,100);
    	Add(5,4407,1,0,0,7179,35);
    	Add(5,4408,1,0,0,7179,40);
    	Add(5,4399,1,0,0,7179,35);
    	Add(5,4128,1,0,0,7179,45);
    	Add(5,4318,1,0,0,7179,35);
    
    	Add(6,1279,1,0,0,7179,45);
    	Add(6,1280,1,0,0,7179,45);
    	Add(6,1281,1,0,0,7179,45);
    	Add(6,1486,1,0,0,7179,45);
    	Add(6,1546,1,0,0,7179,45);
    	Add(6,1576,1,0,0,7179,55);
    	Add(6,1577,1,0,0,7179,55);
    	Add(6,1426,1,0,0,7179,55);
    	Add(6,2002,1,0,0,7179,60);
    	Add(6,13416,1,0,0,7179,60);
    	Add(6,1826,1,0,0,7179,60);
    	Add(6,1310,1,0,0,7179,35);
    	Add(6,1981,1,0,0,7179,35);
    	Add(6,1927,1,0,0,7179,35);
    	Add(6,13176,1,0,0,7179,25);
    	Add(6,13177,1,0,0,7179,25);
    	Add(6,13178,1,0,0,7179,25);
    	Add(6,13179,1,0,0,7179,25);
    	Add(6,13110,1,0,0,7179,20);
    	Add(6,1743,1,0,0,7179,25);
    	Add(6,13306,1,0,0,7179,30);
    	Add(6,13307,1,0,0,7179,30);
    	Add(6,13412,1,0,0,7179,15);
    	Add(6,13413,1,0,0,7179,15);
    
    	Add(7,5137,1,0,0,7179,15);
    	Add(7,5766,1,0,0,7179,15);
    	Add(7,5013,1,0,0,7179,15);
    	Add(7,20261,1,0,0,7179,15);
    	Add(7,30064,1,0,0,7179,15);
    	Add(7,18503,1,0,0,7179,15);
    	Add(7,20028,1,0,0,7179,15);
    	Add(7,20030,1,0,0,7179,15);
    	Add(7,5401,1,0,0,7179,15);
    	Add(7,5767,1,0,0,7179,15);
    	Add(7,2687,1,0,0,7179,15);
    	Add(7,30067,1,0,0,7179,15);
    	Add(7,5389,1,0,0,7179,15);
    	Add(7,5521,1,0,0,7179,15);
    	Add(7,5800,1,0,0,7179,15);
    	Add(7,5304,1,0,0,7179,15);
    	Add(7,5591,1,0,0,7179,15);
    	Add(7,5170,1,0,0,7179,15);
    	Add(7,5518,1,0,0,7179,15);
    	Add(7,5374,1,0,0,7179,15);
    	Add(7,5476,1,0,0,7179,15);
    	Add(7,5822,1,0,0,7179,15);
    	Add(7,5138,1,0,0,7179,15);
    	Add(7,5753,1,0,0,7179,15);
    	Add(7,5751,1,0,0,7179,15);
    	Add(7,5483,1,0,0,7179,15);
    	Add(7,5375,1,0,0,7179,15);
    
    	Add(8,12246,1,0,0,7179,10);
    
    
    
    // --------------------------------------------------
    	for(set .@i,1; .@i<=getarraysize(.Shops$); set .@i,.@i+1)
    		npcshopdelitem "5shop"+.@i,909;
    waitingroom "Newbie Gift!",0;
    	end;
    }
    
    // -------- Dummy data (duplicate as needed) --------
    -	shop	5shop1	-1,909:-1
    -	shop	5shop2	-1,909:-1
    -	shop	5shop3	-1,909:-1
    -	shop	5shop4	-1,909:-1
    -	shop	5shop5	-1,909:-1
    -	shop	5shop6	-1,909:-1
    -	shop	5shop7	-1,909:-1
    -	shop	5shop8	-1,909:-1
    


    another help please on my v4p shop

     

    -	shop	vote_shop1	111,501:50
    prontera,144,230,6	script	Vote Shop#1	714,{
    	set @i,0;
    	mes "[ Annie ]";
    	mes "Each item will cost you some ^008800Voting Proof Tickets^000000";
    	mes "Select only one.";
    	callshop "vote_shop1",1;
    	npcshopattach "vote_shop1";
    	end;
    
    
    OnBuyItem:
    	if(.BuildQuest) {
    		for(set .e,0; !compare(""+getarg(.e+1),"Zeny"); set .e,.e+2) {}
    		npcshopadditem "vote_shop1",getarg(.e+2),getarg(.e)*compare(""+getarg(.e+1),"SZeny");
    		setarray .Shop[.i],getarg(.e+2);
    		set .i,.i+1;
    		goto Quest_Setup;
    	}
    	if(.Shop[@i]!=@bought_nameid) for(set @i,1; 1; set @i,@i+1) if(.Shop[@i]==@bought_nameid) { set .i,@i; callsub Quest_Setup; }
    	for(set @i,1; !@e; set @i,@i+1) if(.Shop[@i]==@bought_nameid) { set @e,1; set .i,@i; callsub Quest_Setup; }
    	mes "[ Annie ]";
    	mes "I require the following:";
    	for(set @i,0; !compare(""+getarg(@i+1),"Zeny"); set @i,@i+2) mes "^880000" + ((countitem(getarg(@i))>=getarg(@i+1))? "^008800":"") + "" + getarg(@i+1) + " " + getitemname(getarg(@i)) + " [" + countitem(getarg(@i)) + "/" + getarg(@i+1) + "]";
    	if(getarg(@i)) mes "^880000" + ((Zeny>=getarg(@i))? "^008800":"") + "" + getarg(@i) + " Zeny";
    	mes "^000000In exchange, I will give you:^000088";
    	for(set @i,@i+2; getarg(@i+1,0); set @i,@i+2) mes getarg(@i+1) + " " + getitemname(getarg(@i));
    	switch(select("Exchange:" + (((((getiteminfo(@bought_nameid,5) & 1) || (getiteminfo(@bought_nameid,5) & 256) || (getiteminfo(@bought_nameid,5) & 512)) && @equip==0))? "Preview Item":"") + ":No thanks")) {
    		case 1:
    			for(set @i,0; !compare(""+getarg(@i+1),"Zeny"); set @i,@i+2) if(countitem(getarg(@i)) < getarg(@i+1)) {
    				next;
    				mes "You have " + countitem(getarg(@i)) + " " + getitemname(getarg(@i)) + ", while I require " + getarg(@i+1) + ".";
    				mes "Please obtain ^880000" + (getarg(@i+1)-countitem(getarg(@i))) + " more " + getitemname(getarg(@i)) + "^000000.";
    				close;
    			}
    			if(Zeny < getarg(@i)) {
    				next;
    				mes "You do not have enough Zeny.";
    				mes "Please obtain ^880000" + (getarg(@i)-Zeny) + " more Zeny^000000.";
    				close;
    			}
    			for(set @i,0; !compare(""+getarg(@i+1),"Zeny"); set @i,@i+2) delitem getarg(@i),getarg(@i+1);
    			set Zeny,Zeny-getarg(@i);
    			for(set @i,@i+2; getarg(@i+1,0); set @i,@i+2) getitem getarg(@i),getarg(@i+1);
    			if (compare(""+getarg(@i,0),"announce")) announce strcharinfo(0) + " has just obtained " + getitemname(@bought_nameid) + "!",bc_all;
    			close;
    		case 2:
    			set @bottomview, getlook(3);
    			set @topview, getlook(4);
    			set @midview, getlook(5);
    			addtimer 1000, strnpcinfo(3)+"::On_Leave";
    			set @equip,getiteminfo(@bought_nameid, 5);
    			set @view, getiteminfo(@bought_nameid, 11);
    			if(@equip != -1 && @view > 0) {
    				if(@equip & 1) atcommand "@changelook 3 " + @view;
    				if(@equip & 256) atcommand "@changelook 1 " + @view;
    				if(@equip & 512) atcommand "@changelook 2 " + @view;
    			}
    			next;
    			goto OnBuyItem;
    		case 3:
    			close;
    	}
    On_Leave:
    	atcommand "@changelook 1 " + @topview;
    	atcommand "@changelook 2 " + @midview;
    	atcommand "@changelook 3 " + @bottomview;
    	set @equip,0;
    	set @view,0;
    	set @topview,0;
    	set @midview,0;
    	set @bottomview,0;
    	end;
    OnInit:
    waitingroom "V4P Shop",0;
    	npcshopitem "vote_shop1",0,0;
    	set .BuildQuest,1;
    	set .i,1;
    Quest_Setup:
    	switch(.i) {
    		default: set .BuildQuest,0; set .e,0; set .i,0; end;
    		case 1: callsub OnBuyItem,7227,20,20,"SZeny",5274,1;
    		case 2: callsub OnBuyItem,7227,20,20,"SZeny",5274,1;
    		case 3: callsub OnBuyItem,7227,20,20,"SZeny",5275,1;
    		case 4: callsub OnBuyItem,7227,20,20,"SZeny",5276,1;
    		case 5: callsub OnBuyItem,7227,20,20,"SZeny",5298,1;
    	}
    }
    
    

    and here is the error

     

    [Warning]: itemdb_search: Item ID 0 does not exists in the item_db. Using dummy data.
     
    i dont know what it saying item id 0 does not exists but in the callsub there is no item 0 
     
    please help me with this 2 errors i have


    bump

  9. guys can anyone help me on my v4p script? this is showing up on my putty

     

    [Warning]: Unexpected type for argument 1. Expected string.
    [Debug]: Data: number value=20
    [Debug]: Function: compare
    [Debug]: Source (NPC): Vote Shop#1 at malaya (299,350)
    [Warning]: Unexpected type for argument 1. Expected string.
    [Debug]: Data: number value=20
    [Debug]: Function: compare
    [Debug]: Source (NPC): Vote Shop#1 at malaya (299,350)
    [Warning]: Unexpected type for argument 1. Expected string.
    [Debug]: Data: number value=20
    [Debug]: Function: compare
    [Debug]: Source (NPC): Vote Shop#1 at malaya (299,350)
     
    and this is the script i have
    //====CHANGER====//
    malaya,294,350,4	script	Voting Proof::voteproof	435,{
    	
    	//set .@cred2zen,10000000; //Set for you credits
    	mes "[ Mr. Htnerb ]";
    	mes "Hi, I am Mr. Htnerb! Here to assist you in your everyday ^008800Voting Proof Ticket^000000 needs!";
    	next;
    	mes "[ Mr. Htnerb ]";
    	mes "So, would you like to trade your Vote Points into ^008800Voting Proof Ticket^000000?";
    	menu "Inquire about Points",-,"Yes!",cred2zeny;
    	next;
    	mes "[ Mr. Htnerb ]";
    	mes "Ok, wait for a minute. Let me check my records!";
    	next;
    	mes "[ Mr. Htnerb ]";
    	mes "You have ^000088"+ #KAFRAPOINTS +"^000000 Vote Points.";
    	dispbottom "You currently have "+ #KAFRAPOINTS +" Vote Points.";
    	close;
    
    cred2zeny:
    	next;
    	mes "[ Mr. Htnerb ]";
    	mes "Ok, how many ^000088Vote Points^000000 would you like to convert into ^008800Voting Proof Ticket/s^000000?";
    	mes "^FF0000Please be reminded that 1 Vote Point is equal to 1 Voting Proof Ticket^000000.";
    	input .@vps;
    	next;
    	if ( .@vps < 1) goto zero;
    	if ( .@vps > 30000) goto Toomeni;
    	if((countitem(7227)+.@vps) >= 30000) goto Toomeni;
    	//next;
    	if ( #KAFRAPOINTS < .@vps) goto Tooless;
    	mes "[ Mr. Htnerb ]";
    	mes "Here you go.";
    	set #KAFRAPOINTS,(#KAFRAPOINTS-.@vps);
    	getitem 7227,.@vps;
    	dispbottom "You were deducted by "+ .@vps +" Vote points. You now have a total of "+ #KAFRAPOINTS +" Vote Points.";
    	next;
    	mes "[ Mr. Htnerb ]";
    	mes "Enjoy your ^008800Voting Proof Tickets^000000.";
    	donpcevent "voteproof::OnTHX";
    	close;
    
    
    Toomeni:
    	next;
    	mes "[ Mr. Htnerb ]";
    	mes "I'm sorry but you cannot hold more than ^FF00030,000^000000 items.";
    	close;
    
    Tooless:
    	next;
    	mes "[ Mr. Htnerb ]";
    	mes "I'm sorry but you have insufficient ^000088Vote Points^000000.";
    	close;
    
    zero:
    	next;
    	mes "[ Mr. Htnerb ]";
    	mes "I cannot work with a ^00FF000^000000!";
    	close;
    
    OnTHX:
    	emotion e_thx,0;
    	end;
    }
    
    //Made by Jod credits to Lunar
    //Version 1.6
    //6.1.09
    
    -	shop	vote_shop1	111,501:50
    malaya,299,350,4	script	Vote Shop#1	714,{
    	set @i,0;
    	mes "[ Annie ]";
    	mes "Each item will cost you some ^008800Voting Proof Tickets^000000";
    	mes "Select only one.";
    	callshop "vote_shop1",1;
    	npcshopattach "vote_shop1";
    	end;
    
    
    OnBuyItem:
    	if(.BuildQuest) {
    		for(set .e,0; !compare(getarg(.e+1),"Zeny"); set .e,.e+2) {}
    		npcshopadditem "vote_shop1",getarg(.e+2),getarg(.e)*compare(getarg(.e+1),"SZeny");
    		setarray .Shop[.i],getarg(.e+2);
    		set .i,.i+1;
    		goto Quest_Setup;
    	}
    	if(.Shop[@i]!=@bought_nameid) for(set @i,1; 1; set @i,@i+1) if(.Shop[@i]==@bought_nameid) { set .i,@i; callsub Quest_Setup; }
    	for(set @i,1; !@e; set @i,@i+1) if(.Shop[@i]==@bought_nameid) { set @e,1; set .i,@i; callsub Quest_Setup; }
    	mes "[ Annie ]";
    	mes "I require the following:";
    	for(set @i,0; !compare(getarg(@i+1),"Zeny"); set @i,@i+2) mes "^880000" + ((countitem(getarg(@i))>=getarg(@i+1))? "^008800":"") + "" + getarg(@i+1) + " " + getitemname(getarg(@i)) + " [" + countitem(getarg(@i)) + "/" + getarg(@i+1) + "]";
    	if(getarg(@i)) mes "^880000" + ((Zeny>=getarg(@i))? "^008800":"") + "" + getarg(@i) + " Zeny";
    	mes "^000000In exchange, I will give you:^000088";
    	for(set @i,@i+2; getarg(@i+1,0); set @i,@i+2) mes getarg(@i+1) + " " + getitemname(getarg(@i));
    	switch(select("Exchange:" + (((((getiteminfo(@bought_nameid,5) & 1) || (getiteminfo(@bought_nameid,5) & 256) || (getiteminfo(@bought_nameid,5) & 512)) && @equip==0))? "Preview Item":"") + ":No thanks")) {
    		case 1:
    			for(set @i,0; !compare(getarg(@i+1),"Zeny"); set @i,@i+2) if(countitem(getarg(@i)) < getarg(@i+1)) {
    				next;
    				mes "You have " + countitem(getarg(@i)) + " " + getitemname(getarg(@i)) + ", while I require " + getarg(@i+1) + ".";
    				mes "Please obtain ^880000" + (getarg(@i+1)-countitem(getarg(@i))) + " more " + getitemname(getarg(@i)) + "^000000.";
    				close;
    			}
    			if(Zeny < getarg(@i)) {
    				next;
    				mes "You do not have enough Zeny.";
    				mes "Please obtain ^880000" + (getarg(@i)-Zeny) + " more Zeny^000000.";
    				close;
    			}
    			for(set @i,0; !compare(getarg(@i+1),"Zeny"); set @i,@i+2) delitem getarg(@i),getarg(@i+1);
    			set Zeny,Zeny-getarg(@i);
    			for(set @i,@i+2; getarg(@i+1,0); set @i,@i+2) getitem getarg(@i),getarg(@i+1);
    			if (compare(getarg(@i,0),"announce")) announce strcharinfo(0) + " has just obtained " + getitemname(@bought_nameid) + "!",bc_all;
    			close;
    		case 2:
    			set @bottomview, getlook(3);
    			set @topview, getlook(4);
    			set @midview, getlook(5);
    			addtimer 1000, strnpcinfo(3)+"::On_Leave";
    			set @equip,getiteminfo(@bought_nameid, 5);
    			set @view, getiteminfo(@bought_nameid, 11);
    			if(@equip != -1 && @view > 0) {
    				if(@equip & 1) atcommand "@changelook 3 " + @view;
    				if(@equip & 256) atcommand "@changelook 1 " + @view;
    				if(@equip & 512) atcommand "@changelook 2 " + @view;
    			}
    			next;
    			goto OnBuyItem;
    		case 3:
    			close;
    	}
    On_Leave:
    	atcommand "@changelook 1 " + @topview;
    	atcommand "@changelook 2 " + @midview;
    	atcommand "@changelook 3 " + @bottomview;
    	set @equip,0;
    	set @view,0;
    	set @topview,0;
    	set @midview,0;
    	set @bottomview,0;
    	end;
    OnInit:
    	npcshopitem "vote_shop1",0,0;
    	set .BuildQuest,1;
    	set .i,1;
    Quest_Setup:
    	switch(.i) {
    		default: set .BuildQuest,0; set .e,0; set .i,0; end;
    		case 1: callsub OnBuyItem,7227,20,20,"SZeny",5274,1;
    		case 2: callsub OnBuyItem,7227,20,20,"SZeny",5274,1;
    		case 3: callsub OnBuyItem,7227,20,20,"SZeny",5275,1;
    		case 4: callsub OnBuyItem,7227,20,20,"SZeny",5276,1;
    		case 5: callsub OnBuyItem,7227,20,20,"SZeny",5298,1;
    	}
    }
    
    

     

     

  10. sorry i saw some 3rd job suit topics but i cant reply a topic on it so i decided to post new..

    btw why when im trying to put the {},{ changebase 4054; },{} id of rune knight it make me error but when im trynig to change it into 4001 super novice there is no error? can anyone help me?

    they said i need an sprite on this where can i get that?

     

    Need the latest kRO or a Renewal Data Folder?

    hmm i am very sure that i have the latest KRO..T_T

  11. sorry i saw some 3rd job suit topics but i cant reply a topic on it so i decided to post new..

    btw why when im trying to put the {},{ changebase 4054; },{} id of rune knight it make me error but when im trynig to change it into 4001 super novice there is no error? can anyone help me?



    they said i need an sprite on this where can i get that?

  12. //Disguise Suits
    
    19000,Assasin_Suit,Assasin Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 12; },{},{ changebase Class; }
    
    19001,Cross_Suit,Assasin Cross Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4013; },{},{ changebase Class; }
    
    19002,Priest_Suit,Priest Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 8;},{},{ changebase Class; }
    
    19003,HPriest_Suit,High Priest Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4009; },{},{ changebase Class; }
    
    19004,Hunter_Suit,Hunter Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 11; },{},{ changebase Class; }
    
    19005,Sniper_Suit,Sniper Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4012; },{},{ changebase Class; }
    
    19006,Wizz_Suit,Wizard Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 9; },{},{ changebase Class; }
    
    19007,HWizz_Suit,High Wizard Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4010; },{},{ changebase Class; }
    
    19008,Knight_Suit,Knight Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 7; },{},{ changebase Class; }
    
    19009,LKnight_Suit,Lord Knight Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4014;},{},{ changebase Class; }
    
    19010,Crusa_Suit,Crusader Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 14; },{},{ changebase Class; }
    
    19011,Palad_Suit,Paladin Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4015; },{},{ changebase Class; }
    
    19012,Monk_Suit,Monk Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 15; },{},{ changebase Class; }
    
    19013,Champion_Suit,Champion Suit,5,1000,10,10,,10,,4,0xFFFFFFE,,1,16,0,1,0,,{ changebase 4016; },{},{ changebase Class; }
    
    19014,Sage_Suit,Sage Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 16; },{},{ changebase Class; }
    
    19015,Prof_Suit,Professor Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4017; },{},{ changebase Class; }
    
    19016,Rouge_Suit,Rouge Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 17; },{},{ changebase Class; }
    
    19017,Stalker_Suit,Stalker Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4018; },{},{ changebase Class; }
    
    19018,Alchem_Suit,Alchemist Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 18; },{},{ changebase Class; }
    
    19019,Creator_Suit,Creator Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4019; },{},{ changebase Class; }
    
    19020,Bsmith_Suit,BlackSmith Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 10; },{},{ changebase Class; }
    
    19021,Wsmith_Suit,WhiteSmith Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4011; },{},{ changebase Class; }
    
    19022,Bard_Suit,Bard Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 19; },{},{ changebase Class; }
    
    19023,Clown_Suit,Clown Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4020; },{},{ changebase Class; }
    
    19024,Swordm_Suit,Swordman Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 1; },{},{ changebase Class; }
    
    19025,Mage_Suit,Mage Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 2; },{},{ changebase Class; }
    
    19026,Archer_Suit,Archer Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 3; },{},{ changebase Class; }
    
    19027,Acolyt_Suit,Acolyte Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4; },{},{ changebase Class; }
    
    19028,Merch_Suit,Merchant Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 5; },{},{ changebase Class; }
    
    19029,Thief_Suit,Thief Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 6; },{},{ changebase Class; }
    
    19030,Snovice_Suit,Super Novice Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 23;},{},{ changebase Class; }
    
    19031,Novice_Suit,Novice Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 0; },{},{ changebase Class; }
    
    19032,Taekwon_Suit,Taekwon Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4046; },{},{ changebase Class; }
    
    19033,Star_Gladiator_Suit,Star Gladiator Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4047; },{},{ changebase Class; }
    
    19034,Soul_Linker_Suit,Soul Linker Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4049; },{},{ changebase Class; }
    
    19035,Gunslinger_Suit,Gunslinger Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 24; },{},{ changebase Class; }
    
    19036,Ninja_Suit,Ninja Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 25; },{},{ changebase Class; }
    
    19037,Baby_Novice_Suit,Baby Novice Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4023; },{},{ changebase Class; }
    
    19038,Baby_Swordsman_Suit,Baby Swordsman Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4024; },{},{ changebase Class; }
    
    19039,Baby_Mage_Suit,Baby Mage Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4025; },{},{ changebase Class; }
    
    19040,Baby_Archer_Suit,Baby Archer Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4026; },{},{ changebase Class; }
    
    19041,Baby_Acolyte_Suit,Baby Acolyte Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4027; },{},{ changebase Class; }
    
    19042,Baby_Merchant_Suit,Baby Merchant Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4028; },{},{ changebase Class; }
    
    19043,Baby_Thief_Suit,Baby Thief Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4029; },{},{ changebase Class; }
    
    19044,Baby_Knight_Suit,Baby Knight Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4030; },{},{ changebase Class; }
    
    19045,Baby_Priest_Suit,Baby Priest Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4031; },{},{ changebase Class; }
    
    19046,Baby_Wizard_Suit,Baby Wizard Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4032; },{},{ changebase Class; }
    
    19047,Baby_Blacksmith_Suit,Baby Blacksmith Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4033; },{},{ changebase Class; }
    
    19048,Baby_Hunter_Suit,Baby Hunter Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4034; },{},{ changebase Class; }
    
    19049,Baby_Assassin_Suit,Baby Assassin Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4035; },{},{ changebase Class; }
    
    19050,Baby_Crusader_Suit,Baby Crusader Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4037; },{},{ changebase Class; }
    
    19051,Baby_Monk_Suit,Baby Monk Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4038; },{},{ changebase Class; }
    
    19052,Baby_Sage_Suit,Baby Sage Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4039; },{},{ changebase Class; }
    
    19053,Baby_Rogue_Suit,Baby Rogue Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4040; },{},{ changebase Class; }
    
    19054,Baby_Alchemist_Suit,Baby Alchemist Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4041; },{},{ changebase Class; }
    
    19055,Baby_Bard_Suit,Baby Bard Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4042; },{},{ changebase Class; }
    
    19056,Baby_Dancer_Suit,Baby Dancer Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4043; },{},{ changebase Class; }
    
    19057,Baby_Super_Novice_Suit,Baby Super Novice Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4045; },{},{ changebase Class; }
    
    19058,Gypsy_Suit,Gypsy Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4021; },{},{ changebase Class; }
    
    19059,Dancer_Suit,Dancer Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 20; },{},{ changebase Class; }
    
    
    
    
    
    //3rd Job Suits(experimental)
    
    19060,Rune_Knight_Suit,Rune Knight Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4060; },{},{ changebase Class; }
    
    19061,Royal_Guard_Suit,Royal Guard Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4073; },{},{ changebase Class; }
    
    19062,Arch_Bishop_Suit,Arch Bishop Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4063; },{},{ changebase Class; }
    
    19063,Shura_Suit,Shura Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4077; },{},{ changebase Class; }
    
    19064,Warlock_Suit,Baby Super Novice Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4061; },{},{ changebase Class; }
    
    19065,Sorcerer_Suit,Sorcerer Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4074; },{},{ changebase Class; }
    
    19066,Ranger_Suit,Ranger Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4062; },{},{ changebase Class; }
    
    19067,Minstrel_Suit,Minstrel Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4075; },{},{ changebase Class; }
    
    19068,Wanderer_Suit,Wanderer Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4076; },{},{ changebase Class; }
    
    19069,Mechanic_Suit,Mechanic Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4064; },{},{ changebase Class; }
    
    19070,Genetic_Suit,Genetic Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4078; },{},{ changebase Class; }
    
    19071,Guillotine_Cross_Suit,Guillotine Cross Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4065; },{},{ changebase Class; }
    
    19072,Shadow_Chaser_Suit,Shadow Chaser Suit,5,89000,,500,,4,,2,0xFFFFFFFE,7,2,16,,10,1,0,{ changebase 4079; },{},{ changebase Class; }
    
    
    
    

    Sir i tried to change into assasin but why even the skill changed??

  13. Lol, my bad... looks like I really was tired writing this @.@;

    give me a moment and i'll fix it

     

    Edit: Here you go, you'll notice that I did change the array set up around, I had them backwards lol... I coded it 1 way, while telling you to put it in another way lmao..(note to self - stop writing scripts while falling asleep).

    prontera,150,180,4	script	npc name	123,{
    	mes "I can upgrade items into a more powerful version.";
    	mes "Interested?";
    	if(select("Yes!:Not in the slightest")==2){close;}
    	next;
    	mes "What Item do you want to make?";
    	set .@a,1;
    	set .@menu$,""+ getitemname(getd(".item"+.@a+"[0]")) +"";
    	while(.@a != .total)
    		{set .@a,.@a+1; set .@menu$,.@menu$ + ":"+ getitemname( getd(".item"+.@a+"[0]") ) +"";}
    	select(.@menu$);
    	next;
    	mes "All I need is the following:";
    	set .@i,2;
    	set .@menu,@menu;
    	mes "[1]x "+ getitemname(getd(".item"+.@menu+"[1]")) +"";
    	while(getd(".item"+.@menu+"["+.@i+"]"))
    		{mes "["+ getd(".item"+.@menu+"["+(.@i+1)+"]") +"]x "+ getitemname( getd(".item"+.@menu+"["+.@i+"]") ) +""; set .@i,.@i+2;}
    	if(select("Turn in items:Cancel")==2){close;}
    	set .@i,2;
    	if(!countitem( getd(".item"+.@menu+"[1]") )){mes "You need to have 1, "+ getitemname(getd(".item"+.@menu+"[1]")) +""; close;}
    	while(getd(".item"+.@menu+"["+.@i+"]"))
    		{if(countitem(getd(".item"+.@menu+"["+.@i+"]")) < getd(".item"+.@menu+"["+(.@i+1)+"]"))
    			{mes "You don't have enough, "+ getitemname(getd(".item"+.@menu+"["+.@i+"]")) +". You have ^FF0000"+ countitem(getd(".item"+.@menu+"["+.@i+"]")) +"/"+ getd(".item"+.@menu+"["+(.@i+1)+"]") +""; close;}
    			set .@i,.@i+2;}
    	set .@i,2;
    	while(getd(".item"+.@menu+"["+.@i+"]"))
    		{delitem( getd(".item"+.@menu+"["+.@i+"]"), getd(".item"+.@menu+"["+(.@i+1)+"]") ); set .@i,.@i+2;}
    	delitem(getd(".item"+.@menu+"[1]"),1);
    	getitem(getd(".item"+.@menu+"[0]"),1);
    	close;
    	OnInit:
    	//[0] = New Item | [1] = Old Item | [2] = ItemReq1 | [3] = ItemAmt1 | [4] = ItemReq2 | etc...
    	setarray .item1[0],505,504,501,1,502,1,503,1;
    	setarray .item2[0],506,504,501,1,502,1,503,1;
    	//setarray .item3[0],olditem,newitem,req1,amt1,req2,amt2,etc,...;
    	set .total,2; //Set to number of arrays made.
    	end;
    }
    

    ok boss i will try later thanks

  14. uhm why i can't click the npc?? i mean nothing happen when im clicking the npc



    Line 20 miss a bracket

    ->

    if(!countitem( getd(".item"+.@menu+"[0]") ) ) {mes "You need to have 1, "+ getitemname(getd(".item"+.@menu+"[0]")) +""; close;}
    

    no error now but nothing happen when clicking the npc



    aww error

     

     

    [Error]: run_script: infinity loop !
    [Debug]: Source (NPC): Yii Haruka at force_2-3 (96,190)
  15. oh thanks



    prontera,150,180,4	script	npc name	123,{
    	mes "I can turn a "+ getitemname(.before) +" into a "+ getitemname(.after) +"";
    	mes "All I need is the following:";
    	for(set .@i,0; .@i<.items; set .@i,.@i+1)
    		{mes "["+ .amt[.@i] +"]x "+ getitemname(.req[.@i]) +"";}
    	if(switch(select("Turn in items:Cancel"))==2){close;}
    	Case 1:
    	for(set .@j,0; .@j<.items; set .@j,.@j+1)
    		{if(countitem(.req[.@j]) < .amt[.@j]){mes "You don't have enough, "+ getitemname(.req[.@j]) +". You have ^FF0000"+ countitem(.req[.@j]) +"/"+ .amt[.@j] +""; close;}}
    	for(set .@a,0; .@a<.items; set .@a,.@a+1)
    		{delitem(.req[.@a],.@amt[.@a]);}
    	getitem(.after,1);
    	close;
    	OnInit:
    	set .before,25500;
    	set .after,25508;
    	setarray .req[0],501,502,503; //Replace with any items you want, can go upto 128 items.
    	setarray .amt[0],1,1,1;//Replace with amount for it's respective item above.
    	set .items,getarraysize(.req);
    	end;
    }
    

    That should do it O.o assuming I have the items right lol.

    Sir, only 1 item can be traded in this script?

×
×
  • Create New...