Now other players won't spawn at 0,0,0 (which is wrong, almost nobody
is there) and will reflect their actual position/rotation when spawned
in. This is also updated on the server - so new clients are aware of
your last position/rotation - and can be used later for visibility
checks.
This is to workaround a bigger bug where I don't properly enclose actors
in their zone, so you can hit an assert while traveling between zones.
But this is something that has been needed anyway, and also fixes that.
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.
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.
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.
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.
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.
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.
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.