Descriptive Problem Summary:
The Ref states that browse_rsc() does not send files that are already present in the target's cache. This does not appear to be the case. The files are modified every time browse_rsc() is called and the network usage appears to be the same whether the files are in the cache or not.
Numbered Steps to Reproduce Problem:
1. Send a player an asset with browse_rsc().
2. Send them the same asset with browse_rsc().
3. Look at the network usage during each of those calls and see it's the same.
4. Alternatively, look at the timestamp on the files in their cache.
Code Snippet (if applicable) to Reproduce Problem:
/client/New()
while(1)
src << browse_rsc('big noise.png')
sleep(50)
It's not especially important what the file is, but in this case 'big noise.png' is a 16000*16000 image of... I think it's Gaussian noise but it's just the biggest image I had sitting around
Expected Results:
File would be downloaded once and minimal network communication would occur afterward to see if the client already had the file
Actual Results:
File is resent every time
Does the problem occur:
Every time? Or how often?
Every time, as far as I can tell.
In other games?
Happens in a game and in a test project, so yes.
In other user accounts?
Yes.
On other computers?
Yes.
When does the problem NOT occur?
As far as I can tell it always occurs.
Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? (Visit http://www.byond.com/download/build to download old versions for testing.)
No idea.
Workarounds:
Manually implement a cache in softcode I guess.
However the client-side cache does tend to limit its size and will start to purge older files when it gets beyond a certain point. Maybe that's what you're seeing? How are you confirming that the file is re-sent?