-
Posts
474 -
Joined
-
Last visited
-
Days Won
26
Community Answers
-
Haruka Mayumi's post in Favor remova o post was marked as the answer
skill.cpp
Remove SCCB_CHEM_PROTECT
case 3: // THE HIGH PRIESTESS - all buffs removed { status_change_clear_buffs(target, SCCB_BUFFS | SCCB_CHEM_PROTECT); break; } should look like this
case 3: // THE HIGH PRIESTESS - all buffs removed { status_change_clear_buffs(target, SCCB_BUFFS ); break; }
-
Haruka Mayumi's post in Spawn Monster rate depend player on map was marked as the answer
This is my way of doing this.
- script goldroom -1,{ OnGoldKilled: sleep 1500; //Respawn time 1000 = second [email protected] = getmapunits(BL_MOB,"jupe_ele"); //Mob Count [email protected] = getmapunits(BL_PC,"jupe_ele"); //Player Count for([email protected]=0;[email protected]<getarraysize(.setting);[email protected]+=2) if([email protected] >= .setting[[email protected]]) [email protected] = .setting[[email protected]+1]; if([email protected] && [email protected] <= .initial) monster "jupe_ele",0,0,"GOLD MOB",1002,1,strnpcinfo(0)+"::OnGoldKilled"; else monster "jupe_ele",0,0,"GOLD MOB",1002,([email protected]@mc)+1,strnpcinfo(0)+"::OnGoldKilled"; end; OnInit: .initial = 50; //Normal Mob Count setarray .setting[0],5,100,10,150,15,200; //Player Count, Mob Count{,PC, MC) (5 player = 100 monster, 10 Player = 150 monster.. etc..) monster "jupe_ele",0,0,"GOLD MOB",1002,.initial,strnpcinfo(0)+"::OnGoldKilled"; end; }
-
Haruka Mayumi's post in Where I can find 2018-06-21aRagexeRE? was marked as the answer
2018-06-21aRagexeRE
-
Haruka Mayumi's post in Requesting for a "Daily supply rewards" NPC script (w/ rotating waiting room,. example: Monday rewards, Tuesday rewards, Wednesday rewards and so on) was marked as the answer
prontera,155,180,5 script Daily Supply 94,{ mes "[ Daily Supplier ]"; if(#DSUPPLY==gettime(DT_YYYYMMDD)){ mes "You already received your supply today."; end; } mes "Here's your daily Supply!"; explode([email protected]$,.items$[gettime(DT_DAYOFWEEK)],"|"); for([email protected]=0;[email protected]<getarraysize([email protected]$);[email protected]+=2) getitem atoi([email protected]$[[email protected]]),atoi([email protected]$[[email protected]+1]); explode([email protected]$,.bounditems$[gettime(DT_DAYOFWEEK)],"|"); for([email protected]=0;[email protected]<getarraysize([email protected]$);[email protected]+=2) getitembound atoi([email protected]$[[email protected]]),atoi([email protected]$[[email protected]+1]),Bound_Account; set #DSUPPLY,gettime(DT_YYYYMMDD); end; OnHour00: waitingroom callsub(OnCheckDay)+" Supply",0; end; end; OnCheckDay: switch(gettime(DT_DAYOFWEEK)){ case 0: return "Sunday"; case 1: return "Monday"; case 2: return "Tuesday"; case 3: return "Wednesday"; case 4: return "Thursday"; case 5: return "Friday"; case 6: return "Saturday"; default: return "ERROR!"; break; } return; OnInit: waitingroom callsub(OnCheckDay)+" Supply",0; //You can use Copy | (Vertical Bar) to separate items // Item ID, Amount{,Item ID,Amount}... setarray .items$[0], "501|5|502|10|503|15|504|20", //Sunday "601|5|602|3", //Monday "501|1", //Tuesday "502|1", //Wednesday "503|1", //Thursday "504|1", //Friday "505|1"; //Saturday setarray .bounditems$, "501|5|502|10|503|15|504|20", //Sunday "601|5|602|3", //Monday "505|1", //Tuesday "504|1", //Wednesday "506|1", //Thursday "502|1", //Friday "501|1"; //Saturday end; } Don't Forget to press Answer and Up Vote ^_~
-
Haruka Mayumi's post in Mail script was marked as the answer
Here is the commit for the mail. when i checked your trunk you don't have the mail. your source is from 2017. the mail command script was added at july 2018.
-
Haruka Mayumi's post in CAP Aspd was marked as the answer
@BeWan He is asking for a source not script. since script will still make you attack speed max with 30,000 agi.
Solution:
status.cpp look for
status->adelay = 2 * status->amotion; } else { // Mercenary and mobs and add this above -
switch(sd->status.weapon){ case W_DAGGER: status->amotion = cap_value(amotion, 2000 - 190 * 10 , 2000); break; case W_BOOK: status->amotion = cap_value(amotion, 2000 - 180 * 10 , 2000); break; case W_STAFF: status->amotion = cap_value(amotion, 2000 - 170 * 10 , 2000); break; case W_FIST: case W_1HSWORD: case W_2HSWORD: case W_1HSPEAR: case W_2HSPEAR: case W_1HAXE: case W_2HAXE: case W_MACE: case W_2HMACE: case W_BOW: case W_KNUCKLE: case W_MUSICAL: case W_WHIP: case W_KATAR: case W_REVOLVER: case W_RIFLE: case W_GATLING: case W_SHOTGUN: case W_GRENADE: case W_HUUMA: case W_2HSTAFF: case W_DOUBLE_DD: case W_DOUBLE_SS: case W_DOUBLE_AA: case W_DOUBLE_DS: case W_DOUBLE_DA: case W_DOUBLE_SA: default: status->amotion = cap_value(amotion, battle_config.max_aspd , 2000); break; } I made it like this wherein you need to compile it everytime you want to change. but i can change it where you just need to use @reloadbattleconf to change the values.
NOTE: Right now you just need to think hard code each weapon
-
Haruka Mayumi's post in Help > Ladder Announce gets rank promoted was marked as the answer
-Please do use "Code TAG" or Attach the script file..
Add this at line 338: should look like this
+ query_sql("select name from pvpladder order by kills desc limit 10",[email protected]$); + for(.z=0;[email protected]<getarraysize([email protected]$);[email protected]++){ + if([email protected]$[[email protected]][email protected]$[[email protected]]){ + announce ((Sex)? "Mr. ":"Ms. ")+strcharinfo(0)+" has achieved rank "+([email protected]+1)+" in PvP Ladder after Killing "+rid2name(killedrid)+"!~",bc_all; + query_sql("select name from pvpladder order by kills desc limit 10", [email protected]$); + break; + } + } end; OnStreakReset: then Add this at OnInit: Line 34.
OnInit: + query_sql("select name from pvpladder order by kills desc limit 10", [email protected]$); Up Vote and Answer if this helps.
EDIT 1: You have 2 OnInit, so i added the Line number.
-
Haruka Mayumi's post in How to fix cursor? was marked as the answer
You are probably using outdated cursors.act and cursors.spr
cursor.rar
-
Haruka Mayumi's post in Q - Job Check for Script was marked as the answer
if( Class == 0 ) mes "Hi"; else if( Class == 4001 ) mes "Hello";
-
Haruka Mayumi's post in npc that exchanges multiple items for an item was marked as the answer
Something like this?. just refine it on your own. its a rush work.
PS. i also think that Euphy Quest Shop will do the trick
prontera,155,179,3 script YUMI 94,{ for([email protected]=0;[email protected]<getarraysize(.Exchange);[email protected]+=4){ mes ([email protected])+". "+.Exchange[[email protected]+1]+"x "+getitemname(.Exchange[[email protected]])+" = "+.Exchange[[email protected]+3]+"x "+getitemname(.Exchange[[email protected]+2]); set [email protected]$,[email protected]$+getitemname(.Exchange[[email protected]])+":"; } set [email protected],select([email protected]$)-1; next; if(countitem(.Exchange[[email protected]*4])<.Exchange[[email protected]*4+1]){ mes "not enough material"; end; } mes "exchange done"; delitem .Exchange[[email protected]*4],.Exchange[[email protected]*4+1]; getitem .Exchange[[email protected]*4+2],.Exchange[[email protected]*4+3]; end; OnInit: //<arg 1: Material;>, <arg 2: Material Amount;>, <arg 3:Prize;>, <arg 4: Prize amount;>,{Repeat} setarray .Exchange[0],909,5,7179,1, 914,3,7179,5; end; } -
Haruka Mayumi's post in Nidhoggur's Nest with out doing quest was marked as the answer
Line 23: nyd_dun02,100,201,3 script Yggdrasil Gatekeeper 111,8,8,{ + if (ins_nyd < 131) set ins_nyd,131;
-
Haruka Mayumi's post in how to remove the NPC HALLUCINATION skill from baphomet.jr was marked as the answer
// When affected with the "Hallucination" status effect, send the effect to client? (Note 1)
// NOTE: Set to 'no' if the client lags due to the "Wavy" screen effect.
display_hallucination: yes
Under conf/client.conf
-
Haruka Mayumi's post in R> MOB SPAWN EVENT WITH DIFFERENT DAY SET was marked as the answer
remove
OnMinute30:
then put the dates and time.
OnSun1200: OnMon1400: OnTue1600: OnWed1800: OnThu2000: OnFri2200: OnSat0000:
-
Haruka Mayumi's post in Change weekly to monthly was marked as the answer
OnSun0000: to
OnClock0000: if(gettime(DT_DAYOFMONTH)!=1) end;
If it helps you, please mark it as Answer
-
Haruka Mayumi's post in R> Instance Cooldown NPC was marked as the answer
The thing is, we don't quite understand what are you guys need. can you please be more specific.
EDIT: Okay so i re-read it, and somehow i know what you guys want. let me take a few minutes.
EDIT 2: Here's what you guys need
P.S Dont forget to upvote if i helped
prontera,154,177,5 script Yumi Haruka 811,{ mes .name$; mes "Hello, i can reset an instance."; mes "What instance do you want to reset?"; next; for([email protected]=0;[email protected]<getarraysize(.instances$);[email protected]+=5) set [email protected]$,[email protected]$+.instances$[[email protected]]+":"; set [email protected],select([email protected]$)-1; set [email protected]$,.instances$[[email protected]*5]; set [email protected],atoi(.instances$[([email protected]*5)+1]); set [email protected],atoi(.instances$[([email protected]*5)+2]); set [email protected],atoi(.instances$[([email protected]*5)+3]); set [email protected],atoi(.instances$[([email protected]*5)+4]); next; if(checkquest([email protected],PLAYTIME)==2 || checkquest([email protected],PLAYTIME) < 0){ mes .name$; mes "Eh? You don't need to reset this instance. You are already allowed to enter it."; end; } mes .name$; mes "So you want to reset ^FF0000"[email protected]$+"^000000?"; mes "It will cost you: "; if([email protected]) mes ""[email protected]+"x ^0000FF"+getitemname([email protected])+"^000000"; if([email protected]) mes "and ^0000FF"[email protected]+"^000000 Zeny!"; mes "Would you like to reset now?"; next; if(select("Yes, Please Reset:No sorry")==2){ mes .name$; mes "Okay, Please come at me again once you decided"; end; } close2; if([email protected] && countitem([email protected])<[email protected]) goto L_NotEnough; if([email protected] && Zeny<[email protected]) goto L_NotEnough; if([email protected]) delitem [email protected],[email protected]; [email protected]; erasequest [email protected]; message strcharinfo(0),"Instance has been Reset!"; end; L_NotEnough: mes .name$; mes "Sorry! But unfortunately, You don't have the requirements to reset the instance"; end; OnInit: // Instance Name, Quest ID, Item ID for Reset,Item Amount, Zeny Amount set .name$,"[ Yumi ]"; setarray .instances$[0], "Endless Tower","60200","501","10","100000", "Nidhogg Nest","3135","502","30","0", "Sealed Shrine","3045","0","0","999999"; end; }
-
Haruka Mayumi's post in Adding GM sprite in clientinfo.xml problem. [Sprite Issue] was marked as the answer
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>
-
Haruka Mayumi's post in open RODEX via npc? was marked as the answer
*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;
-
Haruka Mayumi's post in [Error]: buildin_setr: fatal error ! player not attached! was marked as the answer
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 ([email protected]_Actif == 0) { mes "Event status: [^FF0000OFF^000000]"; mes "Do you wanna activate it ?"; next; switch( select ("Yes:No") ) { case 1: mes .npcname$; set [email protected]_Actif,2; mes "Allright, let's go !"; close2; doevent "prtcub::OnGmSet"; end; case 2: mes .npcname$; mes "Farewell then."; close; } } } if ([email protected]_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 [email protected]_cubeception_tabI,[email protected]_cubeception_tabI+1; set $event_cc_pig$[[email protected]_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 [email protected]_cubeception_tabI,0; set .eventMap$, "izlude_d"; setarray $eventcubUsersAId[0],0; end; } - script LancementCubeception::prtcub -1,{ OnWhisperGlobal: OnClock1600: OnStartCubeception: OnGmSet: if ([email protected]_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 [email protected]_Actif, 1; // Event actif si la variable [email protected]_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 [email protected]_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 [email protected],1;[email protected]<[email protected]_cubeception_tabI;set [email protected],[email protected]+1){ charcommand "#size "+$event_cc_pig$[[email protected]]; sleep 500; } sleep 2000; deletearray $event_cc_pig$,[email protected]_cubeception_tabI+1; set [email protected]_cubeception_tabI,0; for (set [email protected],0; [email protected]<getarraysize($eventcubUsersAId); set [email protected],[email protected]+1) { attachrid($eventcubUsersAId[[email protected]]); 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 [email protected]_Actif, 0; for(set [email protected],1;[email protected]<[email protected]_cubeception_tabI;set [email protected],[email protected]+1){ charcommand "#size "+$event_cc_pig$[[email protected]]; sleep 500; } sleep 2000; deletearray $event_cc_pig$,[email protected]_cubeception_tabI+1; set [email protected]_cubeception_tabI,0; for (set [email protected],0; [email protected]<getarraysize($eventcubUsersAId); set [email protected],[email protected]+1) { attachrid($eventcubUsersAId[[email protected]]); 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([email protected]$,[email protected],[email protected],0); if ([email protected]$ == .eventMap$) { warp "prontera",155,89; } end; }
-
Haruka Mayumi's post in When i press NPC go personal to the place of NPC was marked as the answer
When you diffed your client. You probably Disabled the Walk to Delay.. or you changed your Walk to Delay to 100 Below.
-
Haruka Mayumi's post in Scripting in Item Combo db HELP was marked as the answer
console error?. Semicolon on skill 34,10 ;
-
Haruka Mayumi's post in Announcement when getting freebies was marked as the answer
the 0X8A2BE2 is the color. its in hex color rgb. if you want it yellow. just remove it and leave it bc_all;
-
Haruka Mayumi's post in Item Script (Every 10 Base Level) was marked as the answer
{ bonus bAspdRate,BaseLevel/10; bonus bMaxHP,(-40*(BaseLevel/10));},{},{}