nuna
-
Content Count
136 -
Joined
-
Last visited
-
Days Won
1
Posts posted by nuna
-
-
Example: during woe. I would like to record all the break announcement that can be seen on an npc.
Npc will show:
[NPCname]
Kriemhild castle has been conquered by playername1 of the guildname1.
close;
-
Does anyone has the script for the longest agit defender? wherein every second of defending the agit counts.
Here's the criteria of what i'm looking for:
- An npc in which shows the Top 10 Longest Agit Defender
the npc will show somehow like this:
[Top 10 Longest Agit Defender] Top 1: Ganja Guild : 10 minutes 14 seconds // top 1: <guild name> : <defending time> Top 2: Ganja2 Guild : 8 minutes 10 seconds // top 2: <guild name> : <defending time> //and so on. . . . //not a matter of points, but a matter of time on how long does the guild defend their castle
- after clicking 'next' it will also show the Longest Agit Defender of the Day which resets after woe
[ Longest Agit Defender of the Day ] September 24, 2015 - Kriemhild //<date of defend> - <defended castle name> - Ganja Guild - 10 minutes 12 seconds // //- <guild name> : <defending time>
Credits to: https://rathena.org/board/topic/103232-request-longest-agit-defender-script/
Message me asap and lets talk
-
Hello everyone.
Im having problem with this https://github.com/dastgir/HPM-Plugins/blob/master/NPC/security.txt
whenever i tried the max failed attempt which is 3. The character will not be banned.
Also the chatlog shown charname doesnt exist.
Hope anyone can fix it and make it @kick instead of ban.
already did change atcommand "@ban +"+.ban_hour+"h \""+strcharinfo(0)+"\""; //Ban the Player for 1 hour.
with atcommand "@kick \""+strcharinfo(0)+"\""; //Ban the Player for 1 hour.
but no luck.
Thanks in advance!
-
hello how can i add announce on specific item if get and make it have amount value?
function script boxrandom { setarray .@reward, 607, 60, 612, 10, 611, 10, 608, 10, 678, 5, 675, 5; set .@size, getarraysize( .@reward ); for( set .@i, 1; .@i < .@size; .@i += 2 ) { .@percent[.@i] = .@total + .@reward[.@i]; .@total += .@reward[.@i]; } .@r = rand( .@total +1 ); for( set .@i, 1; .@i < .@size; .@i += 2 ) if( .@percent[.@i] > .@r ) break; getitem .@reward[ .@i-1 ], 1; end; }
how can i add also on what amount per item? example since 612 - id name and 10 is the chance. please help me to make it 612,1->amount,10->chance
Example i want the id number 678 if get to be announce" char name got 1x Poison bottle "
-
You want the player to get only one item? Your percents make a total of 154% ...
list of items,qty / Chance
607,5 50%
608,6 52%
678,4 50%
672,1 2%
Try this:
.@rnd = rand(154); if (.@rnd < 50) { getitem(607, 5); } else if (.@rnd < 102) { getitem(608, 6); } else if (.@rnd < 152) { getitem(678, 4); } else { getitem(672, 1); }
Yes i only want player to get any 1 items of the list with chance sir thanks a lot
-
here, I made this for you:
<map>,<x>,<y>,<dir> script <name> <sprite>,{ mes("Hi there."); mes("Can I help you?"); next(); select("claim reward"); mes("..."); next(); for (.@i = 0; .@i < .reward_len; .@i += 3) { if (rand(100) < .reward[.@i + 2]) { getitem(.reward[.@i], .reward[.@i + 1]); mesf("You obtained %i %s.", .reward[.@i + 1], getitemname(.reward[.@i])); .@reward = true; // got at least one reward next(); } } if (.@reward != true) { mes("It seems you're out of luck."); next(); } mes("Come back anytime!"); close; OnInit: setarray(.reward[0], //ID,QTY,% 607, 5, 50, 608, 6, 52, 678, 4, 50, 672, 1, 2); .reward_len = getarraysize(.reward); }
hope it helps
UPDATE: added reward_len (sorry, forgot that)
Hello sir thank you but how can i make it only 1 can get?
-
Hello may i request for some script like
for example
npc to claim item but in random chance.
list of items,qty / Chance
607,5 50%
608,6 52%
678,4 50%
672,1 2%
something like that.
Thank you in advance
-
Thank you again sir
-
add this mapflag: loadevent
then do something like:
OnPCLoadMapEvent: if (strcharinfo(PC_MAP) == "moc_fild22" && !@auth_moc_fild22) { warp("SavePoint", 0, 0); // player is not authorized to be on moc_fild22 } end;
and in the npc that warps the player to that map you'd just set @auth_moc_fild22 to true and warp to moc_fild22
Thanks a lot!!!!
-
Help please bump bump
-
Not sure I understand what you're asking for.. You want the player to be teleported to their savepoint when they pay some amount of zeny?
If so you would do the following:
if (Zeny >= .@cost) { Zeny -= .@cost; warp("SavePoint", 0, 0); }
With .@cost being the amount of zeny to substract
no sir haha but thanks anyway. I want the player all player to be restricted in payon : Just example. lets make it moc_fild22
i want moc_fild22 to be unwarpable or if anyplayers tries to warp or go to moc_fild22 then they will automatically go back to their savepoints.
-
Hello may i request if you warp on payon then you go back to your savepoint thank you!!!
-
query_sql "SELECT `char`.char_id,`char`.`name`, global_acc_reg_num_db.`value` FROM global_reg_value LEFT JOIN `char` ON global_reg_value.char_id=`char`.char_id WHERE global_reg_value.str='brokeemp' ORDER BY CAST(`global_reg_value`.`value` AS UNSIGNED) DESC LIMIT 10", .@char_id, .@name$, .@count;
i already tried to change it to char_reg_num_db but still its having error.
im trying to remake a ladder with this script
for( set .@x,0; .@x<=9; set .@x,.@x+1 ) { mes "^0000FF"+(.@x+1)+".^000000 "+.@name$[.@x]+" - ^FF0000"+.@count[.@x]+"^000000 Point(s)"; } // .@x starts at 0, but you want to start with '1st', so use (.@x+1)
Thank you in advance!
-
Hello everyone how can i remove the bentdown of asura
Currently i am having this error: http://herc.ws/board/topic/4520-body-reloc-client-crash-while-usingequipped-some-headgears/
I can't update client since my server is already live.
im using 20121410
Now i just want my asura to doesnt have bent down after casting it.
Other term for bentdown ( Punching Floor )
Thank you in advance.
-
Where can i download the source code for voting sites just like topragnarok.com or other like topg.org
I want to make one is there any free release?
Note: I am not advertising any website or server here
-
NB
make it
OnBuyItem: disable_items();
and you wont be able to equip or enquip items during the buy/preview
It only work upon reloading the script. but upon starting the server it wont work. Hope you get my point
hmm~
-
make it
OnBuyItem: disable_items();
and you wont be able to equip or enquip items during the buy/preview
It only work upon reloading the script. but upon starting the server it wont work. Hope you get my point
-
put it under OnBuyItem
Hello sir it doesnt work.
Hercules/conf/map/battle/items.conf
item_enabled_npc: true -> false
Thanks but i only want it in the script not in global.
-
On phone and not having the script here, usually in raw very first line of the npc
//===== Hercules Script ====================================== //= Euphy's Quest Shop //===== By: ================================================== //= Euphy //===== Current Version: ===================================== //= 1.6a //===== 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. //============================================================ // Shop NPCs -- supplying no argument displays entire menu. // callfunc "qshop"{,<shop ID>{,<shop ID>{,...}}}; //============================================================ prontera,164,203,6 script Quest Shop#1 4_M_MOCASS2,{ callfunc "qshop"; } // Script Core //============================================================ - script quest_shop FAKE_NPC,{ function Add; function Chk; function Slot; function A_An; 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],"Headgears","Weapons","Other"; // ----------------------------------------------------------- // 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,5022,1,0,0,7086,1,969,10,999,40,1003,50,984,2); Add(1,5032,1,0,0,1059,250,2221,1,2227,1,7063,600); Add(1,5027,1,0,0,2252,1,1036,400,7001,50,4052,1); Add(1,5045,1,0,0,2252,1,1054,450,943,1200); Add(2,1224,1,0,0,7297,30,969,10,999,50,714,10); Add(2,1225,1,0,0,7292,30,969,10,999,50,714,10); Add(3,531,1,3,0,512,1,713,1); Add(3,532,1,3,0,513,1,713,1); Add(3,533,1,3,0,514,1,713,1); Add(3,534,1,3,0,515,1,713,1); // ----------------------------------------------------------- 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 .@i, select(.menu$); else if (.@size == 1) set .@i, @i[0]; else { for(set .@j,0; .@j<.@size; set .@j,.@j+1) set .@menu$, .@menu$+.Shops$[@i[.@j]]+":"; set .@i, @i[select(.@menu$)-1]; } deletearray @i[0],getarraysize(@i); if (.Shops$[.@i] == "") { message strcharinfo(PC_NAME),"An error has occurred."; end; } dispbottom "Select one item at a time."; callshop "qshop"+.@i,1; npcshopattach "qshop"+.@i; 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_"+.@q[0]+"[0]"),getarraysize(getd(".q_"+.@q[0])); set .@q[2],.@q[1]*.@q[3]; if (!.@q[2] || .@q[2] > 30000) { message strcharinfo(PC_NAME),"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:"; 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] & 1) || (@qe[1] & 256) || (@qe[1] & 512) || (@qe[1] & 1024) || (@qe[1] & 2048) || (@qe[1] & 4096) || (@qe[1] & 4) || (@qe[1] & 8192))) set .@preview,1; addtimer 1000, strnpcinfo(NPC_NAME)+"::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]) 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(PC_NAME)+" has created "+((.@q[2] > 1)?.@q[2]+"x "+getitemname(.@q[0]):A_An(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(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 A_An { setarray .@A$[0],"a","e","i","o","u"; set .@B$, "_"+getarg(0); for(set .@i,0; .@i<5; set .@i,.@i+1) if (compare(.@B$,"_"+.@A$[.@i])) return "an "+getarg(0); return "a "+getarg(0); } } 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 FAKE_NPC,909:-1 - shop qshop2 FAKE_NPC,909:-1 - shop qshop3 FAKE_NPC,909:-1 - shop qshop4 FAKE_NPC,909:-1 - shop qshop5 FAKE_NPC,909:-1
Hello thank you please check the code now hehe
-
if the issue comes only when you equip or unequip a hat then adding a
disable_items();
should fix it
Thank you for the solution, but may i ask where should i put that. What line?
-
This on herc is a pretty old version, isn't it fixed in the new ones? Maybe we should update it too.
And as the others said, how are we supposed to provide support without knowing how to perform the exploit?
Ok heres how you do it. First prepare your normal hat (You want to function like a costume) then go the the quest shop npc. Buy headgear and choose preview. After choosing preview, unequip your hat then choose cancel. (the normal hat display will remain in your character. )
Another is uniquip your hat. Choose preview then after choosing preview. Equip your normal hat then choose cancel. even though you have equipped costume and normal hat,
still your character display will not display any headgears at all.
-
-
-
Hello everyone. the quest_shop.txt npc of euphys has a bug.
Preview bug.
Players can make the normal item as a costume by using the preview option.
Since i dont like it to be exploit. For the Scripter Hercules community. Please send me a message and i will let you know the steps on how to perform the minor bug.
How to add quest delay? or NPC talk delay per character
in Script Requests
Posted
Example I want to get item to one npc and it will require 1 hr again to get or talk to him. (Timer will count even you log out)
Thanks!!