-
Posts
794 -
Joined
-
Last visited
-
Days Won
3
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Everything posted by AinsLord
-
//===== rAthena Script ======================================= //= Euphy's Quest Shop //===== By: ================================================== //= Euphy //===== Current Version: ===================================== //= 1.6c //===== Compatible With: ===================================== //= rAthena Project //===== Description: ========================================= //= A dynamic quest shop based on Lunar's, with easier config. //= Includes support for multiple shops & cashpoints. //= Item Preview script by ToastOfDoom. //===== Additional Comments: ================================= //= 1.0 Initial script. //= 1.2 Added category support. //= 1.3 More options and fixes. //= 1.4 Added debug settings. //= 1.5 Replaced categories with shop IDs. //= 1.6 Added support for purchasing stackables. //= 1.6a Added support for previewing costumes and robes. //= 1.6b Added 'disable_items' command. //= 1.6c Replaced function 'A_An' with "F_InsertArticle". //============================================================ // Shop NPCs -- supplying no argument displays entire menu. // callfunc "qshop"{,<shop ID>{,<shop ID>{,...}}}; //============================================================ prontera,130,215,6 script Quest Shop#2 528,{ callfunc "qshop"; } // Script Core //============================================================ - script quest_shop -1,{ function Add; function Chk; function Slot; OnInit: freeloop(1); // ----------------------------------------------------------- // Basic shop settings. // ----------------------------------------------------------- set .Announce,1; // Announce quest completion? (1: yes / 0: no) set .ShowSlot,1; // Show item slots? (2: all equipment / 1: if slots > 0 / 0: never) set .ShowID,0; // Show item IDs? (1: yes / 0: no) set .ShowZeny,0; // Show Zeny cost, if any? (1: yes / 0: no) set .MaxStack,100; // Max number of quest items purchased at one time. // ----------------------------------------------------------- // Points variable -- optional quest requirement. // setarray .Points$[0],"<variable name>","<display name>"; // ----------------------------------------------------------- setarray .Points$[0],"#CASHPOINTS","Cash Points"; // ----------------------------------------------------------- // Shop IDs -- to add shops, copy dummy data at bottom of file. // setarray .Shops$[1],"<Shop 1>","<Shop 2>"{,...}; // ----------------------------------------------------------- setarray .Shops$[1],"Upper HeadGear","Middle HearGear","Lower HeadGear","Quest Cards"; // ----------------------------------------------------------- // Quest items -- do NOT use a reward item more than once! // Add(<shop ID>,<reward ID>,<reward amount>, // <Zeny cost>,<point cost>, // <required item ID>,<required item amount>{,...}); // ----------------------------------------------------------- Add(5,45008,1,0,0,7227,200,7090,15,7088,15,7075,5); // Add(4,45009,1,0,0,7227,200,7834,10,7837,15,7079,5); // Add(4,45010,1,0,0,7227,200,7091,10,7074,15,7089,5); // Add(4,45011,1,0,0,7227,200,7082,10,7085,20,7080,5); // Add(4,45012,1,0,0,7227,200,7090,15,7088,15,7075,5); // Add(4,45013,1,0,0,7227,200,7834,10,7837,15,7079,5); // Add(4,45014,1,0,0,7227,200,7091,10,7074,15,7089,5); //// Add(4,45015,1,0,0,7227,200,7082,10,7085,20,7080,5); // Add(4,45016,1,0,0,7227,200,7090,15,7088,15,7075,5); // Add(4,45017,1,0,0,7227,200,7090,15,7088,15,7075,5); // Add(4,45018,1,0,0,7227,200,7090,15,7088,15,7075,5); // ----------------------------------------------------------- freeloop(0); set .menu$,""; for(set .@i,1; .@i<=getarraysize(.Shops$); set .@i,.@i+1) { set .menu$, .menu$+.Shops$[.@i]+":"; npcshopdelitem "qshop"+.@i,909; } end; OnMenu: set .@size, getarraysize(@i); if (!.@size) set @shop_index, select(.menu$); else if (.@size == 1) set @shop_index, @i[0]; else { for(set .@j,0; .@j<.@size; set .@j,.@j+1) set .@menu$, .@menu$+.Shops$[@i[.@j]]+":"; set @shop_index, @i[select(.@menu$)-1]; } deletearray @i[0],getarraysize(@i); if (.Shops$[@shop_index] == "") { message strcharinfo(0),"An error has occurred."; end; } dispbottom "Select one item at a time."; callshop "qshop"+@shop_index,1; npcshopattach "qshop"+@shop_index; end; OnBuyItem: // .@q[] : RewardID, BoughtAmt, RewardAmt, BaseAmt, ReqZeny, ReqPts, { ReqItem, ReqAmt, ... } setarray .@q[0],@bought_nameid[0],((@bought_quantity[0] > .MaxStack)?.MaxStack:@bought_quantity[0]); copyarray .@q[3],getd(".q_"+@shop_index+"_"+.@q[0]+"[0]"),getarraysize(getd(".q_"+@shop_index+"_"+.@q[0])); set .@q[2],.@q[1]*.@q[3]; if (!.@q[2] || .@q[2] > 30000) { message strcharinfo(0),"You can't purchase that many "+getitemname(.@q[0])+"."; end; } mes "[Quest Shop]"; mes "Reward: ^0055FF"+((.@q[2] > 1)?.@q[2]+"x ":"")+Slot(.@q[0])+"^000000"; mes "Requirements:"; disable_items; if (.@q[4]) mes " > "+Chk(Zeny,.@q[4]*.@q[1])+(.@q[4]*.@q[1])+" Zeny^000000"; if (.@q[5]) mes " > "+Chk(getd(.Points$[0]),.@q[5]*.@q[1])+(.@q[5]*.@q[1])+" "+.Points$[1]+" ("+getd(.Points$[0])+"/"+(.@q[5]*.@q[1])+")^000000"; if (.@q[6]) for(set .@i,6; .@i<getarraysize(.@q); set .@i,.@i+2) mes " > "+Chk(countitem(.@q[.@i]),.@q[.@i+1]*.@q[1])+((.ShowID)?"{"+.@q[.@i]+"} ":"")+Slot(.@q[.@i])+" ("+countitem(.@q[.@i])+"/"+(.@q[.@i+1]*.@q[1])+")^000000"; next; setarray @qe[1], getiteminfo(.@q[0],5), getiteminfo(.@q[0],11); if (@qe[2] > 0 && ((@qe[1] & EQP_HEAD_LOW) || (@qe[1] & EQP_HEAD_TOP) || (@qe[1] & EQP_HEAD_MID) || (@qe[1] & EQP_COSTUME_HEAD_TOP) || (@qe[1] & EQP_COSTUME_HEAD_MID) || (@qe[1] & EQP_COSTUME_HEAD_LOW) || (@qe[1] & EQP_GARMENT) || (@qe[1] & EQP_COSTUME_GARMENT))) set .@preview,1; addtimer 1000, strnpcinfo(0)+"::OnEnd"; while(1) { switch(select(" ~ Purchase ^0055FF"+getitemname(.@q[0])+"^000000:"+((.@preview && !@qe[7])?" ~ Preview...":"")+": ~ ^777777Cancel^000000")) { case 1: if (@qe[0]) { mes "[Quest Shop]"; mes "You're missing one or more quest requirements."; close; } if (!checkweight(.@q[0],.@q[2])) { mes "[Quest Shop]"; mes "^FF0000You need "+(((.@q[2]*getiteminfo(.@q[0],6))+Weight-MaxWeight)/10)+" additional weight capacity to complete this trade.^000000"; close; } if (.@q[4]) set Zeny, Zeny-(.@q[4]*.@q[1]); if (.@q[5]) setd .Points$[0], getd(.Points$[0])-(.@q[5]*.@q[1]); if (.@q[6]) for(set .@i,6; .@i<getarraysize(.@q); set .@i,.@i+2) delitem .@q[.@i],.@q[.@i+1]*.@q[1]; getitem .@q[0],.@q[2]; if (.Announce) announce strcharinfo(0)+" has created "+((.@q[2] > 1)?.@q[2]+"x "+getitemname(.@q[0]):callfunc("F_InsertArticle",getitemname(.@q[0])))+"!",0; specialeffect2 EF_FLOWERLEAF; close; case 2: setarray @qe[3], getlook(LOOK_HEAD_BOTTOM), getlook(LOOK_HEAD_TOP), getlook(LOOK_HEAD_MID), getlook(LOOK_ROBE), 1; if ((@qe[1] & 1) || (@qe[1] & 4096)) changelook LOOK_HEAD_BOTTOM, @qe[2]; else if ((@qe[1] & 256) || (@qe[1] & 1024)) changelook LOOK_HEAD_TOP, @qe[2]; else if ((@qe[1] & 512) || (@qe[1] & 2048)) changelook LOOK_HEAD_MID, @qe[2]; else if ((@qe[1] & 4) || (@qe[1] & 8192)) changelook LOOK_ROBE, @qe[2]; break; case 3: close; } } OnEnd: if (@qe[7]) { changelook LOOK_HEAD_BOTTOM, @qe[3]; changelook LOOK_HEAD_TOP, @qe[4]; changelook LOOK_HEAD_MID, @qe[5]; changelook LOOK_ROBE, @qe[6]; } deletearray @qe[0],8; end; function Add { if (getitemname(getarg(1)) == "null") { debugmes "Quest reward #"+getarg(1)+" invalid (skipped)."; return; } setarray .@j[0],getarg(2),getarg(3),getarg(4); for(set .@i,5; .@i<getargcount(); set .@i,.@i+2) { if (getitemname(getarg(.@i)) == "null") { debugmes "Quest requirement #"+getarg(.@i)+" invalid (skipped)."; return; } else setarray .@j[.@i-2],getarg(.@i),getarg(.@i+1); } copyarray getd(".q_"+getarg(0)+"_"+getarg(1)+"[0]"),.@j[0],getarraysize(.@j); npcshopadditem "qshop"+getarg(0),getarg(1),((.ShowZeny)?getarg(3):0); return; } function Chk { if (getarg(0) < getarg(1)) { set @qe[0],1; return "^FF0000"; } else return "^00FF00"; } function Slot { set .@s$,getitemname(getarg(0)); switch(.ShowSlot) { case 1: if (!getitemslots(getarg(0))) return .@s$; case 2: if (getiteminfo(getarg(0),2) == 4 || getiteminfo(getarg(0),2) == 5) return .@s$+" ["+getitemslots(getarg(0))+"]"; default: return .@s$; } } } function script qshop { deletearray @i[0],getarraysize(@i); for(set .@i,0; .@i<getargcount(); set .@i,.@i+1) set @i[.@i],getarg(.@i); doevent "quest_shop::OnMenu"; end; } // Dummy shop data -- copy as needed. //============================================================ - shop qshop1 -1,909:-1 - shop qshop2 -1,909:-1 - shop qshop3 -1,909:-1 - shop qshop4 -1,909:-1 - shop qshop5 -1,909:-1 yan po ung script dko po kc alam pano try ako ng try pro d nag sho-show ung mga selections parang 1st npc show nya qshop1 to 5 then yung isa show na qshop6 to 10 pero same script lng ng npc ung ggmitin salamat po sa 22long
-
//===== rAthena Script ======================================= //= Euphy's Quest Shop //===== By: ================================================== //= Euphy //===== Current Version: ===================================== //= 1.6c //===== Compatible With: ===================================== //= rAthena Project //===== Description: ========================================= //= A dynamic quest shop based on Lunar's, with easier config. //= Includes support for multiple shops & cashpoints. //= Item Preview script by ToastOfDoom. //===== Additional Comments: ================================= //= 1.0 Initial script. //= 1.2 Added category support. //= 1.3 More options and fixes. //= 1.4 Added debug settings. //= 1.5 Replaced categories with shop IDs. //= 1.6 Added support for purchasing stackables. //= 1.6a Added support for previewing costumes and robes. //= 1.6b Added 'disable_items' command. //= 1.6c Replaced function 'A_An' with "F_InsertArticle". //============================================================ // Shop NPCs -- supplying no argument displays entire menu. // callfunc "qshop"{,<shop ID>{,<shop ID>{,...}}}; //============================================================ sky_quest,38,53,6 script Quest Shop#1 528,{ callfunc "qshop"; } // Script Core //============================================================ - script quest_shop -1,{ function Add; function Chk; function Slot; OnInit: freeloop(1); // ----------------------------------------------------------- // Basic shop settings. // ----------------------------------------------------------- set .Announce,1; // Announce quest completion? (1: yes / 0: no) set .ShowSlot,1; // Show item slots? (2: all equipment / 1: if slots > 0 / 0: never) set .ShowID,0; // Show item IDs? (1: yes / 0: no) set .ShowZeny,0; // Show Zeny cost, if any? (1: yes / 0: no) set .MaxStack,100; // Max number of quest items purchased at one time. // ----------------------------------------------------------- // Points variable -- optional quest requirement. // setarray .Points$[0],"<variable name>","<display name>"; // ----------------------------------------------------------- setarray .Points$[0],"#CASHPOINTS","Cash Points"; // ----------------------------------------------------------- // Shop IDs -- to add shops, copy dummy data at bottom of file. // setarray .Shops$[1],"<Shop 1>","<Shop 2>"{,...}; // ----------------------------------------------------------- setarray .Shops$[1],"Upper HeadGear","Middle HearGear","Lower HeadGear","Quest Cards"; // ----------------------------------------------------------- // Quest items -- do NOT use a reward item more than once! // Add(<shop ID>,<reward ID>,<reward amount>, // <Zeny cost>,<point cost>, // <required item ID>,<required item amount>{,...}); // ----------------------------------------------------------- Add(1,20020,1,0,0,7227,100,983,5,1020,150,7205,100,674,3,5025,1); Add(1,20050,1,0,0,7227,100,5161,1,949,150,2283,1,674,3,5057,1); Add(1,20053,1,0,0,7227,100,2229,1,999,100,975,10,674,3,757,50); Add(1,20061,1,0,0,7227,100,5058,1,7161,150,983,10,7205,150,674,3); Add(1,20091,1,0,0,7227,100,1059,150,7751,150,7166,100,5070,1,674,3); Add(1,20087,1,0,0,7227,100,2213,2,5349,1,5057,1,7063,300,674,3); Add(1,20065,1,0,0,7227,100,7095,100,7209,50,7319,100,2229,3,674,3); Add(1,20066,1,0,0,7227,100,7095,100,7209,50,7319,100,2229,3,674,3); Add(2,20068,1,0,0,7227,200,979,5,7445,150,993,200,674,1); Add(2,20069,1,0,0,7227,200,7161,150,983,10,7268,50,674,1); Add(2,20070,1,0,0,7227,200,7202,150,7291,20,970,50,674,1); Add(2,20072,1,0,0,7227,200,704,150,719,100,1054,100,674,1); Add(2,20073,1,0,0,7227,200,1053,150,702,150,2286,3,674,1); Add(2,20077,1,0,0,7227,200,2295,2,975,10,2276,5,746,100,674,1); Add(2,20096,1,0,0,7227,200,975,10,982,10,7036,20,7187,150,674,2); Add(2,20079,1,0,0,7227,200,2295,2,982,10,2276,5,746,100,674,1); // Add(3,20000,1,0,0,7227,200,7834,10,7837,15,7079,5); // Add(3,20001,1,0,0,7227,200,7091,10,7074,15,7089,5); // Add(3,20002,1,0,0,7227,200,7082,10,7085,20,7080,5); // Add(3,20003,1,0,0,7227,200,7090,15,7088,15,7075,5); // Add(3,20004,1,0,0,7227,200,7834,10,7837,15,7079,5); // Add(3,20005,1,0,0,7227,200,7091,10,7074,15,7089,5); // Add(3,20006,1,0,0,7227,200,7082,10,7085,20,7080,5); // Add(3,20007,1,0,0,7227,200,7090,15,7088,15,7075,5); // Add(3,20008,1,0,0,7227,200,7090,15,7088,15,7075,5); add(4,45008,1,0,0,7227,200,7090,15,7088,15,7075,5); Add(4,45009,1,0,0,7227,200,7834,10,7837,15,7079,5); Add(4,45010,1,0,0,7227,200,7091,10,7074,15,7089,5); Add(4,45011,1,0,0,7227,200,7082,10,7085,20,7080,5); Add(4,45012,1,0,0,7227,200,7090,15,7088,15,7075,5); Add(4,45013,1,0,0,7227,200,7834,10,7837,15,7079,5); Add(4,45014,1,0,0,7227,200,7091,10,7074,15,7089,5); Add(4,45015,1,0,0,7227,200,7082,10,7085,20,7080,5); Add(4,45016,1,0,0,7227,200,7090,15,7088,15,7075,5); Add(4,45017,1,0,0,7227,200,7090,15,7088,15,7075,5); Add(4,45018,1,0,0,7227,200,7090,15,7088,15,7075,5); // ----------------------------------------------------------- freeloop(0); set .menu$,""; for(set .@i,1; .@i<=getarraysize(.Shops$); set .@i,.@i+1) { set .menu$, .menu$+.Shops$[.@i]+":"; npcshopdelitem "qshop"+.@i,909; } end; OnMenu: set .@size, getarraysize(@i); if (!.@size) set @shop_index, select(.menu$); else if (.@size == 1) set @shop_index, @i[0]; else { for(set .@j,0; .@j<.@size; set .@j,.@j+1) set .@menu$, .@menu$+.Shops$[@i[.@j]]+":"; set @shop_index, @i[select(.@menu$)-1]; } deletearray @i[0],getarraysize(@i); if (.Shops$[@shop_index] == "") { message strcharinfo(0),"An error has occurred."; end; } dispbottom "Select one item at a time."; callshop "qshop"+@shop_index,1; npcshopattach "qshop"+@shop_index; end; OnBuyItem: // .@q[] : RewardID, BoughtAmt, RewardAmt, BaseAmt, ReqZeny, ReqPts, { ReqItem, ReqAmt, ... } setarray .@q[0],@bought_nameid[0],((@bought_quantity[0] > .MaxStack)?.MaxStack:@bought_quantity[0]); copyarray .@q[3],getd(".q_"+@shop_index+"_"+.@q[0]+"[0]"),getarraysize(getd(".q_"+@shop_index+"_"+.@q[0])); set .@q[2],.@q[1]*.@q[3]; if (!.@q[2] || .@q[2] > 30000) { message strcharinfo(0),"You can't purchase that many "+getitemname(.@q[0])+"."; end; } mes "[Quest Shop]"; mes "Reward: ^0055FF"+((.@q[2] > 1)?.@q[2]+"x ":"")+Slot(.@q[0])+"^000000"; mes "Requirements:"; disable_items; if (.@q[4]) mes " > "+Chk(Zeny,.@q[4]*.@q[1])+(.@q[4]*.@q[1])+" Zeny^000000"; if (.@q[5]) mes " > "+Chk(getd(.Points$[0]),.@q[5]*.@q[1])+(.@q[5]*.@q[1])+" "+.Points$[1]+" ("+getd(.Points$[0])+"/"+(.@q[5]*.@q[1])+")^000000"; if (.@q[6]) for(set .@i,6; .@i<getarraysize(.@q); set .@i,.@i+2) mes " > "+Chk(countitem(.@q[.@i]),.@q[.@i+1]*.@q[1])+((.ShowID)?"{"+.@q[.@i]+"} ":"")+Slot(.@q[.@i])+" ("+countitem(.@q[.@i])+"/"+(.@q[.@i+1]*.@q[1])+")^000000"; next; setarray @qe[1], getiteminfo(.@q[0],5), getiteminfo(.@q[0],11); if (@qe[2] > 0 && ((@qe[1] & EQP_HEAD_LOW) || (@qe[1] & EQP_HEAD_TOP) || (@qe[1] & EQP_HEAD_MID) || (@qe[1] & EQP_COSTUME_HEAD_TOP) || (@qe[1] & EQP_COSTUME_HEAD_MID) || (@qe[1] & EQP_COSTUME_HEAD_LOW) || (@qe[1] & EQP_GARMENT) || (@qe[1] & EQP_COSTUME_GARMENT))) set .@preview,1; addtimer 1000, strnpcinfo(0)+"::OnEnd"; while(1) { switch(select(" ~ Purchase ^0055FF"+getitemname(.@q[0])+"^000000:"+((.@preview && !@qe[7])?" ~ Preview...":"")+": ~ ^777777Cancel^000000")) { case 1: if (@qe[0]) { mes "[Quest Shop]"; mes "You're missing one or more quest requirements."; close; } if (!checkweight(.@q[0],.@q[2])) { mes "[Quest Shop]"; mes "^FF0000You need "+(((.@q[2]*getiteminfo(.@q[0],6))+Weight-MaxWeight)/10)+" additional weight capacity to complete this trade.^000000"; close; } if (.@q[4]) set Zeny, Zeny-(.@q[4]*.@q[1]); if (.@q[5]) setd .Points$[0], getd(.Points$[0])-(.@q[5]*.@q[1]); if (.@q[6]) for(set .@i,6; .@i<getarraysize(.@q); set .@i,.@i+2) delitem .@q[.@i],.@q[.@i+1]*.@q[1]; getitem .@q[0],.@q[2]; if (.Announce) announce strcharinfo(0)+" has created "+((.@q[2] > 1)?.@q[2]+"x "+getitemname(.@q[0]):callfunc("F_InsertArticle",getitemname(.@q[0])))+"!",0; specialeffect2 EF_FLOWERLEAF; close; case 2: setarray @qe[3], getlook(LOOK_HEAD_BOTTOM), getlook(LOOK_HEAD_TOP), getlook(LOOK_HEAD_MID), getlook(LOOK_ROBE), 1; if ((@qe[1] & 1) || (@qe[1] & 4096)) changelook LOOK_HEAD_BOTTOM, @qe[2]; else if ((@qe[1] & 256) || (@qe[1] & 1024)) changelook LOOK_HEAD_TOP, @qe[2]; else if ((@qe[1] & 512) || (@qe[1] & 2048)) changelook LOOK_HEAD_MID, @qe[2]; else if ((@qe[1] & 4) || (@qe[1] & 8192)) changelook LOOK_ROBE, @qe[2]; break; case 3: close; } } OnEnd: if (@qe[7]) { changelook LOOK_HEAD_BOTTOM, @qe[3]; changelook LOOK_HEAD_TOP, @qe[4]; changelook LOOK_HEAD_MID, @qe[5]; changelook LOOK_ROBE, @qe[6]; } deletearray @qe[0],8; end; function Add { if (getitemname(getarg(1)) == "null") { debugmes "Quest reward #"+getarg(1)+" invalid (skipped)."; return; } setarray .@j[0],getarg(2),getarg(3),getarg(4); for(set .@i,5; .@i<getargcount(); set .@i,.@i+2) { if (getitemname(getarg(.@i)) == "null") { debugmes "Quest requirement #"+getarg(.@i)+" invalid (skipped)."; return; } else setarray .@j[.@i-2],getarg(.@i),getarg(.@i+1); } copyarray getd(".q_"+getarg(0)+"_"+getarg(1)+"[0]"),.@j[0],getarraysize(.@j); npcshopadditem "qshop"+getarg(0),getarg(1),((.ShowZeny)?getarg(3):0); return; } function Chk { if (getarg(0) < getarg(1)) { set @qe[0],1; return "^FF0000"; } else return "^00FF00"; } function Slot { set .@s$,getitemname(getarg(0)); switch(.ShowSlot) { case 1: if (!getitemslots(getarg(0))) return .@s$; case 2: if (getiteminfo(getarg(0),2) == 4 || getiteminfo(getarg(0),2) == 5) return .@s$+" ["+getitemslots(getarg(0))+"]"; default: return .@s$; } } } function script qshop { deletearray @i[0],getarraysize(@i); for(set .@i,0; .@i<getargcount(); set .@i,.@i+1) set @i[.@i],getarg(.@i); doevent "quest_shop::OnMenu"; end; } // Dummy shop data -- copy as needed. //============================================================ - shop qshop1 -1,909:-1 - shop qshop2 -1,909:-1 - shop qshop3 -1,909:-1 - shop qshop4 -1,909:-1 like that one it will show qshop1 to 4 then i create new NPC will shop qshop 5 to 10 something like that can anyone help me on this thnx in advance
-
Q> about classes on GRF cos i cant understand it
AinsLord replied to AinsLord's question in General Support
does it affect the files transferring to data?? -
untradeable/sell/vend/drop/ item flag on customize cards question
AinsLord replied to AinsLord's question in General Support
bump! -
i want to import some of @Sae weapon sprites and its on english anyone can translate it so i can understand it thnx in advance
-
Stolao's Pvp Ladder [v3.1A]
AinsLord replied to Stolao's topic in PvP, GvG, WoE, Battleground Script Releases
where can i convert it to english?? Still The same issue for me -
Woe setter price bug when mailed to winners Euphys Woe Setter
AinsLord posted a question in Scripting Support
just like shows on the image its X its totally fixed when i do @item on it but on the mail it shows like that thnx for the help -
untradeable/sell/vend/drop/ item flag on customize cards question
AinsLord posted a question in General Support
is it possible that once the card is compounded on a certain equip the equipment became the cards item flags?? like on the item_trade.db coz ive tried it the custom card is restricted in all ways once the card is compounded it now can be dropped etc including the card on the equipment thnx in advance for some answers -
DB error duplicate entry problem about monster name
AinsLord replied to AinsLord's question in Database Support
thnx man -
[SQL]: DB error - Duplicate entry '$MonsterName$-0' for key 'PRIMARY' [Debug]: at mapreg.c:163 - INSERT INTO `mapreg`(`varname`,`index`,`value`) VALUES ('$MonsterName$','0','Knight Guardian') this is the error i got dunno where to find this advance thnx for the help
-
Extended Vending System [August 2016 | Renewal, Pre Renewal]
AinsLord replied to NilDigit's topic in Source Releases
patching file conf/battle/feature.conf patching file conf/msg_conf/map_msg.conf Hunk #1 succeeded at 1633 (offset 15 lines). patching file db/item_vending.txt patching file db/pre-re/item_db.txt patching file db/re/item_db.txt Hunk #1 FAILED at 11505. 1 out of 1 hunk FAILED -- saving rejects to file db/re/item_db.txt.rej patching file sql-files/upgrade_extended_vending_item.sql patching file src/map/battle.c Hunk #1 FAILED at 8331. 1 out of 1 hunk FAILED -- saving rejects to file src/map/battle.c.rej patching file src/map/battle.h Hunk #1 FAILED at 611. 1 out of 1 hunk FAILED -- saving rejects to file src/map/battle.h.rej patching file src/map/buyingstore.h patching file src/map/clif.c Hunk #1 succeeded at 12390 (offset 9 lines). Hunk #2 FAILED at 13038. Hunk #3 succeeded at 13091 (offset 19 lines). Hunk #4 succeeded at 17225 (offset -147 lines). 1 out of 4 hunks FAILED -- saving rejects to file src/map/clif.c.rej patching file src/map/clif.h Hunk #1 succeeded at 1026 (offset 23 lines). patching file src/map/itemdb.c Hunk #1 succeeded at 1174 (offset 22 lines). Hunk #2 succeeded at 1736 (offset 18 lines). Hunk #3 succeeded at 1854 (offset 30 lines). patching file src/map/itemdb.h Hunk #1 succeeded at 771 (offset 389 lines). Hunk #2 succeeded at 931 (offset 381 lines). patching file src/map/map.c Hunk #1 FAILED at 102. 1 out of 1 hunk FAILED -- saving rejects to file src/map/map.c.rej patching file src/map/pc.h Hunk #1 succeeded at 704 with fuzz 1 (offset 20 lines). patching file src/map/skill.c Hunk #1 succeeded at 7471 with fuzz 2 (offset 174 lines). Hunk #2 succeeded at 18090 (offset 50 lines). patching file src/map/skill.h Hunk #1 succeeded at 2167 (offset 25 lines). patching file src/map/vending.c Hunk #3 succeeded at 168 with fuzz 2. Hunk #5 FAILED at 327. Hunk #6 FAILED at 462. Hunk #7 succeeded at 611 with fuzz 2 (offset -12 lines). Hunk #8 succeeded at 642 (offset -12 lines). Hunk #9 succeeded at 673 (offset -12 lines). Hunk #10 succeeded at 683 (offset -12 lines). 2 out of 10 hunks FAILED -- saving rejects to file src/map/vending.c.rej i have the same issue as malicious and im using the very latest revision of rathena on git EDIT: i compiled it no error occurs on the console but no cart when i use whitesmith job and rent for cart no cart shows but able to vend -
any update for this im using the latest rev on github
-
Question About Expanded Vending system on latest rev of rathena
AinsLord posted a question in General Support
is it possible to apply that in the latest revision or rathena?? if yes is there any tutorials how to do it or RO server Owners need to pay for the src modification? if not then only old version or rathena can coz i have this rAmod w/c have that feature of doing extended vending system thnx for some answers -
im done Editing this 'ServerAddress' => 'http://www.New-WorldRO.com', // This value is the hostname:port under which Flux runs. (e.g., example.com or example.com:80) 'BaseURI' => '', // The base URI is the base web root on which your application lies. also this one <?php return array( // Example server configuration. You may have more arrays like this one to // specify multiple server groups (however they should share the same login // server whilst they are allowed to have multiple char/map pairs). array( 'ServerName' => 'New World RO', // Global database configuration (excludes logs database configuration). 'DbConfig' => array( //'Socket' => '/tmp/mysql.sock', //'Port' => 3306, //'Encoding' => 'utf8', // Connection encoding -- use whatever here your MySQL tables collation is. 'Convert' => 'utf8', // -- 'Convert' option only works when 'Encoding' option is specified and iconv (http://php.net/iconv) is available. // -- It specifies the encoding to convert your MySQL data to on the website (most likely needs to be utf8) 'Hostname' => 'xx.xxx.xxx.xx', 'Username' => 'axxxxxx', 'Password' => 'xxxxxxxxx', 'Database' => 'ragnarok', 'Persistent' => true, 'Timezone' => null // Example: '+0:00' is UTC. // The possible values of 'Timezone' is as documented from the MySQL website: // "The value can be given as a string indicating an offset from UTC, such as '+10:00' or '-6:00'." // "The value can be given as a named time zone, such as 'Europe/Helsinki', 'US/Eastern', or 'MET'." (see below continuation!) // **"Named time zones can be used only if the time zone information tables in the mysql database have been created and populated." ), // This is kept separate because many people choose to have their logs // database accessible under different credentials, and often on a // different server entirely to ensure the reliability of the log data. 'LogsDbConfig' => array( //'Socket' => '/tmp/mysql.sock', //'Port' => 3306, //'Encoding' => null, // Connection encoding -- use whatever here your MySQL tables collation is. 'Convert' => 'utf8', // -- 'Convert' option only works when 'Encoding' option is specified and iconv (http://php.net/iconv) is available. // -- It specifies the encoding to convert your MySQL data to on the website (most likely needs to be utf8) 'Hostname' => 'xx.xxx.xxx.xx', 'Username' => 'xxxxx', 'Password' => 'xxxxxxxx', 'Database' => 'ragnarok', 'Persistent' => true, 'Timezone' => null // Possible values is as described in the comment in DbConfig. ), // Login server configuration. 'LoginServer' => array( 'Address' => 'xx.xxx.xxx.xx', 'Port' => 6900, 'UseMD5' => false, 'NoCase' => true, // rA account case-sensitivity; Default: Case-INsensitive (true). 'GroupID' => 0, // Default account group ID during registration. //'Database' => 'ragnarok' ), 'CharMapServers' => array( array( 'ServerName' => 'New World RO', 'Renewal' => false, 'MaxCharSlots' => 9, 'DateTimezone' => null, // Specifies game server's timezone for this char/map pair. (See: http://php.net/timezones) //'ResetDenyMaps' => 'sec_pri', // Defaults to 'sec_pri'. This value can be an array of map names. //'Database' => 'ragnarok', // Defaults to DbConfig.Database 'ExpRates' => array( 'Base' => 100, // Rate at which (base) exp is given 'Job' => 100, // Rate at which job exp is given 'Mvp' => 100 // MVP bonus exp rate ), 'DropRates' => array( // The rate the common items (in the ETC tab, besides card) are dropped 'Common' => 100, 'CommonBoss' => 100, // The rate healing items (that restore HP or SP) are dropped 'Heal' => 100, 'HealBoss' => 100, // The rate usable items (in the item tab other then healing items) are dropped 'Useable' => 100, 'UseableBoss' => 100, // The rate at which equipment is dropped 'Equip' => 100, 'EquipBoss' => 100, // The rate at which cards are dropped 'Card' => 100, 'CardBoss' => 100, // The rate adjustment for the MVP items that the MVP gets directly in their inventory 'MvpItem' => 100 ), 'CharServer' => array( 'Address' => '127.0.0.1', 'Port' => 6121 ), 'MapServer' => array( 'Address' => '127.0.0.1', 'Port' => 5121 ), // -- WoE days and times -- // First parameter: Starding day 0=Sunday / 1=Monday / 2=Tuesday / 3=Wednesday / 4=Thursday / 5=Friday / 6=Saturday // Second parameter: Starting hour in 24-hr format. // Third paramter: Ending day (possible value is same as starting day). // Fourth (final) parameter: Ending hour in 24-hr format. // ** (Note, invalid times are ignored silently.) 'WoeDayTimes' => array( array(0, '12:00', 0, '14:00', "LOLZ"), // Example: Starts Sunday 12:00 PM and ends Sunday 2:00 PM array(2, '12:00', 2, '14:00', "LOLZ"), // Example: Starts Sunday 12:00 PM and ends Sunday 2:00 PM array(3, '12:00', 3, '14:00', "LOLZ"), // Example: Starts Sunday 12:00 PM and ends Sunday 2:00 PM array(1, '12:00', 1, '14:00', "LOLZ"), // Example: Starts Sunday 12:00 PM and ends Sunday 2:00 PM array(2, '12:00', 2, '14:00', "LOLZ"), // Example: Starts Sunday 12:00 PM and ends Sunday 2:00 PM array(5, '12:00', 5, '14:00', "LOLZ"), // Example: Starts Sunday 12:00 PM and ends Sunday 2:00 PM //array(3, '14:00', 3, '15:00') // Example: Starts Wednesday 2:00 PM and ends Wednesday 3:00 PM ), // Modules and/or actions to disallow access to during WoE. 'WoeDisallow' => array( array('module' => 'character', 'action' => 'online'), // Disallow access to "Who's Online" page during WoE. array('module' => 'character', 'action' => 'mapstats') // Disallow access to "Map Statistics" page during WoE. ) ) ) ) ); ?> is this the VPS mysql or the WebHosting mysql im confused sorry coz on my VPS IP there is the PHPmyadmin installed and on my WebHosting there is also a phpmyadmin so am i gonna put the IP of my VPS on HOSTNAME mysql user and pass on my VPS phpmyadmin? still doesnt appear the site Bump to this post sorry late info coz im still figuring out how to do this properly before asking again thnx for the help
-
changing @go 0 prontera to other map console error
AinsLord replied to AinsLord's question in Source Support
solved theres a conflict on NPC coordinates i forgot to take the full error codes i disabled the NPC and the error gone #CLOSE -
[Error]: script_rid2sd: fatal error ! player not attached! [Debug]: Function: warp (3 parameters): [Debug]: Data: string value="louyang" [Debug]: Data: number value=218 [Debug]: Data: number value=112 this is the error i got it went smoothly with the server it works fine but the error bugs me thnx in advance for help
-
-
[Config:Main] RootURL='https://www.praetoriaro.com/patcher/' RemoteConfigFile='main.ini' TimeOut=0 StatusFile='PraetoriaRO.dat' DefaultGRF='info.grf' ClientEXE='PraetoriaRO.exe' ClientParameter='-1rag1' FinishOnConnectionFailure=false [Config:Window] AutoResize=true Style='none' Width=500 Height=430 DragHandling=true Background='images/bg.jpg' FadeOnDrag=true [Config:BGM] File= Loop=true Volume=20 Directory= [Config:Misc] Title='PraetoriaRO Patcher' HideProgressBarWhenFinish=true [ProgressBar:bar1] Width=310 Height=20 Left=22 Top=385 BackColorStart=$009DEEEF BackColorEnd=$00C2F1F1 FrontColorStart=$006ED5B0 FrontColorEnd=$0080DDCA FrontImage= BackImage= Hook='ProgressChange' [Label:Status] AutoResize = false Width=310 Height= Left=20 Top=365 Alignment='center' FontColor=$ffffff FontName = '' FontSize = Text='' Hook='StatusChange' [NoticeBox:Box0] Width=310 Height=150 Left=20 Top=200 URL='https://www.praetoria.com/patcher/index.html' [Button:Start] Default='images/start1.png' OnHover='images/start2.png' OnDown='images/start3.png' Left=383 Top=211 Hook='Start' [Button:Exit] Default='images/Exit1.png' OnHover='images/Exit2.png' OnDown='images/Exit3.png' Left=383 Top=244 Hook='Exit' [Button:Cancel] Default='images/Exit1.png' OnHover='images/Exit2.png' OnDown='images/Exit3.png' Left=383 Top=211 Hook='Cancel' try this on your config.ini re compile you thor patcher with this
-
Drop rate problem some cards/weapon/armor are 0.01% some are 100%
AinsLord posted a question in General Support
how to make all cards/weapon/armor are 100% drop rate including MVP cards i already edit the drops.conf change it to this // The rate the common items are dropped (Items that are in the ETC tab, besides card) item_rate_common: 1000000 item_rate_common_boss: 1000000 item_drop_common_min: 1 item_drop_common_max: 10000 // The rate healing items are dropped (items that restore HP or SP) item_rate_heal: 1000000 item_rate_heal_boss: 1000000 item_drop_heal_min: 1 item_drop_heal_max: 10000 // The rate at which usable items (in the item tab) other then healing items are dropped. item_rate_use: 1000000 item_rate_use_boss: 1000000 item_drop_use_min: 1 item_drop_use_max: 10000 // The rate at which equipment is dropped. item_rate_equip: 1000000 item_rate_equip_boss: 1000000 item_drop_equip_min: 1 item_drop_equip_max: 10000 // The rate at which cards are dropped item_rate_card: 1000000 item_rate_card_boss: 1000000 item_drop_card_min: 1 item_drop_card_max: 10000 here's the Rate print screen as show on the image MVP drops are x1 thnx in advance EDIT: I was able to fix it i check the rathena on github and ive notice theres an update // The rate the common items are dropped (Items that are in the ETC tab, besides card) item_rate_common: 1000000 item_rate_common_boss: 1000000 item_rate_common_mvp: 1000000 item_drop_common_min: 1 item_drop_common_max: 10000 // The rate healing items are dropped (items that restore HP or SP) item_rate_heal: 1000000 item_rate_heal_boss: 1000000 item_rate_heal_mvp: 1000000 item_drop_heal_min: 1 item_drop_heal_max: 10000 // The rate at which usable items (in the item tab) other then healing items are dropped. item_rate_use: 100000 item_rate_use_boss: 1000000 item_rate_use_mvp: 1000000 item_drop_use_min: 1 item_drop_use_max: 10000 // The rate at which equipment is dropped. item_rate_equip: 1000000 item_rate_equip_boss: 1000000 item_rate_equip_mvp: 1000000 item_drop_equip_min: 1 item_drop_equip_max: 10000 // The rate at which cards are dropped item_rate_card: 1000000 item_rate_card_boss: 1000000 item_rate_card_mvp: 1000000 item_drop_card_min: 1 item_drop_card_max: 10000 i've change the old drops.conf to this thnx -
Item_db search warning does not exist in item_db in console
AinsLord posted a question in General Support
this is the error shown dunno where to look at this i dont recognize adding some item ID on some NPC can anyone help me with this thanx -
Help On CTP event No errors but GM lvl 99 Cant access the NPC
AinsLord posted a question in Scripting Support
//======Name======================================== // Click The Pub! //======Version===================================== // 1.0 //======Author(s)=================================== // Sandbox //======Comments==================================== // This simple event will create an NPC chatroom upon // starting, the first player to enter the chat room // will be declared winner. //================================================== morocc,124,101,5 script Click The Pub 78,{ end; if(!.AM) { if(getgroupid() > 99) { mes "Hello! Do you want to start the event?"; next; close; mes "Thank you!"; goto OnCTPStart; close; } } OnInit: //Set the Prize's Item ID, followed by amount"; setarray .Prize[0],7227,2; //Set 1 for Automated, 0 for Manual .AM = 0; //If automated, set number of hours to repeat it. Default: 1 hour .Repeat = 1; if(!.AM) end; OnCTPStart: if(.AM && !agitcheck() && !agitcheck2()) { sleep .Repeat*600000; enablenpc strnpcinfo(1); } announce "Click The Pub event will start in a few seconds!",0; sleep 2000; announce "Gather around morocc 124 101!",0; sleep 2000; announce "This event will give a prize to the player who enters my Pub first!",0; sleep 2000; announce "Ready...!",0; for(.@i = 10; .@i > 0; .@i--) { announce .@i,0; waitingroom .@i,0; sleep 1000; delwaitingroom; } announce "Go! Go! Go!",0; waitingroom "Click Me!",2,strnpcinfo(1)+"::OnFirstClick",1; end; OnFirstClick: warpwaitingpc "morocc",124,101,1; announce rid2name($@warpwaitingpc[0])+" won the Click The Pub event!",0; getitem .Prize[0],.Prize[1]; delwaitingroom; disablenpc strnpcinfo(1); if(.AM) goto OnCTPStart; end; } dunno what seems to be the problem no errors shows on the console thnx in advance -
dunno where to locate the txt file to remove it no novice.txt inside /jobs/novice/novice.txt what i see is the supernovice.txt please help thnx
-
Next NPC doesnt show after completion of BTS 1st NPC QUest
AinsLord replied to AinsLord's question in Scripting Support
owwwww thnx man -
incorrect use of close command error showed on putty
AinsLord replied to AinsLord's question in Scripting Support
@Emistry why do i get warning its been 24 hrs b4 i bump on this.. i posted this 7pm saturday i bumped 8pm sunday that morethan 24hrs why?? well nvm