Page 1 of 2
Cache Files
Posted: Tue Nov 18, 2008 8:37 pm
by §tå£kër 3000
Why is it if you update a file in server packages,
lets say bob.u and the client is only using cache files from the server they get a mismatch after the update instead of unreal replacing that cache file.
They might as well have the .u file installed instead of the cache, because that causes the same problem.
I understand why having the .u files causes a mismatch, but cache should not do that, after all it's only a temp file.
Re: Cache Files
Posted: Tue Nov 18, 2008 8:40 pm
by [§Ŕ] ŤhěxĐâŕkśîđěŕ
Cache actually doesn't get replaced?
Re: Cache Files
Posted: Tue Nov 18, 2008 8:44 pm
by §tå£kër 3000
No both sets of my 227e will not replace the cache files instead i get a mismatch error, and other clients have had this same problem too.
The cache files have to be deleted before it will d/l the updated files
Re: Cache Files
Posted: Tue Nov 18, 2008 8:46 pm
by [§Ŕ] ŤhěxĐâŕkśîđěŕ
Lol but how do you know what files do you need to delete?
Re: Cache Files
Posted: Tue Nov 18, 2008 8:47 pm
by §tå£kër 3000
Because unreal tells you the name of the file mismatched
Re: Cache Files
Posted: Tue Nov 18, 2008 8:59 pm
by [§Ŕ] ŤhěxĐâŕkśîđěŕ
Oh...lol.
Never happened to me... >_>
Re: Cache Files
Posted: Tue Nov 18, 2008 9:43 pm
by .:..:
Cache files dosent get deleted (except when purge cache days has expired), but an easy fix for this is to type in console command "Obj Garbage" then reconnect to the server.
Re: Cache Files
Posted: Tue Nov 18, 2008 9:50 pm
by Hyper
1. Cache files should NOT be replaced by new versions, because generally multiple versions of a single file may be in use by different servers.
2. As suggested before, the ULTIMATE solution for version conflicts would be if unreal would FIRST look in the cache folder when loading a file and THEN in the other folders. This allows multiple versions to be used without affecting locally installed files.
This has been suggested before, I also made this suggestion for u227. But I don't know the status on it. Because of this I would like to see this issue having some attention of the devteam again.
Also read:
Some people claim that their Unreal installation first looks into the Cache to avoid that problem so they actually never have to rename files once they have a false and correct version at the same time, but I never saw this for real, so I doubt it's true. If there is a setting to force Unreal to first look into the cache, TELL US HOW IMMEDIATELY!!! - the rest of the world will be grateful!
From http://www.oldunreal.com/UnrealReference/versions.htm
Re: Cache Files
Posted: Wed Nov 19, 2008 12:00 am
by []KAOS[]Casey
Cache files dosent get deleted (except when purge cache days has expired), but an easy fix for this is to type in console command "Obj Garbage" then reconnect to the server.
This ^
and i've tried to bug smir to do that for non-core unreal files, it would be VERY useful to do that

Re: Cache Files
Posted: Wed Nov 19, 2008 2:06 am
by HeadShot
Could Obj Garbage not be activated when a new connection is detected? ( different from the current )
Re: Cache Files
Posted: Wed Nov 19, 2008 2:25 am
by []KAOS[]Casey
when you drop from a server via disconnect or auto-disconnect from timeout, obj garbage isn't called, so the packages are still in memory { you can summon things from the server you were in}
Re: Cache Files
Posted: Wed Nov 19, 2008 2:19 pm
by [§Ŕ] ŤhěxĐâŕkśîđěŕ
That should be automatical imho.
Re: Cache Files
Posted: Wed Nov 19, 2008 7:22 pm
by []KAOS[]Casey
WEll yeah, when you explicitly change maps {via open} garbage s always collected, but the disconnect/timeout dropout just places you in the entry level already loaded rather than reloading. No idea.
Re: Cache Files
Posted: Wed Nov 19, 2008 10:28 pm
by [§Ŕ] ŤhěxĐâŕkśîđěŕ
What about failing to connect to or timing out connection to a server? You got placed in entry map but the game speed is about 5x as normal.
Re: Cache Files
Posted: Wed Nov 19, 2008 10:41 pm
by Bane
What about failing to connect to or timing out connection to a server? You got placed in entry map but the game speed is about 5x as normal.
The speed is probably because you're getting ~300 FPS.
As for packages, it will load anything on the server that you have, then download the rest and load them into memory as you download them (I think). If the join fails you keep them in memory. It does save time if you try to join again, same with reconnecting.
Re: Cache Files
Posted: Wed Nov 19, 2008 10:49 pm
by [§Ŕ] ŤhěxĐâŕkśîđěŕ
What's the actual difference between reconnecting and disconnecting+manual connecting again anyway?
Some servers, for example Zombie's, don't handle those two cases the same. By reconnecting you lose everything and by disconnecting and then connecting again from the server list or to the IP address directly (you don't actually even need to disconnect first, as it does it automatically), you keep your stuff.
Re: Cache Files
Posted: Thu Nov 20, 2008 10:34 am
by .:..:
What about failing to connect to or timing out connection to a server? You got placed in entry map but the game speed is about 5x as normal.
I belive this is a bug which causes level to get multiple tick calls in 1 tick.
@ Off topic: You may reconnect too quickly making it so you connect before "old" you have disconnected from server, which makes gametypes such as JCoopZ name you by default name (Player) as they dont allow multiple players have same name.
And as you may know inventory travel checks works by your player name.
Re: Cache Files
Posted: Thu Nov 20, 2008 11:40 am
by [§Ŕ] ŤhěxĐâŕkśîđěŕ
However, that speeding bug was happening more in older versions.
Re: Cache Files
Posted: Thu Nov 20, 2008 12:32 pm
by §tå£kër 3000
Ok i have figured out what is going on with the cache.
1. If only using cache in client, there is no problem.
2. If the .u file is updated on server, and the new .u file is installed in the client system folder, and.. the client has an old version of the .u file in cache, you get a mismatch, and keep getting a mismatch untill the old cache file is deleted, or... you remove the new .u file from system folder.
So I believe Hyper is on to something here, Unreal does in fact seem to check the cache files first.
I'm not sure if this matters but for the record, the server is version 225 and the client is version 227e
Re: Cache Files
Posted: Thu Nov 20, 2008 2:30 pm
by Bane
2. If the .u file is updated on server, and the new .u file is installed in the client system folder, and.. the client has an old version of the .u file in cache, you get a mismatch, and keep getting a mismatch untill the old cache file is deleted, or... you remove the new .u file from system folder.
Impossible. The files in the cache are given names from the package's GUID (Globally Unique IDentification). Every package has a GUID that is created by the compiler. Any normal modification made to a package, i.e. adding textures in Ued or recompiling in UCC, will generate a brand new GUID, even if no change is made. Unreal will look in the system directory with a file that has the same name as the package, but it will look in the cache directory for a file that has the same name as the GUID. If you have an older version of a file in your cache, unreal has no way of telling that it's related.
and keep getting a mismatch untill the old cache file is deleted, or... you remove the new .u file from system folder.
If mismatches are going away after removing the new version of the .u from your system file, then you simply don't have the right version of the file.
If the mismatches are actually caused 'by the cache', then the problem is that you loaded the old version of the file from the cache, i.e. for another server, and then tried to join a server running a different version of the same file. This is the only way you can get a mismatch from the cache.
Similarly, if unreal loads an old version of a file from the cache and you immediately put a good copy into your system folder, unreal will not try to load it because it already has a copy of the file loaded, and you keep getting mismatches. If you have problems with unwanted files loaded, type 'obj garbage'. If that doesn't work for whatever reason, close unreal and restart.
Re: Cache Files
Posted: Fri Nov 21, 2008 12:44 pm
by §tå£kër 3000
If the mismatches are actually caused 'by the cache', then the problem is that you loaded the old version of the file from the cache, i.e. for another server, and then tried to join a server running a different version of the same file. This is the only way you can get a mismatch from the cache.
That's what happened Bane , except it was my own server each time. No other servers were involved in this happening.
I know you guys think I'm coo coo for coa coa puffs,
but I'm telling you this has happened every time i update a file on the server and I have the prior cache file on the client....version. mismatch. once i delete that old cache file i can d/l the new cache file from server, but not untill I do.
Retraction... not everytime has it happened but, more times it has than not. For the record:
This never happened to me when I ran a 225 server and 226 client.
This has only happened to 227e client.
And I have run servers since 1999.
And i want to be clear here, that I do like Unreal version 227 much better, so i am not trying to cause problems in any way.
Re: Cache Files
Posted: Fri Nov 21, 2008 2:40 pm
by .:..:
Could it be that editor dosent update the GUID code when you save the package.. are you updating whatever you are doing with UnrealEd?
And what is this package; texture, mod, sound, music, map?
Re: Cache Files
Posted: Fri Nov 21, 2008 3:11 pm
by Bane
If the mismatches are actually caused 'by the cache', then the problem is that you loaded the old version of the file from the cache, i.e. for another server, and then tried to join a server running a different version of the same file. This is the only way you can get a mismatch from the cache.
That's what happened Bane , except it was my own server each time. No other servers were involved in this happening.
I know you guys think I'm coo coo for coa coa puffs,
but I'm telling you this has happened every time i update a file on the server and I have the prior cache file on the client....version. mismatch. once i delete that old cache file i can d/l the new cache file from server, but not untill I do.
Retraction... not everytime has it happened but, more times it has than not. For the record:
This never happened to me when I ran a 225 server and 226 client.
This has only happened to 227e client.
And I have run servers since 1999.
And i want to be clear here, that I do like Unreal version 227 much better, so i am not trying to cause problems in any way.
Does the version mismatch happen right after starting unreal? Or are you updating the files while you're playing on the server and then having the server switch maps? The latter would definitely give a version mismatch, exactly as I said in the other post. It doesn't matter if it's someone else's server or not; your client loads, from the cache, one version of a file and then you try to join a server (even though it's the same server, the file is different because you updated it. That is all that matters) running a different version of the file.
If you are getting the errors after closing and restarting unreal (but without also messing around with the cache/system folder; I mean just close and immediately start unreal again), then I have no idea what to say because that should be impossible.
Could it be that editor dosent update the GUID code when you save the package.. are you updating whatever you are doing with UnrealEd?
And what is this package; texture, mod, sound, music, map?
That wouldn't give a version mismatch error though, because that is determined by the GUID. If you got any kind of error from joining a server that uses a different version of a file you had but with the same GUID, it'd be the assertion failed error you get from using net-incompatible files.
Re: Cache Files
Posted: Fri Nov 21, 2008 4:04 pm
by §tå£kër 3000
1. The .u file is updated on another computer that has unreal 225 installed, used strickly for editing.
The server and the client versions are also on seperate computers.
2. I sut down the server if running, to install the new file.
3. I start up the server (225) via .bat file
4. I start the 227e client and connect to the server to get the new cache file, leaving the old cache file still installed in cache folder.
Sometimes it will download the cache and add a new guid entry for the file.
IE, I may have 2 seperate entries for stalker items.u
with their own seperate guid # which means to me, the old cache file is still there but it has also downloaded the new cach file, made a new entry for the same file name with a different guid# and i can connect. I know this because the cache .ini shows two seperate entries for the same file name.
Also, if i instead install the new .u file in the client instead of d/l the cache and I have the old cache file still in the client, I will get a mismatch.
The problem here is it's an intermittent problem, it doesn't happen every single time, but it does happen most of the time,
with either way i do this.
And yea, the Computer I use UE on contains all the current server files.
Also I have mistakenly, put the wrong .u file in client and get a mismatch which I understand why that would mismatch.
The last time though, was a small .u file and I doublechecked, both the file on the server, and on the client and they had the same date and time, right down to the second, and same size, I even looked at both in unreal ed and they were the same for sure.
So again, new .u file +old cache file on client sometimes mismatches.
New .u file in server +old cache file and no installed new .u file in client= mismatch, but not always :/
This hasn't happened with maps.
Only with .u files such as new items/or weps. that were added to the same .u file used prevously, and edited with the same .u file loaded in UE.
sheesh that was a mouthfull
Re: Cache Files
Posted: Fri Nov 21, 2008 4:18 pm
by [§Ŕ] ŤhěxĐâŕkśîđěŕ
Also, if i instead install the new .u file in the client instead of d/l the cache and I have the old cache file still in the client, I will get a mismatch.
Shouldn't Unreal ALWAYS look for an .u file first?
