Jump to content

manabeast

Members
  • Posts

    835
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by manabeast

  1. it's another taste of ark.... thanks for sharing ^^
  2. i like chocobo dungeon. is chocobo sprites exist?
  3. Drop1ID: 607 Drop1per: 100 this was stat in rathena custom mobs guide =). Jowei@ something like that hehe.. Ainna @ now i get it. mean 100% =1000 not 100. i think rathena guide need edit. because there mention he should edit that 100 to 10000= 100% or Example: berry 10% drop rate x100=1000. something like this... i think i have to edit my mob all drop rate hehe. because i use 100 = 100% drop rate.
  4. this custom map look nice .. dunno in game how it's look like, but if want download required coin. i dunno how to get. but it's ok still can view the image haha.... http://orspr.com/read.php?tid=1604 i also found out those sprites are nice.. who are brathena member ? can help me download and send to me? xD! http://forum.brathena.org/topic/2754-mvp-leviata/ http://forum.brathena.org/topic/2753-mvp-avatar-da-lua/ http://forum.brathena.org/topic/2749-demons-demonios-dragonette-notivaro/ http://forum.brathena.org/topic/2770-mob-spearfish-by-dreamro/ http://forum.brathena.org/topic/4715-mapa-bosque-celestial-by-williangf/ http://forum.brathena.org/topic/2774-mvp-bebe-flor-do-luar-moonlight-flower-baby/
  5. can i ask? if server are sql but in //Use SQL item_db and mob_db for the map server use_sql_db: no can use?
  6. can i ask? i sew there are two difference drop rate which i need believe? http://ratemyserver...._db&mob_id=1352 Treasure Chest (TREASURE_BOX29) Mob-ID#1352 607 Yggdrasil berry drop rate 25% in mob_db rate are set like this 607,2500 in Rathena mob db. is use 100?? now have two rate. Ra guide 100=100, Mob_db Rate 10000=100% http://rathena.org/wiki/Custom_Mobs
  7. } end; OnNPCKillEvent: } like this? in mapserv [Error]: script_rid2sd: fatal error ! player not attached !
  8. //===== Athena Script ============================================= //= Natural weather //===== By ======================================================== //= Information //===== Current Version =========================================== //= 1.7.1 //===== Compatible With =========================================== //= Any eAthena version with Setmapflag //===== Description =============================================== //= 1.8 - Add feature, manual change weather by whisper //= > Usage > [To NPC:weatherchanger] <mapname>#<weather(In number)> //= 1.7.1 - Optimize the script a bit //= 1.7 - More user friendly for now //= 1.6.1 - Display map real name //= 1.6 - Final Version,fixed day and night [Lupus] //= 1.5 - Fix OnTimer and more random timer //= 1.4 - Fix bug //= 1.3 - Change timer to 1 hour [Kelvin], added map, add night of winter season //= 1.2 - Remove rain effect, Einbroch map, fix some bugs //= 1.1.1 - Remove PVP and GVG map [Myzter] //= 1.1 - Added auto Day and Night System //= 1.0 - Beta release,Working for city only //===== Comments ================================================== //= Correct me if got any bugs. //= Special thanks to Ruru,Brainstorm,Myzter and others who help me on. //================================================================= - script weatherchanger -1,{ OnTimer2700000: // If enable third array,please set value to 3 set .@rv,2; // Enable or disable weather report (Default: 1) set .@report,1; // If you want to set the random timer range (Default: min: 0 , max: 900000) set .@min,0; set .@max,900000; setarray .@gat0$, "prontera","alberta","aldebaran","izlude","morocc","payon","geffen","comodo","yuno","amatsu","gonryun","umbala","niflheim","louyang","jawaii","ayothaya", "einbech","lighthalzen","hugel","rachel","veins","nameless_i","nameless_n","alb2trea","glast_01","izlu2dun","pay_arche","moc_ruins","tur_dun01", "gef_fild00","gef_fild01","gef_fild02","gef_fild03","gef_fild04","gef_fild05","gef_fild06","gef_fild07","gef_fild08","gef_fild09","gef_fild10","gef_fild11", "gef_fild12","gef_fild13","gef_fild14","mjolnir_01","mjolnir_02","mjolnir_03","mjolnir_04","mjolnir_05","mjolnir_06","mjolnir_07","mjolnir_08","mjolnir_09", "mjolnir_10","mjolnir_11","mjolnir_12","moc_fild01","moc_fild02","moc_fild03","moc_fild04","moc_fild05","moc_fild06","moc_fild07","moc_fild08","moc_fild09", "moc_fild10","moc_fild11","moc_fild12","moc_fild13","moc_fild14","moc_fild15","moc_fild16","moc_fild17","moc_fild18","moc_fild19","pay_fild01","pay_fild02", "pay_fild03","pay_fild04","pay_fild05","pay_fild06","pay_fild07","pay_fild08","pay_fild09","pay_fild10","pay_fild11","prt_fild00","prt_fild01","prt_fild02", "prt_fild03","prt_fild04","prt_fild05","prt_fild06","prt_fild07","prt_fild08","prt_fild09","prt_fild10","prt_fild11"; setarray .@mapname0$, "Prontera","Alberta","Aldebaran","Izlude","Morocc","Payon","Geffen","Comodo","Yuno","Amatsu","Gonryun","Wootan Tribe's Village, Umbala","Niflheim","Louyang","Jawaii","Ayothaya", "Einbech","Lighthalzen","Hugel","Rachel","Veins","The Nameless Island","The Nameless Island","Alberta Island","Glast Heim","Byalan Island","Archer Village","Morocc Ruins","Turtle Island", "Geffen Field","Geffen Field","Geffen Field","Geffen Field","Geffen Field","Geffen Field","Geffen Field","Geffen Field","Geffen Field","Geffen Field","Geffen Field","Geffen Field", "Geffen Field","Geffen Field","Geffen Field","Mt.Mjolnir","Mt.Mjolnir","Mt.Mjolnir","Mt.Mjolnir","Mt.Mjolnir","Mt.Mjolnir","Mt.Mjolnir","Mt.Mjolnir","Mt.Mjolnir", "Mt.Mjolnir","Mt.Mjolnir","Mt.Mjolnir","Sograt Desert","Sograt Desert","Sograt Desert","Sograt Desert","Sograt Desert","Sograt Desert","Sograt Desert","Sograt Desert","Sograt Desert", "Sograt Desert","Sograt Desert","Sograt Desert","Sograt Desert","Sograt Desert","Sograt Desert","Sograt Desert","Sograt Desert","Sograt Desert","Sograt Desert","Payon Forest","Payon Forest", "Payon Forest","Payon Forest","Payon Forest","Payon Forest","Payon Forest","Payon Forest","Payon Forest","Payon Forest","Payon Forest","Prontera Field","Prontera Field","Prontera Field", "Prontera Field","Prontera Field","Prontera Field","Prontera Field","Prontera Field","Prontera Field","Prontera Field","Prontera Field","Prontera Field"; setarray .@gat1$, "prt_maze01","prt_maze02","prt_maze03","prt_monk","cmd_fild01","cmd_fild02","cmd_fild03","cmd_fild04","cmd_fild05","cmd_fild06","cmd_fild07","cmd_fild08", "cmd_fild09","yuno_fild01","yuno_fild02","yuno_fild03","yuno_fild04","yuno_fild05","yuno_fild07","yuno_fild08","yuno_fild09","yuno_fild11","yuno_fild12", "yuno_fild06","yuno_fild10","ama_fild01","gon_fild01","lou_fild01","nif_fild01","nif_fild02","ayo_fild01","ayo_fild02","um_fild01","um_fild02","um_fild03", "um_fild04","new_zone01","new_zone03","ein_fild06","ein_fild07","ein_fild08","ein_fild09","ein_fild10","ein_fild03","ein_fild04","lhz_fild02","lhz_fild03", "lhz_fild01","odin_tem01","odin_tem02","odin_tem03","ein_fild01","ein_fild02","ein_fild05","hu_fild07","hu_fild05","hu_fild04","hu_fild01","hu_fild02", "hu_fild03","hu_fild06","ra_fild01","ra_fild02","ra_fild03","ra_fild04","ra_fild05","ra_fild06","ra_fild07","ra_fild08","ra_fild09","ra_fild10","ra_fild11", "ra_fild12","ra_fild13","ve_fild01","ve_fild02","ve_fild03","ve_fild04","ve_fild05","ve_fild06","ve_fild07"; setarray .@mapname1$, "Labyrinth Forest F1","Labyrinth Forest F2","Labyrinth Forest F3","St. Capitolina Abbey","Papuchicha Forest","Kokomo Beach","Zenhai Marsh","Kokomo Beach","Border of Papuchica Forest","Fortress Saint Darmain (West)","Beacon Island, Pharos","Fortress Saint Darmain (East)", "Fortress Saint Darmain (South)","Border Posts","Kiel Hyre's Cottage","El Mes Plateau","El Mes Plateau","El Mes Plateau","El Mes Gorge (Valley of Abyss)","Kiel Hyre's Academy","Schwarzwald Guards Camp","Yuno Field","Border Checkpoint", "El Mes Plateau","Yuno Field","Amatsu Field","Gonryun Field","Louyang Field","Skellington, a Solitary Village in Niflheim","Valley of Gyoll","Ayothaya Field","Ayothaya Field","Luluka Forest","Hoomga Forest","Kalala Swamp", "Hoomga Jungle","Training Ground","Training Ground","Einbroch Field","Einbroch Field","Einbroch Field","Einbroch Field","Einbroch Field","Einbroch Field","Einbroch Field","Lighthalzen Field (Grim Reaper's Valley)","Lighthalzen Field", "Lighthalzen Field","Odin Shirine F1","Odin Shirine F2","Odin Shirine F3","Einbroch Field","Einbroch Field","Einbroch Field","Hugel Field","The Abyss Lakes","Hugel Field","Thanatos Tower","Hugel Field", "Hugel Field","Hugel Field","Audumra Grass Land","Oz Gorge","Ida Plane","Audumra Grass Land","Audumra Grass Land","Fortu Luna","Oz Gorge","Ida Plane","Audumra Grass Land","Oz Gorge","Ida Plane", "Ida Plane","Beach of Tears","Veins Field","Veins Field","Veins Field","Veins Field","Veins Field","Veins Field","Veins Field"; // Add your map here! // setarray .@gat2$,"gat"; // Add your map name here!Must be same position as map above! // setarray .@mapname2$,"Map Name"; // to prevent weather conflict setarray .allweather,16,17,18,19,20,23,24,25; // Monthly Check if(gettime(6)>=3 && gettime(6)<=5) goto L_Spring; else if(gettime(6)>=6 && gettime(6)<=8) goto L_Summer; else if(gettime(6)>=9 && gettime(6)<=11) goto L_Autumn; else goto L_Winter; L_Spring: if(gettime(3)>=7 && gettime(3)<19) { setarray .@weather,0,17,23; } else { setarray .@weather,0,17,23,25; } goto L_end; L_Summer: if(gettime(3)>=7 && gettime(3)<19) { setarray .@weather,0,18,23; } else { setarray .@weather,0,18,23,25; } goto L_end; L_Autumn: if(gettime(3)>=7 && gettime(3)<19) { setarray .@weather,0,19,23; } else { setarray .@weather,0,19,23,25; } goto L_end; L_Winter: if(gettime(3)>=7 && gettime(3)<19) { setarray .@weather,0,16; } else { setarray .@weather,0,16,23; } L_end: set .@size,rand(.@rv); set .@int,rand(getarraysize(getd(".@gat"+.@size+"$"))); set .@gat$,getd(".@gat"+.@size+"$["+.@int+"]"); set .@display$,getd(".@mapname"+.@size+"$["+.@int+"]"); // To remove all the weather from the map for (set .@x,0; .@x < getarraysize(.allweather); set .@x, .@x + 1) { removemapflag .@gat$,.allweather[.@x]; } set .@weather,.@weather[rand(getarraysize(.@weather))]; if (.@report == 1) { switch(.@weather) { case 0: announce "Weather Report : Currently "+.@display$+" is clear weather",0,0xFF9B00; break; case 16: announce "Weather Report : Currently "+.@display$+" is snowing",0,0xC8C8FF; break; case 17: announce "Weather Report : Currently "+.@display$+" is fogging",0,0x8080C0; break; case 18: announce "Weather Report : Currently "+.@display$+" is droping ^FF80C0sakura flower",0,0xFF9B00; break; case 19: announce "Weather Report : Currently "+.@display$+" is droping leaves",0,0x00FF80; break; case 23: announce "Weather Report : Currently "+.@display$+" is cloudly",0,0xC0C0C0; break; case 24: announce "Weather Report : Currently "+.@display$+" appeared small cloud",0,0xC0C0C0; break; case 25: announce "Weather Report : Currently "+.@display$+" is having a firework",0,0xFF0000; break; } // Apply the weather if(.@weather) setmapflag .@gat$,.@weather; } Stopnpctimer; Initnpctimer; set .@again,rand(.@min,.@max); setnpctimer .@again; end; OnWhisperGlobal: if (getgmlevel() < 98) end; //Set GM level here set .@tempmu,getmapusers(@whispervar0$); if (.@tempmu != -1) goto L_dcheck1; dispbottom "Map is not existed!"; end; L_dcheck1: set .@tempweather,@whispervar1$; for (set .@x,0; .@x < getarraysize(.allweather); set .@x, .@x + 1) { if(.@tempweather == .allweather[.@x]) goto L_dcheck2; } dispbottom "Weather is not exist in the weather list!"; end; L_dcheck2: for (set .@x,0; .@x < getarraysize(.allweather); set .@x, .@x + 1) { removemapflag .@gat$,.allweather[.@x]; } setmapflag @whispervar0$,@whispervar1$; dispbottom "Weather has been change for "+ @whispervar0$ + " map."; end; OnInit: // Enable or disable Day and Night function (Default: 0) set .@dn,1; donpcevent "weatherchanger::OnTimer2700000"; If(!.@dn) disablenpc "DayNight"; end; } //Please disable/set 0 for day_duration & night_duration in misc.conf when you use this - script DayNight -1,{ OnHour07: day; end; OnHour19: night; end; OnInit: if(gettime(3)>=7 && gettime(3)<19) day; else night; end; } anyone using this? i no understand how to use? this weather system is random or static?? cannot be static??? i want this natural script run 7am~7pm change weather. (night already set from 7pm~7am)
  9. i need a party npc that help ppl search team for party. the player need create himself a team only can talk to this npc. NPC 1 mesg: Welcome to Party Waiting Room. mesg: how can i serve you? Menu: Create a Party Waiting Room. Waiting Room Exit. [Create a Party Waiting Room] mesg: Please key in word you want to be display on Waiting Room. player can Key in what name want to be display in waiting room [player key: Thanatos Instance Party] waiting until ppl join.. after enough close this waiting room. begin to play =) [Waiting Room] mesg: Please Select the room you would like to join. -this npc will display total how many ppl create waiting room -player can select and join they team. team leader can reject or kick if he feel player noob. example for 3 player create: thanatos instance party. leveling 80 party moscovia quest party -after select leader will pop out say player want join your team. leader just click yes or no like invite people join party. -why need this npc? because i will duplicate and put in every town. for ppl who dun have party booking system in his server use. bump
  10. //http://code.google.com/p/ctscripts/ - script OnDieG5 -1,{ OnInit: set $killing,0; //PK Mode after last title (1 = On / 0 = Off) setarray .mapaspvp$[0],"lakeside01","poring_c02"; //Your PvP Maps setarray $titles$[0],"","{Killer}","{Attacker}","{Destroyer}","{Professional}","{Rampage}","{God of War}"; setarray .ammount[0],0,5,10,15,20,30,40,50; OnPCKillEvent: getmapxy(@mapa$,@x,@y,0); for(set @c,0; @c < getarraysize(.@mapaspvp$); set @c,@c+1) { if(@mapa$ == .@mapaspvp$[@c] && killedrid != getcharid(0)) { set killer,killer+1; for(set @d,0; @d < getarraysize(.ammount); set @d,@d+1) { if(killer == .ammount[@d]) { set title,@d; if(title != getarraysize($titles$)) dispbottom "You unlocked the title: "+$titles$[title]; if(title == getarraysize($titles$) && $killing == 1) dispbottom "You unlocked the last title: "+$titles$[title]+" and now you are in PK mode"; } } } } end; OnPCDieEvent: getmapxy(@mapa$,@x,@y,0); for(set @c,0; @c < getarraysize(.@mapaspvp$); set @c,@c+1) if(@mapa$ == .@mapaspvp$[@c]) { if(killer > 0) set killer,killer -1; } end; } - script TitleG5 -1,{ OnPCLoginEvent: atcommand "@fakename "+$titles$[title]+strcharinfo(0); if(title == getarraysize($titles$) && killing == 1) { atcommand "@killable"; atcommand "@killer"; } end; } why have those debug? i just change the title only @@?
  11. //BattleGround Exit. bat_b05,9,290,5[Tab]script[Tab]Exit[Tab] 653,{ callfunc "F_ClearGarbage"; //Clear outdated, unused variables mes "[battleground Manager]"; mes "Make sure the Event is finish only Exit"; mes "Do you want to leave?"; case 1: warp "prontera",44,208; break; } break; } end; } how to make exit npc? well. i think i lack alot thing
  12. thanks ,may i know which line to add? //--- Questboard 1.3.4 -------------------------------------------// //----------------------------------------------------------------// // ttt 000000000 // ttt 000 000 // ttttttttt rrrrrrrrr 000 000 nnnnnnnnn // ttt rrr 000 000 nnn nnn // ttt rrr 000 000 nnn nnn // ttt rrr 000 000 nnn nnn // ttttt rrr 000000000 nnn nnn //----------------------------------------------------------------// //--- Changelogs: ------------------------------------------------// // 1.0.0 Release // 1.1.0 Added zeny reward // 1.1.0 Minor text fixes // 1.2.0 Rewrote checkmob and killcounter // 1.2.1 Fixed "currentquest$" (was set to 0 after finished quest) // 1.3.1 Added level restriction // 1.3.2 Fixed a bug in AddCollection function // 1.3.3 Fixed a bug in AddHunting function // 1.3.4 Added Reward Item Amount //----------------------------------------------------------------// //--- Main Script ------------------------------------------------// prontera,129,215,5 script Questboard 857,{ if(c_run==1){ mes "[^FF7700Questboard^000000]"; mes "^0000FF"+getd("." + currentquest$ + "_collectionname$")+"^000000"; mes "--------------------------------"; for( set .@j, 0; .@j < getarraysize(getd("."+ currentquest$ + "_collectionitem")); set .@j,.@j+2) { mes "^FF0000"+getitemname(getd("."+currentquest$+"_collectionitem["+.@j+"]"))+" - "+countitem(getd("."+currentquest$+"_collectionitem["+.@j+"]"))+"/"+getd("."+currentquest$+"_collectionitem["+(.@j+1)+"]")+" ea.^000000"; } mes "--------------------------------"; mes "[Reward]"; mes "Item: ^0000FF"+((getd("." +currentquest$+"_collectionprize"))?getitemname(getd("." +currentquest$+"_collectionprize"))+" - "+getd("." +currentquest$+"_collectionamount")+" ea.^000000":"Nothing^000000"); mes "Zeny: ^0000FF"+getd("." +currentquest$+"_collectionzeny")+"^000000"; mes "Base EXP: ^0000FF"+getd("." +currentquest$+"_collectionexp["+0+"]")+"^000000"; mes "Job EXP: ^0000FF"+getd("." +currentquest$+"_collectionexp["+1+"]")+"^000000"; next; if(select("Finish:Abort") == 2){ mes "[^FF7700Questboard^000000]"; mes "Quest aborted."; set currentquest$, ""; set c_run, 0; close; } goto L_checkitems; } if(h_run==1) { mes "[^FF7700Questboard^000000]"; mes "^0000FF"+getd("." + currentquest$ + "_huntingname$")+"^000000"; mes "--------------------------------"; for( set .@j, 0; .@j < getarraysize(getd("."+ currentquest$ + "_huntingmob")); set .@j,.@j+2) { set .@currentmob, getd("."+currentquest$+"_huntingmob["+(.@j)+"]"); mes "^FF0000"+strmobinfo(1,getd("."+currentquest$+"_huntingmob["+.@j+"]"))+" - "+getd(currentquest$+"_"+.@currentmob+"_"+(.@j+1)+"_killcount")+"/"+getd("."+currentquest$+"_huntingmob["+(.@j+1)+"]")+" ea.^000000"; } mes "--------------------------------"; mes "[Reward]"; mes "Item: ^0000FF"+((getd("." +currentquest$+"_huntingprize"))?getitemname(getd("." +currentquest$+"_huntingprize"))+" - "+getd("." +currentquest$+"_huntingamount")+" ea.^000000":"Nothing^000000"); mes "Zeny: ^0000FF"+getd("." +currentquest$+"_huntingzeny")+"^000000"; mes "Base EXP: ^0000FF"+getd("." +currentquest$+"_huntingexp["+0+"]")+"^000000"; mes "Job EXP: ^0000FF"+getd("." +currentquest$+"_huntingexp["+1+"]")+"^000000"; next; if(select("Finish:Abort") == 2){ mes "[^FF7700Questboard^000000]"; mes "Quest aborted."; for(set .@x, 1; .@x < getarraysize(getd("."+currentquest$+"_huntingmob")); set .@x,.@x+2){ set .@currentmob, getd("."+currentquest$+"_huntingmob["+(.@x-1)+"]"); setd(currentquest$+"_"+.@currentmob+"_"+.@x+"_killcount", 0); } set currentquest$, ""; set h_run, 0; close; } goto L_checkmobs; } L_questmenu: mes "[^FF7700Questboard^000000]"; mes "Select categorie:"; next; switch(select((.collection)?"Collection Quests":"", (.hunting)?"Hunting Quests":"", "Exit")) { case 1: set .@collectmenu$, ""; for( set .@i,0; .@i < .collectionquestcount; set .@i,.@i+1) { if (.@i) set .@collectmenu$,.@collectmenu$+":"; set .@collectmenu$, .@collectmenu$ + "[" + getd("." +(.@i+1)+"_collectionmin") + " - " + getd("." +(.@i+1)+"_collectionmax") + "] " + getd("." + (.@i+1) + "_collectionname$"); } set .@selection,select(.@collectmenu$); mes "[^FF7700Questboard^000000]"; mes "^0000FF"+getd("." + .@selection + "_collectionname$")+"^000000"; mes "--------------------------------"; for( set .@j, 0; .@j < getarraysize(getd("."+ .@selection + "_collectionitem")); set .@j,.@j+2) { mes "^FF0000"+getitemname(getd("."+.@selection+"_collectionitem["+.@j+"]"))+" - "+getd("."+.@selection+"_collectionitem["+(.@j+1)+"]")+" ea.^000000"; } mes "--------------------------------"; mes "[Reward]"; mes "Item: ^0000FF"+((getd("." +.@selection+"_collectionprize"))?getitemname(getd("." +.@selection+"_collectionprize"))+" - "+getd("." +.@selection+"_collectionamount")+" ea.^000000":"Nothing^000000"); mes "Zeny: ^0000FF"+getd("." +.@selection+"_collectionzeny")+"^000000"; mes "Base EXP: ^0000FF"+getd("." +.@selection+"_collectionexp["+0+"]")+"^000000"; mes "Job EXP: ^0000FF"+getd("." +.@selection+"_collectionexp["+1+"]")+"^000000"; next; if(select("Accept:Decline") == 2){ close; } if(BaseLevel >= getd("." +.@selection+"_collectionmin") && BaseLevel <= getd("." +.@selection+"_collectionmax")) { mes "[^FF7700Questboard^000000]"; mes "Quest accepted."; set c_run, 1; set currentquest$, .@selection; close; } else { mes "[^FF7700Questboard^000000]"; mes "You don't have the required"; mes "level to do this quest."; close; } case 2: set .@huntmenu$, ""; for( set .@i,0; .@i < .huntingquestcount; set .@i,.@i+1) { if (.@i) set .@huntmenu$,.@huntmenu$+":"; set .@huntmenu$, .@huntmenu$ + "[" + getd("." +(.@i+1)+"_huntingmin") + " - " + getd("." +(.@i+1)+"_huntingmax") + "] " + getd("." + (.@i+1) + "_huntingname$"); } set .@selection,select(.@huntmenu$); mes "[^FF7700Questboard^000000]"; mes "^0000FF"+getd("." + .@selection + "_huntingname$")+"^000000"; mes "--------------------------------"; for( set .@j, 0; .@j < getarraysize(getd("."+ .@selection + "_huntingmob")); set .@j,.@j+2) { mes "^FF0000"+strmobinfo(1,getd("."+.@selection+"_huntingmob["+.@j+"]"))+" - "+getd("."+.@selection+"_huntingmob["+(.@j+1)+"]")+" ea.^000000"; } mes "--------------------------------"; mes "[Reward]"; mes "Item: ^0000FF"+((getd("." +.@selection+"_huntingprize"))?getitemname(getd("." +.@selection+"_huntingprize"))+" - "+getd("." +.@selection+"_huntingamount")+" ea.^000000":"Nothing^000000"); mes "Zeny: ^0000FF"+getd("." +.@selection+"_huntingzeny")+"^000000"; mes "Base EXP: ^0000FF"+getd("." +.@selection+"_huntingexp["+0+"]")+"^000000"; mes "Job EXP: ^0000FF"+getd("." +.@selection+"_huntingexp["+1+"]")+"^000000"; next; if(select("Accept:Decline") == 2){ close; } if(BaseLevel >= getd("." +.@selection+"_huntingmin") && BaseLevel <= getd("." +.@selection+"_huntingmax")) { mes "[^FF7700Questboard^000000]"; mes "Quest accepted."; set h_run, 1; set currentquest$, .@selection; close; } else { mes "[^FF7700Questboard^000000]"; mes "You don't have the required"; mes "level to do this quest."; close; } case 3: close; } L_checkitems: for( set .@k,0; .@k < getarraysize(getd("."+currentquest$+"_collectionitem")); set .@k,.@k+2) { if(countitem(getd("."+currentquest$+"_collectionitem["+.@k+"]"))>=getd("."+currentquest$+"_collectionitem["+(.@k+1)+"]")){ set .@checkitem,.@checkitem+2; } } if(.@checkitem<getarraysize(getd("."+currentquest$+"_collectionitem"))){ mes "[^FF7700Questboard^000000]"; mes "You don't have everything."; close; } for( set .@delcount,0; .@delcount < getarraysize(getd("."+currentquest$+"_collectionitem")); set .@delcount,.@delcount+2) { delitem getd("."+currentquest$+"_collectionitem["+.@delcount+"]"),getd("."+currentquest$+"_collectionitem["+(.@delcount+1)+"]"); } mes "[^FF7700Questboard^000000]"; mes "Congratulation! Here is your Reward."; if(getd("." +currentquest$+"_collectionprize")!=0) getitem(getd("." +currentquest$+"_collectionprize"),getd("." +currentquest$+"_collectionamount")); set Zeny,Zeny+getd("." +currentquest$+"_collectionzeny"); getexp getd("." +currentquest$+"_collectionexp["+0+"]"),getd("." +currentquest$+"_collectionexp["+1+"]"); set currentquest$, ""; set c_run, 0; close; L_checkmobs: set .@goal, (getarraysize(getd("."+currentquest$+"_huntingmob"))/2); for(set .@i, 1; .@i < getarraysize(getd("."+currentquest$+"_huntingmob")); set .@i,.@i+2){ set .@currentmob, getd("."+currentquest$+"_huntingmob["+(.@i-1)+"]"); if(getd(currentquest$+"_"+.@currentmob+"_"+.@i+"_killcount")==getd("."+currentquest$+"_huntingmob["+.@i+"]")){ set .@checkmonster, .@checkmonster+1; if(.@checkmonster==.@goal){ goto L_checkmobs2; } continue; } goto L_checkmobs2; } L_checkmobs2: if(.@checkmonster<.@goal){ mes "[^FF7700Questboard^000000]"; mes "You didn't kill everything."; close; } mes "[^FF7700Questboard^000000]"; mes "Congratulation! Here is your Reward."; for(set .@x, 1; .@x < getarraysize(getd("."+currentquest$+"_huntingmob")); set .@x,.@x+2){ set .@currentmob, getd("."+currentquest$+"_huntingmob["+(.@x-1)+"]"); setd(currentquest$+"_"+.@currentmob+"_"+.@x+"_killcount", 0); } if(getd("." +currentquest$+"_huntingprize")!=0) getitem(getd("." +currentquest$+"_huntingprize"),getd("." +currentquest$+"_huntingamount")); set Zeny, Zeny+getd("." +currentquest$+"_huntingzeny"); getexp getd("." +currentquest$+"_huntingexp["+0+"]"),getd("." +currentquest$+"_huntingexp["+1+"]"); set currentquest$, ""; set h_run, 0; close; OnNPCKillEvent: if(h_run!=1) end; for(set .@i, 1; .@i < getarraysize(getd("."+currentquest$+"_huntingmob")); set .@i,.@i+2){ if(killedrid==getd("."+currentquest$+"_huntingmob["+(.@i-1)+"]")){ set .@currentmob, getd("."+currentquest$+"_huntingmob["+(.@i-1)+"]"); if(getd(currentquest$+"_"+.@currentmob+"_"+.@i+"_killcount")>=getd("."+currentquest$+"_huntingmob["+.@i+"]")) end; setd(currentquest$+"_"+.@currentmob+"_"+.@i+"_killcount", getd(currentquest$+"_"+.@currentmob+"_"+.@i+"_killcount")+1); dispbottom getd("."+currentquest$+"_huntingname$")+": ["+strmobinfo(1,.@currentmob)+"] ("+ getd(currentquest$+"_"+.@currentmob+"_"+.@i+"_killcount")+"/"+getd("."+currentquest$+"_huntingmob["+.@i+"]")+")"; end; } continue; } end; OnInit: function AddCollection; function AddHunting; //Activate/Deactive quest categories here set .collection, 1; set .hunting, 1; //Checks if quests are loaded (prevents out of index) if(.questsloaded==1) end; set .questsloaded, 1; //Add Collection Quests here //AddCollection("<Quest Name>",<Min Lvl>,<Max Lvl>,<Reward|Item ID>,<Reward|Item Amount>,<Zeny Reward>,<Base EXP>,<Job EXP>,<Item ID>,<Item Amount>,...); //Add Hunting Quests here //AddHunting("<Quest Name>",<Min Lvl>,<Max Lvl>,<Reward|Item ID>,<Reward|Item Amount>,<Zeny Reward>,<Base EXP>,<Job EXP>,<Monster ID>,<Monster Amount>,...); end; function AddCollection { set .collectionquestcount,.collectionquestcount+1; setd ("." +.collectionquestcount+"_collectionname$", getarg(0)); setd ("." +.collectionquestcount+"_collectionmin", getarg(1)); setd ("." +.collectionquestcount+"_collectionmax", getarg(2)); setd ("." +.collectionquestcount+"_collectionprize", getarg(3)); setd ("." +.collectionquestcount+"_collectionamount", getarg(4)); setd ("." +.collectionquestcount+"_collectionzeny", getarg(5)); set .@argcount, 6; set .@size, getarraysize(getd("."+ .collectionquestcount + "_collectionexp")); setd ("." +.collectionquestcount+"_collectionexp["+.@size+"]",getarg(.@argcount)); setd ("." +.collectionquestcount+"_collectionexp["+(.@size+1)+"]",getarg(.@argcount+1)); set .@argcount, .@argcount+2; while(getarg(.@argcount,-1)!=-1 && getarg(.@argcount+1,-1)!=-1) { set .@size, getarraysize(getd("."+ .collectionquestcount + "_collectionitem")); setd ("."+.collectionquestcount+"_collectionitem["+.@size+"]",getarg(.@argcount)); setd ("."+.collectionquestcount+"_collectionitem["+(.@size+1)+"]",getarg(.@argcount+1)); set .@argcount,.@argcount+2; } return; } function AddHunting { set .huntingquestcount,.huntingquestcount+1; setd ("." +.huntingquestcount+"_huntingname$", getarg(0)); setd ("." +.huntingquestcount+"_huntingmin", getarg(1)); setd ("." +.huntingquestcount+"_huntingmax", getarg(2)); setd ("." +.huntingquestcount+"_huntingprize", getarg(3)); setd ("." +.huntingquestcount+"_huntingamount", getarg(4)); setd ("." +.huntingquestcount+"_huntingzeny", getarg(5)); set .@size, getarraysize(getd("."+ .huntingquestcount + "_huntingexp")); set .@argcount, 6; setd ("." +.huntingquestcount+"_huntingexp["+.@size+"]",getarg(.@argcount)); setd ("." +.huntingquestcount+"_huntingexp["+(.@size+1)+"]",getarg(.@argcount+1)); set .@argcount, .@argcount+2; while(getarg(.@argcount,-1)!=-1 && getarg(.@argcount+1,-1)!=-1) { set .@size, getarraysize(getd("."+ .huntingquestcount + "_huntingmob")); setd ("."+.huntingquestcount+"_huntingmob["+.@size+"]",getarg(.@argcount)); setd ("."+.huntingquestcount+"_huntingmob["+(.@size+1)+"]",getarg(.@argcount+1)); set .@argcount, .@argcount+2; } return; } }
  13. may i ask? how to add annoucer in tron script? http://rathena.org/b...questboard-134/ i want use this as making god item. the annouce: need add at where? i know is this, but i dunno add at which line @@? announce "This will be shown to everyone at all in yellow.",0;
  14. 2. here is the tool in number 6. because grf is to prevent ppl steal / edit your file. example if you use data folder. player just open idnum then edit his main goucher atk+999, def+999 and post in your forum show off haha. but still can be extract out if the player know how to extract grf file out and build back. this only can prevent noob only hehe. http://ratemyserver.net/index.php?page=download_tool 3. to use client side connect. you need edit your clientinfo.xml for you. if you have set static ip in your local area connection and char and map .conf. you will need to put in address to your lans ip (example 192......) for you friend/player. if you have set char and map .conf to your land and wan. you will need to put in address to your wan ip (example: no-ip)
  15. the user who post this one never appear in rathena anymore =.=".
  16. totally agree to all ppl here. dun say something awful to a person who release something free. you should be greatful to someone who share his thing. @jingcleovil not bad, and look clean and feel so easy to use. just lack some cool design =).
  17. here, http://rathena.org/board/forum/99-client-releases/ you need to have your own data & KRO, data is for adding custom map / mob / weapon those. rathena.org/board/topic/54190-release-basic-rathena-client/ http://rathena.org/board/topic/65120-ragnarok-sakray-renewal-20120605/ after finish your own data, you will need to grf your data to Yourdata.grf(like zip up your folder) so your clientside will look like this. -data (some file required for client.exe to open, if don have those file the client can't be open) -Yourdata.grf -Yourclient.exe -DATA.ini Note: Your = Your Ragnarok name, like Super RO = SRdata.grf/SuperRo.exe you also need a client that can let you connect to your server. that one required diff (sorry i also dunno how to diff. ) if you want custom item you can learn from here, http://rathena.org/wiki/Custom_Items if you want custom mobs you can learn from here, http://rathena.org/wiki/Custom_Mobs if you want to know how to set and connect to your server, here http://rathena.org/wiki/Clientinfo if you no change in conf folder. default ,127.0.0.1 in clientinfo.xml will need to set <address>127.0.0.1</address> if have change in conf. the clientinfo.xml will need set <address>Lan IP</address> (example for lan ip: your pc static ip: 192.168.1.100 or something else) for player connect <address>Wan IP</address> (example for wan ip: no-ip: yourragnarok.ragnarok.net) to let player connect must port forward. if you no port forward no ppl can connect.
  18. the one you show for tutorial in my post. i have read and no understand. some part tutorial missing. but for this.. is wow... teach every single part. thanks..... i will learn from this =)
  19. you welcome.. wallpaper not really nice. because i scretch as that person say. about brighnese those i not yet learn. sorry can't help. here is the website that can get cooltext free =) http://cooltext.com/
  20. http://rathena.org/b...ding-wallpaper/ just open photoshop edite to your like. you need this tool to cut 12 pieaces https://rathena.org/board/topic/66277-tool-login-screen-slicer
×
×
  • Create New...