1
Fork 0
mirror of https://github.com/redstrate/Kawari.git synced 2025-07-09 15:37:45 +00:00
Commit graph

712 commits

Author SHA1 Message Date
The Dax
9b03e2d7c2 Properly address "warning: method default can be confused for the standard trait method std::default::Default::default" 2025-07-08 21:54:10 -04:00
The Dax
93ddff8ed4 Address "warning: this impl can be derived" 2025-07-08 21:54:10 -04:00
The Dax
c72526a34d Address two of "warning: this expression creates a reference which is immediately dereferenced by the compiler" 2025-07-08 21:54:10 -04:00
thedax
22dc1dbaaa
Refactor lua.rs: (#109)
-The match has been moved into src/ipc/zone/event_scene.rs and slimmed down
-EventScene now provides a function to decide the opcode based on how many params it has
-The tests for EventScene were updated to acommodate the new changes
2025-07-08 17:18:30 -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
f2239378f6 Add ClientChatIpcSegment
This is just a dummy for now, we just need it downstream in Packet
Analzyer.
2025-07-04 16:01:15 -04:00
5acf6580f3 Remove TestActorControl
This was leftover from some other debugging and shouldn't be here.
2025-07-04 15:58:34 -04:00
10d4d957fa Parse unknown actor controls
For use downstream in Packet Analzyer, instead of showing nothing.
2025-07-04 15:55:48 -04:00
thedax
68f6747598
Fix size of InventoryActionAck (#104)
-If it's 16 bytes, there can't be 12 bytes of padding, 4 bytes of u32 and 2 bytes of u16. :)
2025-07-04 19:48:03 +00:00
2f1aee9d09 Fill out more unknowns in lobby IPC packets
Mostly based off of Sapphire, but fixed in the more modern age.
2025-07-04 15:40:10 -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
The Dax
7801398590 Fix a small issue with the !equip command
-It wasn't setting the item's condition, causing the game UI to behave strangely when looking at the item's tooltip
-Added a constant for the maximum item durability
2025-07-04 13:39:48 -04:00
The Dax
85f0a0cd49 Fix doc comments 2025-07-04 13:39:48 -04:00
The Dax
13da396932 Document two more item operations: move (to an empty slot) and exchange (when swapping slots with another item) 2025-07-04 13:39:48 -04:00
The Dax
fde43a560d Move it to a constant, and remove redundant comment 2025-07-04 13:39:48 -04:00
The Dax
5284801554 Inventory: fix the operation type for item discard, it was incorrect 2025-07-04 13:39:48 -04:00
7291863481 Move scrambler module to packet
This is to make WebAssembly builds work again, because the world
module isn't compiled there.
2025-07-04 12:22:49 -04:00
7ccd132129 Unify version and file checking behind one config parameter
And make it affect the patch server as well, if you really want to
use an unsupported version.
2025-07-04 11:56:12 -04:00
70c423e48f Update Physis to fix loading certain LGBs again 2025-07-04 11:49:22 -04:00
The Dax
1c7570c696 Bounds check the string parts vecs.
Fix off by one error

Style nit.
2025-07-04 11:44:35 -04:00
The Dax
b3c954ed83 Fix error string 2025-07-04 11:44:35 -04:00
The Dax
d011f11e54 Lobby server: implement a server-side version check against the version info the client sends.
-TLDR: it checks file length and sha1 hash of the game exe, and all of the version strings.
2025-07-04 11:44:35 -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
The Dax
9532abcaa6 Address "warning: you should consider adding a Default implementation for ScramblerKeyGenerator" 2025-07-04 11:42:08 -04:00
The Dax
4cae9a649a Address two of "warning: casting to the same type is unnecessary (i32 -> i32)" 2025-07-04 11:42:08 -04:00
The Dax
57b90ca3dd Address "warning: this expression borrows a value the compiler would automatically borrow" 2025-07-04 11:42:08 -04:00
The Dax
b3b7b2e57f Address two of "warning: function call inside of expect" 2025-07-04 11:42:08 -04:00
The Dax
72915e11d9 Address two of "warning: redundant pattern matching, consider using is_ok()"
-We should really refactor this part of the code, it's a bunch of copy paste.
2025-07-04 11:42:08 -04:00
The Dax
fe25cc6210 Address three of "warning: casting to the same type is unnecessary (u32 -> u32)" 2025-07-04 11:42:08 -04:00
The Dax
3a9912776f Address "warning: useless use of format!" 2025-07-04 11:42:08 -04:00
The Dax
86c8d58fe3 Address "warning: this expression creates a reference which is immediately dereferenced by the compiler" 2025-07-04 11:42:08 -04:00
The Dax
05f83459c1 Address "warning: deref which would be done by auto-deref" 2025-07-04 11:42:08 -04:00
thedax
2d6c740829
Fix cargo test compilation (#102) 2025-07-04 11:35:06 -04:00
5c8e0f3e62 Change Unk1 ClientTrigger to BeginLoading 2025-07-04 11:33:48 -04:00
c65e413900 Make loading zone LGBs more accurate
The game actually has a list of LGBs for the territory/zone in a
LVB file, so we don't have to hardcode a list of names.
2025-07-04 11:33:01 -04:00
37f0e07116 Add missing bin files for scrambler 2025-07-04 11:23:19 -04:00
5035dcab82 Begin implementing more packet obsfucation
It's not complete yet, notably the correct model IDs don't show up.

See #9
2025-07-03 17:00:55 -04:00
fb46a44e18 Begin correctly implementing packet obsfucation
I re-implemented Unscrambler, but in reverse! This currently only
affects names in the PlayerSpawn packet, it needs to be extended
into others to be considered complete.

See #9
2025-07-03 16:12:19 -04:00
thedax
8894e25da4
Update all but one opcode for 7.25h3 (#99) 2025-07-03 12:57:51 -04:00
thedax
bc7ab11deb
Lobby server: send back more accurate error messages for problems (#97)
* Lobby server: send back more accurate error messages for problems

* Send the dreaded 2002 error code instead. Exact error codes would probably be better.
-It is unknown if there's a list somewhere.
2025-07-02 21:59:25 -04:00