Emistry

Support Leaders
  • Content count

    514
  • Joined

  • Last visited

  • Days Won

    14

Emistry last won the day on March 7

Emistry had the most liked content!

About Emistry

  • Rank
    Advanced Member

Contact Methods

  • Website URL
    https://www.facebook.com/Emistry1991/
  • Skype
    emistry_haoyan

Profile Information

  • Gender
    Male
  • Location:
    Malaysia
  • Interests
    write NPC scripts.
  • Emulator:
    Hercules
  • Github
    Emistry

Recent Profile Visitors

6406 profile views
  1. perhaps a new instance type for clan? we got type for char, party, guild, why not a new clan type? just attach the clan id, and everyone from the same clan will be able to join. if you mean who being the leader in the instance, i dont think its a mandatory to have one.
  2. callfunc( "F_CheckWeight", Knife, 1, 1000 ); function F_CheckWeight { .@itemid = getarg(0, Knife); .@amount = getarg(1, 1); .@weight = getarg(2, 1000); return (checkweight(.@itemid, .@amount) && MaxWeight - Weight < .@weight); } and callfunc( "F_CheckWeight2", .@array_nameid, .@array_amount, 1000 ); function F_CheckWeight2 { .@weight = getarg(2, 1000); return (checkweight2(getarg(0), getarg(1)) && MaxWeight - Weight < .@weight); } something like these i guess...
  3. https://github.com/HerculesWS/Hercules/blob/master/conf/global/console.conf#L60-L66
  4. sometime, I just don't understand why must official server check for Knife or 1000 weight but not the target item/weight
  5. @Eternity official script, but custom. @Will Su link are available in the description below the video.
  6. [RO] Central Lab Laboratory Available soon ...
  7. similar / related issue. https://github.com/HerculesWS/Hercules/issues/1221
  8. Hey, Rokimoki. It's been awhile since I last saw you in forum (probably back in eA forum) Some tips for you to improve it, if you want. 1. query_sql("SELECT `char_id` FROM `custom_pvprank` WHERE `char_id` = " + getcharid(0) + ";", .@flag[0]); if (!.@flag[0]) { // create kill_count query_sql("INSERT INTO `custom_pvprank` (char_id, kill_count) VALUES ('" + getcharid(0) + "','" + kill_count + "');"); } else { // update kill_count query_sql("UPDATE `custom_pvprank` SET `kill_count` = " + kill_count + ";"); } this part can actually be simplified into 1 query.. which is INSERT INTO..... ON DUPLICATE KEY UPDATE ..... but, you have to set the `char_id` as primary key for the table. Since the ladder only store 1 row per characters, so you won't need to worry on duplicate `char_id`. Anyway you already made it as primary key... 2. cleararray .@players$[0], "", 10; // defining 10 positions cleararray .@kill_count[0], 0, 10; if (strcmp(.@players$[.@i], "") == 0) break; // if some is empty, stop printing these are not really necessary .... those npc scope variable will be auto cleared once the conversation with the NPC ended. char name shall never be empty unless somewhere in your query gone wrong... but yet you can skip this by adding another checking in the query which is better if you really need it. another reason for that would be, IF it happen one of the player having empty name, the ranking display will be a mess. 3. getmapxy(.@map$,.@x,.@y,0); since the .@x and .@y variable are not used, you can actually replace the getmapxy() into strcharinfo(3) which work the same, return the current map name. 4. if (rid2name(killedrid) == strcharinfo(0)) { // prevent suicide for gaining points can be replace by this ... if ( killedrid == getcharid(0) ) 5. sleep 50; haha, you dont really need to update the waitingroom display that frequent, it keep resources. 1 seconds are better
  9. [RO] Pirate Ship Rescue Instance A pirate ship was assaulted by a groups of fearsome Sea King Monsters during the sail. The ship wrecked nearby the North area of Izlude. The captain manage to get to the Izlude town and seek for rescue. According to the Captain, the ship are heavily damaged. Players may get hurt caused by the swinging ship. Several Safety Wall will be casted from time to time to protect the players. Player have to stay within the Safety Wall, or he probably will die from serious injuries. The Sea King monsters will surround the ship and try to destroy it. So there are a time limit each round when the monsters appeared. Players have to defeat all the monsters within the time limit or the ship will be damaged and end up the quest failed.
  10. Reason to support implementation: as we can see here ... https://github.com/rathena/rathena/commit/d84d6ba I guess it's gonna be good to see it implement the job restriction within the map_zone that herc have? seem like required in WOE:TE ... or we could say that it come in handy to implement the WOE:TE?
  11. i got something similar that I made few years ago... it's based on Guild Rank/Position. http://upaste.me/27b6e4 leader can setup which position/rank can access the storage. no password are required.
  12. @GM Fenrir just a rough guess, probably the issue is caused by these line donpcevent "LMS_NPC::OnCheck";
  13. [RO] Auction NPC An Auction NPC that create an auction-based event. The NPC will randomly pick an item from the list that setup by GM and use it as the auction item. Player are required to place their highest possible Zeny bet to get the item. Each bidding have time limit, so player will have to bid it before time run out. When the Auction ended, the system will auto calculate who are the latest bid with highest bid amount, and the item will be assigned to the player. Player will be able to retrieve the item from the NPC once he pay the full amount of Zeny he bet previously. Idea from : Daifuku @ www.fb.com/daifukuservices/