Jump to content


Forum Moderator
  • Posts

  • Joined

  • Days Won


Files posted by Emistry

  1. Free

    Item Collector NPC / Item Sink Strategy

    Introduction :
    The NPC is designed to accept items from players, with contributions being non-recoverable but meticulously logged. A straightforward ranking system showcases players based on their item contributions. Game Masters have the flexibility to leverage and reset these rankings for custom events or creative initiatives at their discretion.

    **  Consider this a deviously delightful item sinking event for your server, complete with devilish flair and strategic mischief. 



  2. Free

    Build Manager

    A NPC that allow your Characters to Switch Build from time to time.
    Players are able to save his current status build , so that he/she can switch back to the saved build whenever he/she want.
    Players no need to keep memorize their status build upon changed.
    Configuration :
    // maximum build player can store (0 = disable) .max_build = 3; // check player weight limit before switching stat (0 = disable) .check_weight_limit = 1;  



  3. Free

    Class Restriction

    This is a script that Prevent / Block certain job from entering specific maps.
    Configuration : (v2)
    Refer to db/[pre-]re/job_noenter_map.txt



  4. Free

    Healer - Selective Buff

    A healer that allow player to receive the buffs they want.
    Player could decide the combination of buff they want.

    * Notes: For demo purpose, I only write a simple script to demo the rough idea, imagine the buff system you could do with your own creative imagination. 
    Feel free to share with us if you have any nice idea.



  5. Free

    Manage @alootid - @alootid2

    Due to the limitation of alootid that can only loot up to 10 items by default. (can change at /src/).
    However players are always greedy, they want to loot almost everything, but not every items, so 10 slots can't fill their desires.
    So this custom manager are introduced.
    It help player to setup different combination of alootid settings. (Different hunting monster/maps could switch to different settings) player no longer worry what their previous alootid settings was. player can switch/save any settings whenever they want. alootid settings could be auto loaded when they join the game. * In short, just a macro to use to the alootid atcommand. To make it less confusing to player, disable the alootid and start using alootid2 instead.
    @alootid2 list @alootid2 <save/add/remove> <#> <item1> ... <item10> @alootid2 <load/clear/reset> <#> @alootid2 set <#> name <name> @alootid2 set <#> autoload <1/0> Example:
    chatbox: @alootid2 save 3 609 608 607 Usage: @alootid2 save <3> - save successfully. chatbox: @alootid2 load 1 Your autolootitem list has been reset. Autolooting item: 'Green_Herb'/'Green Herb' {511} Autolooting item: 'Apple'/'Apple' {512} Autolooting item: 'Banana'/'Banana' {513} Autolooting item: 'Grape'/'Grape' {514} Autolooting item: 'Carrot'/'Carrot' {515} Usage: @alootid2 load <2> - loaded successfully. chatbox: @alootid2 list <1> - 501, 502, 503, 504, 505, 506, 507, 508, 509, 510 <2> - 511, 512, 513, 514, 515 (autoload upon login) <3> - 609, 608, 607 Usage: @alootid2 list - found 3 settings. Preview:




  6. Free

    Super Convex Mirror

    Description :
    The NPC are capable to search for MVP in the whole server or specific maps.
    Back in eAthena, there exists a script command (forgotten the name, perhaps a mobcount(...) with parameter changed) which allow us to check for specific monster id exists in the map or not, but it was removed.
    Then we could use mobcount(...) script command to get similar results, but we need to manually append an NPC event to each monster.
    Now, we could also do the same by using getunits(...) / getmapunits(...) script commands.
    Of course there are pro and cons for each version, I'll just leave it to you to decide for yourself whether to use it or not.
    The origin of script came from @Brian
    Preview :

    Settings :
    // Enable player to warp to MVP? // 0 = disabled // 1 = enabled // 2 = enabled + SC_BOSSMAPINFO .warp_to_mvp = 2; Enable this setting if you wish to allow NPC to warp into the monster map.
    // enable this setting to fully utilize the NPC script. (use at your own risk) // read more info at /conf/battle/monster.conf setbattleflag("dynamic_mobs", 0); By default, the dynamic_mobs configuration are set to yes. This help you save some server resources if the maps aren't access by any players recently by saving the monster data into the cache.
    The downside of using dynamic_mobs, monsters are cached, NPC can't search for the monster data if they are cached. FYI, monsters that spawned by NPC scripts aren't cached.
    // list of MVP map. setarray .map$, // enable this if you want it search whole server. (unable to use warp to mvp option) // "all", Enable this if you wish to enable to NPC to search the whole server, incase you missed what other maps have MVP (including showing mvp from restricted areas, like Guild Dungeon) 
    FYI, searching the whole server would take a longer time, use at your own risk.
    Notes :
    The NPC are capable to search any MVP monsters in the map, including monster summoned by Bloody Branch, or Class Change Skill (from Sage's Abracadabra), as long as the monster have MVP EXP.
    Why do we need this if we already have Convex Mirror Item?
    I am sure everyone has used Convex Mirror before, but there are few reason that its frustrating to use it:
    Each convex mirror only can search current map of player. Convex mirror are wasted if the map doesn't have any MVP or killed. Convex mirror can't search for monster that summoned by NPC script. This NPC could serve as compensation for player, imagine the use case where you spend a Convex Mirror to know which MVPs are still alive instead of letting it go wasted knowing that the MVP in current map is dead or not found.



  7. Free

    Usable Enchant Item

    Description :
    Players are able to click on the Enchant items to provide custom bonus to the selected equipment.
    Varies of bonus could be done especially use together with a *getequippedon script command to provide a wide range of bonuses.
    The current items and bonuses display in the video is just a sample for demo.
    The origin of the idea come from Diablo and 張阿神.
    Sample Usage:
    callfunc("F_UsableEnchantItem", <delete_item_id>, <enchant_item_id>{, <card_index>});  
    Item Database :
    Create a custom item for enchant
    - Id: 501 AegisName: Red_Potion_Enchant_Usable Name: Red Potion Type: DelayConsume Buy: 10 Weight: 70 Script: | callfunc("F_UsableEnchantItem", 501, 909, 3); Create a custom enchant item with special bonuses.
    - Id: 909 AegisName: Jellopy_Enchant_Item Name: Jellopy Type: Etc Buy: 6 Weight: 10 Flags: BuyingStore: true Script: | .@eqp = getequippedon(); if (.@eqp & EQP_ARMOR) { bonus bVit,100; } if (.@eqp & EQP_HEAD_TOP) { bonus bInt,100; } if (.@eqp & EQP_SHOES) { bonus bAgi,100; }  
    Preview :



  8. Free

    SQL Job Changer

    Tired of searching for a job changer that never satisfied your need ? Try this out !!
    It allow any combination of classes-tree that you can imagine with your brain.
    Example: Common Job Change Sequences

    Novice >> First >> Second >> High First >> High Second >> ThirdNovice >> First >> Second >> High First >> High SecondNovice >> First >> Second >> High SecondNovice >> First >> Second >> ThirdNovice >> All
    * Standard NPC that commonly found in the forum.
    Example: Rare Job Change Sequences
    Novice >> First >> Second >> Second >> Second >> ThirdNovice >> First >> Second >> Third >> Third >> Third
    * Suitable for server who decide to plan for story-lines that allow players to switch to each jobs before they can reach the final class.

    Setup Guide:
    OnInterIfInitOnce: query_sql( "TRUNCATE `e_jobchanger`" ); // dont remove this line if you're not sure what's it. // Add any combination that you like. AddJob( <current job>,<min. base lv>,<min. job lv>,<bonus statpoints>,<bonus skillpoints>,<resetlvl>,<required zeny>,<next job>,...,<next job> ); end;
    Put any combination that you want, and let the NPC done the rest of the setup.
    *current job - current char job class
    *min. base level - minimum base level to qualify for the job advancement.
    *min. job level - minimum job level to qualify for the job advancement.
    *bonus status point - amount of extra status point given to char for the job advancement.
    *bonus skill point - amount of extra skill point given to char for the job advancement.
    *resetlvl - option to reset based on resetlvl.
    *req_zeny - amount of zeny required for the job advancement.
    the rest - all possible option for classes that you intend to allow current job to change to.

    If you don't know how to setup it using the NPC script above, you can remove/disable all the lines within the OnInterIfInit lines.
    You can modify and execute this sample of SQL Database - Job Changer to generate the data required once and for all eternity.

    * Basic knowledge on using SQL Database are required.
    * Don't remove the TRUNCATE line if you're not sure what you're doing.
    * The script suppose to load the setup part once, clear table and re-insert everything. If you removed that, your SQL tables will be a goddamn mess when you loaded for second times and onward.
    * It was suppose to be 2 separated individual script, but I merged it since I am sure there are always some member ask for how to setup the things. Too lazy to answer/spoon-feeding all these questions. So I merged it.
    Future Development:
    If you have any nice suggestion that are useful/interesting, I may consider to implement it in the future.
    Thank in advance.



  9. Free

    Advanced Stylist

    Original idea of this script : http://www.eathena.ws/board/index.php?showtopic=148888
    Well, this was my favourite stylist script in eAthena ....xD

    Since i got some time, and lately received a request on editing a stylist npc script. So i come with with the idea to add some minor features or enhance the original script. The script are written from scratch...
    A very quick and simple intro for the script,
    Able to nagivate styles easily ( Forward, Backward, Jump ).
    Able to blacklist certain style for each style group and separately by Gender.
    Removed save / load features since not really useful.
    Enable Zeny as payment for the services.
    Able to enable any of the 3 services. ( Hairstyle, Hair Color, Cloth Color )
    Support multiple type of Currency Payment. ( Item , Cash Points , Zeny and etc )

    ( If any style was blacklisted, a default style will be displayed )
    The script are rewrited and clean up some unecessary parts.
    Credits :



  10. Free

    Aurora Age - Skin Packs

    A skin packs that I found in TWRO forum, made by a user named crystalchan.
    This skin package consists of ~10 recoloured skin, and 1 YoRha (Nier Automata) theme skin.
    Unfortunately, the skin pack are all translated in chinese language, most likely are usable only to those who can read chinese.
    Full Preview: https://imgur.com/a/I8w9FPO
    How to use:
    Extract the folder and put them in the /Skin/ folder or add it into the GRF  
     You're free to share with everyone but do not monetize the contents in any way! 
    These materials are meant for study or research purpose.
    Use these at your own risk, and always give credit to original author.
    Thank you.



  11. Free

    Vendor Control

    A script that basically used to control messy vendors in your server.
    Included one helper npc that enable Vendor to pick their spot easily.
    Some minor settings and math calculations are required to setup this.
    // x and y horizone .. setarray .x_line, 52, 49, 46, 43, 40; setarray .y_line, 68, 71, 74, 77, 65, 62;   ( A Screenshot from a Server that using this scripts )

    use at your own risk ~



  12. Free

    Monster Counting Game

    A mini event where a numbers of monsters will be spawned within a specified area. Players have to count for the monsters that exist within that area and tell the NPC to win the event.
    Btw, this is just a new version of event based on my previous Flower Counting Event.
    Thank you @AnnieRuru for delivering me the idea of using "live" monsters.
    OnInit: // how many rounds .max_round = 3; // minute each round .max_duration = 3; // dummy mob id represent wall .wall_mob_id = 1085; // ( x1,y1,x2,y2 ) area for event setarray .xy_area, 151,169, // ( x1,y1 ) 161,179; // ( x2,y2 ) // monster list used in event setarray .monster, 1002, 1031, 1836, 1595;
    Preview :

    Feel free to share your idea/opinions to improve this.



  13. Free

    GM Online List

    This Script will display to players a list of GM in this server.
    Configuration :
    OnInit: .min_group_id = 1; .afk_second = 300; end;



  14. Free

    Hairstyle Package

    This package are currently contains around 90~100 hairstyles for both male/female character.
    I obtained these from various sources like old eAthena, rAthena, Hercules, TheSpriteRepository and other member who shared these sprites with me etc.
    I don't remember who exactly made each of the sprites, or who even shared these... tell me if you know who are them.
    If any of these hairstyles are custom work that are meant for private use, kindly contact me, so that I could remove it from the listing.
    I do have more than this amount, but since my current test client (2018-06-20) can only support up to 100 sprites, so I randomly picked 100 and only upload it here.
    It included the default 31 hairstyle from kRO, but I think I replaced the 1~20+ hairstyles from JRO which dyed the hair  in dark color, the rest are custom hair styles.
    How to use:
    You can either merge the provided GRF into your own GRF Load it as another individual GRF using the DATA.ini file Extract it and put it in your Data folder * Depend on your client hexed with whatever settings. Search forum for all these guides.
     You're free to share with everyone but do not monetize the contents in any way! 
    These materials are meant for study or research purpose.
    Use these at your own risk, and always give credit to original author.
    If there exists issue with sprite file, for example: sprite misalignment, error, etc, kindly ask help from any member who have knowledge with sprite edit.
    If there exists issue with palette color file, for example: messed up color, error, etc, kindly ask help from any member who have knowledge with palette color edit.
    Fun Fact:
    Do you know you can actually combine all male and female hairstyle (including doram) to create a list of universal hairstyles that could be used by any gender of player and doram? 



  15. Free

    LMPQ - Ludi Maze Party Quest

    This LMPQ exists in MapleStory, I am just copy the idea of how it work, and try to port it into RO.
    However, its far from perfect, originally I planned to get a custom map with x-mas theme, something like toy factory since it kinda match with MapleStory's Ludibrium town/dungeons. 
    But plan failed, tried to approach several person to help me with some of the client side stuff, but not everyone have the free time or interested or maybe not willing to work on free maps/clientside release nowaday.
    Anyhow, maybe you could just replace with your own custom map, or even better if you could share with everyone like I share the scripts. The more the merrier!
    So, if anyone willing to help me with custom maps/client side edit, let me know ? . Sometime collaborating with others could make great contents for release to other member.
    How it work:
    The objective of this party quest is to collect at least a certain tickets by killing monsters and to reach Ludibrium Maze 16 (henceforth known as Room 16).  Navigating through the maze needs a firm foundation of how the rooms operate. When you have successfully entered into the maze, your party will be thrown into a random room. Each type of monster drops a random amount of tickets at certain rate. Some rooms consists of mystery treasure box that summon monsters upon destroyed. These summoned monster has better loot value,  which are important factor to complete the PQ in a short period of time. The more passes you have, the more experience points you will obtain at the end of the PQ. There exists trick to conquer this PQ in a very short duration, I'm not gonna reveal/spoil how is it, and l'll just leave it to you to explore it.
    Mirror Link : Pastebin



  16. Free

    Random News

    This Script will auto Announce / Broadcast a Messages randomly every interval of times.
    Configuration :
    Delay to announce:
    OnTimer60000: // announce every 60 seconds. Announcement List:
    OnInit: // Random Message to be Announced setarray .news_list$, "Updated News 1 every X Minute", "Updated News 2 every X Minute", "Updated News 3 every X Minute", "Updated News 4 every X Minute", "Updated News 5 every X Minute", "Updated News 6 every X Minute", "Updated News 7 every X Minute";  



  17. Free

    iRO Spooky machine - Refine Event

    Introduction :
    Talk to the machine and it will give you a Cracked Buckler shield. Equip the shield and talk to the machine.
    It will attempt to upgrade it as high as it will go. Depending on what upgrade level the item breaks at you will get a free item! If the buckler is upgraded to +10 or higher it gives a mystery costume!

    References :
    Official Website
    IRO Wiki



  18. Free


    A Script that enable Player to save his/her current Job Class Data and then able to switch back to what he had saved at any time they want.
    This will allow players to player multiple job class within 1 single Character.
    Configuration :
    OnInit: set .MaxSlot,3; end;   and...please make sure to run this query in your SQL.
    ALTER TABLE `char_reg_str` CHANGE COLUMN `value` `value` TEXT NOT NULL ;   Topic Detail :
    * Use at your own risk. Do backup. *
    Thank you :
    @Peopleperson49  @goddameit



  19. Free

    iRO - Ben Recycle NPC

    Ben Recycle  in Prontera allows players to turn certain equipment into Rough Elunium and Rough Oridecon.
    How to use:
    func_AddItem(<equipment_id>, <item1>, <amount1>, <item2>, <amount2>); // WEAPONS func_AddItem(1421, 757, 4, 756, 4); func_AddItem(1822, 757, 2, 756, 2); func_AddItem(1625, 757, 5, 756, 5); func_AddItem(1819, 757, 3, 756, 3); func_AddItem(1269, 757, 4, 756, 4); func_AddItem(1142, 757, 3, 756, 3); func_AddItem(1624, 757, 5, 756, 5); func_AddItem(1626, 757, 5, 756, 5); func_AddItem(13404, 757, 5, 756, 5); func_AddItem(13027, 757, 6, 756, 6); func_AddItem(1821, 757, 1, 756, 1); func_AddItem(1268, 757, 5, 756, 5); // ARMORS func_AddItem(2422, 757, 3, 756, 3); func_AddItem(2104, 757, 1, 756, 1); func_AddItem(5124, 757, 2, 756, 1); func_AddItem(2406, 757, 3, 756, 3); func_AddItem(5122, 757, 2, 756, 1); func_AddItem(5126, 757, 2, 756, 1); func_AddItem(2504, 757, 2, 756, 1); func_AddItem(2353, 757, 15, 756, 15); func_AddItem(2514, 757, 6, 756, 6); func_AddItem(2404, 757, 2, 756, 1); func_AddItem(2315, 757, 2, 756, 1); func_AddItem(2102, 757, 2, 756, 1); func_AddItem(2114, 757, 2, 756, 2); Additional:
    // if enable shop UI (only work if items can sell to npc shop) .shop_npc$ = "ben_recycle_shop#iro";  
    Mirror Link: https://pastebin.com/cCBdevB5



  20. Free


    Original Topic: http://herc.ws/board/topic/16037-campfire-to-regenerate-hpsp/
    Herc Script Link : https://pastebin.com/fksPdpFQ
    The Idea:
    Camp Fire to restore / regenerate HP & SP.
    When you sit by the Camp fire, you start feeling the warmth and the comfort, so your HP & SP begin to regenerate.
    How to use :
    1. add the source mode provided in the script. (or here)
    2. make a usable item_db with these bonus script.
    callfunc("func_CreateCampFire", <range>, <duration>, <heal_rate>); // create campfire callfunc("func_UpdateCampFire", <range>, <duration>, <heal_rate>); // update the campfire duration/heal rate.  
    Credits : @Dastgir & @Radian for the src mod and @Habilis for the idea



  21. Free

    Infinity Gauntlet - Snap

    Spoiler Alert !!! 
    The following content consists of info for the recent Avengers: Endgame movie. 
    View and download at your own discretion, I am not responsible for anything if you're so weak heart and so easily get spoiled with such contents.
    Real fans never afraid of spoiler contents! 
    Use at your own risk ....
    Mirror Link: https://pastebin.com/6GX0LmW2



  22. Free

    72 RO Skin Packs

    These files are not created by me. I just found someone share a complete package of it on facebook. Thank him/her for collecting all these Skin across the world wide web, I believe some skin files was updated or fixed by him/her.
    So, I'll just provide a text file that contain the link to download these files from my dummy OneDrive Folder.
    Album Preview : http://imgur.com/a/b1MHG
    Installation Guide :
    Pick any RO Skin that you like and Download it to your PC/Laptop. Extract the files using 7-Zip / WinRar / WinZip / etc. Copy and paste the extracted files into the %System%/kRO/Skin/ folder. Again, I don't own any of these files. I just sharing the files. None of these are commercial items.
    Please insert / remain the credits in case you know who're them.
    Thank you.



  23. Free

    Poring Collection

    this is the poring collection that i previously grabbed from The Sprite Repository.
    inside got about 25 custom poring sprites ...
    previously i have edited the name of each sprites which allow me to install all the mob sprite into the test server of mine easily.

    I dont own any of these sprite .. and I dont know who are the original users who start to distribute it since the source no longer available.
    Do remain any credits of respective author if you know.



  24. Free

    Usable Refinery Ores

    Players are able to click on the Ores items to refine the selected equipment. They can refine their Equipment at anywhere anytime they want.
    Based on requirement of Weapon Level and Type, different ores might be needed as well as Zeny.



  25. Free

    Limited Items

    This script will limit the inventory of player if the player bring exceeded limitation items into the map.
    For Example :
    Configuration :
    // func_Add( <gm_level_to_bypass>, <map_name>, <item1>,<max_amount1>,....,<itemX>,<max_amountX> ); func_Add( 100,"prontera", 501,1,502,2,503,3,504,5 ); func_Add( 100,"payon", 501,1,502,2,503,3,504,5 ); func_Add( 100,"izlude", 501,1,502,2,503,3,504,5 ); func_Add( 100,"prt_fild08", 4001,1,4002,3,4003,0,504,5 ); Positive = Player can only bring Maximum of that amount of items. 0 = Totally Disabled, player cant bring any of it.



  • Create New...