* 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.
Created the respective enum on source side and changed the script doc to only refer to the constants not the direct values.
Additionally adjusted the sample script.
* Moved all item effects to source.
* Updated HP/SP Increase Potions to use the official statuses.
* Updated Vellum Flail to use the official status instead of Critical Wound.
Thanks to @exneval.
-> All Credit to Kisuka for this big work.
Added news commands to alter questinfo conditions :
- setquestinfo_level : Add level range criteria for quest info with quest id 'quest_id'.
- setquestinfo_req : Add quest requirement for quest info with quest id 'quest_id'.
-> Player have / doesn't have the required quest.
- setquestinfo_job : To add additionnal job criteria.
-> Credit to Cydh !
* Follow up to 2cee5b6.
* Fixes#516 - Base stats (STR, AGI, etc) will now stick after the unit's statuses are recalculated.
* Statuses are directly modifiable now (ATK, DEF, etc)
* Created constant values so it's a lot easier to read.
* Updated script command documentation to reflect changes.
* Made changes to bonus3 bAddEff, bonus4 bAddEff, bonus3 bAddEffWhenHit, bonus4 bAddEffOnSkill as well
Signed-off-by: nanakiwurtz <nanakiwurtz240@gmail.com>
Changed y to atf to avoid confusion on 'bonus4 bAddEffWhenHit' & 'bonus5 bAddEffOnSkill' (Thanks to @joelolopez)
Signed-off-by: nanakiwurtz <nanakiwurtz240@gmail.com>
* Added type for `gethominfo`, `getpetinfo`, and `getmercinfo` to return GID.
* Added `geteleminfo`, to retrieve Elemental ID and GID. The otherinfo can be gained from `getunitdata`
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* Removed `0x2715` and `logchrif_parse_updmail`, not being used that was duplicated by `logchrif_parse_reqchangemail` (`0x2722`).
* Changed packet header `0x2736` to `0x2b13` of `chrif_update_ip` from map-server to char-server. That was ambiguous with `0x2736` of `logchrif_parse_updcharip` that being used by char-server to login-server.
* Changed packet header `0x3804` to `0x2726`, the one that being used to send back global account reg from login-server to char-server. That was ambiguous with `0x3804` that being used by char-server (was inter actually) to map-server.
* Some indent clean up as result from char & login server refactor.
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* Eff_Crystalize on Sropho_Card (4522) has defined duration.
* Bonus added:
* `bonus4 bAddEff,eff,n,y,t;`
* Adds a n/100% chance to cause status eff for t milliseconds on the target when attacking
* Just like `bonus3 bAddEff,eff,n,y;` but with user-defined duration;
* `bonus4 bAddEffWhenHit,eff,n,y,t;`
* Adds a n/100% chance to cause status eff for t milliseconds on the target when being hit by physical damage
* Just like `bonus3 bAddEffWhenHit,eff,n,y;` but with user-defined duration;
* bonus5 bAddEffOnSkill,sk,eff,n,y,t;
* Adds a n/100% chance to cause status eff for t milliseconds on the target when using skill sk
* Just like `bonus4 bAddEffOnSkill,sk,eff,n,y;` but with user-defined duration;
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* Added array variable option in 3rd param of `getguildmember` and `getpartymember`, so the script will returns the result in reserved array instead using temporary global variable.
* Also, the script returns the member found directly.
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* Fixes#447 - Added script command 'unitblockmove' to be used with OnTouch and Unit Commands.
* Fixes#448 - Leech End will no longer get a player stuck in stand/sit modes.
* Fixes#503 - Added script command 'ignoretimeout' which disables the SECURE_NPCTIMEOUT of a specific script.
* Fixes#521 - Pre-renewal Shield Chain should always be Neutral damage.
* Fixes#532 - Fixed an issue with the 'item_check' config not saving the unique ID when enabled.
* Fixes#537 - Arms Cannon is now a single unit target skill.
* Fixes#541 - Cleaned up Ignition Break damage formula.
* Fixes#543 and Fixes#552 - Cleaned up Reverberation to match official. Now splits damage among targets.
* Fixes#546 - Updated Randomize Spell to the latest official skill list and rates.
* Fixes#547 - Escape is now a self skill and can use normal Traps if no Alloy Traps are available.
* Fixes#551 - Great Echo and Sound of Destruction can now blocked by Pneuma.
* Fixes#556 - Adjusted Arrullo, Deep Sleep Lullaby, Netherworld, and Voice of Siren duration formulas to properly account base/job levels.
* Fixes#561 - Pre-renewal Tiger Cannon now properly removes HP when casting skill.
* Fixes#576 - Shield Spell, Exceed Break, Overbrand, Moon Slasher, Piety, Earth Drive, and Hesperuslit no longer have fixed cast time.
* Cleaned up Shadow Formation SP Drain formula to be 11-skill_lv per second.
* Sound of Destruction is now a placement skill type.
* Updated variable cast time for Windmill Rush from 2 seconds to 1 second.
* Added flag &16 to add manually special item that will be broadcasted if: Dropped by monster -> player pick it up. Added items with this flag:
* Gold_Key77 (7782)
* Silver_Key77 (7783)
* Be used also to broadcast item in package/group with flag 'isAnnounced', replaced intif_broadcast().
* The message is using msgstringtable.txt on client side, make sure your translation is not messy.
* Credits:
* fcba8a2161
* 2761bb0af9
* Misc updates: Fixed job and class for items:
* Sealed_Gloom_Under_Night_Gachapon (14696)
* Sealed_General_Egnigem_Cenia_Scroll (14739)
* Sealed_Vesper_Scroll (14740)
* Midgard_Celebration_Lucky_Egg (14741)
* Hero_Midgard_Egg (14753)
* Safe_To_Smelting_Scroll (14758)
* Limited_Edition_JOB_Battle_Manual (14765)
* Rise_Midgard_Lucky_Egg (17494)
* Lucky_Silvervine_Fruit_Box_III10 (17495)
* Lucky_Silvervine_Fruit_Box_III110 (17496)
* Epic_Heroes_Scroll (17519)
* Majestic_Lucky_Egg (17526)
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* Removed `ENABLE_ITEM_GUID` from src/config/core.h, after long time introduction it's worth to be enabled by default. Just remove all items with GUID flag if want to remove it generates GUID .
* Implemented client interface to merge the items. Packet struct credits: 856b6f1feb
* Edited `mergeitem` script command to use the interface, moved the 'old' `mergeitem` to `mergeitem2`.
* Fixed the behavior to add GUID'd item to inventory in Cash Shop.
* Updated item_flag.txt for listing `IT_CASH` items (item type 18).
* NOTE: `IT_CASH` items which defined in item_flag.txt with flag `4`, cannot be merged.
* NOTE: Please check the packets for older clients. Tested work on 2012-04-10, 2013-08-07 and 2014-10-22.
* NOTE: Please import 'upgrade_20150804.sql' for MySQL Log Database.
* Removed duplicate clif functions:
* `clif_msgtable()` -> `clif_msg()`
* `clif_msgtable_num()` -> `clif_msg_value()`
* Item DB Updates:
* Indonesia_Box2 (17079) should gives 5x Wing_Of_Butterfly (602).
* Changed some item types to 18.
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* waitingroomkick "<NPC object name>" , "<character name>"; Kicks one player, there was just a method for several players
* getwaitingroomusers "<NPC object name>"; get the mumber of players inside a waitingroom and the rids.