Code: Select all
Is469 = InStr(LevelInfo.ConsoleCommand("get Engine.GameEngine MD5Version"), "MD5Version") == -1;
if (!Is469)
Log("Too old engine version. Some checks will be disabled. Consider upgrade to 469+.", Class.Name);
...
if (Is469)
if ((gTexture.USize > 256 || gTexture.VSize > 256) && gTexture.Mips.Length == 0)
report = report @ "size bigger from 256x256 and no mipmaps,";
Code: Select all
// if (Is469) // Disabling/Mangling this check for good...
if ( gTexture.USize > 256 || gTexture.VSize > 256 )
{
MipProp = gTexture.GetPropertyText("Mips");
log (gTexture@"Mips ="@MipProp@"Length ="@Len(MipProp),class.name);
if ( Len(MipProp) < 22 )
report = report @ "size bigger than 256x256 and no mipmaps.";
}
Usually I'm using 440 or such + XC24 as long as "GetHumanName()" based messages are borked for MyLevel pawns in that 469D_XP and the sound starts doing small pops when I'm not moving for a while...
PS: I found the problem from map MH-SK_Godz.unr... I claim myself: Guilty !
Edit: For the record, ALL NAVIGATION POINTS should be held in Level unless you want client screwed up and later barking for a game upgrade. We are happily creating non-static Teleporters, nor bNoDelete ones, and these are recreated in client screwing their Navigation Chain and letting ReachSpecs to have links at destroyed Actors. Game keeps running somehow in client a few sessions because client does not control Artificial Intelligence (only in special situations a la sektor2111), either way a Path related function called there would crash game instantly. The rest of old "garbage collector" issues are nothing surprising when we do such practices.