* Adds several dungeons and fields
* Adds options for WOE TE Castles and dungeons
* Adds option to disable satan morroc and re-enable old morroc maps
* Adds option to warp only on the first level (of dungeons/fields)
* Adds Lasagna Town
* Adds castles Kafragarten and Gloria
* Adds several instances
* Adds Dimensional Rift and Para Market
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
* Major changes due to readability and some corrections
* Adds the option to disable Rebirth Classes
* Adds the possibility to give players job related
Equipment (mostly weapons) on job change
* Adds more level requirement settings
* Adds BabyExpanded and BabySummoner Jobs
* Thanks to @Braniff, @mazvi, @Mikegyver, @Lemongrass3110, @Akkarinage, @Stolao and @secretdataz!
* 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!
Unlike 'warp', 'warp2' NPC will also be triggered by hidden player.
Thanks @secretdataz and @Lemongrass3110 !
* Replace script using OnTouch:([\r\n\t]+)warp by warp2
* Removed sprite id from warp duplicates in Bangungot instance
* Fixed a bug where warp/warp2 parsing is too greedy
* Fixes#1945.
* Adds an optional flag to reload the monster database for specific map flags that are EXP/drop related.
* This resolves having to add atcommand reloadmobdb after setting the battle configs.
* Adjusted atcommand setbattleflag to also have the optional parameter.
* The reload should only have to be called on the final setbattleflag use.
* Clean-up permanent monster spawn:
- <delay1>,<delay2>,<event> are actually optionnal field
- <event> value 0 and 1 are meaningless (actually event name with length < 4 are skipped)
* Exported monster AI constants
* Updated docs for monster size constants (already exported)
Notes:
- the default size for monster script cmd was small not medium
- monster script cmd now display a warning for size above SZ_BIG (previously SZ_ALL)
* - Fixed an issue to make <xs> and <ys> optionnals
- Updated npcs scripts
* Leftover in the docs for permanent monster spawn
* Corrected english docs. Credit to @aleos89
Added additionnal warning for xs / ys negative input. Credit @Lemongrass3110
Thanks to @cydh for the idea
While refactoring those events the following other changes were made:
Introducing OnInstanceDestroy event. This event can be used to hook script code right in front of the instance destruction. This can be useful if you have any stored references to an instance id for example.
The script command cmdothernpc will now check if the target event exists and report failures. Therefore it now returns true or false.
All agit(FE,SE,TE) start and end commands from atcommand and script commands have been merged in their respective guild function which now returns a bool value of true for successful actions and false if it did not succeed(if the specific WoE was [not] running).
All global triggered events with mapserver status output now call the same function and therefore have the same mapserver output(including their respective event name of course).
Renamed a few events in the script configuration to match the other names
Added constants for months and weekdays
Additionally added constants for gettime types to make it easier to read.
Replaced all existing usages I found with their proper new syntax or better fitting functions.
Big thanks to @RagnarokNova for creating this script with the help of
@tokeiburu, Diablo and others. I simply converted it to be compliant
with rAthena master standard. Hope you guys enjoy it and report any bugs
:)
To clarify on the semi-official part: This script was made from scratch
by playing on iRO and may have inconsistencies with the official
version. If you want to use this on your server you must enable it
yourself by uncommenting the entry in scripts_athena.conf.
* Added new mapflag `hidemobhpbar` to hides monster's HP bar on a map.
* Added maps for this mapflag, credits to @Atemo and @Lemongrass3110
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* Replaced hardcoded gender codes in source
Introduced a new constant for the account based gender and replaced all hardcoded gender references to code 99 with it.
* Replaced hardcoded gender codes in npcs
Exported the gender constants into the script engine and replaced all usages with references to the constants instead of expecting a value behind them.
* Corrected a typo
Thanks to Machiezmo from Discord.
* Fixed an inverted gender logic
Thanks to @secretdataz
Fixes#1497.
Thanks to @Darkelfen for reporting it.
Additionally exported the EQP_* constants into the script engine.
Replaced some hardcoded equip positions with their respective constants.
Added support for Summoner Basic Skill to Kafra (fixes#1117)
* Added two new global NPC functions F_CanOpenStorage and F_CanChangeJob to remove redundancy.
Thanks to @secretdataz!
* Added missing UMOB_CANMOVETICK option.
* Restructured script command getunittype return values to match the order of script command getmapxy to allow for more universal usage.
* Created constants for script commands getmapxy and getunittype.
* Updated NPCs using script command getmapxy to use the new constant values.
* Updated Battleground NPCs to use constant value for script command setunitdata.
* Upgraded the script engine variables to no longer be limited.
* Increased array limit from 127 to 2 billion.
* Improvement in overall speed and storage size.
* All variable types now support arrays.
- Merge from HerculesWS/Hercules@82b583b. Thanks to those who worked on it.
* Fixes#158 - Implemented 'getvar' script command to avoid blindly attaching players and messing up their NPC progress.
* Fixes#449 - Fixed 'unitskilluseid' and 'unitskillusepos' not casting skills that require stat info when the NPC's status wasn't loaded.
* Implemented 'getunittype' script command to return the object type of the given GID.
* Adjusted 'unitwalk' to support an Event Label which is executed when the object reaches the target.
* Added 'unitwalkto' when giving a target GID rather than coordinates. Also supports Event Labels.
- Thanks to @cydh.
* Changed skill_db array to better memory allocation.
* Reduced MAX_SKILL_LEVEL from 100 to 10 (part of Hercules 0f4a50d135), also has changes on skill_get checks for skill level that more than 10.
* Reduced MAX_SKILL from 5020 to 1200 (actually only 1109 skills are used).
* Added macros for checking Homunculus, Guild, Mercenary, & Elemental skill ranges.
* Added skill check & index validation when player logged in and when @reloadskilldb.
* Corrected `enum e_skill_flag` order for SKILL_FLAG_REPLACED_LV_0's sake.
* Merged 'addtoskill' script command just as alias of 'skill' script command.
* Fixed#277
* Changed 'skill' script command flag to constant value
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
NOTE:
* Decreased memory usage by map-server reduced up to 50 MB.
* Decreased memory for each player because of mmo_charstatus::skill[] only has 1200 array, before is 5020.
* Please use skill_get_index() for accessing sd->status.skill[] or skill_db[], don't reckless use skill_id as array index.
* Please import upgrade_20150211_skillset.sql
Signed-off-by: Cydh Ramdh <house.bad@gmail.com>