349 Commits

Author SHA1 Message Date
Playtester
78a2babe4d
Monster Losing Target Display (#8479)
- When a monster loses its target, it will now properly display movement to the next cell rather than snapping back to the previous cell
- Looters will no longer spam movement packets to the client when they go for loot
- Added some base implementation for sub-cell coordinates
- Fixes #8232

Co-authored-by: Lemongrass3110
2024-07-06 12:51:58 +02:00
Daegaladh
0a977c1fd7
Fixed vending_over_max behavior to match official (#8469)
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2024-07-05 02:35:41 +02:00
Daegaladh
29a63820fd
Fixed searchstores incorrectly updating uses (#8491) 2024-07-04 22:22:44 +02:00
Lemongrass3110
d2cb6c10e1
Fixed packets 0x440 and 0x8cf (#8486)
Follow up to d445497

Fixes #8478

Thanks to @gmragnarok, @LadyNanuia and @Haydrich
2024-07-04 19:29:00 +02:00
Daegaladh
549fc3f860
Fixed searchstores and added a map parameter (#8456)
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Co-authored-by: Atemo <Atemo@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2024-06-26 20:21:26 +02:00
Lemongrass3110
1ca634df1d
Packet cleanups - const and casts (#8422) 2024-06-20 14:33:47 +02:00
Lemongrass3110
8f9b0b8354
Added configs for instance limitations (#3753)
Fixes #1661

Thanks to @admkakaroto
2024-06-12 23:36:33 +02:00
Lemongrass3110
34eb4be25b
Preparatory cleanup of parties (#8418) 2024-06-12 15:39:24 +02:00
Lemongrass3110
9c9dcc8cab
Preparatory cleanup of guilds (#8417) 2024-06-12 14:47:52 +02:00
Lemongrass3110
aaa9890470
Preparatory cleanup of clans (#8416) 2024-06-12 10:03:44 +02:00
Daegaladh
0d3550e7ea
Fixed clif_move to use the correct movement packets (#8405)
* Removed unused ZC_NOTIFY_MOVE (0x86) packet
---------

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2024-06-11 00:03:43 +02:00
Daegaladh
6ca99e7852
Fixed potentially dangerous map_addflooritem calls and related behaviors (#8360)
*Removed potentially dangerous map_additemfloor calls
*Added weight/inventory checks for marry atcommand
*Fixed overweight message for box items
*Fixed inventory space check for box items to match official requirement (the total number of the items the box will give you *r min 10, plus 1)
*Fixed inventory space message for box items
*Fixed pet egg creation not deleting the pet data when failed to add it to the inventory
*Fixed pet egg creation dropping the egg on the floor when failed to add it to the inventory
*Fixed pet equipment dropping on the floor when failed to retrieve the item
*Added a battle configuration to prevent removing the pet equipment (and disappear into nothingness) when failed to retrieve the item
*Added missing skill_drop_items_full checks on several skills (official behavior makes the items disappear)
---------

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2024-06-10 22:44:19 +02:00
Lemongrass3110
48b4623f3e
Fixed all warnings in MSVS (#8391)
Fixes #2859
Fixes #3570
Fixes #8389
2024-06-04 03:07:16 +02:00
Lemongrass3110
545417ef11 Follow up to 1b9e46b
Fixes #8392

Thanks to @Beginerxx
2024-06-01 15:54:19 +02:00
Daegaladh
1f9a43c9d2
Replaces more constant names with the official ones (#8374)
Co-authored-by: Aleos <aleos89@users.noreply.github.com>
2024-05-31 14:51:59 +02:00
Lemongrass3110
1b9e46b247
Generic cleanup of packets (#8369)
Standardized initial packet length of dynamic packets to sizeof
Standardized normal casts of packet_buffer to reinterpret_cast
Standardized packet length incrementations to static_cast with decltype
Removed unused function clif_setdisguise
Fixed an issue with string length in clif_scriptmenu
Removed struct keywords
Resolved a few warnings
2024-05-31 14:28:40 +02:00
Lemongrass3110
924d1ddad7
Fixed clif_clearchar_skillunit (#8371)
Follow up to cc60c46
2024-05-27 01:00:25 +02:00
Lemongrass3110
79935a75c9
Updated Hercules packets (#8368) 2024-05-26 17:31:23 +02:00
eppc0330
9e2b0b4a4d
New pcblock flag PCBLOCK_EQUIP (#8367) 2024-05-26 15:43:32 +02:00
Daegaladh
05ced985e3
Replaced custom with official message names (#8361) 2024-05-26 13:17:05 +02:00
Atemo
cc60c46e5f
Converted some packets to structs (#8353)
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2024-05-25 22:17:12 +02:00
Playtester
b4ae40d401
Synchronize Damage Feature (#8305)
- Added a new monster stat "ClientAttackMotion" to mob_db.yml which is the time from when a monster attacks until which the damage shows on the client at 1x speed
- Added a new config synchronize_damage; when set to "yes", the client will display the damage of normal monster attacks at the exact time it is applied on the server, removing position lag (fixes #259)

Special thanks to all people who worked together to make this possible.

Co-authored-by: aleos, Lemongrass3110, Atemo
2024-05-25 18:59:22 +02:00
Lemongrass3110
023263df7d Fixed another crash in clif_wis_message
Follow up to 7ddd035 and a44d954

Fixes #8359

Thanks to @gmragnarok
2024-05-25 15:31:30 +02:00
Atemo
361530a1b6
Converted some packets to structs (#8351) 2024-05-21 21:28:01 +02:00
Atemo
d1cf6f4ac7
Converted some packets to structs (#8332) 2024-05-20 21:13:59 +02:00
Lemongrass3110
fe9f617f97
Fixed clif_sendfakenpc (#8330)
Fixes #8321
Fixes #8328

Thanks to @kaninhot004
2024-05-13 11:45:00 +02:00
Lemongrass3110
580511c0bb Fixed a warning
Fixes #8325

Thanks to @Beginerxx
2024-05-13 07:44:36 +02:00
Lemongrass3110
04386a8ebc Follow up to d445497 2024-05-10 00:12:10 +02:00
Jittapan Pluemsumran
d445497870
Converted a bunch of packets to structs (#8295)
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2024-05-09 23:06:32 +02:00
Lemongrass3110
a44d9540fb
Fixed clif_wis_message (#8308)
Fixes #8307

Thanks to @mrpond
2024-05-06 02:04:51 +02:00
Singe Horizontal
fd36fc04b2
Fixes clif_viewequip_ack packet length (#8304) 2024-05-05 15:13:06 +02:00
Lemongrass3110
b48948822a
Replaced NULL with nullptr (#8298) 2024-05-03 19:38:13 +02:00
Lemongrass3110
3ada0c11be
Converted some banking packets to struct (#8297) 2024-05-03 13:35:20 +02:00
Kanin Temsrisuk
90b2b9cbbf
Fix auto spell list on renewal (#8299)
Follow up to 9440869
2024-05-03 10:12:31 +02:00
Daegaladh
7ddd035442
Fixed clif type conversion warnings (#8294)
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2024-05-03 09:26:02 +02:00
Lemongrass3110
827517f8cf
Cleaned up a few TODOs from #7963 (#8254) 2024-05-02 22:44:31 +02:00
Atemo
2ebdd50e08
Fixed warning about favorite item (#8290) 2024-05-02 15:35:00 +02:00
Atemo
5df7de2b15
Added missing sd check for clif_skill_fail (#7963)
Fixes #8239 

Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2024-04-15 22:38:46 +02:00
Lemongrass3110
cb42dceb87
Switched most C headers to C++ (#8225) 2024-04-07 22:14:51 +02:00
Lemongrass3110
8745391ad4
Cleaned up ZC_INVENTORY_TAB (#8217)
Co-authored-by: Atemo <Atemo@users.noreply.github.com>
2024-04-04 08:42:19 +02:00
Lemongrass3110
9440869743
Cleaned up ZC_AUTOSPELLLIST (#8216)
Cleaned up code.
Fixed invalid allocations from the old code.
Changed to struct.
Use correct packet id.
Fixed invalid RENEWAL check instead of PACKETVER.

Thanks to @aleos89
2024-04-02 16:06:56 +02:00
Lemongrass3110
349b04bf28
Cleaned up CZ_PARTY_CONFIG (#8204)
Thanks to @aleos89
2024-04-02 09:53:11 +02:00
Playtester
1a004f0164
Mercenary, Regen and Frenzy Improvements (#8185)
- When a Mercenary gains a bonus, there will now be an animation
- Mercenary bonuses now last for 5 minutes instead of 10 minutes
- Fixed HP/SP recovery values of Mercenaries (and Elementals)
- Mercenaries now recover HP when walking
- Homunculi no longer recover SP when walking
- Mercenary natural recovery interval is 8s for HP and 6s for SP
- Homunculus natural recovery interval is 2s for HP and 4s for SP
- MER_CRASH now only deals 1 hit and can be cast-cancelled
- Frenzy now drains HP every 10 seconds instead of every 15 in pre-renewal
- Fixed SP cost Mercenary Frenzy (100 -> 200 SP)
- Killing monsters exactly 2 times below you base level now still counts as mercenary kill
- Fixes #8184 
- Fixes #7663
2024-03-27 11:48:05 +01:00
Vincent Stumpf
d4ec7eb241
Fix inventory expansion packet versions (#8148)
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2024-02-28 01:03:07 +01:00
Pokye
eb308dcad2
Implemented Dialog Types (#8110)
Fixes #8109

Co-authored-by: Aleos <aleos89@users.noreply.github.com>
Co-authored-by: Lemongrass3110 <lemongrass@kstp.at>
2024-02-26 22:08:52 +01:00
Lemongrass3110
644a22c5bb
Fixed convex mirror (#8084)
When the "NoSave" of SC_BOSSMAPINFO is removed, this could lead to issues after a character logs back in.

Fixes #8083

Thanks to @Gyakushinn
2024-01-05 21:50:59 +01:00
Lemongrass3110
7999ccb215
Refactored login-server clif to structs (#8058)
Communication between the login-server and the client is now done with structs.
Moved the definition of the global reusable packet buffer to socket.hpp
2023-12-29 22:04:42 +01:00
Lemongrass3110
e4ec88c666
Added support for CZ_RESET_SKILL (#8062)
Fixes #7961
Added a dummy implementation to prevent players from disconnecting, until we know what that command should do.

Thanks to @jamesandrewww
2023-12-29 10:40:55 +01:00
Vincent Stumpf
61c2480d89
Add explicit [[fallthrough]] attributes (#8054)
Fixes #7918
2023-12-29 01:08:24 +01:00
Lemongrass3110
b6f17692e9
Updated Hercules packets (#8056) 2023-12-29 00:20:09 +01:00