From 7745f2dcaa2c409c19c6e79bf1eaa2bc41444be0 Mon Sep 17 00:00:00 2001 From: Arda Serdar Pektezol <1669855+pektezol@users.noreply.github.com> Date: Sat, 23 Sep 2023 17:46:12 +0300 Subject: lp parser: only get portal count and cm ticks --- pkg/classes/consoleCmd.go | 4 ---- pkg/classes/customData.go | 4 ---- pkg/classes/dataTables.go | 13 ------------ pkg/classes/packet.go | 9 --------- pkg/classes/sarData.go | 49 +++++++++++++-------------------------------- pkg/classes/signOn.go | 9 --------- pkg/classes/stop.go | 2 -- pkg/classes/stringTables.go | 14 ------------- pkg/classes/userCmd.go | 9 --------- 9 files changed, 14 insertions(+), 99 deletions(-) (limited to 'pkg/classes') diff --git a/pkg/classes/consoleCmd.go b/pkg/classes/consoleCmd.go index 75a56eb..fa9bbd0 100644 --- a/pkg/classes/consoleCmd.go +++ b/pkg/classes/consoleCmd.go @@ -1,10 +1,7 @@ package classes import ( - "strings" - "github.com/pektezol/bitreader" - "github.com/pektezol/demoparser/pkg/writer" ) type ConsoleCmd struct { @@ -15,5 +12,4 @@ type ConsoleCmd struct { func (consoleCmd *ConsoleCmd) ParseConsoleCmd(reader *bitreader.Reader) { consoleCmd.Size = reader.TryReadSInt32() consoleCmd.Data = reader.TryReadStringLength(uint64(consoleCmd.Size)) - writer.AppendLine("\t%s", strings.TrimSpace(consoleCmd.Data)) } diff --git a/pkg/classes/customData.go b/pkg/classes/customData.go index 2dadde4..59cb121 100644 --- a/pkg/classes/customData.go +++ b/pkg/classes/customData.go @@ -2,7 +2,6 @@ package classes import ( "github.com/pektezol/bitreader" - "github.com/pektezol/demoparser/pkg/writer" ) type CustomData struct { @@ -16,13 +15,10 @@ func (customData *CustomData) ParseCustomData(reader *bitreader.Reader, tickNumb customData.Size = reader.TryReadSInt32() if customData.Type != 0 || customData.Size == 8 { // Not SAR data - writer.AppendLine("[%d] %s (%d):", tickNumber, "CUSTOMDATA", packetType) customData.Data = string(reader.TryReadBytesToSlice(uint64(customData.Size))) - writer.AppendLine("\t%s", customData.Data) return } // SAR data - writer.AppendLine("[%d] %s (%d):", tickNumber, "SARDATA", packetType) sarData := SarData{} data := reader.TryReadBytesToSlice(uint64(customData.Size)) sarReader := bitreader.NewReaderFromBytes(data, true) diff --git a/pkg/classes/dataTables.go b/pkg/classes/dataTables.go index 27ab9e4..c17e5f6 100644 --- a/pkg/classes/dataTables.go +++ b/pkg/classes/dataTables.go @@ -4,7 +4,6 @@ import ( "fmt" "github.com/pektezol/bitreader" - "github.com/pektezol/demoparser/pkg/writer" ) type DataTables struct { @@ -46,14 +45,10 @@ func (dataTables *DataTables) ParseDataTables(reader *bitreader.Reader) { count++ dataTables.SendTable = append(dataTables.SendTable, ParseSendTable(dataTableReader)) } - writer.AppendLine("\t%d Send Tables:", count) - writer.AppendOutputFromTemp() numOfClasses := dataTableReader.TryReadBits(16) for count = 0; count < int(numOfClasses); count++ { dataTables.ServerClassInfo = append(dataTables.ServerClassInfo, ParseServerClassInfo(dataTableReader, count, int(numOfClasses))) } - writer.AppendLine("\t%d Classes:", count) - writer.AppendOutputFromTemp() } func ParseSendTable(reader *bitreader.Reader) SendTable { @@ -65,7 +60,6 @@ func ParseSendTable(reader *bitreader.Reader) SendTable { if sendTable.NumOfProps < 0 { return sendTable } - writer.TempAppendLine("\t\t%s (%d Props):", sendTable.NetTableName, sendTable.NumOfProps) for count := 0; count < int(sendTable.NumOfProps); count++ { propType := int8(reader.TryReadBits(5)) if propType >= int8(7) { @@ -77,26 +71,20 @@ func ParseSendTable(reader *bitreader.Reader) SendTable { SendPropFlags: uint32(reader.TryReadBits(19)), Priority: reader.TryReadUInt8(), } - writer.TempAppend("\t\t\t%s\t", prop.SendPropType) if propType == int8(ESendPropTypeDataTable) || checkBit(prop.SendPropFlags, 6) { prop.ExcludeDtName = reader.TryReadString() - writer.TempAppend(":\t%s\t", prop.ExcludeDtName) } else { switch propType { case int8(ESendPropTypeString), int8(ESendPropTypeInt), int8(ESendPropTypeFloat), int8(ESendPropTypeVector3), int8(ESendPropTypeVector2): prop.LowValue = reader.TryReadFloat32() prop.HighValue = reader.TryReadFloat32() prop.NumBits = int32(reader.TryReadBits(7)) - writer.TempAppend("Low: %f\tHigh: %f\t%d bits\t", prop.LowValue, prop.HighValue, prop.NumBits) case int8(ESendPropTypeArray): prop.NumElements = int32(reader.TryReadBits(10)) - writer.TempAppend("Elements: %d\t", prop.NumElements) default: - writer.TempAppend("Unknown Prop Type: %v\t", propType) return sendTable } } - writer.TempAppend("Flags: %v\tPriority: %d\n", prop.GetFlags(), prop.Priority) sendTable.Props = append(sendTable.Props, prop) } return sendTable @@ -108,7 +96,6 @@ func ParseServerClassInfo(reader *bitreader.Reader, count int, numOfClasses int) ClassName: reader.TryReadString(), DataTableName: reader.TryReadString(), } - writer.TempAppendLine("\t\t\t[%d] %s (%s)", serverClassInfo.ClassId, serverClassInfo.ClassName, serverClassInfo.DataTableName) return serverClassInfo } diff --git a/pkg/classes/packet.go b/pkg/classes/packet.go index 0bba102..c608244 100644 --- a/pkg/classes/packet.go +++ b/pkg/classes/packet.go @@ -5,7 +5,6 @@ import ( "github.com/pektezol/bitreader" "github.com/pektezol/demoparser/pkg/messages" - "github.com/pektezol/demoparser/pkg/writer" ) const MSSC int = 2 @@ -55,14 +54,6 @@ func (packet *Packet) ParseCmdInfo(reader *bitreader.Reader) { ViewAngles2: []float32{reader.TryReadFloat32(), reader.TryReadFloat32(), reader.TryReadFloat32()}, LocalViewAngles2: []float32{reader.TryReadFloat32(), reader.TryReadFloat32(), reader.TryReadFloat32()}, }) - writer.AppendLine("\tFlags: %s", CmdInfoFlags(packet.PacketInfo[len(packet.PacketInfo)-1].Flags).String()) - writer.AppendLine("\tView Origin: %v", packet.PacketInfo[len(packet.PacketInfo)-1].ViewOrigin) - writer.AppendLine("\tView Angles: %v", packet.PacketInfo[len(packet.PacketInfo)-1].ViewAngles) - writer.AppendLine("\tLocal View Angles: %v", packet.PacketInfo[len(packet.PacketInfo)-1].LocalViewAngles) - writer.AppendLine("\tView Origin 2: %v", packet.PacketInfo[len(packet.PacketInfo)-1].ViewOrigin2) - writer.AppendLine("\tView Angles 2: %v", packet.PacketInfo[len(packet.PacketInfo)-1].ViewAngles2) - writer.AppendLine("\tLocal View Angles 2: %v", packet.PacketInfo[len(packet.PacketInfo)-1].LocalViewAngles2) - writer.AppendLine("") } type CmdInfoFlags int diff --git a/pkg/classes/sarData.go b/pkg/classes/sarData.go index 27e8a64..9c61304 100644 --- a/pkg/classes/sarData.go +++ b/pkg/classes/sarData.go @@ -5,7 +5,6 @@ import ( "fmt" "github.com/pektezol/bitreader" - "github.com/pektezol/demoparser/pkg/writer" ) type SarDataType uint8 @@ -164,7 +163,6 @@ func (sarData *SarData) ParseSarData(reader *bitreader.Reader) (err error) { len = 9 } dataReader := bitreader.NewReaderFromBytes(reader.TryReadBytesToSlice(len-1), true) - writer.AppendLine("\tMessage: %s (%d):", sarData.Type.String(), sarData.Type) switch sarData.Type { case ESarDataTimescaleCheat: sarData.Data, err = parseTimescaleCheatData(dataReader, len) @@ -175,7 +173,6 @@ func (sarData *SarData) ParseSarData(reader *bitreader.Reader) (err error) { sarData.Data = parseInitialCVarData(dataReader) case ESarDataEntityInputSlot: sarData.Slot = int(dataReader.TryReadBytes(1)) - writer.AppendLine("\t\tSlot: %d", sarData.Slot) case ESarDataEntityInput: sarData.Data = parseEntityInputData(dataReader) case ESarDataChecksum: @@ -201,7 +198,7 @@ func (sarData *SarData) ParseSarData(reader *bitreader.Reader) (err error) { if err != nil { sarData.Data = nil } - writer.AppendLine("\t\tSlot: %d", sarData.Slot) + case ESarDataPause: sarData.Data, err = parsePauseData(dataReader, len) if err != nil { @@ -246,7 +243,7 @@ func parseTimescaleCheatData(reader *bitreader.Reader, length uint64) (SarDataTi sarDataTimescaleCheat := SarDataTimescaleCheat{ Timescale: reader.TryReadFloat32(), } - writer.AppendLine("\t\tTimescale: %f", sarDataTimescaleCheat.Timescale) + return sarDataTimescaleCheat, nil } @@ -255,7 +252,7 @@ func parseInitialCVarData(reader *bitreader.Reader) SarDataInitialCVar { CVar: reader.TryReadString(), Val: reader.TryReadString(), } - writer.AppendLine("\t\tCvar: \"%s\" = \"%s\"", sarDataInitialCvar.CVar, sarDataInitialCvar.Val) + return sarDataInitialCvar } @@ -266,10 +263,7 @@ func parseEntityInputData(reader *bitreader.Reader) SarDataEntityInput { InputName: reader.TryReadString(), Parameter: reader.TryReadString(), } - writer.AppendLine("\t\tTarget: %s", sarDataEntityInput.TargetName) - writer.AppendLine("\t\tClass: %s", sarDataEntityInput.ClassName) - writer.AppendLine("\t\tInput: %s", sarDataEntityInput.InputName) - writer.AppendLine("\t\tParameter: %s", sarDataEntityInput.Parameter) + return sarDataEntityInput } @@ -281,8 +275,7 @@ func parseChecksumData(reader *bitreader.Reader, length uint64) (SarDataChecksum DemoSum: reader.TryReadUInt32(), SarSum: reader.TryReadUInt32(), } - writer.AppendLine("\t\tDemo Checksum: %d", sarDataChecksum.DemoSum) - writer.AppendLine("\t\tSAR Checksum: %d", sarDataChecksum.SarSum) + return sarDataChecksum, nil } @@ -294,8 +287,7 @@ func parseChecksumV2Data(reader *bitreader.Reader, length uint64) (SarDataChecks SarSum: reader.TryReadUInt32(), Signature: [64]byte(reader.TryReadBytesToSlice(60)), } - writer.AppendLine("\t\tSAR Checksum: %d", sarDataChecksumV2.SarSum) - writer.AppendLine("\t\tSignature: %v", sarDataChecksumV2.Signature) + return sarDataChecksumV2, nil } @@ -312,10 +304,7 @@ func parsePortalPlacementData(reader *bitreader.Reader, length uint64) (SarDataP Y: reader.TryReadFloat32(), Z: reader.TryReadFloat32(), } - writer.AppendLine("\t\tOrange: %t", orange) - writer.AppendLine("\t\tX: %f", sarDataPortalPlacement.X) - writer.AppendLine("\t\tY: %f", sarDataPortalPlacement.Y) - writer.AppendLine("\t\tZ: %f", sarDataPortalPlacement.Z) + return sarDataPortalPlacement, slot, nil } @@ -333,7 +322,7 @@ func parsePauseData(reader *bitreader.Reader, length uint64) (SarDataPause, erro sarDataPause := SarDataPause{ PauseTicks: reader.TryReadUInt32(), } - writer.AppendLine("\t\tPause Ticks: %d", sarDataPause.PauseTicks) + return sarDataPause, nil } @@ -345,8 +334,7 @@ func parseWaitRunData(reader *bitreader.Reader, length uint64) (SarDataWaitRun, Ticks: int(reader.TryReadUInt32()), Cmd: reader.TryReadString(), } - writer.AppendLine("\t\tTicks: %d", sarDataWaitRun.Ticks) - writer.AppendLine("\t\tCmd: \"%s\"", sarDataWaitRun.Cmd) + return sarDataWaitRun, nil } @@ -358,8 +346,7 @@ func parseHWaitRunData(reader *bitreader.Reader, length uint64) (SarDataHWaitRun Ticks: int(reader.TryReadUInt32()), Cmd: reader.TryReadString(), } - writer.AppendLine("\t\tTicks: %d", sarDataHWaitRun.Ticks) - writer.AppendLine("\t\tCmd: \"%s\"", sarDataHWaitRun.Cmd) + return sarDataHWaitRun, nil } @@ -372,14 +359,12 @@ func parseSpeedrunTimeData(reader *bitreader.Reader, length uint64) (SarDataSpee for splitCount := 0; splitCount < int(numberOfSplits); splitCount++ { splits[splitCount].Name = reader.TryReadString() splits[splitCount].NSegs = reader.TryReadUInt32() - writer.AppendLine("\t\t[%d] Split Name: \"%s\"", splitCount, splits[splitCount].Name) - writer.AppendLine("\t\t[%d] Number of Segments: %d", splitCount, splits[splitCount].NSegs) + splits[splitCount].Segs = make([]SarDataSpeedrunTimeSegs, splits[splitCount].NSegs) for segCount := 0; segCount < int(splits[splitCount].NSegs); segCount++ { splits[splitCount].Segs[segCount].Name = reader.TryReadString() splits[splitCount].Segs[segCount].Ticks = reader.TryReadUInt32() - writer.AppendLine("\t\t\t[%d] Segment Name: \"%s\"", segCount, splits[splitCount].Segs[segCount].Name) - writer.AppendLine("\t\t\t[%d] Segment Ticks: %d", segCount, splits[splitCount].Segs[segCount].Ticks) + } } return SarDataSpeedrunTime{ @@ -401,12 +386,7 @@ func parseTimestampData(reader *bitreader.Reader, length uint64) (SarDataTimesta Minute: timestamp[5], Second: timestamp[6], } - writer.AppendLine("\t\tYear: %d", sarDataTimeStamp.Year) - writer.AppendLine("\t\tMonth: %d", sarDataTimeStamp.Month) - writer.AppendLine("\t\tDay: %d", sarDataTimeStamp.Day) - writer.AppendLine("\t\tHour: %d", sarDataTimeStamp.Hour) - writer.AppendLine("\t\tMinute: %d", sarDataTimeStamp.Minute) - writer.AppendLine("\t\tSecond: %d", sarDataTimeStamp.Second) + return sarDataTimeStamp, nil } @@ -418,7 +398,6 @@ func parseFileChecksumData(reader *bitreader.Reader, length uint64) (SarDataFile Sum: reader.TryReadUInt32(), Path: reader.TryReadString(), } - writer.AppendLine("\t\tChecksum: %d", sarDataFileChecksum.Sum) - writer.AppendLine("\t\tPath: \"%s\"", sarDataFileChecksum.Path) + return sarDataFileChecksum, nil } diff --git a/pkg/classes/signOn.go b/pkg/classes/signOn.go index fad696c..5f004c0 100644 --- a/pkg/classes/signOn.go +++ b/pkg/classes/signOn.go @@ -3,7 +3,6 @@ package classes import ( "github.com/pektezol/bitreader" "github.com/pektezol/demoparser/pkg/messages" - "github.com/pektezol/demoparser/pkg/writer" ) type SignOn struct { @@ -41,12 +40,4 @@ func (signOn *SignOn) ParseCmdInfo(reader *bitreader.Reader) { ViewAngles2: []float32{reader.TryReadFloat32(), reader.TryReadFloat32(), reader.TryReadFloat32()}, LocalViewAngles2: []float32{reader.TryReadFloat32(), reader.TryReadFloat32(), reader.TryReadFloat32()}, }) - writer.AppendLine("\tFlags: %s", CmdInfoFlags(signOn.PacketInfo[len(signOn.PacketInfo)-1].Flags).String()) - writer.AppendLine("\tView Origin: %v", signOn.PacketInfo[len(signOn.PacketInfo)-1].ViewOrigin) - writer.AppendLine("\tView Angles: %v", signOn.PacketInfo[len(signOn.PacketInfo)-1].ViewAngles) - writer.AppendLine("\tLocal View Angles: %v", signOn.PacketInfo[len(signOn.PacketInfo)-1].LocalViewAngles) - writer.AppendLine("\tView Origin 2: %v", signOn.PacketInfo[len(signOn.PacketInfo)-1].ViewOrigin2) - writer.AppendLine("\tView Angles 2: %v", signOn.PacketInfo[len(signOn.PacketInfo)-1].ViewAngles2) - writer.AppendLine("\tLocal View Angles 2: %v", signOn.PacketInfo[len(signOn.PacketInfo)-1].LocalViewAngles2) - writer.AppendLine("") } diff --git a/pkg/classes/stop.go b/pkg/classes/stop.go index 753be19..96bc1e4 100644 --- a/pkg/classes/stop.go +++ b/pkg/classes/stop.go @@ -2,7 +2,6 @@ package classes import ( "github.com/pektezol/bitreader" - "github.com/pektezol/demoparser/pkg/writer" ) type Stop struct { @@ -12,6 +11,5 @@ type Stop struct { func (stop *Stop) ParseStop(reader *bitreader.Reader) { if reader.TryReadBool() { stop.RemainingData = reader.TryReadBitsToSlice(uint64(reader.TryReadRemainingBits())) - writer.AppendLine("\tRemaining Data: %v", stop.RemainingData) } } diff --git a/pkg/classes/stringTables.go b/pkg/classes/stringTables.go index 01939b2..45954be 100644 --- a/pkg/classes/stringTables.go +++ b/pkg/classes/stringTables.go @@ -2,7 +2,6 @@ package classes import ( "github.com/pektezol/bitreader" - "github.com/pektezol/demoparser/pkg/writer" ) type StringTables struct { @@ -46,7 +45,6 @@ func (stringTables *StringTables) ParseStringTables(reader *bitreader.Reader) { func (stringTable *StringTable) ParseStream(reader *bitreader.Reader) { stringTable.Name = reader.TryReadString() entryCount := reader.TryReadBits(16) - writer.AppendLine("\tTable Name: %s", stringTable.Name) stringTable.TableEntries = make([]StringTableEntry, entryCount) for i := 0; i < int(entryCount); i++ { @@ -54,12 +52,6 @@ func (stringTable *StringTable) ParseStream(reader *bitreader.Reader) { entry.Parse(reader) stringTable.TableEntries[i] = entry } - if entryCount != 0 { - writer.AppendLine("\t\t%d Table Entries:", entryCount) - writer.AppendOutputFromTemp() - } else { - writer.AppendLine("\t\tNo Table Entries") - } if reader.TryReadBool() { classCount := reader.TryReadBits(16) stringTable.Classes = make([]StringTableClass, classCount) @@ -69,10 +61,6 @@ func (stringTable *StringTable) ParseStream(reader *bitreader.Reader) { class.Parse(reader) stringTable.Classes[i] = class } - writer.AppendLine("\t\t%d Classes:", classCount) - writer.AppendOutputFromTemp() - } else { - writer.AppendLine("\t\tNo Class Entries") } } @@ -91,10 +79,8 @@ func (stringTableEntry *StringTableEntry) Parse(reader *bitreader.Reader) { func (stringTableClass *StringTableClass) Parse(reader *bitreader.Reader) { stringTableClass.Name = reader.TryReadString() - writer.TempAppendLine("\t\t\tName: %s", stringTableClass.Name) if reader.TryReadBool() { dataLen := reader.TryReadBits(16) stringTableClass.Data = reader.TryReadStringLength(dataLen) - writer.TempAppendLine("\t\t\tData: %s", stringTableClass.Data) } } diff --git a/pkg/classes/userCmd.go b/pkg/classes/userCmd.go index 24969f1..a4bf3d4 100644 --- a/pkg/classes/userCmd.go +++ b/pkg/classes/userCmd.go @@ -2,7 +2,6 @@ package classes import ( "github.com/pektezol/bitreader" - "github.com/pektezol/demoparser/pkg/writer" ) type UserCmd struct { @@ -78,14 +77,6 @@ func (userCmd *UserCmd) ParseUserCmdInfo(reader *bitreader.Reader) { if reader.TryReadBool() { userCmd.Data.MouseDy = reader.TryReadUInt16() } - writer.AppendLine("\tCommand Number: %v", userCmd.Data.CommandNumber) - writer.AppendLine("\tTick Count: %v", userCmd.Data.TickCount) - writer.AppendLine("\tView Angles: %v", []float32{userCmd.Data.ViewAnglesX, userCmd.Data.ViewAnglesY, userCmd.Data.ViewAnglesZ}) - writer.AppendLine("\tMovement: %v", []float32{userCmd.Data.ForwardMove, userCmd.Data.SideMove, userCmd.Data.UpMove}) - writer.AppendLine("\tButtons: %v", Buttons(userCmd.Data.Buttons).GetButtons()) - writer.AppendLine("\tImpulse: %v", userCmd.Data.Impulse) - writer.AppendLine("\tWeapon, Subtype: %v, %v", userCmd.Data.WeaponSelect, userCmd.Data.WeaponSubType) - writer.AppendLine("\tMouse Dx, Mouse Dy: %v, %v", userCmd.Data.MouseDx, userCmd.Data.MouseDy) } func (button Buttons) GetButtons() []string { -- cgit v1.2.3