Jump to content

Source Modifications

Source Mods & Code Snippets located here.

135 files

  1. Free

    No @command while talking NPC

    This mod is inspired by HERE and disable_items
    I made this mod to prevent using @command while talking to NPC.
    The default is prevent @command while talking to NPC
    to allow @command while talking to npc.

    enablecommand; // To allow @command while talking to NPC
    This is first version, Bug is normal.
    My suggestion
    -add setting in conf file

    286 downloads

    Submitted

  2. Free

    [Script Command] isselling - Discovery if a npc is selling a item by ID

    This commands verify if a npc is selling, returning 1 to yes and 0 to no.
    Its very useful to black market scripts for players who knows item id and don't want to lost time searching where items are sold.
    Obs: Didn't test the sample script, but you can have a idea in how to use.
    Sample Script:
    prontera,150,150,5 Script Who's Selling 90,{ .@n$ = "[Who is Selling]"; mes .@n$; // Its nice to put a delay in this script if you use a lot of stores in one map and in your .npc$ array // I'm using 5 seconds in this sample. if((gettimetick(2) - whosell_delay) < 5) { mes "You have to wait 5 seconds to use me again."; close; } mes "Tell me the item ID you want to know what npc's is selling it!"; input .@id; // You can test this sample with 607 ID whosell_delay = gettimetick(2); for( .@i = 1; .@i < getarraysize(.npcs$); .@i++) { .@found = isselling( getcharid(0), .npcs$[.@i], .@id ); if( .@found ) { next; mes "Ha, this item is " + getitemname( .@id ) + ", right?"; next; mes .@n$; mes "Who is selling it is " + .npcs$[.@i] + "!"; close2; showevent QTYPE_EVENT,QMARK_YELLOW,getcharid(0),.npcs$[.@i]; // Show in npc a ballon to player end; } } next; mes .@n$; mes "No npc selling it :)"; end; OnInit: setarray .npcs$[1],"Store 1","Store 2"; end; } prontera,151,150,5 shop Store 1 90,607:1000 prontera,152,150,5 shop Store 2 90,610:1000  


     

     

     

    135 downloads

    Updated

  3. Free

    @at with afk hat very easy Modify

    Inside file have Notice_Board .spr .act and image item for some one No have in data kRO Offcial
    *** Only use for autotrade you can modify New @afk Just need some more from the old version.

    414 downloads

    Submitted

  4. Free

    Multilevel Range

    Tired of multilevel ON and go to level 63 by killing a poring?
    Use this to give a more real levelling experience with multilevel. Useful for highrates and to avoid abuse on Original Quests Exp.

    225 downloads

    Updated

  5. Free

    PVP on MVP Maps

    When a MVP Spawns PVP is enabled, When this MVP dies PVP is disabled.
    New Mapflag MF_MAPMVP - Disable going to savepoint once you die 2 times in a PVP map.

    414 downloads

    Submitted

  6. Free

    Snatch Modification

    SRC Modification of skill "RG_INTIMIDATE, Snatch".
    Teleport the player near a mob with the same id or near a monster with the same race present on the current map (if none, on random location).
    That's only a patch to apply on your rathena folder.
    Don't forget to thumbs up me if you like my content~

    95 downloads

    Updated

  7. Free

    Script command: Dynprompt

    Works like prompt(), but lets you specify return values by adding a pipe symbol.
    Examples:
    dynprompt("Menu Entry");
    Return Value: 1
    @menu: 1
    @menustr$: Menu Entry
    @menunum: 1
    dynprompt("^EE0000Menu Entry^000000|Test");
    Return Value: 1
    @menu: 1
    @menustr$: Test
    @menunum: 1
    dynprompt("Shazam|5 Shazam");
    Return Value: 5
    @menu: 1
    @menustr$: 5 Shazam
    @menunum: 5
    Script example:
    // Dynprompt usage - Advanced example// Probably the best way to use thisfunction script dynprompt_sample3 { // The real power of dynprompt is that you can specify the return value for each menu element. // The return value is a atoi of the string following the pipe | - the full string can be accessed through @menustr$ // The atoi val can also be accessed through @menunum // If you want to use both number & string, the number has to come first else atoi won't work // Use the pipe character | to denote the return value - best to work with numbers, but strings work as well set .@menu$[0], "^009900Hello!^000000|1Hello"; set .@menu$[1], "^0000EEInfo~^000000|2Info"; set .@menu$[2], "^222222Test.^000000|3Test"; // This time we'll just add a element based on a condition if(.@somecondition) set .@menu$[3], "^EE0000- Admin -^000000|4Admin"; set .@menu$[4], "^990099G'bye^000000|5Bye"; // Lets implode & switch/case switch(dynprompt(implode(.@menu$, ":"))) { case 1: mes "Oh, Hello to you too!"; break; case 2: mes "You want info? How about the time?"; mes gettimestr("%Y-%m/%d %H:%M:%S",21); mes "Also, you selected option #" + @menu; // @menu still works break; case 3: mes "Debug info:"; mes "@menu is " + @menu; mes "@menustr$ is " + @menustr$; mes "@menunum is " + @menunum; break; case 4: mes "Wow, a admin!"; break; case 5: mes "Bye bye~"; break; case 255: // Cancel button mes "Hey, don't ignore me!!"; break; } close;}
    I havn't tested it yet in production, but so far I havn't been able to encounter any issues with it.
    Also, I do all my eAthena devving on a windows box so I can't guarantee that it'll work with linux.
    Performance of dynprompt is going to be naturally worse than prompt, select or menu, but it might perform equally well in a dynamic setting if you take into consideration the array looping usually required - but I have not yet done any benchmarking or anything, so don't take my word for it. ( and to be honest, being able to create super clean code using switch / case is worth a tiny performance hit for me )
    I hope it will make your scripting less painful - it sure has for me!

    33 downloads

    Submitted

  8. Free

    [rAthena] & [eAthena] nopub.patch

    This mod hides the chat boards ingame.
    Tested/Compatible with rAthena SVN r17324 and eAthena SVN.
    Idea Credited To: http://rathena.org/board/topic/80276-novendingboards-novenders/


    152 downloads

    Submitted

  9. Free

    No @go when Player died

    Information
    This simple modification that players will not allow to use @go when they died in a battle.
    User may apply the patch and re-compile.
    Mirror
    No @go when players died

    399 downloads

    Submitted

  10. Free

    [QOL] Costume/Shadow no weight

    This small src modif make you don't worry if you have some costume items in your item_db with some weight, they'll all be calculated at 0.
    CostumeNoWeight.diff
    Make only the costume having no weight on the player
    ShadowAndCostumeNoWeight.diff
    Make costume and shadow having no weight on the player
     

    167 downloads

    Submitted

  11. Free

    trunk_17511_inflation.patch

    This mod implement floating items price ingame.
    Tested/Compatible with rAthena SVN r17511.
    Idea Credited To: http://rathena.org/board/topic/86695-done-inflation-in-npc-shop/

    126 downloads

    Submitted

  12. Free

    Script Command: getrandmob()

    Another quick package up of a small command I've had lying around for a long time. Grabs a random monster from one of the branch databases. Useful for hunter quests, disguise events, and anything else you can think of. Uses database stored in memory, so it's faster and more efficient than running SQL queries and doesn't require you to use SQL dbs for items and mobs.
    /*==========================================
    * Fetches a random mob_id
    * getrandmob(num,type);
    *
    * type: Where to fetch from:
    * 0: dead branch list
    * 1: poring list
    * 2: bloody branch list
    * num: Mob level to check against (0 = all)
    *------------------------------------------*/
    To add, simply place the files into the src/custom folder. If you already use those files, add the new code into your existing populated files and do a clean make.

    168 downloads

    Updated

  13. Free

    DuplicateCreate and DuplicateRemove command

    Apply the patch manually
    These commands allow you to create duplicates at run time.

    duplicatecreate("sourcename", "targetnameshown", "targetnamehidden", "targetmap", targetx, targety, targetdir{, targetspriteid{, targetxs, targetys}});
    duplicateremove("npcname");

    237 downloads

    Updated

  14. 2.00 USD

    Mapflag NoAttack (MF_NOATTACK)

    Modification created to block the attack on monsters on a given map.
    Script command created to enable / disable attacking players and monsters.
     
    Script:
    prontera,171,203,4 script NoAttack 67,{ mes "NoAttack"; mes "What can I do for you?"; switch(select("Enable Attack:Disable Attack")){ case 1: noattack 1; end; case 2: noattack 0; end; } } prontera mapflag noattack  
    By buying this script, you agree to these terms:
    You are not allowed to redistribute this script in any way, shape, or form. Chargeback scams are not tolerated and will get you punished on rAthena. I still retain all rights to this script. Terms above may be changed or adjusted without prior notification. Copyright © - Emperium Games 2017 - All Rights Reserved

    10 purchases   35 downloads

    Updated

  15. Free

    @norecall command

    @norecall/@nr : Don't be recalled by Emergency Call skill.

    It's only a .diff file to Apply on your rAthena folder.
    I made this free release starting of the idea of @YtalloNv here : https://rathena.org/board/topic/117304-i-need-to-add-the-norecall-command-on-my-server/#comment-353203
     

    259 downloads

    Updated

  16. Free

    no @duel in Prontera

    Information
    This simple modification, players are not allowed to duel in Prontera.
    User may apply the patch and re-compile.
    Note: You may change the "prontera" to your desired map.
    Mirror:
    no @duel in prontera.
    Patch (direct view)

    166 downloads

    Submitted

  17. 10.00 USD

    @increase - FAKEPLAYER

    fakeplayer, this command allows you to visually increase your players.
     
     

    6 purchases   8 downloads

    Updated

  18. Free

    Telma-for-rAthena++.patch

    Telma-for-rAthena++.patch
     
    Checking the source files of rAthena I found the Telma Source ... but not compatible for the new versions of rAthena.
     
    So what I did was take the Source that updated Anubis-K, that was not compatible with the new versions of rAthena and I made it compatible.
    Important:  You must create a character in your sql table "Char" called Battleground and this same must have the id 165100.
    In src/map/battleground.hpp 
    //Brian Bg Items - updated by [AnubisK] #define BG_CHARID 165100 // char named "Battleground" // you can change the character id. #define BG_TRADE 91 // trade mask of BG consumables // You can edit the mask     When you want to use a normal item it is recommended that you do not have a battleground item of the same type in inventory.
    Example: 
    If you want to use a "Blue Potion" with the skill "Potion Pitcher" and you have a "Battleground's Blue Potion" you will first take the BG Pocion and not the normal one.
    This is solved by leaving the Battleground item in the Storage.
     
    Note:  I'm not the author, the only thing I did was to make it compatible with the new versions of rAthena so that this good file is not forgotten.
               The credits of for the original idea must go to (as fas as I know) Brian one of the devs http://rathena.org/board/user/237-brian/.

    198 downloads

    Updated

  19. Free

    [Script Command] npcisnear

    This commands verify if any NPC is near the distance of a player. Can be useful for some script restrictions.
    Script Sample:
    prontera,150,150,5 Script Curious Boy 90,{ .@n$ = "[Curious Boy]"; .@distance = 5; mes .@n$; if(isnpcsnear(getcharid(0), .@distance)) mes "Sorry, I will only talk with you when no NPC is near you!"; else mes "Hi!"; close; }  

    76 downloads

    Submitted

  20. Free

    Mapflag gvg_noally

    This is mapflag  gvg_noally  will ignores guild alliances in GVG maps
     
    Compatibility:
    The diff was made for rAthena Git Hash: 55acdb98 / 2018-10-10

    185 downloads

    Updated

  21. Free

    @voteleader for the Battleground

    Min votes configured: 3 // Can be changed
    Can vote on yourself: Disabled // Can be activated.

    165 downloads

    Updated

  22. 5.00 USD

    Hop Jump

    Hop Jump [ GLO_SAUT ] 
    Can be used with the skill id 5000 or the atcommand @hop <skill level>

    2 purchases   8 downloads

    Submitted

  23. Free

    [Mapflag] droprate

    It's updated to current emulators.
     
    Original mod by @Xantara
     
     

    157 downloads

    Submitted

  24. Free

    Event Consumables (a Telma patch update)

    So, I decided to update this patch :
     
    However, I didnt realize that this is already available just right after I finished updating it from this :
     
    But... I gonna release this anyways... But made some modifications...
    So, what I did was I made my own consumable named 'Event'. These consumables can only be used on maps with "event_consume" mapflags.
    This patch is NOT to be diffed if you have Extended BG Pre-installed or If you are planning to install it in the future ESPECIALLY IF YOU DON'T KNOW A SINGLE THING ON SRC. This is likely for Servers who dont/wont have the Extended BG but wants to have this feature. Unless you know what you're doing. You can actually add this to Extended BG by Easycore. I intentionally coded it similarly and avoided conflicts to it for people who wants to add this but have Extended BG installed in their servers.
    Enjoy! I hope this will be to any use of any of you.
    Compatibility is your responsibility.
    No backward compatibility support.

    140 downloads

    Updated

  25. Free

    Hide announcements/broadcasts command @blockbc

    Hi,

    This is a response from this post : 
     
    Requirements:
    Basic knowledge how to apply diff on your server files. How to use the command:
    @blockbc <param>.
    Parameters:
    PARTY - block incoming broadcasts from party. GUILD - block incoming broadcasts from guild. BG - block incoming broadcasts from battleground. CLAN - block incoming broadcasts from clan. MAP - block all incoming broadcasts from the current map. ALL - block all incoming broadcasts. @unblockbc. - as per the command name suggest
    Disclaimer:
    This is tested on latest server files as of the day it was posted. May or may not work on older server files. Keeping this up-to-date or vice-versa won't be my responsibility. Compatibility is your responsibility. Use at your own risk.

    229 downloads

    Submitted


×
×
  • Create New...