1
Fork 0
mirror of https://github.com/redstrate/Kawari.git synced 2025-04-23 15:47:45 +00:00
Commit graph

320 commits

Author SHA1 Message Date
ca94e26e1c Attempt to fix other player rotations
This doesn't work just yet, but I guess I'm getting closer.
2025-04-11 10:32:52 -04:00
dbfd5fccc4 Use bool type in ToggleInvisible Actor Control 2025-04-11 08:46:54 -04:00
b3b816c511 Use bool in "check if name is free" IPC instead of u8
This doesn't change anything functionally, just works a bit nicer.
2025-04-11 08:41:50 -04:00
395aacf53e Fix CharaMake test 2025-04-11 08:37:41 -04:00
e9ef724f05 Make get_primary_model_id return an Option 2025-04-11 08:36:17 -04:00
96bcdf1238 Fix various Clippy warnings 2025-04-11 08:32:55 -04:00
f9aefab7b7 Read voice from CharaMake, send voice id in lobby 2025-04-11 08:26:38 -04:00
167273d704 Fix Caddy run example 2025-04-11 08:25:15 -04:00
f3089a2704 Update dependencies 2025-04-11 08:17:51 -04:00
79d985a197 Don't put opcodes.json in the artifact 2025-04-05 23:03:51 -04:00
662e659d8f Move Caddyfile, scripts out of root directory 2025-04-05 23:01:21 -04:00
a1539d1931 Add stubs for changing password and canceling account pages 2025-04-05 22:54:48 -04:00
09c347178c Add barebones account management page
This also moves the login pages to the login server, which makes the
code slightly a bit more contained. The account management page doesn't
allow you to do anything yet, but for future usage.
2025-04-05 22:40:44 -04:00
90e5e191e9 Integrate Login<->Lobby servers, remove placeholder service account id
All accounts were sharing the same character list, but now they should
be properly separated. This also modifies the login database to prepare
for multiple service accounts, but there's no way to manage them in the
web interface yet still.
2025-04-05 21:36:56 -04:00
19b84f4164 Extract new data from Auracite
Now your character's nameday, city-state, guardian and voice is transferred
over. There seems to be a problem with the nameday month, not sure who is wrong
yet.
2025-04-01 23:25:11 -04:00
df1d0b2629 Remove disconnected clients from the client list 2025-04-01 22:24:58 -04:00
121415b163 Add !classjob debug command to change your class/job
This is the workaround for lack of a proper class/job switch when
equipping different weapons.
2025-04-01 21:53:10 -04:00
216778ea8b Add more inventory management
Instead of one single slot available in your inventory, all four pages
should be available now. Moving items around should be less buggy, and
it's now possible to discard items.

Items cannot stack still, and when given will always take up the next
free slot.
2025-04-01 21:37:41 -04:00
6d1e9d4e73 Add //gm lv command to set your current level 2025-04-01 20:39:57 -04:00
f1b674320e Send existing actors to any newly connecting client 2025-04-01 20:23:23 -04:00
268c157180 Send actual player data to other clients
Instead of a placeholder actor, you can now see the other player's
correct appearance.
2025-04-01 19:23:12 -04:00
4f8f0d1fe2 Add !spawnclone command, rename !spawnactor
Curiously the spawned clone shows up as a player, despite not using the
NPCSpawn packet. This might be a suitable workaround for the
PlayerSpawn packet being buggy from our side.
2025-04-01 19:15:08 -04:00
b1653f0808 Commit and restore inventory from the World databse 2025-04-01 18:49:42 -04:00
fed21b3617 Make various packet dumping optional, turned off by default
This creates a lot of clutter, and only really interesting to
developers.
2025-04-01 16:58:39 -04:00
cbbeccb782 Fix README formatting 2025-03-31 23:31:52 -04:00
822d1f5139 Add GM command to give items, support equipping from inventory
Now with this command and support for *one* inventory slot, you can
now freely equip items to your character for testing.
2025-03-31 23:23:29 -04:00
32b6840e38 Don't include a copy of unused HTML pages in each binary
This reduces the size of the binary a little.
2025-03-31 22:03:33 -04:00
924c5a1530 Fix various warnings 2025-03-31 21:58:51 -04:00
0c76d847d5 Allow unequipping items, add packet for updating equipped model ids
The unequipped item currently disappears into the aether, but this
works now!
2025-03-31 21:49:12 -04:00
bc8535cce2 Fix chat message packet size 2025-03-31 21:16:52 -04:00
fbf8212f8f Fix logout for 7.20h 2025-03-31 21:16:52 -04:00
a5a9e49667 Initial update for 7.20h
This updates the set of opcodes and patch version for today's patch. Not
everything is working yet and there's a few missing ones, but overall it
looks good.
2025-03-31 21:16:52 -04:00
1bdacaaede Add inventory modification packet
The size isn't quite right yet, but whatever.
2025-03-31 20:05:37 -04:00
1a7da9d662 Update dependencies, remove Physis chardat workaround 2025-03-31 17:26:56 -04:00
b04fd6e8e1 Update README to new description 2025-03-30 23:51:22 -04:00
1ed968f71e Remove Item Excel parsing from the hot network path
I seem to have finally restored the reliability back to how it used to
be, it seems the crux of it was the Excel sheet reading for Items. I
moved the parsing to the start-up instead.
2025-03-30 23:48:11 -04:00
88edc0b27e Some Tokio tasks cleanup 2025-03-30 23:17:11 -04:00
a5ed126853 Improve Oodle buffer correctness
This does not fix the network bugs, but it's better I guess.
2025-03-30 22:54:30 -04:00
fccd752246 More misc packet size fixes 2025-03-30 22:29:17 -04:00
eae962cc85 Multiple fixes attempting to fix packet errors
It doesn't unfortunately, there's still a bunch of errors when decoding
packets. These are all decent fixes though.
2025-03-30 21:42:46 -04:00
b01ec22950 Fix and check more packet sizes 2025-03-30 19:50:31 -04:00
55c1e84cc5 Remove some unnessecary copies in Oodle 2025-03-30 19:43:30 -04:00
d844eef2f3 Extract some Oodle constants 2025-03-30 19:37:53 -04:00
767a288e12 Fix Disconnected opcode 2025-03-30 19:34:38 -04:00
caf70ea469 Pass GameData into Zone, stop loading the same zone twice on login 2025-03-30 19:13:24 -04:00
243d94c586 Add preliminary support for restoring character backups from Auracite
Not much is importable yet - pretty much just the character's name and
appearance.
2025-03-30 18:52:00 -04:00
e4870762eb Fix various Clippy warnings 2025-03-30 18:03:42 -04:00
ae1ca2f92d Replicate actor spawning and movement to other clients
This now works and Kawari has achieved basic multiplayer! This is of course with
a hundred caveats:
* Previously spawned players are not backfilled
* There is no range or zone detection
* They are carbuncle clones of you, not the other character's data

But it actually WORKS!
2025-03-30 18:03:42 -04:00
9cb7cd9abd Add initial stuffs for actor replication 2025-03-30 18:03:42 -04:00
4bacc35551 Remove separate InternalMsg enum
I think the current way I'll accomplish this for now is to use the other
task to send all messages from the global server state back into the
main connection loop.
2025-03-30 18:03:42 -04:00