166 Commits

Author SHA1 Message Date
Lemongrass3110
0aa3c94ed5
Added boss icons for pets (#5674)
Fixes #5622

Thanks to @eppc0330
2021-01-04 16:37:49 +01:00
Lemongrass3110
481fb022bd
Fixed a crash with cashshop errors (#5670)
Fixes #5666

Thanks to @hostragna
2021-01-04 15:00:33 +01:00
Lemongrass3110
077ca15bbd
Converted a few more packets to structs (#5641)
Fixes #5620

Thanks to @nevelis
2020-12-21 00:44:51 +01:00
Joam
4bbd755f2a
Fix Friendlist disappear in 2020-09-02ragexeRE or above (#5583)
Fixes #5582

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2020-11-29 21:09:04 +01:00
Aleos
2d97ece2a2
Implements new guild skills (#5192)
* Fixes #4183.
* Adds 3 new guild skills: GD_CHARGESHOUT_FLAG, GD_CHARGESHOUT_BEATING, and GD_EMERGENCY_MOVE
* Changes 5 minute guild global cooldown to be 3 minute individual cooldowns for GD_RESTORE, GD_REGENERATION, GD_BATTLEORDER, GD_EMERGENCYCALL, and GD_ITEMEMERGENCYCALL.
* Reduces GD_RESTORE fixed cast time from 10 seconds to 1.
2020-11-28 17:16:22 -05:00
Lemongrass3110
f37990414f
Cleanup of MVP mode checking (#5559)
Fixes #5368

Thanks to @mazvi, @attackjom and @aleos89
2020-11-22 02:09:02 +01:00
Lemongrass3110
9e68985f61
Fixed invisible items after VIP expiration (#5521)
Fixes #5083

Thanks to @Everade and @mazvi
2020-11-06 23:19:41 +01:00
Lemongrass3110
d01b718cc0
Initial support for enchantgrade (#5445)
Thanks to @LunarSHINING, @idk-whoami and @attackjom
2020-11-05 22:18:12 +01:00
Vincent Stumpf
d158603424
Fix other character disguises on @refresh (#5366) 2020-11-01 12:58:16 -08:00
Lemongrass3110
ed473d066d
Cleaned up hat effect code (#5462)
Converted from self written container to std::vector.
Converted clif code to struct usage.
2020-10-23 01:07:12 +02:00
Lemongrass3110
20f39922dc
Fixes compilation on 2010-07-30 and older (#5470)
Fixes #5464

Thanks to @KrokusPokus
2020-10-22 12:54:22 +02:00
Aleos
04cfe17b2b
Converted item database to YAML (#4335)
* Combines item_avail, item_buyingstore, item_delay, item_flag, item_nouse, item_stack, and item_trade databases into one.
* General cleanups and optimizations.
* Includes CSV2YAML conversion tool.
* Includes YAML2SQL conversion tool.
* Adjusts dummy_item from being created by malloc and now creates it by make_shared.
* Item combos are now stored as a STL.
Thanks to @Lemongrass3110, @Atemo, and @cydh!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2020-10-21 19:02:11 -04:00
Lemongrass3110
be3aee7f74
Update and cleanup of packet definitions (#5443)
Moved changes from the Hercules file to rAthena's intermediate layer where possible.
Updated to the latest Hercules definitions.
Added missing packed attributes.
2020-10-13 20:02:29 +02:00
Aleos
35702c62c2
Corrects item group announce flag item ID cap (#5371)
* Fixes #5370.
* Corrects the item group announce flag option being limited to uint16 for the item to display in the broadcast.
Thanks to @OriginRO!
2020-09-15 11:08:07 -04:00
Aleos
229f086b31
Fixes a potential crash with the mail system (#5345)
* Fixes a potential crash with the mail system
* Fixes #5298.
* Resolves a potential crash with the mail system if someone is modifying packets.
* Adds an extra item verification check.
Thanks to @blipblopblip!
2020-08-21 16:59:34 -04:00
Aleos
5c5c6839a0
Fixes item production with high item IDs (#5315)
* Fixes #5312.
* Fixes general item production skills not consuming catalyst items with high IDs.
* Adjusts item searching functions to use t_itemid instead of uint32.
* Adjusts script command makeitem2 to use t_itemid isntead of uint32.
* Fixes output and lookups for atcommands idsearch, autolootitem, iteminfo, whodrops, makeegg, and itemlist.
* Fixes signed vs unsigned checks.
* Fixes MVP logging.
* Fixes item drop ratio storage.
* Fixes CSV2YAML conversion checks.
Thanks to @idk-whoami and @Lemongrass3110!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2020-08-11 10:39:37 -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
36195d157d
Job Improvement Project - Warlock (#4897)
* Fixes #4706.
* kRO Changelog: http://ro.gnjoy.com/news/update/View.asp?seq=239&curpage=1
Thanks to @LordWhiplash,  @Badarosk0, Sigma, @Balferian, @tumemmac, @teededung, @attackjom, @Felleonel and @mrjnumber1!
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2020-08-08 12:23:29 -04:00
Lemongrass3110
2d9ef842e4
Added additional idle options (#5284)
Previously no NPC interaction was taken into account.
This will be fixed and enabled by default now.
2020-08-08 12:36:28 +02:00
Vincent Stumpf
3776bfbaa3
Support itemids up to ~2 billion (#5141)
Co-authored-by: aleos89 <aleos89@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2020-08-08 12:06:07 +02:00
Aleos
28b1d1142c
Fixes RODEX retrieve all button (#5238)
* Fixes #5061.
* Resolves the client crashing when attempting to retrieve all attachments from mail.
* Mail should not be marked as read after retrieving the attachments from them.
* Converts packets to new struct format.
Thanks to @admkakaroto and @attackjom!
2020-08-04 13:27:45 -04:00
Aleos
01afe464bb
Fixes attack cursor not showing up in duels (#5259)
* Fixes #5256.
* Fixes the attack cursor not being displayed when players are in a duel.
Thanks to @roSBK!
2020-07-31 14:47:46 -04:00
Aleos
9991b09837
Updates behavior of statuses that reduce damage (#3129)
* Fixes #2671.
* Restructured battle_calc_damage to utilize battle_status_block_damage for statuses that block damage.
* Renewal Safety Wall has a hit count tracker, same as pre-renewal.
* Updated renewal Safety Wall HP formula.
* Safety Wall will now check for Land Protector before attempting to consume a Blue Gemstone.
* Moves Kyrie and other similar type status changes that may or may not block damage to the top of the list of priority.
* Adds a short delay to Parrying for the next attack when damage is successfully blocked.
* Fixes Millennium Shields remaining shields getting destroyed when damage was over 1000.
* Fixes Millennium Shields disappearing on map change.
Thanks to @Paoly28 and @mrjnumber1, @cydh, @ecdarreola, @InusualZ, and @Badarosk0!
2020-07-31 08:34:04 -04:00
Aleos
1c6270f96a
Removes waitingroom check for Maya Purple hackfix (#5269)
* Fixes #3102 and fixes #3645.
* Removes the waitingroom check for the Maya Purple card hackfix.
Thanks to @sader1992 and @Badarosk0!
2020-07-31 07:54:31 -04:00
Cydh Ramdh
1658f273de
Adjust EXP storage to uint64 (#4377)
* Updates EXP table to 200/70
* Always store exp as uint64 no matter the client date.
* Adjusts guild exp to uint64.
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2020-07-28 16:43:46 -04:00
Daegaladh
2e88b27b9b
Fixed secure timeout triggering npc_scriptcont debug messages (#5239) 2020-07-28 19:40:04 +02:00
Atemo
5ba29be2a3
Added support for race/size/element/min level/max level quest objectives (#5191)
* Added support for race/size/element/min level/max level quest objectives
* Enabled Butler for the Richards hunting quests (ep16.1) 

Co-authored-by: Aleos <aleos89@users.noreply.github.com>

Thanks to @attackjom, @Balferian !
Took some parts from b67c688e79 (diff-f3653b71c45029581a98314726e4d8f5) thanks to @exneval !
2020-07-20 18:59:50 +02:00
Lemongrass3110
f9974170c9
Fixed a few possible crashes (#5202)
Fixes #5196

Thanks to @ecdarreola
2020-07-13 12:07:46 +02:00
Aleos
ff38cf70d2
Fixes party name display (#5182)
* Fixes #5179.
* Fixes players who are not in parties sending out invalid data and possibly crashing the server.
2020-07-04 13:54:14 -04:00
Aleos
b13e4f0fbc
Adds support for object groups and titles (#5171)
* Fixes #4529.
* Adds support for applying groups and titles to non-player objects.
* Expands script command setunitdata and getunitdata to support group ID.
* Adds script commands setunittitle and getunittitle.
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2020-07-03 13:25:17 -04:00
Lemongrass3110
02c5b8c8d8
Added and fixed some pet features (#5040)
Fixes #5019

Thanks to @alisonrag
2020-07-03 13:52:15 +02:00
Jittapan Pluemsumran
d38d2b6b71
Guild emblem implementation for late 2019 clients or later (#5144)
Co-authored-by: valhein <35770095+attackjom@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2020-06-30 15:57:03 +07:00
Aleos
cef956d352
Soul Reaper souls now persist relog (#5142)
* Fixes #5032.
* Soul Reaper souls will now persist relogs.
* Removed the soul_timer as the timer data is stored to the status change.
Thanks to @laziem and @Tokeiburu!
2020-06-29 13:49:01 -04:00
Atemo
0f9dde4e33
OnTouch support when npc is walking (#5134)
* Added support to trigger 'OnTouch'/'OnTouch_' npc label when a npc is moving through npcwalkto script command.
* Fixed #502

Thanks to @aleos89, @wbgneto !
2020-06-26 15:59:39 +02:00
Atemo
940c22a6ee
Fixed accessory-card insertion (#5145)
* The cards with specific 'compound on accessory side' can now only be inserted on accessory equipment using the same side.
* Fixed #4977

Thanks to @attackjom
2020-06-25 19:33:38 +02:00
aleos
4c1955664f Fixes a compile warning
* Follow up to 5ef29be.
* Casts the size of the guild storage log to int16.
2020-06-24 20:40:34 -04:00
Lemongrass3110
5ef29be68e
Fixed an issue with guild storage log (#5138)
Fixes #5115

Thanks to @Angelic234 and all others
2020-06-24 22:36:55 +02:00
Lemongrass3110
27cef7bf86
Fixed lucky roulette updating (#5139)
Fixes #5128

Thanks to @Balferian
2020-06-24 08:57:36 +02:00
Aleos
3804d7f603
Adds support for instance destruction button (#5073)
* Adds support for instance destruction button
* Adds an extra parameter in the instance database to toggle if an instance is destroy-able or not.
* Adds support for being notified about character and Clan instances on login.
* Fixes an issue with the instance window displaying wrong instance information on an instance map when multiples instances were running for the character.
Co-authored-by: atemo <capucrath@gmail.com>
2020-06-17 14:52:22 -04:00
Lemongrass3110
d929a87d9d Small signedness cleanup 2020-06-15 13:44:13 +02:00
Lemongrass3110
60a2f2fc14
Fixed sending of storages full of equip (#5102)
Fixes #5084

Thanks to @laziem, @Hope8888 and @qwerty7vp
2020-06-15 13:40:09 +02:00
Lemongrass3110
db1277e76b
Fixed some invalid packet version checks (#5072)
Fixes #5069

Thanks to @sader1992
2020-06-09 22:41:54 +02:00
Lemongrass3110
79feae3629 Fixed a problem with kafra points in the cashshop
Fixes #5057

Thanks to @mazvi and @Stingor
2020-06-09 16:24:46 +02:00
Lemongrass3110
d87ac21986
Added support for skill scale display (#5041)
Fixes #4530

Thanks to @Balferian
2020-06-04 19:53:19 +02:00
Lemongrass3110
afaee2f01d Fixed some compiler warnings
Follow up to 45cd580

Thanks to @aleos89
2020-06-03 23:28:50 +02:00
Lemongrass3110
e2185b8c7d Fixed an issue with storages
Thanks to @Daegaladh
2020-06-03 23:10:59 +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
SeravySensei
cd0937c468
Fix missing pet egg checks (#5029)
Fixes #5024
2020-05-31 16:11:01 +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