-
Posts
485 -
Joined
-
Last visited
-
Days Won
27
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Everything posted by Haruka Mayumi
-
Post the following too accname.lub accessoryid.lub Item_db line for Kuroyukihime
-
Im using the same Client Version. and there's no problem. What i think the problem is. You add a custom wing as Headgear, then you add its location to garment. Meaning you add it on accname/accessoryid.lub and then you wear it to garment. To Add Garments Follow This Guide.
-
Adding GM sprite in clientinfo.xml problem. [Sprite Issue]
Haruka Mayumi replied to Rizz's question in Client-side Support
Just add it's account id inside <aid></aid> and put <admin>ACCOUNT ID</admin> <?xml version="1.0" encoding="euc-kr" ?> <clientinfo> <desc>Ragnarok Client Information</desc> <servicetype>korea</servicetype> <servertype>primary</servertype> <connection> <aid> <admin>2000000</admin> <admin>2000001</admin> <admin>2000002</admin> <admin>2000003</admin> <admin>2000004</admin> <admin>2000005</admin> <admin>2000006</admin> <admin>2000007</admin> <admin>2000008</admin> <admin>2000009</admin> </aid> <display>Ragnarok</display> <address>127.0.0.0</address> <port>6900</port> <version>55</version> <langtype>0</langtype> <registrationweb>www.ragnarok.com</registrationweb> <loading> <image>loading00.jpg</image> <image>loading01.jpg</image> <image>loading02.jpg</image> <image>loading03.jpg</image> <image>loading04.jpg</image> <image>loading05.jpg</image> <image>loading06.jpg</image> </loading> </connection> </clientinfo> -
*openmail({<char_id>}); This will open a character's Mail window on the client connected to the invoking character. mes "Close this window to open your mail inbox."; close2; openmail; end;
- 1 reply
-
- 2
-
-
SQL Problem Most likely di mo nalagay yung database for Donation Girl or probably may sql_query inside the Script which didn't run. First, Check kung may SQL file dun sa pinag downloadan mo ng script na yan.. kung wala, check mo yung script kung may sql_query. if nothing.. then it won't actually help that much, you need to create your own based on the script alone.
-
Hi, i just want to know if it's possible to reload the attendance_db without restarting the server? or is there an option wherein once the month ended, a new set of attendance rewards will be given? Thanks in advance
-
if you leave it like that. 1 player can take all the box, so others won't be able to get any prize.
-
[Showcase] Gaia - The Enchanted Village
Haruka Mayumi replied to Tio Akima's topic in Maps & 3D Modeling Showcase
Woah. i though it's another game.. just remove the ragnarok User Interface. -
Change this part.. OnDevilDead3: .mob--; if ( .mob == 25 || .mob == 5 ) announce "Devil Square : "+ .mob +" monsters remaining in the final round.", bc_map; else if ( .mob <= 0 ) { announce "Devil Square : CONGRATULATIONS. These 10 Treasure Chests are yours.", bc_map; goto OnDevil4; } end; OnDevil4: .round = 4; .mob = 10; monster "ordeal_1-1",231,250,"Treasure Chest",1324,1,strnpcinfo(0)+"::OnTreasureDead"; monster "ordeal_1-1",234,247,"Treasure Chest",1328,1,strnpcinfo(0)+"::OnTreasureDead"; monster "ordeal_1-1",237,244,"Treasure Chest",1332,1,strnpcinfo(0)+"::OnTreasureDead"; monster "ordeal_1-1",240,241,"Treasure Chest",1336,1,strnpcinfo(0)+"::OnTreasureDead"; monster "ordeal_1-1",243,238,"Treasure Chest",1340,1,strnpcinfo(0)+"::OnTreasureDead"; monster "ordeal_1-1",246,235,"Treasure Chest",1344,1,strnpcinfo(0)+"::OnTreasureDead"; monster "ordeal_1-1",249,232,"Treasure Chest",1348,1,strnpcinfo(0)+"::OnTreasureDead"; monster "ordeal_1-1",252,229,"Treasure Chest",1352,1,strnpcinfo(0)+"::OnTreasureDead"; monster "ordeal_1-1",249,241,"Treasure Chest",1356,1,strnpcinfo(0)+"::OnTreasureDead"; monster "ordeal_1-1",240,249,"Treasure Chest",1360,1,strnpcinfo(0)+"::OnTreasureDead"; end; OnTreasureDead: .mob--; announce "Devil Square : "+ strcharinfo(0) +" has opened the Treasure Chest at Devil Square.", bc_all; if ( .mob <= 0 ) goto OnStopEvent; end; into this one OnDevilDead3: .mob--; if ( .mob == 25 || .mob == 5 ) announce "Devil Square : "+ .mob +" monsters remaining in the final round.", bc_map; else if ( .mob <= 0 ) { announce "Devil Square : CONGRATULATIONS. You can open a treasure chest as a reward.", bc_map; goto OnDevil4; } end; OnDevil4: monster "ordeal_1-1",238,240,"Treasure Chest",1324,1,strnpcinfo(0)+"::OnTreasureDead"; end; OnTreasureDead: getitem 501,1; //This is the reward announce "Devil Square : "+ strcharinfo(0) +" has opened the Treasure Chest at Devil Square.", bc_all; warp "SavePoint",0,0; sleep 2000; monster "ordeal_1-1",238,240,"Treasure Chest",1324,1,strnpcinfo(0)+"::OnTreasureDead"; if(!getmapusers("ordeal_1-1")) goto OnStopEvent; end; This will give all the participants a prize whenever they hit the treasure box. Also i don't quite understand if you want 1 player to get special item.
-
PCH for rAthena - Compilation sucks
Haruka Mayumi replied to MathReaper's topic in Source Discussion
Yea, it's really a problem when compiling on low budget VM's.. somehow it takes time for me too to compile there. more than 30 seconds or 1 minute?. So having PCH is really nice. But my opinion somehow is if they made one then that's good. but if not, we just compile on VM every once in a while since we test them on our pc anyway. -
PCH for rAthena - Compilation sucks
Haruka Mayumi replied to MathReaper's topic in Source Discussion
Yeah. well, just using MSbuild on bat file helps a lot. mine is 7th gen i7 only though.. -
PCH for rAthena - Compilation sucks
Haruka Mayumi replied to MathReaper's topic in Source Discussion
First compilation takes around 20 seconds only. after that it depends. mine compile around 2-5 seconds with few src edits. but yes, PCH have a very good impact. -
Kinda liked it, so i revised it to a simple script. - script Levelupbox -1,{ OnInit: setarray .@reward[0],10,501,1,20,502,2; // Level, Item ID, Amount end; OnPCBaseLvUpEvent: if(eaclass()&EAJL_UPPER) end; for(.@i=0;.@i<getarraysize(.@reward);.@i+=3) if(BaseLevel==.@reward[.@i]){ specialeffect2 71; specialeffect2 72; specialeffect2 73; getitem .@reward[.@i+1],.@reward[.@i+2]; dispbottom "Congratulation! "+strcharinfo(0)+" reached level "+.@reward[.@i]+"!"; } end; }
-
[Error]: buildin_setr: fatal error ! player not attached!
Haruka Mayumi replied to LearningRO's question in Scripting Support
here try this. and this time i tried it and a function is missing on this script. so i used reward mode 1. //===== eAthena Script ======================================= //= Mini-jeux basique pour Rose Of Sharon //===== Par: ================================================= //= Hiero //===== Version du Script: =================================== //= 1.0 Obtimisation du code, corrections diverses //= 0.5 Ajout du monstre Bonus //= 0.4 Mis en place du système de récompence //= 0.2 Ajout d'un "Cubeception Count" //= 0.3 Ajout d'un killmonsterall //= 0.1 Commencement du script //===== Compatible Avec: ===================================== //= eAthena TxT & SQL //===== Commentaires ========================================= // //= Script automatique de l'event "Chercher le Cubeception". //= Actif toutes les deux heures à partir 00h00. prontera,163,292,3 script Cubeception Guard 627,{ //4_M_PROFESSORWORM if (getgmlevel()>=.GMLevel) { if ($@Cubeception_Actif == 0) { mes "Event status: [^FF0000OFF^000000]"; mes "Do you wanna activate it ?"; next; switch( select ("Yes:No") ) { case 1: mes .npcname$; set $@Cubeception_Actif,2; mes "Allright, let's go !"; close2; doevent "prtcub::OnGmSet"; end; case 2: mes .npcname$; mes "Farewell then."; close; } } } if ($@Cubeception_Actif == 1) { mes "The event \"Find the Cubeception\" is currently on."; mes "Do you want to be part of it ?"; next; switch (select("Yes:No:See the rules")) { case 1: mes .npcname$; mes "Perfect. Good luck !"; set $@event_cubeception_tabI,$@event_cubeception_tabI+1; set $event_cc_pig$[$@event_cubeception_tabI],strcharinfo(0); close2; $eventcubUsersAId[getarraysize($eventUsersAId)] = getcharid(3); warp "izlude_d",0,0; end; case 2: mes .npcname$; mes "Come see me again if you wanna be part of it."; mes "See you soon!"; close; case 3: mes .npcname$; mes "The principe is quite simple. Players are warped in a town full of Cubeceptions."; mes "You'll simply have to find the good one."; next; mes .npcname$; mes "Sometimes, Bonus Monsters will appears. If you kill one, a random bonus or malus will be applied !"; close; } } else { mes "The event isn't active."; next; switch (select("See the rules:Leave")) { case 1: mes .npcname$; mes "The principe is quite simple. Players are warped in a town full of Cubeceptions."; mes "You'll simply have to find the good one."; next; mes .npcname$; mes "Sometimes, Bonus Monsters will appears. If you kill one, a random bonus or malus will be applied !"; close; case 2: mes .npcname$; mes "Come see me again when the event will be on."; close; } } OnInit: set .GMLevel,60; // GM level required to access NPC. set .npcname$, "[Cubceptionnist]"; deletearray $event_cc_pig$; set $@event_cubeception_tabI,0; set .eventMap$, "izlude_d"; setarray $eventcubUsersAId[0],0; end; } - script LancementCubeception::prtcub -1,{ OnWhisperGlobal: OnClock1600: OnStartCubeception: OnGmSet: if ($@Cubeception_Actif == 1 ) { end; // Si par hasard, le Cubeception n'est pas tué lors de 1er lancement de l'event, le script ne sera pas réactivé une 2eme fois. } else { announce "The event \"Find the Cubeception\" will start in 3 minutes!",bc_all | bc_blue; announce "Please go towards to the top in the area of hand statue!.",bc_all | bc_blue; killmonsterall .eventMap$; set $@Cubeception_Actif, 1; // Event actif si la variable $@Cubeception_Actif = 1 set .monster_countCubeception, 99; //Nombre de mauvais Cubeception sur la map set .monster_eventCubeception, 1; // Nombre de bon Cubeception sur la map set .monster_bonusCubeception, 5; // Nombre de monstre Bonus sur la map //sleep 60000; announce "The event \"Find the Cubeception\" will start in 2 minutes !",bc_all | bc_blue; //sleep 60000; announce "The event \"Find the Cubeception\" will start in 1 minutes !",bc_all | bc_blue; sleep 5900; announce "The event \"Find the Cubeception\" starts!",bc_all | bc_blue; initnpctimer; monster .eventMap$,0,0,"Cubeception",rand(1395,1398),.monster_countCubeception,"prtcub::OnThisMobDeath"; monster .eventMap$,0,0,"Cubeception",rand(1395,1398),.monster_eventCubeception,"prtcub::OnThisMobDeath2"; monster .eventMap$,0,0,"Bonus",rand(1395,1398),.monster_bonusCubeception,"prtcub::OnThisMobDeath3"; setmapflag .eventMap$, 12; setmapflag .eventMap$, 0; setmapflag .eventMap$, 3; setmapflag .eventMap$, 4; setmapflag .eventMap$, 15; setmapflag .eventMap$, 1; setmapflag .eventMap$, 13; setmapflag .eventMap$, 31; initnpctimer; end; OnTimer300000: set $@Cubeception_Actif,0; killmonsterall .eventMap$; removemapflag .eventMap$, 12; removemapflag .eventMap$, 0; removemapflag .eventMap$, 3; removemapflag .eventMap$, 4; removemapflag .eventMap$, 15; removemapflag .eventMap$, 1; removemapflag .eventMap$, 13; removemapflag .eventMap$, 31; mapannounce .eventMap$,"Nobody win the event. What a shame !",bc_map | bc_blue; sleep 3000; for(set .@tmp1,1;.@tmp1<=$@event_cubeception_tabI;set .@tmp1,.@tmp1+1){ charcommand "#size "+$event_cc_pig$[.@tmp1]; sleep 500; } sleep 2000; deletearray $event_cc_pig$,$@event_cubeception_tabI+1; set $@event_cubeception_tabI,0; for (set .@i,0; .@i<getarraysize($eventcubUsersAId); set .@i,.@i+1) { attachrid($eventcubUsersAId[.@i]); atcommand("@load"); } deletearray $eventcubUsersAId[0], getarraysize($eventcubUsersAId); goto OnEventEnd; end; OnEventEnd: removemapflag .eventMap$, 12; removemapflag .eventMap$, 0; removemapflag .eventMap$, 3; removemapflag .eventMap$, 4; removemapflag .eventMap$, 15; removemapflag .eventMap$, 1; removemapflag .eventMap$, 13; removemapflag .eventMap$, 31; end; OnThisMobDeath: set .monster_countCubeception, .monster_countCubeception-1; dispbottom "I'm not the good Cubeception."; mapannounce .eventMap$,"There's still "+(.monster_countCubeception+.monster_eventCubeception)+" Cubeceptions on the map !",bc_blue|bc_map; end; OnThisMobDeath2: dispbottom "I am the good Cubeception !"; if (.rewardMode == 0) { logmes "[Cubeception] " + strcharinfo(0) + " wins the event and obtains " + .prizeAmt + " Currency Points."; callfunc ("AddPoints", getcharid(3), .prizeAmt); } else { logmes "[CachePoring] " + strcharinfo(0) + " wins the event and obtains " + .prizeAmt + " " + getitemname(rewardId) + "."; getitem .rewardId, .prizeAmt; } mapannounce .eventMap$,strcharinfo(0)+" just found the good Cubeception !",bc_map | bc_blue; killmonsterall .eventMap$; set $@Cubeception_Actif, 0; for(set .@tmp1,1;.@tmp1<=$@event_cubeception_tabI;set .@tmp1,.@tmp1+1){ charcommand "#size "+$event_cc_pig$[.@tmp1]; sleep 500; } sleep 2000; deletearray $event_cc_pig$,$@event_cubeception_tabI+1; set $@event_cubeception_tabI,0; for (set .@i,0; .@i<getarraysize($eventcubUsersAId); set .@i,.@i+1) { attachrid($eventcubUsersAId[.@i]); atcommand("@load"); } deletearray $eventcubUsersAId[0], getarraysize($eventcubUsersAId); goto OnEventEnd; end; OnThisMobDeath3: set .monster_bonusCubeception, .monster_bonusCubeception-1; if (.monster_bonusCubeception >= 1) mapannounce .eventMap$,""+strcharinfo(0)+" found a bonus monster, there's still "+.monster_bonusCubeception+" !",bc_map | bc_blue; else mapannounce .eventMap$,""+strcharinfo(0)+" found a bonus monster, there's no more !",bc_map | bc_blue; switch (rand(1,4)) { case 1: set Zeny, Zeny + 25000; dispbottom "You're lucky, you become wealhtier !"; break; case 2: dispbottom "You're lucky !"; if (.rewardMode == 0) { logmes "[Cubeception] " + strcharinfo(0) + " kills a bonus monster and obtains " + .prizeAmt + " Currency Points."; callfunc ("AddPoints", getcharid(3), .prizeAmt); } else { logmes "[CachePoring] " + strcharinfo(0) + " kills a bonus monster and obtains " + .prizeAmt + " " + getitemname(rewardId) + "."; getitem .rewardId, .prizeAmt; } break; case 3: percentheal -99, -99; specialeffect2 49,"strcharinfo(0)"; dispbottom "You're unlucky !"; break; // Malus HP/SP case 4: charcommand "#size "+strcharinfo(0)+" 1"; dispbottom "You're lucky, you're getter smaller !"; break; // } end; } OnInit: set .eventMap$, "izlude_d"; set .rewardMode, 1; set .rewardId, 675; set .prizeAmt, rand(15,50); end; } //============================================================== //= Système de sécurité //============================================================== - script mapload::cubmapload -1,{ OnPCLoginEvent: getmapxy(.@map$,.@x,.@y,0); if (.@map$ == .eventMap$) { warp "prontera",155,89; } end; } -
[Error]: buildin_setr: fatal error ! player not attached!
Haruka Mayumi replied to LearningRO's question in Scripting Support
there's a player variable that's why it is looking for a player. to fix this. just Find this string "event_cc_pig$" player variable then change it into "$event_cc_pig$" permanent global variable. if you would ask me, this script doesn't need to be permanent global variable, it should use a temporary global variable instead which is "$@" -
if it's a nameditem.. there won't be any slot on it. like if you named the item muffler[1].. the slot will be gone.
-
Cant move char, npc not loading, all packets conf are ok
Haruka Mayumi replied to RagnaDev's question in Client-side Support
its your gm group level.. you might have input an invalid gm level on your database. -
I have the same problem. i have a lot of entries on my pvpladder but it says there are no characters.
-
Thank you for doing my request. ^^
-
Euphy Hunting Missions shop points
Haruka Mayumi replied to CyberDevil's question in Scripting Support
//===== rAthena Script ======================================= //= Hunting Missions //===== By: ================================================== //= Euphy //===== Current Version: ===================================== //= 1.4 //===== Compatible With: ===================================== //= rAthena Project //===== Description: ========================================= //= Random hunting missions. //= Rewards are based on quest difficulty. //= //= NOTE: Requires SQL mob database. //===== Additional Comments: ================================= //= 1.0 Initial script. //= 1.1 Small improvements and fixes. //= 1.2 Added party support and replaced blacklists with an //= SQL query, both thanks to AnnieRuru. //= 1.3 Re-added a blacklist adapted for the SQL query. //= 1.3a Added mission reset options. //= 1.3b Function updates. //= 1.4 Check for deleted characters, thanks to AnnieRuru. //= Syntax updates and style cleaning. //============================================================ prontera,155,192,3 script Hunting Missions 10192,{ cutin "162elena_01",2; function Chk; mes "[Hunting Missions]"; mes "Hello, " + strcharinfo(0) + "!"; if (!#Mission_Delay) { next; mes "[Hunting Missions]"; mes "I can't find any records..."; mes "You must be new here!"; emotion ET_HUK; next; callsub Mission_Info; emotion ET_GO; #Mission_Delay = 1; close2; cutin "162elena_01",255; end; } mes rand(2) ? "Working hard, as always..." : "Not slacking, I hope..."; mes "Is there anything I can help"; mes "you with?"; mes " "; mes "^777777~ You've completed " + callfunc("F_InsertPlural",Mission_Total,"mission",0,"^0055FF%d^777777 %s") + ". ~^000000"; next; switch(select( ((!Mission0) ? " ~ New Mission::" : ": ~ Mission Status: ~ Abandon Mission") + ": ~ Information: ~ Mission Shop: ~ View Top Hunters: ~ ^777777Cancel^000000" )) { case 1: mes "[Hunting Missions]"; if (#Mission_Count) { mes "You've started a mission"; mes "on another character."; if (!@hm_char_del_check) { // check for deleted character query_sql("SELECT 1 FROM `char_reg_num` WHERE `key` = 'Mission0' AND `char_id` IN(SELECT `char_id` FROM `char` WHERE `account_id` = " + getcharid(3) + ")", .@i); if (!.@i) { next; mes "[Hunting Missions]"; mes "I can't seem to find any records"; mes "for that character, though..."; mes "One moment, please."; emotion ET_SCRATCH; #Mission_Count = 0; } @hm_char_del_check = 1; } close2; cutin "162elena_01",255; end; } if (#Mission_Delay > gettimetick(2) && .Delay) { mes "I'm afraid you'll have to wait " + callfunc("Time2Str",#Mission_Delay) + " before taking another mission."; close2; cutin "162elena_01",255; end; } mes "You must hunt:"; query_sql("SELECT ID FROM `" + .mob_db$ + "` WHERE left(Sprite, 4) != 'meta' AND left(Sprite, 2) != 'E_' AND ~Mode & 32 AND EXP > 0 AND MVP1id = 0 AND DropCardid > 4000 AND DropCardid < 5000 AND ID < 2000 AND instr('"+.Blacklist$+"',ID) = 0 ORDER BY rand() LIMIT " + .Quests, .@mob); for (.@i = 0; .@i < .Quests; .@i++) { setd "Mission" + .@i, .@mob[.@i]; setd "Mission" + .@i +"_", 0; } #Mission_Count = rand(.Count[0], .Count[1]); callsub Mission_Status; next; mes "[Hunting Missions]"; mes "Report back when"; mes "you've finished."; mes "Good luck!"; close2; cutin "162elena_01",255; end; case 2: mes "[Hunting Missions]"; mes "Mission status:"; callsub Mission_Status; close2; cutin "162elena_01",255; end; case 3: mes "[Hunting Missions]"; mes "Do you really want to"; mes "abandon your mission?"; if (.Reset < 0 && .Delay) mes "Your delay time will not be reset."; else if (.Reset > 0) mes "It will cost " + callfunc("F_InsertComma",.Reset) + " Zeny."; next; switch(select(" ~ Abandon...: ~ ^777777Cancel^000000")) { case 1: if (.Reset > 0) { if (Zeny < .Reset) { mes "[Hunting Missions]"; mes "You don't have enough"; mes "Zeny to drop this mission."; emotion ET_SORRY; close2; cutin "162elena_01",255; end; } Zeny -= .Reset; emotion ET_MONEY; } mes "[Hunting Missions]"; mes "Alright, I've dropped"; mes "your current mission."; specialeffect2 EF_STORMKICK4; for (.@i = 0; .@i < .Quests; .@i++) { setd "Mission"+.@i, 0; setd "Mission"+.@i+"_", 0; } #Mission_Count = 0; if (.Reset < 0 && .Delay) #Mission_Delay = gettimetick(2) + (.Delay * 3600); close2; cutin "162elena_01",255; end; case 2: mes "[Hunting Missions]"; mes "I knew you were kidding!"; mes "Keep up the good work."; emotion ET_SMILE; close2; cutin "162elena_01",255; end; } case 4: callsub Mission_Info; close2; cutin "162elena_01",255; end; case 5: mes "[Hunting Missions]"; mes "You have ^0055FF" + #Mission_Points + "^000000 Mission Points."; mes "Use them well!"; callshop "missionshop",1; end; case 6: mes "[Hunting Missions]"; mes "The top hunters are:"; query_sql("SELECT char_id AS id, (SELECT `name` FROM `char` WHERE char_id = id),`value` FROM `char_reg_num` WHERE `key` = 'Mission_Total' ORDER BY CAST(`value` AS SIGNED) DESC LIMIT 5", .@id, .@name$, .@val); for (.@i = 0; .@i < 5; .@i++) mes " [Rank " + (.@i+1) + "] " + ((.@name$[.@i] == "") ? "^777777none" : "^0055FF" + .@name$[.@i]+"^000000 : ^FF0000" + .@val[.@i] + " pt.") + "^000000"; close2; cutin "162elena_01",255; end; case 7: mes "[Hunting Missions]"; mes "Nothing? Okay..."; emotion ET_SCRATCH; close2; cutin "162elena_01",255; end; } end; Mission_Status: @f = 0; deletearray .@j[0], getarraysize(.@j); for (.@i = 0; .@i < .Quests; .@i++) { .@j[.@i] = getd("Mission" + .@i); .@j[.Quests] = .@j[.Quests] + strmobinfo(3,.@j[.@i]); .@j[.Quests+1] = .@j[.Quests+1] + (strmobinfo(6,.@j[.@i]) / (getbattleflag("base_exp_rate") / 100) * .Modifier[0]); .@j[.Quests+2] = .@j[.Quests+2] + (strmobinfo(7,.@j[.@i]) / (getbattleflag("job_exp_rate") / 100) * .Modifier[1]); mes " > "+Chk(getd("Mission"+.@i+"_"),#Mission_Count) + strmobinfo(1,.@j[.@i]) + " (" + getd("Mission"+.@i+"_") + "/" + #Mission_Count + ")^000000"; } // Reward formulas: .@Mission_Points = 3 + (.@j[.Quests] / .Quests / 6); .@Base_Exp = #Mission_Count * .@j[.Quests+1] / 5; .@Job_Exp = #Mission_Count * .@j[.Quests+2] / 5; .@Zeny = #Mission_Count * .Quests * .@j[.@i] * .Modifier[2]; next; mes "[Hunting Missions]"; mes "Mission rewards:"; mes " > Mission Points: ^0055FF" + .@Mission_Points + "^000000"; mes " > Base Experience: ^0055FF" + callfunc("F_InsertComma",.@Base_Exp) + "^000000"; mes " > Job Experience: ^0055FF" + callfunc("F_InsertComma",.@Job_Exp) + "^000000"; mes " > Zeny: ^0055FF" + callfunc("F_InsertComma",.@Zeny) + "^000000"; mes " > Special Prize: ^0055FFINFINITY Coin Pouch^000000"; if (@f) { @f = 0; return; } next; mes "[Hunting Missions]"; mes "Oh, you're done!"; mes "Good work."; mes "Here's your reward."; emotion ET_BEST; specialeffect2 EF_ANGEL; specialeffect2 EF_TRUESIGHT; #Mission_Points += .@Mission_Points; BaseExp += .@Base_Exp; JobExp += .@Job_Exp; Zeny += .@Zeny; getitem 9998,1; //INFINITY Coin Pouch for (.@i = 0; .@i < .Quests; .@i++) { setd "Mission" + .@i, 0; setd "Mission" + .@i+"_", 0; } #Mission_Count = 0; if (.Delay) #Mission_Delay = gettimetick(2) + (.Delay * 3600); Mission_Total++; if (Mission_Total == 1) query_sql("INSERT INTO `char_reg_num` (`char_id`,`key`,`index`,`value`) VALUES (" + getcharid(0) + ",'Mission_Total','0',1)"); else query_sql("UPDATE `char_reg_num` SET `value` = " + Mission_Total + " WHERE `char_id` = " + getcharid(0) + " AND `key` = 'Mission_Total'"); close2; cutin "162elena_01",255; end; Mission_Info: mes "[Hunting Missions]"; mes "If you so choose, I can assign"; mes "you a random hunting quest."; mes "Some are easier than others, but"; mes "the rewards increase with difficulty."; next; mes "[Hunting Missions]"; mes "Missions points are shared"; mes "amongst all your characters."; if (.Delay) mes "Delay time is, too."; mes "You can't take missions on"; mes "multiple characters at once."; next; mes "[Hunting Missions]"; mes "You can start a quest"; mes (.Delay ? "every " + ((.Delay == 1) ? "hour." : .Delay + " hours.") : "whenever you want."); mes "That's everything~"; return; function Chk { if (getarg(0) < getarg(1)) { @f = 1; return "^FF0000"; } else return "^00FF00"; } OnNPCKillEvent: if (!getcharid(1) || !.Party) { if (!#Mission_Count || !Mission0) end; for (.@i = 0; .@i < .Quests; .@i++) { if (strmobinfo(1,killedrid) == strmobinfo(1,getd("Mission" + .@i))) { if (getd("Mission" + .@i + "_") < #Mission_Count) { dispbottom "[Hunting Mission] Killed " + (set(getd("Mission" + .@i + "_"),getd("Mission" + .@i + "_") + 1)) + " of " + #Mission_Count + " " + strmobinfo(1,killedrid) + "."; end; } } } } else if (.Party) { .@mob = killedrid; getmapxy(.@map1$,.@x1,.@y1,UNITTYPE_PC); getpartymember getcharid(1),1; getpartymember getcharid(1),2; for (.@i = 0; .@i < $@partymembercount; .@i++) { if (isloggedin($@partymemberaid[.@i], $@partymembercid[.@i])) { set .@Mission_Count, getvar(#Mission_Count, $@partymembercid[.@i]); set .@Mission0, getvar(Mission0, $@partymembercid[.@i]); set .@HP, readparam(HP, $@partymembercid[.@i]); if (.@Mission_Count && .@Mission0 && .@HP > 0) { getmapxy(.@map2$,.@x2,.@y2,UNITTYPE_PC); if ((.@map1$ == .@map2$ || .Party == 1) && (distance(.@x1,.@y1,.@x2,.@y2) <= 30 || .Party < 3)) { for (.@j = 0; .@j < .Quests; .@j++) { .@my_mob_id = getvar( getd("Mission"+.@j),$@partymembercid[.@i] ); .@my_count = getvar( getd("Mission"+.@j+"_"), $@partymembercid[.@i] ); if (strmobinfo(1,.@mob) == strmobinfo(1,.@my_mob_id)) { if (.@my_count < .@Mission_Count) { setd "Mission"+.@j+"_", (.@my_count+1), $@partymembercid[.@i]; dispbottom "[Hunting Mission] Killed " + (.@my_count+1) + " of " + .@Mission_Count + " " + strmobinfo(1,.@mob) + ".", 0x777777, $@partymembercid[.@i]; break; } } } } } } } } end; OnInit: .Delay = 6; // Quest delay, in hours (0 to disable). .Quests = 3; // Number of subquests per mission (increases rewards). .Party = 3; // Party options: 0 (exclude party kills), 1 (include party kills), 2 (same map only), 3 (screen area only) .Reset = -1; // Reset options: -1 (abandoning mission sets delay time), 0 (no delay time), [Zeny] (cost to abandon mission, no delay time) setarray .Count[0], // Min and max monsters per subquest (increases rewards). 15,30; setarray .Modifier[0], // Multipliers for Base Exp, Job Exp, and Zeny rewards. ORIGINALE è /100 /100 60 getbattleflag("base_exp_rate")/50,getbattleflag("job_exp_rate")/50,2; .mob_db$ = // Table name of SQL mob database (checkre(0))?"mob_db_re":"mob_db"; setarray .Shop[0], // Reward items: <ID>,<point cost> (about 10~20 points per hunt). 7619,40,6225,40,12208,50,616,60,7620,60,6226,60,12264,70,6241,80,12214,100,6240,120,13610,160,16259,160,13611,240,16258,240,16395,320,16393,480,12103,500,12246,2000; .Blacklist$ = // Blacklisted mob IDs. "1038,1039,1046,1059,1062,1086,1087,1088,1089,1090,1091,1092,1093,1096,1108,1112,1115,1120,1147,1150,"+ "1157,1159,1183,1186,1190,1198,1200,1203,1204,1205,1212,1220,1221,1234,1235,1244,1245,1250,1251,1252,"+ "1259,1262,1268,1272,1283,1286,1287,1288,1289,1290,1293,1294,1296,1298,1299,1300,1301,1302,1303,1304,"+ "1305,1306,1307,1308,1309,1311,1312,1313,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,"+ "1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,"+ "1356,1357,1358,1359,1360,1361,1362,1363,1373,1388,1389,1395,1396,1397,1398,1399,1418,1447,1449,1456,"+ "1485,1486,1487,1492,1502,1515,1520,1529,1530,1542,1568,1576,1582,1583,1588,1591,1592,1593,1605,1607,"+ "1609,1610,1611,1612,1618,1623,1626,1630,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,"+ "1646,1647,1648,1649,1650,1651,1658,1674,1676,1677,1678,1679,1681,1685,1688,1689,1700,1703,1704,1705,"+ "1706,1707,1708,1709,1710,1711,1712,1719,1720,1731,1733,1734,1751,1754,1755,1756,1763,1764,1765,1766,"+ "1767,1768,1779,1783,1785,1791,1795,1796,1797,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,"+ "1810,1813,1814,1817,1825,1829,1831,1832,1833,1834,1835,1839,1840,1845,1846,1847,1848,1849,1850,1852,"+ "1853,1870,1871,1872,1873,1874,1876,1877,1879,1885,1889,1891,1894,1897,1899,1902,1903,1904,1905,1906,"+ "1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1929,"+ "1930,1931,1932,1933,1934,1935,1936,1938,1939,1940,1941,1942,1943,1944,1945,1946,1947,1951,1952,1953,"+ "1954,1956,1957,1958,1959,1960,1961,1962,1964,1965,1966,1967,1968,1969,1970,1971,1972,1973,1974,1975,"+ "1976,1977,1978,1979,1980,1981,1983,1990,1991,2001,2010,2017,2018,2019,2022,2030,2031,2039,2040,2041,"+ "2052,2057,2067,2068,2079,2080,2087,2093,2097,2102,2106,2107,2135,2138,2139,2140,2141,2142,2143,2156,"+ "2157,2161,2162,2163,2164,2165,2166,2167,2168,2169,2170,2171,2172,2173,2174,2175,2176,2177,2178,2179,"+ "2180,2181,2182,2183,2184,2185,2186,2187,2188,2189,2190,2191,2192,2193,2194,2196,2198,2202,2206,2208,"+ "2221,2222,2223,2224,2225,2226,2227,2228,2229,2230,2231,2232,2233,2234,2235,2236,2237,2238,2239,2240,2241,2242,2243,2244,2249,2251,2253,2255,2288,2317,2318,2319,2320,2321,2322,2323,2325,2326,2327,2328,2329,2332,2333,2335,2336,2337,2341,2342,2345,2346,2347,2348,2349,2350,2351,2362,2378,2408,2409,2410,2411,2413,2415,2416,2417,2419,2420,2421,2422,2423,2424,2425,2426,2427,2441,2442,2443,2444,2445,2446,2447,2448,2449,2473,2474,2475,2476,2482,2528,2529,2530,2532,2533,2534,2535,2540,2541,2542,2562,2563,2564,2603,2604,2605,2606,2607,2608,2609,2610,2611,2612,2613,2614,2615,2616,2618,2619,2620,2621,2622,2623,2624,2625,2626,2627,2628,2629,2630,2631,2632,2633,2634,2635,2636,2637,2638,2639,2640,2641,2642,2643,2644,2645,2646,2647,2648,2649,2650,2651,2652,2653,2654,2655,2656,2657,2658,2659,2660,2661,2662,2663,2664,2665,2666,2667,2668,2669,2670,2671,2672,2673,2674,2675,2676,2677,2678,2679,2680,2681,2682,2683,2684,2685,2686,2687,2688,2689,2690,2691,2692,2693,2694,2695,2696,2697,2698,2699,2700,2701,2702,2703,2704,2705,2706,2707,2708,2709,2710,2711,2712,2713,2714,2715,2716,2717,2718,2719,2720,2721,2722,2723,2724,2725,2726,2727,2728,2729,2730,2731,2732,2733,2734,2735,2736,2737,2738,2739,2740,2741,2742,2743,2744,2745,2746,2747,2748,2749,2750,2751,2752,2753,2754,2755,2756,2757,2758,2759,2760,2761,2762,2763,2764,2765,2766,2767,2768,2769,2770,2771,2772,2773,2774,2775,2776,2777,2778,2779,2780,2781,2784,2785,2786,2788,2789,2790,2791,2792,2793,2794,2795,2796,2797,2798,2799,2800,2801,2802,2803,2804,2805,2806,2807,2808,2809,2810,2811,2812,2813,2814,2815,2816,2817,2818,2819,2820,2821,2822,2823,2824,2825,2826,2827,2828,2830,2831,2832,2833,2834,2835,2836,2837,2838,2839,2840,2841,2842,2843,2844,2845,2846,2847,2849,2850,2851,2852,2853,2854,2855,2856,2857,2858,2859,2860,2861,2862,2863,2864,2865,2866,2867,2868,2869,2870,2871,2872,2873,2874,2875,2876,2877,2878,2879,2880,2881,2882,2883,2884,2885,2886,2887,2888,2889,2890,2891,2892,2893,2894,2895,2896,2897,2898,2899,2900,2901,2902,2903,2904,2905,2907,2908,2909,2910,2911,2912,2913,2920,2921,2922,2923,2942,2959,2961,2987,2988,2992,2994,2996,2998,2999,3029,3038,3039,3040,3041,3073,3074,3091,3092,3096,3097,3100,3108,3109,3122,3123,3124,3175,3176,3177,3178,3179,3180,3181,3202,3203,3254,3450,3473,3474,3475,3484,3495,3503,3504,3505,3506,3508"; end; } - pointshop missionshop -1,#Mission_Points,501:60,502:60,503:100 Try this.. for adding items. go to the bottom most part and add items at - pointshop missionshop -1,#Mission_Points,501:60,502:60,503:100,{ITEMID:ITEMPRICE} -
Euphy Hunting Missions shop points
Haruka Mayumi replied to CyberDevil's question in Scripting Support
use pointshop.. first go to case 5: and change it into like this case 5: mes "[Hunting Missions]"; mes "You have ^0055FF" + #Mission_Points + "^000000 Mission Points."; mes "Use them well!"; callshop "missionshop",1; end; then go to the bottom most of the script and add this - pointshop missionshop -1,#Mission_Points,501:60,502:60,503:100 -
When i press NPC go personal to the place of NPC
Haruka Mayumi replied to Hossam's question in Client-side Support
When you diffed your client. You probably Disabled the Walk to Delay.. or you changed your Walk to Delay to 100 Below. -
Anyone played EstlandRO?. wherein you can change your Aura from stylist.. there's a lot from it and i actually have the files.. but how do i make it like that?. wherein you can choose what aura you want to use. players will be able to see your chosen aura. is that @auraset / @aura? Note: I dunno if this is in Source Script. Sorry in advance.
-
@AnnieRuru I Tried using this script its awesome. But there was this thing. I added Kill Nidhogg Shadow as quest.. but the kill count doesn't increase. It only increase when i use @monster command. but when killing it on instance. it doesnt count