Jump to content

Source Modifications

Source Mods & Code Snippets located here.

146 files

  1. More information about "[Skill] Coup de Grace"

    Free

    [Skill] Coup de Grace

    When you use this, it will give you 100% critical.
    Preview :
    skill_db set :

    998,0,6,4,0,0x3,-1,5,1,yes,0,0,0,magic,0, DOTA_COUPDEGRACE,Coup de Grace
    skill_require_db set :

    998,0,0,10,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
    skill_cast_db set :

    998,0,0,0,5000,0,30000,0
    Add new skill (Clinet) :
    http://rathena.org/wiki/Adding_new_skills#XRay_support
    http://rathena.org/wiki/Adding_new_skills#Renewal.2FNon-Xray_Support

    133 downloads

    Submitted

  2. More information about "[Script Command] isselling - Discovery if a npc is selling a item by ID"

    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  


     

     

     

    146 downloads

    Updated

  3. More information about "bonus bXDefReturn"

    Free

    bonus bXDefReturn

    bonus bXDefReturn
    Add resistances against return damages.
    ::Structure::
    bonus bPhysicalDefReturn,n;          +n% damage reduction against physical reflect attack
    bonus bMagicalDefReturn,n;          +n% damage reduction against magical reflect attack
    ::Video::
     
     

    206 downloads

    Updated

  4. Free

    Item "allowed" restriction

    With this mapflag you say where a certain item is allowed
    Example:
    seting:
    prontera mapflag customevent 1
    and
    500,1
    item id 500 just can be used in prontera.
    More info here.
    http://rathena.org/board/topic/97437-item-event-mapflag/
    Compatible with: 20ff69e

    137 downloads

    Updated

  5. Free

    Command MesClose

    Command used in the scripts of NPCs whose ultimate goal is to unite the two commands,Mes and Close, an example down:

    prontera,150,150,5<TAB>script<TAB>Testing Command<TAB>748,{ mes "[Testing Command]"; mesclose "Testing command MesClose"; }
    This command will open a window of speech and the Close button appears immediately.

    79 downloads

    Submitted

  6. More information about "@go/@warp delay when hit - Updated"

    Free

    @go/@warp delay when hit - Updated

    Here is an updated @go and @warp delay when hit.

    743 downloads

    Submitted

  7. More information about "Stores Hom & Merc SC duration, Scripts: homexp, hom_heal, hom_sc_start"

    Free

    Stores Hom & Merc SC duration, Scripts: homexp, hom_heal, hom_sc_start

    New Script Commands
    homexp <exp>{,<char_id>}; based on idea on https://rathena.org/board/topic/115769-getexp-for-homunculus/ hom_heal <hp>,<sp>{,<char_id>}; hom_sc_start <type>,<tick>,<val1>,<val2>,<val3>,<val4>{,<char_id>}; Edited Script Commands
    mercenary_sc_start <type>,<tick>,<val1>,<val2>,<val3>,<val4>{,<char_id>}; Feature added
    Stores SC Datas for Mercenary and Homunculus to covers Issue: 3070 (assumed Mercenary and Homunculus are always char bound)  
     
    Important, don't forget to execute the SQL upgrade (included in .diff file)
    ALTER TABLE `sc_data` ADD COLUMN `bl_type` VARCHAR(3) NOT NULL DEFAULT '1'; Sample NPC homscript.txt
     
    PS: The screenshots are just random pics

    161 downloads

    Updated

  8. More information about "Instakill Mapflag"

    Free

    Instakill Mapflag

    Tested and working with: 3e625dfdf9868690e36677701cbebe1b379a7485
    This source edit is intended for my experiments. Feel free to have fun with it but I wouldn't be held accountable for damages that it may create for your server.
    No support will be given other than the specified rAthena version above.
    Purpose
    Create a mapflag for instakill. As it would suggest, all damages done within the map will be amplified to max damage, thus instakilling the target.
    It works both for the following use cases:
    1. Player attacking a Monster
    2. Player attacking another Player
    3. Monster attacking a Player
    4. Monster attacking another monster
    Where "Monster" can be a normal mob or a Homunculus
    Usage
    In-game
    @mapflag instakill [0|1] Script as mapflag
    prontera<tab>mapflag<tab>instakill Script as used in setmapflag
    setmapflag .EventMap$, mf_instakill; Example
    Tag, You're Dead Script
    Source In Action
    Source file
     
    1. I will retain all the rights in all the scripts that I create
    2. Client cannot redistribute nor resell the scripts that I provide
    3. No refunds
    4. Maintenance of scripts does not include modification of the original intended behavior. If the script has been broken due to prior modification of the original behavior then it would mean a new service request
    5. Modification of the original intended behavior would mean a new service request and would go through the process mentioned above
    2. This can be redistributed anywhere in any form.
    3. This shall not be in any way be branded for sale anywhere in any form.
    4. Maintenance will not be provided. Feel free to use the support section.
    5. See #3.
    6. Ninja has the right to post all my free services to the release section and make it available for everybody to use
    7. Maintenance of scripts will be provide free of charge
    8. I will not keep any sensitive information from your server nor any credentials that you lend me
    9. I will backup all my server files before I use this.
    10. Ninja will not be liable in any way at any time.
    11. The moment I use anything from here, I accept all the terms of services stated above.
    Where the script author is Ninja (https://rathena.org/board/profile/7005-ninja/).

    86 downloads

    Updated

  9. Free

    Display Battle Ground information (@bginfo), Display the BG settings you made for your server!

    Atcommand @bginfo displays the flee penalty, long, short, weapon, and magic rates all in one command.

    232 downloads

    Submitted

  10. More information about "@at with afk hat  very easy Modify"

    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.

    473 downloads

    Submitted

  11. Free

    Fixed Cast and Delay Adjustment Mapflag

    This mapflag modification allows you to set a mapflag to reduce fixed cast time and delay by a percentage placed after the mapflag. I made this for a server I ran for awhile and used it specifically to reduce cast time and delay on standard (Non PvP or GvG) maps. It gives the game a quicker pace, without forcing you to modify a set config that changes the whole server. It's great for events, PvP, PvM... just about anything you can think of since you can modify this to your heart's content between maps.

    Example:prontera mapflag pvmcast 50 // Any player who goes to map 'prontera' has a 50% reduction in fixed cast time and delay
    This modification is dynamic, so you should be able to go between any map and have the correct reduction applied when necessary. Please test before releasing in a production server as I have ported it with a few different features in the latest GIT compared to what I use to have it set as.
    Also note the modification only adjusts fixed cast delay, it does not change variable cast time. This means it will only work in RENEWAL as well. Also, feel free to modify and re-release if you add some extra functionality to it.

    179 downloads

    Submitted

  12. More information about "Inject - Allows running dynamic scripts in running time"

    Free

    Inject - Allows running dynamic scripts in running time

    This script commands allow you to "Inject" scripts inside other scripts.
    But Zell, why I want this?

    Well, you can use a script code from a SQL table! Imagine that now you can change scripts code blocks without reloading scripts direct from your database or you can even do like me where I'm building scripts from a API!

    Sample Script:

     
    prontera,150,150,5 Script Inject Test 91,{ .@test = rand(1, 100); mes "Let's test Inject"; mes "I will declare variable .@test as " + .@test + "."; mes "My npc id is " + getnpcid(0), " "; mes "[Inject Code Start]", " "; // This script text coud be loaded from a SQL table! Inject( "mes \"Running NPC is \" + getnpcid(0); " + "mes \"Value of .@test is \" + .@test; " + "next; " + ".@test = rand(200, 500); " + "mes \"Now value of .@test will be \" + .@test;" + "close2; " ); mes "[Inject Code End]", " "; mes "Inject was ok and .@test is now " + .@test; close; }  

    98 downloads

    Updated

  13. 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

    291 downloads

    Submitted

  14. More information about "@hidepet / @hidepetall commands"

    Free

    @hidepet / @hidepetall commands

    @hidepet allows to hide all pets except the player's, whereas @hidepetall hides all pets, including the player's.
    This mod also allows to set a default parameter in battle_conf, just add
    hide_pet: 1 To set all pets hidden except the player's, or 2 for all pets period.
     
     

    476 downloads

    Updated

  15. More information about "Multilevel Range"

    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.

    245 downloads

    Updated

  16. 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

    405 downloads

    Submitted

  17. More information about "DuplicateCreate and DuplicateRemove command"

    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");

    258 downloads

    Updated

  18. Free

    Drop Rate Seprator

    Firstly ,
    This mod is totally based on xantara's patch.
    I HAVE NO CREADITS AT ALL FOR THIS.
    I JUST USED MY BRAIN A LITTLE AND DID IT.
    everyone having even little knowledge of src can do it.
    just uploading it for other who are unknown to src can actually get a proper Droprate correction.
    This file would seprate boss/miniboss equip and card droprate from normal monsters, so that you can set min/max values with
    exact parameters.
    THIS FILE IS TESTED. so if anything goes wrong , its your fault.
    BACKUP BEFORE YOU APPLY!!
    again...ALL CREDITS TO XANTARA.
    LICENSED UNDER a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.
    Do not mirror without XANTARA's consent.
    ORIGNAL TOPIC :http://rathena.org/board/files/file/2241-config-minmax-boss-equip-drop-rates/
    P.S just do it mannaully ,auto-patch might not work.

    203 downloads

    Submitted

  19. More information about "Snatch Modification"

    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~

    102 downloads

    Updated

  20. More information about "[QOL] Costume/Shadow no weight"

    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
     

    180 downloads

    Submitted

  21. More information about "@sann (Custom Broadcast Command)"

    Free

    @sann (Custom Broadcast Command)

    The commands is @sann (contraction of staff announced), but you can use 3 types of sintaxis (because was add in the atcommand_eathena.conf 2 alias).
    The sintaxis is:
    @sann
    @astaff
    @staff
    What's new in versión 3.1?
    And auto detect what group belongs the GM and will add their label; all this using whatever you want in the sintaxis. So, if you'll use @sann, astaff or @staff the result will be the same.
    Note: Don't remove the credits, please

    156 downloads

    Submitted

  22. 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.

    173 downloads

    Updated

  23. 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/


    162 downloads

    Submitted

  24. 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!

    35 downloads

    Submitted

  25. More information about "Hide announcements/broadcasts command @blockbc"

    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.

    365 downloads

    Submitted

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...