Jump to content

Sindit

Members
  • Content Count

    22
  • Avg. Content Per Day

    0
  • Joined

  • Last visited

Community Reputation

9 Neutral

About Sindit

  • Rank
    Poring

Profile Information

  • Gender
    Male

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. If possible, create a new translation on Translate Client patch to translate that to english (2018-01-24bRagexeRE): 25 64 20 BD C3 B0 A3 C0 CC 20 B0 E6 B0 FA C7 DF BD C0 B4 CF B4 D9 2E 00 B0 FA B5 B5 C7 D1 20 B0 D4 C0 D3 C0 CC BF EB C0 BA 20 C1 A4 BB F3 C0 FB C0 CE 20 C0 CF BB F3 BB FD C8 B0 BF A1 20 C1 F6 C0 E5 C0 BB 20 C1 D9 20 BC F6 20 C0 D6 BD C0 B4 CF B4 D9 ANSI: %d ½Ã°£ÀÌ °æ°úÇß½À´Ï´Ù..°úµµÇÑ °ÔÀÓÀÌ¿ëÀº Á¤»óÀûÀÎ ÀÏ»ó»ýÈ°¿¡ ÁöÀåÀ» ÁÙ ¼ö ÀÖ½À´Ï´Ù. UTF-8: %d 시간이 경과했습니다..과도한 게임이용은 정상적인 일상생활에 지장을 줄 수 있습니다. Offsets: 008FD990 - 008FD9E0 Another suggestion: If possible, create a new patch to use "/AI/" folder instead of "/AI_sakray/". Thanks for the NEMO update. I appreciated. <3
  2. I didn't understand you very well... Do you want to use that script to change the job anytime? If yes, try this: prontera,150,150,4 script Starter NPC 501,{ /* if (#server_start) { mes "[Starter NPC]"; mes "You can only use my services"; mes "once per account, sorry."; close; } */ setarray [email protected], Job_Rune_Knight_T,Job_Warlock_T,Job_Ranger_T,Job_Arch_Bishop_T,Job_Mechanic_T,Job_Guillotine_Cross_T, Job_Royal_Guard_T,Job_Sorcerer_T,((Sex)?Job_Minstrel_T:Job_Wanderer_T),Job_Sura_T,Job_Genetic_T,Job_Shadow_Chaser_T, Job_Gunslinger,Job_Taekwon,Job_Star_Gladiator,Job_Soul_Linker,Job_Super_Novice_E,((Sex)?Job_Kagerou:Job_Oboro); set [email protected], getarraysize([email protected]); for(set [email protected],0; [email protected]<[email protected]; set [email protected],[email protected]+1) set [email protected]$,[email protected]$+jobname([email protected][[email protected]])+":"; mes "[Starter NPC]"; mes "Welcome to Ragnarok!"; mes "Please select a job."; next; set [email protected], select([email protected]$)-1; mes "[Starter NPC]"; mes "Are you sure you want to switch to the "+jobname([email protected][[email protected]])+" class?"; next; if(select("Yes, I'm sure.:No, let me pick again.") == 2) { mes "[Starter NPC]"; mes "Okay, take your time."; close; } mes "[Starter NPC]"; mes "Job changed!"; mes "Please take some apples, too."; mes "They'll come in handy."; emotion e_lv2; //set #server_start,1; jobchange [email protected][[email protected]]; getitem 512,100; close; }
  3. The actual percentage of refinement is on refine_db.yml right inside your database folder (.../db/re/refine_db.yml for example). To do this (in database) without excluding other materials or replace it by another, you'll have to create a new "Type" of refinement (I did this to add this materials to my Refine UI without excluing anothers). Try this code made by me: function script omnirefine { [email protected]$ = getarg(0); /// Custom chances 1 to 20. setarray [email protected]_chances[1], 100, 100, 100, 100, 95, 80, 80, 50, 50, 35, 20, 20, 16, 16, 15, 15, 14, 14, 10, 10; /// Equipment position names (Don't edit that order). setarray [email protected]_name$[1],"Head","Middle","Lower","Armor","Weapon","Shield","Garment","Shoes","Accessory 1","Accessory 2"; /// Weapon material [email protected]_material = 6438; // Omni-Oridecon /// Armor material [email protected]_material = 6439; // Mega-Elunium disable_items; mes "["+ [email protected]$ +"]"; mes "I am the best Armsmith ever!"; mes "I don't refine with normal, boring materials."; mes "I only refine items using ^003366" + getitemname([email protected]_material) + "^000000 and ^003366" + getitemname([email protected]_material) + "^000000."; next; mes "["+ [email protected]$ +"]"; mes "Anyway, you may use my services if you have any of that materials."; mes "What do you want me to refine?"; next; setarray [email protected]_pos[1],EQI_HEAD_TOP,EQI_HEAD_MID,EQI_HEAD_LOW,EQI_ARMOR,EQI_HAND_R,EQI_HAND_L,EQI_GARMENT,EQI_SHOES,EQI_ACC_R,EQI_ACC_L; for ([email protected] = 1; [email protected] <= getarraysize([email protected]_pos); [email protected]) { if (getequipisequiped([email protected]_pos[[email protected]])) [email protected]$ += getequipname([email protected]_pos[[email protected]]); else [email protected]$ += "^777777" + [email protected]_name$[[email protected]] + " - " + "[Unavailable]" + "^000000"; [email protected]$ += ":"; } [email protected] = [email protected]_pos[select([email protected]$)]; [email protected]_id = getequipid([email protected]); [email protected] = getequiprefinerycnt([email protected]); if (!getequipisequiped([email protected])) { //custom check mes "["+ [email protected]$ +"]"; mes "You're not wearing"; mes "anything there that"; mes "I can refine."; emotion ET_FRET; close; } if (!getequipisenableref([email protected])) { mes "["+ [email protected]$ +"]"; mes "I don't think I can"; mes "refine this item at all..."; close; } if ([email protected] >= 20) { //custom check mes "["+ [email protected]$ +"]"; mes "I can't refine this"; mes "any more. This is as"; mes "refined as it gets!"; close; } if (getiteminfo([email protected]_id,2) == 5) [email protected]l = [email protected]_material; else if (getiteminfo([email protected]_id,2) == 4) [email protected] = [email protected]_material; if ((getequipweaponlv([email protected]) >= 1) && (getequipweaponlv([email protected]) <= 4)) { [email protected]$ = "a"; [email protected]$ = "weapon"; } else { [email protected]$ = "an"; [email protected]$ = "armor"; } mes "["+ [email protected]$ +"]"; mes "Hmm " + [email protected]$ + " " + [email protected]$ + ", is that ok?"; mes "If you want to refine this " + [email protected]$ + ","; mes "I will need 1 ^003366" + getitemname([email protected]) + "^000000."; mes "Are you sure you want to continue?"; next; if(select("Yes:No") == 2){ mes "["+ [email protected]_name$ +"]"; mes "Hm... if you mind... never mind..."; close; } while (1) { [email protected] = getequiprefinerycnt([email protected]); if (countitem([email protected]) < 1) { mes "["+ [email protected]$ +"]"; mes "Hm. You don't seem to have enough "+getitemname([email protected])+"."; mes "Please come back when you have them."; close; } delitem [email protected],1; // anti-hack if (callfunc("F_IsEquipIDHack", [email protected], [email protected]_id) || callfunc("F_IsEquipRefineHack", [email protected], [email protected])) { mes "["+ [email protected]$ +"]"; emotion ET_FRET; mes "Wait a second..."; mes "Do you think I'm stupid?!"; mes "You switched the item while I wasn't looking! Get out of here!"; close; } if ([email protected]_chances[[email protected]+1] > rand(100)) { mes "["+ [email protected]$ +"]"; mes "Clang! Clang! Clang! Clang!"; successrefitem [email protected]; next; emotion ET_BEST; mes "["+ [email protected]$ +"]"; mes "Good! Succes!!!"; mes "I am the best Armsmith."; next; } else { if (rand(100) < 80) { mes "["+ [email protected]$ +"]"; mes "Clang! Clang! Clang! Clang!"; downrefitem [email protected],0; // Only for the fail refinement animation next; emotion (!rand(5))?ET_MONEY:ET_HUK; mes "["+ [email protected]$ +"]"; mes "Ahhh!!!"; next; mes "["+ [email protected]$ +"]"; mes "Oh my god!"; mes "The upgrade level has dropped..."; } else { mes "["+ [email protected]$ +"]"; mes "Clang! Clang! Clang!"; downrefitem [email protected],0; // Only for the fail refinement animation next; emotion (!rand(5))?ET_MONEY:ET_HUK; mes "["+ [email protected]$ +"]"; mes "Hmmm!"; next; mes "["+ [email protected]$ +"]"; mes "Oh my! I've failed to refine stuff..."; mes "I didn't mean it!"; } mes "I could have made a mistake even though I am the best Armsmith ever."; mes "It just wasn't meant to be."; next; mes "["+ [email protected]$ +"]"; mes "I will do a better job next time! Don't worry!"; next; } mes "["+ [email protected]$ +"]"; mes "Do you want to refine again?"; next; if(select("Yes:No") == 2){ mes "["+ [email protected]_name$ +"]"; mes "Hm... if you mind... never mind..."; close; } } return; } prt_in,56,54,3 script Refiner#1 826,{ callfunc "omnirefine","^0000FFBlessed Refiner^000000"; end; }
  4. No, it's nothing wrong with your src. Btw, here's your code fixed and tested: // Weapon/Armor Refiners //============================================================ prt_in,63,60,0 script Hollgrehenn 85,{ callfunc "refinemain","Hollgrehenn",0; end; } morocc_in,73,38,6 script Aragham 99,{ callfunc "refinemain","Aragham",0; end; } payon,144,173,5 script Antonio 88,{ callfunc "refinemain","Antonio",0; end; } alberta_in,28,58,0 script Fredrik 85,{ callfunc "refinemain","Fredrik",0; end; } yuno_in01,171,21,4 script Lambert 88,{ callfunc "refinemain","Lambert",0; end; } ein_in01,24,87,5 script Manthasman 826,{ callfunc "refinemain","Manthasman Pruhag",0; end; } lhz_in02,282,20,7 script Fulerr 869,{ callfunc "refinemain","Fulerr",0; end; } //============================================================ //= Main Refiner Function //============================================================ //= To allow auto safe refining/multiple refining set the //= second argument to '1' in the function call. //= If you enable this function, be sure to edit the value of //= [email protected] to the max safe refine in refine_db.txt as well. //============================================================ function script refinemain { disable_items; [email protected]_name$ = getarg(0); set [email protected],getarg(1); mes "["+ [email protected]_name$ +"]"; mes "I'm the Armsmith."; mes "I can refine all kinds of weapons, armor and equipment, so let me"; mes "know what you want me to refine."; next; setarray [email protected]_pos[1], EQI_HEAD_TOP, EQI_ARMOR, EQI_HAND_L, EQI_HAND_R, EQI_GARMENT, EQI_SHOES, EQI_ACC_R, EQI_ACC_L, EQI_HEAD_MID, EQI_HEAD_LOW; setarray [email protected]$[1], "Head", "Body", "Left hand", "Right hand", "Robe", "Shoes", "Accessory 1", "Accessory 2", "Head 2", "Head 3"; for([email protected] = 1; [email protected] <= getarraysize([email protected]$); [email protected]++) { if(getequipisequiped([email protected]_pos[[email protected]])) { [email protected]$ += [email protected]$[[email protected]] + "-" + "[" + getequipname([email protected]_pos[[email protected]]) + "]"; [email protected] = 1; } set [email protected]$, [email protected]$ + ":"; } [email protected] = select([email protected]$); [email protected] = [email protected]_pos[[email protected]]; if ([email protected] == 0) { mes "["+ [email protected]_name$ +"]"; mes "I don't think I can refine any items you have..."; close; } if(!getequipisequiped([email protected])) { //custom check mes "["+ [email protected]_name$ +"]"; mes "You're not wearing"; mes "anything there that"; mes "I can refine."; emotion e_an; close; } //Check if the item is refinable... if(!getequipisenableref([email protected])) { mes "["+ [email protected]_name$ +"]"; mes "I don't think I can"; mes "refine this item at all..."; close; } //Check to see if the items is already +10 if(getequiprefinerycnt([email protected]) >= 10) { mes "["+ [email protected]_name$ +"]"; mes "I can't refine this"; mes "any more. This is as"; mes "refined as it gets!"; close; } set [email protected], getequipid([email protected]); // save id of the item set [email protected], getequiprefinerycnt([email protected]); //save refinery count switch(getequipweaponlv([email protected])){ case 0: //Refine Armor set [email protected],2000; set [email protected],985; //Elunium set [email protected],4; break; case 1: //Refine Level 1 Weapon set [email protected],50; set [email protected],1010; //Phracon set [email protected],7; break; case 2: //Refine Level 2 Weapon set [email protected],200; set [email protected],1011; //Emveretarcon set [email protected],6; break; case 3: //Refine Level 3 Weapon set [email protected],5000; set [email protected],984; //Oridecon set [email protected],5; break; case 4: //Refine Level 4 Weapon set [email protected],20000; set [email protected],984; //Oridecon set [email protected],4; break; case 5: //Refine other stuff? set [email protected],2000; set [email protected],985; //Elunium set [email protected],4; break; } // If the VIP system is enabled, the prices for non-VIP players are considerably higher. if (VIP_SCRIPT && !vip_status(1)) { switch(getequipweaponlv([email protected])) { case 0: set [email protected], [email protected] * 10; break; case 1: set [email protected], [email protected] * 40; break; case 2: set [email protected], [email protected] * 50; break; case 3: set [email protected], [email protected] * 2; break; case 4: set [email protected], [email protected] * 2; break; case 5: set [email protected], [email protected] * 10; break; } } if([email protected] != 1) { mes "["+ [email protected]_name$ +"]"; mes "To refine this I need"; mes "one ^003366"+getitemname([email protected])+"^000000 and"; mes "a service fee of " + [email protected] + " Zeny."; mes "Do you really wish to continue?"; next; if(select("Yes:No") == 2){ mes "["+ [email protected]_name$ +"]"; mes "Yeah..."; mes "There's no need to"; mes "rush. Take your time."; close; } if(getequippercentrefinery([email protected]) < 100) { mes "["+ [email protected]_name$ +"]"; mes "Oh no! If I continue to"; mes "refine this, there's a risk it could"; switch([email protected]) { case 985: mes "be destroyed! That means that ^FF0000this equipment^000000, and ^FF0000any cards^000000 or special properties added to this armor, ^FF0000will be gone^000000."; break; default: mes "be destroyed, and you'd ^FF0000lose the weapon^000000, any ^FF0000cards in the weapon^000000,"; mes "or any added special properties."; break; } next; mes "["+getarg(0)+"]"; mes "I can't make it any clearer."; mes "Once a weapon is destroyed,"; mes "there's no getting it back."; mes "You really have a chance to"; mes "^FF0000lose this weapon^000000 forever."; mes "Do you still want to refine?"; next; if(select("Yes:No") == 2){ mes "["+ [email protected]_name$ +"]"; mes "I completely agree..."; mes "I might be a great refiner, but sometimes even I make mistakes."; close; } } if((countitem([email protected]) < 1) || (Zeny < [email protected])) { mes "["+ [email protected]_name$ +"]"; mes "You don't seem to have"; mes "enough Zeny or "+getitemname([email protected])+"..."; mes "Go get some more. I'll be"; mes "here all day if you need me."; close; } set Zeny, [email protected]; delitem [email protected],1; // anti-hack if (callfunc("F_IsEquipIDHack", [email protected], [email protected]) || callfunc("F_IsEquipRefineHack", [email protected], [email protected])) { mes "["+ [email protected]_name$ +"]"; emotion e_an; mes "Wait a second..."; mes "Do you think I'm stupid?!"; mes "You switched the item while I wasn't looking! Get out of here!"; close; } if(getequippercentrefinery([email protected]) <= rand(100)) { failedrefitem [email protected]; mes "["+ [email protected]_name$ +"]"; emotion (!rand(5))?e_cash:e_omg; set [email protected],rand(1,3); if ([email protected] == 1) { mes "OH! MY GOD!"; mes "Damn it! Not again!"; mes "I'm terribly sorry, but you know practice does make perfect."; mes "Um, right? Heh heh..."; } else if([email protected] == 2) { mes "Nooooooo!"; mes "It broke!"; mes "I-I'm sorry!"; } else { mes "Crap!"; mes "It couldn't take"; mes "much more tempering!"; mes "Sorry about this..."; } close; } mes "["+getarg(0)+"]"; successrefitem [email protected]; emotion e_heh; set [email protected],rand(1,3); if ([email protected] == 1) { mes "Perfect!"; mes "Heh heh!"; mes "Once again,"; mes "flawless work"; mes "from the master~"; } else if([email protected] == 2) { mes "Success...!"; mes "Yet again, my amazing"; mes "talent truly dazzles"; mes "and shines today."; } else { mes "Heh heh!"; mes "I'm all done."; mes "No doubt, my work is"; mes "to your satisfaction."; mes "Sheer, utter perfection~"; } close; } // New Refining Functions ======================== if(getequiprefinerycnt([email protected]) < [email protected]) { mes "["+ [email protected]_name$ +"]"; mes "I can refine this to the safe limit or a desired number of times. It's your choice."; next; set [email protected],select("To the safe limit, please.","I'll decide how many times.","I've changed my mind..."); } else set [email protected],2; switch([email protected]){ case 1: set [email protected],[email protected] - getequiprefinerycnt([email protected]); break; case 2: next; mes "["+ [email protected]_name$ +"]"; mes "How many times would you like me to refine your item?"; next; input [email protected]; set [email protected],[email protected] + getequiprefinerycnt([email protected]); if ([email protected] < 1 || [email protected] > 10) { mes "["+ [email protected]_name$ +"]"; mes "I can't refine this item that many times."; close; } if([email protected] > [email protected]) { set [email protected],[email protected] - [email protected]; mes "["+ [email protected]_name$ +"]"; mes "This will try to refine the equipment " + [email protected] + " times past the safe limit. Your equipment may be destroyed... is that ok?"; next; if(select("Yes...","No...") == 2){ mes "["+ [email protected]_name$ +"]"; mes "You said so... So be it."; close; } } break; case 3: next; mes "["+ [email protected]_name$ +"]"; mes "You said so... So be it."; close; } set [email protected],[email protected] * [email protected]; mes "["+ [email protected]_name$ +"]"; mes "That will cost you " + [email protected] + " " + getitemname([email protected]) + " and " + [email protected] + " Zeny. Is that ok?"; next; if(select("Yes","No...") == 2){ mes "["+ [email protected]_name$ +"]"; mes "You said so... So be it."; close; } if(countitem([email protected]) < [email protected] || Zeny < [email protected]) { mes "["+ [email protected]_name$ +"]"; mes "Is that all you got? Unfortunately I can't work for you at a lower price. Try putting yourself in my shoes."; close; } set Zeny, Zeny - [email protected]; delitem [email protected],[email protected]; while([email protected]){ if (getequipisequiped([email protected]) == 0) { mes "["+ [email protected]_name$ +"]"; mes "Look here... you don't have any items on..."; close; } if (getequipid([email protected]) != [email protected] || ([email protected] == 1 && getequippercentrefinery([email protected]) < 100)) { mes "["+ [email protected]_name$ +"]"; mes "Clang... No, but did you imagine I could be so stupid?!"; mes "You changed it..."; mes "Get out before I stun you with my Hammer!!"; close; } mes "Clang, clang!!!"; if([email protected] == 2 && getequippercentrefinery([email protected]) <= rand(100)) { failedrefitem [email protected]; emotion e_omg; mes "["+ [email protected]_name$ +"]"; mes "WAHHHH!!! I'm so sorry... I warned you this could happen..."; set [email protected],[email protected] - 1; if([email protected] == 0) close; mes "Here's the unused Zeny and materials back..."; getitem [email protected],[email protected]; set [email protected],[email protected] * [email protected]; set Zeny, Zeny + [email protected]; close; } successrefitem [email protected]; emotion e_no1; set [email protected],[email protected] - 1; next; } mes "["+ [email protected]_name$ +"]"; mes "All finished... Come again soon."; close; } Remember: This code is testing if the equipment already has an equal or higher refine than 10. And if that condition are true, the refiner will stop dialog (lines 81-87).
  5. You are having troubles because the order of how the for loop checks the equipments isn't equal to your personal order. Try this: // Weapon/Armor Refiners //============================================================ prt_in,63,60,0 script Hollgrehenn 85,{ callfunc "refinemain","Hollgrehenn",0; end; } morocc_in,73,38,6 script Aragham 99,{ callfunc "refinemain","Aragham",0; end; } payon,144,173,5 script Antonio 88,{ callfunc "refinemain","Antonio",0; end; } alberta_in,28,58,0 script Fredrik 85,{ callfunc "refinemain","Fredrik",0; end; } yuno_in01,171,21,4 script Lambert 88,{ callfunc "refinemain","Lambert",0; end; } ein_in01,24,87,5 script Manthasman 826,{ callfunc "refinemain","Manthasman Pruhag",0; end; } lhz_in02,282,20,7 script Fulerr 869,{ callfunc "refinemain","Fulerr",0; end; } //============================================================ //= Main Refiner Function //============================================================ //= To allow auto safe refining/multiple refining set the //= second argument to '1' in the function call. //= If you enable this function, be sure to edit the value of //= [email protected] to the max safe refine in refine_db.txt as well. //============================================================ function script refinemain { disable_items; [email protected]_name$ = getarg(0); set [email protected],getarg(1); mes "["+ [email protected]_name$ +"]"; mes "I'm the Armsmith."; mes "I can refine all kinds of weapons, armor and equipment, so let me"; mes "know what you want me to refine."; next; setarray [email protected]_pos[1], EQI_HEAD_TOP, EQI_ARMOR, EQI_HAND_L, EQI_HAND_R, ,EQI_GARMENT, EQI_SHOES, EQI_ACC_R, EQI_ACC_L, EQI_HEAD_MID, EQI_HEAD_LOW; setarray [email protected]$[1], "Head", "Body", "Left hand", "Right hand", "Robe", "Shoes", "Accessory 1", "Accessory 2", "Head 2", "Head 3"; for([email protected] = 1; [email protected] <= getarraysize([email protected]$); [email protected]++) { if(getequipisequiped([email protected]_pos[[email protected]])) { [email protected]$ += [email protected]$[[email protected]] + "-" + "[" + getequipname([email protected]) + "]"; [email protected] = 1; } set [email protected]$, [email protected]$ + ":"; } if ([email protected] == 0) { mes "["+ [email protected]_name$ +"]"; mes "I don't think I can refine any items you have..."; close; } [email protected] = select([email protected]$); [email protected] = [email protected]_pos[[email protected]]; if(!getequipisequiped([email protected])) { //custom check mes "["+ [email protected]_name$ +"]"; mes "You're not wearing"; mes "anything there that"; mes "I can refine."; emotion e_an; close; } //Check if the item is refinable... if(!getequipisenableref([email protected])) { mes "["+ [email protected]_name$ +"]"; mes "I don't think I can"; mes "refine this item at all..."; close; } //Check to see if the items is already +10 if(getequiprefinerycnt([email protected]) >= 10) { mes "["+ [email protected]_name$ +"]"; mes "I can't refine this"; mes "any more. This is as"; mes "refined as it gets!"; close; } set [email protected], getequipid([email protected]); // save id of the item set [email protected], getequiprefinerycnt([email protected]); //save refinery count switch(getequipweaponlv([email protected])){ case 0: //Refine Armor set [email protected],2000; set [email protected],985; //Elunium set [email protected],4; break; case 1: //Refine Level 1 Weapon set [email protected],50; set [email protected],1010; //Phracon set [email protected],7; break; case 2: //Refine Level 2 Weapon set [email protected],200; set [email protected],1011; //Emveretarcon set [email protected],6; break; case 3: //Refine Level 3 Weapon set [email protected],5000; set [email protected],984; //Oridecon set [email protected],5; break; case 4: //Refine Level 4 Weapon set [email protected],20000; set [email protected],984; //Oridecon set [email protected],4; break; case 5: //Refine other stuff? set [email protected],2000; set [email protected],985; //Elunium set [email protected],4; break; } // If the VIP system is enabled, the prices for non-VIP players are considerably higher. if (VIP_SCRIPT && !vip_status(1)) { switch(getequipweaponlv([email protected])) { case 0: set [email protected], [email protected] * 10; break; case 1: set [email protected], [email protected] * 40; break; case 2: set [email protected], [email protected] * 50; break; case 3: set [email protected], [email protected] * 2; break; case 4: set [email protected], [email protected] * 2; break; case 5: set [email protected], [email protected] * 10; break; } } if([email protected] != 1) { mes "["+ [email protected]_name$ +"]"; mes "To refine this I need"; mes "one ^003366"+getitemname([email protected])+"^000000 and"; mes "a service fee of " + [email protected] + " Zeny."; mes "Do you really wish to continue?"; next; if(select("Yes:No") == 2){ mes "["+ [email protected]_name$ +"]"; mes "Yeah..."; mes "There's no need to"; mes "rush. Take your time."; close; } if(getequippercentrefinery([email protected]) < 100) { mes "["+ [email protected]_name$ +"]"; mes "Oh no! If I continue to"; mes "refine this, there's a risk it could"; switch([email protected]) { case 985: mes "be destroyed! That means that ^FF0000this equipment^000000, and ^FF0000any cards^000000 or special properties added to this armor, ^FF0000will be gone^000000."; break; default: mes "be destroyed, and you'd ^FF0000lose the weapon^000000, any ^FF0000cards in the weapon^000000,"; mes "or any added special properties."; break; } next; mes "["+getarg(0)+"]"; mes "I can't make it any clearer."; mes "Once a weapon is destroyed,"; mes "there's no getting it back."; mes "You really have a chance to"; mes "^FF0000lose this weapon^000000 forever."; mes "Do you still want to refine?"; next; if(select("Yes:No") == 2){ mes "["+ [email protected]_name$ +"]"; mes "I completely agree..."; mes "I might be a great refiner, but sometimes even I make mistakes."; close; } } if((countitem([email protected]) < 1) || (Zeny < [email protected])) { mes "["+ [email protected]_name$ +"]"; mes "You don't seem to have"; mes "enough Zeny or "+getitemname([email protected])+"..."; mes "Go get some more. I'll be"; mes "here all day if you need me."; close; } set Zeny, [email protected]; delitem [email protected],1; // anti-hack if (callfunc("F_IsEquipIDHack", [email protected], [email protected]) || callfunc("F_IsEquipRefineHack", [email protected], [email protected])) { mes "["+ [email protected]_name$ +"]"; emotion e_an; mes "Wait a second..."; mes "Do you think I'm stupid?!"; mes "You switched the item while I wasn't looking! Get out of here!"; close; } if(getequippercentrefinery([email protected]) <= rand(100)) { failedrefitem [email protected]; mes "["+ [email protected]_name$ +"]"; emotion (!rand(5))?e_cash:e_omg; set [email protected],rand(1,3); if ([email protected] == 1) { mes "OH! MY GOD!"; mes "Damn it! Not again!"; mes "I'm terribly sorry, but you know practice does make perfect."; mes "Um, right? Heh heh..."; } else if([email protected] == 2) { mes "Nooooooo!"; mes "It broke!"; mes "I-I'm sorry!"; } else { mes "Crap!"; mes "It couldn't take"; mes "much more tempering!"; mes "Sorry about this..."; } close; } mes "["+getarg(0)+"]"; successrefitem [email protected]; emotion e_heh; set [email protected],rand(1,3); if ([email protected] == 1) { mes "Perfect!"; mes "Heh heh!"; mes "Once again,"; mes "flawless work"; mes "from the master~"; } else if([email protected] == 2) { mes "Success...!"; mes "Yet again, my amazing"; mes "talent truly dazzles"; mes "and shines today."; } else { mes "Heh heh!"; mes "I'm all done."; mes "No doubt, my work is"; mes "to your satisfaction."; mes "Sheer, utter perfection~"; } close; } // New Refining Functions ======================== if(getequiprefinerycnt([email protected]) < [email protected]) { mes "["+ [email protected]_name$ +"]"; mes "I can refine this to the safe limit or a desired number of times. It's your choice."; next; set [email protected],select("To the safe limit, please.","I'll decide how many times.","I've changed my mind..."); } else set [email protected],2; switch([email protected]){ case 1: set [email protected],[email protected] - getequiprefinerycnt([email protected]); break; case 2: next; mes "["+ [email protected]_name$ +"]"; mes "How many times would you like me to refine your item?"; next; input [email protected]; set [email protected],[email protected] + getequiprefinerycnt([email protected]); if ([email protected] < 1 || [email protected] > 10) { mes "["+ [email protected]_name$ +"]"; mes "I can't refine this item that many times."; close; } if([email protected] > [email protected]) { set [email protected],[email protected] - [email protected]; mes "["+ [email protected]_name$ +"]"; mes "This will try to refine the equipment " + [email protected] + " times past the safe limit. Your equipment may be destroyed... is that ok?"; next; if(select("Yes...","No...") == 2){ mes "["+ [email protected]_name$ +"]"; mes "You said so... So be it."; close; } } break; case 3: next; mes "["+ [email protected]_name$ +"]"; mes "You said so... So be it."; close; } set [email protected],[email protected] * [email protected]; mes "["+ [email protected]_name$ +"]"; mes "That will cost you " + [email protected] + " " + getitemname([email protected]) + " and " + [email protected] + " Zeny. Is that ok?"; next; if(select("Yes","No...") == 2){ mes "["+ [email protected]_name$ +"]"; mes "You said so... So be it."; close; } if(countitem([email protected]) < [email protected] || Zeny < [email protected]) { mes "["+ [email protected]_name$ +"]"; mes "Is that all you got? Unfortunately I can't work for you at a lower price. Try putting yourself in my shoes."; close; } set Zeny, Zeny - [email protected]; delitem [email protected],[email protected]; while([email protected]){ if (getequipisequiped([email protected]) == 0) { mes "["+ [email protected]_name$ +"]"; mes "Look here... you don't have any items on..."; close; } if (getequipid([email protected]) != [email protected] || ([email protected] == 1 && getequippercentrefinery([email protected]) < 100)) { mes "["+ [email protected]_name$ +"]"; mes "Clang... No, but did you imagine I could be so stupid?!"; mes "You changed it..."; mes "Get out before I stun you with my Hammer!!"; close; } mes "Clang, clang!!!"; if([email protected] == 2 && getequippercentrefinery([email protected]) <= rand(100)) { failedrefitem [email protected]; emotion e_omg; mes "["+ [email protected]_name$ +"]"; mes "WAHHHH!!! I'm so sorry... I warned you this could happen..."; set [email protected],[email protected] - 1; if([email protected] == 0) close; mes "Here's the unused Zeny and materials back..."; getitem [email protected],[email protected]; set [email protected],[email protected] * [email protected]; set Zeny, Zeny + [email protected]; close; } successrefitem [email protected]; emotion e_no1; set [email protected],[email protected] - 1; next; } mes "["+ [email protected]_name$ +"]"; mes "All finished... Come again soon."; close;
  6. Instead of use getcharid(0, $kill$), you just need to use $kill$ ($kill$ is actually saving the character id (char_id) and not the character name (name), so you don't need to use getcharid). Try this: OnClock0000: set .prize, 7227; set .amount, 5; query_sql "SELECT `char_id` FROM `char_reg_num` ORDER BY `key` = 'kills' DESC LIMIT 1", $kill$; query_sql "SELECT `name` FROM `char` WHERE `char_id`="+$kill$+"", [email protected]$; if (!isloggedin(getcharid(3, [email protected]$)) query_sql "INSERT INTO `inventory` (`char_id`, `nameid`, `amount`, `equip`, `identify` ) VALUES ('"+$kill$+"', '"+.prize+"', '" +.amount+ "', 0, 1)"; else getitem .prize, .amount, getcharid(3, [email protected]$); end;
  7. Então, cara, o erro está aqui: "[email protected]$[[email protected]]+" Quando você seleciona das tabelas dando apenas um argumento, ele não cria uma array. Tenta assim: query_sql "SELECT `account_id`,`MaxQPoints` FROM `login` WHERE `MaxQPoints` > '0' ORDER BY `MaxQPoints` DESC LIMIT 10",[email protected],[email protected]; for(set [email protected],0; [email protected]<getarraysize([email protected]); set [email protected],[email protected]+1) { query_sql "SELECT `name` FROM `char` WHERE `account_id`='"[email protected][[email protected]]+"' AND `QP_CharPref`='1'",[email protected]$; mes " [ "+([email protected]+1)+"º ] "[email protected]$+" ~ "[email protected][[email protected]]+""; } close;
  8. Solved! I solved this by diffing my client in a VM using W7 x86 as a OS. Probably the NEMO don't work well in W10 x64.
  9. 2017-05-17aRagexeRE and 2017-06-14aRagexeRE are brokens for me, I can't use any of them. 2016-02-03aRagexeRE is the current client that I'm using. 2017-01-25aRagexeRE.rar
  10. Nope, same here. I unpacked the 2017-01-25aRagexeRE for me (because the one in rA have only 13mb and this is quite strange) and I'm having the same problem when I diff using the latest version of NEMO. Probably 2017-01-25 uses an old UI for rodex. My texture folders:
  11. Anyway, I don't have enabled IncreaseAtkDisplay. This is my diffs that I have enabled: 3 Chat Flood Remove Limit 6 Force Send Client Hash Packet 8 Custom Window Title 9 Disable 1rag1 type parameters (Recommended) 13 Disable Ragexe Filename Check (Recommended) 16 Disable Swear Filter 23 Enable /who command (Recommended) 24 Fix Camera Angles (Recommended) 32 Increase Zoom Out Max 33 Always Call SelectKoreaClientInfo() (Recommended) 34 Enable /showname (Recommended) 36 Read msgstringtable.txt (Recommended) 37 Read questid2display.txt (Recommended) 38 Remove Gravity Ads (Recommended) 39 Remove Gravity Logo (Recommended) 40 Restore Login Window (Recommended) 41 Disable Nagle Algorithm (Recommended) 44 Translate Client (Recommended) 46 Use Normal Guild Brackets (Recommended) 48 Use Plain Text Descriptions (Recommended) 49 Enable Multiple GRFs (Recommended) 50 Skip License Screen 53 Use Ascii on All LangTypes (Recommended) 61 Disable Packet Encryption 64 @ Bug Fix (Recommended) 65 Load Custom lua file instead of iteminfo*.lub (Recommended) 71 Ignore Resource Errors 73 Remove Hourly Announce (Recommended) 74 Increase Screenshot Quality 84 Remove Serial Display (Recommended) 88 Allow space in guild name 90 Enable DNS Support (Recommended) 91 Disconnect to Login Window 97 Cancel to Login Window (Recommended) 208 Restore Cash Shop Icon 213 Disable Help Message on Login (Recommended) @edit: I don't know why I am having this error... I'm 80% sure that I'm the only one with this error. Can you check this in your PC, if you have free time please? Thanks in advance. :v
  12. Maybe be my OS? Win 10 x64? I'll test in a VM with Windows 7 32 bits. Thanks for the answer
  13. I'm having an error with damage output when I diff my client using secretdataz NEMO fork (the actually best differ for hexeds 2017+). Anyone having this problem too? Know the way of how to fix this? @edit: The client diffed in the secretdataz NEMO is alread pre-diffed with the NEO NEMO. But if I diff only with the secretdataz, the error will be the same (with any diff).
  14. How this client unpacked is soo small? My client has 18mb unpacked. o_O
×
×
  • Create New...

Important Information

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