ID:1329425
 
Code:
var/icon/I = icon(input("Choose an icon for [src.name] from your system","Change Icon") as null|icon)
if(!I)
return
I.Scale(50,50)
src.icon = I


Problem description:
So I've been trying various methods to work around this but I don't exactly understand what's happening. A player changes an object's icon by uploading an image file, and it automatically scales it to 50x50.

However, the issue is weird: for the player that uploaded the image, it turns out just fine for them. For other players who load it whilst being on at the time of uploading it, when it gets downloaded onto their cache, they see an extremely cropped version of that original image, like a small corner of it. Disconnecting completely and logging back on fixes the issue, but that's really counter-intuitive for end-users to have to deal with and I can't find a way to work around it.
This sounds like a cache issue, could be due to preload_rsc being set to 2, If it displays correctly for the uploader. However, unless I, once again, am mistaken, you should report this after it is confirmed by someone else that this is not the intended method. It sounds like a bug with cache loading at run-time.
I haven't changed preload_rsc at all, so it defaults to only downloading the icon when someone 'sees' it. For instance, either when opening the player's character list in the statpanel, or a post made with the icon displayed.