ID:174145
 
Lets say you have a small collection of tiles that you are going to show to a player by adding them to usr.client.images. Then, you want to change one of the colors in each of the tiles. Which of the following would be fastest for a user connected via a slow connection during runtime (assuming that its possible to do these):
  1. Take the icon, change the color using the DM procs, reshow it.
  2. Create a different set of tiles with the color change and just switch between icon states.
  3. Both of the above are about the same, just exchanging CPU usage for disk space, or vice-versa.
I think it might come down to when you want to send the resources. The CPU and disk space hits are probably too small to acknowledge. It's about bandwidth. Do you want a "giant" hit in the beginning or do you want multiple small hits? An extremely slow connection may have problems either way.

If the resource file is being downloaded from the host, a giant hit at the beginning will probably be noticed by other players if your server does not have enough bandwidth. Even if a slow connection only has to download the resources once, other connections can form at any time and cause a big hit to annoy players some more. (I've been pondering using client.preload_rsc=[URL] for Webcrawl.)

[Insert paragraph about the disadvantages of downloading when needed here. ...No, wait. My multi-megabyte monsters in a land of kilobytes tell me I'm not qualified. ;)]

If your resources are hosted elsewhere, are small, or you have a really nice server, then go for the big download at the beginning. Otherwise, reuse resources where you can (don't recreate color variants) and download as needed. If the downloads are small and not very frequent then a slow connection should not be bothered.
In response to ACWraith
Assuming I understood all that, thanks. ;-)

I'm going to shoot for the big download at first.