About this project
Waygate is an attempt at implementing a server based on Elden Ring's matchmaking protocol. Its aim is to offer a more vanilla online experience while allowing users to mod the game. It is not an overhaul: aside from replacing the game's peer-to-peer networking with something more bearable, the mod does nothing to enhance the online experience by itself. The author expects other mods to implement tweaks to the online experience.
A warning notes that over a year of testing with about 30-40 people, no one reported being banned from official online play, but there is no guarantee the server is completely safe to use.
Setup requires a PostgreSQL database to store messages, bloodstains, ghosts and more. The server runs migrations automatically once connected to a database. The game uses fixed keys to start the connection and perform key exchange, so a key pair must be generated once during setup using the waygate-generate-keys tool, which prints a valid keypair and instructions for applying it to the server launch command and the client's waygate.toml.
The server is launched with parameters for bind address, API bind address, API key, database URL, client public key and server secret key. Each parameter also has a corresponding environment variable. The database URL follows the form postgresql://USERNAME:PASSWORD@HOST/DATABASE.
The server also starts an HTTP JSON API for automated healthchecks, broadcasting messages and more in the future. This HTTP server is bound separately from the game server via the api-bind parameter. API authentication uses the api-key, which must match on incoming HTTP requests. More API details and examples are in the server's API README. Client setup is marked as TBD.
Additional configuration includes logging, specified in config/logging.yml using log4rs, and announcements, defined in config/announcement.yml.
A checklist of working features includes summoning per sign, quickmatches (arena), invasions, player messages, bloodstains, player ghosts, summoning per puddle, Fia/Warrior Jar Pool, group passwords and Blue Cipher Ring. Remaining work includes quickmatch ranking, match density (PvP activity on map) and a large amount of telemetry-related messaging.
Credits acknowledge Axi, Tremwil, TLeonardUK (Infini), DEN testers, LukeYui, ClayAmore, Steelovsky, Mintal, Metalcrow, Shion, Dasaav and auramalexander (Dylan). The project is licensed under AGPL-3.0-only; modified versions run for users over a network must make corresponding source available under AGPLv3 section 13.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.