Utilities
Scripts that are set up to help players and GMs alike should be posted in this category
Examples: Buffers, Refining Systems, GM Tools, Shops
197 files
-
IP Ban Script
By SkyDragon
IP Ban Script
This script will allow you to Ban any IP from your server.
777 downloads
Submitted
-
Item Binding
By Akinari
I made this while taking a short break from the normal rAthena work I do. It works with the item bound system added a little over a month ago. You need to have revision 17351 or newer for this to work. It's mostly focused around guild binding as that was the original intention of the script but I then decided to support the other types. The other types are good simply because this allows players to bind items and log these in a separate NPC table by default. You could also disable unbinding (just remove the option in the switch) and make it a better form of security for users.
Features:
Allows users to bind items to their account, character, or guild
Multiple configuration options to choose what item types to allow
Automatically builds a menu list based on your configuration
Configuration:
OnInit: //* Configuration *\\ //Price .bindprice = 0; .unbindprice = 100000; //What to allow to be bound - Add as necessary //1 = Equipment - 2 = Consumables - 4 = Etc .allowbind = 1; //Log binds via NPC? .logbinds = 1; //Other stuff .boundtypes$[1] = "account"; .boundtypes$[2] = "guild"; .boundtypes$[4] = "character"; end;
Please report any issues and feature requests. Thanks for downloading.
304 downloads
Submitted
-
Auto shop
By Kurofly
This script will allow players to shop their items while playing via a shop NPC, this is kind of an alternative to the auction system.
Note: There's also a french version since I'm french ^^
There is a user setup, be sure to check it out !
User can add a cost to shop creation and/or a tax, there's also a delay after which the shop is deleted.
Players can create a shop using an item or via the '@shop' command, depending on the mode value in the user setup
Players can shop any kind of item apart from bound and time-limit items
You can add items, change prices, modify your shop name anytime using the '@shop' command
You can disconnect and reconnect anytime, if you sold something and/or your shop was deleted you will get your money and items on relog
In case the server reboots you also get back the shop creation's cost or the item you used to open it
Please report any bug you find.
If I can't answer you while you are experiencing bugs, consider following this step:
Make sure no one is selling when you do this because they will loose all of their sales !!
Note: you can just reloadscript before doing this to give them back all of their items.
//bindatcmd "delall",strnpcinfo(3)+"::OnDelall",99,99; /*In case you have problems I recommend you to uncomment this command and to execute it. It will erase all the data of every shop and every player. I myself experienced some issues not directly related to the script but to unexpected events so reseting data should temporarly solve the problem. Please contact me on rA (Kurofly) if you experience any bug*/
876 downloads
Updated
-
Player Questing Board
By yuchinin
[NOTE] For now on I will keep release all of my work for free , I hope most people can enjoy my script without paid. But if you still want to support my work, please consider donate or become my patron. Thank you.
It just a questing board which everyone can post request on it and let other to complete it for reward.
Feature:
Set a title for the request Set a requested Item or Zeny on the board (Or Both) Set a reward Item or Zeny on the request This script need my release of:
Suggestion are welcome.
Pending Script Upload:
Todo list:
//= 1. Change log from status to actual log and delete expired or completed request
//= 2. Make it compatible with newest RANDOM OPTIONS Item
//= 3. Add blacklist check
//= 4. Add weight check 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 © - Yuchinin 2017 - All Rights Reserved
661 downloads
Updated
-
Outfit Stylist ver 1.0 [palettes & sprites not included]
By iubantot
An outfit stylist that allows you the player to switch from different outfits trans, first jobs or alternate sprites
It costs 5k cash but you can modify it.
//list of restricted classes.
// As of now restricted classes are.
// Rune Knight
// Sorcerer
// Shura
purchased outfits are Character bound .
642 downloads
Submitted
-
Advanced Bank with nearly unlimited maximum balance
This is my bank NPC which I made since I couldn't find any bank that can store huge amounts of Zeny.
Special Credits: Thanks to Anakid for the great idea to implement an @bank command.
The NPC supports the following features:
Deposit
Withdraw
Transfer Zeny to other player's bank accounts (by name or account id)
Password protection
Transaction log (deposits, withdrawals, incoming and outgoing transfers)
daily interest (every morning at 6 o'clock server time, default: 5%, can be changed)
maximum amount per process is only determined by the server's input_max_value and the script's .maxInput
vast amounts of Zeny can be stored (the MySQL column is BigInt, so you can store up to 18,446,744,073,709,551,615 Zeny, that's more than 18,000,000,000 deposits of 1,000,000,000 Zeny)
other features are planned and I take feature requests, if I think they make sense (you can ask directly in the thread, but I prefer private messages or emails [address provided in both scripts])
The @bank command supports the following features:
the same as the NPC, but more versatile
higher limits (as it is not connected to the input_max_value, default value per process is 1,000,000,000 Zeny)
shortcuts for @bank <function> commands: @info, @deposit, @withdrawl, @transaction, @password
You need to download the README.txt file to get the database creation commands and some basic information on how to install the script.
627 downloads
Updated
-
Stylist with autoscroll
By Brian
This is a modified version of the rAthena Stylist (trunk/npc/custom/stylist.txt)
It adds 2 new menu options "Next autoscroll" and "Previous autoscroll". When a player picks these options, after they close the NPC message box, the script will begin scrolling through palettes with a 1-second progressbar delay. To stop scrolling, just move your character and interrupt the progressbar.
Other changes from the original rAthena Stylist:
after selecting "Previous", then Previous appears before Next in the menu
starts at your current palette instead of always starting at #1
the first menu (Cloth color, Hairstyle, Hair color) displays your current palette numbers
460 downloads
Submitted
-
Dress changer ~ Change your appearance between classes.
By Secrets
This NPC let your players change their appearance to other classes in their class line plus their jRO costume at a price.
For example, a sniper can change his/her appearance to hunter and ranger (plus jRO ranger costume).
2966 downloads
Updated
-
Pack Guild pt_BR
By Envolvents
Hi, providing again one of my toys i've ever used, script language in portuguese brazil, translate for your language.
configuration:
// ======================================================// Mapa onde o NPC ficaráprontera,150,150,3 script Pack Guild 404,{// = Configuraçao:// = Titulo do NPC set .npc$,"^9EB449[ PACK GUILD ]^000000";// = Máximo de Peso para receber o Pack Guild set .@max,70;// = Itens dados separados por Vírgulas "," Ex: 607,608; setarray .@packitem[0],607,608,609,610,611,612,613,614,615,616,617,618,619,620; setarray .@qtd[0],1,1,1,1,1,1,1,1,1,1,1,1,1,1;// = Checando Guild query_sql "SELECT `char_id`,`guild_id` FROM `guild_pack_take` WHERE `char_id` = '"+getcharid(0)+"'",.@RID,.@GIDT; query_sql "SELECT `guild_id`,`name`,`master`,`permissao`,`qtd_itens` FROM `guild_pack` WHERE `guild_id` = '"+getcharid(2)+"'",.GIDC,.NAMEC$,.MASTERC$,.PERMC,.QTD2;// = Condições if(getgmlevel() > 90) goto L_GM; // Nível para GM/ADM if(agitcheck()) goto L_WOE; // Checando de a WOE no momento if(!getcharid(2)) goto NOGUILD; // Se sem guild if(!.PERMC) goto NO_PERM; // Se não permitido pelo adm if((.PERMC == 1) && (.MASTERC$ != strcharinfo(0))) goto NO_PERM2; // Se permitido pelo ADM if(.MASTERC$ == strcharinfo(0)) goto MENU_MASTER; // Se for o Dono da guild passa para o Menu Master// = Fim da Configuraçao, nao meixa na configuraçao abaixo!// ======================================================
Table SQL:
CREATE TABLE IF NOT EXISTS `guild_pack`(`guild_id` int(11) NOT NULL DEFAULT '0',`name` VARCHAR(32) NOT NULL,`master` VARCHAR(32) NOT NULL,`qtd_membros` int(11) NOT NULL DEFAULT '0',`permissao` int(11) NOT NULL DEFAULT '0',`qtd_itens` int(11) NOT NULL DEFAULT '0')CREATE TABLE IF NOT EXISTS `guild_pack_take`(`guild_id` int(11) NOT NULL DEFAULT '0',`char_id` int(11) NOT NULL DEFAULT '0')
enjoy babys.
389 downloads
Submitted
-
@reward command
By Missingno
Description
Allows for preset or user-defined rewards via atcommand. Announce and logging options are also available.
Create this table in your logs schema:CREATE TABLE IF NOT EXISTS `rewardlog` ( `id` int(11) unsigned NOT NULL auto_increment, `account_id` int(11) NOT NULL, `staff_name` varchar(255) NOT NULL, `item_amount` int(11) NOT NULL, `item_id` int(11) NOT NULL, `item_name` varchar(255) NOT NULL, `char_id` int(11) NOT NULL, `player_name` varchar(255) NOT NULL, `when` datetime NOT NULL, PRIMARY KEY (`id`)) ENGINE=MyISAM;
666 downloads
Updated
-
clocktower.txt
By Geralt
Npc that shows the server time on updated schedules here .. I found this file on the flash drive.
Author unknown
224 downloads
Updated
-
Utility: Full configurable Resetter
By eKoh
Full Configurable Resetter
I've made this script because I wanted to make my players use a "Reset Ticket" after they've used a couple times the resetter.
It is working pretty good, and also, it's very easy to set:
set .@zenyabove,500000; //The cost of a reset after reaching the .@blvl settedset .@zenybelow,0; //The cost of a reset before reaching the .@blvl settedset .@blvl,80; //The max base lvl to have a low cost resetset .@resets,1; //Amount of resets available after reaching .@blvlset .@itemid,26002; //The item id you want to make users use when they run out of resets, mine is 26002, if you set this to 0, they will not be able to reset again
I am also adding my Reset Ticket sprite/textures, so you can use them in your server.
P.S. I made this because I want to add this Reset Ticket to the donation shop, so I will not have custom items, but my players will need to donate to have a reset, if you want to use my idea, go ahead =).
259 downloads
Updated
-
Plagiarize a Skill [Script Command]
By rootKid
{ plagiarize <skill>,<lv>; Sets the invoking player's plagiarised skill and the desired lv. } by rootKid
INSTALLATION
[in src/map/script.c]
Find:
// declarations that were supposed to be exported from npc_chat.c #ifdef PCRE_SUPPORT BUILDIN(defpattern); BUILDIN(activatepset); BUILDIN(deactivatepset); BUILDIN(deletepset); Add above:
/*=========================================== * Plagiarize a Skill * plagiarize <skill>,<lv>; * Sets the invoking player's plagiarised skill and the desired lv. * by rootKid *-------------------------------------------*/ BUILDIN_FUNC(plagiarize) { int skillid, lv; struct map_session_data * sd = script_rid2sd(st); skillid=( script_isstringtype(st,2) ? skill->name2id(script_getstr(st,2)) : script_getnum(st,2) ); lv=script_getnum(st,3); if (sd->cloneskill_idx && sd->status.skill[sd->cloneskill_idx].flag == 13){ sd->status.skill[sd->cloneskill_idx].id = 0; sd->status.skill[sd->cloneskill_idx].lv = 0; sd->status.skill[sd->cloneskill_idx].flag = 0; } if (pc_checkskill(sd,RG_PLAGIARISM)) { sd->cloneskill_idx = skillid; sd->status.skill[sd->cloneskill_idx].id = skillid; sd->status.skill[sd->cloneskill_idx].lv = lv; sd->status.skill[sd->cloneskill_idx].flag = 13;//cloneskill flag pc_setglobalreg(sd, add_str(SKILL_VAR_PLAGIARISM), skillid); pc_setglobalreg(sd, add_str(SKILL_VAR_PLAGIARISM_LV), lv); clif_skillinfoblock(sd); } return 0; } Find:
BUILDIN_DEF(_,"s"), Add above:
BUILDIN_DEF(plagiarize,"ii"),
END OF INSTALLATION
I have attached an unfinished function-based script using this script command as a reference.
226 downloads
Updated
-
Function Script - skillid2name
By Skorm
I found that our emulator is missing an option to convert skill ids into their named forms so I made this with various macros.
Usage: skillid2name(<skillid>)
102 downloads
Submitted
-
Super Stylist (Dress Room Required)
This' my very first work if any bug contact me and i'll try to fix
2075 downloads
Updated
-
Unofficial Fallen Angel Wing (FAW) Enchantment
By Nerfwood
Unofficial Fallen Angel Wing (FAW) Enchants
This script should do exactly what is written on iRO wiki's FAW Enchants page, but you can easily change some settings as specified below.
Also, kindly press that reputation button if you find this helpful. This is my first script release, so why not encourage me to release more by pressing that button?
Custom Settings:
.chancetype
If set to 1, lower-level enchants are more likely to be enchanted. If set to 0, all levels have an equal chance to be enchanted (true random).
// 1 = 60% low, 30% mid, 10% high for 1st & 2nd enchant slot && 40% low, 30% mid, 20% high, 10% special for 3rd enchant slot// 0 = Equal Chance.chancetype = 1;
.cost
Cost for enchanting.
//Cost for Enchanting. It's free in iRO //.cost=0;
.cost2
Cost for resetting enchants.
//Cost to reset | Costs 1Mz in iRO .cost2 = 1000000;
.autoequip
If set to 1, it lets the player to equip the garment while the script is running. Set to 0 to disable.
//Turn on Equip Selection if garment is unequipped? 1 = Yes .autoequip =1;
Additional Notes:
You may want to change the effects of the Fatal Enchants as rAthena's effects are different from iRO's.
//iRO Fatal effect4863,Fatal1Lv,Fatal1Lv,6,10,,,,,,,,,,,,,,,{ bonus bCritAtkRate,4; bonus bCritical,1; },{},{}4864,Fatal2Lv,Fatal2Lv,6,10,,,,,,,,,,,,,,,{ bonus bCritAtkRate,6; bonus bCritical,2; },{},{}4865,Fatal3Lv,Fatal3Lv,6,10,,,,,,,,,,,,,,,{ bonus bCritAtkRate,8; bonus bCritical,3; },{},{}4866,Fatal4Lv,Fatal4Lv,6,10,,,,,,,,,,,,,,,{ bonus bCritAtkRate,10; bonus bCritical,4; },{},{}
1000 downloads
Updated
-
At_var
By Kurofly
This basically is a script wich allows an admin to use 2 commands:
-'@var <variable> {<player/npc>}' :
gives you the value of the variable
-'@setvar <variable> <value> {<player/npc>}':
Sets the variable to value
The script will check wether you want to set an integer or string variable and acts accrodingly so no need to bother for this.
If you don't enter enough parameters you will be informed on how the commands works so basically you can just type '@var' and '@setvar' in game to see how it works.
I made this to help me finding out where my errors were in some scripts and also to directly go at a certain point of a quest.
I found that pretty useful so I guess you may think it's useful too ^^
Wanted to say "Have fun!" but this script won't give you much fun so just hope that'll help
56 downloads
Updated
-
warn.txt
By Kurofly
It's a really simple script which warns some players when used.
I made use of it to be warned if something didn't go right in some big scripts where you can be lost.
It helped to correct some bugs more easily and to catch some people trying to cheat
It's used like this:
callfunc "WarnMe","this is a test","<your player name>","<other player name>"{,"<other player name>",{...}};//it will send a notification to all players mentionned, if they're not connected they'll receive it on relog
I'll give you an example:
while (getvariableofnpc(.battle,getarg(0))) { if (getpetinfo(0) != getvariableofnpc(.pet_gid,getarg(0))) { callfunc "WarnMe",""+strcharinfo(0)+" a change de pokemon","kuro" ; dispbottom "C'est pas bien d'essayer de tricher...",0xffff00 ; end; }
It tells me if someone changes his pet during a pokemon fight and so I can punish him
Well it's not something you'd often use but it can be ueful sometimes.
94 downloads
Submitted
-
New @security system for item and zeny protection [no src mod required]
By Daegaladh
The new @security system does all those old and clunky security systems did (not so well) in the past and much more, without source modifications!
Protects the player items and zeny with a password (that can be as long and complex as the player wants), if hacked or they share their account Allows the player to temporary disable the system and play as usual, so when the player logs out, the system reactivates When an intruder fails to enter the password X times (configurable), the system resets the player's account password and kicks the intruder out Available in English and Spanish PS.: If you have any idea or suggestion for new features or improvements, feel free to tell me and I'll add them to the system!
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 (Daegaladh) still retain all rights to this script. Terms above may be changed or adjusted without prior notification. © Daegaladh 2017
20 purchases 65 downloads
Updated
-
Instant Max Level NPC
//============================================================
//===== Panda's Script =======================================
//= Novice Enchantress NCP
//===== Current Version: =====================================
//= 1.0
//===== Compatible With: =====================================
//= rAthena
//===== Description: =========================================
//= NPC to instantly level anyone when they have the required item
//===== Changelog: =================================
//= v1.0 - Initial Release
//============================================================
823 downloads
Updated
-
Usable Enchant Item
By Emistry
Description :
Players are able to click on the Enchant items to provide custom bonus to the selected equipment.
Varies of bonus could be done especially use together with a *getequippedon script command to provide a wide range of bonuses.
The current items and bonuses display in the video is just a sample for demo.
The origin of the idea come from Diablo and 張阿神.
Sample Usage:
callfunc("F_UsableEnchantItem", <delete_item_id>, <enchant_item_id>{, <card_index>});
Item Database :
Create a custom item for enchant
- Id: 501 AegisName: Red_Potion_Enchant_Usable Name: Red Potion Type: DelayConsume Buy: 10 Weight: 70 Script: | callfunc("F_UsableEnchantItem", 501, 909, 3); Create a custom enchant item with special bonuses.
- Id: 909 AegisName: Jellopy_Enchant_Item Name: Jellopy Type: Etc Buy: 6 Weight: 10 Flags: BuyingStore: true Script: | .@eqp = getequippedon(); if (.@eqp & EQP_ARMOR) { bonus bVit,100; } if (.@eqp & EQP_HEAD_TOP) { bonus bInt,100; } if (.@eqp & EQP_SHOES) { bonus bAgi,100; }
Preview :
1655 downloads
Updated
-
Usable Refinery Ores
By Emistry
Description
Players are able to click on the Ores items to refine the selected equipment. They can refine their Equipment at anywhere anytime they want.
Based on requirement of Weapon Level and Type, different ores might be needed as well as Zeny.
Preview
856 downloads
Updated
-
Warper ( Locked Map )
By benching
This NPC will allows the player to warp on maps that are unlocked.
444 downloads
Submitted
-
Punching Bag with DPS counter
By Secrets
This is yet another punching bag with DPS counter which I use to experiment with get/setunitdata command.
Feel free to use.
2979 downloads
Updated
-
iRO Spooky machine - Refine Event
By Emistry
Introduction :
Talk to the machine and it will give you a Cracked Buckler shield. Equip the shield and talk to the machine.
It will attempt to upgrade it as high as it will go. Depending on what upgrade level the item breaks at you will get a free item! If the buckler is upgraded to +10 or higher it gives a mystery costume!
References :
Official Website
IRO Wiki
473 downloads
Updated
-
Recently Browsing 0 members
- No registered users viewing this page.