PDA

View Full Version : Do you still need to make modules for images?



adminwheel3
May 5th, 2012, 20:32
A while back, when I first started using Fantasy Grounds, one of the recommended best practices was to export image files into modules then send those modules to each player.

That way when you shared the image the client would first use the locally stored image which was contained within the module they had received. This dramatically shortened the amount of time it took for images to load on client systems.

Additionally, it also served to keep the main campaign database free from the image files. I was under the vague impression that every image file shared directly from within a campaign (and not from a module) made the campaign database grow larger - eventually leading to system instability.

Now I share some pretty big maps - sometimes upwards of 1.2+ MB in size. I have no desire to try and download those things to each of my players over my cable connection, so creating and distributing modules which contain those files is fine with me.

However, sometimes I just want to share a small file - say something under 200 KB. I know the load time will be fairly short, so that's not an issue. However I don't want to risk bloating up or corrupting my campaign database. Even so, it's bothersome when I have to go to the trouble before a game session to create a module just for a single small image.

So - does the sharing of small images with clients over time without using modules lead to any known system instability?

I would prefer to only have to distribute modules when I am updating my library files or when I have very large images to share.

Thanks in advance for any information!

Moon Wizard
May 5th, 2012, 22:43
Image files do not directly correspond to campaign database size increase, but do increase of the overall size of the campaign folder. The link in the campaign database is just a file name to the file in the images directory on the campaign.

When a client opens an image file that it has access to, FG will attempt to load the image file from the cache. If the file does not exist in the cache, then FG will send a request for the file from the host. This means that a "full" image distribution to all clients should only occur when the image is first shared.

Also, each image has a mask and drawing layer that is requested from the host each time that an image is opened, in order to ensure that the client always has the latest version. While the mask and drawing layers are actually images with the same size as the database image, they are generally very small since they are black and white.

The sharing of images suggested previously was driven by the fact that some people that are hosting games have smaller upload pipes than others, or some players have smaller download pipes. The modules shortcut the networking, because they essentially become part of the "cache" on the client.

Regards,
JPG

adminwheel3
May 6th, 2012, 13:27
That's exactly what I needed to know, thank you.