Source Modifications
Source Mods & Code Snippets located here.
135 files
-
trunk_17511_inflation.patch
By freeman129
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/
127 downloads
Submitted
-
Extended Vending 2.0
By Easycore
Extended Vending 2.0
Made in Git Hash: '042b88623bf549b88ba619991aaa186d45f7f998'
Description
Yet another version of Extended Vending, this one works in actual rA c++.
It has a few fixes, including vending tax only working with Zeny as currency.
What is new?
I tried to improve this amazing mod adding a new feature: Vending Report (Mailbox).
Basically... whenever you buy items to a vendor, he receive a report that who bough,what items, how many and total profit of them.
You can disable this feature through conf/feature, or If you want to disable it for a specific player you must set the permanent variable called NOVREPORT (by a NPC/Bindatcmd/Idk)
For < 2015-05-13 Clients
Since old mailbox has 300 characters less than RoDex, I decided to take off items name and amount.
So only will send 'who bought' and 'total profit'.
Feel free to Donate If you want to support me.
4030 downloads
Updated
-
Script Command: getrandmob()
By Akinari
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
-
Script command: Dynprompt
By Talis
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!
34 downloads
Submitted
-
Fixed Cast and Delay Adjustment Mapflag
By Akinari
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.
161 downloads
Submitted
-
[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.
218 downloads
Submitted
-
@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; }
281 downloads
Updated
-
ALL monster drop item with Random Option
By nutminemz
ALL equipment drop by monster has chance of getting Random-Option.
Like MU online every item you found have some (random) option .. now in rathena.
/////////////
News update
28/04/2107
due to #2065 one of the requirement was merged in to rathena master so
we no longer need any source modification for those who using latest release.
/////////////////
UPDATE
V.1.0 - 3 random option in each item.
V.1.1 - has chance of getting 0-3 option in stead of fixed 3option.
V.1.2 - drop chance is lower according to option quantity. Now 3option is rare (not yet applied to weapon).
- Fixed error message.
pre-re user still getting error message refer to Invalid monster ID.
but random-drop-system work fine with this error.
get in touch with next update.
/////////
Requirement (for athena before bf2461f 28/04/2107)
Initial release item random option for monster drop #2065 ////////////////
Installation
replace the following files.
db/re(pre-re)/item_randomopt_group.txt
db/re(pre-re)/mob_drop.txt
make sure your /db/re(pre-re)/item_randomopt_db.txt is 201 lines (200 sloc) 16.7 KB.
add following 6 line at the end of /db/const.txt
RDMOPTG_WEP 1
RDMOPTG_EQARM 2
RDMOPTG_EQSH 3
RDMOPTG_EQGAR 4
RDMOPTG_EQFOOT 5
RDMOPTG_EQACC 6
//////////////////
Option Description (DEFAULT)
///////////
Drop rate (DEFAULT)
same rate as you can see in db/re/item_db.txt
customize your droprate by editing db/re(pre-re)/mob_drop.txt
/////////
Feel free to PM me
3248 downloads
Updated
-
Instakill Mapflag
By Ninja
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/).
83 downloads
Updated
-
Guild Activity Logging
By Ninja
About This File
Tested and working with: c212b2ed053d60855ce584a0368d98cff94c5059
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
To improve the Guild Activity Logging of rAthena.
It works for the following Guild Logging activities:
1. Guild Creation
2. Guild Breakage
3. Guild Member Addition
4. Guild Member Removal/Leave
5. Guild Alliance Formation
6. Guild Alliance Breakage
7. Guild Antagonist Formation
8. Guild Antagonist Breakage
9. Guild Castle Occupancy
10. Guild Castle Abandonment
Usage
1. Tracking guild activities of a character
SELECT origin, target, `activity`, COUNT(`activity`) as "Times Done" FROM interlog WHERE origin = "this" or target = "this" GROUP BY `activity` 2. Tracking a guild's WoE Castle occupancy rate SELECT castle_id, COUNT(`activity`) as "Times Done" FROM interlog WHERE `origin` = "ThisGuild" and `activity` like "%Occupied%" GROUP BY castle_id
108 downloads
Updated
-
Free cash/Kafra points item binding
By Secrets
Information
This source mod makes everything bought with Kafra Points (Free Cash) becomes bound to the character.
Use Case
Give #KAFRAPOINTS instead of #CASHPOINTS in events to utilize this source mod to prevent distribution of the reward.
By downloading 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 © - Secrets 2017 - All Rights Reserved
159 downloads
Updated
-
Inject - Allows running dynamic scripts in running time
By Zell
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; }
83 downloads
Updated
-
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.
283 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
260 downloads
Updated
-
Protection System ( @security ) #Free
By Haikenz
This system is already activated in the source of the brAthena.
It was created by Orce, and with my friend's help, we converted to rA, and it's working perfectly with the last revision
Language: PT-BR, EN-US
Ps. Sorry my english
987 downloads
Updated
-
Soul Link Modification - Script-based
By Secrets
Information
This source allows you to "script" additional bonuses on soul link buffs like an item script.
See db/soul_link.yml for example.
Q: Why this and not OnPCStatCalcEvent?
A: PCStatCalc is known to be buggy.
Alternate diff link: https://github.com/secretdataz/rathena/commit/6b91c4d18cc537e25a64f371ee3faf468b9dcc99.diff
THIS RELEASE IS SUBJECT TO GPLv3 LICENSE
Copyright © - Secrets <[email protected]> 2018 - All Rights Reserved
Take a look at my premade script list if you like my works or want one of my premade scripts. or
927 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
259 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");
238 downloads
Updated
-
Stores Hom & Merc SC duration, Scripts: homexp, hom_heal, hom_sc_start
By Cydh
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
154 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
342 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.
233 downloads
Updated
-
Cart Config [Client 2015-08-26 or newer]
By Cydh
INFORMATION: The main target for usage only for server that use kRO client Client 2015-08-26 or newer or some functions (especially the cart selection) will be fail
This mod in few words,
You can set Genetic's cart sprite for level 1 Merchant, change its max weight and max item numbers
rAthena Requirement: Git Hash: 2e15fae7 (2018-05-05)
You can config cart related values for
Weight limit Max item numbers Level requirement Job requirement But, because the client is not customizable (I meant I can't edit the client), there are things that cannot be changed related with client/PACKETVER.
So, because I modified the MC_CHANGECART to MC_CARTDECORATE (sending ZC_SELECTCART)
PACKETVER MAX_CARTS ZC_SELECTCART Weight Limit Max Items Level Req Job Req 20150826 + 12 YES YES YES YES YES 20120201 + 9 not supported YES YES useless useless Older 5 not supported YES YES useless useless
Don't forget to add MC_CARTDECORATE as quest skill to preferred player.
Forgot to took SS, so just watch the Video
Ok, that's all. Any bug & suggestion please tell me. If you find a way or know how to make patch (hex the client) to add more carts, please tell the community
509 downloads
Updated
-
Telma-for-rAthena++.patch
By xSoul
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
-
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.
251 downloads
Updated
-
@at with afk hat very easy Modify
By systemD2540
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.
417 downloads
Submitted
-
Recently Browsing 0 members
- No registered users viewing this page.