foundryvtt / foundryvtt

Public issue tracking and documentation for Foundry Virtual Tabletop - software connecting RPG gamers in a shared multiplayer environment with an intuitive interface and powerful API.
https://foundryvtt.com/
212 stars 10 forks source link

Display user latency in the UI to help identify players who have a slow or unreliable connection #11132

Open mawburn opened 1 month ago

mawburn commented 1 month ago

User Experience

I took up the maintenance of the user latency plugin when it went unmaintained a couple of years ago and improved upon it by converting it to use WebSockets instead of fetch. Since then, I have not used Foundry as much, and most of my games are run IRL rather than online.

This feature should be built natively into Foundry and should be a low-effort addition. It can be a massive help when diagnosing player issues or letting others know that someone might be timing out. Foundry is much more like a video game than a web application, so a user's ping is a fairly important metric to have.

Right now, it is simply relying on the WebSocket endpoint for the system time, since this is a connection that is already established and will give a more accurate representation of a user's latency rather than a fetch call or Axios request. It's not actually using the time from the endpoint; it's simply measuring how long it takes to call the server and back. It was just a WebSocket endpoint that I found that I could use, and it is a rather hacky solution, in my opinion.

This is a pretty widely used feature, with the latest release being installed about 6,000 times times as of this ticket. But I'm sure more people would use as a native solution. Past versions had more downloads for some reason, I'm not really sure why but everyone who uses it finds it to be immensely useful.

I will be archiving this repo and redirecting users here. It's a pretty low effort plugin, but I am just trying to reduce the amount of things on my plate in general.

unsoluble commented 1 month ago

Complete aside, but note that the download metrics there are for the manifest, which is grabbed every time someone checks for updates. The stats on the zip file are more indicative of actual installs. :)

mawburn commented 1 month ago

Fair enough. There is also caching like The Forge does as well. But I updated the ticket. I figured that the manifest just might be people looking at the list, but wasn't sure.

Past versions had way more downloads. I'm not sure why, honestly.

DenizKose commented 3 weeks ago

It'll be awesame to have this util in core foundry. This helpfull module help to understand who has problem with connection. So, I was dissapointed when understood that this module will not support v12 :...(

Arthil11 commented 3 weeks ago

Mark me as another voice speaking up that this is added to Foundry itself, hopefully not having to wait until v13... or later.

elemorelli commented 3 days ago

I'd love to see this as a Foundry native feature.

Having players from other continent, it helped us too many times to diagnose conection issues during our games.