* Fixes#3369, fixes#3370, and fixes#3382.
* Converted maps storage container back to static array.
* Converted mapflag storage containers to unordered_map.
* Removed a lot of redundancy and recursive lookups.
* Fixed a couple short-circuit checks to help with performance.
* Fixed multiple instance creation/destruction issues.
* Fixed PK Mode attempting to set PvP on flags that are already active.
* Getting MF_RESTRICTED will return the map's zone value instead of the state.
* Converted mapflag macros to inline functions.
Thanks to @teededung, @lelouch22, @mazvi, @Lemongrass3110, and @cydh!
* Follow up to a942853.
* Removed ADJUST_SKILL_DAMAGE define so that the mapflag is always enabled.
* Cleaned up atcommand mapinfo and skill_damage mapflag interaction.
* Cleaned up atcommand mapflag to not allow setting of special mapflags that require extra arguments (Please use script command setmapflag).
* Using script command setmapflag for MF_NOSAVE will default to SavePoint.
* Using script command setmapflag for MF_PVP_NIGHTMAREDROP will default to normal official drop values.
* Exported constants for skill_damage mapflag types.
Thanks to @ecdarreola, @cydh, and @Lemongrass3110!
* Created setter and getter functions.
* Adjusted all calls to use these functions.
* Converted mapflags to C++ map container.
* Converted drop_list to vector.
* Converted skill_damage ERS into vector and increased limit from UINT8 to UINT16.
* Cleaned up several functions to be more dynamic to reduce redundancy that was all over the place.
* Renamed nosumstarmiracle to nosunmoonstarmiracle.
* Adjusted skill_damage mapflag to use proper defined constants.
* Refactored map index into a vector.
Thanks to @Lemongrass3110 for a lot of help and @secretdataz!
Fixes#2887 - thanks to @Everade
Fixes#3292 - thanks to @admkakaroto
Added a script command to open the roulette window from server side.
Added support for clients >= 2018-05-16
Fixed losing behavior for roulette
Enabled roulette system by default
Added a server side delay
Added missing sql log enum value 'Y'
Thanks to @Everade, @admkakaroto, @V0rr, @ecdarreola, @Haikenz and everyone else who contributed to this.
* Fixes#499 and part of #1303.
* Implements Guild Storage Expansion Skill which requires client 2013-12-23 or newer (enable by default depending on client date in src/config/packets.hpp).
* Implements guild storage permission which requires client 2014-02-05 or newer.
* Expanded script command guildopenstorage return values.
* Fixes#2510.
* Added Holink and Wagjak values to their own entries in the refine database.
* Added several anti-hack checks to refine NPC.
Thanks to the suggestion from @mazvi and @Atemo!
* Added config to hide last chars of player's name `broadcast_hide_name` and its default value is 2.
* Fixed `getgroupitem` that should give unidentified item for equipment types.
* Added optional param for `getgroupitem` and `getrandgroupitem` to always give player identified item, ignores the `itemdb_isidentified`'s check.
* Thanks to @aleos89 @Lemongrass3110
* Fixes#2703.
* Added alternative for script command bpet: birthpet.
* Added alternative for script command pet: catchpet.
* Updated documentation for script command pet.
* Added PET_CATCH_UNIVERSAL_ITEM for script command pet which will attempt to catch the targeted monster as long as it is in the pet database and the targeted monster requires the lure item used.
Thanks to @sader1992!
This PR change the emoticons constant name to match emoticonlist from client side.
Note: the previous emoticons names are now deprecated.
Additionnally emotion and unitemote scripts commands are being merged together to the new format
-> emotion <emotion number>{,<target>};
Where target use the target Game ID (GID) of the unit (npc, pet, character etc..).
* unitemote is now deprecated.
* Additionnally fixed incorrect variable in quests_brasilis.txt
Thanks to @aleos89 and @Lemongrass3110 !
* Moved all npc view constants into src
Source side the constants will use Gravity's naming standard(JT_*)
NPC side still supports the old names without JT_
* Moved all effect constants into src
Added check for effect validation to atcommand effect and all script commands using them
Removed the unused and broken function unit_changeviewsize from unit.c
Replaced a lot of hardcoded effect ids with their respective constants
Cleaned up the effect documentations
* Moved all hat effect constants into src
Added check for effect validation to script command hateffect
* Updated callshop selling list variables
* Updated script command callshop OnSellItem list to include random item options.
* See documentation for more information.
* When pk_mode and pk_mode_mes is enabled, the player gets notified joining a pk-zone map.
* It's now possible to specify the target in showscript.
Default is still AREA.
* pk_mode_mes is now using showscript to SELF.
* Thanks to @Atemo, @RadianFord, @Lemongrass3110, @aleos89
* Fixes#2445 and fixes#2446.
* Fixed shadow refiner.
— The script uses the values of the array instead of the indexes to loop through it.
* Fixed segfault in getequiprefinecost.
— No checks in getequiprefinecost meant there were possibilities using negative indexes in arrays.
* Added to the script documentation what happens on failure when calling getequiprefinecost (it returns -1).
Thanks to @vstmpf, @crazystorm2017, and @hendra814!
* Converted refine_db.txt to refine_db.yml
* Refine success rates can now be set in refine_db.yml. rAthena's default NPCs will respect this database by default.
* Added shadow equipment refiner
Thanks to @Akkarinage @aleos89 @Atemo and @Mikegyver for their inputs.
* Added a new script command sc_end_class to remove status changes from any learned skills.
* Adjusted the custom Reset NPC to make use of this behavior.
Thanks to @sader1992!
* Follow up to f93680b
* Adjusted documentation.
* Follow up to f93680b
* Removed the check from script command resetskill.
* Added a new script command sc_end_class.
* Fixed a compile error
* Corrected the define of the script command.
* Adjusted some documentation.
* Reverted some formatting from the original commit.
Thanks to @sader1992 and @Lemongrass3110!
* Renamed inter.c to inter.cpp and refactored it
* Converted inter_server.conf to inter_server.yml
* Updated the makefiles
* Refactored inter-server storage handling logic
* Fixed a bug with wrong maximum being displayed
When you took out an item of the storage it would always display the maximum amount of the normal storage.
* Fixed a bug with storages that are over maximum
Thanks to @Akkarinage, @Lemongrass3110 and @Jeybla
* Information based on kRO patch notes.
- http://ro.gnjoy.com/news/update/View.asp?seq=163&curpage=1
* Includes Title System which is integrated into the Achievement System.
* Includes RODEX integration for rewards.
* Added new atcommand reloadachievementdb.
* Added new script commands achievementinfo, achievementadd, achievementremove, achievementcomplete, and achievementexists.
Thanks to @Lux-uri, @RagnarokNova, @Lemongrass3110, and @Tokeiburu for their help!
Fixes#2254.
Added an optional flag to specify the types of methods to stop a unit from walking.
Created an enum for the unit_stop_walking flags.
Thanks to @Yuchinin and @Lemongrass3110!
Adds support for a lot of missing clients and features almost all clients from 2016 and 2017
clientinfo.xml's version value will be ignored from now on
By setting PACKETVER the server will configure everything else on it's own from now on
Dropped is_clientver script command
And a lot more
* Expanded bg_get_data script command.
* Now able accept type parameter of 1 to list account IDs of battleground members.
* Originally implemented by @AnnieRuru at https://rathena.org/board/topic/72571-b/
* Updated sleep2:
Currently sleep2 is supposed to return 0 or 1 if the unit is still attached. Actually mapserv throws a warning and the script end if the timer is still running and unit offline. With this update the script ends if there is no unit attached for sleep2.
* Corrected comments / docs
Thanks @secretdataz, @Lemongrass3110