Diss Posted October 31, 2013 Group: Members Topic Count: 67 Topics Per Day: 0.02 Content Count: 207 Reputation: 1 Joined: 05/01/13 Last Seen: July 23, 2016 Share Posted October 31, 2013 (edited) hi this line 161 set .@instance,instance_create("300 Monsters",.@party_id); its look like the old instance how can i change for the new svn thanks in advance Edited November 1, 2013 by Diss Quote Link to comment Share on other sites More sharing options...
mrlongshen Posted October 31, 2013 Group: Members Topic Count: 98 Topics Per Day: 0.02 Content Count: 1302 Reputation: 79 Joined: 12/04/12 Last Seen: September 26, 2019 Share Posted October 31, 2013 Post your script ! Quote Link to comment Share on other sites More sharing options...
Diss Posted November 1, 2013 Group: Members Topic Count: 67 Topics Per Day: 0.02 Content Count: 207 Reputation: 1 Joined: 05/01/13 Last Seen: July 23, 2016 Author Share Posted November 1, 2013 (edited) Post your script ! //===== rAthena Script ======================================= //= 300 Monster Challenege //===== By: ================================================== //= Arcenciel //===== Version and Changes ================================== //= 1.0 - Initial Release //===== Description: ========================================= //= Script creates an instance in which a party is to fight //= 300 monsters and 1 MvP, both of which are randomly chosen //= from a predefined list. Script is highly configurable. //===== Additional Comments: ================================= //= Requires custom map files and client side edits. Both of //= which were provided in the release topic of this script. //============================================================ prontera,155,188,4 script Challenge#1-1 459,{ //===== Configurations ======================================= //= Name of the NPC that appears in NPC dialogues. set .@npcname$,"Gorge"; //= Users higher or equal this level will not be able to take on the challenge. set .@maxlvl,150; //= Number of people allowed in a party to take on the challenge. set .@maxpartymembercount,3; //= How much time in seconds is given to the party to complete the challenge. Default: 10 Minutes set .@durationalive,600; //= Sets whether other party members would get the quest as well. 0 = disabled | 1 = enabled set .@giveothersquest,1; //= Sets whether the script will check other party members for requirements. 0 = disabled | 1 = enabled set .@docheck,1; //= Checks if the other party members have the quest time limit. 0 = disabled | 1 = enabled set .@questothers,1; //= Checks if the other party members are higher or equal to the max level allowed. 0 = disabled | 1 = enabled set .@lvlothers,1; //= How many treasure chest should each party member recieve. set .@rewardcount,1; //= Tier One - Monster ID and Name setarray .@chamonid[0],1015,1023,1122; setarray .@chamonname$[0],"Zombie","Orc","Goblin"; //= Tier Two - Monster ID and Name setarray .@chamonid2[0],1197,1273,1258; setarray .@chamonname2$[0],"Zombie Prisoner","Orc Lady","Goblin Archer "; //= Tier Three - Monster ID and Name setarray .@chamonid3[0],1865,1213,1308; setarray .@chamonname3$[0],"Ragged Zombie","High Orc","Panzer Goblin"; //= Last Tier [MVP] - Monster ID and Name setarray .@chamonid4[0],1871,1190,1785; setarray .@chamonname4$[0],"Fallen Bishop Hibram","Orc Lord","Atroce"; //= Treasure - Mob ID setarray .@chamonid5[0],1337,1329,1946,1938; //===== End of Configurations ================================ mes "[ ^0033CC"+.@npcname$+"^000000 ]"; if ((checkquest(70000,PLAYTIME) == -1) || (checkquest(70000,PLAYTIME)== 2)) { set .@talkname,getcharid(3,strcharinfo(0)); set .@party_id,getcharid(1); set .@ins_mas,getpartyleader(.@party_id,2); getpartymember(.@party_id,0); set .@partymembercount,$@partymembercount; copyarray .@partymembername$[0],$@partymembername$[0],.@partymembercount; getpartymember(.@party_id,1); copyarray .@partymembercid[0],$@partymembercid[0] ,.@partymembercount; getpartymember(.@party_id,2); copyarray .@partymemberaid[0],$@partymemberaid[0] ,.@partymembercount; mes "Have you heard of the legendary party who has defeated 300 monsters?"; next; mes "[ ^0033CC"+.@npcname$+"^000000 ]"; mes "BAHAHA! You're talking to one of the members right now! Do you think you can accomplish the same thing we did?!"; next; mes "[ ^0033CC"+.@npcname$+"^000000 ]"; mes "Listen kid..I have an arena set up where you can attempt to complete this task. How bout we make a bet!?"; next; mes "[ ^0033CC"+.@npcname$+"^000000 ]"; mes "I'll let you take on the challenge and you'll get a chance to win a treasure chest full of stuff in the end!"; next; mes "[ ^0033CC"+.@npcname$+"^000000 ]"; mes "So how bout it..."; mes "Do you want to take it on?!"; if (select("Yeah, Bring it!:No, Maybe next time") == 2) { next; mes "[ ^0033CC"+.@npcname$+"^000000 ]"; mes "Ha! I knew you couldn't do it!"; close; } next; mes "[ ^0033CC"+.@npcname$+"^000000 ]"; if ( BaseLevel >= .@maxlvl ) { mes "Is that a scar? You seem to have been through a lot already. Only users lower than Level ^ff0000"+.@maxlvl+"^000000 can take on the challenge."; close; } if ( (.@party_id == 0) || (.@partymembercount < .@maxpartymembercount) ) { mes "You can't do this alone! I would have been killed without my comrades. You have to be in a ^ff0000"+.@maxpartymembercount+" - member party^000000 in order to do the challenge."; close; } if ( (.@partymembercount > .@maxpartymembercount) ) { mes "Your party is too big. Cut down on some members. I only need ^ff0000"+.@maxpartymembercount+"^000000 people."; close; } if ( getcharid(0) != .@ins_mas ) { mes "Party members need to listen to the party leader or everything falls apart. ^ff0000Only party leaders can set up challenge^000000. Tell your leader to come talk to me."; close; } for( set .@i, 0; .@i < .@partymembercount; set .@i, .@i +1 ) { if ( isloggedin(.@partymemberaid[.@i],.@partymembercid[.@i]) == 0 ) { attachrid(.@talkname); mes "One of your party members is offline. Either kick them out or you won't be able to proceed."; if ( .@instance > 0 ) instance_destroy (.@instance); close; } attachrid(getcharid(3,.@partymembername$[.@i])); if ( checkquest(70000,PLAYTIME) == 2) { dispbottom "You can now enter the 300 Monster Challenge Room"; erasequest 70000; } detachrid; } attachrid(.@talkname); if ((.@docheck == 1)) { mes "Let me just check your party for requirements..."; sleep2 500; for( set .@i, 0; .@i < .@partymembercount; set .@i, .@i +1 ) { if ( isloggedin(.@partymemberaid[.@i],.@partymembercid[.@i]) == 0 ) { attachrid(.@talkname); mes "One of your party members is offline. Either kick them out or you won't be able to proceed."; if ( .@instance > 0 ) instance_destroy (.@instance); close; } attachrid(getcharid(3,.@partymembername$[.@i])); if ((.@lvlothers == 1) && (BaseLevel >= .@maxlvl) ) { attachrid(.@talkname); mes .@partymembername$[.@i]+": Level is too high"; set .@docheck, 2; detachrid; attachrid(getcharid(3,.@partymembername$[.@i])); } if ( (.@questothers == 1) && ((checkquest(70000) == 0) || (checkquest(70000) == 1)) ) { attachrid(.@talkname); mes .@partymembername$[.@i]+": Is still wounded and not ready to fight."; set .@docheck, 2; detachrid; attachrid(getcharid(3,.@partymembername$[.@i])); } detachrid; } attachrid(.@talkname); if ((.@docheck == 2)) { mes "You might want to fix the problems above. Come back when they're fixed and I'll let you through."; close; } else { sleep2 2000; mes "Everything seems to be in order."; next; } } mes "[ ^0033CC"+.@npcname$+"^000000 ]"; mes "Don't die kid!"; mes "You and your party will be warped immediately."; set .@instance,instance_create("300 Monsters",.@party_id); if ( .@instance < 0 ) { next; mes "[ ^0033CC"+.@npcname$+"^000000 ]"; mes "Something seemed to have went awry..."; mes "You can't attempt this challenge at this moment."; mes "Come back later."; close; } instance_attachmap ("1@gvs5",.@instance); instance_attach(.@instance); instance_set_timeout .@durationalive,60,.@instance; instance_init(.@instance); set .@chanum,rand(getarraysize(.@chamonid)); set 'chamonid,.@chamonid[.@chanum]; set 'chamonname$,.@chamonname$[.@chanum]; set 'chamonid2,.@chamonid2[.@chanum]; set 'chamonname2$,.@chamonname2$[.@chanum]; set 'chamonid3,.@chamonid3[.@chanum]; set 'chamonname3$,.@chamonname3$[.@chanum]; set 'chamonid4,.@chamonid4[.@chanum]; set 'chamonname4$,.@chamonname4$[.@chanum]; copyarray 'chamonid5[0],.@chamonid5[0],getarraysize(.@chamonid5); set 'npcname$,.@npcname$; set 'instid,.@instance; set 'maxpartymembercount,.@maxpartymembercount; set 'party_id,.@party_id; set 'rewardcount,.@rewardcount; donpcevent instance_npcname("#Initial Wave", instance_id())+"::OnInstanceInit"; donpcevent instance_npcname("Challenge#1-3", instance_id())+"::OnInstanceInit"; donpcevent instance_npcname("#MvP Summoner", instance_id())+"::OnInstanceInit"; donpcevent instance_npcname("#Instance Destroy", instance_id())+"::OnInstanceInit"; if ((.@giveothersquest == 1)) { for( set .@i, 0; .@i < .@partymembercount; set .@i, .@i +1 ) { if ( isloggedin(.@partymemberaid[.@i],.@partymembercid[.@i]) == 0 ) { attachrid(.@talkname); mes "One of your party members is offline. Either kick them out or you won't be able to proceed."; if ( .@instance > 0 ) instance_destroy (.@instance); close; } attachrid(getcharid(3,.@partymembername$[.@i])); if (checkquest(70000)== -1) setquest 70000; detachrid; } attachrid(.@talkname); } if ((checkquest(70000)== -1)) { setquest 70000; } sleep2 1000; warpparty "1@gvs5",49,40,.@party_id; end; } else if ( (checkquest(70000,PLAYTIME) == 0) || (checkquest(70000,PLAYTIME) == 1) ) { mes "Is that wound still bleeding?! Come back later when you're fully healed and well rested."; close; }} 1@gvs5,51,41,4 script Challenge#1-2 459,{ getpartymember('party_id); mes "[ ^0033CC"+ 'npcname$+"^000000 ]";; if ( ($@partymembercount != 'maxpartymembercount) ){ mes "Are you trying to scam me?!"; mes "You can't sneak an extra person in for extra help!"; close2; for( set 'i, 0; 'i < $@partymembercount; set 'i, 'i +1 ) { atcommand "@request "+$@partymembername$['i]+" tried to use a loophole in an NPC."; atcommand "@jail "+$@partymembername$['i]; logmes $@partymembername$['i]+", tried to use a loophole in an NPC."; } instance_destroy ('instid); end; } mes "Are you ready? Do note your time is still running."; if (select("Yeah, Let's go!:No, Hold on.") == 2) { next; mes "[ ^0033CC"+ 'npcname$+"^000000 ]";; mes "Clock is ticking for you but I got all day."; close; } next; mes "[ ^0033CC"+ 'npcname$+"^000000 ]";; mes "Don't die kid!"; close2; donpcevent instance_npcname("Challenge#1-3", instance_id())+"::OnEnable"; end; } 1@gvs5,51,41,4 script Challenge#1-3 459,{ end; OnInstanceInit: disablenpc instance_npcname("Challenge#1-3", instance_id()); end; OnEnable: disablenpc instance_npcname("Challenge#1-2", instance_id()); enablenpc instance_npcname("Challenge#1-3", instance_id()); initnpctimer; end; OnTimer1000: instance_announce 0,'npcname$+": Couldn't you all get here any faster?!",bc_map; end; OnTimer9000: instance_announce 0,'npcname$+": Here is what's going to happen..so listen up..",bc_map; end; OnTimer17000: instance_announce 0,'npcname$+": Once I get outta here, the monsters are going to be released",bc_map; end; OnTimer25000: instance_announce 0,'npcname$+": Your job is to kill ALL the monsters till none are standing.",bc_map; end; OnTimer33000: instance_announce 0,'npcname$+": However, more monsters will come the more you kill. Stick together! Got that?",bc_map; end; OnTimer41000: instance_announce 0,'npcname$+": Cause once your party is wiped. It's over. You'll have to wait to try again...",bc_map; end; OnTimer49000: instance_announce 0,'npcname$+": Now ya'll better get your weapons out and spells ready....anytime now..",bc_map; end; OnTimer57000: instance_announce 0,'npcname$+": And Oh...DON'T LOSE A LIMB!",bc_map; end; OnTimer65000: instance_announce 0,'npcname$+": Here they come! I'll see ya'll afterwards if ya'll make it alive!",bc_map; end; OnTimer68000: donpcevent instance_npcname("#Initial Wave", instance_id())+"::OnEnable"; disablenpc instance_npcname("Challenge#1-3", instance_id()); specialeffect 304; stopnpctimer; end; } 1@gvs5,18,52,0 script #Initial Wave -1,{ end; OnInstanceInit: disablenpc instance_npcname("#Initial Wave", instance_id()); end; OnEnable: enablenpc instance_npcname("#Initial Wave", instance_id()); set 'monscount, 300; instance_announce 0,'monscount+" "+'chamonname$+" left",bc_map; monster "1@gvs5",0,0,'chamonname$,'chamonid,30,instance_npcname("#Initial Wave", instance_id())+"::OnMyMobDead"; end; OnMyMobDead: set 'monscount, 'monscount - 1; if ( 'monscount == 0 ) { donpcevent instance_npcname("#MvP Summoner", instance_id())+"::OnEnable"; end; } instance_announce 0,'monscount+" monster[s] left",bc_map; if ( ('monscount == 280) && ('monscount != 0) ) { monster "1@gvs5",0,0,'chamonname$,'chamonid,30,instance_npcname("#Initial Wave", instance_id())+"::OnMyMobDead"; } if ( ( ('monscount == 260) ||('monscount == 240) ) && ('monscount != 0) ) { monster "1@gvs5",0,0,'chamonname$,'chamonid,20,instance_npcname("#Initial Wave", instance_id())+"::OnMyMobDead"; monster "1@gvs5",0,0,'chamonname2$,'chamonid2,10,instance_npcname("#Initial Wave", instance_id())+"::OnMyMobDead"; } if ( ( ('monscount == 220) ||('monscount == 200) ) && ('monscount != 0) ) { monster "1@gvs5",0,0,'chamonname$,'chamonid,15,instance_npcname("#Initial Wave", instance_id())+"::OnMyMobDead"; monster "1@gvs5",0,0,'chamonname2$,'chamonid2,15,instance_npcname("#Initial Wave", instance_id())+"::OnMyMobDead"; } if ( ( ('monscount == 180) ||('monscount == 160) ) && ('monscount != 0) ) { monster "1@gvs5",0,0,'chamonname$,'chamonid,10,instance_npcname("#Initial Wave", instance_id())+"::OnMyMobDead"; monster "1@gvs5",0,0,'chamonname2$,'chamonid2,20,instance_npcname("#Initial Wave", instance_id())+"::OnMyMobDead"; } if ( ('monscount == 140) && ('monscount != 0) ) { monster "1@gvs5",0,0,'chamonname2$,'chamonid2,20,instance_npcname("#Initial Wave", instance_id())+"::OnMyMobDead"; monster "1@gvs5",0,0,'chamonname3$,'chamonid3,10,instance_npcname("#Initial Wave", instance_id())+"::OnMyMobDead"; } if ( ('monscount == 120 ) && ('monscount != 0) ) { monster "1@gvs5",0,0,'chamonname2$,'chamonid2,15,instance_npcname("#Initial Wave", instance_id())+"::OnMyMobDead"; monster "1@gvs5",0,0,'chamonname3$,'chamonid3,15,instance_npcname("#Initial Wave", instance_id())+"::OnMyMobDead"; } end; } 1@gvs5,18,52,0 script #MvP Summoner -1,{ end; OnInstanceInit: disablenpc instance_npcname("#MvP Summoner", instance_id()); end; OnEnable: enablenpc instance_npcname("#MvP Summoner", instance_id()); instance_announce 0,'npcname$+": The final monster will be released in 10 seconds. Get ready!",bc_map; initnpctimer; end; OnTimer10000: instance_announce 0,'npcname$+": The final monster has been released. Kill it and you're done!",bc_map; monster "1@gvs5",0,0,'chamonname4$,'chamonid4,1,instance_npcname("#MvP Summoner", instance_id())+"::OnMyMVPDead"; stopnpctimer; end; OnMyMVPDead: instance_announce 0,'npcname$+": Congratulations! The treasure chest is yours!",bc_map; getpartymember('party_id); set 'trecount,$@partymembercount * 'rewardcount; for( set 'i, 0; 'i < ($@partymembercount * 'rewardcount); set 'i, 'i +1 ) { set 'randnum,rand(getarraysize('chamonid5)); monster "1@gvs5",44 + 'i,40,"Treasure Chest",'chamonid5['randnum],1,instance_npcname("#MvP Summoner", instance_id())+"::OnChestBreak"; } end; OnChestBreak: set 'trecount,'trecount - 1; instance_announce 0,"A chest has been opened by "+strcharinfo(0),bc_map; if (('trecount == 0)) { enablenpc instance_npcname("#Instance Destroy", instance_id()); donpcevent instance_npcname("#Instance Destroy", instance_id())+"::OnEnable"; } end; } 1@gvs5,18,52,0 script #Instance Destroy -1,{ end; OnInstanceInit: disablenpc instance_npcname("#Instance Destroy", instance_id()); end; OnEnable: enablenpc instance_npcname("#Instance Destroy", instance_id()); instance_announce 0,"Instance will be destroyed in 10 seconds...",bc_map; initnpctimer; end; OnTimer10000: instance_destroy ('instid); stopnpctimer; end; } 1@gvs5 mapflag nomemo 1@gvs5 mapflag noreturn 1@gvs5 mapflag nosave SavePoint 1@gvs5 mapflag noteleport 1@gvs5 mapflag nowarp 1@gvs5 mapflag nowarpto 1@gvs5 mapflag partylock here's my script Edited November 1, 2013 by Diss Quote Link to comment Share on other sites More sharing options...
Norse Posted December 19, 2013 Group: Members Topic Count: 17 Topics Per Day: 0.00 Content Count: 82 Reputation: 0 Joined: 11/30/12 Last Seen: April 2, 2023 Share Posted December 19, 2013 (edited) I hope someone can make the 300 Monster Challenge working with the new SVN Edited December 19, 2013 by Norse Quote Link to comment Share on other sites More sharing options...
Question
Diss
hi this line 161
set .@instance,instance_create("300 Monsters",.@party_id);
its look like the old instance how can i change for the new svn
thanks in advance
Edited by DissLink to comment
Share on other sites
3 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.