Who is “Stuart Kehoe”, and why was I greeted as him on a fresh install of the Syrinscape Online Player?
Looks like a mixup of Auth LINKS.
Hit the broken chain to break that link and connect to yourself.
I blame ACTUAL GOBLINS!!!
@benjamin — Yes, I am running Syrinscape under Linux + WINE.
I’m trying to understand if I was accidentally identified as another user, and if so, if I was placed into whatever session they were a part of. That would be disconcerting, if a hiccup in the auth link could connect an outsider to a GM’s game session.
I don’t know if this is the case for other platforms, but under WINE, the Syrinscape Online beta seems to have an incredible case of amnesia. I just launched it again today, and it identified me as Shaun Munkle connected to game master Sean Munkel. (Yes, different spellings for what at first glance appeared to be the same name.)
Note that, yes, I can disconnect the link, reconnect the device to my own Syrinscape login, and then everything works fine. But a couple days later, it will revert to some random user’s identity and connection.
What the heck?
OK. So this makes sense now.
The Online Player identifies the computer it is on with a UUID, based on a number of system parameters (eg instal date, mother board, graphics cards, disks). This should create a VERY unique number for every machine and helps our server to connect and LINK to your device.
It seems that every install of Wine (in Linux) gives the same UUID, thus this conflict.
- the Online Player is NOT compatible with Linus using Wine
- OR can you set the UUID somehow in the Wine emulator?!
Does anyone understand how Wine works on Linux?
Work around for the moment:
A) run the Online Player on some Other device (a tablet or phone) and run the audio into your computer to mix together with other sound.
Anything here helps?
@benjamin — Thanks, let me do a bit of research and see if I can find out if there is a way to customize the UUID on WINE. Can you provide more detail about exactly what API is being used to glean the UUID?
Note that this presents a security issue, as the UUID can obviously be spoofed very easily. Is there a better way to identify the system? A random UUID?
Computer UUID is accessible in WMI (wbemprox.dll) via Win32_ComputerSystemProduct.UUID. This seems to have been supported in WINE on Linux for a while, and in WINE on Mac since October 2016 (see this bug report and this patch). I did not have a test suite handy to verify the exact behavior of this call under WINE.
In addition, a UUID may be retrieved from the MachineGuid string key in HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography. I can verify that this key is populated in WINE environments, and further, that it is different for every single WINE environment. (I have 4 WINE sandboxes set up via Lutris right now, and each one has a different UUID in this registry key.)
If you’re able to use one of the above methodologies, that should address the behavioral issue. The methodology you described — constructing a UUID based on install date, motherboard, graphics cards, disks — sounds perhaps a bit over-engineered, given the availability of more straightforward alternatives.
So, I don’t think there is a security issue here, because we are just trying to get a clear ID of what system needs to be attached to which LINKED account.
If you can set the UUID in Wine, I suggest setting it to something including:
- your name
- your Syrinscape user account number
- PLUS something random
Then the overlapping accounts you are currently getting will be gone.
Does this work @sonofconan?
If you can set the UUID in Wine…
That depends on what information (API calls, registry entries, et cetera) Syrinscape is using to come up with the UUID that it uses. The gist of my previous post is that there are sources that will guarantee a truly unique UUID under WINE, but these don’t seem to be what Syrinscape uses. So, what is the methdology by which Syrinscape derives a UUID?
Once I know the answer to that question, I can see if there is a way to manipulate the sources that Syrinscape uses to ensure a unique UUID.
I’d also love to see this resolved, even with a work-around. The Syrinscape online player is the only non-linux-supporting tool I use for RPGs, and it’s so close to supporting linux under wine.
With guidance from @sonofconan, I’ve traced the issue to a collection of system properties that are hardcoded in Wine. Unfortunately, this means that a user workaround is impractical. Bug # 49160 has been submitted to the Wine bug tracker.
In the meantime, it sounds like the next release of Syrinscape Online may circumvent the anomalous Wine behavior. Props to the Syrinscape team for addressing this even though Wine is not technically a supported platform — thanks for looking out for your Linux peeps!
I fixed this by using hexedit to edit wbemprox.dll and change a few values in the OS Serial Number string.
You need to search for the hex string “310032003300340035002d004f0045004d00” and change a few digits and that should be enough.
Filthy, but works.
Fix has been implemented in Wine git repo and should be forthcoming in the Wine 5.10 release in the next couple weeks (if I understand Wine’s release schedule correctly).
This is cool!