Jump to content

Haruka Mayumi

Content Moderator
  • Posts

    474
  • Joined

  • Last visited

  • Days Won

    26

Community Answers

  1. Haruka Mayumi's post in Koe Event was marked as the answer   
    setcell walkable then Create 4 mobs(barricade) must have event label then once they died, you can setcell again the walkable path..
  2. 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; }  
  3. 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; }  
  4. Haruka Mayumi's post in HELP! was marked as the answer   
    You must read it line per line. word per word. you will successfully add your own custom item.
    https://github.com/rathena/rathena/wiki/Custom-Items
  5. Haruka Mayumi's post in Where I can find 2018-06-21aRagexeRE? was marked as the answer   
    2018-06-21aRagexeRE
  6. Haruka Mayumi's post in CashShop remove was marked as the answer   
    It's "SET SHOP BUTTON".
  7. 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 ^_~
  8. 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.
  9. 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
  10. 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.
  11. 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
  12. 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";  
  13. 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; }
  14. 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;  
  15. 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
  16. 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:  
  17. 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
  18. 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; }  
  19. 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>  
  20. 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;
  21. 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; }  
  22. 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.
     
     

  23. Haruka Mayumi's post in Scripting in Item Combo db HELP was marked as the answer   
    console error?. Semicolon on skill 34,10 ;
  24. 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;
  25. 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));},{},{}
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.