326 Commits

Author SHA1 Message Date
Lemongrass3110
deb0615639 Follow up to 2fc7472
Fixed an issue with random calculation on abra in some cases.
Moved some commonly used functions into util and yaml database for global usage.

Thanks to @Daegaladh and @aleos89
2019-12-19 22:12:55 +01:00
Aleos
2fc7472001
Converted Abra Database to YAML (#4480)
* Removed useless skill name usage in the database.
2019-12-18 18:40:50 -05:00
Daegaladh
28c70cde3d
Fixed SC_KEEPING and SC_BARRIER exploit after classchange (#4486)
* Fixed monsters affected by SC_KEEPING and SC_BARRIER not moving or attacking after classchange
* Thanks to @aleos89
2019-12-17 23:40:46 +01:00
Aleos
d56553775a
Converted Magic Mushroom Database to YAML (#4482)
* Split database into pre-renewal and renewal.
* Left pre-renewal database empty.
2019-12-17 16:07:17 -05:00
Cydh Ramdh
e6bf2d18f9
bonus bVariableCast and bonus2 bSkillVariableCast for Pre-renewal (#4268)
* `bonus bVariableCast,t;` now works in pre-renewal to increase casting time
* `bonus2 bSkillVariableCast,sk,t;` now works in pre-renewal to increase casting time by skill name
* Item bonus documentation update
2019-11-04 08:03:15 +07:00
Joam
375aea6b86 Fix item bonus SkillUseSPRate (#4418)
* Resolves item bonus SkillUseSPRate not decreasing SP usage.
Thanks to @attackjom!
2019-10-25 09:28:40 -04:00
Aleos
abec31f320
Updated Ninja Skills (#4267)
* Fixes #4114.
* kRO Changelog: http://ro.gnjoy.com/news/notice/View.asp?seq=7084
Thanks to @SeravySensei and @Tokeiburu!
2019-10-21 14:37:32 -04:00
Aleos
24c4c49610
Job Improvement Project - Sura (#4256)
* Fixes #4210.
* kRO Changelog: http://ro.gnjoy.com/news/notice/View.asp?seq=7099
Thanks to @flamefury, Sigma, and @attackjom!
2019-10-18 13:10:17 -04:00
Aleos
fb6dbc306a
Corrected battle config default_fixed_castrate (#4341)
* When default_fixed_castrate is set to 0, it should not replace the value of the databases' fixed value when greater than 0.
Thanks to @SeravySensei!
2019-10-15 13:48:41 -04:00
Aleos
e3fd7a6ff0
Fixed Escape not working with bNoKnockback (#4353)
* Fixes #4344.
* Resolved Escape not letting the player backslide when wearing items that give bNoKnockback bonus.
Thanks to @Badarosk0!
2019-09-20 13:59:04 -04:00
Jittapan Pluemsumran
08d160aaac
Added multi-hit critical damage display support (#2982)
* Fixed #1788.
* Double Attack and Fear Breeze can now critically strike.
2019-09-17 14:48:29 +07:00
Aleos
90d603d141
Removed leftover variable (#4275)
* Removed an unused variable.
Thanks to @pigati23!
2019-07-30 15:42:22 -04:00
Aleos
3caf66870f
Corrected pre-renewal Heal formula (#4261)
* Fixes #4258.
* Partial reversions in formulas for pre-renewal to be multiplicative.
Thanks to @Indigo000!
2019-07-25 08:42:48 -04:00
Aleos
4ea1b25483
Corrected Strip duration (#4257)
* Fixes #4214.
* Corrected Strip duration becoming negative which results in the status not expiring.
Thanks to @Stingor!
2019-07-25 07:45:01 -04:00
Aleos
5702dc3c85
Corrected another potential crash with Joint Beat (#4255)
* Follow up to cb2c553.
Thanks to @teededung!
2019-07-22 08:40:49 -04:00
Aleos
6d199ca7d2
Corrected a potential crash with Joint Beat (#4251)
* Follow up to cb2c553.
Thanks to @teededung and @cahya1992!
2019-07-18 12:25:57 -04:00
Aleos
cb2c553f34
Cleaned up Joint Beat behavior (#4123)
* Fixes #4122.
* Added missing rate and duration reduction based on the targets stats.
* Confirmed that double damage only applies to BREAK_NECK.
* Cleaned up skill to remove jb_flag from status_change struct.
Thanks to @mrjnumber1!
2019-07-17 09:28:24 -04:00
Aleos
fc2c6e021d
Corrected Magnum Break delay (#4248)
* Fixes #4191.
* Magnum Break should have an aftercast delay of 2 seconds which can be reduced by Bragi (like all other skills) and no cooldown.
Thanks to @Playtester!
2019-07-16 11:07:14 -04:00
Joam
aae31a19a5 Update Itemdb (JRO item) (#4161)
* The items implementation is based on JRO description instead of IRO description
* Yinyang combo items will be implemented later when more infos will be available
2019-06-25 20:03:33 +02:00
Atemo
f8ea43ebc7
getmapflag MF_RESTRICTED (#4193)
* Corrected the value returned by getmapflag script command for MF_RESTRICTED
2019-06-03 20:45:19 +02:00
Aleos
052a4fd1e4
Corrected Weapon Forging inventory search (#4192)
* Fixes an issue with Weapon Forging not checking for index 0.
Thanks to @Tokeiburu!
2019-06-03 11:49:08 -04:00
Aleos
ce1508a01c
Corrected Enchant Arms status icon (#3661)
* Enchant Arms should display a status icon depending on the element (skill level) being used.
Thanks to @mrjnumber1!
2019-04-19 21:30:03 -04:00
Atemo
04c6303eb9
Implemented (the old) Nightmarish Jitterbug instance (#4061)
* Implemented NPC_REVERBERATION (some parts are from https://github.com/idathena/trunk credit to @exneval)

Credit to @RagnarokNova for some texts correction and for the monster spawn ([source](https://rathena.org/board/topic/104496-nightmareish-jitterbug-episode-143/))
Credit to https://www.divine-pride.net/ for the monsters datas.
2019-04-13 15:12:30 +02:00
Aleos
7c313a776a
Updated Firewall cast check (#3556)
* Firewall should check at cast begin if unit max count has been reached.
* Removed redundancy with the unit max count checks by merging into a single function.
Thanks to @mrjnumber1!
2019-04-04 18:57:17 -04:00
Jittapan Pluemsumran
ac558d7c1e
Initial implementation of pet evolution system + Pet DB conversion to YAML (#3544)
* Implemented official pet evolution system
* Added evolved pets to pet database
* Corrected various pet system mechanics
* Migrated pet database to YAML format and the converter from CSV format

Thanks to @Lemongrass3110 @aleos89 and @Atemo for their suggestions and additional fixes
2019-03-26 22:51:57 +07:00
Aleos
9f4a569ecc
Implemented Magma Eruption Dot Damage (#3929)
* Fixes #3898.
* Implemented Magma Eruption Dot Damage which is the second attack for Magma Eruption.
Thanks to @exneval and @Balferian!
2019-03-25 10:29:21 -04:00
Aleos
972a14e4ed
Corrected Rebellion cast times (#3928)
* Fixes #3858.
* Corrected cast times and duration for several Rebellion skills.
Thanks to @siriousb!
2019-03-23 17:38:13 -04:00
Daegaladh
35611e78e1
Fixed Ice Wall units to match their official behavior (#3935) 2019-02-09 13:51:20 +01:00
Lemongrass3110
8e325e4116 Fixed some more server crashes
Thanks to @functor-x
2019-02-05 00:06:09 +01:00
Aleos
fe12d6f016
Corrected Sling Item bonuses (#3845)
* Fixes #3810.
* Partial revert of eae1161.
* Removed the item database bonuses from Throwing Increase HP/SP Potions and moved them back to source as these items require the caster's Base Level.
* Concentrated White Potion Z should only increase HP regeneration rate (not the interval).
* Vitata 500 should increase SP regeneration rate (not the interval).
Thanks to @Everade!
2019-01-29 17:50:13 -05:00
Aleos
6c86492764
Corrected a few potential crash points (#3874)
* Fixes #3872.
* Added a couple more map data validity checks on block list counting functions.
* QD Shot should no longer remove the read status.
* Dragon Trail should no longer end the Crimson Marker status.
* Some other minor optimizations/cleanups.
* Fixed a va_arg corruption
Thanks to @attackjom, @Lemongrass3110, and @teededung!
2019-01-23 20:27:41 -05:00
Daegaladh
a9f868f85f
Fixed CDP not failing when haven't met the requirements (#3887) 2019-01-23 18:45:44 +01:00
Aleos
b1865b31fe
Corrected skills that give bonuses while sitting (#3876)
* Fixes #3611.
* Corrected Gangster's Paradise not releasing the monster invulnerability state when standing up around multiple Rogue's that know Gangster's Paradise.
* Same fix goes for Taekwon's Peaceful Break and Happy Break.
* Cleaned up some various parts of these functions as well.
Thanks to @Indigo000!
2019-01-23 12:42:23 -05:00
Lemongrass3110
a5fc39e0e3
Fixed a few more leftovers from 64bit tick (#3885)
Fixes #3864

Thanks to @darhylism, @nubspixel, @Daegaladh and @aleos89!
2019-01-22 23:14:50 +00:00
Aleos
7282dd8735
Fixed Reflect Damage not reflecting damage (#3848)
* Fixes #3801.
* Fixed a timer type issue causing Reflect Damage to no properly distribute damage.
* Corrected some final tick leftovers that may cause issues with other skills.
Thanks to @Angelic234 and @rAthenaCN!
2019-01-11 10:15:12 -05:00
Daegaladh
4ec0c0109f
Fixed Full Blast delay on attack and using items (#3838) 2019-01-07 23:22:51 +01:00
Lemongrass3110
46138645f6 Follow up to 01f61cf
Found some leftovers that were still using the wrong tick type and therefore screwing up the variable argument addresses.

Fixes #3807

Thanks to @zeffen
2019-01-02 15:17:17 +01:00
Lemongrass3110
818ff109f3
Initial Release of Equipment Switch (#3548)
Thanks to everyone who contributed to this release in any way, be it donations, information or testing.

Merry Christmas :-)
2018-12-24 14:10:29 +01:00
Lemongrass3110
63bfd61118
Added a missing check to TK_HIGHJUMP (#3776)
Fixes #1159

High Jump/Leap is meant to check the next cell for a wall as well.

Thanks to @Playtester and @aleos89
2018-12-22 00:33:35 +01:00
Lemongrass3110
01f61cfa4f
Added support for 64bit ticks (#3768)
Fixes #3017

Thanks to Hercules for the idea and their implementation of it.

This deprecates Windows XP support. If you want to use it to run your server on it, you have to forcefully enable it now.
Since 64bit ticks do not exist on XP, you might encounter some issues that are already fixed on other OS.
2018-12-21 00:02:19 +01:00
Lemongrass3110
fb81e2d7ad
Fixed autobonus removal (#3767)
Fixes #3739

Thanks to @whupdo for finding the broken removal.

Fixes #3766

Since vector elements will be pushed around in the container when an element is removed,
the original pointer might be invalid at the time the end of the timer has been reached.

A big thank you to @teededung for being persistent and helping me to reproduce the issue.
2018-12-20 08:23:10 +01:00
Lemongrass3110
016d15b79a
Unified infinite tick usage (#3755)
Introducing a new constant INFINITE_TICK
Changed current usages in items, npcs and source to use the new and correct constant.
Replaced some invalid usages of INVALID_TIMER and replaced them with the new constant.
2018-12-18 17:46:56 +01:00
Aleos
570c07d50c
Corrected some Summoner skills (#3719)
* Fixes #3706.
* Resolved Blessing of Shrimp not boosting SP recovery properly.
* Resolved Tasty Shrimp Party not accounting for Fresh Shrimp level learned.
* Resolved Lope not placing the caster at the selected target location.
Thanks to @Everade and @exneval!
2018-12-17 21:51:50 -05:00
Aleos
2d4a594948
Fixed Skill Damage Database parsing (#3747)
* Fixed Skill Damage Database parsing
* Fixes #3732.
* Resolved an issue with constants not being properly parsed for the caster type.
Thanks to @RadianFord, @reunite-ro, and @Lemongrass3110!
2018-12-14 16:05:58 -05:00
Aleos
a0d1087628
Corrected Electric Shocker versus MVP (#3660)
* Fixes #3649.
* Electric Shocker is able to stop MVP as well.
* Status should not stack with itself.
* Status should be cleared by normal means.
Thanks to @admkakaroto!
2018-11-29 17:51:00 -05:00
Aleos
9758a38f07
Updated CN Meteor and Lunatic CB behavior (#3603)
* Implements SU_CN_METEOR2 and SU_LUNATICCARROTBEAT2 skills.
* These skills are used as placeholders for the item requirements for skill bonuses.
Thanks to @Rytech2 and @exneval!
2018-11-29 17:23:09 -05:00
Aleos
c71ef92fb0
Refactored item bonuses to utilize C++ features (#3235)
* Fixes #996 and fixes #3152.
* Refactored MAX_PC_BONUS item bonuses from static arrays to vectors.
* Increased MAX_PC_BONUS to 50.
* Frees up memory from players that may not ever utilize all their static MAX_PC_BONUS item bonuses.
* Expanded bonus ResEff to not be restricted to SC_COMMON* statuses.
* Removed old ERS usages.
* Removed code redundancy and general cleanups.
Thanks to @Angelic234, @Atemo, @Lemongrass3110, and @Everade!
2018-11-28 21:50:43 -05:00
Aleos
eafb1cb7f9
Corrected Absorb Spirit Sphere on self (#3689)
* Fixes #3534.
* Absorb Spirit Sphere should work on self on all map types.
Thanks to @FriggRM!
2018-11-28 13:11:35 -05:00
Aleos
7cc44e55ca
Corrected trap splash count (#3683)
* Fixes #3675.
* Corrected the trap splash count to be a minimum of 1 to prevent divide by 0 attempts.
Thanks to @crazystorm2017!
2018-11-17 08:57:30 -05:00
Aleos
0c6b772dd2
Updated Hammer of God behavior (#3595)
* Fixes #3559.
* Updated the cast range to 6 + skill_lv.
* Added Crimson Marker target checks to determine placement.
* No longer removes Crimson Marker on targets.
* Properly displays client effect.
Thanks to @Rytech2, @admkakaroto, @Tokeiburu and @exneval!
2018-11-16 08:47:37 -05:00