Jump to content

Source Modifications

Source Mods & Code Snippets located here.

135 files

  1. Free

    (HANSIP) Skill Spam Protection

    Info & History

    Info:
    HANSIP Protection is a src modification to make sure NDG,speed hack, WPE Users still follow the rules.

    History:
    This is a simple code, which we have made since long to minimize the NDG User.
    The first way to solve NDG, we add a cooldown for skills that dosn't has a fixed cooldown (Sonic Blow, Cross Impact, etc).

    But the player doesn't allowed to do double cast.
    Finaly we made this code that minimize the NDG users, but still keep the original feature that is double cast for some skills (Sonic Blow, Cross Impact, etc).



    Implementation & Feature

    Implementation:
    Download the file Apply manual "rA - Hansip Protection.diff" to your src. Paste "battle_conf.txt" to conf/import/ Don't forget to recompile your server. All done

    Features:
    The user still able to use double SB / CI / etc. You may switch on and off. Very simple Skill Packet Spam detector

    .

    Note:

    2013 client already detect modified file (after act delay).
    so i've tested this using WPE.
    i got the number from comparing with and without *cheat.



    Supported Skills:Bash Sonic Blow Arrow Vulcan Double Strave Bowling Bash Ninja Kouenka Ninja Hyousensou Jupitel Thunder Cross Impact Dragon Breath Fire & Water

    Change Log:
    1.1
    -Add archer double strave skill

    1.2
    -Add support for some skills

    1.3
    -Change name from NDG to Hansip
    -Add skill packet spam detector & punishment
    -Support PRE-RE

    1714 downloads

    Updated

  2. Free

    (QOL) Taekwon Mission printing % every monster killed for the mission

    A small QOL some players asked me to add.
    It justs print each time a monster is killed for the taekwon mission the % completed

    115 downloads

    Updated

  3. Free

    [Atcommand] displaydrop

    Introduction

    On a server where I play someone suggested to add the command "displaydrop" to enable people to see something rare or valuable was dropped by a monster because autoloot is only available until a certain level.
    I had some free time on my hands so I decided to implement something like that.


    Features

    You can limit the command like autoloot (e.g. @displaydrop 10 will only show items with a chance equal to or below 10%) Two different ways of server side configuration are available:Show real drop (<Monster> dropped <Item> (<Amount>.) Show only an unspecific message that a monster dropped something (<Monster> dropped something with a chance equal to or below <Chance>%.)





    Bugs, feedback, etc.
    If you have found a bug or want to give feedback about my modification you can either send me a private message or post in the related thread.

    216 downloads

    Submitted

  4. Free

    [Config] Min/Max Boss Equip Drop Rates

    Information
    Separates the item_drop_equip min and max configurations for normal and boss mobs in conf/battle/drops.conf
    Ie. New config settings: item_drop_equip_min and item_drop_equip_max
    Documentation
    Credits
    Created by Xantara
    Requested by GoldGloryRO

    This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.
    Do not mirror without my consent.

    274 downloads

    Submitted

  5. Free

    [Label] OnPCAttackMobEvent

    This label is invoked everytime a player attacks in a certain map flagged with "attackmobevent".
    Sintax:

    OnPCAttackMobEvent: (...)
    Mapflag:
    mapname<TAB>mapflag<TAB>attackmobevent
    It works ONLY in the maps with the mapflag "attackmobevent".

    488 downloads

    Submitted

  6. Free

    [Mapflag] droprate

    Information
    This source modification allows certain maps that have the droprate mapflag attached to have a modified drop rate based on the state/flag given. It affects all mobs on that map, including MvP. However, items that are looted by mobs (eg. Poring) are not affected (they have to drop).
    The modified rate is applied after all the other rate modifiers (such as those in the conf/battle/exp.conf, monster size, etc.)
    This bypasses the min and max drops in the exp.conf file and the drop_rate0item configuration.
    Mapflags noloot, nomobloot, and nomvploot take precedence over the droprate mapflag.
    There is also a battle configuration that allows you to toggle the global droprate effect on and off.
    Great for event or special maps where you want the items to drop less or more frequently without having to duplicate the mob(s).
    Syntax
    Configuration
    Documentation
    Example Snippet

    // Mobs that are killed in Prontera have their drop rate halved // ie. Poring normally drops Empty Bottle at 100% (@mi). If spawned in Prontera, the drop would become 50% prontera mapflag droprate 50 // Mobs that are killed in Geffen have a 2x (+200%) the drop rate // ie. Fabre normally drops Clover at 10% (@mi). If spawned in Geffen, the drop of Fluff would become 20% geffen mapflag droprate 200
    Credits
    Created by Xantara

    This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.

    595 downloads

    Submitted

  7. Free

    [Mapflag] droprate

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

    150 downloads

    Submitted

  8. Free

    [Mapflag] Mobitemadder

    This mapflag sets more drops for monsters at the map that it's been attached.
    Sintax:

    mapname<TAB>mapflag<TAB>mobitemadder<TAB>mob_id,item_id,drop_per{,item_id,drop_per(...)}
    You can set up to ~50 more items for mobs.
    "drop_per" is the chance of drop, from 1 (0,01%) to 10000 (100%).
    There's an example at the screenshot, I setted a Yggdrasil Berry with 100% of chance for the Poring at prt_fild08 map.
    You can set a lot of mobs, but you have to set more mapflags for your maps.

    365 downloads

    Updated

  9. Free

    [Mapflag/QOL] NoDeath_Count

    A mapflag that doesn't increment death count when a player dies. Usefull to preserve super novice bonus.

    75 downloads

    Submitted

  10. 20.00 USD

    [Not For Sell 2020-10-22] Sader's Renewal Mode [PRE-RE Only]

    [Not For Sell anymore , after rAthena item YAML update 2020-10-22]
     
    You can do it your self in less then 60 seconds in the new YAML update!
    quest here rathena/quest_db.yml at master · rathena/rathena (github.com)
    skills here rathena/skill_db.yml at master · rathena/rathena (github.com)
    items here rathena/item_db.yml at master · rathena/rathena (github.com)
    mob coming soon
     
    if you already did buy this file , you can download it , however if you use the latest rathena , this file does not support that
    it's easy to do what my mod does , in yml , you don't need this files anyway if you use the latest rathena
    which mean , you don't need this mod anymore

     
     
    License : 
    by downloading this file you are agree on the following:
    i will Back Up my server before using this file. i will use this file for my own private server only , not for a group of servers . i will never share this file with anyone . i will never upload this file to public and i wont leave it on shared storage . i will report any bugs or errors to sader1992 . all the rights retain to sader1992 . Charge-back scams are not tolerated and will get you punished on rAthena. Terms above may be changed or adjusted without prior notification .
     

    21 purchases   111 downloads

    Updated

  11. Free

    [Package] @itemmap & getitem_map()

    Information
    This command will give a specific amount of specified items to all players on the map.
    I tried to make it a bit more challenging for myself so I have added the capability of giving the same party or guild members of that specific map as well.
    Makes it easier to script stuff such as events especially those including parties and guilds to participate.
    Atcommand version now available!
    Tested on rAthena Trunk 17062
    Syntax
    Script
    Atcommand
    Documentation
    Script
    Example:
    Script Command (also found in doc/sample/npc_getitem_map.txt)

    // Sample NPC to test the custom getitem_map script command // Script and command created by Xantara prontera,156,170,3 script getitem_map test 120,{ mes "input item id"; next; input .@id; mes "input item amount"; next; input .@amt; mes "input type:"; mes "0=everyone, 1=party, 2=guild 3=bg"; next; input .@t; //getitem_map .@id,.@amt,strcharinfo(3),.@t,((.@t==1) ? getcharid(1) : (.@t==2) ? getcharid(2) : getcharid(4)); switch(.@t) { case 1: set .@type_id, getcharid(1); break; case 2: set .@type_id, getcharid(2); break; case 3: set .@type_id, getcharid(4); break; } getitem_map .@id,.@amt,strcharinfo(3),.@t,.@type_id; mes "done"; close; }
    Atcommand

    // Everyone one the same map as the who called this command will get 1 Jellopy (ID#607) @itemmap 607 // Everyone one the same map as the who called this command will get 5 Jellopy (ID#607) @itemmap 607 5 // Players who are in the party "myParty" and on the same map as the who called this command will get 2 Yggdrasil Berry (ID#608) @itemmap1 608 2, myParty // Players who are in the guild "hisGuild" and on the same map as the who called this command will get 3 Jellopy @itemmap2 "jellopy" 3, hisGuild
    Credits
    Created by Xantara
    BG Support Suggestion/Idea by Silvester
    Atcommand Suggestion/Idea by Mysterious
    Mirror
    http://downloads.artistic-coder.com/download.php?file=package_getitem_map_v2.0.1_%5BXantara%5D.patch

    This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.
    Do not mirror without my consent.

    1388 downloads

    Updated

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

  13. Free

    [rAthena] & [eAthena] cell_noskill.patch

    This mod won't allow you to cast any skills on the selected cells.
    This mod helps alot if you have pvp maps like UFC Arena and other PvP Colosseum.
    Tested/Compatible with rAthena SVN r17325 and eAthena SVN.
    Sample Script:
    - script Function#noskill -1,{OnWhisperGlobal:OnInit: setcell "prontera",147,174,164,162,cell_noskill,1; end;}

    364 downloads

    Submitted

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

  15. Free

    [Release] Script Command *equip2

    Information
    This command will equip a specific item on the invoking character.
    It will only equip if the player is online and the item is in his/her inventory.
    It does not bypass the item properties such as equippable, player job class, and level requirements.
    Works best with the getitem2 script command.
    Syntax

    equip2 <item id>,<refine>,<attribute>,<card1>,<card2>,<card3>,<card4>{,<account ID>};
    Documentation
    Example Snippet:

    // Receive a +2 Quadruple Lucky Sword (4 poring cards) getitem2 1101,1,1,2,0,4001,4001,4001,4001; // Equip the specific item on the character who has the account ID of 2000000 equip2 1101,2,0,4001,4001,4001,4001,2000000;
    Credits
    Created by Xantara
    Requested by kevinchen (here)

    This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.
    Do not mirror without my consent.

    168 downloads

    Updated

  16. Free

    [SCRIPT COMMAND] Fake Player

    This modification allows you to create fake players without further using mob_avail for such behavior.

    Usage:
    .@monsterGID = fakeplayer( map, x, y, name, job_id, sex, hair_style, hair_color, weapon, shield, head_top, head_mid, head_bottom, option, cloth_color );

    1547 downloads

    Updated

  17. Free

    [Script Command] getdconst & setdconst

    First of all, yes, I know that this break the "const" concept, but I really miss "static values" in script engine.
    Yes, I know that we can use $vars but it's a lot pretty using const logic.
    If you don't know what is a "const", open your db/const.txt file
    In the end of file, you can add something like this:
    X_VALUE%TAB%1005

    And now, you can call X_VALUE in any script and the script will know that X_VALUE is not a player script, it's a """"global"""" variable, so you can call it with or without a player attached.

    And now we came to my commands.
    getdsconst allow you to get a constant dynamically like getd.

    For sample:

    .@var = getdconst( "X" + "_" + "VALUE" );
    This would return 1005.
    And now with setdconst we can change those as well.

    setdconst( "X_VALUE", 2020 );
    Remember, when you restar t your server, this constant will be 1005 again!
     
    Here another sample script:
    prontera,150,150,5 Script CommandsTest 90,{ .@const$[0] = "SWORDCLAN"; .@const$[1] = "ARCWANDCLAN"; .@const$[2] = "GOLDENMACECLAN"; for( ; .@i < getarraysize( .@const$ ); .@i++ ) mes "Contant Value of [" + .@const$[.@i] + "] is " + getdconst( .@const$[.@i] ); next; mes "I will now, change all const values to +1"; for( .@i = 0; .@i < getarraysize( .@const$ ); .@i++ ) setdconst( .@const$[.@i], getdconst( .@const$[.@i] ) + 1 ); close; }  

    33 downloads

    Submitted

  18. Free

    [Script Command] getskillname

    getskillname
    Useful script command to return a skill name (Skill Description).
    Usage
    Example
    mes "Skill Name: "+getskillname("SM_SWORD"); print ("Skill Name: Sword Mastery")  
    ________________________________________________
    Feel free to Donate If you want to support me.

    ________________________________________________

    497 downloads

    Submitted

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


     

     

     

    132 downloads

    Updated

  20. 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; }  

    74 downloads

    Submitted

  21. Free

    [Script Command] viewcondition

    This mod allows you to set some conditions to a player can see or interact with a NPC.

    Command:
    viewcondition( npc_name, int_variable_name, compare_method, value_1, { value_2 } );

    Compara Methods Avaiable:
    EVC_LESS - If player variable is < value_1
    EVC_EQUALS - if player variable is == value_1
    EVC_MORE - if player variable is  > value_1
    EVC_BETWEEN - if player variable is  >= value_1 and <= value_2
    EVC_DIFFERENT - if player variable is != value_1

    You can apply more than one condition to a npc, but if one condition fail, the npc will not be seeing by the player.

    Script Sample:

     
    new_1,55,111,5 Script Lupina#1 10078,{ mes "You can see and talk with me because your @teste variable is less than one!"; next; mes "Now, I will set @teste to 2 and you will no longe see me when goes outsight me or if use @refesh!"; close2; @teste = 2; end; OnInit: viewcondition( strnpcinfo(0), "@teste", EVC_LESS, 1 ); end; }  

    143 downloads

    Updated

  22. Free

    [Skill] Call for help

    Guild leader can call all guardian to his here to protect him.
    Preview : http://www.youtube.com/watch?v=mJEXVZlrcSI?hd=1
    .
    skill_db set :

    997,0,6,4,0,0x3,-1,5,1,yes,0,0,0,magic,0, GODD_CALLFORHELP,Call for help
    skill_require_db set :

    997,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 :

    997,0,0,0,0,0,300000,0
    Add new skill (Clinet) :
    http://rathena.org/w...ls#XRay_support
    http://rathena.org/w...on-Xray_Support

    159 downloads

    Submitted

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

    130 downloads

    Submitted

  24. Free

    [UPDATE] +7 and above refined item no drop

    This is an update to the original post :
     
     
    and a response to this topic :
     
     
    Currently working on Git Hash : ea54670

    144 downloads

    Submitted

  25. Free

    @afk with AFK Hat

    Using @afk with AFK Hat. (Notice Board)
    I just modified it and put the AFK Hat effect.
    Changelog:
    v1.0 - Initial Release - Need to open a chat room to use @afk command and it is disabled to use in prontera
    v1.1 - No need to create a chat room to use @afk command as suggested by Mysterious (disabled to use in prontera)
    v1.2 (eA and rA) - Added a config in misc.conf. afk_timeout: 0 (0 is default) Tested with the latest rathena - Revision 17156
    v1.3 (rA ONLY) - Working with latest revision 17306 - Now you can't use @afk when you are dead.

    2961 downloads

    Updated


×
×
  • Create New...