TrinityCore / WowPacketParser

World of Warcraft Packet Parser
GNU General Public License v3.0
431 stars 356 forks source link

Broken parsing of 5.x sniffs #290

Closed Kittnz closed 7 years ago

Kittnz commented 7 years ago

Several mop and wod sniffs are broken and can't be parsed.

joschiwald commented 7 years ago

a bit more input will be helpful

Kittnz commented 7 years ago

C:\WowPacketParser\WowPacketParser\bin\Debug>WowPacketParser.exe 19342_2014-12-27_18-27-04_009FED8C.pkt
Loading module WowPacketParserModule.V6_0_2_19033.dll
[1/1 19342_2014-12-27_18-27-04_009FED8C.pkt] System.Reflection.TargetInvocationException
[1/1 19342_2014-12-27_18-27-04_009FED8C.pkt] Het doel van een aanroep heeft een uitzondering veroorzaakt.
[1/1 19342_2014-12-27_18-27-04_009FED8C.pkt]    bij System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
   bij System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
   bij System.RuntimeType.CreateInstanceImpl(BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes, StackCrawlMark& stackMark)
   bij System.Activator.CreateInstance(Type type, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes)
   bij System.Activator.CreateInstance(Type type, Object[] args)
   bij WowPacketParser.Hotfix.HotfixStoreMgr.LoadStores(Assembly asm) in C:\WowPacketParser\WowPacketParser\Hotfix\HotfixStore.cs:regel 78
   bij WowPacketParser.Misc.ClientVersion.SetVersion(ClientVersionBuild version) in C:\WowPacketParser\WowPacketParser\Misc\ClientVersion.cs:regel 430
   bij WowPacketParser.Loading.BinaryPacketReader.SetBuild(UInt32 build) in C:\WowPacketParser\WowPacketParser\Loading\BinaryPacketReader.cs:regel 126
   bij WowPacketParser.Loading.BinaryPacketReader.ReadHeader() in C:\WowPacketParser\WowPacketParser\Loading\BinaryPacketReader.cs:regel 94
   bij WowPacketParser.Loading.BinaryPacketReader..ctor(SniffType type, String fileName, Encoding encoding) in C:\WowPacketParser\WowPacketParser\Loading\BinaryPacketReader.cs:regel 38
   bij WowPacketParser.Loading.Reader.GetPacketReader(String fileName, SniffType type) in C:\WowPacketParser\WowPacketParser\Loading\Reader.cs:regel 23
   bij WowPacketParser.Loading.Reader..ctor(String fileName, SniffType type) in C:\WowPacketParser\WowPacketParser\Loading\Reader.cs:regel 18
   bij WowPacketParser.Loading.SniffFile.ProcessFileImpl() in C:\WowPacketParser\WowPacketParser\Loading\SniffFile.cs:regel 166
   bij WowPacketParser.Loading.SniffFile.ProcessFile() in C:\WowPacketParser\WowPacketParser\Loading\SniffFile.cs:regel 85
Kittnz commented 7 years ago

Gonna reopen because the 5.x sniffs are still not parseable. 6.x is fixed.

Kittnz commented 7 years ago

5.X error:

C:\WowPacketParser_sniff_data\WowPacketParser\bin\Release>WowPacketParser.exe worgen_startingzone_full_lvl1to11.pkt
Loading module WowPacketParserModule.V5_4_7_17898.dll
[1/1 worgen_startingzone_full_lvl1to11.pkt]: Parsing 32.7MB of packets. Detected version V5_4_7_18019
Processing... 100% complete
[1/1 worgen_startingzone_full_lvl1to11.pkt]: Saved file to 'worgen_startingzone_full_lvl1to11_parsed.txt'
[1/1 worgen_startingzone_full_lvl1to11.pkt]: Parsed 322325 (97.711%) packets successfully, 940 (0.285%) with errors, skipped 6402 (1.941%) and without structure 210 (0.064%)  (total: 329877) in 00:00:08.192
1/40 - Write AreaTriggerTemplateData
2/40 - Write AreaTriggerTemplateVerticesData
Error: Couldn't generate SQL output of GameObjectTemplateAddon since the targeted database and the sniff version don't match.
3/40 - Write Hotfixes
[1/1 worgen_startingzone_full_lvl1to11.pkt] System.NullReferenceException
[1/1 worgen_startingzone_full_lvl1to11.pkt] De objectverwijzing is niet op een exemplaar van een object ingesteld.
[1/1 worgen_startingzone_full_lvl1to11.pkt]    bij _DynamicMethod1(BroadcastTextEntry , StringBuilder , StringBuilder )
   bij WowPacketParser.Hotfix.IHotfixSerializer`1.SerializeStore(HotfixStore`1 store, StringBuilder hotfixBuilder, StringBuilder localeBuilder) in C:\WowPacketParser_sniff_data\WowPacketParser\Hotfix\IHotfixSerializer.cs:regel 293
   bij WowPacketParser.SQL.Builders.HotfixBuilder.Hotfixes() in C:\WowPacketParser_sniff_data\WowPacketParser\SQL\Builders\HotfixBuilder.cs:regel 22
--- Einde van stacktracering vanaf vorige locatie waar uitzondering is opgetreden ---
   bij System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   bij WowPacketParser.SQL.Builder.DumpSQL(String prefix, String fileName, String header) in C:\WowPacketParser_sniff_data\WowPacketParser\SQL\Builder.cs:regel 138
   bij WowPacketParser.Loading.SniffFile.WriteSQLs() in C:\WowPacketParser_sniff_data\WowPacketParser\Loading\SniffFile.cs:regel 519
   bij WowPacketParser.Loading.SniffFile.ProcessFileImpl() in C:\WowPacketParser_sniff_data\WowPacketParser\Loading\SniffFile.cs:regel 272
   bij WowPacketParser.Loading.SniffFile.ProcessFile() in C:\WowPacketParser_sniff_data\WowPacketParser\Loading\SniffFile.cs:regel 85`

Loop in another 5.x sniff Worgen1-5.pkt


System.Collections.ListDictionaryInternal
System.ArgumentOutOfRangeException
Toe te voegen waarde ligt buiten de reeks.
Parameternaam: value
   bij System.DateTime.Add(Double value, Int32 scale)
   bij WowPacketParser.Misc.Utilities.GetDateTimeFromUnixTime(Double unixTime) in C:\WowPacketParser_sniff_data\WowPacketParser\Misc\Utilities.cs:regel 20
   bij WowPacketParser.Loading.BinaryPacketReader.Read(Int32 number, String fileName) in C:\WowPacketParser_sniff_data\WowPacketParser\Loading\BinaryPacketReader.cs:regel 248
   bij WowPacketParser.Loading.Reader.TryRead(Packet& packet) in C:\WowPacketParser_sniff_data\WowPacketParser\Loading\Reader.cs:regel 33
System.Collections.ListDictionaryInternal
System.ArgumentOutOfRangeException
Toe te voegen waarde ligt buiten de reeks.
Parameternaam: value
   bij System.DateTime.Add(Double value, Int32 scale)
   bij WowPacketParser.Misc.Utilities.GetDateTimeFromUnixTime(Double unixTime) in C:\WowPacketParser_sniff_data\WowPacketParser\Misc\Utilities.cs:regel 20
   bij WowPacketParser.Loading.BinaryPacketReader.Read(Int32 number, String fileName) in C:\WowPacketParser_sniff_data\WowPacketParser\Loading\BinaryPacketReader.cs:regel 248
   bij WowPacketParser.Loading.Reader.TryRead(Packet& packet) in C:\WowPacketParser_sniff_data\WowPacketParser\Loading\Reader.cs:regel 33
System.Collections.ListDictionaryInternal
System.ArgumentOutOfRangeException
Kittnz commented 7 years ago

Works now!