1
Fork 0
mirror of https://github.com/redstrate/Kawari.git synced 2025-07-19 11:17:46 +00:00
Commit graph

789 commits

Author SHA1 Message Date
166e8024e0 Fill out more fields in PrepareZoning IPC
This fixes the loading screen between zones (as it now displays
text.) How we do things isn't very accurate still.
2025-07-14 21:35:32 -04:00
e4342d04b8 Fix size of the ChatMessage IPC 2025-07-14 20:54:21 -04:00
58af029ae5 Fix tests compilation 2025-07-14 20:52:47 -04:00
d70b559037 Fix Recast build 2025-07-14 20:47:46 -04:00
ac785365d3 Begin implementing pathfinding, all NPCs now converge to you
This is incredibly simple behavior, and navimesh generation is
currently manually done. But it's progress!

See #38
2025-07-14 20:31:02 -04:00
099dfbd134 Remove most of the hardcoded effect durations and params 2025-07-14 20:26:13 -04:00
f54fc126b3 Add support for manually removing effects 2025-07-14 19:58:12 -04:00
3d81d1ed01 Implement enough status effect handling to make Sprint work
This includes making Sprint degrade into Jog, and now status
effects start to be scripted.
2025-07-14 19:52:50 -04:00
404681f395 Begin laying infrastructure for status effect scripting 2025-07-14 19:19:21 -04:00
e7bda4c5e4 unk3 in GainEffect/LostEffect is the source actor 2025-07-14 19:01:17 -04:00
1c2b757359 Begin adding support for EffectResult IPC opcode
And other stuff I saw in my sprint retail capture.
2025-07-14 19:00:26 -04:00
3f55df789e Add Cooldown ActorControl category 2025-07-14 18:28:37 -04:00
dbfe3d542d Rename ChatMessage's player_id to actor_id
This is a more accurate name for this field.
2025-07-14 18:19:34 -04:00
0399930ec7 Add UpdateRestedExp, LoseEffect and GainEffect ACs 2025-07-14 18:17:57 -04:00
The Dax
4f5f204507 Redundancy nit. 2025-07-14 17:27:45 -04:00
The Dax
9a60faa15d Hook up an equipment sales NPC for testing non-stackable items 2025-07-14 17:27:45 -04:00
The Dax
421a24aa6f When adding items to the inventory, prefer existing stacks first before selecting empty slots.
-This works for adding items to the inventory in any capacity, including debug and GM commands!
2025-07-14 17:27:45 -04:00
thedax
a5120bb9d6
Fix client-side crashes when discarding items. (#117)
-Various things were wrong in InventoryTransaction, but they should now be fixed.
2025-07-13 20:11:54 -04:00
bfca1605d5 Document !replay debug command 2025-07-13 20:11:05 -04:00
a4c8466088 Move packet replay to the global server state
This makes it way more stable, and can actually work now.
2025-07-13 20:09:50 -04:00
06debd5eb0 Begin implementing packet replay
It doesn't work fantastic yet, I need to move it to the global
server state to truly work as intended.
2025-07-13 18:01:59 -04:00
The Dax
ba1a92c9bc Rename GilShopRelatedUnk to UpdateInventorySlot
-This now matches Karashiiro/FFXIVOpcodes.
2025-07-13 15:22:44 -04:00
The Dax
eb9d08866e Implement better support for buying from gil shops
-You can now purchase multiple things in a row
-It shows the proper log messages
-For the moment all items go to the very first inventory slot, and overwrite each other
2025-07-13 15:22:44 -04:00
efa07bb87f Add new actor control categories 2025-07-13 13:49:27 -04:00
c3291b1e47 Add support for the LevequestCompleteList IPC opcode
We also tell the client it completed every levequest in the game,
to showcase this works.
2025-07-13 11:59:56 -04:00
2cc562de38 Add support for the QuestActiveList IPC opcode 2025-07-13 11:24:14 -04:00
8be1fefa53 Add support for sending the title list, when requested
This doesn't allow you to set them yet, just show them in the menu.
2025-07-13 10:15:40 -04:00
c339c89c41 Fix various issues with the Lobby packets
Everything should be more consistent now, in regards to "tickets"
and actor ids.
2025-07-13 09:52:00 -04:00
822f693f8c Add XiCharacterInfo IPC opcode
I don't know what this is, I got the name from Sapphire.
2025-07-13 09:10:32 -04:00
49003a4d89 Add FreeCompanyInfo IPC opcode 2025-07-13 09:05:22 -04:00
8083be24c7 Add UpdateSearchInfo IPC opcode 2025-07-13 09:03:02 -04:00
46cf7d4200 Add ActorGauge IPC opcode 2025-07-13 08:58:46 -04:00
c04cfdf5da Add ObjectSpawn IPC opcode
The struct itself is all kinds of wrong as I blindly copied it from
Sapphire, so I wouldn't depend on it just yet.
2025-07-13 08:56:15 -04:00
7cfa20052d Remove appearance updates from ZoneConnection::send_inventory
This isn't needed anymore.
2025-07-13 08:47:53 -04:00
b84462fd6f Send equip item updates again
This was lost in the inventory refactoring because it was only
handled by ZoneConnection::send_inventory, but it needs to happen
elsewhere now.
2025-07-13 08:42:56 -04:00
fe4d0d2344 Inform client about some unimplemented inventory containers
As seen in a retail capture, we should be sending these I guess.
2025-07-13 08:38:28 -04:00
c0daf7b06b Skip sending empty UpdateItems on first login
There's no reason to do this, the client has no pre-existing
inventory state so we're just wasting bytes.
2025-07-13 08:29:45 -04:00
cca0f8c0e5 Add remaining inventory container types
Most of these will remain unimplemented, but we need the enum to
be complete for Packet Analyzer to not trip over unknown ones.
2025-07-13 08:14:35 -04:00
f88d62b80f Remove comment in lobby to investigate other server's KeepAlive
I checked a retail capture, and I think we're doing it correctly
for the chat and zone connection already. They wait until Setup to
send it (so the client is authorized, of course.)
2025-07-13 08:07:25 -04:00
67d01513b1 Begin figuring out various content finder thingies 2025-07-12 20:53:59 -04:00
fac241ce7b Fix the wrong classjob being set when creating a character 2025-07-12 18:56:00 -04:00
c86a5f70a6 Add command, actor control to unlock instanced content 2025-07-12 18:33:52 -04:00
thedax
45ee95318c
Rename inventory-related opcodes to match Karashiiro/FFXIVOpcodes (#112)
-Implement keyboard turning packet as a no-op so it'll stop clogging server logs

-Finish implementing inventory actions
2025-07-12 17:40:22 -04:00
779666a10f Fix off-by-one in ServerChatMessage 2025-07-12 15:01:12 -04:00
f176e4fb8d Fix wrong binrw attribute in ServerChatMessage
This was supposed to be "pad_size_to" not "pad_after"!
2025-07-12 14:55:42 -04:00
3059cda4a4 Add remaining IPC size tests, fix some struct issues 2025-07-12 14:48:21 -04:00
217ed2466c Fix the API for support desk headlines 2025-07-12 10:11:18 -04:00
eb73af03d6 Match retail headers for frontier server 2025-07-12 09:49:05 -04:00
c688e93f7c Stop panicking when walking into unused zones lines
Fixes #87
2025-07-12 09:10:17 -04:00
d58025e415 Use COMPLETED_QUEST_BITMASK_SIZE in QuestCompleteList 2025-07-12 08:36:01 -04:00