70 Commits

Author SHA1 Message Date
Cydh Ramdh
f28d207274
Implementation of Status Changes in YAML (#1685)
* Removes the initialization of Status Changes via hard-code and puts it into YAML form.
* From this database it is much easier to delegate icons, calc flags, opt flags, miscellaneous flags, and several other things for all stats changes.
* Statuses can quickly be reloaded via atcommand reloadstatus.
Thanks to @cydh, @Atemo, @Lemongrass3110, and the others who helped!
Signed-off-by: Cydh Ramdh <cydh@pservero.com>
Co-authored-by: atemo <capucrath@gmail.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2022-03-10 13:11:59 -05:00
Lemongrass3110
6ec51e8bf3
Added feature configs for barter shops (#6549)
Thanks to JohnnyPlayy
2022-01-24 09:03:03 +01:00
Lemongrass3110
09dcb2c61f
Fixed pet capture rate (#6439)
Added some missing checks for distance to the target monster and if the target monster is hiding.

Fixes #6395

Thanks to @Everade and @mrjnumber1

Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2022-01-04 22:52:22 +01:00
Lemongrass3110
7556453dfc
Merge of Rytech's 4CrAM (#6414)
Merged Rytech2/4CrAM-Open@978d4fc406

Original author is @Rytech2 and all credits belong to him.
Cleanups by @Lemongrass3110, @aleos89 and @Atemo.

Co-authored-by: Rytech2 <rytech16@gmail.com>
Co-authored-by: aleos <aleos89@users.noreply.github.com>
Co-authored-by: Atemo <capucrath@gmail.com>
2021-12-30 20:25:19 +01:00
Aleos
6bc0dff20d
Converts Job databases to YAML (#4759)
* Converts the job_db, job_db2, job_basehpsp_db, job_exp, and job_param_db to YAML.
* Optimizes several places utilizing C++ features.
* Removes 3rd class job data from pre-renewal.
* Adds minimal support for 4th jobs.
* Job level bonus stats now supports multiple bonuses per level as well as an integer for the specific stat instead of only being limited to 1.
* Includes CSV2YAML converter.
Thanks to @Lemongrass3110, @Atemo, @Balferian, @attackjom, @dimasshotta!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2021-11-17 16:13:07 -05:00
Aleos
9114083d7e
Adds drop effect to dropped random option items (#6278)
* Adds the official pillar effect on dropped items depending on how many random options were applied to them.
Thanks to @limitro, @Atemo, and @Lemongrass3110!
Co-authored-by: Atemo <Atemo@users.noreply.github.com>
2021-10-05 14:48:38 -04:00
SeravySensei
72aafdadea
Fixed drop rate bonuses (#3986)
Fixes #2613

Co-authored-by: aleos <aleos89@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
Co-authored-by: Atemo <Atemo@users.noreply.github.com>
2021-08-27 23:00:41 +02:00
Atemo
4d2c5b02d3
Converted Elemental Attribute Damage Adjustment Tables to YAML (#6053)
* Converted Elemental Attribute Damage Adjustment Tables to YAML
* Includes CSV2YAML converter

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2021-08-11 18:39:18 +02:00
Aleos
3d4021bfc6
Job Improvement Bundle patch (#5517)
* Updates various skills following kRO's job improvement patch.
* Change log: https://ro.gnjoy.com/news/notice/View.asp?BBSMode=10001&seq=7275&curpage=2
* Does not include changes to homunculus HP/SP level up bonuses as more information is required.
Thanks to @ecdarreola, @attackjom, @Haydrich, @rye305, @eppc0330, @Badarosk0, and @Lemongrass3110!
2021-05-07 08:23:42 -04:00
Lemongrass3110
1a8cfbffc0
Initial release of the refine UI (#2494)
Overhaul of the refine database
Added blacksmith blessing to existing NPCs.

Thanks to @Atemo, @aleos89, @cydh and everyone who tested it.

Co-authored-by: Atemo <capucrath@gmail.com>
2021-04-11 00:05:15 +02:00
Aleos
2b94f0aeff
Implements autoloot support for Mercenary (#5594)
* Fixed #5570.
* Adds the ability for mercenary to trigger autoloot.
* Adds idle sharing and idle option configs for granular settings.
Thanks to @saya9200's suggestion and @Lemongrass3110!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2021-02-27 17:14:10 -05:00
Lemongrass3110
20baa2fdba
Added a config for respawn time variance (#5715)
By default the respawn time variance only applies to boss monsters on official servers.

Fixes #5714

Thanks to @Playtester
2021-01-25 23:10:58 +01:00
Lemongrass3110
f350de1e31
Changed the way gender restrictions work (#5460)
Removed the ignore_items_gender config.
Fixed some existing items.
Moved some restrictions that were removed on official servers into the import folder.

Fixes #5458

Thanks to @HenryAlvarez12, @aleos89, @Atemo and @Daegaladh
2021-01-23 18:45:35 +01:00
Patotron
12cfe31bf1
Fixed max Doram ASPD (#5522)
Co-authored-by: Toni Pozo <porutoni@gmail.com>
2020-11-04 12:02:29 +01:00
Aleos
3060865aa0
Adjusts map_foreachindir to include caster's cell (#5314)
* Fixes #3502.
* Adjusts map_foreachindir to include the caster's cell when calculating area of effect.
* Adds battle config 'skill_eightpath_same_cell' to allow toggling of the effect.
Thanks to @mrjnumber1!
2020-08-13 11:16:55 -04:00
Lemongrass3110
84223d5e22
Fixed logging out on newer clients (#5302)
Fixes #5215

Thanks to @4144, @mazvi and @attackjom
2020-08-09 21:19:46 +02:00
Aleos
2c04392961
Adjusts homunculi hunger delay rate when starving (#5281)
* Fixes #2242.
* When a homunculus is starving (hunger between 0-10) their hunger delay drops from 60 seconds to 20 seconds.
* Added battle configs to allow easy adjustment.
Thanks to @mmalka and @mrjnumber1!
2020-08-03 16:38:25 -04:00
Daegaladh
a3125e6e95
Added a config for triggering OnPCLogout events on autotrade (#5159) 2020-07-01 13:59:39 +02:00
Atemo
96bf3904db
Added the race RC_PLAYER_DORAM (#5132)
* Added RC_PLAYER_DORAM to differentiate summoner race from monster race RC_BRUTE (similiarly to RC_Player_Human and RC_DemiHuman)
* Replaced PC_Player by RC_Player_Human and added a deprecation notice
2020-06-25 20:06:04 +02:00
Aleos
04ba3e3d96
Adds a config for slave teleporting to master (#5095)
* Fixes #5003.
* Adds a battle config to toggle the ability for slaves to teleport back to their master when they are too far away.
* Officially, players can drag slaves away from the master without them teleporting back.
* Determined that slaves don't become completely stuck but rather immobile until a target comes in range again.
Thanks to @poporing and @Daegaladh!
2020-06-16 20:58:12 -04:00
Aleos
5647c875d6
Adds support for sharing battle-type Achievements (#5021)
* Fixes #5018.
* Adds support for sharing battle-type Achievements when killing monsters.
* The behavior mimics Quest objectives.
* Adds a battle_config to easily toggle (off by default until confirmed on kRO).
Thanks to @MccloudBR's suggestion!
2020-06-12 13:02:50 -04:00
Lemongrass3110
d87ac21986
Added support for skill scale display (#5041)
Fixes #4530

Thanks to @Balferian
2020-06-04 19:53:19 +02:00
Lemongrass3110
45cd5808b7
Initial support for newer packet versions (#4944)
Basic support for packets up to April 2020
Changing the default packet version to 2020-04-01

Thanks to everyone involved!
2020-06-03 16:35:10 +02:00
Aleos
14c388b401
Resolves some Battleground issues (#4725)
* Queue data will now be kept available until a Battleground event is over.
* Players can now join an active Battleground.
* Adds a more detailed queue state tracking feature.
* When a battleground is being prepared and not enough players click accept, stop the battleground from beginning.
* When a player logs off or leaves a queue they will now properly be removed from the queue.
* Cleans up MinPlayers and MaxPlayers parsing to not accept values less than 1.
* Resolves players not being able to join an active battleground (up to MaxPlayers) unless someone quit early.
* Adds a team size priority check to avoid adding more players to a larger team.
* Fixes battlechat messages.
* Adds a battle_config to disable the ability for players on maps with MF_NOWARP to join Battlegrounds.
* Adds a new optional ActiveEvent label to the database.
* Fixes a typo in Flavius 2 during unbooking process.
* Cleans up the behavior of the Battle Therapists to use areapercentheal and areawarp.
* Fixes KVM score not properly set on the first Battleground.
* Fixes the global timer checks not ending the main timers on Flavius and Tierra Gorge.
* Added an extra bg_reserve on global timer checks in case someone tries to join the battleground just before it's ended.
* Fixed OnReadyCheck being called on global timer checks, causing the battlegrounds to start when there were no players on the map.
* Fixed a bug on Tierra Gorge where multiple barricade walls could be stacked.
* Fixes Croix also receiving 9 badges when Guillaume wins.
* Adjusts StartDelay default to 0.
* Add a database setting to give the ability to enable or disable joining as an individual, party, or guild.
* Add a database setting to restrict jobs from entering Battlegrounds.
* Better documents script commands bg_reserve and bg_unbook.
* Other fixes and cleanups.
Thanks to @roSBK and @Daegaladh, @admkakaroto, @Artuvazro, and @Atemo!
Co-authored-by: Daegaladh <Daegaladh@users.noreply.github.com>
Co-authored-by: Atemo <Atemo@users.noreply.github.com>
2020-05-25 12:39:36 -04:00
Atemo
b8ee97b6a1
Added rental_item_novalue config (#3749)
* Added a config to always sell the rental items to NPC for 0

Thanks to @Lemongrass3110, @cydh, @aleos89, @Daegaladh for the review !
2020-05-21 21:13:45 +02:00
Daegaladh
ca56c060cf
Added independent idle time and settings for homunculus share (#4761)
* Follow up to 921b3e2c3e9eae36cbf2ca35bcede6e0d73ba074
2020-04-27 20:21:22 +02:00
victorgawk
044acebd75
Added config option for legacy NPC EMOTION behavior (#4728)
Co-authored-by: Victor Ferreira <victor.ferreira@esig.com.br>
2020-04-02 11:04:07 +02:00
Aleos
652d77eb02
Job Improvement Project - Genetic (#3284)
* Fixes #2571.
* Updates Homunculus skills from kRO maintenance: http://ro.gnjoy.com/news/update/View.asp?seq=218&curpage=1
* Updates Genetic skills from kRO maintenance: http://ro.gnjoy.com/news/update/View.asp?seq=246&curpage=1
Thanks to @Tokeiburu, @Badarosk0, @Balferian, and @Haydrich!
2020-03-25 13:26:26 -04:00
San
58e82dc149
Adds config for Land Protector Behavior (#4675)
Adds config for Land Protector Behavior
* This battle config option adds the ability to change Land Protector to the old behavior.
* Related to #1404 and #4412.
* Thanks to @Cydh for the initial release. Thanks to @Tydus1 for the pull request!
2020-03-11 18:29:58 -04:00
Aleos
2931c00bd4
Implemented the Battleground Queue System (#3995)
* Fixes #1310.
* Added a battle config which allows toggling of the Battleground Queue client feature and also toggles between the modes of scripts.
* Added script commands bg_reserve, bg_unbook, and bg_desert.
* Removed old custom Battleground scripts.
Thanks to @Lemongrass3110, @Locien, @secretdataz, @InusualZ, @Normynator, @Atemo, @iubantot, @admkakaroto, and @noobzter003!
2020-02-12 08:26:59 -05:00
Aleos
dca3797d44
Converted the skill database to YAML (#4531)
* Combines skill_cast_db, skill_castnodex_db, skill_copyable_db, skill_nonearnpc_db, skill_require_db, and skill_unit_db into skill_db.
* Introduces a cached YAML class for quicker lookups.
* General cleanups and optimizations.
* Includes CSV2YAML conversion tool.
Thanks to @Lemongrass3110!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2020-01-31 14:14:08 -05:00
gamingmagic
e2a1bb3f0c Fixed sitting issue for devoted players (#4538)
Fixes #1927

If aplayer is under devotion and gets attacked he will remain sitting server side, while standing up client side. This will result in the player not being able to move anymore, until he sat down/stood up again.

Since this is the real behavior on AEGIS we added a configuration for the fix, which will be enabled by default, since we think this is broken behavior. You can always turn it off in case you want to mimic official behavior.

Additionally fixed the devoting player as well:
The devoting player should also stand up when the devoted player is hit.
If the player is missed or he lucky dodges and no damage is dealt, no damage packet should be sent to the devoter.
Additionally fixed that the devoter did not use the waving damage animation, because the amotion and dmotion values were not sent.

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2020-01-25 13:57:28 +01:00
Daegaladh
921b3e2c3e
Added conf option for homunculus idle no share (#4548)
* Added conf option to make characters stop receiving exp/drop from homunculi when they are idle
2020-01-22 18:55:59 +01:00
Daegaladh
78a02330b2
Follow up to e27aa8b2d82620aa461291b293e00afb7c79e0cb (#4509)
* Additional configs for boss idle AI
2020-01-11 15:14:33 +01:00
Daegaladh
e27aa8b2d8
Additional configs for mobs idle AI (#4503)
* Added conf options to enable/disable monsters using idle skills and move when there's no players nearby.

Thanks to @aleos89
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2020-01-03 00:20:50 +01:00
Jittapan Pluemsumran
3a7b832906
Threshold for blacksmith refine fame points (#4409)
* Made refine threshold for giving Blacksmith ranking point configurable. Fixes #4408
2019-12-21 16:45:00 +07:00
Kisuka
3c78691d2d Removed jAthena 1082 legacy code regarding castle defense rate. (#4400)
Fixes #4399
2019-10-09 17:49:04 +02:00
Aleos
aa63c855c0
Corrected pet bonuses not applying (#4292)
* Fixes #4283.
* Corrected pet bonuses not applying on intimacy changes.
* Removed pet_equip_min_friendly battle config as bonuses are determined on intimacy in the bonus script.
Thanks to @teededung!
2019-08-14 08:56:48 -04:00
Aleos
2ca417b61f
Fixed STR affecting mob damage in pre-renewal (#4228)
* Follow up to fe197bf.
* STR should not affect monster's damage.
* Split battle config between pre-renewal and renewal.
Thanks to @Playtester!
2019-07-16 12:17:11 -04:00
Aleos
06020502b8
Adjusted pet walk speed (#4083)
* Added battle config pet_walk_speed.
* Resolves some pets walking too slow.
2019-04-11 18:49:07 -04:00
Sader Fawall
c2abd6d1fe Implementing atcommand_disable_npc config (#4043) 2019-03-29 08:32:07 +01: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
ed83999de4
Corrected Vellum and Vanish item bonuses (#4030)
* Fixes #4016.
* Cleaned up the way Vellum damage and Vanish damage are calculated.
* Implemented bonus3 bSPVanishRate/bHPVanishRate.
* Updated Mental Destroyer item bonus.
* Cleaned up and added documentation.
Thanks to @Balferian!
2019-03-23 15:02:49 -04:00
Aleos
c5a5c54518
Converted remaining C comments (#3927)
* Converted remaining documentation that references .c or .h files.
2019-02-09 15:08:45 -05: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
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
9183a54a0d
Fixed homunculus auto feed for broken luas (#3758)
Fixes #3318

Thanks to @yoonjunho72, @AzarthMZintos and @admkakaroto
2018-12-17 13:53:37 +01:00
Aleos
e8c116246e
Implemented official buy/sell amount restrictions (#3673)
* Fixes #3666.
* When purchasing items from a NPC shop, the minimum purchase price is always 1 Zeny.
* When selling items to a NPC shop, the minimum sell price is always 0 Zeny.
Thanks to @Balferian and @dastgirp!
2018-11-08 16:44:46 -05:00
Lemongrass3110
a47e6cb427
Added multi level up level caps (#3646) 2018-11-01 23:47:45 +01:00
Lemongrass3110
c0793a8072
Adding LGTM to CI tools (#3636)
Thanks to @aleos89 for his help.
2018-10-29 21:25:36 +01:00