Skip to content

[1.11.1] Known game compatibility issues as revealed with Unit-Test 'TestPackages' #122

@EliotVU

Description

@EliotVU

Borderlands: 'Couldn't load object Class'Engine.Actor' as type UELib.Core.UClass due thrown exception'

the decompilation of the replication block for Class'Engine.Actor' fails miserably:

Assert.Fail failed. UELib.DeserializationException: Couldn't load object Class'Engine.Actor' as type UELib.Core.UClass due thrown exception Microsoft.VisualStudio.TestTools.UnitTesting.AssertFailedException: Assert.Fail failed. System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. (Parameter 'index')
   at System.Collections.Generic.List`1.get_Item(Int32 index)
   at UELib.UnrealPackage.IndexToObject[T](Int32 packageIndex) in C:\Projecten\UEExplorerHotFix\UELib\src\UnrealPackage.cs:line 3666
   at UELib.UObjectStream.ReadObject[T]() in C:\Projecten\UEExplorerHotFix\UELib\src\UnrealStream.cs:line 1008
   at UELib.Core.UStruct.UByteCodeDecompiler.FieldToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\FieldTokens.cs:line 17
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.BoolVariableToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\FieldTokens.cs:line 129
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.ContextToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\ContextTokens.cs:line 61
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.SkipToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\JumpTokens.cs:line 716
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.FunctionToken.DeserializeCall(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\FunctionTokens.cs:line 30
   at UELib.Core.UStruct.UByteCodeDecompiler.NativeFunctionToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\FunctionTokens.cs:line 317
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.SkipToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\JumpTokens.cs:line 716
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.FunctionToken.DeserializeCall(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\FunctionTokens.cs:line 30
   at UELib.Core.UStruct.UByteCodeDecompiler.NativeFunctionToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\FunctionTokens.cs:line 317
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.SkipToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\JumpTokens.cs:line 716
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.NewToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\OtherTokens.cs:line 238
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.SkipToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\JumpTokens.cs:line 716
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.FunctionToken.DeserializeCall(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\FunctionTokens.cs:line 30
   at UELib.Core.UStruct.UByteCodeDecompiler.NativeFunctionToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\FunctionTokens.cs:line 317
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.Deserialize() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 136
   at Microsoft.VisualStudio.TestTools.UnitTesting.Assert.ThrowAssertFailed(String assertionName, String message) in /_/src/TestFramework/TestFramework/Assertions/Assert.cs:line 57
   at Microsoft.VisualStudio.TestTools.UnitTesting.Assert.Fail(String message, Object[] parameters) in /_/src/TestFramework/TestFramework/Assertions/Assert.Fail.cs:line 52
   at Microsoft.VisualStudio.TestTools.UnitTesting.Assert.Fail(String message) in /_/src/TestFramework/TestFramework/Assertions/Assert.Fail.cs:line 35
   at Eliot.UELib.Test.TestLogService.SilentException(Exception exception) in C:\Projecten\UEExplorerHotFix\UELib\Test\TestLogService.cs:line 21
   at UELib.Core.UStruct.UByteCodeDecompiler.Deserialize() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 155
   at UELib.Core.UStruct.Deserialize() in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Classes\UStruct.cs:line 349
   at UELib.Core.UState.Deserialize() in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Classes\UState.cs:line 60
   at UELib.Core.UClass.Deserialize() in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Classes\UClass.cs:line 155
   at UELib.Core.UObject.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Classes\UObject.cs:line 428
   at UELib.Core.UObject.Load(UObjectStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Classes\UObject.cs:line 258
 ---> Microsoft.VisualStudio.TestTools.UnitTesting.AssertFailedException: Assert.Fail failed. System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. (Parameter 'index')
   at System.Collections.Generic.List`1.get_Item(Int32 index)
   at UELib.UnrealPackage.IndexToObject[T](Int32 packageIndex) in C:\Projecten\UEExplorerHotFix\UELib\src\UnrealPackage.cs:line 3666
   at UELib.UObjectStream.ReadObject[T]() in C:\Projecten\UEExplorerHotFix\UELib\src\UnrealStream.cs:line 1008
   at UELib.Core.UStruct.UByteCodeDecompiler.FieldToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\FieldTokens.cs:line 17
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.BoolVariableToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\FieldTokens.cs:line 129
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.ContextToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\ContextTokens.cs:line 61
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.SkipToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\JumpTokens.cs:line 716
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.FunctionToken.DeserializeCall(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\FunctionTokens.cs:line 30
   at UELib.Core.UStruct.UByteCodeDecompiler.NativeFunctionToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\FunctionTokens.cs:line 317
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.SkipToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\JumpTokens.cs:line 716
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.FunctionToken.DeserializeCall(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\FunctionTokens.cs:line 30
   at UELib.Core.UStruct.UByteCodeDecompiler.NativeFunctionToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\FunctionTokens.cs:line 317
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.SkipToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\JumpTokens.cs:line 716
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.NewToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\OtherTokens.cs:line 238
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.SkipToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\JumpTokens.cs:line 716
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.FunctionToken.DeserializeCall(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\FunctionTokens.cs:line 30
   at UELib.Core.UStruct.UByteCodeDecompiler.NativeFunctionToken.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Tokens\FunctionTokens.cs:line 317
   at UELib.Core.UStruct.UByteCodeDecompiler.DeserializeNext() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 230
   at UELib.Core.UStruct.UByteCodeDecompiler.Deserialize() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 136
   at Microsoft.VisualStudio.TestTools.UnitTesting.Assert.ThrowAssertFailed(String assertionName, String message) in /_/src/TestFramework/TestFramework/Assertions/Assert.cs:line 57
   at Microsoft.VisualStudio.TestTools.UnitTesting.Assert.Fail(String message, Object[] parameters) in /_/src/TestFramework/TestFramework/Assertions/Assert.Fail.cs:line 52
   at Microsoft.VisualStudio.TestTools.UnitTesting.Assert.Fail(String message) in /_/src/TestFramework/TestFramework/Assertions/Assert.Fail.cs:line 35
   at Eliot.UELib.Test.TestLogService.SilentException(Exception exception) in C:\Projecten\UEExplorerHotFix\UELib\Test\TestLogService.cs:line 21
   at UELib.Core.UStruct.UByteCodeDecompiler.Deserialize() in C:\Projecten\UEExplorerHotFix\UELib\src\ByteCodeDecompiler.cs:line 155
   at UELib.Core.UStruct.Deserialize() in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Classes\UStruct.cs:line 349
   at UELib.Core.UState.Deserialize() in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Classes\UState.cs:line 60
   at UELib.Core.UClass.Deserialize() in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Classes\UClass.cs:line 155
   at UELib.Core.UObject.Deserialize(IUnrealStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Classes\UObject.cs:line 428
   at UELib.Core.UObject.Load(UObjectStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Classes\UObject.cs:line 258
   --- End of inner exception stack trace ---
   at UELib.Core.UObject.Load(UObjectStream stream) in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Classes\UObject.cs:line 265
   at UELib.Core.UObject.Load[T]() in C:\Projecten\UEExplorerHotFix\UELib\src\Core\Classes\UObject.cs:line 217

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions