d216bebce9
Remove !playscene debug command
...
This doesn't really scale right now with the new events system, and I
don't use it anymore so let's remove it for now.
2025-06-18 20:53:07 -04:00
eb6b6409da
Generate new actor IDs for debug NPCs, unify actor network paths
...
I don't know why I created a new message kind just for spawning NPCs
when ActorSpawn does this just fine. But what this actually means is
that the debug NPCs can now be spawned more than once.
2025-06-18 20:49:05 -04:00
97cdc66ec7
Make !spawnnpc debug command networked
...
Next step is allocating actor IDs properly, instead of using a fixed
value.
2025-06-18 20:38:55 -04:00
3757f4e0db
Make !spawnmonster put the NPC at your location again
...
Also included some refactoring that will help networking these better.
2025-06-18 20:28:03 -04:00
1b6fdab000
Add warnings in more lobby fail cases
...
For example, if your World server is down and no service accounts were
returned.
2025-06-18 20:08:35 -04:00
7d6c8a8c14
Advertise in all retail lobbies instead of just Aether in LauncherTweaks
...
This should make it somewhat nicer for non-American users.
2025-06-18 20:03:41 -04:00
e175bd072e
Fix Unk2 and Disconnected opcodes for 7.25h
...
Fixes #23
2025-06-18 19:48:22 -04:00
cbde0f74b3
Clarify in USAGE that the server is setup for Aether/Gilgamesh
...
I thought this was documented, but I guess not. Saves users a bit of
troubleshooting, especially if they don't play on American data centers.
2025-06-18 19:42:29 -04:00
97a1836e77
Don't panic in the Lobby server if the Login server is unavailable
...
See #21
2025-06-18 19:38:00 -04:00
The Dax
3118ef2a5a
Write description of !nudge in USAGE.md
2025-06-18 12:55:18 -04:00
The Dax
74479198e8
Nudge.lua: clarify usage
2025-06-18 12:55:18 -04:00
The Dax
0b6d8d3f8c
Refactor Nudge.lua
...
-Added the comments back from the original
-Make actual use of the new_position table, may as well since it's there.
2025-06-18 12:55:18 -04:00
The Dax
8cc59f4793
Fix clippy warning
2025-06-18 12:55:18 -04:00
The Dax
80885f0eeb
Port the nudge gm/debug command from Project Meteor Server.
...
It's a command that moves the user forward, backward, up, or down a specified amount of yalms.
It's quite helpful for exploration convenience, and doesn't replace setpos, rather, it's meant to complement it.
The set_position function was also extended to allow for lua code to specify the rotation/direction facing.
2025-06-18 12:55:18 -04:00
acd11b9122
Call requestResumeInfo when fromAppWaitPlay is called
...
This fixes the last retail launcher issue I hit when testing locally.
Fixes #19
2025-06-17 17:21:01 -04:00
88e73a1633
Add console.debug logging for the various launcher callback functions
...
I'm currently working through why it's not working in the retail
launcher anymore, and keeping track of which callbacks are called with
their parameters is super useful.
2025-06-17 17:14:28 -04:00
9135d1e179
Add back hosts editing information to the USAGE guide
...
This was initially removed because the localhost TLD Caddy magic, but I
just discovered that this isn't honored by WinHTTP which breaks the
retail patcher. So users will still - unfortunately - have to do this.
2025-06-17 17:08:56 -04:00
94e005d4f5
Initial update for 7.25h
...
Some of the opcodes didn't update properly as per usual with the new
process, but you can log back into the World server.
2025-06-17 16:24:19 -04:00
b84d5daafe
Add CORS headers to the login API
...
A retail launcher update broke this (probably just the WebView2 upgrade)
and it requires us to declare Access-Control-Allow-Origin. This makes
the retail launcher functional again.
See #19
2025-06-17 16:16:28 -04:00
2576c49246
Change the default listen address to all addresses
...
This makes it slightly easier to share the server between machines, or
in my case - virtual machines.
2025-06-17 16:05:36 -04:00
37a9702a29
Send a better patchlist
...
This isn't correct yet, but closer to being usable.
2025-06-08 16:00:14 -04:00
46dec1b0f0
Add patch-dl.ffxiv.localhost to the default Caddy config
...
You have to place the patch files under the patches/ directory.
2025-06-08 15:44:22 -04:00
9e1bfe8625
Fix Unk2 and Disconnected opcodes for 7.25
2025-06-07 11:29:21 -04:00
5825de8460
Update dependencies
2025-06-07 11:01:33 -04:00
35dbf7a355
Initial opcode update for 7.25
...
This doesn't cover everything, but allows you to login to the World
server again.
2025-06-07 10:57:13 -04:00
2dc01be9c1
Skip generating empty opcode enums
2025-06-07 10:57:13 -04:00
ac595fcf6f
Initial version bump for 7.25
...
Nothing packet-wise has been updated yet, but this will at least allow
the launcher and client to login.
2025-06-07 10:57:13 -04:00
5accb992a9
Add !equip command to quickly change your equipped item
...
See USAGE, this is actually extremely useful! No more hunting for item
IDs!
2025-05-12 22:32:03 -04:00
d1bbfdfbfd
Send voice id when spawning player
...
Forgot to do this, so everyone sounded like a man - oops?
2025-05-12 22:00:23 -04:00
7fd9c8e681
Add temp.zip to gitignore
2025-05-12 22:00:17 -04:00
59815df5c1
Add warning message when failing to find poprange
2025-05-12 16:32:55 -04:00
1cdd2d4bff
Fix the character currently equipped items not showing in the lobby
...
We were missing two additional integers in the ClientSelectData work
definition. Once we added those, the equipment now shows up!
2025-05-12 16:11:17 -04:00
6930c18d2a
Prevent the chat connection from always forcing a log out
...
This is just a band-aid fix, we really need to the separate the chat
connection from the rest of the zone connection logic. But this will at
least stop some annoyances when logging out.
2025-05-12 16:00:23 -04:00
b21d9933b3
Add GM rank to database, default to normal user and set online status
...
Instead of everyone starting out as a GM, they are a normal user by
default. Right now the only way to set GM rank is through editing the
database. The online status is set accordingly.
2025-05-12 15:44:39 -04:00
a88b9037d4
Begin adding disconnection handling
...
This doesn't work 100% reliably yet, but the world server should now try
to commit your player back to the database if it detects you disconnect.
I also fixed a mistake where the global server state never removed
clients when they errored out. There's now code to remove your actor
from the instance when disconnecting, but this doesn't work reliably yet
either.
2025-05-12 01:17:15 -04:00
f37aa53011
Don't panic if LGBs failed to load
2025-05-11 12:39:35 -04:00
d7499e6015
Fallback to 0,0,0 if we fail to find aetheryte destination
2025-05-11 12:39:13 -04:00
d82cb2d048
Add support for unlocking all aetherytes
2025-05-11 12:38:55 -04:00
94ed036431
Add script for the Teleport action
...
This makes the Teleport action functional now, although it looks pretty
rough as it warps you instantly instead of waiting for the action to
actually finish.
2025-05-11 10:12:02 -04:00
1914531d89
Add commands to unlock actions, and aetherytes
...
This doesn't mean teleporting works *yet*, as it needs to be scripted.
The unlocked action/aetheryte is also not persisted yet.
2025-05-11 09:27:29 -04:00
1605098c2e
Update CONTRIBUTING to remind myself to update Icarus as needed
2025-05-10 09:28:31 -04:00
90a4f4ea0c
Switch to new physis sheets name
...
Nothing changed API-wise apart from that. We also have the ability to
now pin on a game version, which is super helpful.
2025-05-10 09:25:22 -04:00
477380c8b9
When using the !spawnmonster command, send it to all players
...
You can't attack it and see it on other clients yet, that will take some
more plumbing.
2025-05-09 20:09:22 -04:00
2e50d1f7ad
Move some common code out of ZoneConnection and into a new common module
2025-05-09 19:49:40 -04:00
dba4edc32d
Remove some dead, unused code
2025-05-09 19:45:08 -04:00
95fb6a149f
Remove ToServer::ActorSpawn
...
This should be handled in the global server state instead.
2025-05-09 19:42:23 -04:00
0139fbc8c6
Remove the now unused ToServer::ActorDespawned
...
This is handled in the much-better-named LeftZone message.
2025-05-09 19:30:37 -04:00
cbeaa83307
Implement basic zone isolation for multiplayer
...
Now you don't see every player from every zone, like some kind of
madman. The code still sucks, but it works.
2025-05-09 19:27:18 -04:00
9787126a1b
Replace (most of) the remaining Excel parsing with Physis Sheets
...
The only one remaining is for Item data, but that can't be ported yet
because the new API only fetches the first page for now.
2025-05-09 18:35:44 -04:00
df789b52c9
Update to latest Physis Sheets API for error handling
2025-05-09 18:11:18 -04:00