HerculesWS / Hercules

Hercules is a collaborative software development project revolving around the creation of a robust massively multiplayer online role playing game (MMORPG) server package. Written in C, the program is very versatile and provides NPCs, warps and modifications. The project is jointly managed by a group of volunteers located around the world as well as a tremendous community providing QA and support. Hercules is a continuation of the original Athena project.
http://herc.ws
GNU General Public License v3.0
903 stars 757 forks source link

Stop sending standalone players to API server #3314

Closed guilherme-gm closed 2 months ago

guilherme-gm commented 2 months ago

Pull Request Prelude

Changes Proposed

When map-server starts up and loads autotraders ("standalone" characters), they eventually get sent to char and login server. Once this happen, login-server tries to connect those players in API server, failing, because these players never logged in.

Since those players won't ever be valid, since they are totally system-controlled, this change prevents login-server from sending those accounts to API server, solving the many errors that show up during startup.

I took the chance to convert the packets involved to struct format

Issues addressed: Fixes #3306

skyleo commented 2 months ago

There seem to be some HPM changes unrelated to your PR. (Stemming from something merged previously. For the sake of easier reviewable and atomic Commits please split those changes unrelated to you out, if they are missing in master you may start with an "Update HPM Hooks" commit.

@MishimaHaruna is the HWSApi that does the HPM Hook updates broken atm?

guilherme-gm commented 2 months ago

yup, they are missing in master. updated it

MishimaHaruna commented 2 months ago

I fixed the failing HWSAPI bot builds, it was due to an expired GPG key. Because of that though, I caused a conflict here, can you please rebase?