Jump to content

Utilities

Scripts that are set up to help players and GMs alike should be posted in this category
Examples: Buffers, Refining Systems, GM Tools, Shops

197 files

  1. Free

    Nasagnilac Reset NPC

    A reset npc where similar to official reset npc with some customize feature like monthly free reset and event reset with schedule. The file include sql table so make sure that you add it. If there is a problem or request for the script you can contact me on the following:
    Skype: nasagnilac.leiron
    Facebook: nl073092

    105 downloads

    Updated

  2. Free

    Healer & Buffs NPC

    A npc where you can heal and buffs. There's also a settings that you can change. set .LevelPay, 60; // Maximum level for free access or else you will pay zeny based on your level. set .Price, 50; // Zeny required for heal but premium user will not require it. set .Buffs, 1; // Also buff players? (1: yes / 0: no) set .Delay, 10; // Heal delay, in seconds If there is a problem or request for the script you can contact me on the following:
    Skype: nasagnilac.leiron
    Facebook: nl073092

    741 downloads

    Updated

  3. 30.00 USD

    PRO-Card Trader.txt

    PRO-Card Trader.txt


    This npc can exchange 10 random card to an Coin. Each card need to be different from each other.You can exchange your coin to get a chance to win a rare card! . This NPC is based on Philippine Ragnarok Online Kard Trader ( EN "Card Trader") . 

    2nd Feature of this NPC is you can have a chance to win a rare card's . 

    Easy to Configuration
     
        setarray .reward, // <item_id>,<chances rate%>;     // Add more cards with your likings     // Normal Cards: 100%     4001,100,    // Poring Card     4002,100,    // Fabre Card     // Mini Boss Cards: 30%     4174,30,    // Deviling Card     4054,30,    // Angeling Card     // MvP Cards: 1%     4399,1,        // Thanatos Card     4302,1;        // Tao Gunka Card  

    1 purchase   5 downloads

    Updated

  4. Free

    convertertrader.txt

    Elemental Converter Trader
    ______________________________________
    This is just a NPC wherein you can trade an etc item for elemental converters. 
    Features:
    • Converts an etc item(any items but etc is recommended) to elemental converter of choice.
    • You can set the amount of conversion.
    ToDoList:
    Change item requirement and amount conversion depending on your preferred.
    By downloading this script, you agree to these terms:
    • You are not allowed to redistribute this script in any way, shape, or form.
    • I still retain all rights to this script.
    • Terms above may be changed or adjusted without prior notification.
     
     

    135 downloads

    Submitted

  5. Free

    fishslicemaker.txt

    Fish Slice Maker
    ______________________________________
    This is just a NPC basically creates fishslice with prerequisite items.
    Features:
    • Creates fishslice with prerequisites. 
    • You can set the amount of conversion.
    ToDoList:
    Change item requirement and amount conversion depending on your preferred.
    By downloading this script, you agree to these terms:
    • You are not allowed to redistribute this script in any way, shape, or form.
    • I still retain all rights to this script.
    • Terms above may be changed or adjusted without prior notification.

    137 downloads

    Submitted

  6. Free

    F_Randomizer randomize and split array into arrays

    this function can be used to randomize and split thr first array passed in to it to the other arrays
    Warning! the main array size must be divided by the count of the other arrays
    for example , you have .@main size 4, you should not send 3 arrays cuz 4/3 = 1 and 1 left , it will fail!
    the example npc from the photo is included in the file
    also here it is
    - script Randomizer_test -1,{ OnInit: debugmes "================================================"; setarray .@main,1,2,3,4,5,6,7,8,9,10,11,12; for(.@i=0;.@i<getarraysize(.@main);.@i++){ debugmes "" + .@main[.@i]; } debugmes "================================================"; debugmes "Split and randomize the elements of .@main into .@a .@b .@c .@d .@e .@f .@g arrays"; debugmes "================================================"; F_Randomizer(.@main,.@a,.@b,.@c,.@e,.@f,.@g); for(.@i=0;.@i<getarraysize(.@a);.@i++){ debugmes ".@a " + .@a[.@i]; } for(.@i=0;.@i<getarraysize(.@b);.@i++){ debugmes ".@b " + .@b[.@i]; } for(.@i=0;.@i<getarraysize(.@c);.@i++){ debugmes ".@c " + .@c[.@i]; } for(.@i=0;.@i<getarraysize(.@e);.@i++){ debugmes ".@e " + .@e[.@i]; } for(.@i=0;.@i<getarraysize(.@f);.@i++){ debugmes ".@f " + .@f[.@i]; } for(.@i=0;.@i<getarraysize(.@g);.@i++){ debugmes ".@g " + .@g[.@i]; } debugmes "=================================================================================="; end; }  
    the best place to put the function in is at the end of rathena/npc/other/Global_Functions.txt file

    54 downloads

    Submitted

  7. Free

    Junk Seller

    Junk Seller will scan your inventory and sell everything at the same time. 
    The list of items will display in a window so the player has a chance to confirm. 
    If the player has the skill "Overcharge" it will add zeny to the sale amount accordingly. 
    INSTALLATION AND CUSTOMISATION:
    1. SQL DB required for personal blacklist, run this command to create the necessary table in your DB:
    CREATE TABLE `junkerblacklist` ( `char_id` varchar(100) DEFAULT NULL, `item_name` varchar(100) DEFAULT NULL, `item_id` varchar(100) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; 2. Add junkseller.txt to whichever directory you store your NPCs, and update scripts_custom.conf. 
    3. Modify this array at line 54 to configure your permanent global blacklist. 
    setarray @Blacklist[0], 4. Uncomment / Comment the code at lines 541 and 544 if you would like the script to include Cards. 
    // Checks if item is an Etc item (3) // Comment this line and uncomment the line below if you want Cards to be included if(getiteminfo(.@iid,2) == 3){ // Comment the above line and uncomment this line if you want Cards to be included //if(getiteminfo(.@iid,2) == 3 || getiteminfo(.@iid,2) == 6){ 5. Modify .@showbl to 0 at line 39 if you don't want the message displaying how many items were removed by the blacklist system. 
    .@showbl = 1; // Shows how many items were removed by the blacklist system.  

    288 downloads

    Updated

  8. Free

    @AnalyzeItem count item in your server

    @aitem this command allows you to check how many of the item in the server
    command @aitem2 allows you to check also who have the items
    @aitem is fast, but @aitem2 will take some time to finish
    the time depend on how big your database is!
    Keep in mind that this script work with sql , so if you got an item you will need to wait xtime(default 30 sec) to save in sql so you can see it with the command (or relogin  or any act in the server that force you data to be saved , it's all depends on your server setting and your usage)
     
    you should wait until the command is done , do not logout/talk to npc/ anything until you get the results!
    '@AnalyzeItem' return the count of the item in the server.
    '@AnalyzeItem2' return the count of the item and the lst of who have it in the server (take more time).
    USAGE:
    @AnalyzeItem <ITEM_ID>
    @AnalyzeItem2 <ITEM_ID>
    OR
    @AItem <ITEM_ID>
    @AItem2 <ITEM_ID>
    Wait until you get the results in your chat
    to add more tables (like other storages) check the array .@tables$ and .@id$
    F_GET_REAL_OWNER_NAME(<"string table">,<id>) get the name for id

    454 downloads

    Updated

  9. Free

    Dazzu's Guild Package NPC with optional Gepard support

    Please do not remove my signature from the file, claim my work as your own, nor sell this script. Please provide credit where it's due. I may or may not update this script to address below limitation in the future.
    If you like this script, please drop a like! ?
     
    Description:
    The code flow is similar to benching's guild package npc script and uses his SQL CREATE TABLE statements. However, this script is written from the ground up and supports optional checks based on either IP address or Gepard's unique id. By default, ONLY IP checks are enabled. Any code blocks that uses get_unique_ip has been commented out. However, there are instructions on how to enable unique id related functions provided in the changelogs section of the script and this thread. Allows either IP or unique id based checks. IP check is used by default. Please refer to the initialization section on how to toggle between checking modes. This script allows a guild and all her guild members to receive a predetermined package through redeeming a code. Only requires the guild master to interact with the NPC. Package code is generated by an authorized game master (authorization is based on the minimum gm level set in the script). Package code can only be generated by a game master. The code is communicated by the game master to the guild master which is then redeemed. Both guild master and his/her members will receive the same package contents. Supplied equipment is account-bound. Multiple codes can be generated and claimed for a guild. However, claim restrictions are enforced by either IP or unique id checks. Performs (some optional) checks. Claim is cancelled and certain messages are displayed if one of these checks fail: Weight Limit - Displays name of members whose weight limit can not accommodate the package contents. Repeat claim per unique IP (Optional) - Display names of a member's alternate character who has already made a previous claim (using account id and ip address/unique id). Multi-client claim (Optional) - Display names of a member's characters they are controlling through multi-clienting on a single system (using ip address or unique id). All members online requirements (Optional) - Self explanatory display. Optional checks can be toggled within the script. Requirement:
    Gepard Shield if using unique id checks. Initialization:
    Variables are set under the OnInit label (line 331) Set .disableMultiLogging to true to restrict players from claiming a guild package when they are logged into multiple clients in the same guild on a single machine. Set .disableRepeatClaim to true to restrict players from claiming a guild package when they have claimed a package previously. Set .allMembersOnline to true to require all guild members be online when claiming the package. If set to false, only online guild members will receive the package. .useGepard - stores and uses unique ids for checks. If set to false, IP address is used instead. (default false). IMPORTANT: If possible, do not change after claims are made, otherwise players may be able to re-claim or unable to first-time claim. Please refer to the limitations section for additional information. .codeLength - length of the guild package code (default 10). .minMembers - minimum number of guild members to redeem the code. .minGMLevel - minimum Game Master level to access the GM menu. .package[0] - array of the guild package Item IDs. .packwgt[0] - array that denotes the amount of items to be dispensed that corresponds to the item IDs in .package Limitations:
    Unique id check works well through VPN. However, attempts to bypass checks using a Virtual Machine has not been tested. Code generation is manually done by a game master. This was done by design, however it is an obvious limitation. Toggling between gepard and ip checks after some use may have the following effects: Players with previous claim may be able to perform a reclaim (IP to gepard toggle). Players with NO previous claim may NOT be able to perform a claim if someone else under the same IP has made a claim. (Gepard to IP toggle). To comply with rAthena submission standards, all unique id calls have been commented out and replaced with charip calls instead. However, instructions to easily enable unique id calls have been included in the script. Please refer to the changelogs section on how to perform this change.  
     
     

    462 downloads

    Updated

  10. Free

    ROM Safe Refiner

    Just sharing my own safe refiner NPC that mimics the Safe Refinement System of ROM:EL. As the item increases its refinement level, the materials required will grow exponentially as it requires the copy of the item you are refining based on its next refinement level. The NPC can only refine the item if its next refinement process is not safe anymore for Hollgrehenn.
     
    Configurations:
    .@npc_name$ = Name of your NPC
    .@price = The required zeny for refining.

    329 downloads

    Updated

  11. Free

    Stat Player Connected

    Adding two new table and a script that help you see when the players are connected and how many.

    -cust_StatPlayerCo checking every hour every day how many player were actually connected.
    -cust_StatPlayerIpDay checking everyday how many players were actually connected.

    Compatible with gepard and last_unique_id (enable/disable in OnInit).

    There's no npc to check that in game currently, only checking in database directly.
    If people are interested, I could add a npc/a command that make it possible to check directly in game for gm and/or players.

    270 downloads

    Updated

  12. Free

    News NPC

    Description
    A News npc that will let the players read news from the server stocked in sql. It can print colors and show an animated showevent to attract players if there's a new news.
    Each news is separated in 2, the resume and more. Make a short version of your news and then explain it more. That way you have more chance to spread at least the important part of it to the players.
    Installation
    -Run this sql command
    CREATE TABLE IF NOT EXISTS `z_custom_news` (   `id` int(11) NOT NULL AUTO_INCREMENT,   `News` text NOT NULL,   `Resume` text NOT NULL,   `More` text NOT NULL,   PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ; -Add news
    -Edit the !!Modify  Lines
    -Check if you want to edit anything in the OnInit.
    -Load the npc (news.txt) and voila!
    -The news are sql and to update in game, just make a gm talk to it, no need to reload it each time. Not making it checking each time someone talk to it (or each hour ect) make the npc less ressource consuming, but you can edit it and make the request everytime.
    Information
    -It does not make a lot of sql request, it only update when a gm talk to it and chose to update.
    -It saves the highest news seen and print an event to attract the attention of the player, commenting all the !!Saving Mecanism!! lines removes it. It does not save which one you saw.
    -You can add color using ^RRGGBB and adding new lines using # (editable)
     

    425 downloads

    Updated

  13. Free

    SoloPack Command with Gepard Function (UniqueID)

    Report all error/bugs in the forum post not in the PM for faster fix, Thanks!
    By downloading this file, you agree with my Terms of Service:
    • You are not allowed remove my signature from any of the included files.
    • You are not allowed claim my work as yours.
     
    If you like it, give me a ?

    720 downloads

    Updated

  14. Free

    GuildPack NPC with Gepard Function (UniqueID)

    Report all error/bugs in the forum post not in the PM for faster fix, Thanks!
    By downloading this file, you agree with my Terms of Service:
    You are not allowed remove my signature from any of the included files. You are not allowed claim my work as yours.
    If you like it, give me a ?

    580 downloads

    Updated

  15. Free

    Random Rate Npc

    npc random item by rate 

    391 downloads

    Submitted

  16. Free

    Instanced Emperium Test Breaker + Ranker/Ladder

    As the title says.
    Records break time of the player.
    Ranks them with who had the fastest time.
    Uses only a custom emperium mob duplicate.
     
    The script would be as is. Use this freely and edit it as much as you need.
     
    Compatibility is your responsibility.
    No backward compatibility support.
     
    Enjoy!

    891 downloads

    Submitted

  17. Free

    Emperium Breaker Ladder + Points + Shop

    The title says it all..
    This would record a player's emp break count
    GM can easily reset the table
    This method is more optimized because the data is properly indexed on a table.
    Added emp breaker point shop - Account bounded..
    Enjoy!
     
    Installation instructions :
     

    578 downloads

    Updated

  18. Free

    Euphy's WoE Controller + Gepard Check + Minor fix

    As the title says.
    I added some fix on checkweight part where it will throw some error when item mailing is disabled. ( I literally have uploaded the wrong file for months and only been known recently) Added gepard id check support.  
     

    435 downloads

    Updated

  19. Free

    Freebies NPC with Gepard Function (UniqueID)

    Freebies NPC with gepard function (UniqueID)

    In response to this post : 
     

    875 downloads

    Updated

  20. Free

    CashShop Manager

    Well I searched this script a lot but I did not find any free,
    I found another on another site made by CarlosKiller, but for another emulator, so I adapted it to rathena.
    It has 2 script, one in English and one in Portuguese.
     
    Modifications made by me:
    Add item:
    A category has been added, a protection not to add the same item twice, after adding an item you will be asked if you want to add another item and at the end you will be asked if you want to do @reloaditemdb.
    Category:
    For example, 0 ~ 8 if you enter 9 you will receive a message stating that there is no such category and will ask you to retype the category.
    Delete item:
    The items in the store with the id appear in the list, making it easier to delete the desired item.
    Reload CashShop:
    After adding or removing an item in the cash shop is necessary to upgrade the store and must be logged in to be able to see the changes.
     
    It really took a lot of work, I hope you enjoy it.
     

    Note: I am not the creator of this script just adapted and modified many things in it to be compatible with rAthena.
    Note2: If it is allowed to put the original script link, let me know that post here.
     
    Below is the original script without modification. (remembering that does not work in rathena this script)
    There is a function that I removed, because I could not adapt correctly, that you could see the store items in npc, I was able to modify but when removing some item, he did not remove from the store, only giving restart, and when updating the store doubled the items as well.
     
     

    449 downloads

    Updated

  21. Free

    Item/Variable(Points) reward function for beginners or lazy!

    Hi, there! this functions is ideal for newbie scripters or just someone who wants to "add" or "modify" scripts with rewards. It may be item or variables such as points or stuff...
    This function can also be used by experienced scripters who are lazy to code and stuff xD. Easy to use and all ?
     
    Here are the sample npcs on how to use it. (included in the downloadable files)
    // Sample NPC for using F_Reward_Item and F_Reward_Var // For beginners. prontera,150,180,0 script F_Reward_Test 123,{ mes "What do you want to get?"; switch(select("Item","Points")) { case 1: F_Reward_Item("501:10,502:5,503:10"); break; case 2: F_Reward_Var("#CASHPOINTS","Cash Points",100); break; } mes "Enjoy!"; close; } // This is just a pseudo-code, you can understand what I mean by this xD // For advance scripters. You can do something like. prontera,150,180,0 script F_Reward_Test 123,{ mes "get items"; close2; F_Reward_Item(.itemlist$); end; OnInit: .itemlist$ = "501:10,502:5,503:10"; end; }  
    I hope this will help! Keep those upvotes coming to motivate me moooore ? 
    Enjoy the rest of the day!

    439 downloads

    Updated

  22. Free

    [FREE] Event Manager

    Ehh since my event scripts are piling up, I decided to make an Event Manager
    // Basic Event Manager // By Mabuhay /*-=-=-=-=-=-=-=-=-=-=-=-=-=- Currently added are the ff : {#} NAME - "NPC_NAME" [1] Bombring - "Event_Bombring" [2] Dice - "Event_Dice" [3] Last Man Standing - "Event_LMS" [4] Novice V Zombie - "Event_NvZ" [5] Poring Catcher - "Poring_Catcher" [6] Poring Hunter - "Poring_Hunter" (Added 12-15-2019) -=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/ // For easier management of Event NPCs ///////////////////////////////////// // NOTE: // ///////////////////////////////////// // I don't support any modifications unless I want to. // But if you want to change things especially the rewards, // Please refer to my F_Reward Functions // https://rathena.org/board/files/file/4068-itemvariablepoints-reward-function-for-beginners-or-lazy/ // You should be able to easily change the rewards // If you have basic scripting knowledge Header Settings:
    OnInit: // 1 = item reward // 2 = variable/cashpoints reward // If you want to set item and variable/cashpoints rewards, do 1|2. // If you only want 1, just choose between 1 or 2 $event_options = 1|2; // If item reward enabled // What items will be rewarded setarray $event_item_reward, 501, 10, 502, 5; // If variable reward.. set to your variable. // If cashpoints.. set to #CASHPOINTS / #KAFRAPOINTS (Free Cash Points) $event_var$ = "#EVENTVARIABLE"; // Variable name? // If cash points, set to Cash Points // If your custom var, set to the name of that thing. $event_var_name$ = "Custom Points"; // How much points gain if #VAR / #CASHPOINTS / #KAFRAPOINTS? $event_var_gain = 1; $event_item_arr = getarraysize($event_item_reward); // @eventstart for GM bindatcmd "eventstart", strnpcinfo(0)+"::OnStart",60,60; // @eventjoin bindatcmd "eventjoin", strnpcinfo(0)+"::OnJoinEvent"; end;  
    You may now use @eventstart for GMs to select which ones to start.
    @eventjoin for players to enter and see which event is currently active
     
    Event timers / Clock are to be set here :
    // OnClock<hour><minute>: donpcevent "<npc_name>::OnStart"; OnClock0000: donpcevent "Event_Bombring::OnStart"; end; //----- 12 mn OnClock0100: donpcevent "Event_Dice::OnStart"; end; OnClock0200: donpcevent "Event_LMS::OnStart"; end; OnClock0300: donpcevent "Poring_Catcher::OnStart"; end; OnClock0400: donpcevent "Event_NvZ::OnStart"; end; OnClock0500: donpcevent "Poring_Hunter::OnStart"; end; OnClock0600: donpcevent "Event_Bombring::OnStart"; end; //----- 6 am OnClock0700: donpcevent "Event_Dice::OnStart"; end; OnClock0800: donpcevent "Event_LMS::OnStart"; end; OnClock0900: donpcevent "Poring_Catcher::OnStart"; end; OnClock1000: donpcevent "Event_NvZ::OnStart"; end; OnClock1100: donpcevent "Poring_Hunter::OnStart"; end; OnClock1200: donpcevent "Event_Bombring::OnStart"; end; //----- 12 nn OnClock1300: donpcevent "Event_Dice::OnStart"; end; OnClock1400: donpcevent "Event_LMS::OnStart"; end; OnClock1500: donpcevent "Poring_Catcher::OnStart"; end; OnClock1600: donpcevent "Event_NvZ::OnStart"; end; OnClock1700: donpcevent "::OnStart"; end; OnClock1800: donpcevent "Event_Bombring::OnStart"; end; //----- 6 pm OnClock1900: donpcevent "Event_Dice::OnStart"; end; OnClock2000: donpcevent "Event_LMS::OnStart"; end; OnClock2100: donpcevent "Poring_Catcher::OnStart"; end; OnClock2200: donpcevent "Event_NvZ::OnStart"; end; OnClock2300: donpcevent "Poring_Hunter::OnStart"; end; //----- 11 pm Currently I just alternately activate events per hour. You can change the event time as you wish. You may choose any of the ff:
    OnClock<hour><minute>: OnMinute<minute>: OnHour<hour>: On<weekday><hour><minute>: OnDay<month><day>:  
    I hope this helps. If you want me to add more, just PM me on an event script that needs to be updated. Thank you. ?
    Compatibility is your responsibility.
    No backward Compatibility Support.
    Enjoy!
    NOTE : If you find this useful, please click the Upvote button to motivate me to do stuffs like this ? And you are welcome!

    948 downloads

    Updated

  23. Free

    Item Trader - as requested

    This is a reply from this post : 
     
    Can trade multiple item with success or fail rates.
    // < ITEM FOR TRADE >, < AMOUNT >, < ITEM TRADED >, < AMOUNT >, < SUCCESS RATE >.. setarray .@trade, 501, 10, 502, 1, 50, // 10 red potions = 1 orange potion @ 50 % 601, 10, 902, 1, 100, // and so on.. @ 100% 701, 10, 702, 1, 75; // 75%  
    I will fix any old scripts that arent working as of date. Just leave me DM so I can check. I dont attend any modifications unless I am interested to add it myself.
    I also work for free for the interest of many. If you have any personal request for your own personal work and asking for free fix, i will ignore you right away.
    Thanks and enjoy!

    286 downloads

    Updated

  24. Free

    Ticket Refine Script

    This is not mine this is sir @Euphy's script, i just tried using it and tried fixing it, im noob at scripting and anything else, but tried and fixed the script to my liking, you can add single npc for single +1 upgrade. i dont know how to say this maybe just look at screenshot :3 i just posted this because i think many ppl wants ticket refining like this or i dont know..
    item      +      ticket        =        item
    +4                    +5                        +5
    does not let you refine if ur item is lower than the desirable refine..and does not let you refine if ur item and ticket is the same.

    401 downloads

    Submitted

  25. Free

    @itemrain command

    I know it exists somewhere in the forum but for the sake of lazy people searching in forum, here is @itemrain command
    as what the command name says, it will make / drop items around the one who used the command on 14 cells wide ( about the size of the screen )
     
    @item <item_id> <amount>
     
    Items created by this command is limited to 100 only just to put a little bit of cap into it.
     
    use at your own risk. 
    Compatibility is your responsibility.

    427 downloads

    Submitted


×
×
  • Create New...