Source Modifications
Source Mods & Code Snippets located here.
143 files
-
No-Drop +7 or higher items
By Elliott
A small request I responded to from the eAthena forums ages ago, it's very simple and even though the last time it was tested was on eAthena r14410, there shouldn't be any problems.
I used msg slot "520" but again this can be changed, as well as the refine rate of dropping too. Someone with no src knowledge can easily configure it. Enjoy.
409 downloads
Submitted
-
Main Chat Modification
By Cookie
This modification will allow the user to set a main chat delay (in seconds) for flood protection and a main chat color (in hexadecimal color format).
The user will apply the patch and re-compile. Then, in /rAthenaroot/conf/battle/client.conf refer to the main_chat_delay and main_chat_color sections.
409 downloads
Submitted
-
No @go when Player died
By EliteBlack
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
-
Keitenai Resistance Capping
By Keitenai
File Name: Keitenai_Delay_System
File Submitter: keitenai
File Submitted: 27 Nov 2017
File Category: Src Modification
Content Author: keitenai
Information:
Resistance capping applies to item effects which have "bSubEle, bSubSize, bSubRace2, bSubRace, bSubClass, bNearAtkDef, and bLongAtkDef".
This modification can be set to less than 100 resistance cap to avoid too resistance heal, or set over 100 upto max of 200 if the dev would like to enable resistance heal.
Features:
Configurable Maximum resistance capping. Resistance capping can be applied to different resistance bonus types with different values. Resistance capping is applied to all items with resistance bonus scripts. By buying this scr modification code, you agree to these terms:
You are not allowed to redistribute this src code modification in any way, shape, or form. Chargeback scams are not tolerated and will get you punished on rAthena. I @Keitenai still retain all rights to this src modification. Terms above may be changed or adjusted without prior notification.
395 downloads
Updated
-
guildgetitem2 & guildgetitembound2
By Skorm
This command sends items to the guild storage without the need of server restart.
Example:
prontera,100,100,5 script guildgetitem2 100,{ //guildgetitem2 <item id>,<amount>,<identify>,<refine>,<attribute>,<card1>,<card2>,<card3>,<card4>{,<account ID>}; switch ( guildgetitem2(1218, 1, 1, 1, 10, 4305, 0, 0, 0) ) { case 1: dispbottom "Item added to your guild storage."; end; case 0: dispbottom "Unknown Error."; break; case -1: dispbottom "Cannot open both storages."; break; case -2: dispbottom "Player doesn't have a guild."; break; case -3: dispbottom "Player doesn't have a guild storage."; break; case -4: dispbottom "Guild storage being used by someone else."; break; case -5: dispbottom "Guild storage is full."; break; } end; } Works much like getitem2 and it uses the attached players guildstorage.
388 downloads
Updated
-
OnPCLootEvent
By joecalis
New NPC Label
OnPCLootEvent: This label triggers when a player picks up an item from the ground in a map marked with the 'lootevent' mapflag. This works with @autoloot and @alootid, this does not work for items given by script. When in a party with shared loot, only the player who looted the item from the ground will trigger this label. The information of the item picked up will be stored in an array called '@looted_data', check the script_commands.txt for the order of the data stored.
Usage Sample: lootevent_sample.txt
381 downloads
Updated
-
[rAthena] & [eAthena] cell_noskill.patch
By Jaburak
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;}
377 downloads
Submitted
-
[Mapflag] Mobitemadder
By Zephyr
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.
372 downloads
Updated
-
Hide announcements/broadcasts command @blockbc
By pajodex
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.349 downloads
Submitted
-
Sonic Blow and Arrow Vulcan v3.patch for 2018/12/19 Up Client
By gamingmagic
thanks to ckx_, syon, gidz, sadre
Video_2024_08_04-5_edit_0.webm304 downloads
Updated
-
Hotkey Scripts
By joecalis
New Script Commands
gethotkeys({<char_id>}); updatehotkey(<type>,<id>,<lv>,<pos>{,<flag>,<char_id>}); clearhotkeys({<char_id>}); These are just simple commands, that gets, sets, and clears your hotkeys(skill bar).
Usage Sample: hotkey_sample.txt
301 downloads
Updated
-
@command pack
By rootKid
¦¦¦¦¦¦ ¦¦¦¦¦¦ ¦¦¦¦¦¦ ¦¦¦¦¦¦¦¦ ¦¦ ¦¦ ¦¦ ¦¦¦¦¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦¦ ¦¦ ¦¦ ¦¦¦ ¦¦ ¦¦¦¦¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦¦¦¦ ¦¦ ¦¦¦ ¦¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦¦ ¦¦¦ ¦¦¦ ¦¦¦ ¦¦¦¦¦¦ ¦¦¦¦¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦¦¦¦¦¦ @command pack. (@runlabel, @allchat, @emo, @allemo, @alleffect) //////////////////////////////////////////////////////////////////////////////////////////////// [src/map/atcommand.c] is the only file needed to be editted. Set your account group permissions as desired. You're assumed to know how to implement these. However, if you have further questions, feel free to contact me. //////////////////////////////////////////////////////////////////////////////////////////////// ACMD_DEF(runlabel), //rootKid ACMD_DEF(allchat), //rootKid ACMD_DEF(emo), //rootKid ACMD_DEF(allemo), //rootKid ACMD_DEF(alleffect), //rootKid /*========================================== * @runlabel by [rootKid] * Makes invoker run an 'On' label from within an npc * @runlabel Healer#OnMinute44 *------------------------------------------*/ ACMD_FUNC(runlabel) { char label_output[256],npcname[100],label[100]; nullpo_retr(-1, sd); if (!message || !*message) { sprintf(atcmd_output, "Usage: @runlabel <npc name>, <label>"); clif_displaymessage(fd, atcmd_output); return -1; } if (sscanf(message, "%23[^,], %99[^\n]", npcname, label) < 2) { clif_displaymessage(fd, "Please, enter the correct info (usage: @runlabel <npc name>, <label>)."); return -1; } if (npc_name2id(npcname) != NULL) { sprintf(label_output, "%s::%s", npcname, label); npc_event( sd, label_output, 0 ); clif_displaymessage(fd, "Label was triggered."); return 0; } else { clif_displaymessage(fd, "NPC doesn't exist."); return -1; } } /*========================================== * @allchat by [rootKid] * Makes all players, except the invoker, send out a desired message * eg. @allchat blahblah *------------------------------------------*/ ACMD_FUNC(allchat) { struct map_session_data* iter_sd; struct s_mapiterator* iter; char tempmes[200]; iter = mapit_getallusers(); nullpo_retr(-1, sd); memset(tempmes, '\0', sizeof(tempmes)); memset(atcmd_output, '\0', sizeof(atcmd_output)); if (!message || !*message || sscanf(message, "%199[^\n]", tempmes) < 0) { clif_displaymessage(fd, "Please, enter a message (usage: @me <message>)."); return -1; } for (iter_sd = (TBL_PC*)mapit_first(iter); mapit_exists(iter); iter_sd = (TBL_PC*)mapit_next(iter)) if (iter_sd != sd){ //Triggers on all players except the one who initiates it. sprintf(atcmd_output, "%s : %s", iter_sd->status.name, tempmes); // *%s %s* clif_disp_overhead(&iter_sd->bl, atcmd_output); } mapit_free(iter); return 0; } /*========================================== * @emo by [rootKid] * Makes invoker send out an emote * @emo 3 *------------------------------------------*/ ACMD_FUNC(emo) { if (!message || !*message) { clif_displaymessage(fd, "Usage: @emo 1-81"); return -1; } clif_emotion(&sd->bl, atoi(message)); return 0; } /*========================================== * @allemo by [rootKid] * Makes all players, except the invoker, send out a desired emote * eg. @allemo 1 *------------------------------------------*/ ACMD_FUNC(allemo) { struct map_session_data* iter_sd; struct s_mapiterator* iter; iter = mapit_getallusers(); if (!message || !*message) { clif_displaymessage(fd, "Usage: @emo 1-81"); return -1; } for (iter_sd = (TBL_PC*)mapit_first(iter); mapit_exists(iter); iter_sd = (TBL_PC*)mapit_next(iter)) if (iter_sd != sd){ //Triggers on all players except the one who initiates it. clif_emotion(&iter_sd->bl, atoi(message)); } mapit_free(iter); return 0; } /*========================================== * @alleffect by [rootKid] * Makes all players, except the invoker, send out a desired special effect * eg. @alleffect 89 *------------------------------------------*/ ACMD_FUNC(alleffect) { struct map_session_data* iter_sd; struct s_mapiterator* iter; int type = 0, flag = 0; iter = mapit_getallusers(); nullpo_retr(-1, sd); if (!message || !*message || sscanf(message, "%d", &type) < 1) { clif_displaymessage(fd, "Please, enter an effect number (usage: @effect <effect number>)."); return -1; } for (iter_sd = (TBL_PC*)mapit_first(iter); mapit_exists(iter); iter_sd = (TBL_PC*)mapit_next(iter)) if (iter_sd != sd){ //Triggers on all players except the one who initiates it. clif_specialeffect(&iter_sd->bl, type, (send_target)flag); } mapit_free(iter); return 0; }
297 downloads
Updated
-
Admin's Custom Broadcast
That Mod adds a Custom Admin's Broadcast with a Custom Label:
The format to this command is: @adm <message>
For Example: If you write @adm Hello World, that's my Custom Command for rAthena.
The result is: [Admin] Name: Hello World, that's my Custom Command for rAthena.
If you want modify the broadcast's color you need change the hexadecimal color in that line for the color that you like it, in this case from Admin's Custom Label:
0x99CCFF
If you want modify the Label, you need to change the label intro [ ], in this case is Admin:
"[Admin] %s : %s", sd->status.name, message);
What's the New?
Added GM's Custom Broadcast
Added Super User's Custom Broadcast
Used revision 17132
Bug fixed
292 downloads
Updated
-
No @command while talking NPC
By Kichi
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
290 downloads
Submitted
-
[Config] Min/Max Boss Equip Drop Rates
By Xantara
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.
283 downloads
Submitted
-
@novendingboards / @novenders
By Lilith
Request: @nndsl
Post: http://rathena.org/board/topic/80231-notrade/#entry187456
See on YouTube:
@novendingboards
http://www.youtube.com/watch?v=sHIT1pRSQZU&feature=youtu.be
@novenders
http://www.youtube.com/watch?v=1UajUvlzAAc&feature=youtu.be
Enjoy
280 downloads
Updated
-
Account bound achievement
By Aeclis
This patch has been made for the June 2018 version of rAthena. It doesn't work with the latest version of rAthena. I do not provide support anymore for it.
This patch allows you to create account OR character bound achievement instead of only character bound achievement.
- Rewards are available once per account for account bound achievement
- All characters and newly created characters on the account will get the unlocked titles from account bound achievement
I provide you the patch and a README.txt which explains you how to use it. You also need to add a column in the achievement table. I provide you the SQL commands as well.
BEFORE to apply any patch, make a save of the current state of your server.
If you have issue applying this patch, I will provide support for free for you to have it working and if your emulator is not too old to handle this (have at least the classic achievement working).
Exemple of yml achievement account bound (the one in the screen):
- ID: 200000
Bound: "Account"
Group: "AG_GOAL_LEVEL"
Name: "Acquire the first aura!!!!"
Condition: " BaseLevel >= 99 "
Reward:
ItemID: 12549
Script: " specialeffect2 EF_BLESSING; sc_start SC_BLESSING,30000,10; "
TitleID: 1000
Score: 50
By buying this patch, 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.
279 downloads
Updated
-
@AutoBuyAmmo
By goddameit
Preview:
-----------------------------------------------------
After You use @autobuyammo to active this system,
you will auto-buy some ammo when it is going run out.
273 downloads
Updated
-
@norecall command
By Vykimo
@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
271 downloads
Updated
-
Glicko-2 rating system - Now on rAthena
By Secrets
This source edit provides two script commands for you to get and sets rating of a player, and adjust them relative to another player after two of them battled.
This implementation uses Glicko-2 rating system, an improvement of Elo system.
If you still have no idea what you could do with this, this source mod is not for you.
You can also get the code on GitHub.
Licenses:
The rAthena implementation of Glicko2 itself fell under the GNU GPLv3 license that rAthena uses.
Glicko2 library by Taylor Petrick:
tldr of the license here.
266 downloads
Updated
-
Usefull Status Icons (EC, Bragi, Pneuma, Sunset, Idun,...)
By Vykimo
Easy for the player and good looking.
The pack contain source modification + icons made by me (with the color palette which reminds the skill).
6 usefull main icons availables :
Emergency Call Cooldown Pneuma Bragi Don't forget me Assassin of the Sunset Apple of the idun DEMO Video for Emergency Call :
53 purchases 257 downloads
Updated
-
DuplicateCreate and DuplicateRemove command
By Zell
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");
255 downloads
Updated
-
Race AntiSkill
By Kichi
======== Compatible ==========
Compatible With rAthena, other emulator just PM me
I made this code in purpose to event
======== How To Use ==========
example:
1002,PORING,Poring,Poring,1,50,0,2,1,1,7,10,0,5,1,1,1,0,6,30,10,12,1,3,21,0x83,..;
change to
1002,PORING,Poring,Poring,1,50,0,2,1,1,7,10,0,5,1,1,1,0,6,30,10,12,1,13,21,0x83,...;
And your poring will immune again Skill (offensives).
Note:
3 = Race Plant
13 = Race Anti Skill
======== Suggestion ==========
Suggestions are welcome.
252 downloads
Updated
-
VIP - Temporary Rasie Reel
By goddameit
This is a researching release, maybe it will lead to something bad or you may have no idea how to use this.
-
Preview :
-
This system will create a VIP account by new script command ''setviptick''
SAMPLE (be VIP for 10 seconds) : http://pastebin.com/raw.php?i=9KdLE7yJ
and when you are VIP, you will get temporary ''Token Of Siegfried'' after you dead,
so you can use it to raise up yourself.
This temporary ''Token Of Siegfried'' also will disappear if you relogin server, raise up by other... etc
250 downloads
Submitted
-
Multilevel Range
By Chun3
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
-
Recently Browsing 0 members
- No registered users viewing this page.