353 Commits

Author SHA1 Message Date
Cydh Ramdh
9b87ca2b7c Clean up Monster Random List
* 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>
2015-06-27 13:11:49 +07:00
Cydh Ramdh
25dbd6eba4 Bug Fixes:
* Fixed #439, Sightrasher doesn't check target's status. Thank @reigneil.
* Fixed #476, Genetic Change Material ignored the created item if stackable or not. Thank @juanfus.
* Fixed compile warnings, unused `num` in getunitdata().
* Fixed wrong return value in BUILDIN_FUNC(questinfo).

Item Updates:
* Added items: C_Flying_Ljosalfar (20099), Protect_Feathers (19024), Sograt_Lucky_Scroll (17598).
* Corrected view_id for C_Coiledup_Snake (20110).
* Follow up 3f549cafb5570a67c046c5078cddbe3a95b772dc, wrong bonuses and revert 18575. Thank @zackdreaver.

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2015-06-24 22:12:45 +07:00
Cydh Ramdh
3f549cafb5 * Revert some changes on 549f491fe6a0f879b5d4b647cac8307b8123e181
* 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>
2015-06-18 19:26:05 +07:00
Cydh Ramdh
b71ed05857 Bug Fixes
* 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>
2015-06-17 00:33:08 +07:00
Cydh Ramdh
5a4cd7426e Bug Fixes:
* 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>
2015-06-10 12:03:52 +07:00
Cydh Ramdh
851ed7fbee * Fixed #440, forgot to made changes on Pre-Renewal items
* Added item bonus for Sarah Card (4610)

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2015-06-09 00:57:52 +07:00
aleos89
2a04748bf4 Fixes #261
* Corrected the skill behavior of Elemental Shield to match official.
- Thanks to @exneval and @Barigas.
2015-06-08 10:53:41 -04:00
Cydh Ramdh
087d911354 Fixed #418, Magma Eruption behavior
* First hit damage: [450 + 50 * skill_lv]%, 90& causing Stun.
* Damage iteration: [800 + 200 * skill_lv] in every 0.5 second for 5 seconds, has chance to inflict Burning efect.
* Thanks to @reigneil and Rytech

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2015-06-08 20:28:54 +07:00
Cydh Ramdh
549f491fe6 Item Bonus Updates
* Added `bonus2 bSubSkill,sk,n;` -> Reduces n% damage received from skill sk.
* Added `bonus bHPGainAttack,n;` -> Heals +n HP with a normal attack.
* Added `bonus bSPGainAttack,n;` -> Heals +n SP with a normal attack.
* Added `bonus bHPGainAttackRate,n;` -> Heals +n% HP of inflicted damage on every hit when attacking an enemy.
* Added `bonus bSPGainAttackRate,n;` -> Heals +n% SP of inflicted damage on every hit when attacking an enemy.
* Added `bonus2 bHPGainAttackRate,n,x;` -> Has chance x/10% to heals +n% HP of inflicted damage on every hit when attacking an enemy.
* Added `bonus2 bSPGainAttackRate,n,x;` -> Has chance x/10% to heals +n% SP of inflicted damage on every hit when attacking an enemy.
* Replaced `bonus2 bHPDrainValue,n,x;` for x = 0 to `bonus bHPGainAttack,n;`. Since x = 1 is same as `bonus bHPDrainValue,n;` and if there are items with bonus with 'x' is different, the value will be sum'd but the type switched.
* Replaced `bonus2 bSPDrainValue,n,x;` for x = 0 to `bonus bSPGainAttack,n;`. Since x = 1 is same as `bonus bSPDrainValue,n;` and if there are items with bonus with 'x' is different, the value will be sum'd but the type switched.
* Replaced `bonus3 bSPDrainRate,n,x,y;` for y = 0 to `bonus2 bSPGainAttackRate,n,x;`. Since y = 1 is same as `bonus2 bSPDrainRate,x,n;` and if there are items with bonus with 'x' is different, the value will be sum'd but the type switched.
* Updated the documentations.

Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2015-06-07 19:00:24 +07:00
aleos89
ba1a1aec48 Bug Fixes
* Translated the Kagerou/Oboro skill names in the skill_db.
* Added Critical Food type for newer items.
* Water Barrier should only reduce Weapon ATK and Flee.
* Illusion - Bewitch should not be able to move MVPs.
* Spider Web will no longer be deleted when the target escapes from it. (bugreport:1358)
* Adjusted Absorb Spirits to work in duels. (bugreport:4085)
* Clementia, Canto Candidus, and Praefatio will now cast on the party even if someone is wearing a Holy-type armor. (bugreport:6835)
* Masquerade - Gloomy will now remove a Homunculus who have less than 80% HP. (bugreport:8886)
* Players under the effect of Illusion - Shock will now be able to move and attack. (bugreport:8903)
* Deadly Infection should only pass Guillotine Cross poisons through the Shadow Chaser's attacks only. (bugreport:8968)
* Unlimit now gives the proper statuses when reducing DEF and MDEF. (bugreport:9181)
* Water Screen will now heal 1,000 HP every 10 seconds. (bugreport:9184)
* Tinder Breaker will now properly lock targets. (bugreport:9202)
* Corrected Weapon Blocking SP drain timer from every 3 seconds to 5 seconds. Moved Combo timer to skill_cast_db. (bugreport:9203)
* Players under the influence of Kaite will receive a flat 400% more damage from melee attacks (renewal only). (bugreport:9231)
* Release will now check the preserved skill's SP requirement before releasing. (bugreport:9333)
* Fixes #417 - Charge Attack has a range of 14 cells and can do up to 500% damage.
* Fixes #419 - Magnum Break should not hit hidden targets.
* Fixes #421 - Tension Relax should only increase healing at 1x rate when overweight and 3x when not overweight. Also corrected icon getting removed after a few seconds while sitting.
* Fixes #427 - Auto Guard will force a player to stand when being targeted to avoid client desync.
* Fixes #436 - Corrected Super Novice Spirit not allowing any headgear to be equipped.
* Fixes #438 - Soul Linker's Rebirth Spirit should have a fixed cast of 1 second.
2015-05-22 10:08:16 -04:00
Playtester
77cd4df358 Novice HP/SP (fixes #402)
- There will no longer be warnings in the log if HP/SP decreases from level 99 to 100 as this happens officially
- At level 99 only Super Novice will now get +2000 HP in both pre-renewal and renewal
- At level 150 all Novice classes get +2000 HP
2015-04-30 18:55:00 +02:00
Cydh Ramdh
3a59073000 Separated produce_db.txt for PRE and RENEWAL
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
2015-04-19 09:41:55 +07:00
Playtester
b7431efa03 Official HP/SP values (fixes #358)
- Updated the HP/SP tables to be 100% official for level 1 to 150
  * The only differences between pre-renewal and renewal are for HP of Novice, Ninja and Gunslinger
  * Level 151 to 500 is now an auto-calculated continuation of the progress from level 99 to 150 (not normal for all classes)
- HP/SP tables will now be used by default
- The code variation does not perfectly work for all classes, but I tried to get it to work as far as possible
  * This includes an even better estimation for Ninja/Gunslinger HP/SP which now also works for renewal
  * This also includes fixing the SP values of the 3-2 classes in renewal
  * But I really recommend to just use the HP/SP tables for exact values

Special thanks to MrAntares.
2015-04-18 23:46:26 +02:00
aleos89
f19e2dc6c7 Bug Fixes
* Fixed #273 - Keeping should end before mob status recalculation when changing class.
* Fixed #324 - BaseJob will now return the correct ID for Super Novice type classes.
* Fixed #357 - Cross Slash should work with 2 daggers, Huuma type weapons, or a dagger + shield.
* Fixed #370 - Corrected a few things with Devotion range checks.
* Corrected the skill fail message that displays when players have no bullets.
* Corrected Howling of Mandragora's duration.
* Updated Kunai Explosion damage.
* Added missing 20% damage reduction for Water Barrier.
* Mado License attack bonus is granted even without Madogear.
2015-04-15 14:55:58 -04:00
Playtester
df2f850c74 Fixed max HP/SP of extended classes in pre-re
- Fixed max HP/SP of extended classes being way too low in pre-renewal (related to #358)
* It's impossible to make it 100% accurate without tables, but I made it as accurate as possible for now
* More updates to max HP/SP will follow when I have time
2015-04-14 22:15:56 +02:00
Cydh Ramdh
be86cbd5a8 Merge pull request #352 from cydh/cleanup/instance
Instance cleanup
* Changed instance_db fixed array to DBMap
* Removed MAX_INSTANCE_DB
* Valid Instance ID is 1 ~ 65535
* Removed MAX_MAP_PER_INSTANCE from instance_db struct (in the map arrays)
* Change mapnames for instance_db to StringBuf
2015-03-21 20:01:48 +07:00
aleos89
231710c0fa Bug Fixes
* Fixed #119 - Corrected Flash Combo weapon ATK and to cancel skill cast when target is more than 2 cells away.
* Fixed #148 - Corrected Kings Grace to only cast on guild members in versus type maps and added missing effects. Updated cooldown from 60 to 90 seconds.
* Fixed #341 - Offertorium and Magnificat now cancel each other out (Mimics Kyrie Eleison and Assumptio).
* Follow up to 5a0f8dc. Added missing monster transformation bonuses.
* Updated the Status Icon list with newer icons.
2015-03-18 15:12:02 -04:00
Cydh Ramdh
fb01b02283 Instance (core) cleanup
* Changed instance_db array to DBMap
* Removed MAX_INSTANCE_DB
* Valid Instance ID is 1 ~ 65535
* Removed MAX_MAP_PER_INSTANCE from instance_db struct (in the map arrays)
* Change mapnames for instance_db to StringBuf

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-03-18 19:57:37 +07:00
aleos89
9f6f55c07c Bug Fixes
* Fixed #167 - Dragon Breath burning chance is now 15% for all levels. Also corrected damage calculation. Thanks to @exneval.
* Fixed #270 - Cleaned up Reverberation and how it's triggered.
* Fixed #321 - Follow up to 1b6be4e. Fixed MATK calculation for for all player, monster, homunculus, mercenary, etc.
* Fixed #332 - Camouflage now hides player from targeting skills. Added missing DEF/DEF2 bonus.
* Fixed #335 - Check to make sure script has data before trying to free null values.
* Fixed Full Throttle SP drain amount and movement speed increase value. Updated cooldown value to 30 minutes.
* Fixed Bloody Lust skill type from magic to none.
* Fixed Mix Cooking, Make Bomb, Special Pharmacy, Change Material, and Rune Mastery success and fail animations.
* Cleaned up some more compile warnings.
2015-03-13 17:49:38 -04:00
Playtester
ad8e22139f Kaahi and Arrow Shower RE fixes
- Removed Kaahi timer system (fixes #320)
* Kaahi will now heal BEFORE the damage is dealt
* Heals will no longer get lost due to timer system
* Decreased Kaahi duration 1800->350 seconds
- Implemented recent Arrow Shower Renewal updates (fixes #310)
* Arrow Shower now has 3x3 AoE on level 1~5 and 5x5 AoE on level 6~10
* Arrow Shower now has a fixed after cast delay of 500ms
* Note: The bug that causes the skill to hit twice is still present (couldn't fix it)
2015-03-07 19:27:49 +01:00
Cydh Ramdh
9d3d34205f Skill DB clean ups
* 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>
2015-02-12 15:50:50 +07:00
aleos89
083cf5d962 Bug Fixes
* Fixed Severe Rainstorm not being able to be copied by Reproduce. (bugreport:9361)
* Fixed #137 - Updated Homunculus S Race and Element values to official.
* Fixed #163 - Proper renewal calculations for Homunculus. Merge from HerculesWS/Hercules@8faef4f
* Fixed #254 - Corrected King's Grace cooldown to be 60 seconds.
* +20 Foods cannot be dispelled or removed by death.
2015-02-10 12:13:08 -05:00
Aleos
0e533fa7ab Revert "Skill DB clean ups" 2015-02-10 09:33:00 -05:00
Cydh Ramdh
72617ac98b Skill DB clean ups
* 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.

Summary:
* 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.

NOTE:
* Please import upgrade_20150131_skillset.sql

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-31 19:45:52 +07:00
aleos89
54fe46f756 Fixed #205 2015-01-23 10:51:16 -05:00
Cydh Ramdh
c32b8e0c09 Merge pull request #229 from rathena/cleanup/itemmaxlv_n_equipitemack
Cleanup item maxlv and clif_equipitemack
2015-01-21 10:29:27 +07:00
Cydh Ramdh
b47dc0f054 Item DB updates
* Implemented ALL_REVERSEORCISH as follow up 01ae1ae6126dc8aa91f967eea7d145e10dfb29e3.
* Clean up `rand()` script usage in Fools_Day_Box (12396) and Fools_Day_Box2 (12397).

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-18 20:57:42 +07:00
Cydh Ramdh
fa75733cc1 Item Max Level clif_equipitemack messages
* Max level to equip item now works for Pre-Renewal too, since the field is optional. 0 means no max level limit.
* Fixed fail message on clif_equipitemack when item cannot be equipped because level limitation

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-15 01:17:54 +07:00
aleos89
4860a7c7c4 Merge pull request #191 from rathena/cleanup/petdb
* Separated pet_db for Renewal & Pre-Renewal to avoid non-existant monster in different mode.
* Cleaned script command in pet_db.txt file, just point it to doc/script_commands.txt. Read them there!
* Separated damage value for petskillattack2 to its own var 'damage', that previously use 'lv' var to store the value.
* Added config 'pet_ignore_infinite_def' in conf/battle/pet.conf,
- If disabled (val:"no"), fixed damage from pet script 'petskillattack2' will be adjusted to 1. Example, just like player attacks Shining Plant.
- Enabled by default. Previously, fixed damage ignore the infinite defense, that's why it's enabled by default.
- TODO: Correcting the logic and maybe also confirm the correct behavior!
* Added validation for pet script commands,
- Skill for petskillattack, petskillattack2, & petskillsupport
- SC range for petrecovery.
* Cleaned up some source documentation.
2015-01-13 12:43:07 -05:00
Cydh Ramdh
0987aeeb5d Official Item BindOnEquip Support
* Added item flag value: 8 to init default item with BindOnEquip. Item with this flag will be character bound item once equipped.
* Added optional config 'default_bind_on_equip' in conf/battle/items.conf to set default bind type. By default the type is character bound.
* Hercules merge 1f5161a2bd

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2015-01-02 14:44:49 +07:00
Cydh Ramdh
62bdc99f05 A little cleanup for Pet DB
* Separated pet_db for Renewal & Pre-Renewal to avoid non-existant monster in different mode.
* Cleaned script command in pet_db.txt file, just point it to doc/script_commands.txt. Read them there!
* Separated damage value for petskillattack2 to its own var 'damage', that previously use 'lv' var to store the value.
* Added config 'pet_ignore_infinite_def' in conf/battle/pet.conf,
  * If disabled (val:"no"), fixed damage from pet script 'petskillattack2' will be adjusted to 1. Example, just like player attacks Shining Plant.
  * Enabled by default. Previously, fixed damage ignore the infinite defense, that's why it's enabled by default.
  * TODO: Correcting the logic and maybe also confirm the correct behavior!
* Added validation for pet script commands,
  * Skill for petskillattack, petskillattack2, & petskillsupport
  * SC range for petrecovery.
* Cleaned up some source documentation.

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2014-12-31 23:38:57 +07:00
Cydh Ramdh
7295bdc925 Merge pull request #143 from rathena/feature/separated_item_guid
Corrected `guid` implementation of item package in 51074a0. See http://rathena.org/board/topic/99743-item-guid/
2014-12-16 20:26:16 +07:00
Playtester
861112b89b Gravitational Field full official implementation and minor fixes
- Gravitational Field will now work as official servers (bugreport:4897)
  * Fixed range of Ganbantein (16->14) and Gravitational Field (9->14)
  * Gravitational Field never misses and can hit hidden targets
  * Similar to Pressure the damage can not be increased or decreased by any means, it even hits GTB users and users protected by Devotion/Sacrifice
  * Renewal damage is now 400+100*level every 500ms (200+200*level every 1000ms in pre-renewal)
  * You can no longer do normal attacks while the skill is active
  * You now can use skills while the skill is active, however, other skills are unable to deal any damage as long as Gravitational Field is active
  * Added the possibility to link different skill unit groups together; if a skill unit group gets deleted, the linked skill unit groups are deleted as well; this was needed because when being hit, all Gravitational Fields of the person being hit need to be removed
  * Gravitational Field can no longer overlap with itself
  * Pressure and Gravitational Field will now be considered "physical normal attacks" and can consequently trigger Autospells; unlike manually cast spells, Autospells can deal damage while Gravitational Field is active
- Fixed that in renewal, weapons with a range of 2 and 3 did depend on DEX instead of STR (fixed #129)
  * Special thanks to NovaRagnarok for the fix
2014-12-03 21:12:36 +01:00
Cydh Ramdh
5ce80555a7 Corrected guid implementation of item package in 51074a0
* GUID
  - `guid` field in official PackageItem.lua supposed to make item will be separated even item is stackable item.
  - Currently `guid` usage is using item Unique ID that generated when item with GUID flag is appear from package.
  - Some item containers in official PackageItem.lua are also separated, not stacked when player obtain it. Example when using atcommand "@item Xmas_Bless". For current implementation, the items are flagged in item_flag.txt (db folder) with flag 4.
  - `isNamed` field in item group is replaced by `GUID` and move the `isNamed` as new additional field. See doc/item_group.txt or db/re/item_package.txt.
* NPC:
  - Enabled npc/re/other/item_merge.txt and it's now usable.
* Script Command:
  - Added `mergeitem` to merge separated items in player's inventory. See doc/script_commands.txt.
* Misc:
  - Changed how to broadcast the item that obtained from package with flag `isAnnounced` to intif_broadcast, so it will be announced to all connected map-servers.
  - Added some items that flagged as 'item group container' in db/re/item_flag.txt

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2014-11-30 13:52:52 +07:00
aleos89
3be6f5a4f3 * Adjusted new renewal changes and added missing bonus damage modifiers for several skills. (bugreport:9280)
* Put Gloomy Shyness into INF3_*.
2014-11-27 22:37:25 -05:00
Playtester
a0bd0168cf Autobonus on ground skill and Angelic Ring fixed
- Autobonus3 will now also trigger when using ground skills (bugreport:6434)
- Fixed trigger chance of the Angelic Ring auto-bonuses (5% -> 10%) and that they didn't display any effect
2014-11-17 17:05:10 +01:00
Playtester
08bf5112a1 Fire Pillar, Acid Bomb fixes
- Fire Pillar can no longer hit plants (follow-up to 04a1173f7d)
- Acid Bomb will now hit every 500ms instead of every 1000ms on renewal (related to bugreport:6338)
2014-11-15 21:48:44 +01:00
Playtester
e7e8b5454b Land Protector, Ground Skill Splash, Storm Gust Knock-back
- Land Protector now behaves like on official servers (bugreport:5237)
  * Land Protector now protects from units being placed on it, no matter if they have splash range or not
  * Land Protector no longer protects from damage from units not outside Land Protector that splash inside
  * Meteor Storm no longer shows meteors falling if they would land on Land Protector
  * Pneuma can no longer be placed next to Land Protector
  * Also cleaned up the code a bit, so the checks are done where they should be done
- Ground skill splash ranges updated to their official values (bugreport:5237)
  * Lord of Vermilion places units in a 11x11 area with 3x3 splash range each
  * Storm Gust places units in a 9x9 area with 3x3 splash range each
  * Heaven's Drive places units in a 5x5 area with no splash range
  * Venom Dust now has a splash range of 3x3 and is consequently larger than before
- Storm Gust's knock-back behavior updated to official (bugreport:5237)
  * Each of Storm Gust's units will knock back "Away from center"
  * As units in the south-west are processed first, the knock-back direction will usually be north-east
  * At the edges the knock-back direction will be "to the outside"
  * Land Protector and Ganbantein will influence the knock-back behavior strongly, e.g. if Storm Gust has a hole in the middle, it will have a "suck in" effect
  * Added a config option for those who want the old "random direction" behavior from eAthena
2014-11-15 16:32:26 +01:00
Capuche
ea6ba2dd3f - Fixed item bonus for vesper card in pre re
- Fixed warning for infinite warp where count_rewarp increased when the player was warped near a warp

Special thanks to Radian

Signed-off-by: Capuche <capucrath@gmail.com>
2014-11-13 21:19:15 +01:00
Playtester
525e8178c2 Timer interval, Waterball, Crimson Fire Formation and boss walk delay updates
- Reduced the timer interval from 50ms to 20ms (official value)
  * For a long time it is well known that the Aegis interval is 20ms, but devs have been hesitant to set it to that out of performance reasons; these days however, machines are better and there aren't really many 2000+ player servers anymore, so a 20ms interval is actually quite viable now.
  * Setting the interval to 20ms makes the server perfectly in sync with the client that expects the server to have a delay of no longer than 20ms.
  * All skills that are "chain-able" on official servers will now also be 100% chain-able here (previously it just worked to 40%), assuming there is no lag
  * Skills with cast time will no longer go off 30ms later than officially
  * Several others improvements in regards of client-server sync (timers are used almost everywhere)
  * This might increase the CPU usage by up to ~50%, if you have trouble running your server with this, you can increase it again in timer.c (TIMER_MIN_INTERVAL)
- Strongly improved the Waterball implementation (bugreport:9382)
  * The interval between Waterballs is now 150ms (previously 125ms); due to the timer interval it will alternate between 140ms and 160ms (yes, this is official)
  * While the Waterball effect is active, players and non-boss monsters can no longer walk
  * Added a server-sided canact delay each time a Waterball is shot, which is equal to the one the client gives; this is to prevent hackers from being able to mass-cast Waterball; you can still multi-cast Waterball if your aMotion is shorter than the Waterball interval (i.e. 186 ASPD or higher)
  * The Waterball effect is no longer canceled when the target hides behind an obstacle, but no waterballs will fly and no damage will be applied; walkdelay will remain, but there won't be any canact delay for the caster (meaning he can cast another spell); if the target comes out of its cover during the duration, it will be hit again (this also fixes an exploit against MVPs)
  * Waterball now has a max duration of 10 seconds, even if more water cells are available, the effect will stop; this means that level 10 monster water ball will now only hit up to 67 times
- Fixed Crimson Fire Formation having a knock-back effect although it shouldn't (bugreport:6949)
  * It will hit once every 20ms with no knock-back, regardless of whether the target is undead, non-undead or a player
  * If you want to it to display more "fluently" you would need to set the SKILLUNITTIMER_INTERVAL in skill.c to 20ms, but the performance loss is pretty big for something only this skill and Firewall would benefit from
- Bosses are now able to ignore skill-induced walk delay (#100)
  * They can for example walk after casting Sonic Blow and Waterball (see above)
- Minor description improvements
2014-11-12 22:42:48 +01:00
Playtester
04a1173f7d Plant damage, Land Mine, minor fixes and improvements
- Fixed up the damage code in regards of damage against plants (bugreport:9380)
  * Rewrote DAMAGE_DIV_FIX so that it rounds damage down when number of hits is negative (damage split on hits)
  * Created a function battle_apply_div_fix that does not only call DAMAGE_DIV_FIX but also makes sure that damage can only become 0 when the custom config setting skill_min_damage is not set for the current skill type
  * skill_min_damage is now 0 by default (official: all types can fail against plants as long as skills have negative number of hits), if set, all skills will deal as much damage as hits
  * Restructured and renamed function now known as "is_infinite_defense" that will work for all 3 damage types and returns if damage is infinite for the current situation, it will now also properly consider all "MD_IGNORE" modes
  * Fixed the order of processing of all 3 skill types in regards of plant damage: first all calculations are done, then plant damage is applied and then DAMAGE_DIV_FIX is applied
  * Sonic Blow and Rapid Shower are now skills with negative number of hits (i.e. they can't hit plants officially)
  * Traps can no longer ignore plant mode (only way to damage plant more is via status changes)
  * Final Strike is now able to hit plants (deals 1 HP damage)
  * When left-hand-wielding, you will now always deal 2 damage to plants per attack, regardless of whether double attack triggers or you don't even have a weapon in the right hand
  * There will no longer be backhand damage to plants (Katar)
- Land Mine is now a single target skill, the trap still triggers in a 3x3 area, but will only hit the first target that touches it (issue:99)
- Changed the "Don't return reflect damage" flag from 0x1000 to 0x1000000 as apparently the other flag was already used; updated function description so it's easier to see
- Improved SC_SIGHTBLASTER structure slightly
- Typo fixes and description improvements
2014-11-07 23:28:54 +01:00
Cydh Ramdh
c10c05ab61 * Fixed typo in script for RWC2010_Indonesia (18509)
* Changed `mr` values to use constantan value
* Added check for IT_SHADOWGEAR's script restriction before executing it

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2014-11-06 20:17:49 +07:00
Playtester
902c920b73 Knockback, stop effects and Skid Trap reworked, monster chase and direction updates, code optimizations
- Created a new function unit_blown_immune that will now serve as the central function to determine if an object can be knocked back or stopped (bugreport:7637)
  * Moved the check code from skill_blown to unit_blown_immune
  * Several stopping effects and traps will now use unit_blown_immune to check if the object can be stopped, if not, the object will always move to its target cell before stopping
  * Bosses and monsters immune to knockback will now no longer be stopped by such traps
  * Expanded the configuration skill_trap_type and moved its checks into unit_blown_immune, so it's possible to switch the "no stop" behavior off for GVG/BG and monsters individually
  * Long-term we should make all skills use this function to check for knockback immunity, it will make the checks a lot cleaner and more centralized
- Monster chase range updates (bugreport:7637)
  * Updated monster_chase_range in monster.conf from 1 to 3; I originally thought official value is 1, but doing some in-depth tests myself I realized it's 3 for the most important situations
  * When a monster cannot issue new "move" commands because it was affected by a status change, but is still moving due to knockback immunity, it will no longer unlock its target and stop
  * Fixed a bug that always caused the chase path monsters calculated to be 1 cell too short causing them to recalculate their path one cell before their goal every single time
- Fixed the direction calculation once again and optimized it at the same time (bugreport:9373)
  * Now the calculated direction is 100% official, really truly, checked it myself with every single cell and various skills
  * Added a new function map_calc_dir_xy that allows to check for a direction between two cells without the need of a block_list
  * map_calc_dir will now just use map_calc_dir_xy to avoid duplicate code
- Implemented Skid Trap properly (bugreport:9373)
  * The direction of the knockback will now be "away from position of the caster during cast" rather than "away from trap"
  * Skid Trap will now stop the target for 3 seconds; this works even in GVG/BG and on bosses, even though the actual knockback doesn't happen
2014-10-30 20:12:18 +01:00
Playtester
b89b669325 Combo skill updates
- Cleaned up skill_combo so it's easier to understand and update
- Monk updates (bugreport:9364, bugreport:4534)
  * Default combo delay is now (1000 - 4*AGI - 2*DEX) milliseconds, it will be used when none is specified in the skill_cast_db.txt
  * Fixed DEX increasing combo delay rather than decreasing it
  * Fixed "Triple Attack" not giving any "can act" delay so you were able to use a skill right when it triggered
  * Fixed combo delays of all combo skills (turns out they all use the default in both pre-re and re!)
  * Fixed "Palm Strike" in renewal having cast time rather than cast delay
  * Monk Spirit now reduces the SP cost of all Monk/Champion combo skills to 2 SP
- Taekwon updates (bugreport:9364)
  * Stances will no longer give you walk delay when they trigger
  * You can still use the Kick after moving as long as it's still within the combo delay
- Hunter updates (bugreport:9082)
  * Beast Strafing is now a target skill, you can target any brute or insect monster with it regardless of your previous target
  * You no longer need to target a brute or insect monster with Double Strafe for the combo to trigger
  * If the combo triggers you no longer get walk and attack delay (that means you can still use DS continuously)
  * You can still use Beast Strafe after moving as long as it's still within the combo delay
2014-10-27 20:02:43 +01:00
Playtester
b88e95381d Sight Blaster and other skill fixes, magic reflect, crash, trap display and monster behavior fixes
- Fixed cast time of Sightrasher in pre-renewal (700ms -> 500ms)
- Official Sight Blaster behavior (bugreport:6945, partially bugreport:144)
  * Sight Blaster's AoE is now 3x3 even in pre-renewal (it was originally larger so it hits traps before they trigger)
  * Sight Blaster will now prevent traps from triggering as long as they are knocked back
  * Fixed a bug that caused Sight Blaster to not work on traps and ice walls at all
  * Sight Blaster will no longer expire when the attack was reflected
  * Sight Blaster will now expire when hitting an ice wall
  * Sight Blaster will now properly protect you from being attacked from its AoE range
- Sight, Ruwach and Sight Blaster will now check for a target every 20ms (previously every 250ms)
- Step action will now be canceled when being knocked back (skills won't be executed anymore when knocked out of range)
- When knock back magic is reflected it will no longer lead to the caster being knocked back (related to bugreport:6945)
- Activated traps can no longer be hit
- Fixed a problem that left "trap ghosts" forever on the screen when a trap was knocked out of the screen
- Fixed three more potential map server crashes
- Monster behavior fixes
  * Monsters will no longer be able to do normal attacks when hiding
  * If out of any reason a monster on "attack" state can't move and can't do normal attacks, it will now use "attack" state skills
  * The order of monster thought processing is now equal to official servers
2014-10-25 13:13:06 +02:00
aleos89
8b755e5419 Bug Fixes
* Fixed Decoration of Music status when equipping the headgear. (bugreport:9342)
* Fixed Warg Dash giving Endure when it shouldn't. (bugreport:9337)
* Fixed Mado Gear skill item requirements. (bugreport:9335)
* Fixed Super Novice Spirit being able to be casted by all classes. (bugreport:9344)
* Fixed Masquerade - Ignorance to work on monsters. (bugreport:8099)
* Fixed Voice of Siren duration depending on level of character. (bugreport:9289)
* Fixed Spirit Sympathy SP requirement reduction when summoning an Element. (bugreport:9329)
2014-10-21 14:04:05 -04:00
Cydh Ramdh
ce090ce916 Skill Changes:
* Wizard/Warlock Skill
  * Moved Sightrasher (WZ_SIGHTRASHER) requirement to check Sight (SC_SIGHT) is active or not to skill_check_condition_castend section.
  * Fixed Sightrasher (WZ_SIGHTRASHER) splash area to 3x3. (bugreport:9298)
  * Now Comet (WL_COMET) cannot hits Hiding target (The mistake is not at flag 0x10000 in skill_db.txt, the flash should be added by SD_ANIMATION). (bugreport:8909).
  * Now Reading Spell Book (WL_READING_SB) checking the number of available spell books in Spell Book DB first to prevent infinite loop.
* Sage Skill
  * Now Abracadabra (SA_ABRACADABRA) checking the number of available skills in Abra DB first to prevent infinite loop.
  * Reduced MAX_SKILL_ABRA_DB from 350 to 160.
* Shadow Chaser Skill
  * Fixed Chaos Panic (SC_CHAOSPANIC) effect. (bugreport:9321).
* Genetic Skill
  * Now Wall of Thorn (GN_WALLOFTHORN) can be knocked back but not a whole skill group and durability (HP & max hit) for each skill unit.
* Guillotine Cross Skill
  * Now Magic Mushroom (SC_MAGICMUSHROOM) effect checks the number of available skills in Magic Mushroom DB first to prevent infinite loop.
  * Changed 'RemoveFlag' in db/magicmushroom_db.txt value to 1 to remove skill by importing. (bugreport:9322).
* Wanderer/Minstrel Skill
  * Now Randomize Spell (WM_RANDOMIZESPELL) checks the number of available skills in Improvise DB first to prevent infinite loop.
  * Reduced MAX_SKILL_IMPROVISE_DB from 50 to 30.
* Rebellion Skill
  * Cleaned up, added, corrected some (missing) sequences & DB values.
  * Fixed Hammer of God (RL_HAMMER_OF_GOD) splash damage.
  * Fixed Shaterred Strom (RL_S_STORM) push back & force to sit effect (for player, or stun for monsters) (first implementation leftover).
  * Fixed Slug Shot (RL_SLUGSHOT) hitrate-distance penalty (first implementation leftover).
  * Fixed Howling Mine (RL_H_MINE) damage ratios (first implementation leftover).
  * Now Bind Trap (RL_B_TRAP) only can be placed 1 at same time.
  * Fixed Bind Trap (RL_B_TRAP) damage calculation by using Caster's DEX, Target's Current HP, & Skill Level. FIXME: Exact formula still unknown (refers to idAthena formula).
  * Now Dragon Tail (RL_D_TAIL) doesn't split damage among targets anymore.
  * Now Crimson Marker (RL_C_MARKER) will fails to cast if no slot available.
  * Implemented official packet `ZC_C_MARKERINFO` of Crimson Marker (RL_C_MARKER) mini-map marker (first implementation leftover). !TODO: Confirm the packet for older or newer clients (idAthena partial merge r1497)
  * References: http://forums.irowiki.org/showpost.php?p=1387992&postcount=968, follow up 507f047, dd67f9d

Misc:
* Fixed some skills that should work only in shoot range (map_foreachinshootange, by default), and added check for respecting *skill_wall_check* (map_foreachinrange).
* Fixed item stackable check for `/item` command, follow up 9b4d922.
* Fixed npc source file isn't removed properly by @unloadnpcfile. (bugreport:9311).
* Added constantan for status_change_start() and sc_start() scripts as well
  * SCSTART_NONE = 0x0
  * SCSTART_NOAVOID = 0x1
  * SCSTART_NOTICKDEF = 0x2
  * SCSTART_LOADED = 0x4
  * SCSTART_NORATEDEF = 0x8
  * SCSTART_NOICON = 0x10
* Moved and changed itemdb_unique_id() to pc_generate_unique_id().
* Seperated check for skill SC requirement to skill_check_condition_sc_required().
* Added skill unit flag `UF_KNOCKBACK_GROUP`, just an option to make skill unit can be knocked back a whole group.
* Typos and other minor changes!

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2014-10-01 17:42:30 +07:00
aleos89
a080117a74 Bug Fixes
* Switching arrows no longer stops attacks. (bugreport:9270)
* Looter monsters will now randomly pick items rather than going for the closest one. (bugreport:9268)
* Follow up to 0fed97c. Moved pc_setsit before skill_sit to not break skills that count players who are sitting. (bugreport:8966)
* Follow up to 2d2991a. Cleaned up some compile warnings.
* Updated the inf3 descriptions in the skill_db.
2014-09-20 11:44:44 -04:00
Cydh Ramdh
9b4d922ef4 Bug Fixes:
* Follow up 2d2991a, remove trailing spaces in inter_athena.conf
* Added `bound` field on `picklog` table (bugreport:9240) Thank @icxbb-xx (Napster)
* Fixed Randomize Spell infinite loop. Failure of skill improvise db reading. (bugreport:9288)
* Added **max_extended_aspd** for caping max ASPD for KO/Rebellion, default is 193. Pointed by @raynra & Ziu
* Mail attachment
  * Added `bound` field on `mail` table, since group with PC_PERM_TRADE_BOUNDED can put bound item into attachment
  * Fixed wrong data type causing wrong zeny amount (bugreport:9291)
* Fixed item color issue for bound item (bugreport:9238)
  * Stackable item shouldn't be displayed as yellow color
  * Equip doesn't shown as yellow after relog or item is moved
* Silence status immunity for Renewal (bugreport:9227)
  * Bleeding (SC_BLEEDING): Vit -> Agi
  * Silence (SC_SILENCE): Vit -> Int
  * Sleep (SC_SLEEP): Int -> Agi
  * Thank @Playtester, @Lilith-, partial merge of Hercules:6f26451
* Fixed status check when cast a skill to hidden target
  * Stone Curse shouldn't be casted to hidden enemy when the caster has intravision (bugreport:9266)
  * Added **INF3_HIT_HIDING** for skills that *maybe* have effect to/can hit the hidden target. Previously, every Earth Element skills *always* had it, doesn't matter ground skill or single-target skill
  * **!TODO: Confirm other skills that have ability for this!**
  * **!FIXME: For now, I rely as the previous check did, I put some Earth Element skills (and) with area/ground effect**
* Correcting Devotion behavior (Hercules:e7be725, 41f28c0)
  * Failing to cast Devotion to the 6th player
  * Only player who devotes other that 'shout' Auto Guard when it active also with the walk delay
  * Status icon that inherited from devoter won't be displayed at devoted player
  * Reflect Damage on devoted player won't reflect normal attack, only melee skill attack
  * Added config **devotion_rdamage_skill_only** for backward compability, ignore the behavior above

**IMPORTANT**
  * Please import sql-files/upgrades/upgrade_20140915_log.sql
  * Please import sql-files/upgrades/upgrade_20140915.sql

Signed-off-by: Cydh Ramdh <house.bad@gmail.com>
2014-09-15 18:02:49 +07:00
Euphy
2acf9a401a Fixed item script for Glorious Holy Avenger. (bugreport:9244)
http://rathena.org/board/tracker/issue-9244-9-glorious-holy-avenger/

Script command 'preg_match' will throw a debug instead of an error if PCRE is not enabled.

Signed-off-by: Euphy <euphy.raliel@rathena.org>
2014-08-22 23:56:08 -04:00