-
Content Count
9,447 -
Avg. Content Per Day
3 -
Joined
-
Days Won
239
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Everything posted by Emistry
-
itemdb_readdb: Invalid format (Script column) in line 111
Emistry replied to Get Backers's question in Database Support
....{ if (compare(strcharinfo(3), "dbroom") || compare(strcharinfo(3), "06guild")) { delitem 604,1; monster "this",-1,-1,"--ja--",-1,1,""; } else { dispbottom "This item cannot be used within this are. please use the db room!"; } },{},{} by default, script column could only support up to 1000 characters. -
[email protected] = 10; monster "prontera",0,0,"Quest Poring",1002,[email protected],"NPCNAME::OnPoringKilled"; copyarray [email protected]_gid, [email protected], [email protected]; for ([email protected] = 0; [email protected] < [email protected]; [email protected]++) { getunitdata [email protected]_gid[[email protected]], [email protected]; if ([email protected][UMOB_MODE] & MD_AGGRESSIVE) setunitdata [email protected]_gid[[email protected]], UMOB_MODE, ([email protected][UMOB_MODE] - MD_AGGRESSIVE); }
-
prontera,155,181,5 script Sample 757,{ switch(select("I want to check shop", "I'm good thank you..")) { case 1: callshop "woe_shop",4; end; case 2: mes "Thats good to hear!"; break; } close; OnInit: // Shop items: <ID>,<point cost> setarray .Shop, 4001,1, 4004,1, 4033,1, 4196,1, 4197,25, 4054,50, 4174,75, 4047,100; npcshopdelitem "woe_shop",909; for([email protected]=0; [email protected]<getarraysize(.Shop); [email protected]+=2) npcshopadditem "woe_shop",.Shop[[email protected]],.Shop[[email protected]+1]; end; } - pointshop woe_shop -1,#WOEPOINTS,909:-1
-
number doesn't need concatenation. query_sql("UPDATE `char` SET `quest_points` = `quest_points` + 10, `E` = `E` + 1 WHERE `char_id` = "+getcharid(0));
-
Item recipe to craft items, like other MMORPGS
Emistry replied to kalyst001's question in Script Requests
// ...{ callfunc("F_CraftItem", <receipt_itemid>, <reward_itemid>, <required_item>, <required_amount>...); } // ...{ callfunc("F_CraftItem", 501, 5022, 5001, 1, 5002, 1); } make a usable with the item script above. and load the following function script function script F_CraftItem { [email protected] = getargcount(); for ([email protected] = 2; [email protected] < [email protected] - 1; [email protected] += 2) { if (countitem(getarg([email protected])) < getarg([email protected] + 1, 0)) return; } delitem getarg(0), 1; for ([email protected] = 2; [email protected] < [email protected] - 1; [email protected] += 2) delitem getarg([email protected]), getarg([email protected] + 1, 0); getitem getarg(1), 1; return; } -
prontera,155,181,5 script Sample 757,{ if (getcharid(3) >= 2000001 && getcharid(3) <= 2000003) { switch(select("Warp", "Change Password")) { case 1: warp "prontera", 155, 180; end; case 2: mes "Enter new password."; input [email protected]_password$; if (getstrlen([email protected]_password$) < 5 || getstrlen([email protected]_password$) > 30) { mes "Between 5 ~ 30 characters."; } else { if (.md5) { [email protected]_password$ = "MD5('"[email protected]_password$+"')"; } else { [email protected]_password$ = "'"[email protected]_password$+"'"; } query_sql("UPDATE `login` SET `user_pass` = "[email protected]_password$+" WHERE `account_id` = "+getcharid(3)+" LIMIT 1"); } break; } close; } end; OnInit: .use_md5 = 1; waitingroom "Warper", 0; end; }
-
OnUpdate: if(checkvending()) { dispbottom "Hourly Point disabled."; end; } ... ...
-
Script that make you big when transformed
Emistry replied to AsurielRO's question in Script Requests
autobonus "{ callfunc "F_BlackKingBar"; }",500,10000,BF_WEAPON; function script F_BlackKingBar { atcommand "@effect 123456"; // TODO: change to enlarge effect. sleep2 10000; atcommand "@effect 123456"; // TODO: repeat to end the effect. end; } i don't remember which effect allow user to growth in size. find the id and change it. -
Old hunter quest running on latest pre re rev rathena
Emistry replied to Mirakol's question in Scripting Support
donpcevent "Ev_HntRm"; donpcevent "Ev_HntRm2"; donpcevent(...) suppose to trigger an event label within a NPC script, it should be npc name + event label name, not just npc name. and event label name should start with "OnXXXXX", follow the naming convension. -
just use any website that allow you to convert hex color code into rgb https://color-hex.org/color/c6a518
-
if the script are making use of gvg_castle mapflag to create the emperium test area, then you need a guild with that skill to be able to hit the emperium. otherwise you had to remove the mapflag, but this will end up spamming your map-server with warning since emperium doesn't spawn in any other maps. work around would be create a new emperium monster using new mob id and remove that guild checking.
-
shut down server, and execute these queries. UPDATE `cart_inventory` SET `option_id0` = 0,`option_val0` = 0,`option_parm0` = 0,`option_id1` = 0,`option_val1` = 0,`option_parm1` = 0,`option_id2` = 0,`option_val2` = 0,`option_parm2` = 0,`option_id3` = 0,`option_val3` = 0,`option_parm3` = 0,`option_id4` = 0,`option_val4` = 0,`option_parm4` = 0; UPDATE `guild_storage` SET `option_id0` = 0,`option_val0` = 0,`option_parm0` = 0,`option_id1` = 0,`option_val1` = 0,`option_parm1` = 0,`option_id2` = 0,`option_val2` = 0,`option_parm2` = 0,`option_id3` = 0,`option_val3` = 0,`option_parm3` = 0,`option_id4` = 0,`option_val4` = 0,`option_parm4` = 0; UPDATE `inventory` SET `option_id0` = 0,`option_val0` = 0,`option_parm0` = 0,`option_id1` = 0,`option_val1` = 0,`option_parm1` = 0,`option_id2` = 0,`option_val2` = 0,`option_parm2` = 0,`option_id3` = 0,`option_val3` = 0,`option_parm3` = 0,`option_id4` = 0,`option_val4` = 0,`option_parm4` = 0; UPDATE `mail_attachments` SET `option_id0` = 0,`option_val0` = 0,`option_parm0` = 0,`option_id1` = 0,`option_val1` = 0,`option_parm1` = 0,`option_id2` = 0,`option_val2` = 0,`option_parm2` = 0,`option_id3` = 0,`option_val3` = 0,`option_parm3` = 0,`option_id4` = 0,`option_val4` = 0,`option_parm4` = 0; UPDATE `storage` SET `option_id0` = 0,`option_val0` = 0,`option_parm0` = 0,`option_id1` = 0,`option_val1` = 0,`option_parm1` = 0,`option_id2` = 0,`option_val2` = 0,`option_parm2` = 0,`option_id3` = 0,`option_val3` = 0,`option_parm3` = 0,`option_id4` = 0,`option_val4` = 0,`option_parm4` = 0;
-
How to set ubreakable weapon and equps not PVP and not GVG map
Emistry replied to Ro Classic's question in Database Support
doc/item_bonus.txt#L419-L425 bonus bUnbreakableGarment; Garment cannot be damaged/broken by any means bonus bUnbreakableWeapon; Weapon cannot be damaged/broken by any means bonus bUnbreakableArmor; Armor cannot be damaged/broken by any means bonus bUnbreakableHelm; Helm cannot be damaged/broken by any means bonus bUnbreakableShield; Shield cannot be damaged/broken by any means bonus bUnbreakableShoes; Shoes cannot be damaged/broken by any means bonus bUnbreakable,n; Reduces the break chance of all equipped equipment by n% and db/pre-re/item_noequip.txt or db/re/item_noequip.txt -
just duplicate the script for each town or maps, and rename the npc variable (albertaquest) so that its unique to each other.
-
You didnt have the required .act file in your data folder or grf.
-
increase the inventory name letter.
-
Is possible to let players lost items from their bag after being killed?
Emistry replied to ladulala's question in Script Requests
You can add the nightmare mapflag to the map you want. npc/mapflag/nightmare.txt -
What's the point of this changes? if drop rate is 0% ... it meant the monster will never drop it, as if the item drops weren't added to the monster. Your changes probably messed up with the calculation part (value divide by 0) and caused server crashed.
-
how to change NPC message Window text alignment from left to right?
Emistry replied to emadkm's question in Scripting Support
try change your clientinfo servicetype to uae, and langtype 19 -
you have disabled or removed the npc.... enable the NPC or remove it from the script ...
-
7140,Seed_Of_Life,Seed of Life,0,600,,10,,,,,,,,,,,,,{ input [email protected]$; atcommand "@unjail " + [email protected]$; },{},{} you almost did it, except the missing semi colon;
-
check the wav folder inside the data.grf, its all there.
-
a slightly more optimized version... alberta,220,42,3 script CardTrader 60,{ mes "Exchange Cards:"; for ([email protected] = 0; [email protected] < .cards_size; [email protected]++) { mes "~ "+getitemname(.cards[[email protected]]); if (!countitem(.cards[[email protected]]) [email protected]++; } if ([email protected]) { next; mes "[Card Trader]","Congratz you have all cards."; for ([email protected] = 0; [email protected] < .cards_size; [email protected]++) delitem .cards[[email protected]], 1; mes "You gained:"; for ([email protected] = 0 ; [email protected] < .price_size; [email protected] += 2) { mes "~ "+.prize[[email protected]+1]+"x "+getitemname(.prize[[email protected]]); getitem .prize[[email protected]],.prize[[email protected]+1]; } } close; OnInit: setarray .cards,4001,4002,4003,4004; // Card ID list setarray .prize,909,3,901,5; // <ITEM ID><AMOUNT>{<ITEM ID><AMOUNT>....} .cards_size = getarraysize(.cards); .price_size = getarraysize(.prize); end; }
-
Warning Unexpected type for argument 1
Emistry replied to LearningRO's question in Scripting Support
try change if(!getarg(0,0)&&!getarg(1,0)) into if (getargcount() < 2)