You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As it stands, if you executeAsUser/AsGM for a user with two tabs open, then both will execute. This is suboptimal if you truly only want one invocation of the helper!
I truly have no idea what the best way to implement this is. Some sort of handshake negotiaion between all foundry notifications? Keepalive notifications to track a "real" tab? Broadcast Channel api to negotiate between tabs on a client side basis]? All have some inherent problems. The first two are network traffic heavy/introduce latency, and the broadcast channel might not work on all browsers (probably doesnt work on electron, but that doesnt matter since you can't two tab electron).
I might be able to look into this myself at some point but atm am busy with lancer system. Would be nice though! We've got some logic that is fairly complex and would benefit greatly from this.
The text was updated successfully, but these errors were encountered:
I agree that distinguishing different clients of the same player would be nice.
The Broadcast Channel sounds fun, however it doesn't help if the user logs in from different browsers/devices.
I've been thinking about different protocols to allow detection of connected clients. I've now arrived at one that comes with minimal network traffic overhead while also not introducing any extra lacency in most cases while still being able to detect clients timing out.
The thing that scares me the most about this is that I have no clue how to test such a protocol (especially the edge-cases of it)...
Is this still an issue? Whenever I go to log in to a world, any users currently logged in are grayed out and I can't pick that user. Does that not make this a non-issue?
There are ways to hack yourself around that limitation and users that do so will experience the described behavior. Logging in as the same user multiple times isn't supported by foundry (hence the grayed-out name), but still mostly works if you actually do it. For that reason this enhancement is low priority, but if it can be implemented without hurting users that use foundry the intended way, it would still be nice to have.
As it stands, if you executeAsUser/AsGM for a user with two tabs open, then both will execute. This is suboptimal if you truly only want one invocation of the helper!
I truly have no idea what the best way to implement this is. Some sort of handshake negotiaion between all foundry notifications? Keepalive notifications to track a "real" tab? Broadcast Channel api to negotiate between tabs on a client side basis]? All have some inherent problems. The first two are network traffic heavy/introduce latency, and the broadcast channel might not work on all browsers (probably doesnt work on electron, but that doesnt matter since you can't two tab electron).
I might be able to look into this myself at some point but atm am busy with lancer system. Would be nice though! We've got some logic that is fairly complex and would benefit greatly from this.
The text was updated successfully, but these errors were encountered: