* Fixed some Manhole skill related:
* Shouldn't be removed by Crazy Weed, Fixed#580
* Hell's Plant should ignores target under Manhole effect, Fixed#566.
* Fixed#536, Neutral Barrier shouldn't miss magic attack and ranged attack that ignores flee.
* Fixed#522, Change Material always check the first produce line that matches the item/product requested. Also removed some reduntant checks.
* Fixed#568, Gentletouch Cure shouldn't heal Emperium and BG's Barricades.
* (Attempt to) Fixed#533 and fixed#212, Ground Drift damage calculation.
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* Follow up to d95f5d2 - Fixes an issue with parenthesis. Thanks to @cydh.
* Follow up to 3c92075 - Fixes a potential divide by zero. Thanks to @theultramage.
* 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>
* By expanding current item_delay.txt's function to implement official item reuse limit.
* There's the 3rd optional column, put SC ID value to add reuse limit. The reuse delay will be acknowledged as status change. Ignoring this column will use 'normal' item delay.
* Added some items to their reuse limit group.
* Item DB Updates
* Added effect for ASPD_Potion (12684).
* Added effect and delay for Para_Team_Mark_ (22508).
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* Fixes#479 - Fixed the unique item ID system not giving new items their unique ID. Blame 7295bdc.
* Fixes#488 - Fixed Water Barrier, Zephyr, and Power of Gaia not being applied to targets walking into the area of effect.
* Fixes#500 - Cursed Circle will now properly release targets if the caster moves out of AREA_SIZE.
* Fixes#501 - Reverberation can be placed an unlimited amount of times. The magic part now only deals neutral damage.
* Fixes#506 - Magnetic Field will now affect others in PvP maps, except for the caster. Thanks to @exneval.
* Fixes#527 - The Roulette item database will not be loaded at all if the feature is disabled.
* Fixed a small typo for 'unitwalk' and 'unitwalkto' script commands.
* Added `console_msg_log` for char-server and login-server.
* Added `console_log_filepath` to determines log filepath.
* Default for map_athena.conf is `./log/map-msg_log.log`, removed the hardcoded filepath.
* Default for char_athena.conf is `./log/char-msg_log.log`.
* Default for login_athena.conf is `./log/login-msg_log.log`.
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* Now using db/[pre-]re/mob_random_db.txt as main file.
* Removed hardcoded limit for random monster group.
* Introduce contants for monster random group, MOBG_*. Usage in `monster` script can be '-1-MOBG_ID' to determines 'summon monster from random summon list'.
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* Player's Roulette variables aren't saved.
* Fixed client crash because of wrong packets sent by Roulette.
* Changed item
* Added a little check on `char` table for PACKETVER >= 20141016.
* Thank @aleos89, @icxbb-xx
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.
* Fixes#475 - Added missing Roulette packet lengths.
* Fixed a few issues with character gender changes for 20141016 and up. Thanks to @cydh's eagle eyes!
* Fixed a small typo in 'upgrade_20150619_log.sql'.
* Removed an unused variable.
* Removed DAMAGE_RATE(), DAMAGE_SUBRATE(), and DAMAGE_ADDRATE() macros.
* Adjusted ATK_RATE*(), ATK_ADDRATE*(), ATK_ADD*(), RE_ALLATK*() macros so we don't produce over complicated ternary operations.
* Adjusted formulas to properly take into account the 'ratio' aspect.
* Cleaned up a few incorrect damage formulas.
* Cleaned up some type casting.
* Implemented renewal effects for Magical Bullet.
* Removed hardcoded message that displayed clif_showscript for `transform` script, replaced its usage for item script by using `showscript`.
* Changed unittalk usage on `F_Cat_Hard_Biscuit` and `F_Rice_Weevil_Bug` function in quests_malangdo.txt.
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* Item bonus correction, ambiguous of 'HP/SP Gain' implementation.
* Since no implementation for 'drain HP/SP from target', the bonus was removed but makes 'HP/SP Drain' bonuses act like 'drain HP/SP from target' that was totally wrong.
* This also fixed#471, @AbuGosok
* Removed HP/SP Gain bonuses that should be use HP/SP Drain:
* `bonus bHPGainAttack,n;` is same as `bonus bHPDrainValue,n;`.
* `bonus bSPGainAttack,n;` is same as `bonus bSPDrainValue,n;`.
* `bonus2 bHPGainAttackRate,x,n;` is same as `bonus2 bHPDrainRate,x,n;`.
* `bonus2 bSPGainAttackRate,x,n;` is same as `bonus2 bSPDrainRate,x,n;`.
* `bonus2 bHPGainRaceAttack,r,n;` is same as `bonus2 bHPDrainValueRace,r,n;`.
* `bonus2 bSPGainRaceAttack,r,n;` is same as `bonus2 bSPDrainValueRace,r,n;`.
* `bonus2 bHPGainRaceAttackRate,r,n;` is same as `bonus2 bSPDrainValueRace,r,n;`.
* `bonus2 bSPGainRaceAttackRate,r,n;` is same as `bonus2 bSPDrainValueRace,r,n;`.
* `bonus bHPGainAttackRate,n;` none.
* `bonus bSPGainAttackRate,n;` none.
* Fixed#454, thank @jeanroyce
* Item update & correction script from Aegis
* Wunderkammer renamed to YinYang_Earring (18575).
* Updated scripts for 7676, 18593, 18595, 18597, 18600, 18601, 18630, 18631, 18636, 18637, 18650, 18650, 18652, 18656, 18659, 18671, 20700, 20724, 28315, 28316, 28317, 28318.
* Updated script for RCC2013 Combos 28315:28317 and 28316:28318.
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* Now coma triggered on every attack types (bugreport:3100)
* Added bonuses `bonus2 bComaRace,r,n;` and `bonus2 bComaClass,c,n;`, replacing the current usages of `bWeaponComaRace` and `bWeaponComaClass`.
* This bonus has no effect for GVG and BG monsters.
* Fixed Shockwave Trap (HT_SHOCKWAVE) SP reduction, should be % of MaxSP not % of 'current' SP.
* Fixed#462, failure in `setunitdata` for NPC. Thank a91323, @julia40124009
* Fixed#470, changed SO_ARRULLO target to BL_CHAR.
* Added skill flag INF2_HIT_TRAP (0x40000) to removed hardcoded 'skill that can hit traps'.
* NOTE: Client-side's factor also determines that skill can be targeted to trap-type skill or not.
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* 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.
* Fixed#445, fixed Health Conversion cast time & cooldown.
* Fixed#404:
* Added new item bonus `bonus2 bSubDefEle,e,x;` to reduce x% damage received from monster with element e.
* Fixed item script for item 4442 until 4449.
* Added config `subdef_ele` in conf/battle/items.conf to change bSubDefEle behavior.
* Follow up 111eb0c1c1a048219cb7c908cf8be0b0a24afdde, added state requirement for skill 'elementalspirit2' for skill that need summoned Elemental Spirit and removes it.
* Fixed monster that `is_infinite_defense` ignored Safety Wall && Pneuma effect.
* Also fixed bugreport:6741.
* But the effects are still ignored for Emperium when WOE time, and BG monsters in BG Arena (like previous).
* Item Updates:
* Transformation chance to becomes Atroce as combo of Fidelity_Necklace (2959) and Black_Shiba_Inu_Hat (18756).
* Transformation chance to becomes Eddga as bonus of King_Tiger_Doll_Hat (5497) and W_King_Tiger_Doll_Hat (18856).
* Cooldown reduction for skill WL_RECOGNIZEDSPELL in Naqsh (2904).
* Fixed bonus damage for WS_CARTTERMINATION as combo of Gigant_Helm (19021) and Giant_Axe (1387).
* Changed `bonus3 bSPDrainRate` to `bonus2 bSPGainAttackRate` and `bonus3 bHPDrainRate` to `bonus2 bHPGainAttackRate` in db/re/pet_db.txt.
* Corrected calculation in `battle_calc_cardfix` for BF_MISC, it's should be `if( cardfix != 1000 )`!.
* Source documentation updates for `battle_calc_cardfix`.
* Typo at MOBID_GUARIDAN1 and MOBID_GUARIDAN2.
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* 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.
* Follow up 2b870c24, 'missing' rate explanation for status_percent_change.
* Follow up 2ef7a7da, revert documentation rate for bHPVanishRate and bSPVanishRate
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
* Not only for Gate of Hell, other skill that has negative 'Number of hits' with VVVS, the damage will be reduced.
Signed-off-by: Cydh Ramdh <cydh@pservero.com>