PDA

View Full Version : Virtual servers



powerwek23
April 15th, 2013, 03:28
Now with microsoft starting to share server space for the new windows azure project, is there a way that fantasy grounds could be integrated to run on a virtual server.


In our campaign, our host keeps disconnecting almost every session, and he says he has cleared his ram, and it still crashes on him.

If we could run this on a virtual server, this would eliminate system requirements, and allow multiple gms on the same server, and upload speed would be eliminated because depending on the virtual server generated, you could just upgrade to a small or medium server and have no more bandwidth issues. Additionally, and I'm not sure this is occuring, most users have plenty of download connection, but a limited upload. So with this being hosted and having the flexiability to have more upload connection, this might prove to be less stressful on a workstation.

ddavison
April 15th, 2013, 03:40
That is definitely and interesting idea. I'd like to hear back any comments on how well it installed, worked, etc. if you end up giving it a try. Can you basically install whatever you want on those servers? How hard is it to configure ports, firewalls, etc.?

JohnD
April 15th, 2013, 05:14
I wouldn't be against something like this because it would be a boon to people who want to DM but are hampered by less than reliable connections.

However, this model seems to be pointing towards having to pay for the virtual server (fair enough... someone is providing the service and infrastructure... they should be compensated appropriately). Maybe it would result in everyone in the group pitching in a few $ each month to help defray the costs.

That said, I most certainly and absolutely wouldn't want to loose my current ability to host from my own machine/connection like I do now.

Trenloe
April 15th, 2013, 05:43
It's an interesting idea, I'd like to hear how it goes. It would help with situations where the GM sometimes disconnects and all players have to connect again - the GM would just have to connect to the Virtual Server again and the players would still be there. It would also help in terms of uploading content from the server to the players (when sharing).

For the current Fantasy Grounds architecture, the GM's connection would be something like a remote desktop that streams a shot of the actual screen and screen changes to the GM. If there are a few things changing on the screen this can take a bit of bandwidth to keep delays to a minimum - especially for those GMs (like me) who like to have large screen real estate.

For my job I do a lot of work remotely connecting to virtual machines and viewing their screens - it can be a slow process: click, wait for screen to update, click, wait for screen to update, etc., etc., and this is with corporate network connections - lots of bandwidth! For your average user I think this might be too slow to work with for a whole game session, but for GMs with slow upload speeds or flaky connections it could keep the game going longer and more reliably than they currently do - albeit still slowly from the GM's side.

As I said, I'd be interested to see how well it might work though...

cpbs
April 15th, 2013, 17:30
Tried running a basic server on Amazons AWS - EC2, virtual Microsoft server. Was able to install the program but when it tried to initialize, it gave me a directx error. I do not think basic virtual servers like this are able to use the directx functionality.

It is possible to use a dedicated server, then VPN into it, which would give you dedicated cores and gpu, instead of virtual ones. This might solve the issue.

Still reading the help files, to see if there is another way, but does not seem hopeful.

Trenloe
April 15th, 2013, 17:34
Tried running a basic server on Amazons AWS - EC2, virtual Microsoft server. Was able to install the program but when it tried to initialize, it gave me a directx error. I do not think basic virtual servers like this are able to use the directx functionality.

It is possible to use a dedicated server, then VPN into it, which would give you dedicated cores and gpu, instead of virtual ones. This might solve the issue.

Still reading the help files, to see if there is another way, but does not seem hopeful.
You'll need 3d support in the virtual graphics card. Using Oracle VirtualBox I had to enable their experimental 3d support that works about 80% of the time - areas of the client swap between showing correctly and just showing black. I was just using this to do some basic tests on an unlicensed client so didn't investigate further.

Master
April 15th, 2013, 18:00
It would be nice if FG wrote a dedicated server client (like you see with many MP games these days) so that it could easily be run on a wide variety of server hosts. That would solve this issue and open up thousands of hosting possibilities.

cpbs
April 15th, 2013, 18:31
That is definitely and interesting idea. I'd like to hear back any comments on how well it installed, worked, etc. if you end up giving it a try. Can you basically install whatever you want on those servers? How hard is it to configure ports, firewalls, etc.?

A little more information on your question. It was relatively easy to setup a Microsoft Server with Amazon. The one I picked was an On-Demand server, so it only charges you the times in which the server is running. The server I got had 1 virtual core, 3.75 GB of RAM, 410GB of expandable space, for $0.182 an hour. Granted if you let a server like that run for a long time, it would be very expensive. But If I only ran it, for 4-6 hours on game night, 2-4 times a month. It would be considerably cost effective.

At least with amazon, it was really easy to setup the server, basic walk through instructions are provided. That also allow sfor opening ports and setting security features. It also requires an encrypted key, which you generate during the setup, to obtain the administration password.

Once I was able to create the server, it auto started. Took about 15 min for the password to be generated for the serve then I logged in. Downloading items is a bit complicated but you do get a full Windows Server 2008 interface. Tried downloading a couple of items like Chrome web browser but it would not download. Also tried installing Directx but it also would not allow me to download. Internet Explorer was the default web browser and the Internet Security was set to High and could not be changed. So I was constantly having to set everything to approved websites list.

I was able to get to fantasy grounds really easy and download the program. Installing took about 15 min. But as soon as it tried to run, it did give me that directx error.

Now this is just the Amazon ones, I do not know if all virtual servers like this would have the same problem of not supporting directx.

Trenloe
April 15th, 2013, 18:46
Now this is just the Amazon ones, I do not know if all virtual servers like this would have the same problem of not supporting directx.
Windows 2008 Server comes with DirectX 10 installed, 2008 R2 with DirectX 11 installed.

To see if it is actually installed, try Windows Start - Run and type dxdiag and press return. This should display the DirectX diagnostic tool to see what is installed. Check the "Display" tab to see if Direct3D is available (under DirectX Features) - this is needed to run Fantasy Grounds, and may not be available through the virtual graphics card installed on the VM.

Sigurd
April 15th, 2013, 18:47
Virtualization shouldn't really be something Fantasy Grounds has to _do anything_ for. Clean code without bugs should make it a good candidate to run in a virtual machine without changing the client\server setup.

Personally, I doubt this would win you much as the DM would then have to remotely manage the server, adding another layer of complexity. So yes it would shift the bandwidth demands, while adding overhead of the DM as another user, but what would you save? An FG capable computer isn't very expensive anymore. All of the updates writing etc... etc... by the DM would have another wrinkle that could go wrong.

A more robust perhaps ambitious change to the program would be some sort of torrent layer where image\file uploads could be managed across the players and DM. That would let the already existing better bandwidths get used.

cpbs
April 15th, 2013, 19:07
https://www.dropbox.com/s/6gaktt1mkswq5ql/Directx.PNG

https://www.dropbox.com/s/wffc4zrf5929mgm/directx2.PNG

From what it looks like is that there are no real graphics drivers associated with the server to be able to push the directx to work? If that is how it works?

It does look to be running DX11, but not drivers or Direct3D acceleration.

Trenloe
April 15th, 2013, 19:36
RDPDD is the default remote desktop display driver that the VM uses, which (as you can see from your screenshots) doesn't have any DirectX capability. You *may* be able to get some DirectX functionality via RemoteFX:

https://technet.microsoft.com/en-us/library/ff817578%28v=ws.10%29.aspx

https://www.microsoft.com/en-us/download/details.aspx?id=6006

ProNobis
May 9th, 2018, 20:19
Running FG on a remote server is a fascinating concept. Did we ever find a way to make it work?

Trenloe
May 10th, 2018, 00:47
Running FG on a remote server is a fascinating concept. Did we ever find a way to make it work?
You can make it work, the GM just needs some way of remotely access the desktop with DirectX enabled - VNC, maybe RDP, etc..

ProNobis
May 21st, 2018, 16:55
So I'm setup to make it work through AWS (amazon web services) that has directx predone. I've setup up a security rule to Type = "Custom TCP Protocol" Protocol = "TCP" Port Range = "1802" Source = "0.0.0.0/0" (and a second one that has Source = "::/0")

That almost did it... then I just had to go into windows firewall and allow "1802" to be open. Connection now is a success. Took me about 2 hours to figure out. I highly recommend using ec2 instead of lightsail because 1) the first year is free (although with only 1 GB RAM so if you want sound effects or other things you will want to pay for more) and 2) once you do pay you only pay by the hour for high bandwidth. Running a computer powerful enough to handle FG (dual core with 4 GB RAM) only costs about $0.07 per hour with extraordinary speeds and the ability to work even behind heavy fire walls (such as a college or other places that block port forwarding). https://aws.amazon.com/ec2/pricing/on-demand/ It should be noted that you are also charged $.01 per gigabyte transferred... considering that FG runs on text with a few low quality images this ought to be less than a cent a game unless you do something really unusual (like high quality sound effects, with high quality images sent through a different service than FG).

dulux-oz
May 21st, 2018, 17:03
Well, if people use the DOE:Sound and set it up so that either (a) everyone has Syrinscape installed or (b) one of the Client machines acts as the "Sound Master" and pumps the sound out to everyone else, then the AWS server will only be transmitting simple text strings (ie very small packets) not entire media files. :)

ProNobis
May 21st, 2018, 17:11
Yup, but at $.01 per GB it will take a long long time for that to be a significant expense. All the files in Syrinscape put together may be 2-5 GB, what is used during a single game should be far less.

The rest of this post was incorrect and does not work. Sorry for the pipe dream.

ProNobis
May 21st, 2018, 17:12
(And thank you Dulux oz for making a system that worked for a long time before the main software caught up, your other solutions are still ahead of their time)

dulux-oz
May 21st, 2018, 17:30
Also, the DOE sound became outdated 2 updates ago.

Really?! That's certainly news to me - and to everybody else, as well, I believe. I didn't know FG could trigger sounds automatically from the Chat Box and from internal OOB Messages without the DOE:Sound, not to mention being able to place those Sound Strings into Modules and have them work correctly on re-load. And have a client machine be the sound master for the group, nor be able to have everyone play sounds locally, triggered from the GM's machine.

Truly, I've fallen way, way behind on what's now possible - so I'll stop work on the DOE:Sound (& the DOE:OLE, as well, as it uses a lot of the same code) because, obviously, its no longer needed.

ProNobis
May 21st, 2018, 17:50
DOE still has the advantage of automatically playing links based on other cues... something I don't really understand how you do. Using the built in method you have to click the button to get it to play. If you want to see an example of the new system, take a look at Incarnate-Syrinscape which is free here: https://incarnategaming.github.io/download/

And Delux, you have done an amazing job over the years. You keep pushing the envelop and pushing us forward. Thank you for all the hard work you have put in. Moon wizard made the change to make it easier to create links to websites, but website and syrinscape uri's are close enough that by adding the feature for one he added it for the other.

Retraction: The update only does url links not other uris. The core code in the xml is the same for all uris so you can code it there, but it does not automatically convert in chat. I completely blew this post.

Gwydion
May 21st, 2018, 18:36
Color me very intrigued. This is the first I've heard of this! Now I have to go check this out......

Gwydion
May 21st, 2018, 18:44
Yup, but at $.01 per GB it will take a long long time for that to be a significant expense. All the files in Syrinscape put together may be 2-5 GB, what is used during a single game should be far less. Also, the DOE sound became outdated 2 updates ago. You will notice that if you drop the Syrinscape play command into the text channel it automatically converts it to a link that will play the sound. Thank you Moon Wizard!

ProNobis, can you expand on this? When I go into Syrinscape and enable 3rd party app integration and then hit the + sign next to a mood or one-shot to copy the string to a clipboard, if I drop that into the text chat within FG, it doesn't convert it to a link. Should it? Your sounds do play in your mod which is awesome. Never seen that before without the DOE: Sound extension active.....

Edit: hmm... I see this DOES work for website url's but it is not working for me with the syrinscape text. Maybe I am doing something wrong.

ProNobis
May 21st, 2018, 20:58
ProNobis, can you expand on this? When I go into Syrinscape and enable 3rd party app integration and then hit the + sign next to a mood or one-shot to copy the string to a clipboard, if I drop that into the text chat within FG, it doesn't convert it to a link. Should it?

I thought it would. The URI code in Fantasy Grounds is the same for URLs as for the Syrinscape URI... I must have assumed and not back checked. I am wrong. Sorry for posting otherwise. It looks like DOE: sounds is still very relevant as it gives a quick and easy way to do it without having to mess with the XML code. I still think that Delux Oz has come up with brilliant solutions that can enhance any game. The only thing I have against extensions is the risk of incompatibility with the Unity Update... that being said, Delux Oz has always faithfully kept his extensions up and has an impeccable record. If it is possible to make the jump to Unity, I believe he likely will.

ProNobis
May 21st, 2018, 21:54
So there is one thing I cannot seem to figure out on the remote server... how to play audio straight from the virtual server into discord to distribute it to everyone without it ever bouncing back to my computer. Currently the remote server has 1 sound option, patch it to the computer that is remotely logged in (me, the gm). Voicemeeter Banana does not succeed in creating any new options on installation. Ideas? (The remote server is Windows Server 2016 which does not seem compatible with Voicemeter Banana. Discord opens and plays audio to the server, but does not recognize any alternate inputs.)

Gwydion
May 21st, 2018, 22:21
So there is one thing I cannot seem to figure out on the remote server... how to play audio straight from the virtual server into discord to distribute it to everyone without it ever bouncing back to my computer. Currently the remote server has 1 sound option, patch it to the computer that is remotely logged in (me, the gm). Voicemeeter Banana does not succeed in creating any new options on installation. Ideas? (The remote server is Windows Server 2016 which does not seem compatible with Voicemeter Banana. Discord opens and plays audio to the server, but does not recognize any alternate inputs.)

This might be a stupid idea, but does VMB need to be installed on the remote server in order for it to offer more audio options?

sirkerry
May 21st, 2018, 22:53
Very interested to see what the results of this are.

ProNobis
May 23rd, 2018, 03:07
Gwidion,
Without Voice Meter Banana (VMB) the only option is to have the audio play out of the virtual machine to your computer. I want to patch that audio not out, but keep it there and funnel it into discord. I figure that keeping the voice effects all on the virtual machine will allow the best possible audio quality as it won't be limited by my bandwidth. Unfortunately VMB seems to not work on Windows Server 2016. Still very happy that I can run FG in the cloud for so cheap... just really really hoping to move syrinscape over there too.

ddavison
May 23rd, 2018, 16:23
I played in a test game with Ben from Syrinscape last week using their upcoming Master & Minion version of Syrinscape. This will likely change the process somewhat and make it much simpler. It's a separate app that is installed and ran from each player but after granting permission to the GM it essentially let's the GM trigger sounds that the players pick up from a central server and play. I believe this will essentially remove the need for VMB sitting in the middle. That is arguably the most complex part of it all.

What I envision happening is that the DOE Sound extension will still trigger sounds locally and then Syrinscape master will transmit the ID of those to all the connected minions to have them play locally for each player. I only saw the player side so I don't know how much the Master side of things changed.

Gwydion
May 23rd, 2018, 16:33
I played in a test game with Ben from Syrinscape last week using their upcoming Master & Minion version of Syrinscape. This will likely change the process somewhat and make it much simpler. It's a separate app that is installed and ran from each player but after granting permission to the GM it essentially let's the GM trigger sounds that the players pick up from a central server and play. I believe this will essentially remove the need for VMB sitting in the middle. That is arguably the most complex part of it all.

What I envision happening is that the DOE Sound extension will still trigger sounds locally and then Syrinscape master will transmit the ID of those to all the connected minions to have them play locally for each player. I only saw the player side so I don't know how much the Master side of things changed.

Yes, I tried this when the Master/Minion was in its VERY nascent stages. The big thing I'm waiting for with it is the ability to integrate with the automated chatsound feature from the DOE Sound extension that I use a lot during my games. It really looks promising, I just can't wait until that piece gets added. I will also always have a need for VMB given I stream and I also pull sounds from other places (e.g. Tabletop audio, my hard drive, etc). But, to your point, for those that are only using Syrinsacpe, it might eliminate the need for them to use VM which is cool.

dulux-oz
May 23rd, 2018, 16:50
Yes, I tried this when the Master/Minion was in its VERY nascent stages. The big thing I'm waiting for with it is the ability to integrate with the automated chatsound feature from the DOE Sound extension that I use a lot during my games. It really looks promising, I just can't wait until that piece gets added. I will also always have a need for VMB given I stream and I also pull sounds from other places (e.g. Tabletop audio, my hard drive, etc). But, to your point, for those that are only using Syrinsacpe, it might eliminate the need for them to use VM which is cool.

Of course, the DOE: Sound can (and actually does) do this now (send the sound-que across the Net instead of the actual sound) - it does mean that each player needs a copy of Syrinscape installed with the relevant Sound Sets, but as Ben (from Syrinscape) has said previously, one Syrinscape license can be used on up to three separate computers at the same time - so to cover the GM and 5 players the group would only need 2 Syrinscape Licenses.

The Master/Minion idea was influenced (at least partially) from this part of the DOE: Sound's functionality.

Gwydion
May 23rd, 2018, 17:32
Absolutely what Dulux-Oz said! I am still using Syrinscape (current version) with the DOE Sound extension and sending the sound to my players through Cleanfeed. Works great for me and being able to have the auto chatsound trigger from FG chat with the DOE Sound extension is still one of my favorite parts of playing online!

dulux-oz
May 23rd, 2018, 17:46
Absolutely what Dulux-Oz said! I am still using Syrinscape (current version) with the DOE Sound extension and sending the sound to my players through Cleanfeed. Works great for me and being able to have the auto chatsound trigger from FG chat with the DOE Sound extension is still one of my favorite parts of playing online!

Yeah - but I think you missed the point I was trying to make. The DOE: Sound can (and does) send the "activation signal" from one copy of FG (the GM's) to all of the players' copy's of FG through the web, which is then picked up by each person's computer and passed on to each individual local copy of Syrinscape, meaning you don't have to send sound down Teamspeak or Skype or whatever. That's the reason for the Sound On/Off Option in the FG Options: to stop that signal (once it's arrived at a given player's copy of FG) from going out to the individual computer's operating system when Syrinscape is not installed. :)

Gwydion
May 23rd, 2018, 17:48
You're right. I shouldn't have confused the issue. I do understand that functionality as well. Options, options, options!

dulux-oz
May 24th, 2018, 04:48
Actually, that's one reason why the DOE: Sound moved away from the method described by ProNobis (which was used in DOE: Sound v1) to its current implementation (introduced in v2) - the fact that with the current version of the DOE: Sound we can get sounds playing on other people's computers (with their permission) - with v1 it was only possible to play sounds on our own computer :)

(So the DOE: Sound is not really obsolete after all, I suppose :p )

Gwydion
May 24th, 2018, 13:21
(So the DOE: Sound is not really obsolete after all, I suppose :p )

Now that would be blasphemy! I'm certainly not going away from the DOE: Sound. Can't live without it!

sirkerry
May 25th, 2018, 16:06
ProNobis,

Instead of a virtual server have you considered trying some sort of VDI setup like say Amazon WorkSpaces? Any of the true VDI setups that actually run a workstation version of Windows 10 should allow Voice Meeter Banana to work.

sstarsslayer
June 20th, 2018, 08:31
I have confirmed Fantasy Grounds will run on AWS. Testing it right now.
Fantasy Grounds system requirements list DirectX9.0c You can run DirectX on an EC2 instance, but only if you use a GPU accelerated instance type such as g2.2xlarge
Using an elastic GPU won't work because it would only support openGL and using an instance type with no gpu at all also won't work because it can only run apps that have cpu driven 3D. I don't see any option in Fantasy Grounds to disable hardware acceleration. Ubuntu instances are cheaper than Windows, on EC2, but I'm not sure yet if you can get directx to run in Wine with this type of setup.

sirkerry
June 20th, 2018, 20:45
I have confirmed Fantasy Grounds will run on AWS. Testing it right now.
Fantasy Grounds system requirements list DirectX9.0c You can run DirectX on an EC2 instance, but only if you use a GPU accelerated instance type such as g2.2xlarge
Using an elastic GPU won't work because it would only support openGL and using an instance type with no gpu at all also won't work because it can only run apps that have cpu driven 3D. I don't see any option in Fantasy Grounds to disable hardware acceleration. Ubuntu instances are cheaper than Windows, on EC2, but I'm not sure yet if you can get directx to run in Wine with this type of setup.

Does Voice Meeter Banana work with it?

sstarsslayer
June 23rd, 2018, 11:21
Does Voice Meeter Banana work with it?

I don't know that software. I do get audio from the server on my client machine via the RDP protocol.