-
Posts
57 -
Joined
-
Last visited
-
Days Won
3
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Posts posted by Mushimaru
-
-
1 hour ago, mayonese said:
how to disable @ load / @ return in pvp warper this script?
// UVP 2 prontera.gat,143,173,6 script PVP Room 723,{ if (.pvp_square$=="") donpcevent "PVP Warper::OnClock0000"; mes "[PvP Warper]"; mes "Pilih Arena Yang Kamu Mau"; switch(select("Izlude ^FF0000["+getmapusers("pvp_y_8-2")+"]^000000:Arena Matador ^FF0000["+getmapusers("guild_vs3")+"]^000000:Prontera ^FF0000["+getmapusers("guild_vs1")+"]^000000:Payon ^FF0000["+getmapusers("pvp_y_8-3")+"]^000000:Morroc ^FF0000["+getmapusers("pvp_y_8-5")+"]^000000:")) { case 1: // Izlude if (getmapusers("pvp_y_8-2") > 99) callsub S_full; callsub S_payment; warp "pvp_y_8-2",0,0; announce ""+strcharinfo(0)+" Telah Memasuki PVP Room ",bc_all,0x0FFFF; end; case 2: // Arena Matador if (getmapusers("guild_vs3") > 99) callsub S_full; callsub S_payment; warp "guild_vs3",0,0; announce ""+strcharinfo(0)+" Telah Memasuki PVP Room ",bc_all,0x0FFFF; end; case 3: // Prontera if (getmapusers("guild_vs1") > 99) callsub S_full; callsub S_payment; warp "pvp_y_8-1",0,0; announce ""+strcharinfo(0)+" Telah Memasuki PVP Room ",bc_all,0x0FFFF; end; case 4: // Payon if (getmapusers("pvp_y_8-3") > 99) callsub S_full; callsub S_payment; warp "pvp_y_8-3",0,0; announce ""+strcharinfo(0)+" Telah Memasuki PVP Room ",bc_all,0x0FFFF; end; case 5: // Morroc if (getmapusers("1@orcs") > 99) callsub S_full; callsub S_payment; warp "pvp_y_8-5",0,0; announce ""+strcharinfo(0)+" Telah Memasuki PVP Room ",bc_all,0x0FFFF; end; L_NotBaby: mes "Only baby can enter this room"; close; } S_full: mes " "; mes "I'm sorry, this arena is full. Please try again later..."; close; S_payment: if (Zeny < (0)) { mes "You don't have enough zeny."; mes "It costs "+(0)+" zeny for you to enter."; close; } set Zeny, Zeny - (0); return; OnInit: OnTimer5000: delwaitingroom; switch(rand(1,5)) { Case 1: waitingroom getmapusers("pvp_y_8-2")+" "+( getmapusers("pvp_y_8-2") > 1 ? "s":"") +" PVP Room", 0; goto Timer; end; break; Case 2: waitingroom getmapusers("guild_vs3")+" "+( getmapusers("guild_vs3") > 1 ? "s":"") +" PVP Room", 0; goto Timer; end; break; Case 3: waitingroom getmapusers("pvp_y_8-1")+" "+( getmapusers("pvp_y_8-1") > 1 ? "s":"") +" PVP Room", 0; goto Timer; end; break; Case 4: waitingroom getmapusers("pvp_y_8-3")+" "+( getmapusers("pvp_y_8-3") > 1 ? "s":"") +" PVP Room", 0; goto Timer; end; break; Case 5: waitingroom getmapusers("pvp_y_8-5")+" "+( getmapusers("pvp_y_8-5") > 1 ? "s":"") +" PVP Room", 0; goto Timer; end; break; Timer: initnpctimer; } OnClock0000: // set the "PVP Room" map, based on day of the weeek switch(gettime(4)) { case 0: // Sunday case 1: // Monday set .pvp_square$, "guild_vs2"; break; case 2: // Tuesday case 3: // Wednesday set .pvp_square$, "pvp_y_8-3"; break; case 4: // Thursday case 5: // Friday set .pvp_square$, "guild_vs4"; break; case 6: // Saturday set .pvp_square$, "guild_vs1-2"; break; } // items not allowed in PVP NoPotion setarray .NoPotion_ids[0], 607, 608; // items not allowed in Non Donator PVP setarray .NoDonator_ids[0], 2410, 1530; end; } moscovia.gat,226,198,4 duplicate(PVP Warper) PVP Warper#1 871 alberta.gat,110,140,3 duplicate(PVP Warper) PVP Warper#3 871 // Kliwa aldebaran.gat,147,115,1 duplicate(PVP Warper) PVP Warper#4 871 // Kliwa amatsu.gat,207,86,3 duplicate(PVP Warper) PVP Warper#5 871 // Kliwa ayothaya.gat,155,117,2 duplicate(PVP Warper) PVP Warper#6 871 // Kliwa comodo.gat,206,80,4 duplicate(PVP Warper) PVP Warper#7 871 // Kliwa einbech.gat,198,83,4 duplicate(PVP Warper) PVP Warper#8 871 // Taas Kaliwa einbroch.gat,174,172,5 duplicate(PVP Warper) PVP Warper#9 871 // Taas Kaliwa geffen.gat,125,71,4 duplicate(PVP Warper) PVP Warper#10 871 gonryun.gat,162,120,4 duplicate(PVP Warper) PVP Warper#11 871 hugel.gat,89,151,5 duplicate(PVP Warper) PVP Warper#12 871 izlude.gat,134,90,4 duplicate(PVP Warper) PVP Warper#13 871 lighthalzen.gat,166,101,4 duplicate(PVP Warper) PVP Warper#14 871 louyang.gat,214,120,5 duplicate(PVP Warper) PVP Warper#15 871 xmas.gat,154,136,4 duplicate(PVP Warper) PVP Warper#16 871 morocc.gat,160,97,4 duplicate(PVP Warper) PVP Warper#17 871 payon.gat,148,226,4 duplicate(PVP Warper) PVP Warper#18 871 rachel.gat,135,115,4 duplicate(PVP Warper) PVP Warper#19 871 veins.gat,219,127,4 duplicate(PVP Warper) PVP Warper#20 871 yuno.gat,163,170,4 duplicate(PVP Warper) PVP Warper#21 871 umbala.gat,106,159,3 duplicate(PVP Warper) PVP Warper#22 871 poring_c02,139,81,4 duplicate(PVP Warper) PVP Warper#23 871 dewata,88,210,4 duplicate(PVP Warper) PVP Warper#24 871 // Mapflags guild_vs2 mapflag noreturn guild_vs2 mapflag nowarp guild_vs5 mapflag noreturn guild_vs5 mapflag nowarp guild_vs4 mapflag noreturn guild_vs4 mapflag nowarp guild_vs1-2 mapflag noreturn guild_vs1-2 mapflag nowarp guild_vs3 mapflag noreturn guild_vs3 mapflag noreturn guild_vs3 mapflag noreturn guild_vs1 mapflag noreturn guild_vs1 mapflag nowarp pvp_y_8-2 mapflag noreturn 1@orcs mapflag pvp pvp_y_8-3 mapflag noreturn guild_vs3 mapflag noreturn
u can try edit nowarp in mapflag
-
//===== rAthena Script ======================================= //= Warper //===== By: ================================================== //= Euphy //===== Current Version: ===================================== //= 1.4b //===== Compatible With: ===================================== //= rAthena Project //===== Description: ========================================= //= A complete - but very condensed - warper script. //= Some coordinates written by Tekno-Kanix and ToastOfDoom. //===== Additional Comments: ================================= //= 1.0 Initial script. //= 1.1 Added missing duplicates and fixed coordinates. //= 1.2 Added new episodes and simplified functions. //= 1.3 Added Renewal checks and Instances menu. //= Aligned coordinates with @go. //= 1.4 Added new Guild Dungeons. //= 1.4a Slight edits. //= 1.4b Added Wolfchev's Laboratory warp. //============================================================ - script Warper -1,{ function Go; function Disp; function Pick; function Restrict; // -------------------------------------------------- // Main Menu: // -------------------------------------------------- menu "Last Warp ^777777["+lastwarp$+"]^000000",-, " ~ Towns",Towns, " ~ Fields",Fields, " ~ Dungeons",Dungeons, " ~ Guild Castles",Castles, " ~ Guild Dungeons",Guild_Dungeons; if (lastwarp$ == "") message strcharinfo(0),"You haven't warped anywhere yet."; else warp lastwarp$,lastwarpx,lastwarpy; end; // ------------------- Functions ------------------- // * Go("<map>",<x>,<y>); // ~ Warps directly to a map. // // * Disp("<Menu Option>",<first option>,<last option>); // * Pick("<map_prefix>"{,<index offset>}); // ~ Dynamic menu and map selection (auto-numbered). // // * Disp("<Option 1>:<Option 2>:<etc.>"); // * Pick("","<map1>","<map2>","<etc.>"); // ~ Manual menu and map selection (listed). // // * Restrict("<RE | Pre-RE>"{,<menu option numbers>}); // ~ Only allows map for Renewal or Pre-Renewal modes. // If menu option numbers are given, only those maps // will be restricted (i.e. not for "Go"). // // Other notes: // ~ Array @c[] holds all (x,y) coordinates. // ~ Use @c[2] EXCEPT when maps begin dynamically // at 0: use @c[0] and Pick() offset 1. // -------------------------------------------------- function Go { set lastwarp$, getarg(0); set lastwarpx, getarg(1,0); set lastwarpy, getarg(2,0); warp getarg(0),getarg(1,0),getarg(2,0); end; } function Disp { if (getargcount() < 3) set @menu$, getarg(0); else { set @menu$,""; for (set .@i,getarg(1); .@i<=getarg(2); set .@i,.@i+1) set @menu$, @menu$+getarg(0)+" "+.@i+":"; } return; } function Pick { set .@warp_block,@warp_block; set @warp_block,0; set .@select, select(@menu$); if (getarg(0) == "") { set .@i, .@select; set .@map$, getarg(.@i); } else { set .@i, .@select-getarg(1,0); set .@map$, getarg(0)+((.@i<10)?"0":"")+.@i; } if (.@warp_block & (1<<.@select)) { message strcharinfo(0),"This map is not enabled in "+((checkre(0))?"":"Pre-")+"Renewal."; end; } set .@x, @c[.@i*2]; set .@y, @c[.@i*2+1]; deletearray @c[0],getarraysize(@c); Go(.@map$,.@x,.@y); } function Restrict { if ((getarg(0) == "RE" && !checkre(0)) || (getarg(0) == "Pre-RE" && checkre(0))) { if (getarg(1,0)) { set @warp_block,0; for (set .@i,1; .@i<getargcount(); set .@i,.@i+1) set @warp_block, @warp_block | (1<<getarg(.@i)); } else { message strcharinfo(0),"This map is not enabled in "+((checkre(0))?"":"Pre-")+"Renewal."; end; } } return; } // -------------------------------------------------- Towns: // -------------------------------------------------- menu "Prontera",T1, "Alberta",T2, "Aldebaran",T3, "Amatsu",T4, "Ayothaya",T5, "Brasilis",T6, "Comodo",T7, "Dewata",T8, "Eclage",T9, "Einbech",T10, "Einbroch",T11, "El Dicastes",T12, "Geffen",T13, "Gonryun",T14, "Hugel",T15, "Izlude",T16, "Jawaii",T17, "Lighthalzen",T18, "Louyang",T19, "Lutie",T20, "Malangdo",T21, "Malaya",T22, "Manuk",T23, "Midgarts Expedition Camp",T24, "Mora",T25, "Morroc",T26, "Moscovia",T27, "Nameless Island",T28, "Niflheim",T29, "Payon",T30, "Rachel",T31, "Splendide",T32, "Thor Camp",T33, "Umbala",T34, "Veins",T35, "Yuno",T36; T1: Go("prontera",155,183); T2: Go("alberta",28,234); T3: Go("aldebaran",140,131); T4: Go("amatsu",198,84); T5: Go("ayothaya",208,166); T6: Restrict("RE"); Go("brasilis",196,217); T7: Go("comodo",209,143); T8: Restrict("RE"); Go("dewata",200,180); T9: Restrict("RE"); Go("ecl_in01",48,53); T10: Go("einbech",63,35); T11: Go("einbroch",64,200); T12: Restrict("RE"); Go("dicastes01",198,187); T13: Go("geffen",119,59); T14: Go("gonryun",160,120); T15: Go("hugel",96,145); T16: Go("izlude",128,(checkre(3)?146:114)); T17: Go("jawaii",251,132); T18: Go("lighthalzen",158,92); T19: Go("louyang",217,100); T20: Go("xmas",147,134); T21: Restrict("RE"); Go("malangdo",140,114); T22: Restrict("RE"); Go("malaya",231,200); T23: Go("manuk",282,138); T24: Go("mid_camp",210,288); T25: Restrict("RE"); Go("mora",55,146); T26: Go("morocc",156,93); T27: Go("moscovia",223,184); T28: Go("nameless_n",256,215); T29: Go("niflheim",202,174); T30: Go("payon",179,100); T31: Go("rachel",130,110); T32: Go("splendide",201,147); T33: Go("thor_camp",246,68); T34: Go("umbala",97,153); T35: Go("veins",216,123); T36: Go("yuno",157,51); // -------------------------------------------------- Fields: // -------------------------------------------------- menu "Amatsu Fields",F1, "Ayothaya Fields",F2, "Bifrost Fields", F3, "Brasilis Fields",F4, "Comodo Fields",F5, "Dewata Fields",F6, "Eclage Fields",F7, "Einbroch Fields",F8, "El Dicastes Fields",F9, "Geffen Fields",F10, "Gonryun Fields",F11, "Hugel Fields",F12, "Lighthalzen Fields",F13, "Louyang Field",F14, "Lutie Field",F15, "Malaya Fields",F16, "Manuk Fields",F17, "Mjolnir Fields",F18, "Moscovia Fields",F19, "Niflheim Fields",F20, "Payon Forests",F21, "Prontera Fields",F22, "Rachel Fields",F23, "Sograt Deserts",F24, "Splendide Fields",F25, "Umbala Fields",F26, "Veins Fields",F27, "Yuno Fields",F28; F1: setarray @c[2],190,197; Disp("Amatsu Field",1,1); Pick("ama_fild"); F2: setarray @c[2],173,134,212,150; Disp("Ayothaya Field",1,2); Pick("ayo_fild"); F3: Restrict("RE"); setarray @c[2],193,220,220,187; Disp("Bifrost Field",1,2); Pick("bif_fild"); F4: Restrict("RE"); setarray @c[2],74,32; Disp("Brasilis Field",1,1); Pick("bra_fild"); F5: Restrict("Pre-RE",5); setarray @c[2],180,178,231,160,191,172,228,194,224,203,190,223,234,177,194,175,172,172; Disp("Comodo Field",1,9); Pick("cmd_fild"); F6: Restrict("RE"); setarray @c[2],371,212; Disp("Dewata Field",1,1); Pick("dew_fild"); F7: Restrict("RE"); setarray @c[2],97,314; Disp("Eclage Field",1,1); Pick("ecl_fild"); F8: Restrict("Pre-RE",2,10); setarray @c[2],142,225,182,141,187,228,185,173,216,173,195,148,272,220,173,214,207,174,196,200; Disp("Einbroch Field",1,10); Pick("ein_fild"); F9: Restrict("RE"); setarray @c[2],143,132,143,217; Disp("El Dicastes Field",1,2); Pick("dic_fild"); F10: Restrict("Pre-RE",13,15); setarray @c[0],46,199,213,204,195,212,257,192,188,171,166,263,248,158,195,191,186,183,221,117,178,218,136,328,240,181,235,235,211,185; Disp("Geffen Field",0,14); Pick("gef_fild",1); F11: setarray @c[2],220,227; Disp("Gonryun Field",1,1); Pick("gon_fild"); F12: Restrict("Pre-RE",3,7); setarray @c[2],268,101,222,193,232,185,252,189,196,106,216,220,227,197; Disp("Hugel Field",1,7); Pick("hu_fild"); F13: setarray @c[2],240,179,185,235,240,226; Disp("Lighthalzen Field",1,3); Pick("lhz_fild"); F14: setarray @c[2],229,187; Disp("Louyang Field",1,1); Pick("lou_fild"); F15: setarray @c[2],115,145; Disp("Lutie Field",1,1); Pick("xmas_fild"); F16: Restrict("RE"); setarray @c[2],40,272,207,180; Disp("Malaya Field",1,2); Pick("ma_fild"); F17: setarray @c[2],35,236,35,262,84,365; Disp("Manuk Field",1,3); Pick("man_fild"); F18: setarray @c[2],204,120,175,193,208,213,179,180,181,240,195,270,235,202,188,215,205,144,245,223,180,206,196,208; Disp("Mjolnir Field",1,12); Pick("mjolnir_"); F19: setarray @c[2],82,104,131,147; Disp("Moscovia Field",1,2); Pick("mosk_fild"); F20: setarray @c[2],215,229,167,234; Disp("Niflheim Field",1,2); Pick("nif_fild"); F21: Restrict("Pre-RE",5,11); setarray @c[2],158,206,151,219,205,148,186,247,134,204,193,235,200,177,137,189,201,224,160,205,194,150; Disp("Payon Forest",1,11); Pick("pay_fild"); F22: setarray @c[0],208,227,190,206,240,206,190,143,307,252,239,213,185,188,193,194,187,218,210,183,195,149,198,164; Disp("Prontera Field",0,11); Pick("prt_fild",1); F23: Restrict("Pre-RE",2,7,9,10,11,13); setarray @c[2],192,162,235,166,202,206,202,208,225,202,202,214,263,196,217,201,87,121,277,181,221,185,175,200,174,197; Disp("Rachel Field",1,13); Pick("ra_fild"); F24: setarray @c[2],219,205,177,206,194,182,224,170,198,216,156,187,185,263,206,228,208,238,209,223,85,97,207,202,31,195,38,195; Disp("Sograt Desert 1:Sograt Desert 2:Sograt Desert 3:Sograt Desert 7:Sograt Desert 11:Sograt Desert 12:Sograt Desert 13:Sograt Desert 16:Sograt Desert 17:Sograt Desert 18:Sograt Desert 19:Sograt Desert 20:Sograt Desert 21:Sograt Desert 22"); Pick("","moc_fild01","moc_fild02","moc_fild03","moc_fild07","moc_fild11","moc_fild12","moc_fild13","moc_fild16","moc_fild17","moc_fild18","moc_fild19","moc_fild20","moc_fild21","moc_fild22"); F25: setarray @c[2],175,186,236,184,188,204; Disp("Splendide Field",1,3); Pick("spl_fild"); F26: setarray @c[2],217,206,223,221,237,215,202,197; Disp("Umbala Field",1,4); Pick("um_fild"); F27: Restrict("Pre-RE",5); setarray @c[2],186,175,196,370,222,45,51,250,202,324,150,223,149,307; Disp("Veins Field",1,7); Pick("ve_fild"); F28: Restrict("Pre-RE",5,10); setarray @c[2],189,224,192,207,221,157,226,199,223,177,187,232,231,174,196,203,183,214,200,124,195,226,210,304; Disp("Yuno Field",1,12); Pick("yuno_fild"); // -------------------------------------------------- Dungeons: // -------------------------------------------------- menu "Abyss Lakes",D1, "Amatsu Dungeon",D2, "Anthell",D3, "Ayothaya Dungeon",D4, "Beach Dungeon",D5, "Bifrost Tower",D41, "Bio Labs",D6, "Brasilis Dungeon",D7, "Byalan Dungeon",D8, "Clock Tower",D9, "Coal Mines",D10, "Culvert",D11, "Cursed Abbey",D12, "Dewata Dungeon",D13, "Einbroch Dungeon",D14, "Gefenia",D15, "Geffen Dungeon",D16, "Glast Heim",D17, "Gonryun Dungeon",D18, "Hidden Dungeon",D19, "Ice Dungeon",D20, "Juperos",D21, "Kiel Dungeon",D22, "Louyang Dungeon",D23, "Magma Dungeon",D24, "Malangdo Dungeon",D25, "Moscovia Dungeon",D26, "Nidhogg's Dungeon",D27, "Odin Temple",D28, "Orc Dungeon",D29, "Payon Dungeon",D30, "Pyramids",D31, "Rachel Sanctuary",D32, "Scaraba Hole",D33, "Sphinx",D34, "Sunken Ship",D35, "Thanatos Tower",D36, "Thor Volcano",D37, "Toy Factory",D38, "Turtle Dungeon",D39, "Umbala Dungeon",D40; D1: setarray @c[2],261,272,275,270,116,27; Disp("Abyss Lakes",1,3); Pick("abyss_"); D2: setarray @c[2],228,11,34,41,119,14; Disp("Amatsu Dungeon",1,3); Pick("ama_dun"); D3: setarray @c[2],35,262,168,170; Disp("Anthell",1,2); Pick("anthell"); D4: setarray @c[2],275,19,24,26; Disp("Ancient Shrine Maze:Inside Ancient Shrine"); Pick("ayo_dun"); D5: setarray @c[2],266,67,255,244,23,260; Disp("Beach Dungeon",1,3); Pick("","beach_dun","beach_dun2","beach_dun3"); D6: Restrict("RE",4); setarray @c[2],150,288,150,18,140,134,244,52; Disp("Bio Lab",1,4); Pick("lhz_dun"); D7: Restrict("RE"); setarray @c[2],87,47,262,262; Disp("Brasilis Dungeon",1,2); Pick("bra_dun"); D8: Restrict("RE",6); setarray @c[0],168,168,253,252,236,204,32,63,26,27,141,187; Disp("Byalan Dungeon",1,6); Pick("iz_dun",1); D9: setarray @c[2],199,159,148,283,65,147,56,155,297,25,127,169,277,178,268,74; Disp("Clock Tower 1:Clock Tower 2:Clock Tower 3:Clock Tower 4:Basement 1:Basement 2:Basement 3:Basement 4"); Pick("","c_tower1","c_tower2","c_tower3","c_tower4","alde_dun01","alde_dun02","alde_dun03","alde_dun04"); D10: setarray @c[2],52,17,381,343,302,262; Disp("Coal Mines",1,3); Pick("mjo_dun"); D11: setarray @c[2],131,247,19,19,180,169,100,92; Disp("Culvert",1,4); Pick("","prt_sewb1","prt_sewb2","prt_sewb3","prt_sewb4"); D12: setarray @c[2],51,14,150,11,120,10; Disp("Cursed Abbey",1,3); Pick("abbey"); D13: Restrict("RE"); setarray @c[2],285,160,299,29; Disp("Dewata Dungeon",1,2); Pick("dew_dun"); D14: setarray @c[2],22,14,292,290; Disp("Einbroch Dungeon",1,2); Pick("ein_dun"); D15: setarray @c[2],40,103,203,34,266,168,130,272; Disp("Gefenia",1,4); Pick("gefenia",0); D16: setarray @c[0],104,99,115,236,106,132,203,200; Disp("Geffen Dungeon",1,4); Pick("gef_dun",1); D17: setarray @c[2],370,304,199,29,104,25,150,15,157,287,147,15,258,255,108,291,171,283,68,277,156,7,12,7,133,271,224,274,14,70,150,14; Disp("Entrance:Castle 1:Castle 2:Chivalry 1:Chivalry 2:Churchyard:Culvert 1:Culvert 2:Culvert 3:Culvert 4:St. Abbey:Staircase Dungeon:Underground Cave 1:Underground Cave 2:Underground Prison 1:Underground Prison 2"); Pick("","glast_01","gl_cas01","gl_cas02","gl_knt01","gl_knt02","gl_chyard","gl_sew01","gl_sew02","gl_sew03","gl_sew04","gl_church","gl_step","gl_dun01","gl_dun02","gl_prison","gl_prison1"); D18: setarray @c[2],153,53,28,113,68,16; Disp("Gonryun Dungeon",1,3); Pick("gon_dun"); D19: setarray @c[2],176,7,93,20,23,8; Disp("Hidden Dungeon",1,3); Pick("prt_maze"); D20: setarray @c[2],157,14,151,155,149,22,33,158; Disp("Ice Dungeon",1,4); Pick("ice_dun"); D21: setarray @c[2],140,51,53,247,37,63,150,285; Disp("Entrance:Juperos 1:Juperos 2:Core"); Pick("","jupe_cave","juperos_01","juperos_02","jupe_core"); D22: setarray @c[2],28,226,41,198; Disp("Kiel Dungeon",1,2); Pick("kh_dun"); D23: setarray @c[2],218,196,282,20,165,38; Disp("The Royal Tomb:Inside the Royal Tomb:Suei Long Gon"); Pick("lou_dun"); D24: setarray @c[2],126,68,47,30; Disp("Magma Dungeon",1,2); Pick("mag_dun"); D25: Restrict("RE"); setarray @c[2],33,230; Disp("Malangdo Dungeon",1,1); Pick("mal_dun"); D26: setarray @c[2],189,48,165,30,32,135; Disp("Moscovia Dungeon",1,3); Pick("mosk_dun"); D27: setarray @c[2],61,239,60,271; Disp("Nidhogg's Dungeon",1,2); Pick("nyd_dun"); D28: setarray @c[2],298,167,224,149,266,280; Disp("Odin Temple",1,3); Pick("odin_tem"); D29: setarray @c[2],32,170,21,185; Disp("Orc Dungeon",1,2); Pick("orcsdun"); D30: setarray @c[0],21,183,19,33,19,63,155,159,201,204; Disp("Payon Dungeon",1,5); Pick("pay_dun",1); D31: Restrict("RE",7,8); setarray @c[2],192,9,10,192,100,92,181,11,94,96,192,8,94,96,192,8; Disp("Pyramids 1:Pyramids 2:Pyramids 3:Pyramids 4:Basement 1:Basement 2:Basement 1 - Nightmare Mode:Basement 2 - Nightmare Mode"); Pick("","moc_pryd01","moc_pryd02","moc_pryd03","moc_pryd04","moc_pryd05","moc_pryd06","moc_prydn1","moc_prydn2"); D32: setarray @c[2],140,11,32,21,8,149,204,218,150,9; Disp("Rachel Sanctuary",1,5); Pick("ra_san"); D33: Restrict("RE"); setarray @c[2],364,44,101,141; Disp("Scaraba Hole",1,2); Pick("dic_dun"); D34: setarray @c[2],288,9,149,81,210,54,10,222,100,99; Disp("Sphinx",1,5); Pick("","in_sphinx1","in_sphinx2","in_sphinx3","in_sphinx4","in_sphinx5"); D35: setarray @c[2],69,24,102,27; Disp("Sunken Ship",1,2); Pick("treasure"); D36: setarray @c[2],150,39,150,136,220,158,59,143,62,11,89,221,35,166,93,148,29,107,159,138,19,20,130,52; Disp("Thanatos Tower",1,12); Pick("tha_t"); D37: setarray @c[2],21,228,75,205,34,272; Disp("Thor Volcano",1,3); Pick("thor_v"); D38: setarray @c[2],205,15,129,133; Disp("Toy Factory",1,2); Pick("xmas_dun"); D39: setarray @c[2],154,49,148,261,132,189,100,192; Disp("Entrance:Turtle Dungeon 1:Turtle Dungeon 2:Turtle Dungeon 3"); Pick("tur_dun"); D40: Restrict("Pre-RE",1,2); setarray @c[2],42,31,48,30,204,78; Disp("Carpenter's Shop in the Tree:Passage to a Foreign World:Hvergermil's Fountain"); Pick("","um_dun01","um_dun02","yggdrasil01"); D41: Restrict("RE"); setarray @c[2],57,13,64,88,45,14,26,23; Disp("Bifrost Tower",1,4); Pick("ecl_tdun"); // -------------------------------------------------- Castles: // -------------------------------------------------- menu "Aldebaran Castles",C1, "Geffen Castles",C2, "Payon Castles",C3, "Prontera Castles",C4, "Arunafeltz Castles",C5, "Schwaltzvalt Castles",C6; C1: setarray @c[2],48,83,95,249,142,85,239,242,264,90; Disp("Neuschwanstein:Hohenschwangau:Nuenberg:Wuerzburg:Rothenburg"); Pick("","alde_gld","alde_gld","alde_gld","alde_gld","alde_gld"); C2: setarray @c[2],214,75,308,240,143,240,193,278,305,87; Disp("Repherion:Eeyolbriggar:Yesnelph:Bergel:Mersetzdeitz"); Pick("","gef_fild13","gef_fild13","gef_fild13","gef_fild13","gef_fild13"); C3: setarray @c[2],121,233,295,116,317,293,140,160,204,266; Disp("Bright Arbor:Scarlet Palace:Holy Shadow:Sacred Altar:Bamboo Grove Hill"); Pick("","pay_gld","pay_gld","pay_gld","pay_gld","pay_gld"); C4: setarray @c[2],134,65,240,128,153,137,111,240,208,240; Disp("Kriemhild:Swanhild:Fadhgridh:Skoegul:Gondul"); Pick("","prt_gld","prt_gld","prt_gld","prt_gld","prt_gld"); C5: setarray @c[2],158,272,83,47,68,155,299,345,292,107; Disp("Mardol:Cyr:Horn:Gefn:Banadis"); Pick("","aru_gld","aru_gld","aru_gld","aru_gld","aru_gld"); C6: setarray @c[2],293,100,288,252,97,196,137,90,71,315; Disp("Himinn:Andlangr:Viblainn:Hljod:Skidbladnir"); Pick("","sch_gld","sch_gld","sch_gld","sch_gld","sch_gld"); // -------------------------------------------------- Guild_Dungeons: // -------------------------------------------------- menu "Baldur",G1, "Luina",G2, "Valkyrie",G3, "Britoniah",G4, "Arunafeltz",G5, "Schwaltzvalt",G6; G1: Restrict("RE",2,3); setarray @c[2],119,93,119,93,120,130; Disp("Baldur F1:Baldur F2:Hall of Abyss"); Pick("","gld_dun01","gld_dun01_2","gld2_pay"); G2: Restrict("RE",2,3); setarray @c[2],39,161,39,161,147,155; Disp("Luina F1:Luina F2:Hall of Abyss"); Pick("","gld_dun02","gld_dun02_2","gld2_ald"); G3: Restrict("RE",2,3); setarray @c[2],50,44,50,44,140,132; Disp("Valkyrie F1:Valkyrie F2:Hall of Abyss"); Pick("","gld_dun03","gld_dun03_2","gld2_prt"); G4: Restrict("RE",2,3); setarray @c[2],116,45,116,45,152,118; Disp("Britoniah F1:Britoniah F2:Hall of Abyss"); Pick("","gld_dun04","gld_dun04_2","gld2_gef"); G5: Go("arug_dun01",199,195); G6: Go("schg_dun01",200,124); } // -------------------------------------------------- // Duplicates: // -------------------------------------------------- alb2trea,57,70,6 duplicate(Warper) Warper#tre 10007 alberta,28,240,4 duplicate(Warper) Warper#alb 10007 aldebaran,145,118,4 duplicate(Warper) Warper#alde 10007 amatsu,203,87,4 duplicate(Warper) Warper#ama 10007 ayothaya,209,169,6 duplicate(Warper) Warper#ayo 10007 comodo,194,158,4 duplicate(Warper) Warper#com 10007 einbech,59,38,6 duplicate(Warper) Warper#einbe 10007 einbroch,69,202,4 duplicate(Warper) Warper#einbr 10007 gef_fild10,71,339,4 duplicate(Warper) Warper#orc 10007 geffen,124,72,4 duplicate(Warper) Warper#gef 10007 glast_01,372,308,4 duplicate(Warper) Warper#glh 10007 gonryun,162,122,4 duplicate(Warper) Warper#gon 10007 hugel,101,151,4 duplicate(Warper) Warper#hug 10007 izlu2dun,110,92,4 duplicate(Warper) Warper#izd 10007 izlude,134,150,4 duplicate(Warper) Warper#izl 10007 //Pre-RE: (132,120) jawaii,253,138,4 duplicate(Warper) Warper#jaw 10007 lighthalzen,162,102,4 duplicate(Warper) Warper#lhz 10007 louyang,208,103,6 duplicate(Warper) Warper#lou 10007 manuk,274,146,6 duplicate(Warper) Warper#man 10007 mid_camp,216,288,4 duplicate(Warper) Warper#mid 10007 mjolnir_02,85,364,4 duplicate(Warper) Warper#mjo 10007 moc_ruins,64,164,4 duplicate(Warper) Warper#moc 10007 morocc,159,97,4 duplicate(Warper) Warper#mor 10007 moscovia,229,191,4 duplicate(Warper) Warper#mos 10007 nameless_n,259,213,4 duplicate(Warper) Warper#nam 10007 niflheim,205,179,4 duplicate(Warper) Warper#nif 10007 pay_arche,42,134,4 duplicate(Warper) Warper#arc 10007 payon,182,108,4 duplicate(Warper) Warper#pay 10007 prontera,164,195,4 duplicate(Warper) Warper#prt 10007 prt_fild05,279,223,6 duplicate(Warper) Warper#cul 10007 rachel,135,116,4 duplicate(Warper) Warper#rac 10007 splendide,205,153,4 duplicate(Warper) Warper#spl 10007 thor_camp,249,76,4 duplicate(Warper) Warper#thor 10007 umbala,106,150,3 duplicate(Warper) Warper#umb 10007 veins,214,123,4 duplicate(Warper) Warper#ve 10007 xmas,150,136,6 duplicate(Warper) Warper#xmas 10007 yuno,162,47,4 duplicate(Warper) Warper#yuno 10007 // -------------------------------------------------- // Duplicates (Renewal): // -------------------------------------------------- brasilis,201,222,4 duplicate(Warper) Warper#bra 10007 dewata,204,186,6 duplicate(Warper) Warper#dew 10007 dicastes01,194,194,6 duplicate(Warper) Warper#dic 10007 ecl_in01,51,60,4 duplicate(Warper) Warper#ecl 10007 malangdo,134,117,6 duplicate(Warper) Warper#mal 10007 malaya,231,204,4 duplicate(Warper) Warper#ma 10007 mora,57,152,4 duplicate(Warper) Warper#mora 10007
try this...
u miss " ; " in your script
-
Hello everyone i got this problem i add a custom card i can see description my custom card but i can see my cardBMP and follow every guides step
i use grf editor for patch. i can open viewer but i can see it help me pls u.u
make sure the bmp image is in texture/À¯ÀúÀÎÅÍÆäÀ̽º/Collection...and the format is 75 x 100
-
Ok..o.O and?
I do not know how..
i think that was fine already..save this changes and @reloadmobdb in server
-
u need to recompile after edit src file..
-
Hi rathena.
How can I update my server into the latest rathena version?
In my case I created my server with pony vps not to mention. On the start I chose Pre-Renewal set up.
But as time let me examine the files and the server is really renewal and with 3rd job they just disabled it. And accidentally Im beginning to love the renewal set up.
How can I upgrade now my server version into a fully renewal one. With items maps and jobs and lots of new things about the renewal. Specifically the costumes, monsters and items. Because I cant see it on my item_db.
Thanks for those who will help.
rathena/src/config/renewal.h
uncomment // for all the feature there...
-
-
please guide me on this script...
i want to make all the party members warp to another place after kill all the mvp...
here is the script//===== rAthena Script ======================================= //= MVP Ladder Game //===== By: ================================================== //= aftermath, AnnieRuru (rewrite) //===== Current Version: ===================================== //= 1.0 //===== Compatible With: ===================================== //= rAthena Project //===== Description: ========================================= //= Gather a party and kill every MVP in ascending order. //===== Additional Comments: ================================= //= 1.0 First version, edited. [Euphy] //============================================================ prontera,164,163,3 script MvP Ladder Warper 56,{ mes "[MvP Ladder Warper]"; mes "Say... do you want to play the MvP Ladder game?"; next; switch(select("Yes, let's get it on!:Information.:Show me the best record.:No.")) { case 1: break; case 2: mes "[MvP Ladder Warper]"; mes "In this game, your party has to kill every single MvP monster in ascending order, from the weakest to strongest."; if ( .finish_item_amount ) mes "If your party can finish the MVP ladder game, each member will earn "+ callfunc("F_InsertPlural", .finish_item_amount, getitemname( .finish_item_id )) +"."; if ( .register_cost ) mes "But the entrance fee is "+ callfunc( "F_InsertComma", .register_cost ) +" zeny."; next; mes "[MvP Ladder Warper]"; mes "You lose the game if you can't finish in "+ .timeout +" minutes, or if your entire party is killed."; mes "Good luck!"; close; case 3: mes "[MvP Ladder Warper]"; if ( !$mvpladdderparty_time ) { mes "Nobody has finished this game yet."; close; } mes "The best record is"; mes "[ "+( $mvpladdderparty_time / 60 )+" min "+( $mvpladdderparty_time % 60 )+" sec ]"; mes "By the party ^FF0000"+ $mvpladdderparty_name$ +"^000000."; .@size = getarraysize( $mvpladderparty_member$ ); for ( .@i = 0; .@i < .@size; .@i++ ) mes "^000000"+ ( .@i +1 ) +". ^0000FF"+ $mvpladderparty_member$[.@i]; if ( getgmlevel() < .gmlvlreset ) close; next; if ( select( "Close.", "Reset the record." ) == 1 ) close; if ( select( "Never mind.", "I really want to reset it." ) == 1 ) close; $mvpladdderparty_time = 0; $mvpladdderparty_name$ = ""; deletearray $mvpladderparty_member$[.@i]; mes "[MvP Ladder Warper]"; mes "Record reset successfully."; close; case 4: mes "[MvP Ladder Warper]"; mes "When you are strong enough to complete the game, please come back."; close; } if ( !getcharid(1) ) { mes "[MvP Ladder Warper]"; mes "You have to form a party to play."; close; } if ( getpartyleader( getcharid(1), 2 ) != getcharid(0) ) { mes "[MvP Ladder Warper]"; mes "Only the party leader can register."; close; } .@origin = getcharid(3); getpartymember getcharid(1), 1; getpartymember getcharid(1), 2; for ( .@i = 0; .@i < $@partymembercount; .@i++ ) { if ( isloggedin( $@partymemberaid[.@i], $@partymembercid[.@i] ) ) { attachrid $@partymemberaid[.@i]; if ( strcharinfo(3) == strnpcinfo(4) ) .@online++; } } attachrid .@origin; if ( $@partymembercount != .register_min ) { mes "[MvP Ladder Warper]"; mes "You have to form a party with exactly "+ .register_min +" members to play."; close; } else if ( .@online != .register_min ) { mes "[MvP Ladder Warper]"; mes "Your party must have "+ .register_min +" members online on map '"+ strnpcinfo(4) +"'."; close; } else if ( .register_cost && Zeny < .register_cost ) { mes "[MvP Ladder Warper]"; mes "You don't have enough zeny. Please come back when you do."; close; } else if ( .party_id ) { mes "[MvP Ladder Warper]"; mes "I'm sorry, but a party is currently playing the game. Please standby until the party is finished."; mes "Thank you."; close; } Zeny -= .register_cost; announce "The party ["+ strcharinfo(1) +"] has started the MvP ladder game.", bc_all; set .party_id, getcharid(1); set .@time_enter, gettimetick(2); for ( .@i = 0; .@i < $@partymembercount; .@i++ ) { if ( isloggedin( $@partymemberaid[.@i], $@partymembercid[.@i] ) ) { attachrid $@partymemberaid[.@i]; if ( strcharinfo(3) == strnpcinfo(4) ) { announce "You have "+ .timeout +" minutes to complete "+ .totalround +" rounds.", bc_self; .@name$[.@c] = strcharinfo(0); .@c++; } } } cleanmap .eventmap$; warpparty .eventmap$, 0,0, .party_id, strnpcinfo(4); donpcevent strnpcinfo(0)+"::OnMvpDead"; sleep .timeout * 60000; if ( .round == .totalround +1 ) { getpartymember .party_id, 1; getpartymember .party_id, 2; mapannounce .eventmap$, "Congratulations... You were able to defeat all the MVPs!", bc_map; for ( .@i = 0; .@i < $@partymembercount; .@i++ ) { if ( isloggedin( $@partymemberaid[.@i], $@partymembercid[.@i] ) ) { attachrid $@partymemberaid[.@i]; if ( strcharinfo(3) == .eventmap$ ) getitem .finish_item_id, .finish_item_amount; } } set .@timeused, gettimetick(2) - .@time_enter; if ( .bonus_item_amount && .@timeused < .bonus_time * 60 ) { mapannounce .eventmap$, "You are rewarded a bonus item for completing the ladder within "+ .bonus_time +" minutes.", bc_map; for ( .@i = 0; .@i < $@partymembercount; .@i++ ) { if ( isloggedin( $@partymemberaid[.@i], $@partymembercid[.@i] ) ) { attachrid $@partymemberaid[.@i]; if ( strcharinfo(3) == .eventmap$ ) getitem .bonus_item_id, .bonus_item_amount; } } } if ( !$mvpladdderparty_time || .@timeused < $mvpladdderparty_time ) { mapannounce .eventmap$, "And you broke the record! [ "+( .@timeused / 60 )+" min "+( .@timeused % 60 )+" sec ]", bc_map; set $mvpladdderparty_time, .@timeused; set $mvpladdderparty_name$, getpartyname( .party_id ); copyarray $mvpladderparty_member$, .@name$, .register_min; } else mapannounce .eventmap$, "Time used [ "+( .@timeused / 60 )+" min "+( .@timeused % 60 )+" sec ]", bc_map; sleep 10000; announce "The party ["+ getpartyname( .party_id ) +"] has finished the MvP ladder game!", bc_all; } else announce "The party ["+ getpartyname( .party_id ) +"] has failed to finish the MvP ladder game.", bc_all; mapwarp .questmap$, .map$, .x, .y; killmonsterall .eventmap$; .party_id = .round = 0; end; OnMvpDead: .round++; if ( .round >= 2 && .round != .totalround +1 && .round_item_amount ) { for ( .@i = 0; .@i < $@partymembercount; .@i++ ) { if ( isloggedin( $@partymemberaid[.@i], $@partymembercid[.@i] ) ) { attachrid $@partymemberaid[.@i]; if ( strcharinfo(3) == .eventmap$ ) getitem .round_item_id, .round_item_amount; } } } if ( .round == .totalround +1 ) { awake strnpcinfo(0); end; } else if ( .round == .totalround ) mapannounce .eventmap$, "The final Round will begin in "+ .delay +" seconds...", bc_map; else mapannounce .eventmap$, "Starting round "+ .round +" in "+ .delay +" seconds...", bc_map; sleep .delay * 1000; if ( .mvpid[.round] == 1646 ) // pick random Bio3 MVP .mvpid[.round] = rand(1646,1651); monster .eventmap$,0,0, "--ja--", .mvpid[.round], 1, strnpcinfo(0)+"::OnMvpDead"; mapannounce .eventmap$, getmonsterinfo( .mvpid[.round], MOB_NAME ) +" has spawned!", bc_map|bc_blue; end; OnPCLogoutEvent: if ( hp > 0 ) .@less_one = 1; else end; OnPCDieEvent: if ( strcharinfo(3) != .eventmap$ || !getcharid(1) ) end; if ( getcharid(1) != .party_id ) end; getpartymember .party_id, 1; getpartymember .party_id, 2; for ( .@i = 0; .@i < $@partymembercount; .@i++ ) { if ( isloggedin( $@partymemberaid[.@i], $@partymembercid[.@i] ) ) { attachrid $@partymemberaid[.@i]; if ( strcharinfo(3) == .eventmap$ && hp > 0 ) .@alive++; } } if ( .@less_one ) .@alive--; if ( !.@alive ) { mapannounce .eventmap$, "Party wiped!", bc_map; sleep 10000; awake strnpcinfo(0); } end; OnInit: // Configurations ----------------------------------------------------- // Time limit (in minutes) // When time runs out, all players inside the room will be kicked out. // Do NOT set this to zero! set .timeout, 60; // entrance fee (in Zeny) set .register_cost, 100000; // exact amount of party members needed to start the game set .register_min, 1; // id of each mvp. you can add more setarray .mvpid[1], 1086,// Golden Thief Bug 64 1115,// Eddga 65 1150;// Moonlight Flower 67 //1159,// Phreeoni 69 //1112,// Drake 70 //1583,// Tao Gunka 70 //1492,// Incantation Samurai 71 //1046,// Doppelgangger 72 //1252,// Garm 73 //1418,// Evil Snake Lord 73 //1059,// Mistress 74 //1190,// Orc Lord 74 //1087,// Orc Hero 77 //1251,// Knight of Windstorm 77 //1038,// Osiris 78 //1658,// Ygnizem 79 //1272,// Dark Lord 80 //1871,// Fallen Bishop 80 //1039,// Baphomet 81 //1147,// Maya 81 //1785,// Atroce 82 //1389,// Dracula 85 //1630,// Bacsojin 85 //1885,// Gorynych 85 //1623,// RSX 0806 86 //1511,// Amon Ra 88 //1688,// Lady Tanee 89 //1768,// Gloom Under Night 89 //1719,// Datale 90 //1734,// Kiel D-01 90 //1157,// Pharaoh 93 //1373,// Lord of Death 94 //1312,// Turtle General 97 //1779,// Ktullanux 98 //1874,// Beelzebub 98 //1646,// Bio3 placeholder 99 //1708,// Thanatos 99 //1751,// Valkyrie Randgris 99 //1832;// Ifrit 99 // number of rounds (default: 39) set .totalround, getarraysize(.mvpid) -1; // item reward for completing each round set .round_item_id, 512; set .round_item_amount, 1; // item reward for completing the entire ladder set .finish_item_id, 501; set .finish_item_amount, 10; // bonus reward if ladder completed within a certain time (in minutes) set .bonus_time, 45; // if completed within 45 minutes, this reward is given set .bonus_item_id, 504; set .bonus_item_amount, 10; // time delay between rounds, in seconds (default: 3) set .delay, 5; // minimum GM level to reset the best record set .gmlvlreset, 99; // event map set .eventmap$, "guild_vs2-2"; // mapflag configuration setarray .@mapflag, mf_nowarp, mf_nowarpto, mf_nosave, mf_nomemo, mf_noteleport, // mf_nopenalty, // disable exp loss mf_noreturn, // mf_nobranch, // mf_nomobloot, // disable monster drop loots, // mf_nomvploot, // 2 of these mf_partylock; // Config Ends -------------------------------------------------------------- mapannounce .eventmap$, "An administrator has refreshed the server. Please re-register. We apologize for the inconvenience.", bc_map; getmapxy .map$, .x, .y, UNITTYPE_NPC; mapwarp .eventmap$, .map$, .x, .y; killmonsterall .eventmap$; .@size = getarraysize( .@mapflag ); for ( .@i = 0; .@i < .@size; .@i++ ) setmapflag .eventmap$, .@mapflag[.@i]; end; }
and here is what i've done
frommapwarp .questmap$, .map$, .x, .y;
to
mapwarp .questmap$, alberta, 150, 150;
nothing happen... or should i remove getmapxy at the bottom of the script?
nvm...solved already....cant use that variable...must use the map name.....can close this topic
-
did you diff your client for "Load Custom Quest Lua/Lub files" ?
try rediff you client and unable that function...im not really sure about this...
but if u use that recommended diff from nemo, its should be fine...for other function you can research on it later on... -
firstly sorry if i post in wrong section...cause did not really know should be in which part....
need help somebody to explain to me about this...annie battleground without waiting room....i have read from this thread https://rathena.org/board/topic/72571-battleground-system-without-waitingroom/i have add the source modification and recompile...and have tried the sample script too and works fine..is it the sample script worked for official bg (flavius/kvm/tiera)
my question is, how to implant this feature on custom bg script....for example for this script from annie..can i remove that waiting room since i have update the source mod??- script bg_pvp_round#control -1,{ OnInit: .minplayer2start = 1; // minimum player to start .winningscore = 2; // how many rounds to win .eventlasting = 20*60; // event last 20 minutes or the system abort itself setarray .rewardwin, 501,10, 502,5, 503,3; // reward to winning team setarray .rewardlose, 501,5, 502,3, 503,1; // reward to losing team .rewardwinsize = getarraysize( .rewardwin ); .rewardlosesize = getarraysize( .rewardlose ); .teamname$[1] = "Red"; .teamname$[2] = "Blue"; end; OnStart: if ( getwaitingroomstate( 0, .rednpcname$ ) < .minplayer2start || getwaitingroomstate( 0, .bluenpcname$ ) < .minplayer2start ) { announce "[ Battle Ground DeathMatch System ] Blue Team : "+ getwaitingroomstate( 0, .bluenpcname$ ) + "/" + .minplayer2start + ". Red Team : "+ getwaitingroomstate( 0, .rednpcname$ ) + "/" + .minplayer2start,bc_all,0x00CED1; end; } announce "[ Battle Ground DeathMatch System ] Battleground has started", bc_all, 0x00CED1; .red = waitingroom2bg( "bat_b01", 61,150, strnpcinfo(0)+"::OnRedQuit", strnpcinfo(0)+"::OnRedDead", .rednpcname$ ); copyarray .team1aid, $@arenamembers, $@arenamembersnum; .team1count = .minplayer2start; .blue = waitingroom2bg( "bat_b01", 327,150, strnpcinfo(0)+"::OnBlueQuit", strnpcinfo(0)+"::OnBlueDead", .bluenpcname$ ); copyarray .team2aid, $@arenamembers, $@arenamembersnum; .team2count = .minplayer2start; .life[1] = .life[2] = .minplayer2start; delwaitingroom .rednpcname$; delwaitingroom .bluenpcname$; disablenpc .rednpcname$; disablenpc .bluenpcname$; callsub L_setwall; bg_updatescore "bat_b01", 0, 0; bg_warp .red, "bat_b01", 61,150; bg_warp .blue, "bat_b01", 327,150; sleep 4000 * !.skip; mapannounce "bat_b01", "Kill all opponent team to gain 1 point, score "+ .winningscore +" points to win !", 0; sleep 2000 * !.skip; while (1) { for ( .@i = 5; .@i > 0; .@i-- ) { mapannounce "bat_b01", "["+ .@i +"]", 0; sleep 1000 * !.skip; } if ( .score[1] == .winningscore -1 && .score[2] == .winningscore -1 ) mapannounce "bat_b01", "Final Round start!", 0; else mapannounce "bat_b01", "Round "+ .round++ +" start!", 0; callsub L_delwall; .life[1] = .team1count; .life[2] = .team2count; sleep .eventlasting * 1000 * !.skip; bg_updatescore "bat_b01", .score[1], .score[2]; if ( .score[1] == .winningscore || .score[2] == .winningscore || !.winside ) break; sleep 5000 * !.skip; callsub L_make_player_move; bg_warp .red, "bat_b01", 61,150; bg_warp .blue, "bat_b01", 327,150; callsub L_setwall; sleep 1000 * !.skip; .winside = 0; } if ( .winside ) { mapannounce "bat_b01", " "+ .teamname$[ .winside ] +" side wins !", bc_all; callsub L_reward, .winside, .rewardwin, .rewardwinsize; callsub L_reward, ( .winside == 1 )? 2:1, .rewardlose, .rewardlosesize; } else mapannounce "bat_b01", "Time Out. Aborting the match.", bc_all; sleep 5000; callsub L_make_player_move; bg_warp .red, "prontera", 155,182; bg_warp .blue, "prontera", 158,182; bg_destroy .red; bg_destroy .blue; callsub L_delwall; deletearray .team1aid; deletearray .team2aid; .round = .winside = .skip = .score[1] = .score[2] = .team1count = .team2count = .life[1] = .life[2] = 0; enablenpc .rednpcname$; enablenpc .bluenpcname$; donpcevent .rednpcname$ +"::OnStart"; donpcevent .bluenpcname$ +"::OnStart"; end; L_reward: .@size = getarraysize( getd(".team"+ getarg(0) +"aid") ); for ( .@i = 0; .@i < .@size; .@i++ ) for ( .@j = 0; .@j < getarg(2); .@j += 2 ) getitem getelementofarray( getarg(1), .@j ), getelementofarray( getarg(1), .@j +1 ), getd(".team"+ getarg(0) +"aid["+ .@i +"]" ); return; L_setwall: setwall "bat_b01", 58,153, 6, 6, 0, "bg_pvp_round_red_1"; setwall "bat_b01", 64,153, 6, 4, 0, "bg_pvp_round_red_2"; setwall "bat_b01", 64,147, 6, 2, 0, "bg_pvp_round_red_3"; setwall "bat_b01", 58,147, 6, 0, 0, "bg_pvp_round_red_4"; setwall "bat_b01", 324,153, 6, 6, 0, "bg_pvp_round_blue_1"; setwall "bat_b01", 330,153, 6, 4, 0, "bg_pvp_round_blue_2"; setwall "bat_b01", 330,147, 6, 2, 0, "bg_pvp_round_blue_3"; setwall "bat_b01", 324,147, 6, 0, 0, "bg_pvp_round_blue_4"; return; L_delwall: delwall "bg_pvp_round_red_1"; delwall "bg_pvp_round_red_2"; delwall "bg_pvp_round_red_3"; delwall "bg_pvp_round_red_4"; delwall "bg_pvp_round_blue_1"; delwall "bg_pvp_round_blue_2"; delwall "bg_pvp_round_blue_3"; delwall "bg_pvp_round_blue_4"; return; L_make_player_move: for ( .@j = 1; .@j <= 2; .@j++ ) { for ( .@i = 0; .@i < getd(".team"+ .@j +"count"); .@i++ ) { attachrid getd(".team"+ .@j +"aid["+ .@i +"]" ); setoption Option_Xmas | Option_Invisible, 0; pcblockmove getcharid(3), 0; } } return; OnRedQuit: callsub L_quit, 1, 2; OnBlueQuit: callsub L_quit, 2, 1; L_quit: percentheal 100, 100; setoption Option_Xmas | Option_Invisible, 0; pcblockmove getcharid(3), 0; while ( getd( ".team"+ getarg(0) +"aid["+ .@i +"]" ) != getcharid(3) && .@i < getd(".team"+ getarg(0) +"count") ) .@i++; deletearray getd( ".team"+ getarg(0) +"aid["+ .@i +"]" ), 1; setd ".team"+ getarg(0) +"count", getd(".team"+ getarg(0) +"count") -1; .life[ getarg(0) ]--; if ( !getd(".team"+ getarg(0) +"count") ) { mapannounce "bat_b01", "All "+ .teamname$[ getarg(0) ] +" team members has Quit !", bc_all, 0xff3333; // purposely use different color .score[ getarg(1) ] = .winningscore; .winside = getarg(1); .skip = 1; awake strnpcinfo(0); } else if ( !.life[ getarg(0) ] ) { .winside = getarg(1); mapannounce "bat_b01", " "+ .teamname$[ getarg(1) ] +" team has defeated the opponent team, "+ .teamname$[ getarg(1) ] +" team score a point !", bc_all; .score[ getarg(1) ]++; awake strnpcinfo(0); } end; OnRedDead: callsub L_dead, 1, 2; OnBlueDead: callsub L_dead, 2, 1; L_dead: .life[ getarg(0) ]--; if ( !.life[ getarg(0) ] ) { .winside = getarg(1); mapannounce "bat_b01", " "+ .teamname$[ getarg(1) ] +" team has defeated the opponent team, "+ .teamname$[ getarg(1) ] +" team score a point !", bc_all; .score[ getarg(1) ]++; awake strnpcinfo(0); } sleep2 1250; percentheal 100,100; if ( getcharid(4) ) { setoption Option_Xmas | Option_Invisible, 1; pcblockmove getcharid(3), 1; } end; } prontera,155,182,5 script Red side#bg_pvp_r 100,{ end; OnInit: sleep 1; set getvariableofnpc( .rednpcname$, "bg_pvp_round#control" ), strnpcinfo(0); OnStart: waitingroom "Red side", getvariableofnpc( .minplayer2start, "bg_pvp_round#control" ) +1, "bg_pvp_round#control::OnStart", 1; end; } prontera,158,182,5 script Blue side#bg_pvp_r 100,{ end; OnInit: sleep 1; set getvariableofnpc( .bluenpcname$, "bg_pvp_round#control" ), strnpcinfo(0); OnStart: waitingroom "Blue side", getvariableofnpc( .minplayer2start, "bg_pvp_round#control" ) +1, "bg_pvp_round#control::OnStart", 1; end; } bat_b01 mapflag battleground 2 bat_b01 mapflag nosave SavePoint bat_b01 mapflag nowarp bat_b01 mapflag nowarpto bat_b01 mapflag noteleport bat_b01 mapflag nomemo bat_b01 mapflag nopenalty bat_b01 mapflag nobranch bat_b01 mapflag noicewall
-
help pls
i can enter char select u can create char but then i enter its happen
lol i think from this moment your step is already correct...did u have any error in console at this step??...
if not then you get back to your step....dont mess up with all those configuration....
just go to rathena/src/config/core.h and find this
/// Comment to disable the official packet obfuscation support. /// When enabled, make sure there is value for 'packet_keys' of used packet version or /// defined 'packet_keys_use' in db/[import/]packet_db.txt. /// This requires PACKETVER 2011-08-17 or newer. #define PACKET_OBFUSCATION <======= (check this)
if you define it and got rejected, try undefine it...and vice versa...if undefine got rejected, then define it...
this is depend on how you diff the client either applying "Disable encrypted packet" or not..
dont forget to recompile...everytime you edit src file, recompile is a must!!..
for more info can check on this thread https://rathena.org/board/topic/101092-packet-obfuscation-support/?p=281321
-
I have Visual Studio Community (2015). The links to try to download 2010 lead to that instead so I'm not sure where to even get 2010 anymore. I was thinking this might be the issue as well but I figured it didn't matter because the newer version would probably be able to support files made for/with the older version, or so I assumed.
Also I can't even run the server because I have no executables lol, So that isn't the problem for sure.
im not sure about using higher version of visual studio...but you can check this thread as reference....here >>> https://rathena.org/board/topic/102403-visual-studio-2015/
and also, without executables client, you still can run the server lol...run server mean you have open all 3 server file (map/char/log)
-
are you using visual studio 2010?...if yes make sure to open rAthena-10.sln and dont compile while running the server...if it still fail, maybe can try chekout back new fresh rathena...
-
have try clean and rebuild solution?
-
when i change the ClassNum in iteminfo my aragexe crash (run in administrator)
accessoryid.lua
ACCESSORY_Luffy_Hat_1 = 2514,
accname.lua
[ACCESSORY_IDs.ACCESSORY_Luffy_Hat_1] = "_Luffy_Hat",
iteminfo.lub
[29539] = { unidentifiedDisplayName = "Luffy_Hat", unidentifiedResourceName = "Luffy_Hat", unidentifiedDescriptionName = { "?Implant?par logiciel Mehat ?", "Class: ^777777Costume^000000", "Defense: ^7777770^000000", "Weight: ^777777100^000000", "Required Level: ^7777771^000000", "Jobs: ^777777All^000000", },identifiedDisplayName = "Luffy_Hat", identifiedResourceName = "Luffy_Hat", identifiedDescriptionName = { "?Implant?par logiciel Mehat ?", "Class: ^777777Costume^000000", "Location: ^777777Haut^000000", "Defense: ^7777772^000000", "Weight: ^7777771^000000", "Required Level: ^7777771^000000", "Jobs: ^777777All^000000", }, slotCount = 2, ClassNum = 2514, },
did you diff to "read lua before lub"?...
and also check this....are you sure this is correct?
accessoryid.lua
ACCESSORY_Luffy_Hat_1 = 2514,
accname.lua
[ACCESSORY_IDs.ACCESSORY_Luffy_Hat_1] = "_Luffy_Hat",
"Luffy_Hat_1"?
-
What I mean is #1 (Failed to get thor file) occurs while it's patching the files (Path is right and everything).
#2 occurs AFTER it's done patching, or once it's "Saving the resources". If that makes sense.
So I asked if rebuilding the grf/file would solve both of those problems, but i'll try rebuilding it again.
ya maybe can solve both...post the result later...im wondering about this too...
-
this just happened to me yesterday...u try check until which file did the patcher stop patching...rebuild back the file and upload in the patch list...this happen because the grf/gpf/rar in your patching file is crash/corrupted
Would this solve both of the errors or just one?
what do you meant by solve both??..i dont really get it...
1. Failed to get thor file. The file starts to patch and stops halfway then gives that error message.
from this i could say that your patcher is running right??..its just stop halfway and give error runtime 203??!!...is it??..correct me if im wrong...
if yes, then as i said...either one of your patching file is corrupted/crashed....or also can happen when you miss located the path...but in your case, nothing wrong with path folder since you can get patching file...so definitely got problem with your grf file....if the grf file corrupted/crashed, the patcher cant repack and will give runtime error...all you need is rebuild back your grf file...
-
Thank You SO MUCHHHHHHH!!!!!!!!!!!!
not a big problem...please click the green button to vote the post up...thx
- 1
-
i try again and server not run..
maybe someone can help:
i think you get wrong setup for rathena...here the guide https://rathena.org/wiki/Connecting
try this
go rathena/conf/char_athena.conf
// Server Communication username and password. userid: s1 <====== change to your username that you use during setup mysql..i guess you are using ragnarok passwd: p1 <====== change to your password that you use during setup mysql..i guess you are using ragnarok
do the same thing in rathena/conf/map_athena.conf
now open rathena/conf/inter_athena.conf
change all the user/pass "root" into ragnarok (if you setup user/pass is ragnarok..if not then use the user/pass u use in creating mysql)
u have to make sure all the setup here is same with you mysql database..after done this use visual studio 2012 or newer to recompile your data..
-
use notepad and find this word " qshopb "....replace all of it with " shop " ....if you want to duplicate more npc with this script, u need to replace the name of the function....here i give the you the edited script
mosk_in,30,248,2 script Shane The White 446,{ function Add; function Chk; function Slot; function A_An; if(.Shops$ != "") set .@i,1; else { set .@menu$,""; for(set .@i,1; .@i<=getarraysize(.Shops$); set .@i,.@i+1) set .@menu$, .@menu$+.Shops$[.@i]+":"; set .@i, select(.@menu$); } dispbottom "Select one item at a time."; callshop "shop"+.@i,1; npcshopattach "shop"+.@i; end; function Add { if (getitemname(getarg(1))=="null") { debugmes "Quest reward #"+getarg(1)+" invalid (skipped)."; return; } for(set .@n,5; .@n<127; set .@n,.@n+2) { if (!getarg(.@n,0)) break; if (getitemname(getarg(.@n))=="null") { debugmes "Quest requirement #"+getarg(.@n)+" invalid (skipped)."; return; } } for(set .@i,2; .@i<.@n; set .@i,.@i+1) set getd(".q_"+getarg(1)+"["+(.@i-2)+"]"), getarg(.@i); npcshopadditem "shop"+getarg(0),getarg(1),((.ShowZeny)?getarg(3):0); sleep 1; return; } function Chk { if (getarg(0)<getarg(1)) { set @qe0,1; return "^FF0000"; } else return "^00FF00"; } function Slot { set .@s$,getitemname(getarg(0)); switch(.ShowSlot){ case 1: if (!getitemslots(getarg(0))) return .@s$; case 2: if (getiteminfo(getarg(0),11)>0) return .@s$+" ["+getitemslots(getarg(0))+"]"; default: return .@s$; } } function A_An { setarray .@A$[0],"a","e","i","o","u"; set .@B$, "_"+getarg(0); for(set .@i,0; .@i<5; set .@i,.@i+1) if (compare(.@B$,"_"+.@A$[.@i])) return "an "+getarg(0); return "a "+getarg(0); } OnBuyItem: set .@q[0],@bought_nameid; copyarray .@q[1],getd(".q_"+@bought_nameid+"[0]"),getarraysize(getd(".q_"+@bought_nameid+"[0]")); if (!.@q[1]) { message strcharinfo(0),"An error has occurred."; end; } mes "[Quest Shop]"; mes "Reward: ^0055FF"+((.@q[1]>1)?.@q[1]+"x ":"")+Slot(.@q[0])+"^000000"; mes "Requirements:"; if (.@q[2]) mes " > "+Chk(Zeny,.@q[2])+.@q[2]+" Zeny^000000"; if (.@q[3]) mes " > "+Chk(getd(.Points$[0]),.@q[3])+.@q[3]+" "+.Points$[1]+" ("+getd(.Points$[0])+"/"+.@q[3]+")^000000"; if (.@q[4]) for(set .@i,4; .@i<getarraysize(.@q); set .@i,.@i+2) mes " > "+Chk(countitem(.@q[.@i]),.@q[.@i+1])+((.DisplayID)?"{"+.@q[.@i]+"} ":"")+Slot(.@q[.@i])+" ("+countitem(.@q[.@i])+"/"+.@q[.@i+1]+")^000000"; next; set @qe1, getiteminfo(.@q[0],5); set @qe2, getiteminfo(.@q[0],11); addtimer 1000, strnpcinfo(1)+"::OnEnd"; while(1){ switch(select(" ~ Purchase ^0055FF"+getitemname(.@q[0])+"^000000:"+((((@qe1&1) || (@qe1&256) || (@qe1&512)) && @qe2>0 && !@qe6)?" ~ Preview...":"")+": ~ ^777777Cancel^000000")) { case 1: if (@qe0) { mes "[Quest Shop]"; mes "You're missing one or more quest requirements."; close; } if (!checkweight(.@q[0],.@q[1])) { mes "[Quest Shop]"; mes "^FF0000You need "+(((.@q[1]*getiteminfo(.@q[0],6))+Weight-MaxWeight)/10)+" additional weight capacity to complete this trade.^000000"; close; } if (.@q[2]) set Zeny, Zeny-.@q[2]; if (.@q[3]) setd .Points$[0], getd(.Points$[0])-.@q[3]; if (.@q[4]) for(set .@i,4; .@i<getarraysize(.@q); set .@i,.@i+2) delitem .@q[.@i],.@q[.@i+1]; getitem .@q[0],.@q[1]; if (.Announce) announce strcharinfo(0)+" has created "+A_An(getitemname(.@q[0]))+"!",0; specialeffect2 699; close; case 2: set @qe3, getlook(3); set @qe4, getlook(4); set @qe5, getlook(5); if (@qe1&1) atcommand "@changelook 3 "+@qe2; if (@qe1&256) atcommand "@changelook 1 "+@qe2; if (@qe1&512) atcommand "@changelook 2 "+@qe2; set @qe6,1; break; case 3: close; } } OnEnd: if (@qe6) { atcommand "@changelook 3 "+@qe3; atcommand "@changelook 1 "+@qe4; atcommand "@changelook 2 "+@qe5; } for(set .@i,0; .@i<7; set .@i,.@i+1) setd "@qe"+.@i,0; end; OnInit: // --------------------- Config --------------------- // Custom points, if needed: "<variable>","<name to display>" setarray .Points$[0],"#CASHPOINTS","Cash Points"; set .Announce,1; // Announce quest completion? (1: yes / 0: no) set .ShowSlot,1; // Show item slots? (2: all equipment / 1: if slots > 0 / 0: never) set .DisplayID,1; // Show item IDs? (1: yes / 0: no) set .ShowZeny,0; // Show Zeny cost, if any? (1: yes / 0: no) // Shop categories, if needed: "<Shop 1>","<Shop 2>"{,...}; // Duplicate dummy data for any additional shops (bottom of script). // If no categories, use the second line instead (remove //). setarray .Shops$[1],"~^682FCBWhite Valkyrie Set^000000"; // set .Shops$,"n/a"; // Add(<shop number>,<reward ID>,<reward amount>,<Zeny cost>,<point cost>, // <required item ID>,<required item amount>{,...}); // Shop number corresponds with order above (default is 1). // Note: Do NOT use a reward item more than once! //set Add(1,403,1,300000000,0,2357,1,7513,5,7450,3,7754,3,7566,3,969,500,20080,2000); Add(1,409,1,300000000,0,2524,1,7513,5,7450,3,7754,3,7566,3,969,500,20080,2000); Add(1,415,1,300000000,0,2115,1,7513,5,7450,3,7754,3,7566,3,969,500,20080,2000); Add(1,421,1,300000000,0,2421,1,7513,5,7450,3,7754,3,7566,3,969,500,20080,2000); // -------------------------------------------------- for(set .@i,1; .@i<=getarraysize(.Shops$); set .@i,.@i+1) npcshopdelitem "shop"+.@i,909; end; } // -------- Dummy data (duplicate as needed) -------- - shop shop1 -1,909:-1 - shop shop2 -1,909:-1 - shop shop3 -1,909:-1 - shop shop4 -1,909:-1 - shop shop5 -1,909:-1 - shop shop6 -1,909:-1 - shop shop7 -1,909:-1
- 1
-
That firt time,i make this sprite!I think something wrong in this Sprite!
Please,Who know where i wrong?Show me!
(Sorry...my bad english)
1@jtb,313,357,6 script Seed Of Live02 2019,{
mes "[^0000FFKẻ dẫn lối đến Thị trấn Cheetah^000000]";switch(QuestWarp) {default:mes "Nhót...chi...chi...chi...You want to go Cheetah Town..That not easy!";mes "Get item for me...i will warp you there!";mes "30 Bitter Herb";mes "25 Cold Medicine";mes "15 Four Leaf Clover ";mes "20 Brown Root ";next;menu "Chợ Tổng Hợp",Poring,"I will try! ",Poporing,"So hard with me! ",Poring:if (countitem(621) >= 30 && countitem(12257) >= 25 && countitem(706) >= 15 && countitem(7188) >= 20) goto enough;noTicket;mes "What up,human?Do you have all i need";next;switch(select("There!Warp me right now","Sorry,I can't")) {case 1:goto yesTicket;close;case 2:goto noTicket;close;noTicket:mes "[Casino Guard]";mes "Gruuuu...Get out the way";close;yesTicket:mes "Good...very good!that all i need!Human,i warp you there right now!";delitem 621,30;delitem 23368,25;delitem 706,15;delitem 7188,20;warp "c_tower3_",223,8;close;Poporing:if (countitem(5353) < 1) goto enough;mes "[^0000FFKẻ dẫn lối đến Thị trấn Cheetah^000000]";mes "Vậy thì đi chỗ khác chơi nhé!";close;}im not really sure is this what you want but can you can give it a try....
1@jtb,313,357,6 script Seed Of Live02 2019,{ mes "[^0000FFKẻ dẫn lối đến Thị trấn Cheetah^000000]"; mes "Nhót...chi...chi...chi...You want to go Cheetah Town..That not easy!"; mes "Get item for me...i will warp you there!"; mes "30 Bitter Herb"; mes "25 Cold Medicine"; mes "15 Four Leaf Clover "; mes "20 Brown Root "; next; menu "Chợ Tổng Hợp",Pass,"I will try!",Poring,"So hard with me!",Poporing; Pass: if (countitem(5353) < 1) goto noticket; else{ mes "[^0000FFKẻ dẫn lối đến Thị trấn Cheetah^000000]"; mes "Vậy thì đi chỗ khác chơi nhé!"; warp "c_tower3_",223,8; close; } Poring: mes "[^0000FFKẻ dẫn lối đến Thị trấn Cheetah^000000]"; mes "What up,human?Do you have all i need"; next; menu "There!Warp me right now",yesticket,"Sorry,I can't",noticket; yesticket: if(countitem(621) < 30 || countitem(12257) < 25 || countitem(706) < 15 || countitem(7188) < 20) goto notenough; mes "[^0000FFKẻ dẫn lối đến Thị trấn Cheetah^000000]"; mes "Good...very good!that all i need!Human,i warp you there right now!"; delitem 621,30; delitem 23368,25; delitem 706,15; delitem 7188,20; warp "c_tower3_",223,8; close; notenough: mes "[^0000FFKẻ dẫn lối đến Thị trấn Cheetah^000000]"; mes "Sorry.."; mes "You dont have enough item"; mes "Please comeback when you have collect all of it"; close; noticket: mes "[^0000FFKẻ dẫn lối đến Thị trấn Cheetah^000000]"; mes "Gruuuu...Get out the way"; close; Poporing: mes "[^0000FFKẻ dẫn lối đến Thị trấn Cheetah^000000]"; mes "Please comeback when you are ready"; close; }
- 1
-
lol...sprite or script?
-
1. Failed to get thor file.
The file starts to patch and stops halfway then gives that error message.
Everything is correct (main.ini, plist)
2. Runtime 203
Before #1 started to occur this message would appear after trying to patch and would give me the patch file but corrupted. I don't understand what this means.
I am using the latest version of the patcher.
Help?
this just happened to me yesterday...u try check until which file did the patcher stop patching...rebuild back the file and upload in the patch list...this happen because the grf/gpf/rar in your patching file is crash/corrupted
-
u can get the guide on making offline server here....i think its almost complete guide
https://rathena.org/board/topic/104452-tutorial-how-to-create-ragnarok-offline-2015-client/
for the mora quest and etc, its actually on renewal server...just define your server as renewal in rathena/src/config/renewal.h
/// game renewal server mode /// (disable by commenting the line) /// /// leave this line to enable renewal specific support such as renewal formulas #define RENEWAL
help this script
in Scripting Support
Posted
ohh you are using command in your server...sry i think disable nowarp in mapflag only works with butterfly wing only....u can bind the atcommand for player in that map...try study this post
https://rathena.org/board/topic/103793-disable-a-specific-atcommand-in-a-map/