Jump to content

eboni001

Members
  • Posts

    327
  • Joined

  • Last visited

Posts posted by eboni001

  1. Why not using the summon mvp i knew someone already post a working script for that in rA

     

    Bro why don't you use ~AnnieRuRu~'s MVP Summoner and just change the maps from "06guild_01" to wtv lets say "pvp_y_n1-1"?

    From what I can understand is that you want a MVP Summoner just like ~AnnieRuRu~'s script but just teh map is different? Plus you have to pay to summon MVP? Yeap. That's ~AnnieRuRu~'s script alright.

    OK guys i will try annierurur after try this posted by @Alvins182

  2. Hello guys, as title say can somebody please explain how does rewards work on euphy woe controller?

     

    this is the script:

    //===== rAthena Script =======================================
    //= Euphy's WOE Controller
    //===== By: ==================================================
    //= Euphy
    //===== Current Version: =====================================
    //= 1.5
    //===== Compatible With: =====================================
    //= rAthena SVN r16958+
    //===== Description: =========================================
    //= A controller for War of Emperium designed for
    //= simplicity and ease of use.
    //= Many concepts taken from ToastOfDoom's script,
    //= and "rewards" function originally by Goddameit.
    //===== Additional Comments: =================================
    //= Be sure to disable the default agit controllers!
    //== npc\guild\agit_controller.txt
    //== npc\guild2\agit_start_se.txt
    //============================================================
    
    // Information NPC
    //============================================================
    prontera,144,199,3	script	WOE Information	990,{
    	doevent "WOE_CONTROL::OnMenu";
    	end;
    OnAgitStart:
    	while(agitcheck()) {
    		misceffect EF_BEGINSPELL6;
    		sleep 425;
    	}
    	end;
    }
    
    // Script Core
    //============================================================
    -	script	WOE_CONTROL	-1,{
    function Disp_Owner; function Add_Zero;
    
    OnInit:
    
    // -----------------------------------------------------------
    //  Configuration settings.
    // -----------------------------------------------------------
    
    	set .CastleWarp,0;		// 1: Always enable all castle warps. | 0: Warp only to active castles.
    	set .AutoKick,1;		// Automatically kick players from inactive castles during WOE? (1:yes / 0:no)
    	set .NoOwner,1; 		// Automatically kick players from unconquered castles outside of WOE? (1:yes / 0:no)
    	set .ExitWarp,1;		// Warp all players from castles when WOE ends? (1:yes / 0:no)
    	set .GMAccess,99;		// GM level required to access Session Manager.
    
    // -----------------------------------------------------------
    //  Reward options.
    // -----------------------------------------------------------
    //  [1] Enable rewards.
    //  [2] Mail all rewards.
    //      - If not set, players receive items in their inventory.
    //      - Only ONE item can be sent via mail, plus Zeny.
    //      - Note that offline players do NOT receive rewards.
    //  [4] Only reward Guild Masters.
    //      - If not set, all guild members are rewarded.
    //      - If mailing is enabled (option 2), offline Guild Masters WILL receive rewards.
    //  [8] Duplicate IP check.
    //      - Members in a guild with the same IP address are not rewarded.
    //      - If Guild Masters is enabled (option 4), this feature is not used.
    // -----------------------------------------------------------
    
    	// Combine values as needed (e.g. 1|8 = 1+8 = 9).
    	set .Options, 1|4;
    
    	// Rewards per castle.
    	// -- when given directly: <itemID>,<amount>{,<itemID>,<amount>,...}
    	// -- via mail (option 2): <itemID>,<amount>,<Zeny>
    	setarray .Reward[0],14001,1;
    
    // -----------------------------------------------------------
    //  Constants (leave this section alone).
    // -----------------------------------------------------------
    
    	setarray .Castles$[0],
    		"prtg_cas01","prtg_cas02","prtg_cas03","prtg_cas04","prtg_cas05",
    		"payg_cas01","payg_cas02","payg_cas03","payg_cas04","payg_cas05",
    		"gefg_cas01","gefg_cas02","gefg_cas03","gefg_cas04","gefg_cas05",
    		"aldeg_cas01","aldeg_cas02","aldeg_cas03","aldeg_cas04","aldeg_cas05",
    		"arug_cas01","arug_cas02","arug_cas03","arug_cas04","arug_cas05",
    		"schg_cas01","schg_cas02","schg_cas03","schg_cas04","schg_cas05";
    	setarray .EndLabel$[0],"ar01","ar02","ar03","ar04","ar05","sc01","sc02","sc03","sc04","sc05";
    	setarray .Days$[0],"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday";
    	setarray .Regions$[0],"Prontera","Payon","Geffen","Aldebaran","Arunafeltz","Schwaltzvalt";
    	setarray .Map$[0],"prt_gld","pay_gld","gef_fild13","alde_gld","aru_gld","sch_gld";
    	setarray .MapX[0],134,240,153,111,208,121,295,317,140,204,214,308,143,193,305,48, 95,142,239,264,158,83, 68,299,292,293,288, 97,137, 71;
    	setarray .MapY[0], 65,128,137,240,240,233,116,293,160,266, 75,240,240,278, 87,83,249, 85,242, 90,272,47,155,345,107,100,252,196, 90,315;
    
    // -----------------------------------------------------------
    
    	set .Size, getarraysize($WOE_CONTROL);
    	if (.AutoKick || .NoOwner)
    		for(set .@i,0; .@i<30; set .@i,.@i+1) {
    			setmapflag .Castles$[.@i], mf_loadevent;
    			setd "."+.Castles$[.@i], .@i;
    		}
    	if (!agitcheck() && !agitcheck2()) sleep 4000;
    	set .Init,1;
    
    OnMinute00:
    	freeloop(1);
    	if (agitcheck() || agitcheck2()) {
    		for(set .@i,0; .@i<.Size; set .@i,.@i+4)
    			if (gettime(4) == $WOE_CONTROL[.@i] && gettime(3) == $WOE_CONTROL[.@i+2]) {
    			OnWOEEnd:
    				announce "The War Of Emperium is over!",bc_all|bc_woe;
    				AgitEnd; AgitEnd2;
    				sleep 1000;
    				for(set .@j,0; .@j<30; set .@j,.@j+1) {
    					if (.Active[0]&(1<<.@j)) Disp_Owner(.Castles$[.@j],1);
    					if (.ExitWarp) maprespawnguildid .Castles$[.@j],0,3;
    				}
    				if (.Options&1 && .Active[0] && .ForceEnd != 2) callsub OnReward, .Active[0];
    				deletearray .Active[0],2;
    				if (.ForceEnd) { set .ForceEnd,0; end; }
    				break;
    			}
    	}
    	if ((!agitcheck() && !agitcheck2()) || .Init) {
    		if (!agitcheck() && !agitcheck2()) set .Init,0;
    		for(set .@i,0; .@i<.Size; set .@i,.@i+4)
    			if (gettime(4) == $WOE_CONTROL[.@i] && gettime(3) >= $WOE_CONTROL[.@i+1] && gettime(3) < $WOE_CONTROL[.@i+2]) {
    				deletearray .Active[0],2;
    				set .Active[0], $WOE_CONTROL[.@i+3];
    				if (.Init) { AgitEnd; AgitEnd2; }
    				else announce "The War Of Emperium has begun!",bc_all|bc_woe;
    				sleep 1000;
    				AgitStart; AgitStart2;
    				for(set .@j,0; .@j<30; set .@j,.@j+1) {
    					if (.Active[0]&(1<<.@j)) {
    						if (!.Init) Disp_Owner(.Castles$[.@j],0);
    						set .Active[1], .Active[1] | (1<<((.@j/5)+1));
    					} else {
    						if (.@j<20) {
    							donpcevent "Agit#"+.Castles$[.@j]+"::OnAgitEnd";
    							killmonster .Castles$[.@j], "Agit#"+.Castles$[.@j]+"::OnAgitBreak";
    						} else {
    							donpcevent "Manager#"+.Castles$[.@j]+"::OnAgitEnd2";
    							killmonster .Castles$[.@j], "Steward#"+.EndLabel$[.@j-20]+"::OnStartArena";
    						}
    					}
    				}
    				break;
    			}
    	}
    	set .Init,0;
    	end;
    
    function Disp_Owner {
    	set .@o, getcastledata(getarg(0),1);
    	if (.@o) announce "The ["+getcastlename(getarg(0))+"] castle "+((getarg(1))?"has been conquered":"is currently held")+" by the ["+getguildname(.@o)+"] guild.",bc_all|bc_woe;
    	else announce "The ["+getcastlename(getarg(0))+"] castle is currently unoccupied.",bc_all|bc_woe;
    	return;
    }
    function Add_Zero {
    	return ((getarg(0)<10)?"0":"")+getarg(0)+(getarg(1,0)?".":":")+"00";
    }
    
    OnReward:
    	set .@sql$, ((.Options&4)?"position = 0":"online = 1");
    	if (.Options&2) set .@str$,gettimestr("%B %d, %Y",21);
    	freeloop(1);
    	for(set .@i,0; .@i<30; set .@i,.@i+1)
    		if (getarg(0)&(1<<.@i)) {
    			set .@gid, getcastledata(.Castles$[.@i],1);
    			if (!.@gid) continue;
    			set .@size, query_sql("SELECT account_id,char_id FROM `guild_member` WHERE guild_id = '"+.@gid+"' AND "+.@sql$,.@aid,.@cid);
    			for(set .@j,0; .@j<.@size; set .@j,.@j+1) {
    				if (.Options&8 && !(.Options&4)) {
    					set .@ip$, replacestr(getcharip(.@aid[.@j]),".","a");
    					if (getd(".@ip_"+.@i+"_"+.@ip$)) continue;
    					setd ".@ip_"+.@i+"_"+.@ip$,1;
    				}
    				if (.Options&2) {
    					query_sql("INSERT INTO `mail` (send_name,dest_id,title,message,nameid,amount,identify,zeny,time) VALUES ("+
    					          "'no-reply',"+.@cid[.@j]+",'** Siege Reward: "+getcastlename(.Castles$[.@i])+" **',"+
    					          "'Brave one,% % Congratulations!% Your guild has successfully occupied% territory in the War of Emperium on% "+.@str$+".% % % % % [ Your reward is attached. ]',"+
    					          .Reward[0]+","+.Reward[1]+",0,"+.Reward[2]+",UNIX_TIMESTAMP(NOW()))");
    					if (!getd(".@str_"+.@cid[.@j]) && isloggedin(.@aid[.@j],.@cid[.@j])) {
    						setd ".@str_"+.@cid[.@j],1;
    						message rid2name(.@aid[.@j]),"You've got mail! Please re-login to update your mailing list.";
    					}
    				} else if (isloggedin(.@aid[.@j])) {
    					for(set .@k,0; .@k<getarraysize(.Reward); set .@k,.@k+2)
    						getitem .Reward[.@k], .Reward[.@k+1], .@aid[.@j];
    					message rid2name(.@aid[.@j]),"You have been rewarded for conquering "+getcastlename(.Castles$[.@i])+".";
    				}
    			}
    		}
    	if (.Options&2) query_sql("UPDATE `mail` SET message = REPLACE(message,'%',CHAR(13)) WHERE send_name = 'no-reply'");
    	return;
    
    OnPCLoadMapEvent:
    	if (!compare(strcharinfo(3),"g_cas")) end;
    	if (((.AutoKick && .Active[0]) || (.NoOwner && !getcastledata(strcharinfo(3),1))) && !(.Active[0]&(1<<getd("."+strcharinfo(3))))) {
    		if (getcharid(2) && getcastledata(strcharinfo(3),1) == getcharid(2)) end;
    		sleep2 1000;
    		message strcharinfo(0), getcastlename(strcharinfo(3))+" is currently inactive.";
    		sleep2 5000;
    		if (compare(strcharinfo(3),"g_cas")) warp "SavePoint",0,0;
    	}
    	end;
    
    OnMenu:
    while(1) {
    	mes "[WOE Information]";
    	if (agitcheck() || agitcheck2()) {
    		if (.Active[0]) {
    			for(set .@i,0; .@i<.Size; set .@i,.@i+4)
    				if (gettime(4) == $WOE_CONTROL[.@i] && gettime(3) >= $WOE_CONTROL[.@i+1] && gettime(3) < $WOE_CONTROL[.@i+2]) {
    					set .@i, $WOE_CONTROL[.@i+2];
    					break;
    				}
    			mes "The War of Emperium is ^0055FFactive^000000 until ^FF0000"+Add_Zero(.@i)+"^000000 in the following regions:";
    			mes " ";
    			for(set .@i,0; .@i<6; set .@i,.@i+1)
    				if (.Active[1]&(1<<(.@i+1))) mes " > ^777777"+.Regions$[.@i]+"^000000";
    		} else
    			mes "The War of Emperium is ^0055FFactive^000000.";
    	} else {
    		for(set .@i,0; .@i<.Size; set .@i,.@i+4)
    			if ((gettime(4) == $WOE_CONTROL[.@i] && gettime(3) <= $WOE_CONTROL[.@i+1]) || gettime(4) < $WOE_CONTROL[.@i]) {
    				setarray .@time[0],$WOE_CONTROL[.@i],$WOE_CONTROL[.@i+1];
    				break;
    			}
    		if (!getarraysize(.@time))
    			setarray .@time[0],$WOE_CONTROL[0],$WOE_CONTROL[1];
    		mes "The War of Emperium is ^777777inactive^000000.";
    		if (.Size) {
    			mes " ";
    			mes "The next session will begin";
    			mes "on ^0055FF"+.Days$[.@time[0]]+"^000000 at "+Add_Zero(.@time[1])+"^000000.";
    		}
    	}
    	next;
    	switch(select(""+((.CastleWarp || .Active[1])?" ~ Warp to castles...":"")+": ~ Check schedule...: ~ View castle owners...:"+((getgmlevel()<.GMAccess || !getgmlevel())?"":" ~ Manage sessions...")+": ~ ^777777Cancel^000000")) {
    	case 1:
    		if (.CastleWarp) set .@clr$,"^0055FF";
    		set .@menu$,"";
    		for(set .@i,0; .@i<6; set .@i,.@i+1) {
    			if (.CastleWarp || .Active[1]&(1<<(.@i+1)))
    				set .@menu$, .@menu$+" ~ "+((.Active[1]&(1<<(.@i+1)))?.@clr$:"^777777")+.Regions$[.@i]+" Castles^000000";
    			set .@menu$, .@menu$+":";
    		}
    		set .@i, select(.@menu$)-1;
    		set .@menu$,"";
    		for(set .@j,.@i*5; .@j<(.@i*5)+5; set .@j,.@j+1) {
    			if (.CastleWarp || .Active[0]&(1<<.@j))
    				set .@menu$, .@menu$+" ~ "+((.Active[0]&(1<<.@j))?.@clr$:"^777777")+getcastlename(.Castles$[.@j])+"^000000";
    			set .@menu$, .@menu$+":";
    		}
    		set .@j, select(.@menu$)-1;
    		warp .Map$[.@i],.MapX[(.@i*5)+.@j],.MapY[(.@i*5)+.@j];
    		close;
    	case 2:
    		mes "[Schedule]";
    		if (.Size) {
    			freeloop(1);
    			for(set .@i,0; .@i<.Size; set .@i,.@i+4) {
    				mes "> ^FF0000"+.Days$[$WOE_CONTROL[.@i]]+" ("+Add_Zero($WOE_CONTROL[.@i+1])+"-"+Add_Zero($WOE_CONTROL[.@i+2])+")^000000";
    				for(set .@j,0; .@j<30; set .@j,.@j+1)
    					if ($WOE_CONTROL[.@i+3]&(1<<.@j)) mes "  ~ "+getcastlename(.Castles$[.@j])+" ^777777("+.Castles$[.@j]+")^000000";
    				if (.@i+4 < .Size) mes " ";
    			}
    			freeloop(0);
    		} else
    			mes "No times are configured.";
    		next;
    		break;
    	case 3:
    		mes "[Castle Ownership]";
    		for(set .@i,0; .@i<6; set .@i,.@i+1) {
    			set .@k, .@i*5;
    			mes "> ^FF0000"+.Regions$[.@i]+"^000000";
    			for(set .@j,.@k; .@j<(.@k+5); set .@j,.@j+1) { 
    				set .@t, getcastledata(.Castles$[.@j],1);
    				mes "  ~ "+getcastlename(.Castles$[.@j])+": "+((.@t)?"^0055FF"+getguildname(.@t):"^777777unoccupied")+"^000000";
    			}
    			if (.@i < 5) mes " ";
    		}
    		next;
    		break;
    	case 4:
    	while(1) {
    		mes "[Session Manager]";
    		mes "There are ^0055FF"+(.Size/4)+" session(s)^000000 configured.";
    		mes "What would you like to do?";
    		next;
    		switch(select(" ~ Add a session...: ~ Delete a session...: ~ Reload settings...:"+((agitcheck() || agitcheck2())?" ~ End WOE session...":"")+": ~ ^777777Go back^000000")) {
    		case 1:
    			mes "[New Session]";
    			if (.Size > 127) {
    				mes "You have already reached the maximum of 32 sessions.";
    				next;
    				break;
    			}
    			mes "Select a day.";
    			next;
    			set .@Day, select(" ~ "+implode(.Days$,": ~ "))-1;
    			mes "[New Session]";
    			mes "Select a start time for ^0055FF"+.Days$[.@Day]+"^000000.";
    			next;
    			set .@menu$,"";
    			for(set .@i,0; .@i<23; set .@i,.@i+1)
    				set .@menu$, .@menu$+" ~ "+Add_Zero(.@i,1)+":";
    			set .@Start, select(.@menu$)-1;
    			mes "[New Session]";
    			mes "Select an end time for ^0055FF"+.Days$[.@Day]+"^000000.";
    			next;
    			set .@menu$,"";
    			for(set .@i,.@Start+1; .@i<24; set.@i,.@i+1)
    				set .@menu$, .@menu$+" ~ "+Add_Zero(.@i,1)+":";
    			set .@End, select(.@menu$)+.@Start;
    			for(set .@i,0; .@i<.Size; set .@i,.@i+4)
    				if (.@Day == $WOE_CONTROL[.@i] &&
    				   ((.@Start >= $WOE_CONTROL[.@i+1] && .@Start < $WOE_CONTROL[.@i+2]) ||
    				    (.@End > $WOE_CONTROL[.@i+1] && .@End <= $WOE_CONTROL[.@i+2]) ||
    				    (.@Start <= $WOE_CONTROL[.@i+1] && .@End >= $WOE_CONTROL[.@i+2]))) {
    					mes "[New Session]";
    					mes "The chosen times overlap with an existing session.";
    					next;
    					set .@d,1;
    					break;
    				}
    			if (.@d) { set .@d,0; break; }
    			set .@Castle,0;
    			while(1) {
    				mes "[New Session]";
    				mes "^0055FF"+.Days$[.@Day]+" ("+Add_Zero(.@Start)+"-"+Add_Zero(.@End)+")^000000";
    				mes " > Castles:";
    				if (!.@Castle)
    					mes "   ~ ^777777(none selected)^000000";
    				else for(set .@i,0; .@i<30; set .@i,.@i+1)
    					if (.@Castle&(1<<.@i)) mes "   ~ "+getcastlename(.Castles$[.@i])+" ("+.Castles$[.@i]+")";
    				next;
    				set .@menu$,((.@Castle)?" ~ ^FF0000Finished...^000000":"")+":";
    				for(set .@i,0; .@i<30; set .@i,.@i+1)
    					set .@menu$, .@menu$+" ~ "+((.@Castle&(1<<.@i))?"^0055FF":"")+getcastlename(.Castles$[.@i])+" ("+.Castles$[.@i]+")^000000:";
    				set .@i, select(.@menu$)-1;
    				if (.@i)
    					set .@Castle, .@Castle^(1<<(.@i-1));
    				else {
    					mes "[New Session]";
    					mes "Are you sure?";
    					next;
    					switch(select(" ~ ^0055FFAdd session...^000000: ~ Continue selecting castles...: ~ ^777777Cancel^000000")) {
    					case 1:
    						for(set .@i,0; .@i<.Size; set .@i,.@i+4)
    							if ((.@Day == $WOE_CONTROL[.@i] && .@End <= $WOE_CONTROL[.@i+1]) || .@Day < $WOE_CONTROL[.@i]) {
    								set .@d,1;
    								break;
    							}
    						if (!.@d) { set .@d,1; set .@i,.Size; }
    						copyarray $WOE_CONTROL[.@i+4], $WOE_CONTROL[.@i], .Size-.@i;
    						setarray $WOE_CONTROL[.@i], .@Day, .@Start, .@End, .@Castle;
    						set .Size, getarraysize($WOE_CONTROL);
    					case 3:
    						mes "[New Session]";
    						mes ((.@d)?"Session added.":"Cancelled.");
    						next;
    						set .@d,1;
    					case 2:
    						break;
    					}
    					if (.@d) { set .@d,0; break; }
    				}
    			}
    			break;
    		case 2:
    			mes "[Remove Session]";
    			if (!.Size) {
    				mes "There are no sessions configured.";
    				next;
    				break;
    			}
    			mes "Select a session to remove.";
    			next;
    			set .@menu$,"";
    			for(set .@i,0; .@i<.Size; set .@i,.@i+4)
    				set .@menu$, .@menu$+" ~ "+.Days$[$WOE_CONTROL[.@i]]+" ("+Add_Zero($WOE_CONTROL[.@i+1],1)+"-"+Add_Zero($WOE_CONTROL[.@i+2],1)+"):";
    			set .@menu$, .@menu$+" ~ ^777777Cancel^000000";
    			set .@i, select(.@menu$)-1;
    			if (.@i == (.Size/4)) break;
    			mes "[Remove Session]";
    			mes "Delete ^0055FF"+.Days$[$WOE_CONTROL[.@i*4]]+"'s^000000 session?";
    			mes "This action cannot be undone.";
    			next;
    			set .@j, select(" ~ ^FF0000Delete session...^000000: ~ ^777777Cancel^000000");
    			mes "[Remove Session]";
    			if (.@j == 2)
    				mes "Cancelled.";
    			else {
    				deletearray $WOE_CONTROL[.@i*4],4;
    				set .Size, getarraysize($WOE_CONTROL);
    				mes "Session deleted.";
    			}
    			next;
    			break;
    		case 3:
    			mes "[Reload Settings]";
    			mes "This will trigger all events related to new session configurations, if any.";
    			if (agitcheck() || agitcheck2()) {
    				mes " ";
    				mes "Be aware that this will disrupt the current WOE session.";
    			}
    			next;
    			set .@i, select(" ~ ^0055FFReload settings...^000000: ~ ^777777Cancel^000000");
    			mes "[Reload Settings]";
    			if (.@i == 2) mes "Cancelled.";
    			else {
    				set .Init,1;
    				donpcevent "WOE_CONTROL::OnMinute00";
    				mes "Variables have been re-initialized.";
    			}
    			next;
    			break;
    		case 4:
    			mes "[Force Agit End]";
    			if (!agitcheck() && !agitcheck2())  {
    				mes "WOE has already ended.";
    				next;
    				break;
    			}
    			mes "This command will safely execute all AgitEnd events.";
    			mes " ";
    			mes "Kill the current WOE session?";
    			next;
    			set .@i, select(" ~ ^FF0000End session...^000000:"+((.Options&1)?" ~ ^FF0000End session without rewards...^000000":"")+": ~ ^777777Cancel^000000");
    			mes "[Force Agit End]";
    			if (.@i == 3)
    				mes "Cancelled.";
    			else {
    				set .ForceEnd, .@i;
    				donpcevent "WOE_CONTROL::OnWOEEnd";
    				mes "WOE session terminated.";
    			}
    			next;
    			break;
    		case 5:
    			set .@d,1; break;
    		}
    		if (.@d) { set .@d,0; break; }
    		} break;
    	case 5:
    		close;
    	} }
    }
    
    
    

    Edit:

    i want to know how to set castle drops for each castle only for gm of the guild.

  3. It took too long, I do some other stuffs first. I only put marks where you will put condition or dialogues to your npc. I also added 4 new quest npc before you can go to karinaquest. Heres your script, tell me if you need help.

    The edited lines:

    // EDIT MAP AND THE LINE NEW NPC QUEST #1
    valkyrie,48,86,4	script	Karinaq1	856,{
    	if(jmk_jmk == 2) {
    		mes "ok, blahblah i need!";
    		next;
    		if(countitem(add ID)){ // condition fulfilled
    			mes "Insert message here";
    			set jmk_jmk,3;
    			close;
    		}
    		if(countitem(add ID)){ // condition not fulfilled
    			mes "Insert messager here";
    			close;
    		}
    	}					
    	else
    	mes "I have no business with you";	// Quest or finished or not yet talk to dialogue
    	close;
    }
    // EDIT MAP AND THE LINE NEW NPC QUEST #2
    valkyrie,48,86,4	script	Karinaq2	856,{
    	if(jmk_jmk == 4) {
    		mes "ok, blahblah i need!";
    		next;
    		if(countitem(add ID)){ // condition fulfilled
    			mes "Insert message here";
    			set jmk_jmk,5;
    			close;
    		}						
    		if(countitem(add ID)){ // condition not fulfilled
    			mes "Insert messager here";
    			close;
    		}
    	}
    	else
    	mes "I have no business with you";	// Quest or finished or not yet talk to dialogue 
    	close;
    }
    // EDIT MAP AND THE LINE NEW NPC QUEST #3
    valkyrie,48,86,4	script	Karinaq3	856,{
    	if(jmk_jmk == 6) {
    		mes "ok, blahblah i need!";
    		next;
    		if(countitem(add ID)){ // condition fulfilled
    			mes "Insert message here";
    			set jmk_jmk,7;
    			close;
    		}
    		if(countitem(add ID)){ // condition not fulfilled
    			mes "Insert messager here";
    			close;
    		}
    	}
    	else
    	mes "I have no business with you";	// Quest or finished or not yet talk to dialogue 
    	close;
    }
    // EDIT MAP AND THE LINE NEW NPC QUEST #4
    valkyrie,48,86,4	script	Karinaq4	856,{
    	if(jmk_jmk == 8) {
    		mes "ok, blahblah i need!";
    		next;
    		if(countitem(add ID)){ // condition fulfilled
    			mes "Insert message here";
    			set jmk_jmk,9;
    			close;
    		}
    		if(countitem(add ID)){ // condition not fulfilled
    			mes "Insert messager here";
    			close;
    		}
    	}
    	else					
    	mes "I have no business with you";	// Quest or finished or not yet talk to dialogue 
    	close;
    }
    //-------------------- EDIT LINE ABOVE
    
    valkyrie,48,86,4	script	Karina	856,{
    mes "[ Karina ]";
    mes "Hello there child, I am Karina.";
    next;
    if(bry_bry >= 1) goto L_kalbo;
    if(countitem(2524) < 1 || countitem(2421) < 1 || countitem(2357) < 1 || countitem(2115) < 1) goto Karina;
    mes "[ Karina ]";
    mes "Good you have the Valkyrie Set if you must know I am the crafter of the Sleipnir.";
    next;
    if(jmk_jmk < 1) goto Karina;
    if(jmk_jmk == 1) goto KarinaQ1;	// DONT CHANGE THIS VARIABLES ITS CHAINED
    if(jmk_jmk == 2) goto KarinaQ2;
    if(jmk_jmk == 3) goto KarinaQ3;
    if(jmk_jmk == 4) goto KarinaQ4;
    if(jmk_jmk == 5) goto KarinaQ5;
    if(jmk_jmk == 6) goto KarinaQ6;    // DONT CHANGE THIS VARIABLES ITS CHAINED
    if(jmk_jmk == 7) goto KarinaQ7;
    if(jmk_jmk == 8) goto KarinaQ8;
    if(jmk_jmk == 9) goto KarinaQ9;	// 1st NPC 2/3 2nd NPC 4/5 3rd NPC 6/7 4th NPC 8/9 = Varible settings. 
    //-------------------------------- EDIT LINE BELOW
    KarinaQ1:
    	mes "Ok, I will give you additional quest now go find this 4 NPC";
    	mes "Edit qdialogues and quest here";
    	next;
    	mes "first go here!"				// First npc quest
    	set jmk_jmk,2;
    	close;
    	
    KarinaQ2:	
    	mes "Go to 2nd npc now!";			// FIRST NPC check QUEST
    	close;
    
    KarinaQ3:
    	mes "well done now go to 2nd npc";		// 1st NPC done, go to 2nd npc
    	next;
    	mes "hes located at.";
    	set jmk_jmk,4;
    	
    KarinaQ4:
    	mes "did you talk to 2nd npc?;		// 2nd NPC check
    	close;
    	
    KarinaQ5:
    	mes "You did great!";				// 2nd NPC DONE
    	next;
    	mes "now go to 3rd npc hes located at";
    	set jmk_jmk,6;
    	
    KarinaQ6:
    	mes "did you talk to 2nd npc?;		// 3nd NPC check
    	close;
    
    KarinaQ7:
    	mes "You did great!";				// 3rd NPC DONE
    	next;
    	mes "now go to 4th npc hes located at";
    	set jmk_jmk,8;
    	
    KarinaQ8:
    	mes "did you talk to 4th npc?;		// 4th NPC check
    	close;	
    	
    KarinaQ9:
    	mes "You did great!";				// 4th NPC DONE
    	next;
    	close2;
    	goto Karinaquest;	// then it will bring you to karina main quest  					
    //-------------------------------- EDIT LINE ABOVE	
    
    The script:

    valkyrie.txt

    X_X my phone got crazy, ok lil troll when i wake up ill start editing and will let you know how is going,

    1 more question, do you spesk spanish? I saw a spanish word in the script (gracias, Oh Santo)

    Something like that xD.

  4. Sorry I haven`t time to finish the script yesterday because it was way too long, gonna fix your script(Did you ever notice that it uses too much global variables? If you wanted me to re-write the whole script I will but give me time, I see lots of Filipino Langues in the script, LOL some of them are funny!) Anyways, now i do continue trying to finish the script. :D Give me time for this. :D

    dont worry men, you are helping me of course you can take your time, and is funny heard it have filipino words xD i didnt notice nothing xD

  5. If you can give me the map warps for each location you want the duplicate npc's then I would be happy to make this for you.

     

    ok this npc's will be located on each room like this: (these are the warpers to each room by floor and the npc helper in each room, here i want to add you have to set a password to enter, if somebody is in the room, you can enter only if you have the password, but, if room detect no one is inside the password will be reset)

    // ---- MVP ARENA!!!!!! By Darkchild with 16 diff MVP's inside
    // -- Optimised The MVP arena!!!! By massdriller
    // - NPC in prontera
    
    // --- Optimising Functions
    
    function	script	Ramvp_1	{
    
    	mes "[ ^0065DFAlpha MVP^000000 ]";
    		mes "Here you go!";
    			return;
    }
    
    function	script	Ramvp_2	{
    
    	mes "[ ^0065DFBeta MVP^000000 ]";
    		mes "Here you go!";
    			return;
    }
    
    function	script	Ramvp_3	{
    
    	mes "[ ^0065DFTheta MVP^000000 ]";
    		mes "Here you go!";
    			return;
    
    }
    
    
    function	script	Ramvp_4	{
    
    	mes "[ ^0065DFEpsilon MVP^000000 ]";
    		mes "Here you go!";
    			return;
    
    }
    
    function	script	Ramvp_M	{
    
    	mes "How do you need help?.";
    	menu "Harder Monsters",L_Next,"Heal Please",L_Heal,"Leave",L_Leave;
    
    	L_Next:
    		return;
    
    	L_Heal:
    		percentheal 100,100;
    		close;
    
    	L_Leave:
    		warp "prontera",156,179;
    		close;
    
    }
    
    function	script	Ramvp_M2	{
    
    	mes "How do you need help?.";
    	menu "Heal Please",L_Heal,"Leave",L_Leave;
    
    	L_Heal:
    		percentheal 100,100;
    		close;
    
    	L_Leave:
    		warp "prontera",156,179;
    		close;
    
    }
    
    

    each room have 8 floors:  Alpha: pvp_n_1-2 to 8-2, Beta: pvp_n_1-3 to 8-3, Theta: pvp_n_1-4 to 8-4, Epsilon: pvp_n_1-5 to 8-5 , each npc is located on 100, 100 of each room (example: pvp_n_1-2 ,100, 100)

     

    if you need, this is the script of the warper in towns, to enter the room where the each room warpers are.

    // ---- MVP ARENA!!!!!! By Darkchild with 16 diff MVP's inside
    // -- Optimised The MVP arena!!!! By massdriller
    // - NPC in prontera
    // - Removed Duplicates [Silent]
    
    prontera,158,188,3	script	MVP Warper#1::mvp	768,{
    
    	mes "[ ^0065DFMVP Warper^000000 ]";
    	mes "Would you like to go to the MVP Arena ?...";
    
    	if (select("Yes!","No thanks.") == 2)
    		close;
    
    	close2;
    	warp "quiz_00",50,24;
    	end;
    }
    
    
    // --- Inside the Arena
    // --- NPC's That explains thigns
    quiz_00,49,31,4	script	MVP Arena Guide	778,{
    
    	switch(select("Intro","I want to go back","Heal me please","Cancel"))
    	{
    	case 1:
    		mes "[ ^0065DFMVP Arena Guide^000000 ]";
    		mes "Welcome and behold this sacred place, Here you will find out if you truly have what it takes to call yourself a warrior, and a Team mate.";
    		next;
    		mes "Here in [ ^0065DFSvRO^000000 ] we like to be a family, and as a family you learn you must help and assist one-another, so if you want to survive you should learn to Co-operate.";
    		next;
    		mes "There are Plenty of rooms with MVP's in them so don't all fight over the one room just cause you think it's the only one, just move to the next one.";
    		next;
    		mes "If you can't get along, and there is too much complaining about people stealing MVP kills and items... then this place will be removed.";
    		next;
    		mes "Now the npc's are in groups of monsters, there are 4 different mvps per each npc, i won't tell you which it's a surprise hehe.";
    		next;
    		mes "Good luck, Live long and Prosper!.";
    		close;
    	break;
    	case 2:
    		close2;
    		warp "prontera",156,179;
    		end;
    	break;
    	case 3:
    		percentheal 100,100;
    		close;
    	break;
    	case 4:
    		close;
    	break;
    	}
    	close;
    }
    
    // --- The first Alpha-MVP warper
    quiz_00,56,31,4	script	Alpha MVP	770,{
    	mes "[ ^0065DFAlpha MVP^000000 ]";
    	mes "I am the first Keeper, are you ready?.";
    	if (select("Yes!","Urrr No.") == 2)
    		close;
    
    	mes "[ ^0065DFAlpha MVP^000000 ]";
    	mes "Which Arena you want to go to??";
    	menu
    	"Arena 1 [" + getmapusers("pvp_n_1-2") + " / 50]",Larena1,
    	"Arena 2 [" + getmapusers("pvp_n_2-2") + " / 50]",Larena2,
    	"Arena 3 [" + getmapusers("pvp_n_3-2") + " / 15]",Larena3,
    	"Arena 4 [" + getmapusers("pvp_n_4-2") + " / 15]",Larena4,
    	"Arena 5 [" + getmapusers("pvp_n_5-2") + " / 15]",Larena5,
    	"Arena 6 [" + getmapusers("pvp_n_6-2") + " / 15]",Larena6,
    	"Arena 7 [" + getmapusers("pvp_n_7-2") + " / 15]",Larena7,
    	"Arena 8 [" + getmapusers("pvp_n_8-2") + " / 15]",Larena8,
    	"Quit",Lcancel;
    
    Lcancel:
    	close;
    
    Larena1:
    	if (getmapusers("pvp_n_1-2") > 49) goto Lsorry;
    	callfunc "Ramvp_1";
    	warp "pvp_n_1-2",102,102;
    	close;
    
    Larena2:
    	if (getmapusers("pvp_n_2-2") > 49) goto Lsorry;
    	callfunc "Ramvp_1";
    	warp "pvp_n_2-2",102,102;
    	close;
    
    Larena3:
    	if (getmapusers("pvp_n_3-2") > 14) goto Lsorry;
    	callfunc "Ramvp_1";
    	warp "pvp_n_3-2",102,102;
    	close;
    
    Larena4:
    	if (getmapusers("pvp_n_4-2") > 14) goto Lsorry;
    	callfunc "Ramvp_1";
    	warp "pvp_n_4-2",102,102;
    	close; 
    
    Larena5:
    	if (getmapusers("pvp_n_5-2") > 14) goto Lsorry;
    	callfunc "Ramvp_1";
    	warp "pvp_n_5-2",102,102;
    	close;
    
    Larena6:
    	if (getmapusers("pvp_n_6-2") > 14) goto Lsorry;
    	callfunc "Ramvp_1";
    	warp "pvp_n_6-2",102,102;
    	close;
    
    Larena7:
    	if (getmapusers("pvp_n_7-2") > 14) goto Lsorry;
    	callfunc "Ramvp_1";
    	warp "pvp_n_7-2",102,102;
    	close;
    
    Larena8:
    	if (getmapusers("pvp_n_8-2") > 14) goto Lsorry;
    	callfunc "Ramvp_1";
    	warp "pvp_n_8-2",102,102;
    	close;
    
    Lsorry:
    	mes "[ ^0065DFAlpha MVP^000000 ]";
    	mes "Sorry but this Arena is already full, maybe you can try another one!";
    	close;
    }
    
    
    // --- The first Beta-MVP warper
    quiz_00,58,31,4	script	Beta MVP	773,{
    	mes "[ ^0065DFAlpha MVP^000000 ]";
    	mes "I am the first Keeper, are you ready?.";
    	menu "Yes!",L_Yes,"Urrr No.",Lcancel;
    
    L_Yes:
    	mes "[ ^0065DFBeta MVP^000000 ]";
    	mes "Which Arena you want to go to??";
    	menu
    	"Arena 1 [" + getmapusers("pvp_n_1-3") + " / 50]",Larena1,
    	"Arena 2 [" + getmapusers("pvp_n_2-3") + " / 15]",Larena2,
    	"Arena 3 [" + getmapusers("pvp_n_3-3") + " / 15]",Larena3,
    	"Arena 4 [" + getmapusers("pvp_n_4-3") + " / 15]",Larena4,
    	"Arena 5 [" + getmapusers("pvp_n_5-3") + " / 15]",Larena5,
    	"Arena 6 [" + getmapusers("pvp_n_6-3") + " / 15]",Larena6,
    	"Arena 7 [" + getmapusers("pvp_n_7-3") + " / 15]",Larena7,
    	"Arena 8 [" + getmapusers("pvp_n_8-3") + " / 15]",Larena8,
    	"Quit",Lcancel;
    
    Lcancel:
    	close;
    
    Larena1:
    	if (getmapusers("pvp_n_1-3") > 49) goto Lsorry;
    	callfunc "Ramvp_2";
    	warp "pvp_n_1-3",102,102;
    	close;
    
    Larena2:
    	if (getmapusers("pvp_n_2-3") > 14) goto Lsorry;
    	callfunc "Ramvp_2";
    	warp "pvp_n_2-3",102,102;
    	close;
    
    Larena3:
    	if (getmapusers("pvp_n_3-3") > 14) goto Lsorry;
    	callfunc "Ramvp_2";
    	warp "pvp_n_3-3",102,102;
    	close;
    
    Larena4:
    	if (getmapusers("pvp_n_4-3") > 14) goto Lsorry;
    	callfunc "Ramvp_2";
    	warp "pvp_n_4-3",102,102;
    	close;
    
    Larena5:
    	if (getmapusers("pvp_n_5-3") > 14) goto Lsorry;
    	callfunc "Ramvp_2";
    	warp "pvp_n_5-3",102,102;
    	close;
    
    Larena6:
    	if (getmapusers("pvp_n_6-3") > 14) goto Lsorry;
    	callfunc "Ramvp_2";
    	warp "pvp_n_6-3",102,102;
    	close;
    
    Larena7:
    	if (getmapusers("pvp_n_7-3") > 14) goto Lsorry;
    	callfunc "Ramvp_2";
    	warp "pvp_n_7-3",102,102;
    	close;
    
    Larena8:
    	if (getmapusers("pvp_n_8-3") > 14) goto Lsorry;
    	callfunc "Ramvp_2";
    	warp "pvp_n_8-3",102,102;
    	close;
    
    Lsorry:
    	mes "[ ^0065DFBeta MVP^000000 ]";
    	mes "Sorry but this Arena is already full, maybe you can try another one!";
    	close;
    }
    
    
    // --- The first Theta-MVP warper
    quiz_00,60,31,4	script	Theta MVP	774,{
    	mes "[ ^0065DFTheta MVP^000000 ]";
    	mes "I am the first Keeper, are you ready?.";
    	menu "Yes!",L_Yes,"Urrr No.",Lcancel;
    
    L_Yes:
    	mes "[ ^0065DFTheta MVP^000000 ]";
    	mes "Which Arena you want to go to??";
    	menu
    	"Arena 1 [" + getmapusers("pvp_n_1-4") + " / 50]",Larena1,
    	"Arena 2 [" + getmapusers("pvp_n_2-4") + " / 15]",Larena2,
    	"Arena 3 [" + getmapusers("pvp_n_3-4") + " / 15]",Larena3,
    	"Arena 4 [" + getmapusers("pvp_n_4-4") + " / 15]",Larena4,
    	"Arena 5 [" + getmapusers("pvp_n_5-4") + " / 15]",Larena5,
    	"Arena 6 [" + getmapusers("pvp_n_6-4") + " / 15]",Larena6,
    	"Arena 7 [" + getmapusers("pvp_n_7-4") + " / 15]",Larena7,
    	"Arena 8 [" + getmapusers("pvp_n_8-4") + " / 15]",Larena8,
    	"Quit",Lcancel;
    
    Lcancel:
    	close;
    
    Larena1:
    	if (getmapusers("pvp_n_1-4") > 49) goto Lsorry;
    	callfunc "Ramvp_3";
    	warp "pvp_n_1-4",102,102;
    	close;
    
    Larena2:
    	if (getmapusers("pvp_n_2-4") > 14) goto Lsorry;
    	callfunc "Ramvp_3";
    	warp "pvp_n_2-4",102,102;
    	close;
    
    Larena3:
    	if (getmapusers("pvp_n_3-4") > 14) goto Lsorry;
    	callfunc "Ramvp_3";
    	warp "pvp_n_3-4",102,102;
    	close;
    
    Larena4:
    	if (getmapusers("pvp_n_4-4") > 14) goto Lsorry;
    	mes "[ ^0065DFTheta MVP^000000 ]";
    	mes "Here you go!";
    	warp "pvp_n_4-4",102,102;
    	close;
    
    Larena5:
    	if (getmapusers("pvp_n_5-4") > 14) goto Lsorry;
    	callfunc "Ramvp_3";
    	warp "pvp_n_5-4",102,102;
    	close;
    
    Larena6:
    	if (getmapusers("pvp_n_6-4") > 14) goto Lsorry;
    	callfunc "Ramvp_3";
    	warp "pvp_n_6-4",102,102;
    	close;
    
    Larena7:
    	if (getmapusers("pvp_n_7-4") > 14) goto Lsorry;
    	callfunc "Ramvp_3";
    	warp "pvp_n_7-4",102,102;
    	close;
    
    Larena8:
    	if (getmapusers("pvp_n_8-4") > 14) goto Lsorry;
    	callfunc "Ramvp_3";
    	warp "pvp_n_8-4",102,102;
    	close;
    
    Lsorry:
    	mes "[ ^0065DFTheta MVP^000000 ]";
    	mes "Sorry but this Arena is already full, maybe you can try another one!";
    	close;
    }
    
    
    // --- The first Epsilon-MVP warper
    quiz_00,62,31,4	script	Epsilon MVP	776,{
    	mes "[ ^0065DFEpsilon MVP^000000 ]";
    	mes "I am the first Keeper, are you ready?.";
    	menu "Yes!",L_Yes,"Urrr No.",Lcancel;
    
    L_Yes:
    	mes "[ ^0065DFEpsilon MVP^000000 ]";
    	mes "Which Arena you want to go to??";
    	menu
    	"Arena 1 [" + getmapusers("pvp_n_1-5") + " / 50]",Larena1,
    	"Arena 2 [" + getmapusers("pvp_n_2-5") + " / 15]",Larena2,
    	"Arena 3 [" + getmapusers("pvp_n_3-5") + " / 15]",Larena3,
    	"Arena 4 [" + getmapusers("pvp_n_4-5") + " / 15]",Larena4,
    	"Arena 5 [" + getmapusers("pvp_n_5-5") + " / 15]",Larena5,
    	"Arena 6 [" + getmapusers("pvp_n_6-5") + " / 15]",Larena6,
    	"Arena 7 [" + getmapusers("pvp_n_7-5") + " / 15]",Larena7,
    	"Arena 8 [" + getmapusers("pvp_n_8-5") + " / 15]",Larena8,
    	"Quit",Lcancel;
    
    Lcancel:
    	close;
    
    Larena1:
    	if (getmapusers("pvp_n_1-5") > 49) goto Lsorry;
    	callfunc "Ramvp_4";
    	warp "pvp_n_1-5",102,102;
    	close;
    
    Larena2:
    	if (getmapusers("pvp_n_2-5") > 14) goto Lsorry;
    	callfunc "Ramvp_4";
    	warp "pvp_n_2-5",102,102;
    	close;
    
    Larena3:
    	if (getmapusers("pvp_n_3-5") > 14) goto Lsorry;
    	callfunc "Ramvp_4";
    	warp "pvp_n_3-5",102,102;
    	close;
    
    Larena4:
    	if (getmapusers("pvp_n_4-5") > 14) goto Lsorry;
    	callfunc "Ramvp_4";
    	warp "pvp_n_4-5",102,102;
    	close;
    
    Larena5:
    	if (getmapusers("pvp_n_5-5") > 14) goto Lsorry;
    	callfunc "Ramvp_4";
    	warp "pvp_n_5-5",102,102;
    	close;
    
    Larena6:
    	if (getmapusers("pvp_n_6-5") > 14) goto Lsorry;
    	callfunc "Ramvp_4";
    	warp "pvp_n_6-5",102,102;
    	close;
    
    Larena7:
    	if (getmapusers("pvp_n_7-5") > 14) goto Lsorry;
    	callfunc "Ramvp_4";
    	warp "pvp_n_7-5",102,102;
    	close;
    
    Larena8:
    	if (getmapusers("pvp_n_8-5") > 14) goto Lsorry;
    	callfunc "Ramvp_4";
    	warp "pvp_n_8-5",102,102;
    	close;
    
    Lsorry:
    	mes "[ ^0065DFEpsilon MVP^000000 ]";
    	mes "Sorry but this Arena is already full, maybe you can try another one!";
    	close;
    }
    
    
    // ---- Inside MVP-Arena NPC's
    // --- Alpha-MVP #1
    pvp_n_1-2,100,100,4	script	MVP-Protector#01	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_2-2",102,102;
    	close;
    
    }
    // --- Alpha-MVP #2
    pvp_n_2-2,100,100,4	script	MVP-Protector#02	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_3-2",102,102;
    	close;
    
    }
    // --- Alpha-MVP #3
    pvp_n_3-2,100,100,4	script	MVP-Protector#03	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_4-2",102,102;
    	close;
    
    }
    // --- Alpha-MVP #4
    pvp_n_4-2,100,100,4	script	MVP-Protector#04	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_5-2",102,102;
    	close;
    
    }
    // --- Alpha-MVP #5
    pvp_n_5-2,100,100,4	script	MVP-Protector#05	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_6-2",102,102;
    	close;
    
    }
    // --- Alpha-MVP #6
    pvp_n_6-2,100,100,4	script	MVP-Protector#06	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_7-2",102,102;
    	close;
    
    }
    // --- Alpha-MVP #7
    pvp_n_7-2,100,100,4	script	MVP-Protector#07	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_8-2",102,102;
    	close;
    }
    // --- Alpha-MVP #8
    pvp_n_8-2,100,100,4	script	MVP-Protector#08	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M2";
    }
    
    // --- Beta-MVP #1
    pvp_n_1-3,100,100,4	script	MVP-Protector#09	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_2-3",102,102;
    	close;
    }
    // --- Beta-MVP #2
    pvp_n_2-3,100,100,4	script	MVP-Protector#10	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_3-3",102,102;
    	close;
    }
    // --- Beta-MVP #3
    pvp_n_3-3,100,100,4	script	MVP-Protector#11	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_4-3",102,102;
    	close;
    }
    // --- Beta-MVP #4
    pvp_n_4-3,100,100,4	script	MVP-Protector#12	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_5-3",102,102;
    	close;
    }
    // --- Beta-MVP #5
    pvp_n_5-3,100,100,4	script	MVP-Protector#13	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_6-3",102,102;
    	close;
    }
    // --- Beta-MVP #6
    pvp_n_6-3,100,100,4	script	MVP-Protector#14	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_7-3",102,102;
    	close;
    }
    // --- Beta-MVP #7
    pvp_n_7-3,100,100,4	script	MVP-Protector#15	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_8-3",102,102;
    	close;
    }
    // --- Beta-MVP #8
    pvp_n_8-3,100,100,4	script	MVP-Protector#16	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M2";
    }
    
    // --- Theta-MVP #1
    pvp_n_1-4,100,100,4	script	MVP-Protector#17	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_2-4",102,102;
    	close;
    }
    
    // --- Theta-MVP #2
    pvp_n_2-4,100,100,4	script	MVP-Protector#18	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_3-4",102,102;
    	close;
    }
    // --- Theta-MVP #3
    pvp_n_3-4,100,100,4	script	MVP-Protector#19	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_4-4",102,102;
    	close;
    }
    // --- Theta-MVP #4
    pvp_n_4-4,100,100,4	script	MVP-Protector#20	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_5-4",102,102;
    	close;
    }
    // --- Theta-MVP #5
    pvp_n_5-4,100,100,4	script	MVP-Protector#21	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_6-4",102,102;
    	close;
    }
    // --- Theta-MVP #6
    pvp_n_6-4,100,100,4	script	MVP-Protector#22	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_7-4",102,102;
    	close;
    }
    // --- Theta-MVP #7
    pvp_n_7-4,100,100,4	script	MVP-Protector#23	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_8-4",102,102;
    	close;
    }
    // --- Theta-MVP #8
    pvp_n_8-4,100,100,4	script	MVP-Protector#24	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M2";
    }
    
    // --- Epsilon-MVP #1
    pvp_n_1-5,100,100,4	script	MVP-Protector#25	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_2-5",102,102;
    	close;
    }
    
    // --- Epsilon-MVP #2
    pvp_n_2-5,100,100,4	script	MVP-Protector#26	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_3-5",102,102;
    	close;
    }
    // --- Epsilon-MVP #3
    pvp_n_3-5,100,100,4	script	MVP-Protector#27	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_4-5",102,102;
    	close;
    }
    // --- Epsilon-MVP #4
    pvp_n_4-5,100,100,4	script	MVP-Protector#28	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_5-5",102,102;
    	close;
    }
    // --- Epsilon-MVP #5
    pvp_n_5-5,100,100,4	script	MVP-Protector#29	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_6-5",102,102;
    	close;
    }
    // --- Epsilon-MVP #6
    pvp_n_6-5,100,100,4	script	MVP-Protector#30	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_7-5",102,102;
    	close;
    }
    // --- Epsilon-MVP #7
    pvp_n_7-5,100,100,4	script	MVP-Protector#31	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M";
    
    L_Next:
    	warp "pvp_n_8-5",102,102;
    	close;
    }
    // --- Epsilon-MVP #8
    pvp_n_8-5,100,100,4	script	MVP-Protector#32	727,{
    	mes "[ ^0065DFMVP-Protector^000000 ]";
    	callfunc "Ramvp_M2";
    }
    
    // ---- Monsters for the MVP-Arena
    // --- Alpha-MVP Maps
    // --- First Alpha-MVP area
    pvp_n_1-2,0,0,0,0	monster	Eddga	1115,3,60000,66000
    pvp_n_1-2,0,0,0,0	monster	Mistress	1059,1,60000,66000
    // --- Second Alpha-MVP area
    pvp_n_2-2,0,0,0,0	monster	Mistress	1059,3,60000,66000
    pvp_n_2-2,0,0,0,0	monster	Moonlight	1150,1,60000,66000
    // --- Third Alpha-MVP area
    pvp_n_3-2,0,0,0,0	monster	Mistress	1059,1,60000,66000
    pvp_n_3-2,0,0,0,0	monster	Moonlight	1150,2,60000,66000
    pvp_n_3-2,0,0,0,0	monster	Maya	1147,1,60000,66000
    // --- Fourth Alpha-MVP area
    pvp_n_4-2,0,0,0,0	monster	Eddga	1115,1,60000,66000
    pvp_n_4-2,0,0,0,0	monster	Mistress	1059,1,60000,66000
    pvp_n_4-2,0,0,0,0	monster	Moonlight	1150,1,60000,66000
    pvp_n_4-2,0,0,0,0	monster	Maya	1147,1,60000,66000
    // --- Fifth Alpha-MVP area
    pvp_n_5-2,0,0,0,0	monster	Eddga	1115,1,60000,66000
    pvp_n_5-2,0,0,0,0	monster	Mistress	1059,2,60000,66000
    pvp_n_5-2,0,0,0,0	monster	Moonlight	1150,1,60000,66000
    pvp_n_5-2,0,0,0,0	monster	Maya	1147,2,60000,66000
    // --- Sixth Alpha-MVP area
    pvp_n_6-2,0,0,0,0	monster	Eddga	1115,2,60000,66000
    pvp_n_6-2,0,0,0,0	monster	Mistress	1059,3,60000,66000
    pvp_n_6-2,0,0,0,0	monster	Moonlight	1150,1,60000,66000
    pvp_n_6-2,0,0,0,0	monster	Maya	1147,2,60000,66000
    // --- Seventh Alpha-MVP area
    pvp_n_7-2,0,0,0,0	monster	Eddga	1115,3,60000,66000
    pvp_n_7-2,0,0,0,0	monster	Mistress	1059,3,60000,66000
    pvp_n_7-2,0,0,0,0	monster	Moonlight	1150,2,60000,66000
    pvp_n_7-2,0,0,0,0	monster	Maya	1147,2,60000,66000
    // --- Eighth Alpha-MVP area
    pvp_n_8-2,0,0,0,0	monster	Eddga	1115,3,60000,66000
    pvp_n_8-2,0,0,0,0	monster	Mistress	1059,3,60000,66000
    pvp_n_8-2,0,0,0,0	monster	Moonlight	1150,3,60000,66000
    pvp_n_8-2,0,0,0,0	monster	Maya	1147,3,60000,66000
    
    // --- Beta-MVP Maps
    // --- First Beta-MVP area
    pvp_n_1-3,0,0,0,0	monster	Phreeoni	1159,3,60000,66000
    pvp_n_1-3,0,0,0,0	monster	Turtle General	1312,1,60000,66000
    // --- Second Beta-MVP area
    pvp_n_2-3,0,0,0,0	monster	Phreeoni	1159,2,60000,66000
    pvp_n_3-3,0,0,0,0	monster	Turtle General	1312,1,60000,66000
    pvp_n_2-3,0,0,0,0	monster	Orc Hero	1087,1,60000,66000
    // --- Third Beta-MVP area
    pvp_n_3-3,0,0,0,0	monster	Phreeoni	1159,1,60000,66000
    pvp_n_3-3,0,0,0,0	monster	Turtle General	1312,1,60000,66000
    pvp_n_3-3,0,0,0,0	monster	Orc Hero	1087,1,60000,66000
    pvp_n_3-3,0,0,0,0	monster	Orc Lord	1190,1,60000,66000
    // --- Fourth Beta-MVP area
    pvp_n_4-3,0,0,0,0	monster	Phreeoni	1159,2,60000,66000
    pvp_n_4-3,0,0,0,0	monster	Turtle General	1312,1,60000,66000
    pvp_n_4-3,0,0,0,0	monster	Orc Hero	1087,1,60000,66000
    pvp_n_4-3,0,0,0,0	monster	Orc Lord	1190,1,60000,66000
    // --- Fifth Beta-MVP area
    pvp_n_5-3,0,0,0,0	monster	Phreeoni	1159,1,60000,66000
    pvp_n_5-3,0,0,0,0	monster	Turtle General	1312,2,60000,66000
    pvp_n_5-3,0,0,0,0	monster	Orc Hero	1087,2,60000,66000
    pvp_n_5-3,0,0,0,0	monster	Orc Lord	1190,1,60000,66000
    // --- Sixth Beta-MVP area
    pvp_n_6-3,0,0,0,0	monster	Phreeoni	1159,2,60000,66000
    pvp_n_6-3,0,0,0,0	monster	Turtle General	1312,1,60000,66000
    pvp_n_6-3,0,0,0,0	monster	Orc Hero	1087,2,60000,66000
    pvp_n_6-3,0,0,0,0	monster	Orc Lord	1190,2,60000,66000
    // --- Seventh Beta-MVP area
    pvp_n_7-3,0,0,0,0	monster	Phreeoni	1159,3,60000,66000
    pvp_n_7-3,0,0,0,0	monster	Turtle General	1312,1,60000,66000
    pvp_n_7-3,0,0,0,0	monster	Orc Hero	1087,2,60000,66000
    pvp_n_7-3,0,0,0,0	monster	Orc Lord	1190,3,60000,66000
    // --- Eighth Beta-MVP area
    pvp_n_8-3,0,0,0,0	monster	Phreeoni	1159,3,60000,66000
    pvp_n_8-3,0,0,0,0	monster	Turtle General	1312,3,60000,66000
    pvp_n_8-3,0,0,0,0	monster	Orc Hero	1087,3,60000,66000
    pvp_n_8-3,0,0,0,0	monster	Orc Lord	1190,3,60000,66000
    
    // --- Theta-MVP Maps
    // --- First Theta-MVP area
    pvp_n_1-4,0,0,0,0	monster	Drake	1112,3,60000,66000
    pvp_n_1-4,0,0,0,0	monster	Osiris	1038,1,60000,66000
    // --- Second Theta-MVP area
    pvp_n_2-4,0,0,0,0	monster	Drake	1112,2,60000,66000
    pvp_n_2-4,0,0,0,0	monster	Osiris	1038,1,60000,66000
    pvp_n_2-4,0,0,0,0	monster	Doppelganger	1046,1,60000,66000
    // --- Third Theta-MVP area
    pvp_n_3-4,0,0,0,0	monster	Drake	1112,1,60000,66000
    pvp_n_3-4,0,0,0,0	monster	Osiris	1038,1,60000,66000
    pvp_n_3-4,0,0,0,0	monster	Doppelganger	1046,1,60000,66000
    pvp_n_3-4,0,0,0,0	monster	Lord of Death	1373,1,60000,66000
    // --- Fourth Theta-MVP area
    pvp_n_4-4,0,0,0,0	monster	Drake	1112,2,60000,66000
    pvp_n_4-4,0,0,0,0	monster	Osiris	1038,1,60000,66000
    pvp_n_4-4,0,0,0,0	monster	Doppelganger	1046,2,60000,66000
    pvp_n_4-4,0,0,0,0	monster	Lord of Death	1373,1,60000,66000
    // --- Fifth Theta-MVP area
    pvp_n_5-4,0,0,0,0	monster	Drake	1112,3,60000,66000
    pvp_n_5-4,0,0,0,0	monster	Osiris	1038,2,60000,66000
    pvp_n_5-4,0,0,0,0	monster	Doppelganger	1046,2,60000,66000
    pvp_n_5-4,0,0,0,0	monster	Lord of Death	1373,1,60000,66000
    // --- Sixth Theta-MVP area
    pvp_n_6-4,0,0,0,0	monster	Drake	1112,3,60000,66000
    pvp_n_6-4,0,0,0,0	monster	Osiris	1038,2,60000,66000
    pvp_n_6-4,0,0,0,0	monster	Doppelganger	1046,2,60000,66000
    pvp_n_6-4,0,0,0,0	monster	Lord of Death	1373,2,60000,66000
    // --- Seventh Theta-MVP area
    pvp_n_7-4,0,0,0,0	monster	Drake	1112,3,60000,66000
    pvp_n_7-4,0,0,0,0	monster	Osiris	1038,2,60000,66000
    pvp_n_7-4,0,0,0,0	monster	Doppelganger	1046,3,60000,66000
    pvp_n_7-4,0,0,0,0	monster	Lord of Death	1373,2,60000,66000
    // --- Eighth Theta-MVP area
    pvp_n_8-4,0,0,0,0	monster	Drake	1112,3,60000,66000
    pvp_n_8-4,0,0,0,0	monster	Osiris	1038,3,60000,66000
    pvp_n_8-4,0,0,0,0	monster	Doppelganger	1046,3,60000,66000
    pvp_n_8-4,0,0,0,0	monster	Lord of Death	1373,3,60000,66000
    
    // --- Epsilon-MVP Maps
    // --- First Epsilon-MVP area
    pvp_n_1-5,0,0,0,0	monster	Incantation Samurai	1492,3,60000,66000
    pvp_n_1-5,0,0,0,0	monster	Pharoh	1157,1,60000,66000
    // --- First Epsilon-MVP area
    pvp_n_2-5,0,0,0,0	monster	Incantation Samurai	1492,2,60000,66000
    pvp_n_2-5,0,0,0,0	monster	Pharoh	1157,1,60000,66000
    pvp_n_2-5,0,0,0,0	monster	Dark Lord	1272,1,60000,66000
    // --- First Epsilon-MVP area
    pvp_n_3-5,0,0,0,0	monster	Incantation Samurai	1492,1,60000,66000
    pvp_n_3-5,0,0,0,0	monster	Pharoh	1157,1,60000,66000
    pvp_n_3-5,0,0,0,0	monster	Dark Lord	1272,1,60000,66000
    pvp_n_3-5,0,0,0,0	monster	Baphomet	1039,1,60000,66000
    // --- First Epsilon-MVP area
    pvp_n_4-5,0,0,0,0	monster	Incantation Samurai	1492,3,60000,66000
    pvp_n_4-5,0,0,0,0	monster	Pharoh	1157,1,60000,66000
    pvp_n_4-5,0,0,0,0	monster	Dark Lord	1272,1,60000,66000
    pvp_n_4-5,0,0,0,0	monster	Baphomet	1039,1,60000,66000
    // --- First Epsilon-MVP area
    pvp_n_5-5,0,0,0,0	monster	Incantation Samurai	1492,2,60000,66000
    pvp_n_5-5,0,0,0,0	monster	Pharoh	1157,2,60000,66000
    pvp_n_5-5,0,0,0,0	monster	Dark Lord	1272,2,60000,66000
    pvp_n_5-5,0,0,0,0	monster	Baphomet	1039,1,60000,66000
    // --- First Epsilon-MVP area
    pvp_n_6-5,0,0,0,0	monster	Incantation Samurai	1492,2,60000,66000
    pvp_n_6-5,0,0,0,0	monster	Pharoh	1157,2,60000,66000
    pvp_n_6-5,0,0,0,0	monster	Dark Lord	1272,2,60000,66000
    pvp_n_6-5,0,0,0,0	monster	Baphomet	1039,1,60000,66000
    // --- First Epsilon-MVP area
    pvp_n_7-5,0,0,0,0	monster	Incantation Samurai	1492,2,60000,66000
    pvp_n_7-5,0,0,0,0	monster	Pharoh	1157,2,60000,66000
    pvp_n_7-5,0,0,0,0	monster	Dark Lord	1272,2,60000,66000
    pvp_n_7-5,0,0,0,0	monster	Baphomet	1039,2,60000,66000
    // --- First Epsilon-MVP area
    pvp_n_8-5,0,0,0,0	monster	Incantation Samurai	1492,3,60000,66000
    pvp_n_8-5,0,0,0,0	monster	Pharoh	1157,2,60000,66000
    pvp_n_8-5,0,0,0,0	monster	Dark Lord	1272,2,60000,66000
    pvp_n_8-5,0,0,0,0	monster	Baphomet	1039,2,60000,66000
    
    
    pvp_n_1-2	mapflag	nowarp
    pvp_n_2-2	mapflag	nowarp
    pvp_n_3-2	mapflag	nowarp
    pvp_n_4-2	mapflag	nowarp
    pvp_n_5-2	mapflag	nowarp
    pvp_n_6-2	mapflag	nowarp
    pvp_n_7-2	mapflag	nowarp
    pvp_n_8-2	mapflag	nowarp
    pvp_n_1-3	mapflag	nowarp
    pvp_n_2-3	mapflag	nowarp
    pvp_n_3-3	mapflag	nowarp
    pvp_n_4-3	mapflag	nowarp
    pvp_n_5-3	mapflag	nowarp
    pvp_n_6-3	mapflag	nowarp
    pvp_n_7-3	mapflag	nowarp
    pvp_n_8-3	mapflag	nowarp
    pvp_n_1-4	mapflag	nowarp
    pvp_n_2-4	mapflag	nowarp
    pvp_n_3-4	mapflag	nowarp
    pvp_n_4-4	mapflag	nowarp
    pvp_n_5-4	mapflag	nowarp
    pvp_n_6-4	mapflag	nowarp
    pvp_n_7-4	mapflag	nowarp
    pvp_n_8-4	mapflag	nowarp
    pvp_n_1-5	mapflag	nowarp
    pvp_n_2-5	mapflag	nowarp
    pvp_n_3-5	mapflag	nowarp
    pvp_n_4-5	mapflag	nowarp
    pvp_n_5-5	mapflag	nowarp
    pvp_n_6-5	mapflag	nowarp
    pvp_n_7-5	mapflag	nowarp
    pvp_n_8-5	mapflag	nowarp
    
    pvp_n_1-2	mapflag	noteleport
    pvp_n_2-2	mapflag	noteleport
    pvp_n_3-2	mapflag	noteleport
    pvp_n_4-2	mapflag	noteleport
    pvp_n_5-2	mapflag	noteleport
    pvp_n_6-2	mapflag	noteleport
    pvp_n_7-2	mapflag	noteleport
    pvp_n_8-2	mapflag	noteleport
    pvp_n_1-3	mapflag	noteleport
    pvp_n_2-3	mapflag	noteleport
    pvp_n_3-3	mapflag	noteleport
    pvp_n_4-3	mapflag	noteleport
    pvp_n_5-3	mapflag	noteleport
    pvp_n_6-3	mapflag	noteleport
    pvp_n_7-3	mapflag	noteleport
    pvp_n_8-3	mapflag	noteleport
    pvp_n_1-4	mapflag	noteleport
    pvp_n_2-4	mapflag	noteleport
    pvp_n_3-4	mapflag	noteleport
    pvp_n_4-4	mapflag	noteleport
    pvp_n_5-4	mapflag	noteleport
    pvp_n_6-4	mapflag	noteleport
    pvp_n_7-4	mapflag	noteleport
    pvp_n_8-4	mapflag	noteleport
    pvp_n_1-5	mapflag	noteleport
    pvp_n_2-5	mapflag	noteleport
    pvp_n_3-5	mapflag	noteleport
    pvp_n_4-5	mapflag	noteleport
    pvp_n_5-5	mapflag	noteleport
    pvp_n_6-5	mapflag	noteleport
    pvp_n_7-5	mapflag	noteleport
    pvp_n_8-5	mapflag	noteleport
    
    pvp_n_1-2	mapflag	pvp
    pvp_n_2-2	mapflag	pvp
    pvp_n_3-2	mapflag	pvp
    pvp_n_4-2	mapflag	pvp
    pvp_n_5-2	mapflag	pvp
    pvp_n_6-2	mapflag	pvp
    pvp_n_7-2	mapflag	pvp
    pvp_n_8-2	mapflag	pvp
    pvp_n_1-3	mapflag	pvp
    pvp_n_2-3	mapflag	pvp
    pvp_n_3-3	mapflag	pvp
    pvp_n_4-3	mapflag	pvp
    pvp_n_5-3	mapflag	pvp
    pvp_n_6-3	mapflag	pvp
    pvp_n_7-3	mapflag	pvp
    pvp_n_8-3	mapflag	pvp
    pvp_n_1-4	mapflag	pvp
    pvp_n_2-4	mapflag	pvp
    pvp_n_3-4	mapflag	pvp
    pvp_n_4-4	mapflag	pvp
    pvp_n_5-4	mapflag	pvp
    pvp_n_6-4	mapflag	pvp
    pvp_n_7-4	mapflag	pvp
    pvp_n_8-4	mapflag	pvp
    pvp_n_1-5	mapflag	pvp
    pvp_n_2-5	mapflag	pvp
    pvp_n_3-5	mapflag	pvp
    pvp_n_4-5	mapflag	pvp
    pvp_n_5-5	mapflag	pvp
    pvp_n_6-5	mapflag	pvp
    pvp_n_7-5	mapflag	pvp
    pvp_n_8-5	mapflag	pvp
    
    pvp_n_1-2	mapflag	nosave
    pvp_n_2-2	mapflag	nosave
    pvp_n_3-2	mapflag	nosave
    pvp_n_4-2	mapflag	nosave
    pvp_n_5-2	mapflag	nosave
    pvp_n_6-2	mapflag	nosave
    pvp_n_7-2	mapflag	nosave
    pvp_n_8-2	mapflag	nosave
    pvp_n_1-3	mapflag	nosave
    pvp_n_2-3	mapflag	nosave
    pvp_n_3-3	mapflag	nosave
    pvp_n_4-3	mapflag	nosave
    pvp_n_5-3	mapflag	nosave
    pvp_n_6-3	mapflag	nosave
    pvp_n_7-3	mapflag	nosave
    pvp_n_8-3	mapflag	nosave
    pvp_n_1-4	mapflag	nosave
    pvp_n_2-4	mapflag	nosave
    pvp_n_3-4	mapflag	nosave
    pvp_n_4-4	mapflag	nosave
    pvp_n_5-4	mapflag	nosave
    pvp_n_6-4	mapflag	nosave
    pvp_n_7-4	mapflag	nosave
    pvp_n_8-4	mapflag	nosave
    pvp_n_1-5	mapflag	nosave
    pvp_n_2-5	mapflag	nosave
    pvp_n_3-5	mapflag	nosave
    pvp_n_4-5	mapflag	nosave
    pvp_n_5-5	mapflag	nosave
    pvp_n_6-5	mapflag	nosave
    pvp_n_7-5	mapflag	nosave
    pvp_n_8-5	mapflag	nosave
    
    payon,148,225,6	duplicate(mvp)	MVP Warper#2	768
    mall,107,116,3	duplicate(mvp)	MVP Warper#3	768
    morocc,143,89,6	duplicate(mvp)	MVP Warper#4	768
    lighthalzen,150,102,4	duplicate(mvp)	MVP Warper#5	768
    
    

     

    This are some pictures to help you:

    screen_Kyojin_RO064.jpgscreen_Kyojin_RO067.jpg

    screen_Kyojin_RO066.jpg

  6. Hello guys, if somebody can help me with this script please, what i want is a mvp room mid rates style, i wish to use the same maps as regular mvp room, ( pvp_n_ ) but what i want is people have to talk with the npc to summon the mvp, and will not be free, i want to add the same mvp's too, (eddga,mistress,maya,turtle general,baphomet,etc.) i want the npc have this options:

     

    - Summon MvP

    - Heal me please

    - Leave mvp room

     

    - Summon Mvp (Which mvp would you like i summon for you?) i want each npc on each room can summon diferents mvp,

     

    Example for all npc by rooms:

     

    all npc in each floor of Alpha room can summon this mvp's:

    Alpha Room: Eddga, Misstress, Moonlight Flower, Maya.

     

    all npc in each floor of Beta room can summon this mvp's:

    Beta Room: Phreeoni, Turtle General, Orc Hero, Orc Lord.

     

    all npc in each floor of Theta room can summon this mvp's:

    Theta Room: Drake, Osiris, Doppleganger, Lord of Death.

     

    all npc in each floor of Epsilon room can summon this mvp's:

    Epsilon Room: Incantation Samurai, Pharaoh, Baphomet, Dark Lord.

     

    List of mvp's and price example for Betha Room:

    npc talk: Ok, this are the mvp i can summon and their respectives prices.

    Phreeoni - $3,000,000

    Orc lord - $5,000,000

    Orc Hero - $7,000,000

    Turtle General - $10,000,000

    I'll be back later, thank you.

     

    (If possible please i wish, each room is private but free of charges to enter, you have to set a password to enter, if somebody input the same password it can enter too).

     

    - Heal price = ($1m zeny)

     

    - Leave (warp to prontera 156, 179)

     

    Please somebody help me with this script ^_^ it will be very helpfull.

  7. I am going to read your script first, just give me bit, then gonna finish your script, just change the npc dialogue and make a quest for each npc. I will just make the npc on chain quest.

    Exactly if you add the others npc's following the chain, i can edit the dialogs and items id's following the others npc's.

  8. So you wanted them to have these 4 items first : Nile Rose,Bunch Of Carnation,2nd Aniversary Hat,Vidar's Boots. Before giving them a named sleipnier?

     

    Change all of This:

    (Vidar's Boots ID) (2nd Aniversary Hat ID) (Bunch Of Carnation ID) (Nile Rose ID)

    to their ITEM ID number. Also dont forget to add dialogues to the NPC that he need this four new items before he/she can claim that sleipnier.

     

    Replace this:

    mes "[ Karina ]";
    mes "I will be waiting for you great one.";
    if(countitem(7345) < 300 || countitem(12028) < 200 || countitem(2423) < 1 || countitem(5074) < 1 || countitem(7444) < 100) goto kikiki;
    if(countitem(7345) >= 300 || countitem(12028) >= 200 || countitem(2423) >= 1 || countitem(5074) >= 1 || countitem(7444) >= 100) goto killhim;
    close;
    

    With this:

    mes "I will be waiting for you great one.";
    
    if(countitem(7345) < 300 || countitem(12028) < 200 || countitem(2423) < 1 || countitem(5074) < 1 || countitem(7444) < 100  ||  countitem(Nile Rose ID) < 1 || countitem(Bunch Of Carnation ID) < 1 ||   countitem(2nd Aniversary Hat ID) < 1 || countitem(Vidar's Boots ID) < 1 ) goto kikiki;
    
    if(countitem(7345) >= 300 || countitem(12028) >= 200 || countitem(2423) >= 1 || countitem(5074) >= 1 || countitem(7444) >= 100 ||  countitem(Nile Rose ID) >= 1 || countitem(Bunch Of Carnation ID) >= 1 || countitem(2nd Aniversary Hat ID) >= 1 || countitem(Vidar's Boots ID) >= 1 ) goto killhim;
    
    close;
    

    Replace this:

    killhim:
    
    next;
    
    mes "[ Karina ]";
    
    mes "Very well done child.";
    
    mes "You are very good!";
    
    delitem 7345,300;
    
    delitem 12028,22;
    
    delitem 2423,1;
    
    delitem 5074,1;
    
    delitem 7444,100;
    
    getitem2 2410,1,1,@ref,0,254,0,getcharid(0)&0xffff,(getcharid(0)>>16)&0xffff;
    
    set bry_bry,1;
    
    next;
    

    With this:

    killhim:
    next;
    mes "[ Karina ]";
    mes "Very well done child.";
    mes "You are very good!";
    delitem (Nile Rose ID),1;
    delitem (Bunch Of Carnation ID),1;
    delitem (2nd Aniversary Hat ID),1;
    delitem (Vidar's Boots ID),1;
    delitem 7345,300;
    delitem 12028,22;
    delitem 2423,1;
    delitem 5074,1;
    delitem 7444,100;
    getitem2 2410,1,1,@ref,0,254,0,getcharid(0)&0xffff,(getcharid(0)>>16)&0xffff;
    set bry_bry,1;
    next;
    

    Nope you misunderstand me, what i mean is add 4 more npc's like the other one's, each Valkyrie item have a separate npc to make the item, Example: Valk. armor have a separate npc, vshild: too, v. manteau: too, and vshoes too, before you can talk with the npc that will make you the named sleipnir you had did all the valkyrie items first, if this npc detect you not finish all the valkyrie items it wont make Sleipnir for you, what i want is to add 4 more npc's you have to do the items before this last npc can make the sleipnir for you.

  9. thats is using costum monster .

    try to change this in your script

     

    ordeal_1-2,0,0,0,0    monster    Gold Guardian    1490,10,0,0,0

    ordeal_1-2,0,0,0,0    monster    Gold Guardian    1490,10,0,0,0

    ordeal_1-2,0,0,0,0    monster    Gold Guardian    1490,10,0,0,0

    ordeal_1-2,0,0,0,0    monster    Gold Guardian    1490,10,0,0,0

    ordeal_1-2,0,0,0,0    monster    Gold Guardian    1490,10,0,0,0

    ordeal_1-2,0,0,0,0    monster    Golden Pecopeco    1369,20,40000,20000,0

    ordeal_1-2,0,0,0,0    monster    Golden Pecopeco    1369,10,40000,20000,0

    ordeal_1-2,0,0,0,0    monster    Golden Pecopeco    1369,20,40000,20000,0

    ordeal_1-2,0,0,0,0    monster    Golden Pecopeco    1369,10,40000,20000,0

    ordeal_1-2,0,0,0,0    monster    Golden Pecopeco    1369,20,40000,20000,0

    ordeal_1-2,0,0,0,0    monster    Golden Pecopeco    1369,10,40000,20000,0

    ordeal_1-2,0,0,0,0    monster    Golden Pecopeco    1369,20,40000,20000,0

     

    red : id monster , if you want to change to another monster change this, you can see this in the your mobs_db.txt or mobs_db2.txt

    green : quantity your monster

     

    if you want to change their stat change this in mobs_db.txt or mobs_db2.txt too ..

     

    CMIIW

    this is only to change the quantity of the mobs? what i want to do with this is what i requested above, make the guardians harder, bu thank you anyway ^_^ now i know how to change the quantity.

  10. hey guys how i can make this mine guardians really hard with perfect flee, people only can hit this guardian with sniper card, and it hit's the people like 8 to 10k by hit, i want this for a high rates server, but even a char in lvl 150 can kill the guardian very easy (and my server is 255/100) and if possible change the guardian to an Orc Warrior!!

     

    this is my gold room:

    //  _______   __      ____	  ____ 	    __	__  ____    __  __    __   __ __      __   __  ____    _      ____       
    // /__	__/  / /     / __ \      / __ \    / / / / /__  \  / / /_/ __/ /_ / // /     / /__/ / /__  \  / /__  / __ \  _____
    //   / /    / /_    / /_/ /	/ / / /   / / / / ____/ / / / __  /_  __// // /     / _  _ / ____/ / / // / / /_/ / / __  \
    //  / /    / __ \  / ____/     / / / /   / / / / / __  / / / / /   / /   \_  /     / // /// / __  / /  __/ / ____/ / /  /_/
    // / /    / / / / / /__	      / /_/ /_  / /_/ / / /_/ / / / / /   / /   __/ /     / // /// / /_/ / / _ \  / /__	  / /
    ///_/    /_/ /_/  \____/      \_______/ \____/  \____/ /_/ /_/   /_/    \__/     /_//_///  \____/ /_/ \_\ \____/ /_/
    //=============================================================================
    //
    //   Gold Room V2.0 Script - Mining Gold for wealth - Please Leave Credit   \\
    //=============================================================================
    //POWERED by: rudolp
    //The Quality Maker
    //10:19 PM 2/25/2009
    //===== Compatible With: ====================================================================
    //= Any eAthena Version
    //===== Description: ========================================================================
    //=============Gold Room Settings===================
    //This should always be enable for a better Gold Room System.
    //==================================================
    ordeal_1-2.gat	mapflag	noskill
    ordeal_1-2.gat	mapflag	nomemo
    ordeal_1-2.gat	mapflag	nobranch
    ordeal_1-2.gat	mapflag	noexp
    ordeal_1-2.gat	mapflag	nodrop
    ordeal_1-2.gat	mapflag	nochat
    ordeal_1-2.gat	mapflag	novending
    ordeal_1-2.gat	mapflag	nowarp
    ordeal_1-2.gat	mapflag	nowarpto
    ordeal_1-2.gat	mapflag	noreturn
    //==================================================
    //Optional
    //==================================================
    ordeal_1-2.gat	mapflag	noloot 
    //disable so that after logging in your still in the Gold Room..
    //ordeal_1-2.gat	mapflag	nosave	SavePoint
    
    ordeal_1-2,0,0,0	script	Gold Room	-1,{
    
    OnPCDieEvent: 
    
    if (getmapxy(@mapname$,@mapx,@mapy,0) == -1) end;
    if (@mapname$ == "ordeal_1-2"){
    		soundeffect "HolyShit.wav",0;
    		dispbottom "Holy Shit you died!";
    		dispbottom "All of your gold will gone!";
    		set alive, 0;
    		set paid, 0;
    		end;
    }
    
    OnNPCKillEvent:
    if (getmapxy(@mapname$,@mapx,@mapy,0) == -1) goto L_Finish;
    if (@mapname$ == "ordeal_1-2"){
    	set @bonus,readparam(bLuk);
    	if(@bonus >= 50 && @bonus <= 149){
    		set @plus,1;
    	}else if(@bonus >=150 && @bonus <= 199){
    		set @plus,2;
    	}else if(@bonus >= 200 && @bonus >=250){
    		set @plus,3;
    	}else if(@bonus > 250){
    		set @plus,4;
    	}else if(@bonus < 50){
    		set @plus,0;
    	}
    	set @setadd,0;
    	set @special,rand (4);	
    	if(@special == 0){
    		set @special,(rand(4)*-1);
    		set @setadd,(@special);
    	}else{
    		set @setadd,(@plus+@special);	
    	}
    	set gold, gold + @setadd;
    
    	if(gold < 50 && @special < 0) dispbottom "-|You got: " + @special + " gold|- ";
    	if(@special == 0) dispbottom "-|You got: NOTHING! |- ";
    
    	if(gold < 50 && @special > 0) dispbottom "-|You got: " + (@special + @plus) + " gold|- ";
    	if(gold > 50 && @special >0) dispbottom "-|You got: " + (@special + @plus)+ " gold| - |Total: " +gold+ " gold|-";
    
    	if(gold > 50 && @special <0) dispbottom "-|You got: " +@special+ " gold| - |Total: " +gold+ " gold|-";
    
    	if (gold >= 100 && gold%2 == 0) goto L_HolyShit;
    	if (gold >= 115 && gold <= 149){
    		 sc_start	33,240000,10;
    	}else if (gold >= 150 && gold <= 199){
    		 sc_start	5,240000,10;
    	}else if(gold > 200){
    		 percentheal -30,0;
    		 heal -50,0;
    	}
    	if(paid == 0){
    		mapannounce "ordeal_1-2"," :"+strcharinfo(0)+" is a cheater!",bc_map;
    		dispbottom "Go out you bastard!";
    		warp "prontera", 173, 160;
    	}
    		end;
    L_HolyShit:
    		dispbottom "Warning! you may die if you exceed.";
    		misceffect 368;
    		end;
    
    	end;
    }
    
    }
    
    //===============================================
    //warper
    //===============================================
    ordeal_1-2,154,156,5	script	Gold Miner	813,{
    	mes "[Gold Miner]";
    	if(gold >=50){
    		goto wa;
    	}
    	mes "Want to go now?";
    	mes "Your gold is just "+gold+" you can still get more, return after you get more than 50";
    	close;
    wa:
    	mes "Want to go now?";
    	 if(select("Yes Please", "No, i want more golds") == 1) {
    		set alive,1;
            		warp "prontera", 157, 147;
    				close;
        	}
    }
    
    prontera,165,137,2	script	Gold Room Warper#1::GR	848,{
    	set @name$,"prontera";
    	callfunc "goldmain";
    	end;
    }
    function	script	goldmain	{
    	if ( alive == 0){
    		set gold,0;
    	}
    	mes "[Gold Room Miner]";
    	mes "Hi,I am one of the best gold miners since this was discovered,What can i do for you?";
    	next;
    	menu "Take me to the Gold Room",-,"Exchange my Golds",exchange,"I'll Back Later",C_s;
    	mes "[Gold Room Miner]";
    	mes "Hmm.. So you want to go to the mines? OK";
    	mes "It will cost you $100,000z for the transportation";
        	mes "Would you like to go anyway to the gold room?";
        	if(select("Yes Please!", "No, maybe later") == 1) {
    		if(@name$ == "prontera") savepoint "prontera",160,180;
    		if (Zeny < 100000) goto nomoney;
    		set Zeny, Zeny - 100000;
    		set alive, 1;
    		set paid, 1;
            		warp "ordeal_1-2", 156, 155;
    				close;
        	}
    
    nomoney:
    	mes "[Gold Room Miner]";
    	mes "Sorry you have insufficient balance";
    	close;
    exchange:
    	mes "[Gold Room Miner]";
    	mes "Hmm...let me see";
    	mes "You have " +gold+ ".";
    	if (gold == 0) goto nogold; 
    	mes "Ok this is your reward for be a tough miner.";
    	next;
            if (checkweight(969,gold) == 0) goto L_OverWeight;
    	getitem 969, gold;
    	set gold, 0;
    	emotion e_no1;
    	close;
    L_OverWeight:
    	mes "[Gold Room Miner]";
    	mes "Sorry your overweight";
    	close;
    nogold:
    	close;
    C_s:
    	close;
    }
    
    
    
    
    //========================================
    //warps you may edit this one for your convenience
    //========================================
    ordeal_1-2,73,265,0	warp	ord500	1,1,prontera,173,160
    //ordeal_1-2,129,194,0	warp	ord501	1,1,prontera,173,160
    ordeal_1-2,130,194,0	warp	ord502	1,1,prontera,173,160
    ordeal_1-2,178,193,0	warp	ord503	1,1,prontera,173,160
    ordeal_1-2,290,130,0	warp	ord504	1,1,prontera,173,160
    ordeal_1-2,241,281,0	warp	ord505	1,1,prontera,173,160
    ordeal_1-2,66,25,0 	warp	ord506	1,1,prontera,173,160
    ordeal_1-2,105,154,0	warp	ord507	1,1,prontera,173,160
    ordeal_1-2,201,130,0	warp	ord5s08	1,1,prontera,173,160
    //======================================
    //mobs you may edit this as you want.
    //=====================================
    ordeal_1-2,0,0,0,0	monster	Gold Guardian	1490,10,0,0,0
    ordeal_1-2,0,0,0,0	monster	Gold Guardian	1490,10,0,0,0
    ordeal_1-2,0,0,0,0	monster	Gold Guardian	1490,10,0,0,0
    ordeal_1-2,0,0,0,0	monster	Gold Guardian	1490,10,0,0,0
    ordeal_1-2,0,0,0,0	monster	Gold Guardian	1490,10,0,0,0
    ordeal_1-2,0,0,0,0	monster	Golden Pecopeco	1369,20,40000,20000,0
    ordeal_1-2,0,0,0,0	monster	Golden Pecopeco	1369,10,40000,20000,0
    ordeal_1-2,0,0,0,0	monster	Golden Pecopeco	1369,20,40000,20000,0
    ordeal_1-2,0,0,0,0	monster	Golden Pecopeco	1369,10,40000,20000,0
    ordeal_1-2,0,0,0,0	monster	Golden Pecopeco	1369,20,40000,20000,0
    ordeal_1-2,0,0,0,0	monster	Golden Pecopeco	1369,10,40000,20000,0
    ordeal_1-2,0,0,0,0	monster	Golden Pecopeco	1369,20,40000,20000,0
    //======================================
    
    
    payon,148,228,6	duplicate(GR)	Gold Room Warper#2	848
    mall,77,108,6	duplicate(GR)	Gold Room Warper#3	848
    lighthalzen,181,78,7	duplicate(GR)	Gold Room Warper#4	848
    

     

  11.  

    S

     

     

    Forbiden to wear the state can not be worn

    attachicon.gifscreenPassionRO000.jpg

     

     

     

    29802,Ancient_Advance_Valkyrie_Helm,Ancient_Advance_Valkyrie_Helm,5,20,,10,,10,,1,0xFFFFFFFF,7,2,256,,0,1,1901,{ bonus bAllstats,5; bonus bMaxHPRate,5;  },{},{}
     

     

     

     

     

    what happen!? both of my custom valkyrie cannot be wear.. 

     

    try to use this one:

    29802,Ancient_Advance_Valkyrie_Helm,Ancient_Advance_Valkyrie_Helm,5,20,,100,,10,,1,0xFFFFFFFF,7,2,256,,0,1,1901,{ bonus bAllstats,5; bonus bMaxHPRate,5; },{},{}
    

    same. still cant

     

    It works good for me, did you reloaditemdb after replace with the one i sent?

    Yeah im sure i did reloaditemdb / restart the server.

     

     

    what u had changed? can tell me?

    the only thing i changed was the format of the weight and remove a space in the script, but i tested it in my server and is working good.

  12. S

     

     

    Forbiden to wear the state can not be worn

    attachicon.gifscreenPassionRO000.jpg

     

     

     

    29802,Ancient_Advance_Valkyrie_Helm,Ancient_Advance_Valkyrie_Helm,5,20,,10,,10,,1,0xFFFFFFFF,7,2,256,,0,1,1901,{ bonus bAllstats,5; bonus bMaxHPRate,5;  },{},{}
     

     

     

     

     

    what happen!? both of my custom valkyrie cannot be wear.. 

     

    try to use this one:

    29802,Ancient_Advance_Valkyrie_Helm,Ancient_Advance_Valkyrie_Helm,5,20,,100,,10,,1,0xFFFFFFFF,7,2,256,,0,1,1901,{ bonus bAllstats,5; bonus bMaxHPRate,5; },{},{}
    

    same. still cant

     

    It works good for me, did you reloaditemdb after replace with the one i sent?

  13. Hey guys can somebody tell me how i can set all jobs with job lvl 100 can only have 148 skill points and no more? i played in a server before where all jobs with job lvl 100 have only 148 skill points, but in my server

    they have direfrent skill points some chars only get 148 but others get 202, 186, Etc.

     

     and if possible please somebody tell me how to remove the skill shield boomerang from paladin jobs, thank you.

  14. Forbiden to wear the state can not be worn

    attachicon.gifscreenPassionRO000.jpg

     

     

     

    29802,Ancient_Advance_Valkyrie_Helm,Ancient_Advance_Valkyrie_Helm,5,20,,10,,10,,1,0xFFFFFFFF,7,2,256,,0,1,1901,{ bonus bAllstats,5; bonus bMaxHPRate,5;  },{},{}
     

     

     

     

     

    what happen!? both of my custom valkyrie cannot be wear.. 

     

    try to use this one:

    29802,Ancient_Advance_Valkyrie_Helm,Ancient_Advance_Valkyrie_Helm,5,20,,100,,10,,1,0xFFFFFFFF,7,2,256,,0,1,1901,{ bonus bAllstats,5; bonus bMaxHPRate,5; },{},{}
    
  15. I was checking the adoption system in my server and i noticed is not there, no warp portal and no npc for donation, i need the adoption system since i delete the baby job class from my jobmaster,

    can somebody please share this script? the one in prt_church after you get married and you need a novice to adopt, and blah blah blah xD.



    Bump
  16. hello guys how to remove: Ninja, Gunslinger and baby novice from this job master?

     

    //===== rAthena Script =======================================
    //= Job Master
    //===== By: ==================================================
    //= Euphy
    //===== Current Version: =====================================
    //= 1.3
    //===== Compatible With: ===================================== 
    //= rAthena SVN r16114+
    //===== Description: =========================================
    //= A fully functional job changer.
    //===== Additional Comments: =================================  
    //= 1.1 Fixed reset on Baby job change. [Euphy]
    //= 1.2 Added Expanded Super Novice support and initial Kagerou/Oboro support. [Euphy]
    //= 1.3 Kagerou/Oboro added. [Euphy]
    //============================================================
    
    prontera,153,193,4	script	Job Master#1::JM	743,{
    
    function Job_Menu; function A_An;
    
    	mes "[Job Master]";
    	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 .@eac, eaclass();
    	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(" ~ ^0055FFLast Class^000000:: ~ ^777777Cancel^000000");
    			if (.@i==3) close;
    			mes "[Job Master]";
    			mes "Are you sure?";
    			next;
    			Job_Menu(roclass(.@eac|EAJL_UPPER));
    			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) setarray .@exp[0],.@j1,70;
    	if (.@exp[0] && (.ThirdClass || Class == Job_Ninja)) {
    		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 "+A_An(jobname(.@i))+"!";
    			if (.@i==4001 && .LastJob) set lastJob, Class;
    			jobchange .@i;
    			if (.@i==4001 || .@i==4023) resetlvl(1);
    			specialeffect2 338; specialeffect2 432;
    			if (.Platinum) callsub Get_Platinum;
    			close;
    		}
    		if (getargcount() == 1) return;
    		mes "[Job Master]";
    	}
    	end;
    }
    
    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);
    }
    
    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],50,50;	// Minimum base level, job level to rebirth OR change to third class
    	setarray .JobReq[0],10,50;	// Minimum job level to turn into 1st class, 2nd class
    	set .ThirdClass,0;		// Enable third classes? (1: yes / 0: no)
    	set .SNovice,50;		// Minimum base level to turn into Super Novice
    	set .LastJob,1;			// Enforce linear class changes? (1: yes / 0: no)
    	set .SkillPointCheck,1;		// Force player to use up all skill points? (1: yes / 0: no)
    	set .Platinum,0;		// Get platinum skills automatically? (1: yes / 0: no)
    	end;
    }
    
    
    payon,148,231,6	duplicate(JM)	Job Master#2	743
    morocc,169,80,2	duplicate(JM)	Job Master#3	743
    lighthalzen,153,105,6	duplicate(JM)	Job Master#4	743
    

     

  17. Fix to issue 1:

    Change:
    if(countitem(.item1) < .itemreq1) && (countitem(.item2) < .itemreq2) { goto L_nope; end; }
    
    INTO
    
    if( (countitem(.item1) < .itemreq1) || (countitem(.item2) < .itemreq2) ) { goto L_nope; end; }
    

     

    For your Second Problem, I see more than just that issue. For 1, your asking for Multiple of tens, but you only give them 1 box. If your going to do that, just make it a menu. Instead of input.

    Thank you problem #1 solved, ^_^

  18. hello guys, i have a problem with 2 npc's, Guild Manager and Berry Trader:

     

    -- The problem with the guild manager is i want before he make a guild he ask for 3 items, 1pc TCG Card, 5 Platinum Coins and 1 emperium, he ask for the items but if player dont have the 5 platinum coins he still make the guild(if player have them it will delete them but if player doesn't have it it will make the guild anyway) does somenone can fix it please?

    prontera.gat,171,227,3	script	Guild Manager#1::GM	531,{
    
        set .item1, 7227; // Item ID 1
        set .item2, 677; // Item ID 2
        set .itemreq1, 1; // Ammount of item number 1 (9 since an emp is also consumed naturally upon guild creation)
        set .itemreq2, 5; // Ammount of item number 2
        set .name$, "[^0000ffGuild Manager^000000]";
        mes .name$;
        mes "Hello there ^FF0000 "+strcharinfo(0)+" ^000000.";
        mes "I can help you form a guild or disband your current one.";
        next;
        menu "Sign-up for Guild Creation.",L_approve,"Disband Guild.",L_disband,"Any requirements?",L_req,"No thanks.",L_cya;
    
    L_approve:
        next;
        mes .name$;
        mes "Alright, I need you to tell me the name you want for your guild.";
        sleep2 1500;
        input @gcreatenm$;
        mes "Are you sure that's what you want?";
        switch(select("Yes:No")) {
    
    case1:
        if(countitem(.item1) < .itemreq1) && (countitem(.item2) < .itemreq2) { goto L_nope; end; }
        mes .name$;
        mes "Alright then let's try this...";
        atcommand "@guild "+@gcreatenm$;
        next;
        if(getcharid(2) == 0) { mes "Woops, seems like that guild already exists...try another name."; goto L_create; end; }
        announce strcharinfo(0)+" has created "+strcharinfo(2)+" Guild!",0;
        mes .name$;
        mes "Congrats.";
        delitem .item1, .itemreq1;
        delitem .item2, .itemreq2;
        close;
        end;
    
    case2:
        goto L_create;
        end;
        }
    
    L_disband:
        if(getcharid(2) == 0) { goto L_noguild; end; }
        if(getguildmaster(getcharid(2)) == strcharinfo(0)) { next; mes .name$; mes "Type this:"; mes "^FF0000 @breakguild ^000000 ''^0000ff "+strcharinfo(2)+" ^000000''"; close; end; }
        else { mes .name$; mes "You're not the guild leader."; close; end; }
    
    L_req:
        next;
        mes .name$;
        mes "To make a guild you'll need ^0000ff 1 ^000000 ^FF0000 Emperium ^000000 + ^0000ff 1 ^000000 piece of ^FF0000 TCG Card ^000000 and ^0000ff 5 ^000000 pieces of ^FF0000 Platinum Coins ^000000.";
        close;
        end;
        
    L_nope:
        next;
        mes .name$;
        mes "Bring me the items first!";
        close;
    
    L_noguild:
        next;
        mes .name$;
        mes "You're not even in a guild!";
        close;
    
    L_cya:
        next;
        mes .name$;
        mes "Next time then!";
        close;
    
    }
    
    payon,164,219,2	duplicate(GM)	Guild Manager#2	531
    

     

    -- The problem with this Berry trader is i want people can pack their ygg into boxes of 10 ygg and i want npc only accept if people enter multiples of 10, when somebody talk to the npc

    he ask how much ygg you want to pack, if you put 0 he still give you the 10 ygg box -_- people was getting free ygg from this npc only by enter they want to pack 0 ygg.

    prontera,144,173,3	script	Berry Trader#1::BT	91,{
    
        set $@npcname_mpq$, "^4000C0[Trader]^000000";
        mes $@npcname_mpq$;
        mes "Hi, I'm the Yggdrasil Berry Trader, I can pack them into boxes for easir trading! Would you like to do some packing?";
        next;
        menu "Yes, Please!",L_Berry,"No Thanks.",L_Exit;
    
    L_Berry:
        mes $@npcname_mpq$;
        mes "Input the amount in multiples of 10 of yggdrassil berry you want to pack.";
        next;
        input .@amount;
        if( ( .@amount % 10 ) > 0 ){
            mes $@npcname_mpq$;
            mes "What the hell? are you trying to scam me?";
            mes "Get out of here and next time use mutiples of 10 >,>";
            close;
        }
    
        delitem 607, .@amount;
        mes $@npcname_mpq$;
        mes "You really have " +.@amount+ " berrys? Okay, Let's trade!";
        getitem 14232,1;
        mes ". . .";
        mes "Thank you sweety. Dont ygg too much!";
        close;
    
    LNotEnough:
        mes "You dont have the required items...?";
        mes "Come back when you are actually ready. Now gtfo!";
        close;
    
    Lnotenuff:
        mes "Wtf, come back when you got the goods!";
        close;
    L_Exit:
        close;
    }
    
    mall,122,108,3	duplicate(BT)	Berry Trader#2	91
    lighthalzen,177,89,1	duplicate(BT)	Berry Trader#3	91
    

    please help me here ^_^

  19. :( i really dont know how to do this you posted, im newbie:

    I really cant understand what would you like to do. Anyways seems like am getting your point.

     

    Just set the condition like this:

    If Quest#1 done, set quest,1; If quest,1; goto Quest #2.

    If Quest#2 done, set quest,2; If quest,2; goto Quest #3.

    If Quest#3 done, set quest,3; If quest,3; goto Quest #4.

    If Quest#4 done, set quest,4; If quest,4; goto Quest #5.

     

    ok let me explain what i want to do, this break the seal quest you have to break the seal to can make the 4 valkyrie items(armor,shield,shoes and manteau) when you finish this 4 items you go to the last npc and it will give you a sleipnir ywith your name because you already made the 4 items after break the seal.

     

    Now, what i want is to add 4 more npc's to this quest without break the chain(i mean people will only can get the named sleipnir if they make this 4 more items):

     

     

    Valkyrie Armor

     

    Valkyrie Shoes

     

    Valkyrie Shield

     

    Valkyrie Manteau

     

    Nile Rose

     

    Bunch Of Carnation

     

    2nd Aniversary Hat

     

    Vidar's Boots

×
×
  • Create New...