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

207 commits

Author SHA1 Message Date
e4342d04b8 Fix size of the ChatMessage IPC 2025-07-14 20:54:21 -04:00
099dfbd134 Remove most of the hardcoded effect durations and params 2025-07-14 20:26:13 -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
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
The Dax
9a60faa15d Hook up an equipment sales NPC for testing non-stackable items 2025-07-14 17:27:45 -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
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
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
67d01513b1 Begin figuring out various content finder thingies 2025-07-12 20:53:59 -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
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
f7c73a14a6 Various fixes to make serving patches work
Only tested against sqexPatch.dll so far, but this helps retail in
general. More correct-looking headers are sent, logging is increased
(to help debugging) and other fixes for boot patch verification.
2025-07-11 21:39:15 -04:00
thedax
0cf359e8c9
Update the Unending Journey's cutscene replay scene flags one more time (#108)
-This is what retail sends, and it has smooth fade ins and outs on upon start and end of cutscenes.
2025-07-05 21:42:06 -04:00
The Dax
c00b398dbb The House Fortemps guard finally spawns! 2025-07-05 19:06:34 -04:00
The Dax
cbc2c7953f Add the Port Official in Tuliyollal, interestingly their counterpart in Old Sharlayan does not spawn currently... 2025-07-05 19:06:34 -04:00
The Dax
e25fa9354b Add even more ferry skippers that have either direct or indirect connections to Limsa/La Noscea 2025-07-05 19:06:34 -04:00
The Dax
95ec3628b8 Enable a number of ferry skippers around La Noscean areas 2025-07-05 19:06:34 -04:00
thedax
17967c9d6a
Attempt to improve the accuracy of a couple things (#105)
Attempt to improve the accuracy of:
-ItemOperation: Now sends back ItemAcknowledgeAck as well as InventorySlotDiscard and *Fin when discarding items
-ClientTrigger::EventRelatedUnk -> send back commonly observed ActorControlSelf responses
2025-07-05 19:05:43 -04:00
The Dax
c292033960 Return control to the menu after the cutscene finishes 2025-07-05 17:14:08 -04:00
The Dax
ebd9fcc842 Fix a couple issues with the Unending Journey:
-Fade to black smoothly so the transition into a cutscene isn't so jarring
-Don't softlock when exiting the menu without playing anything
2025-07-05 17:14:08 -04:00
f056b3f978 Finish implementing the Unending Journey (mostly)
The cutscenes actually play now, which is super swell! There's a
few missing bits and bobs, but we can consider this event mostly
finished now.
2025-07-04 16:29:42 -04:00
cd55653077 Implement necessary packets for the Unending Journey event
This doesn't make cutscenes play *yet*, but stops the client from
getting stuck waiting for a cutscene to begin. Now the event script
continues, and ends the event.
2025-07-04 16:18:39 -04:00
de2d32266d When running !completeallquests, show a success message 2025-07-04 16:11:11 -04:00
24edee6548 Fix various size issues with lobby IPC packets
Some of these were the wrong size, and were affecting both the
server and packet analyzer alike. This should now more accurately
reflect retail.
2025-07-04 15:01:27 -04:00
thedax
ca90d8b787
Move the login message from Lua scripts into the config file. (#100)
-Provide a new API function: getLoginMessage which will fetch it from the config file.
2025-07-04 11:42:52 -04:00
37f0e07116 Add missing bin files for scrambler 2025-07-04 11:23:19 -04:00
thedax
8894e25da4
Update all but one opcode for 7.25h3 (#99) 2025-07-03 12:57:51 -04:00
thedax
a83d455e86
Hook up a couple more generic gatekeepers (#95) 2025-07-02 08:18:10 -04:00
thedax
9bed7595cc
Implement items costing money now (#94)
-Includes an extra check for trying to bypass the client-side
-Update dependencies
-Include a message that selling isn't supported yet
-Display a message indicating an item was bought
2025-07-01 21:21:47 -04:00
927c093915 Send your completed quests list
We aren't going to be adding quests ever or anytime soon, so all you
can do right now is force every quest to unlock with the aptly named
!completeallquests.
2025-07-01 19:51:33 -04:00
The Dax
97682086f0 Re-enable //gm collect
-It requires a player to be targeted ingame, no target or any actor that isn't a player
will result in a generic "GM Command Failed" message
2025-07-01 13:06:49 -04:00
The Dax
4b52ae6d0a InspectPlayer: make various variables local 2025-07-01 13:06:49 -04:00
The Dax
4841a5e469 InspectPlayer: add quantity amount to the print statements for the inventory 2025-07-01 13:06:49 -04:00
The Dax
3b6fcb7ba1 Extend the Lua API:
-Implement GM command collect (subtracts gil from player), but the ingame command's params are unknown, Lua only
-Implement GM command inspect, but the IPC opcode for it is different than GMCommand and is thus far unimplemented, Lua only
-The Lua API can now access all of the player's inventory (read-only)
2025-07-01 13:06:49 -04:00
3695ee4352 Begin implementing gil shops, add free item to inventory
Tested against the Florist in New Gridania, although we don't
deduct the item price from you and such.
2025-06-30 21:38:04 -04:00
The Dax
7294da465c Document the missing exit-to-inn warps for Tuliyollal and Old Sharlayan 2025-06-30 17:08:36 -04:00
The Dax
a5522bb637 Document the missing big aetheryte event ids, enable them, and note they don't work for now
-Also update the newest thoughts on why the limsa <-> costa ferrys don't work
2025-06-30 17:08:36 -04:00
thedax
5a580149b4
Document some opcodes related to shops and implement a generic gil shopkeeper script (#85)
Document some opcodes related to shops and implement a generic gil shopkeeper script
* You can now interact with shopkeepers, and if you have enough gil, you can attempt to purchase items
* Upon trying to buy items the event will auto-cancel for now, because we're missing implementations of several opcodes related to inventory management
2025-06-30 15:21:08 -04:00
5b8a61c1ce Add the various sizes of EventScene
This isn't hooked up to the Lua API yet, it's just the
needed opcode bits.
2025-06-28 16:05:36 -04:00
2762407585 Rename EventReturnHandler to EventYieldHandler, make generic
This also makes EventScene generic for use in the future.
2025-06-28 15:57:45 -04:00