diff options
author | pg9182 <96569817+pg9182@users.noreply.github.com> | 2022-10-02 11:59:55 -0400 |
---|---|---|
committer | pg9182 <96569817+pg9182@users.noreply.github.com> | 2022-10-02 11:59:55 -0400 |
commit | 805cd07f44834ed07db91ce1f0d955427abddf31 (patch) | |
tree | 2b2835a36cda5cc710775f8bdf69a273702b9a68 /pkg/pdata | |
parent | d03340b25c8540e1522dcbfdd4b05bab9827d0d4 (diff) | |
download | Atlas-805cd07f44834ed07db91ce1f0d955427abddf31.tar.gz Atlas-805cd07f44834ed07db91ce1f0d955427abddf31.zip |
pkg/pdata: Import R2Northstar data, generate parser
Diffstat (limited to 'pkg/pdata')
-rw-r--r-- | pkg/pdata/persistent_player_data_version_231.go | 14185 | ||||
-rw-r--r-- | pkg/pdata/persistent_player_data_version_231.pdef | 1515 | ||||
-rw-r--r-- | pkg/pdata/persistent_player_data_version_231_test.go | 43 | ||||
-rwxr-xr-x | pkg/pdata/placeholder_playerdata.pdata | bin | 0 -> 56306 bytes |
4 files changed, 15743 insertions, 0 deletions
diff --git a/pkg/pdata/persistent_player_data_version_231.go b/pkg/pdata/persistent_player_data_version_231.go new file mode 100644 index 0000000..61c929a --- /dev/null +++ b/pkg/pdata/persistent_player_data_version_231.go @@ -0,0 +1,14185 @@ +// Code generated by pdefgen; DO NOT EDIT. + +// Package pdata parses Titanfall 2 player data using the schema defined in persistent_player_data_version_231.pdef. +// +// Roundtrip marshal/unmarshal should be byte-identical except for extra data after +// the null terminator in strings or non-0/1 boolean values. Invalid enum values +// and trailing data after the pdata root struct are preserved. +package pdata + +//go:generate go run github.com/pg9182/atlas/pkg/pdef/pdefgen 231 + +import ( + "bytes" + _ "embed" + "encoding" + "encoding/binary" + "errors" + "fmt" + "io" + "math" + "strconv" +) + +const Version int32 = 231 + +//go:embed "persistent_player_data_version_231.pdef" +var rawPdef []byte + +func RawPdef() io.Reader { return bytes.NewReader(rawPdef) } + +var ( + ErrUnsupportedVersion = errors.New("unsupported pdata version") + ErrInvalidSize = errors.New("invalid size") + ErrInvalidEnumValue = errors.New("invalid enum value") // only used when encoding/decoding text/json (binary encode/decode will still preserve unknown values) +) + +func getString(b []byte) string { + for i, x := range b { + if x == '\x00' { + return string(b[:i]) + } + } + return string(b) +} +func getInt(b []byte) int32 { + return int32(binary.LittleEndian.Uint32(b)) +} +func getFloat(b []byte) float32 { + return math.Float32frombits(binary.LittleEndian.Uint32(b)) +} +func getBool(b []byte) bool { + return b[0] != 0 +} +func getEnum(b []byte) uint8 { + return b[0] +} +func must(err error) { + if err != nil { + panic(err) + } +} +func putString(b []byte, x string) error { + s := []byte(x) + if len(s) > len(s) { + return fmt.Errorf("string length %d too long for field length %d", len(s), len(b)) + } + for i, c := range s { + b[i] = c + } + for i := len(s); i < len(b); i++ { + b[i] = '\x00' + } + return nil +} +func putInt(b []byte, x int32) { + binary.LittleEndian.PutUint32(b, uint32(x)) +} +func putFloat(b []byte, x float32) { + binary.LittleEndian.PutUint32(b, math.Float32bits(x)) +} +func putBool(b []byte, x bool) { + if x { + b[0] = 1 + } else { + b[0] = 0 + } +} +func putEnum(b []byte, x uint8) { + b[0] = x +} + +type Pdata struct { + InitializedVersion int32 `json:"initializedVersion"` + AnnouncementVersionSeen int32 `json:"announcementVersionSeen"` + Xp int32 `json:"xp"` + PreviousXP int32 `json:"previousXP"` + Credits int32 `json:"credits"` + Xp_match [20]int32 `json:"xp_match"` + Xp_count [20]int32 `json:"xp_count"` + NetWorth int32 `json:"netWorth"` + MatchWin bool `json:"matchWin"` + MatchScoreEvent bool `json:"matchScoreEvent"` + MatchComplete bool `json:"matchComplete"` + MatchSquadBonus bool `json:"matchSquadBonus"` + ShowGameSummary bool `json:"showGameSummary"` + RegenShowNew bool `json:"regenShowNew"` + SpawnAsTitan bool `json:"spawnAsTitan"` + HaveSeenCustomCoop bool `json:"haveSeenCustomCoop"` + FactionGiftsFixed bool `json:"factionGiftsFixed"` + IsACheater bool `json:"isACheater"` + SpendDoubleColiseumTickets bool `json:"spendDoubleColiseumTickets"` + PrivateMatchState int32 `json:"privateMatchState"` + PlaylistShuffle_seed int32 `json:"playlistShuffle_seed"` + PlaylistShuffle_seedFlip bool `json:"playlistShuffle_seedFlip"` + PlaylistShuffle_curIndex int32 `json:"playlistShuffle_curIndex"` + LastFDTitanRef string `json:"lastFDTitanRef"` + LastFDDifficulty int32 `json:"lastFDDifficulty"` + UltimateEdition bool `json:"ultimateEdition"` + RandomColiseumUnlocks int32 `json:"randomColiseumUnlocks"` + RandomPlayerLevelUnlocks int32 `json:"randomPlayerLevelUnlocks"` + RandomTitanLevelUnlocks [TitanClassesCount]int32 `json:"randomTitanLevelUnlocks"` + RandomWeaponLevelUnlocks [LoadoutWeaponsAndAbilitiesCount]int32 `json:"randomWeaponLevelUnlocks"` + RandomFactionLevelUnlocks [FactionCount]int32 `json:"randomFactionLevelUnlocks"` + DoubleXP int32 `json:"doubleXP"` + ColiseumTickets int32 `json:"coliseumTickets"` + ColiseumWinStreak int32 `json:"coliseumWinStreak"` + ColiseumBestStreak int32 `json:"coliseumBestStreak"` + ColiseumTotalWins int32 `json:"coliseumTotalWins"` + ColiseumTotalLosses int32 `json:"coliseumTotalLosses"` + RecentUnlocks [10]RecentUnlock `json:"recentUnlocks"` + HasBeenIntroducedToComms bool `json:"hasBeenIntroducedToComms"` + LastCommsUseDate int32 `json:"lastCommsUseDate"` + NumTimesUsedComms int32 `json:"numTimesUsedComms"` + Custom_emoji_initialized bool `json:"custom_emoji_initialized"` + Custom_emoji [4]int32 `json:"custom_emoji"` + BurnmeterSlot int32 `json:"burnmeterSlot"` + Pve PveData `json:"pve"` + FactionChoice Faction `json:"factionChoice"` + EnemyFaction Faction `json:"enemyFaction"` + PersistentRewards [32]bool `json:"persistentRewards"` + ConsumableRewards [32]int32 `json:"consumableRewards"` + PilotSpawnLoadout SpawnLoadout `json:"pilotSpawnLoadout"` + TitanSpawnLoadout SpawnLoadout `json:"titanSpawnLoadout"` + ActivePilotLoadout PilotLoadout `json:"activePilotLoadout"` + ActiveTitanLoadout TitanLoadout `json:"activeTitanLoadout"` + ActiveTitanLoadoutIndex int32 `json:"activeTitanLoadoutIndex"` + PilotLoadouts [10]PilotLoadout `json:"pilotLoadouts"` + TitanLoadouts [10]TitanLoadout `json:"titanLoadouts"` + PinTrackedEntitlements [OwnedEntitlementsCount]bool `json:"pinTrackedEntitlements"` + NewPinTrackedEntitlements [OwnedEntitlementsCount]bool `json:"newPinTrackedEntitlements"` + ActiveBCID int32 `json:"activeBCID"` + ActiveCallingCardIndex int32 `json:"activeCallingCardIndex"` + ActiveCallsignIconIndex int32 `json:"activeCallsignIconIndex"` + ActiveCallsignIconStyleIndex int32 `json:"activeCallsignIconStyleIndex"` + Gen int32 `json:"gen"` + FactionXP [FactionCount]int32 `json:"factionXP"` + PreviousFactionXP [FactionCount]int32 `json:"previousFactionXP"` + TitanXP [TitanClassesCount]int32 `json:"titanXP"` + PreviousTitanXP [TitanClassesCount]int32 `json:"previousTitanXP"` + FdTitanXP [TitanClassesCount]int32 `json:"fdTitanXP"` + FdPreviousTitanXP [TitanClassesCount]int32 `json:"fdPreviousTitanXP"` + TitanFDUnlockPoints [TitanClassesCount]int32 `json:"titanFDUnlockPoints"` + PreviousFDUnlockPoints [TitanClassesCount]int32 `json:"previousFDUnlockPoints"` + Fd_match [20]int32 `json:"fd_match"` + Fd_count [20]int32 `json:"fd_count"` + TitanClassLockState [TitanClassesCount]int32 `json:"titanClassLockState"` + FdTutorialBits int32 `json:"fdTutorialBits"` + FdPlaylistBits int32 `json:"fdPlaylistBits"` + GameStats SGameStats `json:"gameStats"` + MapStats [MapsCount]SMapStats `json:"mapStats"` + TimeStats SHoursPlayed `json:"timeStats"` + DistanceStats SMilesTraveled `json:"distanceStats"` + WeaponStats [LoadoutWeaponsAndAbilitiesCount]SWeaponStats `json:"weaponStats"` + WeaponKillStats [LoadoutWeaponsAndAbilitiesCount]SWeaponKillStats `json:"weaponKillStats"` + KillStats SKillStats `json:"killStats"` + DeathStats SDeathStats `json:"deathStats"` + MiscStats SMiscStats `json:"miscStats"` + FdStats SFDStats `json:"fdStats"` + TitanStats [TitanClassesCount]STitanStats `json:"titanStats"` + Kdratio_lifetime float32 `json:"kdratio_lifetime"` + Kdratio_lifetime_pvp float32 `json:"kdratio_lifetime_pvp"` + Kdratio_match [10]float32 `json:"kdratio_match"` + Kdratiopvp_match [10]float32 `json:"kdratiopvp_match"` + WinStreak int32 `json:"winStreak"` + HighestWinStreakEver int32 `json:"highestWinStreakEver"` + WinStreakIsDraws bool `json:"winStreakIsDraws"` + WinLossHistory [10]int32 `json:"winLossHistory"` + WinLossHistorySize int32 `json:"winLossHistorySize"` + MostProjectilesCollectedInVortex int32 `json:"mostProjectilesCollectedInVortex"` + BlackMarketItemsBought int32 `json:"blackMarketItemsBought"` + RespawnKillInfected bool `json:"respawnKillInfected"` + PilotWeapons [35]WeaponMain `json:"pilotWeapons"` + PilotOffhands [35]WeaponOffhand `json:"pilotOffhands"` + TitanWeapons [15]WeaponMain `json:"titanWeapons"` + TitanOffhands [30]WeaponOffhand `json:"titanOffhands"` + TitanChassis [12]TitanMain `json:"titanChassis"` + HasSeenStore bool `json:"hasSeenStore"` + NewPilotSkins [5]int32 `json:"newPilotSkins"` + UnlockedPilotSkins [5]int32 `json:"unlockedPilotSkins"` + NewPrimePilotSkins int32 `json:"newPrimePilotSkins"` + UnlockedPrimePilotSkins int32 `json:"unlockedPrimePilotSkins"` + NewPilotWeapons [2]int32 `json:"newPilotWeapons"` + UnlockedPilotWeapons [2]int32 `json:"unlockedPilotWeapons"` + NewPilotOffhands [2]int32 `json:"newPilotOffhands"` + UnlockedPilotOffhands [2]int32 `json:"unlockedPilotOffhands"` + NewPilotPassives int32 `json:"newPilotPassives"` + UnlockedPilotPassives int32 `json:"unlockedPilotPassives"` + NewTitanOffhands [2]int32 `json:"newTitanOffhands"` + UnlockedTitanOffhands [2]int32 `json:"unlockedTitanOffhands"` + NewTitanPassives int32 `json:"newTitanPassives"` + UnlockedTitanPassives int32 `json:"unlockedTitanPassives"` + NewTitanChassis int32 `json:"newTitanChassis"` + UnlockedTitanChassis int32 `json:"unlockedTitanChassis"` + NewPrimeTitans int32 `json:"newPrimeTitans"` + UnlockedPrimeTitans int32 `json:"unlockedPrimeTitans"` + NewPilotSuits int32 `json:"newPilotSuits"` + UnlockedPilotSuits int32 `json:"unlockedPilotSuits"` + NewPilotExecutions int32 `json:"newPilotExecutions"` + UnlockedPilotExecutions int32 `json:"unlockedPilotExecutions"` + UnlockedFeatures [2]int32 `json:"unlockedFeatures"` + NewFeatures [2]int32 `json:"newFeatures"` + UnlockedBoosts int32 `json:"unlockedBoosts"` + NewBoosts int32 `json:"newBoosts"` + UnlockedFactions int32 `json:"unlockedFactions"` + NewFactions int32 `json:"newFactions"` + UnlockedCallingCards [16]int32 `json:"unlockedCallingCards"` + NewCallingCards [16]int32 `json:"newCallingCards"` + UnlockedCallsignIcons [7]int32 `json:"unlockedCallsignIcons"` + NewCallsignIcons [7]int32 `json:"newCallsignIcons"` + UnlockedCommsIcons [5]int32 `json:"unlockedCommsIcons"` + NewCommsIcons [5]int32 `json:"newCommsIcons"` + NewTitanExecutions int32 `json:"newTitanExecutions"` + UnlockedTitanExecutions int32 `json:"unlockedTitanExecutions"` + Challenges [ChallengeCount]EChallenge `json:"challenges"` + Dailychallenges [DailychallengeCount]EChallenge `json:"dailychallenges"` + ActiveDailyChallenges [9]ActiveDailyChallenge `json:"activeDailyChallenges"` + TrackedChallenges [3]int32 `json:"trackedChallenges"` + EOGTrackedChallenges [3]int32 `json:"EOGTrackedChallenges"` + TrackedChallengeRefs [3]string `json:"trackedChallengeRefs"` + EOGTrackedChallengeRefs [3]string `json:"EOGTrackedChallengeRefs"` + DailyChallengeDayIndex int32 `json:"dailyChallengeDayIndex"` + NewDailyChallenges bool `json:"newDailyChallenges"` + IsPostGameScoreboardValid bool `json:"isPostGameScoreboardValid"` + PostGameData EPostGameData `json:"postGameData"` + IsFDPostGameScoreboardValid bool `json:"isFDPostGameScoreboardValid"` + PostGameDataFD EFDPostGameData `json:"postGameDataFD"` + PreviousGooserProgress int32 `json:"previousGooserProgress"` + MapHistory [24]int32 `json:"mapHistory"` + ModeHistory [10]int32 `json:"modeHistory"` + LastPlaylist string `json:"lastPlaylist"` + LastDailyMatchVictory int32 `json:"lastDailyMatchVictory"` + LastTimePlayed int32 `json:"lastTimePlayed"` + LastTimeLoggedIn int32 `json:"lastTimeLoggedIn"` + AbandonCountForMode [GameModesCount]int32 `json:"abandonCountForMode"` + LastAbandonedMode GameModes `json:"lastAbandonedMode"` + LastAbandonTime int32 `json:"lastAbandonTime"` + Ranked Struct_ranked `json:"ranked"` + ExtraData []byte `json:"extraData,omitempty"` +} + +var _ encoding.BinaryUnmarshaler = (*Pdata)(nil) +var _ encoding.BinaryMarshaler = Pdata{} + +func (v *Pdata) UnmarshalBinary(b []byte) error { + if len(b) < 4 { + return fmt.Errorf("decode %q (v%d): %w: expected pdef version", "pdata", Version, ErrInvalidSize) + } + if x := getInt(b[0:4]); x != Version { + return fmt.Errorf("decode %q (v%d): %w: got %d", "pdata", Version, ErrUnsupportedVersion, x) + } + if len(b) < 56169 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "pdata", Version, ErrInvalidSize, 56169, len(b)) + } + v.InitializedVersion = getInt(b[0:4]) + v.AnnouncementVersionSeen = getInt(b[4:8]) + v.Xp = getInt(b[8:12]) + v.PreviousXP = getInt(b[12:16]) + v.Credits = getInt(b[16:20]) + v.Xp_match[0] = getInt(b[20:24]) + v.Xp_match[1] = getInt(b[24:28]) + v.Xp_match[2] = getInt(b[28:32]) + v.Xp_match[3] = getInt(b[32:36]) + v.Xp_match[4] = getInt(b[36:40]) + v.Xp_match[5] = getInt(b[40:44]) + v.Xp_match[6] = getInt(b[44:48]) + v.Xp_match[7] = getInt(b[48:52]) + v.Xp_match[8] = getInt(b[52:56]) + v.Xp_match[9] = getInt(b[56:60]) + v.Xp_match[10] = getInt(b[60:64]) + v.Xp_match[11] = getInt(b[64:68]) + v.Xp_match[12] = getInt(b[68:72]) + v.Xp_match[13] = getInt(b[72:76]) + v.Xp_match[14] = getInt(b[76:80]) + v.Xp_match[15] = getInt(b[80:84]) + v.Xp_match[16] = getInt(b[84:88]) + v.Xp_match[17] = getInt(b[88:92]) + v.Xp_match[18] = getInt(b[92:96]) + v.Xp_match[19] = getInt(b[96:100]) + v.Xp_count[0] = getInt(b[100:104]) + v.Xp_count[1] = getInt(b[104:108]) + v.Xp_count[2] = getInt(b[108:112]) + v.Xp_count[3] = getInt(b[112:116]) + v.Xp_count[4] = getInt(b[116:120]) + v.Xp_count[5] = getInt(b[120:124]) + v.Xp_count[6] = getInt(b[124:128]) + v.Xp_count[7] = getInt(b[128:132]) + v.Xp_count[8] = getInt(b[132:136]) + v.Xp_count[9] = getInt(b[136:140]) + v.Xp_count[10] = getInt(b[140:144]) + v.Xp_count[11] = getInt(b[144:148]) + v.Xp_count[12] = getInt(b[148:152]) + v.Xp_count[13] = getInt(b[152:156]) + v.Xp_count[14] = getInt(b[156:160]) + v.Xp_count[15] = getInt(b[160:164]) + v.Xp_count[16] = getInt(b[164:168]) + v.Xp_count[17] = getInt(b[168:172]) + v.Xp_count[18] = getInt(b[172:176]) + v.Xp_count[19] = getInt(b[176:180]) + v.NetWorth = getInt(b[180:184]) + v.MatchWin = getBool(b[184:185]) + v.MatchScoreEvent = getBool(b[185:186]) + v.MatchComplete = getBool(b[186:187]) + v.MatchSquadBonus = getBool(b[187:188]) + v.ShowGameSummary = getBool(b[188:189]) + v.RegenShowNew = getBool(b[189:190]) + v.SpawnAsTitan = getBool(b[190:191]) + v.HaveSeenCustomCoop = getBool(b[191:192]) + v.FactionGiftsFixed = getBool(b[192:193]) + v.IsACheater = getBool(b[193:194]) + v.SpendDoubleColiseumTickets = getBool(b[194:195]) + v.PrivateMatchState = getInt(b[195:199]) + v.PlaylistShuffle_seed = getInt(b[199:203]) + v.PlaylistShuffle_seedFlip = getBool(b[203:204]) + v.PlaylistShuffle_curIndex = getInt(b[204:208]) + v.LastFDTitanRef = getString(b[208:224]) + v.LastFDDifficulty = getInt(b[224:228]) + v.UltimateEdition = getBool(b[228:229]) + v.RandomColiseumUnlocks = getInt(b[229:233]) + v.RandomPlayerLevelUnlocks = getInt(b[233:237]) + v.RandomTitanLevelUnlocks[0] = getInt(b[237:241]) + v.RandomTitanLevelUnlocks[1] = getInt(b[241:245]) + v.RandomTitanLevelUnlocks[2] = getInt(b[245:249]) + v.RandomTitanLevelUnlocks[3] = getInt(b[249:253]) + v.RandomTitanLevelUnlocks[4] = getInt(b[253:257]) + v.RandomTitanLevelUnlocks[5] = getInt(b[257:261]) + v.RandomTitanLevelUnlocks[6] = getInt(b[261:265]) + v.RandomWeaponLevelUnlocks[0] = getInt(b[265:269]) + v.RandomWeaponLevelUnlocks[1] = getInt(b[269:273]) + v.RandomWeaponLevelUnlocks[2] = getInt(b[273:277]) + v.RandomWeaponLevelUnlocks[3] = getInt(b[277:281]) + v.RandomWeaponLevelUnlocks[4] = getInt(b[281:285]) + v.RandomWeaponLevelUnlocks[5] = getInt(b[285:289]) + v.RandomWeaponLevelUnlocks[6] = getInt(b[289:293]) + v.RandomWeaponLevelUnlocks[7] = getInt(b[293:297]) + v.RandomWeaponLevelUnlocks[8] = getInt(b[297:301]) + v.RandomWeaponLevelUnlocks[9] = getInt(b[301:305]) + v.RandomWeaponLevelUnlocks[10] = getInt(b[305:309]) + v.RandomWeaponLevelUnlocks[11] = getInt(b[309:313]) + v.RandomWeaponLevelUnlocks[12] = getInt(b[313:317]) + v.RandomWeaponLevelUnlocks[13] = getInt(b[317:321]) + v.RandomWeaponLevelUnlocks[14] = getInt(b[321:325]) + v.RandomWeaponLevelUnlocks[15] = getInt(b[325:329]) + v.RandomWeaponLevelUnlocks[16] = getInt(b[329:333]) + v.RandomWeaponLevelUnlocks[17] = getInt(b[333:337]) + v.RandomWeaponLevelUnlocks[18] = getInt(b[337:341]) + v.RandomWeaponLevelUnlocks[19] = getInt(b[341:345]) + v.RandomWeaponLevelUnlocks[20] = getInt(b[345:349]) + v.RandomWeaponLevelUnlocks[21] = getInt(b[349:353]) + v.RandomWeaponLevelUnlocks[22] = getInt(b[353:357]) + v.RandomWeaponLevelUnlocks[23] = getInt(b[357:361]) + v.RandomWeaponLevelUnlocks[24] = getInt(b[361:365]) + v.RandomWeaponLevelUnlocks[25] = getInt(b[365:369]) + v.RandomWeaponLevelUnlocks[26] = getInt(b[369:373]) + v.RandomWeaponLevelUnlocks[27] = getInt(b[373:377]) + v.RandomWeaponLevelUnlocks[28] = getInt(b[377:381]) + v.RandomWeaponLevelUnlocks[29] = getInt(b[381:385]) + v.RandomWeaponLevelUnlocks[30] = getInt(b[385:389]) + v.RandomWeaponLevelUnlocks[31] = getInt(b[389:393]) + v.RandomWeaponLevelUnlocks[32] = getInt(b[393:397]) + v.RandomWeaponLevelUnlocks[33] = getInt(b[397:401]) + v.RandomWeaponLevelUnlocks[34] = getInt(b[401:405]) + v.RandomWeaponLevelUnlocks[35] = getInt(b[405:409]) + v.RandomWeaponLevelUnlocks[36] = getInt(b[409:413]) + v.RandomWeaponLevelUnlocks[37] = getInt(b[413:417]) + v.RandomWeaponLevelUnlocks[38] = getInt(b[417:421]) + v.RandomWeaponLevelUnlocks[39] = getInt(b[421:425]) + v.RandomWeaponLevelUnlocks[40] = getInt(b[425:429]) + v.RandomWeaponLevelUnlocks[41] = getInt(b[429:433]) + v.RandomWeaponLevelUnlocks[42] = getInt(b[433:437]) + v.RandomWeaponLevelUnlocks[43] = getInt(b[437:441]) + v.RandomWeaponLevelUnlocks[44] = getInt(b[441:445]) + v.RandomWeaponLevelUnlocks[45] = getInt(b[445:449]) + v.RandomWeaponLevelUnlocks[46] = getInt(b[449:453]) + v.RandomWeaponLevelUnlocks[47] = getInt(b[453:457]) + v.RandomWeaponLevelUnlocks[48] = getInt(b[457:461]) + v.RandomWeaponLevelUnlocks[49] = getInt(b[461:465]) + v.RandomWeaponLevelUnlocks[50] = getInt(b[465:469]) + v.RandomWeaponLevelUnlocks[51] = getInt(b[469:473]) + v.RandomWeaponLevelUnlocks[52] = getInt(b[473:477]) + v.RandomWeaponLevelUnlocks[53] = getInt(b[477:481]) + v.RandomWeaponLevelUnlocks[54] = getInt(b[481:485]) + v.RandomWeaponLevelUnlocks[55] = getInt(b[485:489]) + v.RandomWeaponLevelUnlocks[56] = getInt(b[489:493]) + v.RandomWeaponLevelUnlocks[57] = getInt(b[493:497]) + v.RandomWeaponLevelUnlocks[58] = getInt(b[497:501]) + v.RandomWeaponLevelUnlocks[59] = getInt(b[501:505]) + v.RandomWeaponLevelUnlocks[60] = getInt(b[505:509]) + v.RandomWeaponLevelUnlocks[61] = getInt(b[509:513]) + v.RandomWeaponLevelUnlocks[62] = getInt(b[513:517]) + v.RandomWeaponLevelUnlocks[63] = getInt(b[517:521]) + v.RandomWeaponLevelUnlocks[64] = getInt(b[521:525]) + v.RandomWeaponLevelUnlocks[65] = getInt(b[525:529]) + v.RandomWeaponLevelUnlocks[66] = getInt(b[529:533]) + v.RandomWeaponLevelUnlocks[67] = getInt(b[533:537]) + v.RandomWeaponLevelUnlocks[68] = getInt(b[537:541]) + v.RandomWeaponLevelUnlocks[69] = getInt(b[541:545]) + v.RandomWeaponLevelUnlocks[70] = getInt(b[545:549]) + v.RandomWeaponLevelUnlocks[71] = getInt(b[549:553]) + v.RandomWeaponLevelUnlocks[72] = getInt(b[553:557]) + v.RandomWeaponLevelUnlocks[73] = getInt(b[557:561]) + v.RandomWeaponLevelUnlocks[74] = getInt(b[561:565]) + v.RandomWeaponLevelUnlocks[75] = getInt(b[565:569]) + v.RandomWeaponLevelUnlocks[76] = getInt(b[569:573]) + v.RandomWeaponLevelUnlocks[77] = getInt(b[573:577]) + v.RandomWeaponLevelUnlocks[78] = getInt(b[577:581]) + v.RandomWeaponLevelUnlocks[79] = getInt(b[581:585]) + v.RandomWeaponLevelUnlocks[80] = getInt(b[585:589]) + v.RandomWeaponLevelUnlocks[81] = getInt(b[589:593]) + v.RandomWeaponLevelUnlocks[82] = getInt(b[593:597]) + v.RandomWeaponLevelUnlocks[83] = getInt(b[597:601]) + v.RandomWeaponLevelUnlocks[84] = getInt(b[601:605]) + v.RandomWeaponLevelUnlocks[85] = getInt(b[605:609]) + v.RandomWeaponLevelUnlocks[86] = getInt(b[609:613]) + v.RandomWeaponLevelUnlocks[87] = getInt(b[613:617]) + v.RandomWeaponLevelUnlocks[88] = getInt(b[617:621]) + v.RandomWeaponLevelUnlocks[89] = getInt(b[621:625]) + v.RandomWeaponLevelUnlocks[90] = getInt(b[625:629]) + v.RandomWeaponLevelUnlocks[91] = getInt(b[629:633]) + v.RandomWeaponLevelUnlocks[92] = getInt(b[633:637]) + v.RandomWeaponLevelUnlocks[93] = getInt(b[637:641]) + v.RandomWeaponLevelUnlocks[94] = getInt(b[641:645]) + v.RandomWeaponLevelUnlocks[95] = getInt(b[645:649]) + v.RandomWeaponLevelUnlocks[96] = getInt(b[649:653]) + v.RandomWeaponLevelUnlocks[97] = getInt(b[653:657]) + v.RandomWeaponLevelUnlocks[98] = getInt(b[657:661]) + v.RandomWeaponLevelUnlocks[99] = getInt(b[661:665]) + v.RandomFactionLevelUnlocks[0] = getInt(b[665:669]) + v.RandomFactionLevelUnlocks[1] = getInt(b[669:673]) + v.RandomFactionLevelUnlocks[2] = getInt(b[673:677]) + v.RandomFactionLevelUnlocks[3] = getInt(b[677:681]) + v.RandomFactionLevelUnlocks[4] = getInt(b[681:685]) + v.RandomFactionLevelUnlocks[5] = getInt(b[685:689]) + v.RandomFactionLevelUnlocks[6] = getInt(b[689:693]) + v.DoubleXP = getInt(b[693:697]) + v.ColiseumTickets = getInt(b[697:701]) + v.ColiseumWinStreak = getInt(b[701:705]) + v.ColiseumBestStreak = getInt(b[705:709]) + v.ColiseumTotalWins = getInt(b[709:713]) + v.ColiseumTotalLosses = getInt(b[713:717]) + must(v.RecentUnlocks[0].UnmarshalBinary(b[717:729])) + must(v.RecentUnlocks[1].UnmarshalBinary(b[729:741])) + must(v.RecentUnlocks[2].UnmarshalBinary(b[741:753])) + must(v.RecentUnlocks[3].UnmarshalBinary(b[753:765])) + must(v.RecentUnlocks[4].UnmarshalBinary(b[765:777])) + must(v.RecentUnlocks[5].UnmarshalBinary(b[777:789])) + must(v.RecentUnlocks[6].UnmarshalBinary(b[789:801])) + must(v.RecentUnlocks[7].UnmarshalBinary(b[801:813])) + must(v.RecentUnlocks[8].UnmarshalBinary(b[813:825])) + must(v.RecentUnlocks[9].UnmarshalBinary(b[825:837])) + v.HasBeenIntroducedToComms = getBool(b[837:838]) + v.LastCommsUseDate = getInt(b[838:842]) + v.NumTimesUsedComms = getInt(b[842:846]) + v.Custom_emoji_initialized = getBool(b[846:847]) + v.Custom_emoji[0] = getInt(b[847:851]) + v.Custom_emoji[1] = getInt(b[851:855]) + v.Custom_emoji[2] = getInt(b[855:859]) + v.Custom_emoji[3] = getInt(b[859:863]) + v.BurnmeterSlot = getInt(b[863:867]) + must(v.Pve.UnmarshalBinary(b[867:1003])) + v.FactionChoice = Faction(getEnum(b[1003:1004])) + v.EnemyFaction = Faction(getEnum(b[1004:1005])) + v.PersistentRewards[0] = getBool(b[1005:1006]) + v.PersistentRewards[1] = getBool(b[1006:1007]) + v.PersistentRewards[2] = getBool(b[1007:1008]) + v.PersistentRewards[3] = getBool(b[1008:1009]) + v.PersistentRewards[4] = getBool(b[1009:1010]) + v.PersistentRewards[5] = getBool(b[1010:1011]) + v.PersistentRewards[6] = getBool(b[1011:1012]) + v.PersistentRewards[7] = getBool(b[1012:1013]) + v.PersistentRewards[8] = getBool(b[1013:1014]) + v.PersistentRewards[9] = getBool(b[1014:1015]) + v.PersistentRewards[10] = getBool(b[1015:1016]) + v.PersistentRewards[11] = getBool(b[1016:1017]) + v.PersistentRewards[12] = getBool(b[1017:1018]) + v.PersistentRewards[13] = getBool(b[1018:1019]) + v.PersistentRewards[14] = getBool(b[1019:1020]) + v.PersistentRewards[15] = getBool(b[1020:1021]) + v.PersistentRewards[16] = getBool(b[1021:1022]) + v.PersistentRewards[17] = getBool(b[1022:1023]) + v.PersistentRewards[18] = getBool(b[1023:1024]) + v.PersistentRewards[19] = getBool(b[1024:1025]) + v.PersistentRewards[20] = getBool(b[1025:1026]) + v.PersistentRewards[21] = getBool(b[1026:1027]) + v.PersistentRewards[22] = getBool(b[1027:1028]) + v.PersistentRewards[23] = getBool(b[1028:1029]) + v.PersistentRewards[24] = getBool(b[1029:1030]) + v.PersistentRewards[25] = getBool(b[1030:1031]) + v.PersistentRewards[26] = getBool(b[1031:1032]) + v.PersistentRewards[27] = getBool(b[1032:1033]) + v.PersistentRewards[28] = getBool(b[1033:1034]) + v.PersistentRewards[29] = getBool(b[1034:1035]) + v.PersistentRewards[30] = getBool(b[1035:1036]) + v.PersistentRewards[31] = getBool(b[1036:1037]) + v.ConsumableRewards[0] = getInt(b[1037:1041]) + v.ConsumableRewards[1] = getInt(b[1041:1045]) + v.ConsumableRewards[2] = getInt(b[1045:1049]) + v.ConsumableRewards[3] = getInt(b[1049:1053]) + v.ConsumableRewards[4] = getInt(b[1053:1057]) + v.ConsumableRewards[5] = getInt(b[1057:1061]) + v.ConsumableRewards[6] = getInt(b[1061:1065]) + v.ConsumableRewards[7] = getInt(b[1065:1069]) + v.ConsumableRewards[8] = getInt(b[1069:1073]) + v.ConsumableRewards[9] = getInt(b[1073:1077]) + v.ConsumableRewards[10] = getInt(b[1077:1081]) + v.ConsumableRewards[11] = getInt(b[1081:1085]) + v.ConsumableRewards[12] = getInt(b[1085:1089]) + v.ConsumableRewards[13] = getInt(b[1089:1093]) + v.ConsumableRewards[14] = getInt(b[1093:1097]) + v.ConsumableRewards[15] = getInt(b[1097:1101]) + v.ConsumableRewards[16] = getInt(b[1101:1105]) + v.ConsumableRewards[17] = getInt(b[1105:1109]) + v.ConsumableRewards[18] = getInt(b[1109:1113]) + v.ConsumableRewards[19] = getInt(b[1113:1117]) + v.ConsumableRewards[20] = getInt(b[1117:1121]) + v.ConsumableRewards[21] = getInt(b[1121:1125]) + v.ConsumableRewards[22] = getInt(b[1125:1129]) + v.ConsumableRewards[23] = getInt(b[1129:1133]) + v.ConsumableRewards[24] = getInt(b[1133:1137]) + v.ConsumableRewards[25] = getInt(b[1137:1141]) + v.ConsumableRewards[26] = getInt(b[1141:1145]) + v.ConsumableRewards[27] = getInt(b[1145:1149]) + v.ConsumableRewards[28] = getInt(b[1149:1153]) + v.ConsumableRewards[29] = getInt(b[1153:1157]) + v.ConsumableRewards[30] = getInt(b[1157:1161]) + v.ConsumableRewards[31] = getInt(b[1161:1165]) + must(v.PilotSpawnLoadout.UnmarshalBinary(b[1165:1169])) + must(v.TitanSpawnLoadout.UnmarshalBinary(b[1169:1173])) + must(v.ActivePilotLoadout.UnmarshalBinary(b[1173:1266])) + must(v.ActiveTitanLoadout.UnmarshalBinary(b[1266:1356])) + v.ActiveTitanLoadoutIndex = getInt(b[1356:1360]) + must(v.PilotLoadouts[0].UnmarshalBinary(b[1360:1453])) + must(v.PilotLoadouts[1].UnmarshalBinary(b[1453:1546])) + must(v.PilotLoadouts[2].UnmarshalBinary(b[1546:1639])) + must(v.PilotLoadouts[3].UnmarshalBinary(b[1639:1732])) + must(v.PilotLoadouts[4].UnmarshalBinary(b[1732:1825])) + must(v.PilotLoadouts[5].UnmarshalBinary(b[1825:1918])) + must(v.PilotLoadouts[6].UnmarshalBinary(b[1918:2011])) + must(v.PilotLoadouts[7].UnmarshalBinary(b[2011:2104])) + must(v.PilotLoadouts[8].UnmarshalBinary(b[2104:2197])) + must(v.PilotLoadouts[9].UnmarshalBinary(b[2197:2290])) + must(v.TitanLoadouts[0].UnmarshalBinary(b[2290:2380])) + must(v.TitanLoadouts[1].UnmarshalBinary(b[2380:2470])) + must(v.TitanLoadouts[2].UnmarshalBinary(b[2470:2560])) + must(v.TitanLoadouts[3].UnmarshalBinary(b[2560:2650])) + must(v.TitanLoadouts[4].UnmarshalBinary(b[2650:2740])) + must(v.TitanLoadouts[5].UnmarshalBinary(b[2740:2830])) + must(v.TitanLoadouts[6].UnmarshalBinary(b[2830:2920])) + must(v.TitanLoadouts[7].UnmarshalBinary(b[2920:3010])) + must(v.TitanLoadouts[8].UnmarshalBinary(b[3010:3100])) + must(v.TitanLoadouts[9].UnmarshalBinary(b[3100:3190])) + v.PinTrackedEntitlements[0] = getBool(b[3190:3191]) + v.PinTrackedEntitlements[1] = getBool(b[3191:3192]) + v.PinTrackedEntitlements[2] = getBool(b[3192:3193]) + v.PinTrackedEntitlements[3] = getBool(b[3193:3194]) + v.PinTrackedEntitlements[4] = getBool(b[3194:3195]) + v.PinTrackedEntitlements[5] = getBool(b[3195:3196]) + v.PinTrackedEntitlements[6] = getBool(b[3196:3197]) + v.PinTrackedEntitlements[7] = getBool(b[3197:3198]) + v.PinTrackedEntitlements[8] = getBool(b[3198:3199]) + v.NewPinTrackedEntitlements[0] = getBool(b[3199:3200]) + v.NewPinTrackedEntitlements[1] = getBool(b[3200:3201]) + v.NewPinTrackedEntitlements[2] = getBool(b[3201:3202]) + v.NewPinTrackedEntitlements[3] = getBool(b[3202:3203]) + v.NewPinTrackedEntitlements[4] = getBool(b[3203:3204]) + v.NewPinTrackedEntitlements[5] = getBool(b[3204:3205]) + v.NewPinTrackedEntitlements[6] = getBool(b[3205:3206]) + v.NewPinTrackedEntitlements[7] = getBool(b[3206:3207]) + v.NewPinTrackedEntitlements[8] = getBool(b[3207:3208]) + v.ActiveBCID = getInt(b[3208:3212]) + v.ActiveCallingCardIndex = getInt(b[3212:3216]) + v.ActiveCallsignIconIndex = getInt(b[3216:3220]) + v.ActiveCallsignIconStyleIndex = getInt(b[3220:3224]) + v.Gen = getInt(b[3224:3228]) + v.FactionXP[0] = getInt(b[3228:3232]) + v.FactionXP[1] = getInt(b[3232:3236]) + v.FactionXP[2] = getInt(b[3236:3240]) + v.FactionXP[3] = getInt(b[3240:3244]) + v.FactionXP[4] = getInt(b[3244:3248]) + v.FactionXP[5] = getInt(b[3248:3252]) + v.FactionXP[6] = getInt(b[3252:3256]) + v.PreviousFactionXP[0] = getInt(b[3256:3260]) + v.PreviousFactionXP[1] = getInt(b[3260:3264]) + v.PreviousFactionXP[2] = getInt(b[3264:3268]) + v.PreviousFactionXP[3] = getInt(b[3268:3272]) + v.PreviousFactionXP[4] = getInt(b[3272:3276]) + v.PreviousFactionXP[5] = getInt(b[3276:3280]) + v.PreviousFactionXP[6] = getInt(b[3280:3284]) + v.TitanXP[0] = getInt(b[3284:3288]) + v.TitanXP[1] = getInt(b[3288:3292]) + v.TitanXP[2] = getInt(b[3292:3296]) + v.TitanXP[3] = getInt(b[3296:3300]) + v.TitanXP[4] = getInt(b[3300:3304]) + v.TitanXP[5] = getInt(b[3304:3308]) + v.TitanXP[6] = getInt(b[3308:3312]) + v.PreviousTitanXP[0] = getInt(b[3312:3316]) + v.PreviousTitanXP[1] = getInt(b[3316:3320]) + v.PreviousTitanXP[2] = getInt(b[3320:3324]) + v.PreviousTitanXP[3] = getInt(b[3324:3328]) + v.PreviousTitanXP[4] = getInt(b[3328:3332]) + v.PreviousTitanXP[5] = getInt(b[3332:3336]) + v.PreviousTitanXP[6] = getInt(b[3336:3340]) + v.FdTitanXP[0] = getInt(b[3340:3344]) + v.FdTitanXP[1] = getInt(b[3344:3348]) + v.FdTitanXP[2] = getInt(b[3348:3352]) + v.FdTitanXP[3] = getInt(b[3352:3356]) + v.FdTitanXP[4] = getInt(b[3356:3360]) + v.FdTitanXP[5] = getInt(b[3360:3364]) + v.FdTitanXP[6] = getInt(b[3364:3368]) + v.FdPreviousTitanXP[0] = getInt(b[3368:3372]) + v.FdPreviousTitanXP[1] = getInt(b[3372:3376]) + v.FdPreviousTitanXP[2] = getInt(b[3376:3380]) + v.FdPreviousTitanXP[3] = getInt(b[3380:3384]) + v.FdPreviousTitanXP[4] = getInt(b[3384:3388]) + v.FdPreviousTitanXP[5] = getInt(b[3388:3392]) + v.FdPreviousTitanXP[6] = getInt(b[3392:3396]) + v.TitanFDUnlockPoints[0] = getInt(b[3396:3400]) + v.TitanFDUnlockPoints[1] = getInt(b[3400:3404]) + v.TitanFDUnlockPoints[2] = getInt(b[3404:3408]) + v.TitanFDUnlockPoints[3] = getInt(b[3408:3412]) + v.TitanFDUnlockPoints[4] = getInt(b[3412:3416]) + v.TitanFDUnlockPoints[5] = getInt(b[3416:3420]) + v.TitanFDUnlockPoints[6] = getInt(b[3420:3424]) + v.PreviousFDUnlockPoints[0] = getInt(b[3424:3428]) + v.PreviousFDUnlockPoints[1] = getInt(b[3428:3432]) + v.PreviousFDUnlockPoints[2] = getInt(b[3432:3436]) + v.PreviousFDUnlockPoints[3] = getInt(b[3436:3440]) + v.PreviousFDUnlockPoints[4] = getInt(b[3440:3444]) + v.PreviousFDUnlockPoints[5] = getInt(b[3444:3448]) + v.PreviousFDUnlockPoints[6] = getInt(b[3448:3452]) + v.Fd_match[0] = getInt(b[3452:3456]) + v.Fd_match[1] = getInt(b[3456:3460]) + v.Fd_match[2] = getInt(b[3460:3464]) + v.Fd_match[3] = getInt(b[3464:3468]) + v.Fd_match[4] = getInt(b[3468:3472]) + v.Fd_match[5] = getInt(b[3472:3476]) + v.Fd_match[6] = getInt(b[3476:3480]) + v.Fd_match[7] = getInt(b[3480:3484]) + v.Fd_match[8] = getInt(b[3484:3488]) + v.Fd_match[9] = getInt(b[3488:3492]) + v.Fd_match[10] = getInt(b[3492:3496]) + v.Fd_match[11] = getInt(b[3496:3500]) + v.Fd_match[12] = getInt(b[3500:3504]) + v.Fd_match[13] = getInt(b[3504:3508]) + v.Fd_match[14] = getInt(b[3508:3512]) + v.Fd_match[15] = getInt(b[3512:3516]) + v.Fd_match[16] = getInt(b[3516:3520]) + v.Fd_match[17] = getInt(b[3520:3524]) + v.Fd_match[18] = getInt(b[3524:3528]) + v.Fd_match[19] = getInt(b[3528:3532]) + v.Fd_count[0] = getInt(b[3532:3536]) + v.Fd_count[1] = getInt(b[3536:3540]) + v.Fd_count[2] = getInt(b[3540:3544]) + v.Fd_count[3] = getInt(b[3544:3548]) + v.Fd_count[4] = getInt(b[3548:3552]) + v.Fd_count[5] = getInt(b[3552:3556]) + v.Fd_count[6] = getInt(b[3556:3560]) + v.Fd_count[7] = getInt(b[3560:3564]) + v.Fd_count[8] = getInt(b[3564:3568]) + v.Fd_count[9] = getInt(b[3568:3572]) + v.Fd_count[10] = getInt(b[3572:3576]) + v.Fd_count[11] = getInt(b[3576:3580]) + v.Fd_count[12] = getInt(b[3580:3584]) + v.Fd_count[13] = getInt(b[3584:3588]) + v.Fd_count[14] = getInt(b[3588:3592]) + v.Fd_count[15] = getInt(b[3592:3596]) + v.Fd_count[16] = getInt(b[3596:3600]) + v.Fd_count[17] = getInt(b[3600:3604]) + v.Fd_count[18] = getInt(b[3604:3608]) + v.Fd_count[19] = getInt(b[3608:3612]) + v.TitanClassLockState[0] = getInt(b[3612:3616]) + v.TitanClassLockState[1] = getInt(b[3616:3620]) + v.TitanClassLockState[2] = getInt(b[3620:3624]) + v.TitanClassLockState[3] = getInt(b[3624:3628]) + v.TitanClassLockState[4] = getInt(b[3628:3632]) + v.TitanClassLockState[5] = getInt(b[3632:3636]) + v.TitanClassLockState[6] = getInt(b[3636:3640]) + v.FdTutorialBits = getInt(b[3640:3644]) + v.FdPlaylistBits = getInt(b[3644:3648]) + must(v.GameStats.UnmarshalBinary(b[3648:4016])) + must(v.MapStats[0].UnmarshalBinary(b[4016:4472])) + must(v.MapStats[1].UnmarshalBinary(b[4472:4928])) + must(v.MapStats[2].UnmarshalBinary(b[4928:5384])) + must(v.MapStats[3].UnmarshalBinary(b[5384:5840])) + must(v.MapStats[4].UnmarshalBinary(b[5840:6296])) + must(v.MapStats[5].UnmarshalBinary(b[6296:6752])) + must(v.MapStats[6].UnmarshalBinary(b[6752:7208])) + must(v.MapStats[7].UnmarshalBinary(b[7208:7664])) + must(v.MapStats[8].UnmarshalBinary(b[7664:8120])) + must(v.MapStats[9].UnmarshalBinary(b[8120:8576])) + must(v.MapStats[10].UnmarshalBinary(b[8576:9032])) + must(v.MapStats[11].UnmarshalBinary(b[9032:9488])) + must(v.MapStats[12].UnmarshalBinary(b[9488:9944])) + must(v.MapStats[13].UnmarshalBinary(b[9944:10400])) + must(v.MapStats[14].UnmarshalBinary(b[10400:10856])) + must(v.MapStats[15].UnmarshalBinary(b[10856:11312])) + must(v.MapStats[16].UnmarshalBinary(b[11312:11768])) + must(v.MapStats[17].UnmarshalBinary(b[11768:12224])) + must(v.MapStats[18].UnmarshalBinary(b[12224:12680])) + must(v.MapStats[19].UnmarshalBinary(b[12680:13136])) + must(v.MapStats[20].UnmarshalBinary(b[13136:13592])) + must(v.MapStats[21].UnmarshalBinary(b[13592:14048])) + must(v.MapStats[22].UnmarshalBinary(b[14048:14504])) + must(v.MapStats[23].UnmarshalBinary(b[14504:14960])) + must(v.MapStats[24].UnmarshalBinary(b[14960:15416])) + must(v.TimeStats.UnmarshalBinary(b[15416:15472])) + must(v.DistanceStats.UnmarshalBinary(b[15472:15532])) + must(v.WeaponStats[0].UnmarshalBinary(b[15532:15560])) + must(v.WeaponStats[1].UnmarshalBinary(b[15560:15588])) + must(v.WeaponStats[2].UnmarshalBinary(b[15588:15616])) + must(v.WeaponStats[3].UnmarshalBinary(b[15616:15644])) + must(v.WeaponStats[4].UnmarshalBinary(b[15644:15672])) + must(v.WeaponStats[5].UnmarshalBinary(b[15672:15700])) + must(v.WeaponStats[6].UnmarshalBinary(b[15700:15728])) + must(v.WeaponStats[7].UnmarshalBinary(b[15728:15756])) + must(v.WeaponStats[8].UnmarshalBinary(b[15756:15784])) + must(v.WeaponStats[9].UnmarshalBinary(b[15784:15812])) + must(v.WeaponStats[10].UnmarshalBinary(b[15812:15840])) + must(v.WeaponStats[11].UnmarshalBinary(b[15840:15868])) + must(v.WeaponStats[12].UnmarshalBinary(b[15868:15896])) + must(v.WeaponStats[13].UnmarshalBinary(b[15896:15924])) + must(v.WeaponStats[14].UnmarshalBinary(b[15924:15952])) + must(v.WeaponStats[15].UnmarshalBinary(b[15952:15980])) + must(v.WeaponStats[16].UnmarshalBinary(b[15980:16008])) + must(v.WeaponStats[17].UnmarshalBinary(b[16008:16036])) + must(v.WeaponStats[18].UnmarshalBinary(b[16036:16064])) + must(v.WeaponStats[19].UnmarshalBinary(b[16064:16092])) + must(v.WeaponStats[20].UnmarshalBinary(b[16092:16120])) + must(v.WeaponStats[21].UnmarshalBinary(b[16120:16148])) + must(v.WeaponStats[22].UnmarshalBinary(b[16148:16176])) + must(v.WeaponStats[23].UnmarshalBinary(b[16176:16204])) + must(v.WeaponStats[24].UnmarshalBinary(b[16204:16232])) + must(v.WeaponStats[25].UnmarshalBinary(b[16232:16260])) + must(v.WeaponStats[26].UnmarshalBinary(b[16260:16288])) + must(v.WeaponStats[27].UnmarshalBinary(b[16288:16316])) + must(v.WeaponStats[28].UnmarshalBinary(b[16316:16344])) + must(v.WeaponStats[29].UnmarshalBinary(b[16344:16372])) + must(v.WeaponStats[30].UnmarshalBinary(b[16372:16400])) + must(v.WeaponStats[31].UnmarshalBinary(b[16400:16428])) + must(v.WeaponStats[32].UnmarshalBinary(b[16428:16456])) + must(v.WeaponStats[33].UnmarshalBinary(b[16456:16484])) + must(v.WeaponStats[34].UnmarshalBinary(b[16484:16512])) + must(v.WeaponStats[35].UnmarshalBinary(b[16512:16540])) + must(v.WeaponStats[36].UnmarshalBinary(b[16540:16568])) + must(v.WeaponStats[37].UnmarshalBinary(b[16568:16596])) + must(v.WeaponStats[38].UnmarshalBinary(b[16596:16624])) + must(v.WeaponStats[39].UnmarshalBinary(b[16624:16652])) + must(v.WeaponStats[40].UnmarshalBinary(b[16652:16680])) + must(v.WeaponStats[41].UnmarshalBinary(b[16680:16708])) + must(v.WeaponStats[42].UnmarshalBinary(b[16708:16736])) + must(v.WeaponStats[43].UnmarshalBinary(b[16736:16764])) + must(v.WeaponStats[44].UnmarshalBinary(b[16764:16792])) + must(v.WeaponStats[45].UnmarshalBinary(b[16792:16820])) + must(v.WeaponStats[46].UnmarshalBinary(b[16820:16848])) + must(v.WeaponStats[47].UnmarshalBinary(b[16848:16876])) + must(v.WeaponStats[48].UnmarshalBinary(b[16876:16904])) + must(v.WeaponStats[49].UnmarshalBinary(b[16904:16932])) + must(v.WeaponStats[50].UnmarshalBinary(b[16932:16960])) + must(v.WeaponStats[51].UnmarshalBinary(b[16960:16988])) + must(v.WeaponStats[52].UnmarshalBinary(b[16988:17016])) + must(v.WeaponStats[53].UnmarshalBinary(b[17016:17044])) + must(v.WeaponStats[54].UnmarshalBinary(b[17044:17072])) + must(v.WeaponStats[55].UnmarshalBinary(b[17072:17100])) + must(v.WeaponStats[56].UnmarshalBinary(b[17100:17128])) + must(v.WeaponStats[57].UnmarshalBinary(b[17128:17156])) + must(v.WeaponStats[58].UnmarshalBinary(b[17156:17184])) + must(v.WeaponStats[59].UnmarshalBinary(b[17184:17212])) + must(v.WeaponStats[60].UnmarshalBinary(b[17212:17240])) + must(v.WeaponStats[61].UnmarshalBinary(b[17240:17268])) + must(v.WeaponStats[62].UnmarshalBinary(b[17268:17296])) + must(v.WeaponStats[63].UnmarshalBinary(b[17296:17324])) + must(v.WeaponStats[64].UnmarshalBinary(b[17324:17352])) + must(v.WeaponStats[65].UnmarshalBinary(b[17352:17380])) + must(v.WeaponStats[66].UnmarshalBinary(b[17380:17408])) + must(v.WeaponStats[67].UnmarshalBinary(b[17408:17436])) + must(v.WeaponStats[68].UnmarshalBinary(b[17436:17464])) + must(v.WeaponStats[69].UnmarshalBinary(b[17464:17492])) + must(v.WeaponStats[70].UnmarshalBinary(b[17492:17520])) + must(v.WeaponStats[71].UnmarshalBinary(b[17520:17548])) + must(v.WeaponStats[72].UnmarshalBinary(b[17548:17576])) + must(v.WeaponStats[73].UnmarshalBinary(b[17576:17604])) + must(v.WeaponStats[74].UnmarshalBinary(b[17604:17632])) + must(v.WeaponStats[75].UnmarshalBinary(b[17632:17660])) + must(v.WeaponStats[76].UnmarshalBinary(b[17660:17688])) + must(v.WeaponStats[77].UnmarshalBinary(b[17688:17716])) + must(v.WeaponStats[78].UnmarshalBinary(b[17716:17744])) + must(v.WeaponStats[79].UnmarshalBinary(b[17744:17772])) + must(v.WeaponStats[80].UnmarshalBinary(b[17772:17800])) + must(v.WeaponStats[81].UnmarshalBinary(b[17800:17828])) + must(v.WeaponStats[82].UnmarshalBinary(b[17828:17856])) + must(v.WeaponStats[83].UnmarshalBinary(b[17856:17884])) + must(v.WeaponStats[84].UnmarshalBinary(b[17884:17912])) + must(v.WeaponStats[85].UnmarshalBinary(b[17912:17940])) + must(v.WeaponStats[86].UnmarshalBinary(b[17940:17968])) + must(v.WeaponStats[87].UnmarshalBinary(b[17968:17996])) + must(v.WeaponStats[88].UnmarshalBinary(b[17996:18024])) + must(v.WeaponStats[89].UnmarshalBinary(b[18024:18052])) + must(v.WeaponStats[90].UnmarshalBinary(b[18052:18080])) + must(v.WeaponStats[91].UnmarshalBinary(b[18080:18108])) + must(v.WeaponStats[92].UnmarshalBinary(b[18108:18136])) + must(v.WeaponStats[93].UnmarshalBinary(b[18136:18164])) + must(v.WeaponStats[94].UnmarshalBinary(b[18164:18192])) + must(v.WeaponStats[95].UnmarshalBinary(b[18192:18220])) + must(v.WeaponStats[96].UnmarshalBinary(b[18220:18248])) + must(v.WeaponStats[97].UnmarshalBinary(b[18248:18276])) + must(v.WeaponStats[98].UnmarshalBinary(b[18276:18304])) + must(v.WeaponStats[99].UnmarshalBinary(b[18304:18332])) + must(v.WeaponKillStats[0].UnmarshalBinary(b[18332:18428])) + must(v.WeaponKillStats[1].UnmarshalBinary(b[18428:18524])) + must(v.WeaponKillStats[2].UnmarshalBinary(b[18524:18620])) + must(v.WeaponKillStats[3].UnmarshalBinary(b[18620:18716])) + must(v.WeaponKillStats[4].UnmarshalBinary(b[18716:18812])) + must(v.WeaponKillStats[5].UnmarshalBinary(b[18812:18908])) + must(v.WeaponKillStats[6].UnmarshalBinary(b[18908:19004])) + must(v.WeaponKillStats[7].UnmarshalBinary(b[19004:19100])) + must(v.WeaponKillStats[8].UnmarshalBinary(b[19100:19196])) + must(v.WeaponKillStats[9].UnmarshalBinary(b[19196:19292])) + must(v.WeaponKillStats[10].UnmarshalBinary(b[19292:19388])) + must(v.WeaponKillStats[11].UnmarshalBinary(b[19388:19484])) + must(v.WeaponKillStats[12].UnmarshalBinary(b[19484:19580])) + must(v.WeaponKillStats[13].UnmarshalBinary(b[19580:19676])) + must(v.WeaponKillStats[14].UnmarshalBinary(b[19676:19772])) + must(v.WeaponKillStats[15].UnmarshalBinary(b[19772:19868])) + must(v.WeaponKillStats[16].UnmarshalBinary(b[19868:19964])) + must(v.WeaponKillStats[17].UnmarshalBinary(b[19964:20060])) + must(v.WeaponKillStats[18].UnmarshalBinary(b[20060:20156])) + must(v.WeaponKillStats[19].UnmarshalBinary(b[20156:20252])) + must(v.WeaponKillStats[20].UnmarshalBinary(b[20252:20348])) + must(v.WeaponKillStats[21].UnmarshalBinary(b[20348:20444])) + must(v.WeaponKillStats[22].UnmarshalBinary(b[20444:20540])) + must(v.WeaponKillStats[23].UnmarshalBinary(b[20540:20636])) + must(v.WeaponKillStats[24].UnmarshalBinary(b[20636:20732])) + must(v.WeaponKillStats[25].UnmarshalBinary(b[20732:20828])) + must(v.WeaponKillStats[26].UnmarshalBinary(b[20828:20924])) + must(v.WeaponKillStats[27].UnmarshalBinary(b[20924:21020])) + must(v.WeaponKillStats[28].UnmarshalBinary(b[21020:21116])) + must(v.WeaponKillStats[29].UnmarshalBinary(b[21116:21212])) + must(v.WeaponKillStats[30].UnmarshalBinary(b[21212:21308])) + must(v.WeaponKillStats[31].UnmarshalBinary(b[21308:21404])) + must(v.WeaponKillStats[32].UnmarshalBinary(b[21404:21500])) + must(v.WeaponKillStats[33].UnmarshalBinary(b[21500:21596])) + must(v.WeaponKillStats[34].UnmarshalBinary(b[21596:21692])) + must(v.WeaponKillStats[35].UnmarshalBinary(b[21692:21788])) + must(v.WeaponKillStats[36].UnmarshalBinary(b[21788:21884])) + must(v.WeaponKillStats[37].UnmarshalBinary(b[21884:21980])) + must(v.WeaponKillStats[38].UnmarshalBinary(b[21980:22076])) + must(v.WeaponKillStats[39].UnmarshalBinary(b[22076:22172])) + must(v.WeaponKillStats[40].UnmarshalBinary(b[22172:22268])) + must(v.WeaponKillStats[41].UnmarshalBinary(b[22268:22364])) + must(v.WeaponKillStats[42].UnmarshalBinary(b[22364:22460])) + must(v.WeaponKillStats[43].UnmarshalBinary(b[22460:22556])) + must(v.WeaponKillStats[44].UnmarshalBinary(b[22556:22652])) + must(v.WeaponKillStats[45].UnmarshalBinary(b[22652:22748])) + must(v.WeaponKillStats[46].UnmarshalBinary(b[22748:22844])) + must(v.WeaponKillStats[47].UnmarshalBinary(b[22844:22940])) + must(v.WeaponKillStats[48].UnmarshalBinary(b[22940:23036])) + must(v.WeaponKillStats[49].UnmarshalBinary(b[23036:23132])) + must(v.WeaponKillStats[50].UnmarshalBinary(b[23132:23228])) + must(v.WeaponKillStats[51].UnmarshalBinary(b[23228:23324])) + must(v.WeaponKillStats[52].UnmarshalBinary(b[23324:23420])) + must(v.WeaponKillStats[53].UnmarshalBinary(b[23420:23516])) + must(v.WeaponKillStats[54].UnmarshalBinary(b[23516:23612])) + must(v.WeaponKillStats[55].UnmarshalBinary(b[23612:23708])) + must(v.WeaponKillStats[56].UnmarshalBinary(b[23708:23804])) + must(v.WeaponKillStats[57].UnmarshalBinary(b[23804:23900])) + must(v.WeaponKillStats[58].UnmarshalBinary(b[23900:23996])) + must(v.WeaponKillStats[59].UnmarshalBinary(b[23996:24092])) + must(v.WeaponKillStats[60].UnmarshalBinary(b[24092:24188])) + must(v.WeaponKillStats[61].UnmarshalBinary(b[24188:24284])) + must(v.WeaponKillStats[62].UnmarshalBinary(b[24284:24380])) + must(v.WeaponKillStats[63].UnmarshalBinary(b[24380:24476])) + must(v.WeaponKillStats[64].UnmarshalBinary(b[24476:24572])) + must(v.WeaponKillStats[65].UnmarshalBinary(b[24572:24668])) + must(v.WeaponKillStats[66].UnmarshalBinary(b[24668:24764])) + must(v.WeaponKillStats[67].UnmarshalBinary(b[24764:24860])) + must(v.WeaponKillStats[68].UnmarshalBinary(b[24860:24956])) + must(v.WeaponKillStats[69].UnmarshalBinary(b[24956:25052])) + must(v.WeaponKillStats[70].UnmarshalBinary(b[25052:25148])) + must(v.WeaponKillStats[71].UnmarshalBinary(b[25148:25244])) + must(v.WeaponKillStats[72].UnmarshalBinary(b[25244:25340])) + must(v.WeaponKillStats[73].UnmarshalBinary(b[25340:25436])) + must(v.WeaponKillStats[74].UnmarshalBinary(b[25436:25532])) + must(v.WeaponKillStats[75].UnmarshalBinary(b[25532:25628])) + must(v.WeaponKillStats[76].UnmarshalBinary(b[25628:25724])) + must(v.WeaponKillStats[77].UnmarshalBinary(b[25724:25820])) + must(v.WeaponKillStats[78].UnmarshalBinary(b[25820:25916])) + must(v.WeaponKillStats[79].UnmarshalBinary(b[25916:26012])) + must(v.WeaponKillStats[80].UnmarshalBinary(b[26012:26108])) + must(v.WeaponKillStats[81].UnmarshalBinary(b[26108:26204])) + must(v.WeaponKillStats[82].UnmarshalBinary(b[26204:26300])) + must(v.WeaponKillStats[83].UnmarshalBinary(b[26300:26396])) + must(v.WeaponKillStats[84].UnmarshalBinary(b[26396:26492])) + must(v.WeaponKillStats[85].UnmarshalBinary(b[26492:26588])) + must(v.WeaponKillStats[86].UnmarshalBinary(b[26588:26684])) + must(v.WeaponKillStats[87].UnmarshalBinary(b[26684:26780])) + must(v.WeaponKillStats[88].UnmarshalBinary(b[26780:26876])) + must(v.WeaponKillStats[89].UnmarshalBinary(b[26876:26972])) + must(v.WeaponKillStats[90].UnmarshalBinary(b[26972:27068])) + must(v.WeaponKillStats[91].UnmarshalBinary(b[27068:27164])) + must(v.WeaponKillStats[92].UnmarshalBinary(b[27164:27260])) + must(v.WeaponKillStats[93].UnmarshalBinary(b[27260:27356])) + must(v.WeaponKillStats[94].UnmarshalBinary(b[27356:27452])) + must(v.WeaponKillStats[95].UnmarshalBinary(b[27452:27548])) + must(v.WeaponKillStats[96].UnmarshalBinary(b[27548:27644])) + must(v.WeaponKillStats[97].UnmarshalBinary(b[27644:27740])) + must(v.WeaponKillStats[98].UnmarshalBinary(b[27740:27836])) + must(v.WeaponKillStats[99].UnmarshalBinary(b[27836:27932])) + must(v.KillStats.UnmarshalBinary(b[27932:28344])) + must(v.DeathStats.UnmarshalBinary(b[28344:28460])) + must(v.MiscStats.UnmarshalBinary(b[28460:28664])) + must(v.FdStats.UnmarshalBinary(b[28664:28720])) + must(v.TitanStats[0].UnmarshalBinary(b[28720:28796])) + must(v.TitanStats[1].UnmarshalBinary(b[28796:28872])) + must(v.TitanStats[2].UnmarshalBinary(b[28872:28948])) + must(v.TitanStats[3].UnmarshalBinary(b[28948:29024])) + must(v.TitanStats[4].UnmarshalBinary(b[29024:29100])) + must(v.TitanStats[5].UnmarshalBinary(b[29100:29176])) + must(v.TitanStats[6].UnmarshalBinary(b[29176:29252])) + v.Kdratio_lifetime = getFloat(b[29252:29256]) + v.Kdratio_lifetime_pvp = getFloat(b[29256:29260]) + v.Kdratio_match[0] = getFloat(b[29260:29264]) + v.Kdratio_match[1] = getFloat(b[29264:29268]) + v.Kdratio_match[2] = getFloat(b[29268:29272]) + v.Kdratio_match[3] = getFloat(b[29272:29276]) + v.Kdratio_match[4] = getFloat(b[29276:29280]) + v.Kdratio_match[5] = getFloat(b[29280:29284]) + v.Kdratio_match[6] = getFloat(b[29284:29288]) + v.Kdratio_match[7] = getFloat(b[29288:29292]) + v.Kdratio_match[8] = getFloat(b[29292:29296]) + v.Kdratio_match[9] = getFloat(b[29296:29300]) + v.Kdratiopvp_match[0] = getFloat(b[29300:29304]) + v.Kdratiopvp_match[1] = getFloat(b[29304:29308]) + v.Kdratiopvp_match[2] = getFloat(b[29308:29312]) + v.Kdratiopvp_match[3] = getFloat(b[29312:29316]) + v.Kdratiopvp_match[4] = getFloat(b[29316:29320]) + v.Kdratiopvp_match[5] = getFloat(b[29320:29324]) + v.Kdratiopvp_match[6] = getFloat(b[29324:29328]) + v.Kdratiopvp_match[7] = getFloat(b[29328:29332]) + v.Kdratiopvp_match[8] = getFloat(b[29332:29336]) + v.Kdratiopvp_match[9] = getFloat(b[29336:29340]) + v.WinStreak = getInt(b[29340:29344]) + v.HighestWinStreakEver = getInt(b[29344:29348]) + v.WinStreakIsDraws = getBool(b[29348:29349]) + v.WinLossHistory[0] = getInt(b[29349:29353]) + v.WinLossHistory[1] = getInt(b[29353:29357]) + v.WinLossHistory[2] = getInt(b[29357:29361]) + v.WinLossHistory[3] = getInt(b[29361:29365]) + v.WinLossHistory[4] = getInt(b[29365:29369]) + v.WinLossHistory[5] = getInt(b[29369:29373]) + v.WinLossHistory[6] = getInt(b[29373:29377]) + v.WinLossHistory[7] = getInt(b[29377:29381]) + v.WinLossHistory[8] = getInt(b[29381:29385]) + v.WinLossHistory[9] = getInt(b[29385:29389]) + v.WinLossHistorySize = getInt(b[29389:29393]) + v.MostProjectilesCollectedInVortex = getInt(b[29393:29397]) + v.BlackMarketItemsBought = getInt(b[29397:29401]) + v.RespawnKillInfected = getBool(b[29401:29402]) + must(v.PilotWeapons[0].UnmarshalBinary(b[29402:29646])) + must(v.PilotWeapons[1].UnmarshalBinary(b[29646:29890])) + must(v.PilotWeapons[2].UnmarshalBinary(b[29890:30134])) + must(v.PilotWeapons[3].UnmarshalBinary(b[30134:30378])) + must(v.PilotWeapons[4].UnmarshalBinary(b[30378:30622])) + must(v.PilotWeapons[5].UnmarshalBinary(b[30622:30866])) + must(v.PilotWeapons[6].UnmarshalBinary(b[30866:31110])) + must(v.PilotWeapons[7].UnmarshalBinary(b[31110:31354])) + must(v.PilotWeapons[8].UnmarshalBinary(b[31354:31598])) + must(v.PilotWeapons[9].UnmarshalBinary(b[31598:31842])) + must(v.PilotWeapons[10].UnmarshalBinary(b[31842:32086])) + must(v.PilotWeapons[11].UnmarshalBinary(b[32086:32330])) + must(v.PilotWeapons[12].UnmarshalBinary(b[32330:32574])) + must(v.PilotWeapons[13].UnmarshalBinary(b[32574:32818])) + must(v.PilotWeapons[14].UnmarshalBinary(b[32818:33062])) + must(v.PilotWeapons[15].UnmarshalBinary(b[33062:33306])) + must(v.PilotWeapons[16].UnmarshalBinary(b[33306:33550])) + must(v.PilotWeapons[17].UnmarshalBinary(b[33550:33794])) + must(v.PilotWeapons[18].UnmarshalBinary(b[33794:34038])) + must(v.PilotWeapons[19].UnmarshalBinary(b[34038:34282])) + must(v.PilotWeapons[20].UnmarshalBinary(b[34282:34526])) + must(v.PilotWeapons[21].UnmarshalBinary(b[34526:34770])) + must(v.PilotWeapons[22].UnmarshalBinary(b[34770:35014])) + must(v.PilotWeapons[23].UnmarshalBinary(b[35014:35258])) + must(v.PilotWeapons[24].UnmarshalBinary(b[35258:35502])) + must(v.PilotWeapons[25].UnmarshalBinary(b[35502:35746])) + must(v.PilotWeapons[26].UnmarshalBinary(b[35746:35990])) + must(v.PilotWeapons[27].UnmarshalBinary(b[35990:36234])) + must(v.PilotWeapons[28].UnmarshalBinary(b[36234:36478])) + must(v.PilotWeapons[29].UnmarshalBinary(b[36478:36722])) + must(v.PilotWeapons[30].UnmarshalBinary(b[36722:36966])) + must(v.PilotWeapons[31].UnmarshalBinary(b[36966:37210])) + must(v.PilotWeapons[32].UnmarshalBinary(b[37210:37454])) + must(v.PilotWeapons[33].UnmarshalBinary(b[37454:37698])) + must(v.PilotWeapons[34].UnmarshalBinary(b[37698:37942])) + must(v.PilotOffhands[0].UnmarshalBinary(b[37942:38066])) + must(v.PilotOffhands[1].UnmarshalBinary(b[38066:38190])) + must(v.PilotOffhands[2].UnmarshalBinary(b[38190:38314])) + must(v.PilotOffhands[3].UnmarshalBinary(b[38314:38438])) + must(v.PilotOffhands[4].UnmarshalBinary(b[38438:38562])) + must(v.PilotOffhands[5].UnmarshalBinary(b[38562:38686])) + must(v.PilotOffhands[6].UnmarshalBinary(b[38686:38810])) + must(v.PilotOffhands[7].UnmarshalBinary(b[38810:38934])) + must(v.PilotOffhands[8].UnmarshalBinary(b[38934:39058])) + must(v.PilotOffhands[9].UnmarshalBinary(b[39058:39182])) + must(v.PilotOffhands[10].UnmarshalBinary(b[39182:39306])) + must(v.PilotOffhands[11].UnmarshalBinary(b[39306:39430])) + must(v.PilotOffhands[12].UnmarshalBinary(b[39430:39554])) + must(v.PilotOffhands[13].UnmarshalBinary(b[39554:39678])) + must(v.PilotOffhands[14].UnmarshalBinary(b[39678:39802])) + must(v.PilotOffhands[15].UnmarshalBinary(b[39802:39926])) + must(v.PilotOffhands[16].UnmarshalBinary(b[39926:40050])) + must(v.PilotOffhands[17].UnmarshalBinary(b[40050:40174])) + must(v.PilotOffhands[18].UnmarshalBinary(b[40174:40298])) + must(v.PilotOffhands[19].UnmarshalBinary(b[40298:40422])) + must(v.PilotOffhands[20].UnmarshalBinary(b[40422:40546])) + must(v.PilotOffhands[21].UnmarshalBinary(b[40546:40670])) + must(v.PilotOffhands[22].UnmarshalBinary(b[40670:40794])) + must(v.PilotOffhands[23].UnmarshalBinary(b[40794:40918])) + must(v.PilotOffhands[24].UnmarshalBinary(b[40918:41042])) + must(v.PilotOffhands[25].UnmarshalBinary(b[41042:41166])) + must(v.PilotOffhands[26].UnmarshalBinary(b[41166:41290])) + must(v.PilotOffhands[27].UnmarshalBinary(b[41290:41414])) + must(v.PilotOffhands[28].UnmarshalBinary(b[41414:41538])) + must(v.PilotOffhands[29].UnmarshalBinary(b[41538:41662])) + must(v.PilotOffhands[30].UnmarshalBinary(b[41662:41786])) + must(v.PilotOffhands[31].UnmarshalBinary(b[41786:41910])) + must(v.PilotOffhands[32].UnmarshalBinary(b[41910:42034])) + must(v.PilotOffhands[33].UnmarshalBinary(b[42034:42158])) + must(v.PilotOffhands[34].UnmarshalBinary(b[42158:42282])) + must(v.TitanWeapons[0].UnmarshalBinary(b[42282:42526])) + must(v.TitanWeapons[1].UnmarshalBinary(b[42526:42770])) + must(v.TitanWeapons[2].UnmarshalBinary(b[42770:43014])) + must(v.TitanWeapons[3].UnmarshalBinary(b[43014:43258])) + must(v.TitanWeapons[4].UnmarshalBinary(b[43258:43502])) + must(v.TitanWeapons[5].UnmarshalBinary(b[43502:43746])) + must(v.TitanWeapons[6].UnmarshalBinary(b[43746:43990])) + must(v.TitanWeapons[7].UnmarshalBinary(b[43990:44234])) + must(v.TitanWeapons[8].UnmarshalBinary(b[44234:44478])) + must(v.TitanWeapons[9].UnmarshalBinary(b[44478:44722])) + must(v.TitanWeapons[10].UnmarshalBinary(b[44722:44966])) + must(v.TitanWeapons[11].UnmarshalBinary(b[44966:45210])) + must(v.TitanWeapons[12].UnmarshalBinary(b[45210:45454])) + must(v.TitanWeapons[13].UnmarshalBinary(b[45454:45698])) + must(v.TitanWeapons[14].UnmarshalBinary(b[45698:45942])) + must(v.TitanOffhands[0].UnmarshalBinary(b[45942:46066])) + must(v.TitanOffhands[1].UnmarshalBinary(b[46066:46190])) + must(v.TitanOffhands[2].UnmarshalBinary(b[46190:46314])) + must(v.TitanOffhands[3].UnmarshalBinary(b[46314:46438])) + must(v.TitanOffhands[4].UnmarshalBinary(b[46438:46562])) + must(v.TitanOffhands[5].UnmarshalBinary(b[46562:46686])) + must(v.TitanOffhands[6].UnmarshalBinary(b[46686:46810])) + must(v.TitanOffhands[7].UnmarshalBinary(b[46810:46934])) + must(v.TitanOffhands[8].UnmarshalBinary(b[46934:47058])) + must(v.TitanOffhands[9].UnmarshalBinary(b[47058:47182])) + must(v.TitanOffhands[10].UnmarshalBinary(b[47182:47306])) + must(v.TitanOffhands[11].UnmarshalBinary(b[47306:47430])) + must(v.TitanOffhands[12].UnmarshalBinary(b[47430:47554])) + must(v.TitanOffhands[13].UnmarshalBinary(b[47554:47678])) + must(v.TitanOffhands[14].UnmarshalBinary(b[47678:47802])) + must(v.TitanOffhands[15].UnmarshalBinary(b[47802:47926])) + must(v.TitanOffhands[16].UnmarshalBinary(b[47926:48050])) + must(v.TitanOffhands[17].UnmarshalBinary(b[48050:48174])) + must(v.TitanOffhands[18].UnmarshalBinary(b[48174:48298])) + must(v.TitanOffhands[19].UnmarshalBinary(b[48298:48422])) + must(v.TitanOffhands[20].UnmarshalBinary(b[48422:48546])) + must(v.TitanOffhands[21].UnmarshalBinary(b[48546:48670])) + must(v.TitanOffhands[22].UnmarshalBinary(b[48670:48794])) + must(v.TitanOffhands[23].UnmarshalBinary(b[48794:48918])) + must(v.TitanOffhands[24].UnmarshalBinary(b[48918:49042])) + must(v.TitanOffhands[25].UnmarshalBinary(b[49042:49166])) + must(v.TitanOffhands[26].UnmarshalBinary(b[49166:49290])) + must(v.TitanOffhands[27].UnmarshalBinary(b[49290:49414])) + must(v.TitanOffhands[28].UnmarshalBinary(b[49414:49538])) + must(v.TitanOffhands[29].UnmarshalBinary(b[49538:49662])) + must(v.TitanChassis[0].UnmarshalBinary(b[49662:49830])) + must(v.TitanChassis[1].UnmarshalBinary(b[49830:49998])) + must(v.TitanChassis[2].UnmarshalBinary(b[49998:50166])) + must(v.TitanChassis[3].UnmarshalBinary(b[50166:50334])) + must(v.TitanChassis[4].UnmarshalBinary(b[50334:50502])) + must(v.TitanChassis[5].UnmarshalBinary(b[50502:50670])) + must(v.TitanChassis[6].UnmarshalBinary(b[50670:50838])) + must(v.TitanChassis[7].UnmarshalBinary(b[50838:51006])) + must(v.TitanChassis[8].UnmarshalBinary(b[51006:51174])) + must(v.TitanChassis[9].UnmarshalBinary(b[51174:51342])) + must(v.TitanChassis[10].UnmarshalBinary(b[51342:51510])) + must(v.TitanChassis[11].UnmarshalBinary(b[51510:51678])) + v.HasSeenStore = getBool(b[51678:51679]) + v.NewPilotSkins[0] = getInt(b[51679:51683]) + v.NewPilotSkins[1] = getInt(b[51683:51687]) + v.NewPilotSkins[2] = getInt(b[51687:51691]) + v.NewPilotSkins[3] = getInt(b[51691:51695]) + v.NewPilotSkins[4] = getInt(b[51695:51699]) + v.UnlockedPilotSkins[0] = getInt(b[51699:51703]) + v.UnlockedPilotSkins[1] = getInt(b[51703:51707]) + v.UnlockedPilotSkins[2] = getInt(b[51707:51711]) + v.UnlockedPilotSkins[3] = getInt(b[51711:51715]) + v.UnlockedPilotSkins[4] = getInt(b[51715:51719]) + v.NewPrimePilotSkins = getInt(b[51719:51723]) + v.UnlockedPrimePilotSkins = getInt(b[51723:51727]) + v.NewPilotWeapons[0] = getInt(b[51727:51731]) + v.NewPilotWeapons[1] = getInt(b[51731:51735]) + v.UnlockedPilotWeapons[0] = getInt(b[51735:51739]) + v.UnlockedPilotWeapons[1] = getInt(b[51739:51743]) + v.NewPilotOffhands[0] = getInt(b[51743:51747]) + v.NewPilotOffhands[1] = getInt(b[51747:51751]) + v.UnlockedPilotOffhands[0] = getInt(b[51751:51755]) + v.UnlockedPilotOffhands[1] = getInt(b[51755:51759]) + v.NewPilotPassives = getInt(b[51759:51763]) + v.UnlockedPilotPassives = getInt(b[51763:51767]) + v.NewTitanOffhands[0] = getInt(b[51767:51771]) + v.NewTitanOffhands[1] = getInt(b[51771:51775]) + v.UnlockedTitanOffhands[0] = getInt(b[51775:51779]) + v.UnlockedTitanOffhands[1] = getInt(b[51779:51783]) + v.NewTitanPassives = getInt(b[51783:51787]) + v.UnlockedTitanPassives = getInt(b[51787:51791]) + v.NewTitanChassis = getInt(b[51791:51795]) + v.UnlockedTitanChassis = getInt(b[51795:51799]) + v.NewPrimeTitans = getInt(b[51799:51803]) + v.UnlockedPrimeTitans = getInt(b[51803:51807]) + v.NewPilotSuits = getInt(b[51807:51811]) + v.UnlockedPilotSuits = getInt(b[51811:51815]) + v.NewPilotExecutions = getInt(b[51815:51819]) + v.UnlockedPilotExecutions = getInt(b[51819:51823]) + v.UnlockedFeatures[0] = getInt(b[51823:51827]) + v.UnlockedFeatures[1] = getInt(b[51827:51831]) + v.NewFeatures[0] = getInt(b[51831:51835]) + v.NewFeatures[1] = getInt(b[51835:51839]) + v.UnlockedBoosts = getInt(b[51839:51843]) + v.NewBoosts = getInt(b[51843:51847]) + v.UnlockedFactions = getInt(b[51847:51851]) + v.NewFactions = getInt(b[51851:51855]) + v.UnlockedCallingCards[0] = getInt(b[51855:51859]) + v.UnlockedCallingCards[1] = getInt(b[51859:51863]) + v.UnlockedCallingCards[2] = getInt(b[51863:51867]) + v.UnlockedCallingCards[3] = getInt(b[51867:51871]) + v.UnlockedCallingCards[4] = getInt(b[51871:51875]) + v.UnlockedCallingCards[5] = getInt(b[51875:51879]) + v.UnlockedCallingCards[6] = getInt(b[51879:51883]) + v.UnlockedCallingCards[7] = getInt(b[51883:51887]) + v.UnlockedCallingCards[8] = getInt(b[51887:51891]) + v.UnlockedCallingCards[9] = getInt(b[51891:51895]) + v.UnlockedCallingCards[10] = getInt(b[51895:51899]) + v.UnlockedCallingCards[11] = getInt(b[51899:51903]) + v.UnlockedCallingCards[12] = getInt(b[51903:51907]) + v.UnlockedCallingCards[13] = getInt(b[51907:51911]) + v.UnlockedCallingCards[14] = getInt(b[51911:51915]) + v.UnlockedCallingCards[15] = getInt(b[51915:51919]) + v.NewCallingCards[0] = getInt(b[51919:51923]) + v.NewCallingCards[1] = getInt(b[51923:51927]) + v.NewCallingCards[2] = getInt(b[51927:51931]) + v.NewCallingCards[3] = getInt(b[51931:51935]) + v.NewCallingCards[4] = getInt(b[51935:51939]) + v.NewCallingCards[5] = getInt(b[51939:51943]) + v.NewCallingCards[6] = getInt(b[51943:51947]) + v.NewCallingCards[7] = getInt(b[51947:51951]) + v.NewCallingCards[8] = getInt(b[51951:51955]) + v.NewCallingCards[9] = getInt(b[51955:51959]) + v.NewCallingCards[10] = getInt(b[51959:51963]) + v.NewCallingCards[11] = getInt(b[51963:51967]) + v.NewCallingCards[12] = getInt(b[51967:51971]) + v.NewCallingCards[13] = getInt(b[51971:51975]) + v.NewCallingCards[14] = getInt(b[51975:51979]) + v.NewCallingCards[15] = getInt(b[51979:51983]) + v.UnlockedCallsignIcons[0] = getInt(b[51983:51987]) + v.UnlockedCallsignIcons[1] = getInt(b[51987:51991]) + v.UnlockedCallsignIcons[2] = getInt(b[51991:51995]) + v.UnlockedCallsignIcons[3] = getInt(b[51995:51999]) + v.UnlockedCallsignIcons[4] = getInt(b[51999:52003]) + v.UnlockedCallsignIcons[5] = getInt(b[52003:52007]) + v.UnlockedCallsignIcons[6] = getInt(b[52007:52011]) + v.NewCallsignIcons[0] = getInt(b[52011:52015]) + v.NewCallsignIcons[1] = getInt(b[52015:52019]) + v.NewCallsignIcons[2] = getInt(b[52019:52023]) + v.NewCallsignIcons[3] = getInt(b[52023:52027]) + v.NewCallsignIcons[4] = getInt(b[52027:52031]) + v.NewCallsignIcons[5] = getInt(b[52031:52035]) + v.NewCallsignIcons[6] = getInt(b[52035:52039]) + v.UnlockedCommsIcons[0] = getInt(b[52039:52043]) + v.UnlockedCommsIcons[1] = getInt(b[52043:52047]) + v.UnlockedCommsIcons[2] = getInt(b[52047:52051]) + v.UnlockedCommsIcons[3] = getInt(b[52051:52055]) + v.UnlockedCommsIcons[4] = getInt(b[52055:52059]) + v.NewCommsIcons[0] = getInt(b[52059:52063]) + v.NewCommsIcons[1] = getInt(b[52063:52067]) + v.NewCommsIcons[2] = getInt(b[52067:52071]) + v.NewCommsIcons[3] = getInt(b[52071:52075]) + v.NewCommsIcons[4] = getInt(b[52075:52079]) + v.NewTitanExecutions = getInt(b[52079:52083]) + v.UnlockedTitanExecutions = getInt(b[52083:52087]) + must(v.Challenges[0].UnmarshalBinary(b[52087:52095])) + must(v.Challenges[1].UnmarshalBinary(b[52095:52103])) + must(v.Challenges[2].UnmarshalBinary(b[52103:52111])) + must(v.Challenges[3].UnmarshalBinary(b[52111:52119])) + must(v.Challenges[4].UnmarshalBinary(b[52119:52127])) + must(v.Challenges[5].UnmarshalBinary(b[52127:52135])) + must(v.Challenges[6].UnmarshalBinary(b[52135:52143])) + must(v.Challenges[7].UnmarshalBinary(b[52143:52151])) + must(v.Challenges[8].UnmarshalBinary(b[52151:52159])) + must(v.Challenges[9].UnmarshalBinary(b[52159:52167])) + must(v.Challenges[10].UnmarshalBinary(b[52167:52175])) + must(v.Challenges[11].UnmarshalBinary(b[52175:52183])) + must(v.Challenges[12].UnmarshalBinary(b[52183:52191])) + must(v.Challenges[13].UnmarshalBinary(b[52191:52199])) + must(v.Challenges[14].UnmarshalBinary(b[52199:52207])) + must(v.Challenges[15].UnmarshalBinary(b[52207:52215])) + must(v.Challenges[16].UnmarshalBinary(b[52215:52223])) + must(v.Challenges[17].UnmarshalBinary(b[52223:52231])) + must(v.Challenges[18].UnmarshalBinary(b[52231:52239])) + must(v.Challenges[19].UnmarshalBinary(b[52239:52247])) + must(v.Challenges[20].UnmarshalBinary(b[52247:52255])) + must(v.Challenges[21].UnmarshalBinary(b[52255:52263])) + must(v.Challenges[22].UnmarshalBinary(b[52263:52271])) + must(v.Challenges[23].UnmarshalBinary(b[52271:52279])) + must(v.Challenges[24].UnmarshalBinary(b[52279:52287])) + must(v.Challenges[25].UnmarshalBinary(b[52287:52295])) + must(v.Challenges[26].UnmarshalBinary(b[52295:52303])) + must(v.Challenges[27].UnmarshalBinary(b[52303:52311])) + must(v.Challenges[28].UnmarshalBinary(b[52311:52319])) + must(v.Challenges[29].UnmarshalBinary(b[52319:52327])) + must(v.Challenges[30].UnmarshalBinary(b[52327:52335])) + must(v.Challenges[31].UnmarshalBinary(b[52335:52343])) + must(v.Challenges[32].UnmarshalBinary(b[52343:52351])) + must(v.Challenges[33].UnmarshalBinary(b[52351:52359])) + must(v.Challenges[34].UnmarshalBinary(b[52359:52367])) + must(v.Challenges[35].UnmarshalBinary(b[52367:52375])) + must(v.Challenges[36].UnmarshalBinary(b[52375:52383])) + must(v.Challenges[37].UnmarshalBinary(b[52383:52391])) + must(v.Challenges[38].UnmarshalBinary(b[52391:52399])) + must(v.Challenges[39].UnmarshalBinary(b[52399:52407])) + must(v.Challenges[40].UnmarshalBinary(b[52407:52415])) + must(v.Challenges[41].UnmarshalBinary(b[52415:52423])) + must(v.Challenges[42].UnmarshalBinary(b[52423:52431])) + must(v.Challenges[43].UnmarshalBinary(b[52431:52439])) + must(v.Challenges[44].UnmarshalBinary(b[52439:52447])) + must(v.Challenges[45].UnmarshalBinary(b[52447:52455])) + must(v.Challenges[46].UnmarshalBinary(b[52455:52463])) + must(v.Challenges[47].UnmarshalBinary(b[52463:52471])) + must(v.Challenges[48].UnmarshalBinary(b[52471:52479])) + must(v.Challenges[49].UnmarshalBinary(b[52479:52487])) + must(v.Challenges[50].UnmarshalBinary(b[52487:52495])) + must(v.Challenges[51].UnmarshalBinary(b[52495:52503])) + must(v.Challenges[52].UnmarshalBinary(b[52503:52511])) + must(v.Challenges[53].UnmarshalBinary(b[52511:52519])) + must(v.Challenges[54].UnmarshalBinary(b[52519:52527])) + must(v.Challenges[55].UnmarshalBinary(b[52527:52535])) + must(v.Challenges[56].UnmarshalBinary(b[52535:52543])) + must(v.Challenges[57].UnmarshalBinary(b[52543:52551])) + must(v.Challenges[58].UnmarshalBinary(b[52551:52559])) + must(v.Challenges[59].UnmarshalBinary(b[52559:52567])) + must(v.Challenges[60].UnmarshalBinary(b[52567:52575])) + must(v.Challenges[61].UnmarshalBinary(b[52575:52583])) + must(v.Challenges[62].UnmarshalBinary(b[52583:52591])) + must(v.Challenges[63].UnmarshalBinary(b[52591:52599])) + must(v.Challenges[64].UnmarshalBinary(b[52599:52607])) + must(v.Challenges[65].UnmarshalBinary(b[52607:52615])) + must(v.Challenges[66].UnmarshalBinary(b[52615:52623])) + must(v.Challenges[67].UnmarshalBinary(b[52623:52631])) + must(v.Challenges[68].UnmarshalBinary(b[52631:52639])) + must(v.Challenges[69].UnmarshalBinary(b[52639:52647])) + must(v.Challenges[70].UnmarshalBinary(b[52647:52655])) + must(v.Challenges[71].UnmarshalBinary(b[52655:52663])) + must(v.Challenges[72].UnmarshalBinary(b[52663:52671])) + must(v.Challenges[73].UnmarshalBinary(b[52671:52679])) + must(v.Challenges[74].UnmarshalBinary(b[52679:52687])) + must(v.Challenges[75].UnmarshalBinary(b[52687:52695])) + must(v.Challenges[76].UnmarshalBinary(b[52695:52703])) + must(v.Challenges[77].UnmarshalBinary(b[52703:52711])) + must(v.Challenges[78].UnmarshalBinary(b[52711:52719])) + must(v.Challenges[79].UnmarshalBinary(b[52719:52727])) + must(v.Challenges[80].UnmarshalBinary(b[52727:52735])) + must(v.Challenges[81].UnmarshalBinary(b[52735:52743])) + must(v.Challenges[82].UnmarshalBinary(b[52743:52751])) + must(v.Challenges[83].UnmarshalBinary(b[52751:52759])) + must(v.Challenges[84].UnmarshalBinary(b[52759:52767])) + must(v.Challenges[85].UnmarshalBinary(b[52767:52775])) + must(v.Challenges[86].UnmarshalBinary(b[52775:52783])) + must(v.Challenges[87].UnmarshalBinary(b[52783:52791])) + must(v.Challenges[88].UnmarshalBinary(b[52791:52799])) + must(v.Challenges[89].UnmarshalBinary(b[52799:52807])) + must(v.Challenges[90].UnmarshalBinary(b[52807:52815])) + must(v.Challenges[91].UnmarshalBinary(b[52815:52823])) + must(v.Challenges[92].UnmarshalBinary(b[52823:52831])) + must(v.Challenges[93].UnmarshalBinary(b[52831:52839])) + must(v.Challenges[94].UnmarshalBinary(b[52839:52847])) + must(v.Challenges[95].UnmarshalBinary(b[52847:52855])) + must(v.Challenges[96].UnmarshalBinary(b[52855:52863])) + must(v.Challenges[97].UnmarshalBinary(b[52863:52871])) + must(v.Challenges[98].UnmarshalBinary(b[52871:52879])) + must(v.Challenges[99].UnmarshalBinary(b[52879:52887])) + must(v.Challenges[100].UnmarshalBinary(b[52887:52895])) + must(v.Challenges[101].UnmarshalBinary(b[52895:52903])) + must(v.Challenges[102].UnmarshalBinary(b[52903:52911])) + must(v.Challenges[103].UnmarshalBinary(b[52911:52919])) + must(v.Challenges[104].UnmarshalBinary(b[52919:52927])) + must(v.Challenges[105].UnmarshalBinary(b[52927:52935])) + must(v.Challenges[106].UnmarshalBinary(b[52935:52943])) + must(v.Challenges[107].UnmarshalBinary(b[52943:52951])) + must(v.Challenges[108].UnmarshalBinary(b[52951:52959])) + must(v.Challenges[109].UnmarshalBinary(b[52959:52967])) + must(v.Challenges[110].UnmarshalBinary(b[52967:52975])) + must(v.Challenges[111].UnmarshalBinary(b[52975:52983])) + must(v.Challenges[112].UnmarshalBinary(b[52983:52991])) + must(v.Challenges[113].UnmarshalBinary(b[52991:52999])) + must(v.Challenges[114].UnmarshalBinary(b[52999:53007])) + must(v.Challenges[115].UnmarshalBinary(b[53007:53015])) + must(v.Challenges[116].UnmarshalBinary(b[53015:53023])) + must(v.Challenges[117].UnmarshalBinary(b[53023:53031])) + must(v.Challenges[118].UnmarshalBinary(b[53031:53039])) + must(v.Challenges[119].UnmarshalBinary(b[53039:53047])) + must(v.Challenges[120].UnmarshalBinary(b[53047:53055])) + must(v.Challenges[121].UnmarshalBinary(b[53055:53063])) + must(v.Challenges[122].UnmarshalBinary(b[53063:53071])) + must(v.Challenges[123].UnmarshalBinary(b[53071:53079])) + must(v.Challenges[124].UnmarshalBinary(b[53079:53087])) + must(v.Challenges[125].UnmarshalBinary(b[53087:53095])) + must(v.Challenges[126].UnmarshalBinary(b[53095:53103])) + must(v.Challenges[127].UnmarshalBinary(b[53103:53111])) + must(v.Challenges[128].UnmarshalBinary(b[53111:53119])) + must(v.Challenges[129].UnmarshalBinary(b[53119:53127])) + must(v.Challenges[130].UnmarshalBinary(b[53127:53135])) + must(v.Challenges[131].UnmarshalBinary(b[53135:53143])) + must(v.Challenges[132].UnmarshalBinary(b[53143:53151])) + must(v.Challenges[133].UnmarshalBinary(b[53151:53159])) + must(v.Challenges[134].UnmarshalBinary(b[53159:53167])) + must(v.Challenges[135].UnmarshalBinary(b[53167:53175])) + must(v.Challenges[136].UnmarshalBinary(b[53175:53183])) + must(v.Challenges[137].UnmarshalBinary(b[53183:53191])) + must(v.Challenges[138].UnmarshalBinary(b[53191:53199])) + must(v.Challenges[139].UnmarshalBinary(b[53199:53207])) + must(v.Challenges[140].UnmarshalBinary(b[53207:53215])) + must(v.Challenges[141].UnmarshalBinary(b[53215:53223])) + must(v.Challenges[142].UnmarshalBinary(b[53223:53231])) + must(v.Challenges[143].UnmarshalBinary(b[53231:53239])) + must(v.Challenges[144].UnmarshalBinary(b[53239:53247])) + must(v.Challenges[145].UnmarshalBinary(b[53247:53255])) + must(v.Challenges[146].UnmarshalBinary(b[53255:53263])) + must(v.Challenges[147].UnmarshalBinary(b[53263:53271])) + must(v.Challenges[148].UnmarshalBinary(b[53271:53279])) + must(v.Challenges[149].UnmarshalBinary(b[53279:53287])) + must(v.Challenges[150].UnmarshalBinary(b[53287:53295])) + must(v.Challenges[151].UnmarshalBinary(b[53295:53303])) + must(v.Challenges[152].UnmarshalBinary(b[53303:53311])) + must(v.Challenges[153].UnmarshalBinary(b[53311:53319])) + must(v.Challenges[154].UnmarshalBinary(b[53319:53327])) + must(v.Challenges[155].UnmarshalBinary(b[53327:53335])) + must(v.Challenges[156].UnmarshalBinary(b[53335:53343])) + must(v.Challenges[157].UnmarshalBinary(b[53343:53351])) + must(v.Challenges[158].UnmarshalBinary(b[53351:53359])) + must(v.Challenges[159].UnmarshalBinary(b[53359:53367])) + must(v.Challenges[160].UnmarshalBinary(b[53367:53375])) + must(v.Challenges[161].UnmarshalBinary(b[53375:53383])) + must(v.Challenges[162].UnmarshalBinary(b[53383:53391])) + must(v.Challenges[163].UnmarshalBinary(b[53391:53399])) + must(v.Challenges[164].UnmarshalBinary(b[53399:53407])) + must(v.Challenges[165].UnmarshalBinary(b[53407:53415])) + must(v.Challenges[166].UnmarshalBinary(b[53415:53423])) + must(v.Challenges[167].UnmarshalBinary(b[53423:53431])) + must(v.Challenges[168].UnmarshalBinary(b[53431:53439])) + must(v.Challenges[169].UnmarshalBinary(b[53439:53447])) + must(v.Challenges[170].UnmarshalBinary(b[53447:53455])) + must(v.Challenges[171].UnmarshalBinary(b[53455:53463])) + must(v.Challenges[172].UnmarshalBinary(b[53463:53471])) + must(v.Challenges[173].UnmarshalBinary(b[53471:53479])) + must(v.Challenges[174].UnmarshalBinary(b[53479:53487])) + must(v.Challenges[175].UnmarshalBinary(b[53487:53495])) + must(v.Challenges[176].UnmarshalBinary(b[53495:53503])) + must(v.Dailychallenges[0].UnmarshalBinary(b[53503:53511])) + must(v.Dailychallenges[1].UnmarshalBinary(b[53511:53519])) + must(v.Dailychallenges[2].UnmarshalBinary(b[53519:53527])) + must(v.Dailychallenges[3].UnmarshalBinary(b[53527:53535])) + must(v.ActiveDailyChallenges[0].UnmarshalBinary(b[53535:53540])) + must(v.ActiveDailyChallenges[1].UnmarshalBinary(b[53540:53545])) + must(v.ActiveDailyChallenges[2].UnmarshalBinary(b[53545:53550])) + must(v.ActiveDailyChallenges[3].UnmarshalBinary(b[53550:53555])) + must(v.ActiveDailyChallenges[4].UnmarshalBinary(b[53555:53560])) + must(v.ActiveDailyChallenges[5].UnmarshalBinary(b[53560:53565])) + must(v.ActiveDailyChallenges[6].UnmarshalBinary(b[53565:53570])) + must(v.ActiveDailyChallenges[7].UnmarshalBinary(b[53570:53575])) + must(v.ActiveDailyChallenges[8].UnmarshalBinary(b[53575:53580])) + v.TrackedChallenges[0] = getInt(b[53580:53584]) + v.TrackedChallenges[1] = getInt(b[53584:53588]) + v.TrackedChallenges[2] = getInt(b[53588:53592]) + v.EOGTrackedChallenges[0] = getInt(b[53592:53596]) + v.EOGTrackedChallenges[1] = getInt(b[53596:53600]) + v.EOGTrackedChallenges[2] = getInt(b[53600:53604]) + v.TrackedChallengeRefs[0] = getString(b[53604:53668]) + v.TrackedChallengeRefs[1] = getString(b[53668:53732]) + v.TrackedChallengeRefs[2] = getString(b[53732:53796]) + v.EOGTrackedChallengeRefs[0] = getString(b[53796:53860]) + v.EOGTrackedChallengeRefs[1] = getString(b[53860:53924]) + v.EOGTrackedChallengeRefs[2] = getString(b[53924:53988]) + v.DailyChallengeDayIndex = getInt(b[53988:53992]) + v.NewDailyChallenges = getBool(b[53992:53993]) + v.IsPostGameScoreboardValid = getBool(b[53993:53994]) + must(v.PostGameData.UnmarshalBinary(b[53994:55638])) + v.IsFDPostGameScoreboardValid = getBool(b[55638:55639]) + must(v.PostGameDataFD.UnmarshalBinary(b[55639:55919])) + v.PreviousGooserProgress = getInt(b[55919:55923]) + v.MapHistory[0] = getInt(b[55923:55927]) + v.MapHistory[1] = getInt(b[55927:55931]) + v.MapHistory[2] = getInt(b[55931:55935]) + v.MapHistory[3] = getInt(b[55935:55939]) + v.MapHistory[4] = getInt(b[55939:55943]) + v.MapHistory[5] = getInt(b[55943:55947]) + v.MapHistory[6] = getInt(b[55947:55951]) + v.MapHistory[7] = getInt(b[55951:55955]) + v.MapHistory[8] = getInt(b[55955:55959]) + v.MapHistory[9] = getInt(b[55959:55963]) + v.MapHistory[10] = getInt(b[55963:55967]) + v.MapHistory[11] = getInt(b[55967:55971]) + v.MapHistory[12] = getInt(b[55971:55975]) + v.MapHistory[13] = getInt(b[55975:55979]) + v.MapHistory[14] = getInt(b[55979:55983]) + v.MapHistory[15] = getInt(b[55983:55987]) + v.MapHistory[16] = getInt(b[55987:55991]) + v.MapHistory[17] = getInt(b[55991:55995]) + v.MapHistory[18] = getInt(b[55995:55999]) + v.MapHistory[19] = getInt(b[55999:56003]) + v.MapHistory[20] = getInt(b[56003:56007]) + v.MapHistory[21] = getInt(b[56007:56011]) + v.MapHistory[22] = getInt(b[56011:56015]) + v.MapHistory[23] = getInt(b[56015:56019]) + v.ModeHistory[0] = getInt(b[56019:56023]) + v.ModeHistory[1] = getInt(b[56023:56027]) + v.ModeHistory[2] = getInt(b[56027:56031]) + v.ModeHistory[3] = getInt(b[56031:56035]) + v.ModeHistory[4] = getInt(b[56035:56039]) + v.ModeHistory[5] = getInt(b[56039:56043]) + v.ModeHistory[6] = getInt(b[56043:56047]) + v.ModeHistory[7] = getInt(b[56047:56051]) + v.ModeHistory[8] = getInt(b[56051:56055]) + v.ModeHistory[9] = getInt(b[56055:56059]) + v.LastPlaylist = getString(b[56059:56091]) + v.LastDailyMatchVictory = getInt(b[56091:56095]) + v.LastTimePlayed = getInt(b[56095:56099]) + v.LastTimeLoggedIn = getInt(b[56099:56103]) + v.AbandonCountForMode[0] = getInt(b[56103:56107]) + v.AbandonCountForMode[1] = getInt(b[56107:56111]) + v.AbandonCountForMode[2] = getInt(b[56111:56115]) + v.AbandonCountForMode[3] = getInt(b[56115:56119]) + v.AbandonCountForMode[4] = getInt(b[56119:56123]) + v.AbandonCountForMode[5] = getInt(b[56123:56127]) + v.AbandonCountForMode[6] = getInt(b[56127:56131]) + v.AbandonCountForMode[7] = getInt(b[56131:56135]) + v.AbandonCountForMode[8] = getInt(b[56135:56139]) + v.AbandonCountForMode[9] = getInt(b[56139:56143]) + v.AbandonCountForMode[10] = getInt(b[56143:56147]) + v.AbandonCountForMode[11] = getInt(b[56147:56151]) + v.AbandonCountForMode[12] = getInt(b[56151:56155]) + v.AbandonCountForMode[13] = getInt(b[56155:56159]) + v.LastAbandonedMode = GameModes(getEnum(b[56159:56160])) + v.LastAbandonTime = getInt(b[56160:56164]) + must(v.Ranked.UnmarshalBinary(b[56164:56169])) + v.ExtraData = b[56169:] + return nil +} +func (v Pdata) MarshalBinary() ([]byte, error) { + if x := v.InitializedVersion; x != Version { + return nil, fmt.Errorf("encode %q (v%d): %w: got %d", "pdata", Version, ErrUnsupportedVersion, x) + } + b := make([]byte, 56169) + putInt(b[0:4], v.InitializedVersion) + putInt(b[4:8], v.AnnouncementVersionSeen) + putInt(b[8:12], v.Xp) + putInt(b[12:16], v.PreviousXP) + putInt(b[16:20], v.Credits) + putInt(b[20:24], v.Xp_match[0]) + putInt(b[24:28], v.Xp_match[1]) + putInt(b[28:32], v.Xp_match[2]) + putInt(b[32:36], v.Xp_match[3]) + putInt(b[36:40], v.Xp_match[4]) + putInt(b[40:44], v.Xp_match[5]) + putInt(b[44:48], v.Xp_match[6]) + putInt(b[48:52], v.Xp_match[7]) + putInt(b[52:56], v.Xp_match[8]) + putInt(b[56:60], v.Xp_match[9]) + putInt(b[60:64], v.Xp_match[10]) + putInt(b[64:68], v.Xp_match[11]) + putInt(b[68:72], v.Xp_match[12]) + putInt(b[72:76], v.Xp_match[13]) + putInt(b[76:80], v.Xp_match[14]) + putInt(b[80:84], v.Xp_match[15]) + putInt(b[84:88], v.Xp_match[16]) + putInt(b[88:92], v.Xp_match[17]) + putInt(b[92:96], v.Xp_match[18]) + putInt(b[96:100], v.Xp_match[19]) + putInt(b[100:104], v.Xp_count[0]) + putInt(b[104:108], v.Xp_count[1]) + putInt(b[108:112], v.Xp_count[2]) + putInt(b[112:116], v.Xp_count[3]) + putInt(b[116:120], v.Xp_count[4]) + putInt(b[120:124], v.Xp_count[5]) + putInt(b[124:128], v.Xp_count[6]) + putInt(b[128:132], v.Xp_count[7]) + putInt(b[132:136], v.Xp_count[8]) + putInt(b[136:140], v.Xp_count[9]) + putInt(b[140:144], v.Xp_count[10]) + putInt(b[144:148], v.Xp_count[11]) + putInt(b[148:152], v.Xp_count[12]) + putInt(b[152:156], v.Xp_count[13]) + putInt(b[156:160], v.Xp_count[14]) + putInt(b[160:164], v.Xp_count[15]) + putInt(b[164:168], v.Xp_count[16]) + putInt(b[168:172], v.Xp_count[17]) + putInt(b[172:176], v.Xp_count[18]) + putInt(b[176:180], v.Xp_count[19]) + putInt(b[180:184], v.NetWorth) + putBool(b[184:185], v.MatchWin) + putBool(b[185:186], v.MatchScoreEvent) + putBool(b[186:187], v.MatchComplete) + putBool(b[187:188], v.MatchSquadBonus) + putBool(b[188:189], v.ShowGameSummary) + putBool(b[189:190], v.RegenShowNew) + putBool(b[190:191], v.SpawnAsTitan) + putBool(b[191:192], v.HaveSeenCustomCoop) + putBool(b[192:193], v.FactionGiftsFixed) + putBool(b[193:194], v.IsACheater) + putBool(b[194:195], v.SpendDoubleColiseumTickets) + putInt(b[195:199], v.PrivateMatchState) + putInt(b[199:203], v.PlaylistShuffle_seed) + putBool(b[203:204], v.PlaylistShuffle_seedFlip) + putInt(b[204:208], v.PlaylistShuffle_curIndex) + if err := putString(b[208:224], v.LastFDTitanRef); err != nil { + return nil, fmt.Errorf("encode %q (v%d): %w: field %q: %v", "pdata", Version, ErrInvalidSize, "lastFDTitanRef", err) + } + putInt(b[224:228], v.LastFDDifficulty) + putBool(b[228:229], v.UltimateEdition) + putInt(b[229:233], v.RandomColiseumUnlocks) + putInt(b[233:237], v.RandomPlayerLevelUnlocks) + putInt(b[237:241], v.RandomTitanLevelUnlocks[0]) + putInt(b[241:245], v.RandomTitanLevelUnlocks[1]) + putInt(b[245:249], v.RandomTitanLevelUnlocks[2]) + putInt(b[249:253], v.RandomTitanLevelUnlocks[3]) + putInt(b[253:257], v.RandomTitanLevelUnlocks[4]) + putInt(b[257:261], v.RandomTitanLevelUnlocks[5]) + putInt(b[261:265], v.RandomTitanLevelUnlocks[6]) + putInt(b[265:269], v.RandomWeaponLevelUnlocks[0]) + putInt(b[269:273], v.RandomWeaponLevelUnlocks[1]) + putInt(b[273:277], v.RandomWeaponLevelUnlocks[2]) + putInt(b[277:281], v.RandomWeaponLevelUnlocks[3]) + putInt(b[281:285], v.RandomWeaponLevelUnlocks[4]) + putInt(b[285:289], v.RandomWeaponLevelUnlocks[5]) + putInt(b[289:293], v.RandomWeaponLevelUnlocks[6]) + putInt(b[293:297], v.RandomWeaponLevelUnlocks[7]) + putInt(b[297:301], v.RandomWeaponLevelUnlocks[8]) + putInt(b[301:305], v.RandomWeaponLevelUnlocks[9]) + putInt(b[305:309], v.RandomWeaponLevelUnlocks[10]) + putInt(b[309:313], v.RandomWeaponLevelUnlocks[11]) + putInt(b[313:317], v.RandomWeaponLevelUnlocks[12]) + putInt(b[317:321], v.RandomWeaponLevelUnlocks[13]) + putInt(b[321:325], v.RandomWeaponLevelUnlocks[14]) + putInt(b[325:329], v.RandomWeaponLevelUnlocks[15]) + putInt(b[329:333], v.RandomWeaponLevelUnlocks[16]) + putInt(b[333:337], v.RandomWeaponLevelUnlocks[17]) + putInt(b[337:341], v.RandomWeaponLevelUnlocks[18]) + putInt(b[341:345], v.RandomWeaponLevelUnlocks[19]) + putInt(b[345:349], v.RandomWeaponLevelUnlocks[20]) + putInt(b[349:353], v.RandomWeaponLevelUnlocks[21]) + putInt(b[353:357], v.RandomWeaponLevelUnlocks[22]) + putInt(b[357:361], v.RandomWeaponLevelUnlocks[23]) + putInt(b[361:365], v.RandomWeaponLevelUnlocks[24]) + putInt(b[365:369], v.RandomWeaponLevelUnlocks[25]) + putInt(b[369:373], v.RandomWeaponLevelUnlocks[26]) + putInt(b[373:377], v.RandomWeaponLevelUnlocks[27]) + putInt(b[377:381], v.RandomWeaponLevelUnlocks[28]) + putInt(b[381:385], v.RandomWeaponLevelUnlocks[29]) + putInt(b[385:389], v.RandomWeaponLevelUnlocks[30]) + putInt(b[389:393], v.RandomWeaponLevelUnlocks[31]) + putInt(b[393:397], v.RandomWeaponLevelUnlocks[32]) + putInt(b[397:401], v.RandomWeaponLevelUnlocks[33]) + putInt(b[401:405], v.RandomWeaponLevelUnlocks[34]) + putInt(b[405:409], v.RandomWeaponLevelUnlocks[35]) + putInt(b[409:413], v.RandomWeaponLevelUnlocks[36]) + putInt(b[413:417], v.RandomWeaponLevelUnlocks[37]) + putInt(b[417:421], v.RandomWeaponLevelUnlocks[38]) + putInt(b[421:425], v.RandomWeaponLevelUnlocks[39]) + putInt(b[425:429], v.RandomWeaponLevelUnlocks[40]) + putInt(b[429:433], v.RandomWeaponLevelUnlocks[41]) + putInt(b[433:437], v.RandomWeaponLevelUnlocks[42]) + putInt(b[437:441], v.RandomWeaponLevelUnlocks[43]) + putInt(b[441:445], v.RandomWeaponLevelUnlocks[44]) + putInt(b[445:449], v.RandomWeaponLevelUnlocks[45]) + putInt(b[449:453], v.RandomWeaponLevelUnlocks[46]) + putInt(b[453:457], v.RandomWeaponLevelUnlocks[47]) + putInt(b[457:461], v.RandomWeaponLevelUnlocks[48]) + putInt(b[461:465], v.RandomWeaponLevelUnlocks[49]) + putInt(b[465:469], v.RandomWeaponLevelUnlocks[50]) + putInt(b[469:473], v.RandomWeaponLevelUnlocks[51]) + putInt(b[473:477], v.RandomWeaponLevelUnlocks[52]) + putInt(b[477:481], v.RandomWeaponLevelUnlocks[53]) + putInt(b[481:485], v.RandomWeaponLevelUnlocks[54]) + putInt(b[485:489], v.RandomWeaponLevelUnlocks[55]) + putInt(b[489:493], v.RandomWeaponLevelUnlocks[56]) + putInt(b[493:497], v.RandomWeaponLevelUnlocks[57]) + putInt(b[497:501], v.RandomWeaponLevelUnlocks[58]) + putInt(b[501:505], v.RandomWeaponLevelUnlocks[59]) + putInt(b[505:509], v.RandomWeaponLevelUnlocks[60]) + putInt(b[509:513], v.RandomWeaponLevelUnlocks[61]) + putInt(b[513:517], v.RandomWeaponLevelUnlocks[62]) + putInt(b[517:521], v.RandomWeaponLevelUnlocks[63]) + putInt(b[521:525], v.RandomWeaponLevelUnlocks[64]) + putInt(b[525:529], v.RandomWeaponLevelUnlocks[65]) + putInt(b[529:533], v.RandomWeaponLevelUnlocks[66]) + putInt(b[533:537], v.RandomWeaponLevelUnlocks[67]) + putInt(b[537:541], v.RandomWeaponLevelUnlocks[68]) + putInt(b[541:545], v.RandomWeaponLevelUnlocks[69]) + putInt(b[545:549], v.RandomWeaponLevelUnlocks[70]) + putInt(b[549:553], v.RandomWeaponLevelUnlocks[71]) + putInt(b[553:557], v.RandomWeaponLevelUnlocks[72]) + putInt(b[557:561], v.RandomWeaponLevelUnlocks[73]) + putInt(b[561:565], v.RandomWeaponLevelUnlocks[74]) + putInt(b[565:569], v.RandomWeaponLevelUnlocks[75]) + putInt(b[569:573], v.RandomWeaponLevelUnlocks[76]) + putInt(b[573:577], v.RandomWeaponLevelUnlocks[77]) + putInt(b[577:581], v.RandomWeaponLevelUnlocks[78]) + putInt(b[581:585], v.RandomWeaponLevelUnlocks[79]) + putInt(b[585:589], v.RandomWeaponLevelUnlocks[80]) + putInt(b[589:593], v.RandomWeaponLevelUnlocks[81]) + putInt(b[593:597], v.RandomWeaponLevelUnlocks[82]) + putInt(b[597:601], v.RandomWeaponLevelUnlocks[83]) + putInt(b[601:605], v.RandomWeaponLevelUnlocks[84]) + putInt(b[605:609], v.RandomWeaponLevelUnlocks[85]) + putInt(b[609:613], v.RandomWeaponLevelUnlocks[86]) + putInt(b[613:617], v.RandomWeaponLevelUnlocks[87]) + putInt(b[617:621], v.RandomWeaponLevelUnlocks[88]) + putInt(b[621:625], v.RandomWeaponLevelUnlocks[89]) + putInt(b[625:629], v.RandomWeaponLevelUnlocks[90]) + putInt(b[629:633], v.RandomWeaponLevelUnlocks[91]) + putInt(b[633:637], v.RandomWeaponLevelUnlocks[92]) + putInt(b[637:641], v.RandomWeaponLevelUnlocks[93]) + putInt(b[641:645], v.RandomWeaponLevelUnlocks[94]) + putInt(b[645:649], v.RandomWeaponLevelUnlocks[95]) + putInt(b[649:653], v.RandomWeaponLevelUnlocks[96]) + putInt(b[653:657], v.RandomWeaponLevelUnlocks[97]) + putInt(b[657:661], v.RandomWeaponLevelUnlocks[98]) + putInt(b[661:665], v.RandomWeaponLevelUnlocks[99]) + putInt(b[665:669], v.RandomFactionLevelUnlocks[0]) + putInt(b[669:673], v.RandomFactionLevelUnlocks[1]) + putInt(b[673:677], v.RandomFactionLevelUnlocks[2]) + putInt(b[677:681], v.RandomFactionLevelUnlocks[3]) + putInt(b[681:685], v.RandomFactionLevelUnlocks[4]) + putInt(b[685:689], v.RandomFactionLevelUnlocks[5]) + putInt(b[689:693], v.RandomFactionLevelUnlocks[6]) + putInt(b[693:697], v.DoubleXP) + putInt(b[697:701], v.ColiseumTickets) + putInt(b[701:705], v.ColiseumWinStreak) + putInt(b[705:709], v.ColiseumBestStreak) + putInt(b[709:713], v.ColiseumTotalWins) + putInt(b[713:717], v.ColiseumTotalLosses) + if x, err := v.RecentUnlocks[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "recentUnlocks", 0, err) + } else if len(x) != 12 { + panic("bug: invalid marshal struct size") + } else { + copy(b[717:729], x) + } + if x, err := v.RecentUnlocks[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "recentUnlocks", 1, err) + } else if len(x) != 12 { + panic("bug: invalid marshal struct size") + } else { + copy(b[729:741], x) + } + if x, err := v.RecentUnlocks[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "recentUnlocks", 2, err) + } else if len(x) != 12 { + panic("bug: invalid marshal struct size") + } else { + copy(b[741:753], x) + } + if x, err := v.RecentUnlocks[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "recentUnlocks", 3, err) + } else if len(x) != 12 { + panic("bug: invalid marshal struct size") + } else { + copy(b[753:765], x) + } + if x, err := v.RecentUnlocks[4].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "recentUnlocks", 4, err) + } else if len(x) != 12 { + panic("bug: invalid marshal struct size") + } else { + copy(b[765:777], x) + } + if x, err := v.RecentUnlocks[5].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "recentUnlocks", 5, err) + } else if len(x) != 12 { + panic("bug: invalid marshal struct size") + } else { + copy(b[777:789], x) + } + if x, err := v.RecentUnlocks[6].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "recentUnlocks", 6, err) + } else if len(x) != 12 { + panic("bug: invalid marshal struct size") + } else { + copy(b[789:801], x) + } + if x, err := v.RecentUnlocks[7].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "recentUnlocks", 7, err) + } else if len(x) != 12 { + panic("bug: invalid marshal struct size") + } else { + copy(b[801:813], x) + } + if x, err := v.RecentUnlocks[8].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "recentUnlocks", 8, err) + } else if len(x) != 12 { + panic("bug: invalid marshal struct size") + } else { + copy(b[813:825], x) + } + if x, err := v.RecentUnlocks[9].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "recentUnlocks", 9, err) + } else if len(x) != 12 { + panic("bug: invalid marshal struct size") + } else { + copy(b[825:837], x) + } + putBool(b[837:838], v.HasBeenIntroducedToComms) + putInt(b[838:842], v.LastCommsUseDate) + putInt(b[842:846], v.NumTimesUsedComms) + putBool(b[846:847], v.Custom_emoji_initialized) + putInt(b[847:851], v.Custom_emoji[0]) + putInt(b[851:855], v.Custom_emoji[1]) + putInt(b[855:859], v.Custom_emoji[2]) + putInt(b[859:863], v.Custom_emoji[3]) + putInt(b[863:867], v.BurnmeterSlot) + if x, err := v.Pve.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "pdata", Version, "pve", err) + } else if len(x) != 136 { + panic("bug: invalid marshal struct size") + } else { + copy(b[867:1003], x) + } + putEnum(b[1003:1004], uint8(v.FactionChoice)) + putEnum(b[1004:1005], uint8(v.EnemyFaction)) + putBool(b[1005:1006], v.PersistentRewards[0]) + putBool(b[1006:1007], v.PersistentRewards[1]) + putBool(b[1007:1008], v.PersistentRewards[2]) + putBool(b[1008:1009], v.PersistentRewards[3]) + putBool(b[1009:1010], v.PersistentRewards[4]) + putBool(b[1010:1011], v.PersistentRewards[5]) + putBool(b[1011:1012], v.PersistentRewards[6]) + putBool(b[1012:1013], v.PersistentRewards[7]) + putBool(b[1013:1014], v.PersistentRewards[8]) + putBool(b[1014:1015], v.PersistentRewards[9]) + putBool(b[1015:1016], v.PersistentRewards[10]) + putBool(b[1016:1017], v.PersistentRewards[11]) + putBool(b[1017:1018], v.PersistentRewards[12]) + putBool(b[1018:1019], v.PersistentRewards[13]) + putBool(b[1019:1020], v.PersistentRewards[14]) + putBool(b[1020:1021], v.PersistentRewards[15]) + putBool(b[1021:1022], v.PersistentRewards[16]) + putBool(b[1022:1023], v.PersistentRewards[17]) + putBool(b[1023:1024], v.PersistentRewards[18]) + putBool(b[1024:1025], v.PersistentRewards[19]) + putBool(b[1025:1026], v.PersistentRewards[20]) + putBool(b[1026:1027], v.PersistentRewards[21]) + putBool(b[1027:1028], v.PersistentRewards[22]) + putBool(b[1028:1029], v.PersistentRewards[23]) + putBool(b[1029:1030], v.PersistentRewards[24]) + putBool(b[1030:1031], v.PersistentRewards[25]) + putBool(b[1031:1032], v.PersistentRewards[26]) + putBool(b[1032:1033], v.PersistentRewards[27]) + putBool(b[1033:1034], v.PersistentRewards[28]) + putBool(b[1034:1035], v.PersistentRewards[29]) + putBool(b[1035:1036], v.PersistentRewards[30]) + putBool(b[1036:1037], v.PersistentRewards[31]) + putInt(b[1037:1041], v.ConsumableRewards[0]) + putInt(b[1041:1045], v.ConsumableRewards[1]) + putInt(b[1045:1049], v.ConsumableRewards[2]) + putInt(b[1049:1053], v.ConsumableRewards[3]) + putInt(b[1053:1057], v.ConsumableRewards[4]) + putInt(b[1057:1061], v.ConsumableRewards[5]) + putInt(b[1061:1065], v.ConsumableRewards[6]) + putInt(b[1065:1069], v.ConsumableRewards[7]) + putInt(b[1069:1073], v.ConsumableRewards[8]) + putInt(b[1073:1077], v.ConsumableRewards[9]) + putInt(b[1077:1081], v.ConsumableRewards[10]) + putInt(b[1081:1085], v.ConsumableRewards[11]) + putInt(b[1085:1089], v.ConsumableRewards[12]) + putInt(b[1089:1093], v.ConsumableRewards[13]) + putInt(b[1093:1097], v.ConsumableRewards[14]) + putInt(b[1097:1101], v.ConsumableRewards[15]) + putInt(b[1101:1105], v.ConsumableRewards[16]) + putInt(b[1105:1109], v.ConsumableRewards[17]) + putInt(b[1109:1113], v.ConsumableRewards[18]) + putInt(b[1113:1117], v.ConsumableRewards[19]) + putInt(b[1117:1121], v.ConsumableRewards[20]) + putInt(b[1121:1125], v.ConsumableRewards[21]) + putInt(b[1125:1129], v.ConsumableRewards[22]) + putInt(b[1129:1133], v.ConsumableRewards[23]) + putInt(b[1133:1137], v.ConsumableRewards[24]) + putInt(b[1137:1141], v.ConsumableRewards[25]) + putInt(b[1141:1145], v.ConsumableRewards[26]) + putInt(b[1145:1149], v.ConsumableRewards[27]) + putInt(b[1149:1153], v.ConsumableRewards[28]) + putInt(b[1153:1157], v.ConsumableRewards[29]) + putInt(b[1157:1161], v.ConsumableRewards[30]) + putInt(b[1161:1165], v.ConsumableRewards[31]) + if x, err := v.PilotSpawnLoadout.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "pdata", Version, "pilotSpawnLoadout", err) + } else if len(x) != 4 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1165:1169], x) + } + if x, err := v.TitanSpawnLoadout.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "pdata", Version, "titanSpawnLoadout", err) + } else if len(x) != 4 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1169:1173], x) + } + if x, err := v.ActivePilotLoadout.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "pdata", Version, "activePilotLoadout", err) + } else if len(x) != 93 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1173:1266], x) + } + if x, err := v.ActiveTitanLoadout.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "pdata", Version, "activeTitanLoadout", err) + } else if len(x) != 90 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1266:1356], x) + } + putInt(b[1356:1360], v.ActiveTitanLoadoutIndex) + if x, err := v.PilotLoadouts[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotLoadouts", 0, err) + } else if len(x) != 93 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1360:1453], x) + } + if x, err := v.PilotLoadouts[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotLoadouts", 1, err) + } else if len(x) != 93 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1453:1546], x) + } + if x, err := v.PilotLoadouts[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotLoadouts", 2, err) + } else if len(x) != 93 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1546:1639], x) + } + if x, err := v.PilotLoadouts[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotLoadouts", 3, err) + } else if len(x) != 93 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1639:1732], x) + } + if x, err := v.PilotLoadouts[4].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotLoadouts", 4, err) + } else if len(x) != 93 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1732:1825], x) + } + if x, err := v.PilotLoadouts[5].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotLoadouts", 5, err) + } else if len(x) != 93 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1825:1918], x) + } + if x, err := v.PilotLoadouts[6].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotLoadouts", 6, err) + } else if len(x) != 93 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1918:2011], x) + } + if x, err := v.PilotLoadouts[7].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotLoadouts", 7, err) + } else if len(x) != 93 { + panic("bug: invalid marshal struct size") + } else { + copy(b[2011:2104], x) + } + if x, err := v.PilotLoadouts[8].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotLoadouts", 8, err) + } else if len(x) != 93 { + panic("bug: invalid marshal struct size") + } else { + copy(b[2104:2197], x) + } + if x, err := v.PilotLoadouts[9].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotLoadouts", 9, err) + } else if len(x) != 93 { + panic("bug: invalid marshal struct size") + } else { + copy(b[2197:2290], x) + } + if x, err := v.TitanLoadouts[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanLoadouts", 0, err) + } else if len(x) != 90 { + panic("bug: invalid marshal struct size") + } else { + copy(b[2290:2380], x) + } + if x, err := v.TitanLoadouts[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanLoadouts", 1, err) + } else if len(x) != 90 { + panic("bug: invalid marshal struct size") + } else { + copy(b[2380:2470], x) + } + if x, err := v.TitanLoadouts[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanLoadouts", 2, err) + } else if len(x) != 90 { + panic("bug: invalid marshal struct size") + } else { + copy(b[2470:2560], x) + } + if x, err := v.TitanLoadouts[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanLoadouts", 3, err) + } else if len(x) != 90 { + panic("bug: invalid marshal struct size") + } else { + copy(b[2560:2650], x) + } + if x, err := v.TitanLoadouts[4].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanLoadouts", 4, err) + } else if len(x) != 90 { + panic("bug: invalid marshal struct size") + } else { + copy(b[2650:2740], x) + } + if x, err := v.TitanLoadouts[5].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanLoadouts", 5, err) + } else if len(x) != 90 { + panic("bug: invalid marshal struct size") + } else { + copy(b[2740:2830], x) + } + if x, err := v.TitanLoadouts[6].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanLoadouts", 6, err) + } else if len(x) != 90 { + panic("bug: invalid marshal struct size") + } else { + copy(b[2830:2920], x) + } + if x, err := v.TitanLoadouts[7].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanLoadouts", 7, err) + } else if len(x) != 90 { + panic("bug: invalid marshal struct size") + } else { + copy(b[2920:3010], x) + } + if x, err := v.TitanLoadouts[8].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanLoadouts", 8, err) + } else if len(x) != 90 { + panic("bug: invalid marshal struct size") + } else { + copy(b[3010:3100], x) + } + if x, err := v.TitanLoadouts[9].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanLoadouts", 9, err) + } else if len(x) != 90 { + panic("bug: invalid marshal struct size") + } else { + copy(b[3100:3190], x) + } + putBool(b[3190:3191], v.PinTrackedEntitlements[0]) + putBool(b[3191:3192], v.PinTrackedEntitlements[1]) + putBool(b[3192:3193], v.PinTrackedEntitlements[2]) + putBool(b[3193:3194], v.PinTrackedEntitlements[3]) + putBool(b[3194:3195], v.PinTrackedEntitlements[4]) + putBool(b[3195:3196], v.PinTrackedEntitlements[5]) + putBool(b[3196:3197], v.PinTrackedEntitlements[6]) + putBool(b[3197:3198], v.PinTrackedEntitlements[7]) + putBool(b[3198:3199], v.PinTrackedEntitlements[8]) + putBool(b[3199:3200], v.NewPinTrackedEntitlements[0]) + putBool(b[3200:3201], v.NewPinTrackedEntitlements[1]) + putBool(b[3201:3202], v.NewPinTrackedEntitlements[2]) + putBool(b[3202:3203], v.NewPinTrackedEntitlements[3]) + putBool(b[3203:3204], v.NewPinTrackedEntitlements[4]) + putBool(b[3204:3205], v.NewPinTrackedEntitlements[5]) + putBool(b[3205:3206], v.NewPinTrackedEntitlements[6]) + putBool(b[3206:3207], v.NewPinTrackedEntitlements[7]) + putBool(b[3207:3208], v.NewPinTrackedEntitlements[8]) + putInt(b[3208:3212], v.ActiveBCID) + putInt(b[3212:3216], v.ActiveCallingCardIndex) + putInt(b[3216:3220], v.ActiveCallsignIconIndex) + putInt(b[3220:3224], v.ActiveCallsignIconStyleIndex) + putInt(b[3224:3228], v.Gen) + putInt(b[3228:3232], v.FactionXP[0]) + putInt(b[3232:3236], v.FactionXP[1]) + putInt(b[3236:3240], v.FactionXP[2]) + putInt(b[3240:3244], v.FactionXP[3]) + putInt(b[3244:3248], v.FactionXP[4]) + putInt(b[3248:3252], v.FactionXP[5]) + putInt(b[3252:3256], v.FactionXP[6]) + putInt(b[3256:3260], v.PreviousFactionXP[0]) + putInt(b[3260:3264], v.PreviousFactionXP[1]) + putInt(b[3264:3268], v.PreviousFactionXP[2]) + putInt(b[3268:3272], v.PreviousFactionXP[3]) + putInt(b[3272:3276], v.PreviousFactionXP[4]) + putInt(b[3276:3280], v.PreviousFactionXP[5]) + putInt(b[3280:3284], v.PreviousFactionXP[6]) + putInt(b[3284:3288], v.TitanXP[0]) + putInt(b[3288:3292], v.TitanXP[1]) + putInt(b[3292:3296], v.TitanXP[2]) + putInt(b[3296:3300], v.TitanXP[3]) + putInt(b[3300:3304], v.TitanXP[4]) + putInt(b[3304:3308], v.TitanXP[5]) + putInt(b[3308:3312], v.TitanXP[6]) + putInt(b[3312:3316], v.PreviousTitanXP[0]) + putInt(b[3316:3320], v.PreviousTitanXP[1]) + putInt(b[3320:3324], v.PreviousTitanXP[2]) + putInt(b[3324:3328], v.PreviousTitanXP[3]) + putInt(b[3328:3332], v.PreviousTitanXP[4]) + putInt(b[3332:3336], v.PreviousTitanXP[5]) + putInt(b[3336:3340], v.PreviousTitanXP[6]) + putInt(b[3340:3344], v.FdTitanXP[0]) + putInt(b[3344:3348], v.FdTitanXP[1]) + putInt(b[3348:3352], v.FdTitanXP[2]) + putInt(b[3352:3356], v.FdTitanXP[3]) + putInt(b[3356:3360], v.FdTitanXP[4]) + putInt(b[3360:3364], v.FdTitanXP[5]) + putInt(b[3364:3368], v.FdTitanXP[6]) + putInt(b[3368:3372], v.FdPreviousTitanXP[0]) + putInt(b[3372:3376], v.FdPreviousTitanXP[1]) + putInt(b[3376:3380], v.FdPreviousTitanXP[2]) + putInt(b[3380:3384], v.FdPreviousTitanXP[3]) + putInt(b[3384:3388], v.FdPreviousTitanXP[4]) + putInt(b[3388:3392], v.FdPreviousTitanXP[5]) + putInt(b[3392:3396], v.FdPreviousTitanXP[6]) + putInt(b[3396:3400], v.TitanFDUnlockPoints[0]) + putInt(b[3400:3404], v.TitanFDUnlockPoints[1]) + putInt(b[3404:3408], v.TitanFDUnlockPoints[2]) + putInt(b[3408:3412], v.TitanFDUnlockPoints[3]) + putInt(b[3412:3416], v.TitanFDUnlockPoints[4]) + putInt(b[3416:3420], v.TitanFDUnlockPoints[5]) + putInt(b[3420:3424], v.TitanFDUnlockPoints[6]) + putInt(b[3424:3428], v.PreviousFDUnlockPoints[0]) + putInt(b[3428:3432], v.PreviousFDUnlockPoints[1]) + putInt(b[3432:3436], v.PreviousFDUnlockPoints[2]) + putInt(b[3436:3440], v.PreviousFDUnlockPoints[3]) + putInt(b[3440:3444], v.PreviousFDUnlockPoints[4]) + putInt(b[3444:3448], v.PreviousFDUnlockPoints[5]) + putInt(b[3448:3452], v.PreviousFDUnlockPoints[6]) + putInt(b[3452:3456], v.Fd_match[0]) + putInt(b[3456:3460], v.Fd_match[1]) + putInt(b[3460:3464], v.Fd_match[2]) + putInt(b[3464:3468], v.Fd_match[3]) + putInt(b[3468:3472], v.Fd_match[4]) + putInt(b[3472:3476], v.Fd_match[5]) + putInt(b[3476:3480], v.Fd_match[6]) + putInt(b[3480:3484], v.Fd_match[7]) + putInt(b[3484:3488], v.Fd_match[8]) + putInt(b[3488:3492], v.Fd_match[9]) + putInt(b[3492:3496], v.Fd_match[10]) + putInt(b[3496:3500], v.Fd_match[11]) + putInt(b[3500:3504], v.Fd_match[12]) + putInt(b[3504:3508], v.Fd_match[13]) + putInt(b[3508:3512], v.Fd_match[14]) + putInt(b[3512:3516], v.Fd_match[15]) + putInt(b[3516:3520], v.Fd_match[16]) + putInt(b[3520:3524], v.Fd_match[17]) + putInt(b[3524:3528], v.Fd_match[18]) + putInt(b[3528:3532], v.Fd_match[19]) + putInt(b[3532:3536], v.Fd_count[0]) + putInt(b[3536:3540], v.Fd_count[1]) + putInt(b[3540:3544], v.Fd_count[2]) + putInt(b[3544:3548], v.Fd_count[3]) + putInt(b[3548:3552], v.Fd_count[4]) + putInt(b[3552:3556], v.Fd_count[5]) + putInt(b[3556:3560], v.Fd_count[6]) + putInt(b[3560:3564], v.Fd_count[7]) + putInt(b[3564:3568], v.Fd_count[8]) + putInt(b[3568:3572], v.Fd_count[9]) + putInt(b[3572:3576], v.Fd_count[10]) + putInt(b[3576:3580], v.Fd_count[11]) + putInt(b[3580:3584], v.Fd_count[12]) + putInt(b[3584:3588], v.Fd_count[13]) + putInt(b[3588:3592], v.Fd_count[14]) + putInt(b[3592:3596], v.Fd_count[15]) + putInt(b[3596:3600], v.Fd_count[16]) + putInt(b[3600:3604], v.Fd_count[17]) + putInt(b[3604:3608], v.Fd_count[18]) + putInt(b[3608:3612], v.Fd_count[19]) + putInt(b[3612:3616], v.TitanClassLockState[0]) + putInt(b[3616:3620], v.TitanClassLockState[1]) + putInt(b[3620:3624], v.TitanClassLockState[2]) + putInt(b[3624:3628], v.TitanClassLockState[3]) + putInt(b[3628:3632], v.TitanClassLockState[4]) + putInt(b[3632:3636], v.TitanClassLockState[5]) + putInt(b[3636:3640], v.TitanClassLockState[6]) + putInt(b[3640:3644], v.FdTutorialBits) + putInt(b[3644:3648], v.FdPlaylistBits) + if x, err := v.GameStats.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "pdata", Version, "gameStats", err) + } else if len(x) != 368 { + panic("bug: invalid marshal struct size") + } else { + copy(b[3648:4016], x) + } + if x, err := v.MapStats[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 0, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[4016:4472], x) + } + if x, err := v.MapStats[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 1, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[4472:4928], x) + } + if x, err := v.MapStats[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 2, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[4928:5384], x) + } + if x, err := v.MapStats[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 3, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[5384:5840], x) + } + if x, err := v.MapStats[4].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 4, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[5840:6296], x) + } + if x, err := v.MapStats[5].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 5, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[6296:6752], x) + } + if x, err := v.MapStats[6].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 6, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[6752:7208], x) + } + if x, err := v.MapStats[7].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 7, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[7208:7664], x) + } + if x, err := v.MapStats[8].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 8, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[7664:8120], x) + } + if x, err := v.MapStats[9].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 9, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[8120:8576], x) + } + if x, err := v.MapStats[10].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 10, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[8576:9032], x) + } + if x, err := v.MapStats[11].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 11, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[9032:9488], x) + } + if x, err := v.MapStats[12].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 12, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[9488:9944], x) + } + if x, err := v.MapStats[13].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 13, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[9944:10400], x) + } + if x, err := v.MapStats[14].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 14, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[10400:10856], x) + } + if x, err := v.MapStats[15].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 15, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[10856:11312], x) + } + if x, err := v.MapStats[16].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 16, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[11312:11768], x) + } + if x, err := v.MapStats[17].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 17, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[11768:12224], x) + } + if x, err := v.MapStats[18].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 18, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[12224:12680], x) + } + if x, err := v.MapStats[19].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 19, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[12680:13136], x) + } + if x, err := v.MapStats[20].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 20, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[13136:13592], x) + } + if x, err := v.MapStats[21].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 21, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[13592:14048], x) + } + if x, err := v.MapStats[22].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 22, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[14048:14504], x) + } + if x, err := v.MapStats[23].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 23, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[14504:14960], x) + } + if x, err := v.MapStats[24].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "mapStats", 24, err) + } else if len(x) != 456 { + panic("bug: invalid marshal struct size") + } else { + copy(b[14960:15416], x) + } + if x, err := v.TimeStats.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "pdata", Version, "timeStats", err) + } else if len(x) != 56 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15416:15472], x) + } + if x, err := v.DistanceStats.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "pdata", Version, "distanceStats", err) + } else if len(x) != 60 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15472:15532], x) + } + if x, err := v.WeaponStats[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 0, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15532:15560], x) + } + if x, err := v.WeaponStats[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 1, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15560:15588], x) + } + if x, err := v.WeaponStats[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 2, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15588:15616], x) + } + if x, err := v.WeaponStats[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 3, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15616:15644], x) + } + if x, err := v.WeaponStats[4].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 4, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15644:15672], x) + } + if x, err := v.WeaponStats[5].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 5, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15672:15700], x) + } + if x, err := v.WeaponStats[6].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 6, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15700:15728], x) + } + if x, err := v.WeaponStats[7].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 7, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15728:15756], x) + } + if x, err := v.WeaponStats[8].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 8, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15756:15784], x) + } + if x, err := v.WeaponStats[9].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 9, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15784:15812], x) + } + if x, err := v.WeaponStats[10].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 10, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15812:15840], x) + } + if x, err := v.WeaponStats[11].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 11, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15840:15868], x) + } + if x, err := v.WeaponStats[12].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 12, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15868:15896], x) + } + if x, err := v.WeaponStats[13].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 13, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15896:15924], x) + } + if x, err := v.WeaponStats[14].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 14, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15924:15952], x) + } + if x, err := v.WeaponStats[15].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 15, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15952:15980], x) + } + if x, err := v.WeaponStats[16].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 16, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[15980:16008], x) + } + if x, err := v.WeaponStats[17].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 17, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16008:16036], x) + } + if x, err := v.WeaponStats[18].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 18, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16036:16064], x) + } + if x, err := v.WeaponStats[19].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 19, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16064:16092], x) + } + if x, err := v.WeaponStats[20].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 20, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16092:16120], x) + } + if x, err := v.WeaponStats[21].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 21, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16120:16148], x) + } + if x, err := v.WeaponStats[22].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 22, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16148:16176], x) + } + if x, err := v.WeaponStats[23].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 23, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16176:16204], x) + } + if x, err := v.WeaponStats[24].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 24, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16204:16232], x) + } + if x, err := v.WeaponStats[25].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 25, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16232:16260], x) + } + if x, err := v.WeaponStats[26].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 26, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16260:16288], x) + } + if x, err := v.WeaponStats[27].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 27, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16288:16316], x) + } + if x, err := v.WeaponStats[28].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 28, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16316:16344], x) + } + if x, err := v.WeaponStats[29].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 29, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16344:16372], x) + } + if x, err := v.WeaponStats[30].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 30, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16372:16400], x) + } + if x, err := v.WeaponStats[31].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 31, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16400:16428], x) + } + if x, err := v.WeaponStats[32].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 32, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16428:16456], x) + } + if x, err := v.WeaponStats[33].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 33, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16456:16484], x) + } + if x, err := v.WeaponStats[34].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 34, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16484:16512], x) + } + if x, err := v.WeaponStats[35].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 35, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16512:16540], x) + } + if x, err := v.WeaponStats[36].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 36, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16540:16568], x) + } + if x, err := v.WeaponStats[37].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 37, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16568:16596], x) + } + if x, err := v.WeaponStats[38].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 38, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16596:16624], x) + } + if x, err := v.WeaponStats[39].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 39, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16624:16652], x) + } + if x, err := v.WeaponStats[40].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 40, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16652:16680], x) + } + if x, err := v.WeaponStats[41].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 41, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16680:16708], x) + } + if x, err := v.WeaponStats[42].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 42, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16708:16736], x) + } + if x, err := v.WeaponStats[43].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 43, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16736:16764], x) + } + if x, err := v.WeaponStats[44].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 44, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16764:16792], x) + } + if x, err := v.WeaponStats[45].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 45, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16792:16820], x) + } + if x, err := v.WeaponStats[46].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 46, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16820:16848], x) + } + if x, err := v.WeaponStats[47].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 47, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16848:16876], x) + } + if x, err := v.WeaponStats[48].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 48, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16876:16904], x) + } + if x, err := v.WeaponStats[49].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 49, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16904:16932], x) + } + if x, err := v.WeaponStats[50].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 50, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16932:16960], x) + } + if x, err := v.WeaponStats[51].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 51, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16960:16988], x) + } + if x, err := v.WeaponStats[52].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 52, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16988:17016], x) + } + if x, err := v.WeaponStats[53].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 53, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17016:17044], x) + } + if x, err := v.WeaponStats[54].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 54, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17044:17072], x) + } + if x, err := v.WeaponStats[55].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 55, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17072:17100], x) + } + if x, err := v.WeaponStats[56].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 56, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17100:17128], x) + } + if x, err := v.WeaponStats[57].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 57, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17128:17156], x) + } + if x, err := v.WeaponStats[58].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 58, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17156:17184], x) + } + if x, err := v.WeaponStats[59].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 59, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17184:17212], x) + } + if x, err := v.WeaponStats[60].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 60, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17212:17240], x) + } + if x, err := v.WeaponStats[61].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 61, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17240:17268], x) + } + if x, err := v.WeaponStats[62].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 62, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17268:17296], x) + } + if x, err := v.WeaponStats[63].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 63, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17296:17324], x) + } + if x, err := v.WeaponStats[64].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 64, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17324:17352], x) + } + if x, err := v.WeaponStats[65].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 65, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17352:17380], x) + } + if x, err := v.WeaponStats[66].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 66, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17380:17408], x) + } + if x, err := v.WeaponStats[67].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 67, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17408:17436], x) + } + if x, err := v.WeaponStats[68].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 68, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17436:17464], x) + } + if x, err := v.WeaponStats[69].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 69, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17464:17492], x) + } + if x, err := v.WeaponStats[70].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 70, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17492:17520], x) + } + if x, err := v.WeaponStats[71].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 71, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17520:17548], x) + } + if x, err := v.WeaponStats[72].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 72, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17548:17576], x) + } + if x, err := v.WeaponStats[73].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 73, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17576:17604], x) + } + if x, err := v.WeaponStats[74].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 74, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17604:17632], x) + } + if x, err := v.WeaponStats[75].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 75, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17632:17660], x) + } + if x, err := v.WeaponStats[76].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 76, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17660:17688], x) + } + if x, err := v.WeaponStats[77].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 77, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17688:17716], x) + } + if x, err := v.WeaponStats[78].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 78, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17716:17744], x) + } + if x, err := v.WeaponStats[79].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 79, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17744:17772], x) + } + if x, err := v.WeaponStats[80].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 80, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17772:17800], x) + } + if x, err := v.WeaponStats[81].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 81, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17800:17828], x) + } + if x, err := v.WeaponStats[82].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 82, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17828:17856], x) + } + if x, err := v.WeaponStats[83].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 83, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17856:17884], x) + } + if x, err := v.WeaponStats[84].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 84, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17884:17912], x) + } + if x, err := v.WeaponStats[85].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 85, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17912:17940], x) + } + if x, err := v.WeaponStats[86].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 86, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17940:17968], x) + } + if x, err := v.WeaponStats[87].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 87, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17968:17996], x) + } + if x, err := v.WeaponStats[88].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 88, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[17996:18024], x) + } + if x, err := v.WeaponStats[89].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 89, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18024:18052], x) + } + if x, err := v.WeaponStats[90].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 90, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18052:18080], x) + } + if x, err := v.WeaponStats[91].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 91, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18080:18108], x) + } + if x, err := v.WeaponStats[92].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 92, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18108:18136], x) + } + if x, err := v.WeaponStats[93].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 93, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18136:18164], x) + } + if x, err := v.WeaponStats[94].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 94, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18164:18192], x) + } + if x, err := v.WeaponStats[95].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 95, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18192:18220], x) + } + if x, err := v.WeaponStats[96].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 96, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18220:18248], x) + } + if x, err := v.WeaponStats[97].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 97, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18248:18276], x) + } + if x, err := v.WeaponStats[98].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 98, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18276:18304], x) + } + if x, err := v.WeaponStats[99].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponStats", 99, err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18304:18332], x) + } + if x, err := v.WeaponKillStats[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 0, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18332:18428], x) + } + if x, err := v.WeaponKillStats[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 1, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18428:18524], x) + } + if x, err := v.WeaponKillStats[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 2, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18524:18620], x) + } + if x, err := v.WeaponKillStats[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 3, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18620:18716], x) + } + if x, err := v.WeaponKillStats[4].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 4, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18716:18812], x) + } + if x, err := v.WeaponKillStats[5].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 5, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18812:18908], x) + } + if x, err := v.WeaponKillStats[6].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 6, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[18908:19004], x) + } + if x, err := v.WeaponKillStats[7].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 7, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[19004:19100], x) + } + if x, err := v.WeaponKillStats[8].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 8, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[19100:19196], x) + } + if x, err := v.WeaponKillStats[9].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 9, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[19196:19292], x) + } + if x, err := v.WeaponKillStats[10].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 10, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[19292:19388], x) + } + if x, err := v.WeaponKillStats[11].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 11, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[19388:19484], x) + } + if x, err := v.WeaponKillStats[12].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 12, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[19484:19580], x) + } + if x, err := v.WeaponKillStats[13].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 13, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[19580:19676], x) + } + if x, err := v.WeaponKillStats[14].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 14, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[19676:19772], x) + } + if x, err := v.WeaponKillStats[15].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 15, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[19772:19868], x) + } + if x, err := v.WeaponKillStats[16].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 16, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[19868:19964], x) + } + if x, err := v.WeaponKillStats[17].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 17, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[19964:20060], x) + } + if x, err := v.WeaponKillStats[18].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 18, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[20060:20156], x) + } + if x, err := v.WeaponKillStats[19].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 19, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[20156:20252], x) + } + if x, err := v.WeaponKillStats[20].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 20, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[20252:20348], x) + } + if x, err := v.WeaponKillStats[21].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 21, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[20348:20444], x) + } + if x, err := v.WeaponKillStats[22].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 22, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[20444:20540], x) + } + if x, err := v.WeaponKillStats[23].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 23, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[20540:20636], x) + } + if x, err := v.WeaponKillStats[24].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 24, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[20636:20732], x) + } + if x, err := v.WeaponKillStats[25].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 25, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[20732:20828], x) + } + if x, err := v.WeaponKillStats[26].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 26, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[20828:20924], x) + } + if x, err := v.WeaponKillStats[27].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 27, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[20924:21020], x) + } + if x, err := v.WeaponKillStats[28].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 28, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[21020:21116], x) + } + if x, err := v.WeaponKillStats[29].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 29, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[21116:21212], x) + } + if x, err := v.WeaponKillStats[30].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 30, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[21212:21308], x) + } + if x, err := v.WeaponKillStats[31].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 31, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[21308:21404], x) + } + if x, err := v.WeaponKillStats[32].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 32, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[21404:21500], x) + } + if x, err := v.WeaponKillStats[33].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 33, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[21500:21596], x) + } + if x, err := v.WeaponKillStats[34].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 34, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[21596:21692], x) + } + if x, err := v.WeaponKillStats[35].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 35, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[21692:21788], x) + } + if x, err := v.WeaponKillStats[36].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 36, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[21788:21884], x) + } + if x, err := v.WeaponKillStats[37].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 37, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[21884:21980], x) + } + if x, err := v.WeaponKillStats[38].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 38, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[21980:22076], x) + } + if x, err := v.WeaponKillStats[39].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 39, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[22076:22172], x) + } + if x, err := v.WeaponKillStats[40].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 40, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[22172:22268], x) + } + if x, err := v.WeaponKillStats[41].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 41, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[22268:22364], x) + } + if x, err := v.WeaponKillStats[42].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 42, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[22364:22460], x) + } + if x, err := v.WeaponKillStats[43].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 43, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[22460:22556], x) + } + if x, err := v.WeaponKillStats[44].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 44, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[22556:22652], x) + } + if x, err := v.WeaponKillStats[45].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 45, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[22652:22748], x) + } + if x, err := v.WeaponKillStats[46].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 46, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[22748:22844], x) + } + if x, err := v.WeaponKillStats[47].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 47, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[22844:22940], x) + } + if x, err := v.WeaponKillStats[48].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 48, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[22940:23036], x) + } + if x, err := v.WeaponKillStats[49].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 49, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[23036:23132], x) + } + if x, err := v.WeaponKillStats[50].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 50, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[23132:23228], x) + } + if x, err := v.WeaponKillStats[51].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 51, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[23228:23324], x) + } + if x, err := v.WeaponKillStats[52].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 52, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[23324:23420], x) + } + if x, err := v.WeaponKillStats[53].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 53, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[23420:23516], x) + } + if x, err := v.WeaponKillStats[54].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 54, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[23516:23612], x) + } + if x, err := v.WeaponKillStats[55].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 55, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[23612:23708], x) + } + if x, err := v.WeaponKillStats[56].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 56, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[23708:23804], x) + } + if x, err := v.WeaponKillStats[57].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 57, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[23804:23900], x) + } + if x, err := v.WeaponKillStats[58].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 58, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[23900:23996], x) + } + if x, err := v.WeaponKillStats[59].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 59, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[23996:24092], x) + } + if x, err := v.WeaponKillStats[60].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 60, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[24092:24188], x) + } + if x, err := v.WeaponKillStats[61].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 61, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[24188:24284], x) + } + if x, err := v.WeaponKillStats[62].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 62, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[24284:24380], x) + } + if x, err := v.WeaponKillStats[63].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 63, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[24380:24476], x) + } + if x, err := v.WeaponKillStats[64].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 64, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[24476:24572], x) + } + if x, err := v.WeaponKillStats[65].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 65, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[24572:24668], x) + } + if x, err := v.WeaponKillStats[66].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 66, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[24668:24764], x) + } + if x, err := v.WeaponKillStats[67].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 67, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[24764:24860], x) + } + if x, err := v.WeaponKillStats[68].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 68, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[24860:24956], x) + } + if x, err := v.WeaponKillStats[69].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 69, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[24956:25052], x) + } + if x, err := v.WeaponKillStats[70].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 70, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[25052:25148], x) + } + if x, err := v.WeaponKillStats[71].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 71, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[25148:25244], x) + } + if x, err := v.WeaponKillStats[72].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 72, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[25244:25340], x) + } + if x, err := v.WeaponKillStats[73].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 73, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[25340:25436], x) + } + if x, err := v.WeaponKillStats[74].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 74, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[25436:25532], x) + } + if x, err := v.WeaponKillStats[75].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 75, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[25532:25628], x) + } + if x, err := v.WeaponKillStats[76].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 76, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[25628:25724], x) + } + if x, err := v.WeaponKillStats[77].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 77, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[25724:25820], x) + } + if x, err := v.WeaponKillStats[78].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 78, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[25820:25916], x) + } + if x, err := v.WeaponKillStats[79].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 79, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[25916:26012], x) + } + if x, err := v.WeaponKillStats[80].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 80, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[26012:26108], x) + } + if x, err := v.WeaponKillStats[81].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 81, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[26108:26204], x) + } + if x, err := v.WeaponKillStats[82].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 82, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[26204:26300], x) + } + if x, err := v.WeaponKillStats[83].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 83, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[26300:26396], x) + } + if x, err := v.WeaponKillStats[84].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 84, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[26396:26492], x) + } + if x, err := v.WeaponKillStats[85].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 85, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[26492:26588], x) + } + if x, err := v.WeaponKillStats[86].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 86, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[26588:26684], x) + } + if x, err := v.WeaponKillStats[87].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 87, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[26684:26780], x) + } + if x, err := v.WeaponKillStats[88].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 88, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[26780:26876], x) + } + if x, err := v.WeaponKillStats[89].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 89, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[26876:26972], x) + } + if x, err := v.WeaponKillStats[90].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 90, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[26972:27068], x) + } + if x, err := v.WeaponKillStats[91].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 91, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[27068:27164], x) + } + if x, err := v.WeaponKillStats[92].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 92, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[27164:27260], x) + } + if x, err := v.WeaponKillStats[93].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 93, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[27260:27356], x) + } + if x, err := v.WeaponKillStats[94].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 94, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[27356:27452], x) + } + if x, err := v.WeaponKillStats[95].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 95, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[27452:27548], x) + } + if x, err := v.WeaponKillStats[96].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 96, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[27548:27644], x) + } + if x, err := v.WeaponKillStats[97].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 97, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[27644:27740], x) + } + if x, err := v.WeaponKillStats[98].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 98, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[27740:27836], x) + } + if x, err := v.WeaponKillStats[99].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "weaponKillStats", 99, err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[27836:27932], x) + } + if x, err := v.KillStats.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "pdata", Version, "killStats", err) + } else if len(x) != 412 { + panic("bug: invalid marshal struct size") + } else { + copy(b[27932:28344], x) + } + if x, err := v.DeathStats.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "pdata", Version, "deathStats", err) + } else if len(x) != 116 { + panic("bug: invalid marshal struct size") + } else { + copy(b[28344:28460], x) + } + if x, err := v.MiscStats.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "pdata", Version, "miscStats", err) + } else if len(x) != 204 { + panic("bug: invalid marshal struct size") + } else { + copy(b[28460:28664], x) + } + if x, err := v.FdStats.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "pdata", Version, "fdStats", err) + } else if len(x) != 56 { + panic("bug: invalid marshal struct size") + } else { + copy(b[28664:28720], x) + } + if x, err := v.TitanStats[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanStats", 0, err) + } else if len(x) != 76 { + panic("bug: invalid marshal struct size") + } else { + copy(b[28720:28796], x) + } + if x, err := v.TitanStats[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanStats", 1, err) + } else if len(x) != 76 { + panic("bug: invalid marshal struct size") + } else { + copy(b[28796:28872], x) + } + if x, err := v.TitanStats[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanStats", 2, err) + } else if len(x) != 76 { + panic("bug: invalid marshal struct size") + } else { + copy(b[28872:28948], x) + } + if x, err := v.TitanStats[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanStats", 3, err) + } else if len(x) != 76 { + panic("bug: invalid marshal struct size") + } else { + copy(b[28948:29024], x) + } + if x, err := v.TitanStats[4].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanStats", 4, err) + } else if len(x) != 76 { + panic("bug: invalid marshal struct size") + } else { + copy(b[29024:29100], x) + } + if x, err := v.TitanStats[5].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanStats", 5, err) + } else if len(x) != 76 { + panic("bug: invalid marshal struct size") + } else { + copy(b[29100:29176], x) + } + if x, err := v.TitanStats[6].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanStats", 6, err) + } else if len(x) != 76 { + panic("bug: invalid marshal struct size") + } else { + copy(b[29176:29252], x) + } + putFloat(b[29252:29256], v.Kdratio_lifetime) + putFloat(b[29256:29260], v.Kdratio_lifetime_pvp) + putFloat(b[29260:29264], v.Kdratio_match[0]) + putFloat(b[29264:29268], v.Kdratio_match[1]) + putFloat(b[29268:29272], v.Kdratio_match[2]) + putFloat(b[29272:29276], v.Kdratio_match[3]) + putFloat(b[29276:29280], v.Kdratio_match[4]) + putFloat(b[29280:29284], v.Kdratio_match[5]) + putFloat(b[29284:29288], v.Kdratio_match[6]) + putFloat(b[29288:29292], v.Kdratio_match[7]) + putFloat(b[29292:29296], v.Kdratio_match[8]) + putFloat(b[29296:29300], v.Kdratio_match[9]) + putFloat(b[29300:29304], v.Kdratiopvp_match[0]) + putFloat(b[29304:29308], v.Kdratiopvp_match[1]) + putFloat(b[29308:29312], v.Kdratiopvp_match[2]) + putFloat(b[29312:29316], v.Kdratiopvp_match[3]) + putFloat(b[29316:29320], v.Kdratiopvp_match[4]) + putFloat(b[29320:29324], v.Kdratiopvp_match[5]) + putFloat(b[29324:29328], v.Kdratiopvp_match[6]) + putFloat(b[29328:29332], v.Kdratiopvp_match[7]) + putFloat(b[29332:29336], v.Kdratiopvp_match[8]) + putFloat(b[29336:29340], v.Kdratiopvp_match[9]) + putInt(b[29340:29344], v.WinStreak) + putInt(b[29344:29348], v.HighestWinStreakEver) + putBool(b[29348:29349], v.WinStreakIsDraws) + putInt(b[29349:29353], v.WinLossHistory[0]) + putInt(b[29353:29357], v.WinLossHistory[1]) + putInt(b[29357:29361], v.WinLossHistory[2]) + putInt(b[29361:29365], v.WinLossHistory[3]) + putInt(b[29365:29369], v.WinLossHistory[4]) + putInt(b[29369:29373], v.WinLossHistory[5]) + putInt(b[29373:29377], v.WinLossHistory[6]) + putInt(b[29377:29381], v.WinLossHistory[7]) + putInt(b[29381:29385], v.WinLossHistory[8]) + putInt(b[29385:29389], v.WinLossHistory[9]) + putInt(b[29389:29393], v.WinLossHistorySize) + putInt(b[29393:29397], v.MostProjectilesCollectedInVortex) + putInt(b[29397:29401], v.BlackMarketItemsBought) + putBool(b[29401:29402], v.RespawnKillInfected) + if x, err := v.PilotWeapons[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 0, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[29402:29646], x) + } + if x, err := v.PilotWeapons[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 1, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[29646:29890], x) + } + if x, err := v.PilotWeapons[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 2, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[29890:30134], x) + } + if x, err := v.PilotWeapons[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 3, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[30134:30378], x) + } + if x, err := v.PilotWeapons[4].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 4, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[30378:30622], x) + } + if x, err := v.PilotWeapons[5].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 5, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[30622:30866], x) + } + if x, err := v.PilotWeapons[6].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 6, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[30866:31110], x) + } + if x, err := v.PilotWeapons[7].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 7, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[31110:31354], x) + } + if x, err := v.PilotWeapons[8].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 8, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[31354:31598], x) + } + if x, err := v.PilotWeapons[9].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 9, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[31598:31842], x) + } + if x, err := v.PilotWeapons[10].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 10, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[31842:32086], x) + } + if x, err := v.PilotWeapons[11].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 11, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[32086:32330], x) + } + if x, err := v.PilotWeapons[12].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 12, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[32330:32574], x) + } + if x, err := v.PilotWeapons[13].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 13, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[32574:32818], x) + } + if x, err := v.PilotWeapons[14].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 14, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[32818:33062], x) + } + if x, err := v.PilotWeapons[15].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 15, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[33062:33306], x) + } + if x, err := v.PilotWeapons[16].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 16, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[33306:33550], x) + } + if x, err := v.PilotWeapons[17].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 17, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[33550:33794], x) + } + if x, err := v.PilotWeapons[18].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 18, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[33794:34038], x) + } + if x, err := v.PilotWeapons[19].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 19, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[34038:34282], x) + } + if x, err := v.PilotWeapons[20].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 20, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[34282:34526], x) + } + if x, err := v.PilotWeapons[21].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 21, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[34526:34770], x) + } + if x, err := v.PilotWeapons[22].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 22, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[34770:35014], x) + } + if x, err := v.PilotWeapons[23].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 23, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[35014:35258], x) + } + if x, err := v.PilotWeapons[24].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 24, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[35258:35502], x) + } + if x, err := v.PilotWeapons[25].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 25, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[35502:35746], x) + } + if x, err := v.PilotWeapons[26].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 26, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[35746:35990], x) + } + if x, err := v.PilotWeapons[27].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 27, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[35990:36234], x) + } + if x, err := v.PilotWeapons[28].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 28, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[36234:36478], x) + } + if x, err := v.PilotWeapons[29].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 29, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[36478:36722], x) + } + if x, err := v.PilotWeapons[30].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 30, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[36722:36966], x) + } + if x, err := v.PilotWeapons[31].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 31, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[36966:37210], x) + } + if x, err := v.PilotWeapons[32].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 32, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[37210:37454], x) + } + if x, err := v.PilotWeapons[33].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 33, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[37454:37698], x) + } + if x, err := v.PilotWeapons[34].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotWeapons", 34, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[37698:37942], x) + } + if x, err := v.PilotOffhands[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 0, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[37942:38066], x) + } + if x, err := v.PilotOffhands[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 1, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[38066:38190], x) + } + if x, err := v.PilotOffhands[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 2, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[38190:38314], x) + } + if x, err := v.PilotOffhands[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 3, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[38314:38438], x) + } + if x, err := v.PilotOffhands[4].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 4, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[38438:38562], x) + } + if x, err := v.PilotOffhands[5].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 5, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[38562:38686], x) + } + if x, err := v.PilotOffhands[6].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 6, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[38686:38810], x) + } + if x, err := v.PilotOffhands[7].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 7, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[38810:38934], x) + } + if x, err := v.PilotOffhands[8].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 8, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[38934:39058], x) + } + if x, err := v.PilotOffhands[9].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 9, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[39058:39182], x) + } + if x, err := v.PilotOffhands[10].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 10, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[39182:39306], x) + } + if x, err := v.PilotOffhands[11].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 11, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[39306:39430], x) + } + if x, err := v.PilotOffhands[12].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 12, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[39430:39554], x) + } + if x, err := v.PilotOffhands[13].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 13, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[39554:39678], x) + } + if x, err := v.PilotOffhands[14].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 14, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[39678:39802], x) + } + if x, err := v.PilotOffhands[15].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 15, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[39802:39926], x) + } + if x, err := v.PilotOffhands[16].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 16, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[39926:40050], x) + } + if x, err := v.PilotOffhands[17].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 17, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[40050:40174], x) + } + if x, err := v.PilotOffhands[18].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 18, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[40174:40298], x) + } + if x, err := v.PilotOffhands[19].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 19, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[40298:40422], x) + } + if x, err := v.PilotOffhands[20].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 20, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[40422:40546], x) + } + if x, err := v.PilotOffhands[21].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 21, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[40546:40670], x) + } + if x, err := v.PilotOffhands[22].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 22, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[40670:40794], x) + } + if x, err := v.PilotOffhands[23].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 23, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[40794:40918], x) + } + if x, err := v.PilotOffhands[24].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 24, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[40918:41042], x) + } + if x, err := v.PilotOffhands[25].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 25, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[41042:41166], x) + } + if x, err := v.PilotOffhands[26].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 26, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[41166:41290], x) + } + if x, err := v.PilotOffhands[27].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 27, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[41290:41414], x) + } + if x, err := v.PilotOffhands[28].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 28, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[41414:41538], x) + } + if x, err := v.PilotOffhands[29].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 29, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[41538:41662], x) + } + if x, err := v.PilotOffhands[30].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 30, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[41662:41786], x) + } + if x, err := v.PilotOffhands[31].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 31, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[41786:41910], x) + } + if x, err := v.PilotOffhands[32].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 32, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[41910:42034], x) + } + if x, err := v.PilotOffhands[33].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 33, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[42034:42158], x) + } + if x, err := v.PilotOffhands[34].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "pilotOffhands", 34, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[42158:42282], x) + } + if x, err := v.TitanWeapons[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanWeapons", 0, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[42282:42526], x) + } + if x, err := v.TitanWeapons[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanWeapons", 1, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[42526:42770], x) + } + if x, err := v.TitanWeapons[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanWeapons", 2, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[42770:43014], x) + } + if x, err := v.TitanWeapons[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanWeapons", 3, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[43014:43258], x) + } + if x, err := v.TitanWeapons[4].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanWeapons", 4, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[43258:43502], x) + } + if x, err := v.TitanWeapons[5].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanWeapons", 5, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[43502:43746], x) + } + if x, err := v.TitanWeapons[6].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanWeapons", 6, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[43746:43990], x) + } + if x, err := v.TitanWeapons[7].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanWeapons", 7, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[43990:44234], x) + } + if x, err := v.TitanWeapons[8].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanWeapons", 8, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[44234:44478], x) + } + if x, err := v.TitanWeapons[9].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanWeapons", 9, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[44478:44722], x) + } + if x, err := v.TitanWeapons[10].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanWeapons", 10, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[44722:44966], x) + } + if x, err := v.TitanWeapons[11].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanWeapons", 11, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[44966:45210], x) + } + if x, err := v.TitanWeapons[12].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanWeapons", 12, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[45210:45454], x) + } + if x, err := v.TitanWeapons[13].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanWeapons", 13, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[45454:45698], x) + } + if x, err := v.TitanWeapons[14].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanWeapons", 14, err) + } else if len(x) != 244 { + panic("bug: invalid marshal struct size") + } else { + copy(b[45698:45942], x) + } + if x, err := v.TitanOffhands[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 0, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[45942:46066], x) + } + if x, err := v.TitanOffhands[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 1, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[46066:46190], x) + } + if x, err := v.TitanOffhands[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 2, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[46190:46314], x) + } + if x, err := v.TitanOffhands[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 3, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[46314:46438], x) + } + if x, err := v.TitanOffhands[4].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 4, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[46438:46562], x) + } + if x, err := v.TitanOffhands[5].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 5, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[46562:46686], x) + } + if x, err := v.TitanOffhands[6].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 6, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[46686:46810], x) + } + if x, err := v.TitanOffhands[7].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 7, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[46810:46934], x) + } + if x, err := v.TitanOffhands[8].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 8, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[46934:47058], x) + } + if x, err := v.TitanOffhands[9].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 9, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[47058:47182], x) + } + if x, err := v.TitanOffhands[10].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 10, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[47182:47306], x) + } + if x, err := v.TitanOffhands[11].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 11, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[47306:47430], x) + } + if x, err := v.TitanOffhands[12].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 12, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[47430:47554], x) + } + if x, err := v.TitanOffhands[13].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 13, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[47554:47678], x) + } + if x, err := v.TitanOffhands[14].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 14, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[47678:47802], x) + } + if x, err := v.TitanOffhands[15].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 15, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[47802:47926], x) + } + if x, err := v.TitanOffhands[16].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 16, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[47926:48050], x) + } + if x, err := v.TitanOffhands[17].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 17, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[48050:48174], x) + } + if x, err := v.TitanOffhands[18].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 18, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[48174:48298], x) + } + if x, err := v.TitanOffhands[19].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 19, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[48298:48422], x) + } + if x, err := v.TitanOffhands[20].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 20, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[48422:48546], x) + } + if x, err := v.TitanOffhands[21].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 21, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[48546:48670], x) + } + if x, err := v.TitanOffhands[22].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 22, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[48670:48794], x) + } + if x, err := v.TitanOffhands[23].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 23, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[48794:48918], x) + } + if x, err := v.TitanOffhands[24].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 24, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[48918:49042], x) + } + if x, err := v.TitanOffhands[25].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 25, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[49042:49166], x) + } + if x, err := v.TitanOffhands[26].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 26, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[49166:49290], x) + } + if x, err := v.TitanOffhands[27].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 27, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[49290:49414], x) + } + if x, err := v.TitanOffhands[28].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 28, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[49414:49538], x) + } + if x, err := v.TitanOffhands[29].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanOffhands", 29, err) + } else if len(x) != 124 { + panic("bug: invalid marshal struct size") + } else { + copy(b[49538:49662], x) + } + if x, err := v.TitanChassis[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanChassis", 0, err) + } else if len(x) != 168 { + panic("bug: invalid marshal struct size") + } else { + copy(b[49662:49830], x) + } + if x, err := v.TitanChassis[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanChassis", 1, err) + } else if len(x) != 168 { + panic("bug: invalid marshal struct size") + } else { + copy(b[49830:49998], x) + } + if x, err := v.TitanChassis[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanChassis", 2, err) + } else if len(x) != 168 { + panic("bug: invalid marshal struct size") + } else { + copy(b[49998:50166], x) + } + if x, err := v.TitanChassis[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanChassis", 3, err) + } else if len(x) != 168 { + panic("bug: invalid marshal struct size") + } else { + copy(b[50166:50334], x) + } + if x, err := v.TitanChassis[4].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanChassis", 4, err) + } else if len(x) != 168 { + panic("bug: invalid marshal struct size") + } else { + copy(b[50334:50502], x) + } + if x, err := v.TitanChassis[5].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanChassis", 5, err) + } else if len(x) != 168 { + panic("bug: invalid marshal struct size") + } else { + copy(b[50502:50670], x) + } + if x, err := v.TitanChassis[6].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanChassis", 6, err) + } else if len(x) != 168 { + panic("bug: invalid marshal struct size") + } else { + copy(b[50670:50838], x) + } + if x, err := v.TitanChassis[7].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanChassis", 7, err) + } else if len(x) != 168 { + panic("bug: invalid marshal struct size") + } else { + copy(b[50838:51006], x) + } + if x, err := v.TitanChassis[8].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanChassis", 8, err) + } else if len(x) != 168 { + panic("bug: invalid marshal struct size") + } else { + copy(b[51006:51174], x) + } + if x, err := v.TitanChassis[9].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanChassis", 9, err) + } else if len(x) != 168 { + panic("bug: invalid marshal struct size") + } else { + copy(b[51174:51342], x) + } + if x, err := v.TitanChassis[10].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanChassis", 10, err) + } else if len(x) != 168 { + panic("bug: invalid marshal struct size") + } else { + copy(b[51342:51510], x) + } + if x, err := v.TitanChassis[11].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "titanChassis", 11, err) + } else if len(x) != 168 { + panic("bug: invalid marshal struct size") + } else { + copy(b[51510:51678], x) + } + putBool(b[51678:51679], v.HasSeenStore) + putInt(b[51679:51683], v.NewPilotSkins[0]) + putInt(b[51683:51687], v.NewPilotSkins[1]) + putInt(b[51687:51691], v.NewPilotSkins[2]) + putInt(b[51691:51695], v.NewPilotSkins[3]) + putInt(b[51695:51699], v.NewPilotSkins[4]) + putInt(b[51699:51703], v.UnlockedPilotSkins[0]) + putInt(b[51703:51707], v.UnlockedPilotSkins[1]) + putInt(b[51707:51711], v.UnlockedPilotSkins[2]) + putInt(b[51711:51715], v.UnlockedPilotSkins[3]) + putInt(b[51715:51719], v.UnlockedPilotSkins[4]) + putInt(b[51719:51723], v.NewPrimePilotSkins) + putInt(b[51723:51727], v.UnlockedPrimePilotSkins) + putInt(b[51727:51731], v.NewPilotWeapons[0]) + putInt(b[51731:51735], v.NewPilotWeapons[1]) + putInt(b[51735:51739], v.UnlockedPilotWeapons[0]) + putInt(b[51739:51743], v.UnlockedPilotWeapons[1]) + putInt(b[51743:51747], v.NewPilotOffhands[0]) + putInt(b[51747:51751], v.NewPilotOffhands[1]) + putInt(b[51751:51755], v.UnlockedPilotOffhands[0]) + putInt(b[51755:51759], v.UnlockedPilotOffhands[1]) + putInt(b[51759:51763], v.NewPilotPassives) + putInt(b[51763:51767], v.UnlockedPilotPassives) + putInt(b[51767:51771], v.NewTitanOffhands[0]) + putInt(b[51771:51775], v.NewTitanOffhands[1]) + putInt(b[51775:51779], v.UnlockedTitanOffhands[0]) + putInt(b[51779:51783], v.UnlockedTitanOffhands[1]) + putInt(b[51783:51787], v.NewTitanPassives) + putInt(b[51787:51791], v.UnlockedTitanPassives) + putInt(b[51791:51795], v.NewTitanChassis) + putInt(b[51795:51799], v.UnlockedTitanChassis) + putInt(b[51799:51803], v.NewPrimeTitans) + putInt(b[51803:51807], v.UnlockedPrimeTitans) + putInt(b[51807:51811], v.NewPilotSuits) + putInt(b[51811:51815], v.UnlockedPilotSuits) + putInt(b[51815:51819], v.NewPilotExecutions) + putInt(b[51819:51823], v.UnlockedPilotExecutions) + putInt(b[51823:51827], v.UnlockedFeatures[0]) + putInt(b[51827:51831], v.UnlockedFeatures[1]) + putInt(b[51831:51835], v.NewFeatures[0]) + putInt(b[51835:51839], v.NewFeatures[1]) + putInt(b[51839:51843], v.UnlockedBoosts) + putInt(b[51843:51847], v.NewBoosts) + putInt(b[51847:51851], v.UnlockedFactions) + putInt(b[51851:51855], v.NewFactions) + putInt(b[51855:51859], v.UnlockedCallingCards[0]) + putInt(b[51859:51863], v.UnlockedCallingCards[1]) + putInt(b[51863:51867], v.UnlockedCallingCards[2]) + putInt(b[51867:51871], v.UnlockedCallingCards[3]) + putInt(b[51871:51875], v.UnlockedCallingCards[4]) + putInt(b[51875:51879], v.UnlockedCallingCards[5]) + putInt(b[51879:51883], v.UnlockedCallingCards[6]) + putInt(b[51883:51887], v.UnlockedCallingCards[7]) + putInt(b[51887:51891], v.UnlockedCallingCards[8]) + putInt(b[51891:51895], v.UnlockedCallingCards[9]) + putInt(b[51895:51899], v.UnlockedCallingCards[10]) + putInt(b[51899:51903], v.UnlockedCallingCards[11]) + putInt(b[51903:51907], v.UnlockedCallingCards[12]) + putInt(b[51907:51911], v.UnlockedCallingCards[13]) + putInt(b[51911:51915], v.UnlockedCallingCards[14]) + putInt(b[51915:51919], v.UnlockedCallingCards[15]) + putInt(b[51919:51923], v.NewCallingCards[0]) + putInt(b[51923:51927], v.NewCallingCards[1]) + putInt(b[51927:51931], v.NewCallingCards[2]) + putInt(b[51931:51935], v.NewCallingCards[3]) + putInt(b[51935:51939], v.NewCallingCards[4]) + putInt(b[51939:51943], v.NewCallingCards[5]) + putInt(b[51943:51947], v.NewCallingCards[6]) + putInt(b[51947:51951], v.NewCallingCards[7]) + putInt(b[51951:51955], v.NewCallingCards[8]) + putInt(b[51955:51959], v.NewCallingCards[9]) + putInt(b[51959:51963], v.NewCallingCards[10]) + putInt(b[51963:51967], v.NewCallingCards[11]) + putInt(b[51967:51971], v.NewCallingCards[12]) + putInt(b[51971:51975], v.NewCallingCards[13]) + putInt(b[51975:51979], v.NewCallingCards[14]) + putInt(b[51979:51983], v.NewCallingCards[15]) + putInt(b[51983:51987], v.UnlockedCallsignIcons[0]) + putInt(b[51987:51991], v.UnlockedCallsignIcons[1]) + putInt(b[51991:51995], v.UnlockedCallsignIcons[2]) + putInt(b[51995:51999], v.UnlockedCallsignIcons[3]) + putInt(b[51999:52003], v.UnlockedCallsignIcons[4]) + putInt(b[52003:52007], v.UnlockedCallsignIcons[5]) + putInt(b[52007:52011], v.UnlockedCallsignIcons[6]) + putInt(b[52011:52015], v.NewCallsignIcons[0]) + putInt(b[52015:52019], v.NewCallsignIcons[1]) + putInt(b[52019:52023], v.NewCallsignIcons[2]) + putInt(b[52023:52027], v.NewCallsignIcons[3]) + putInt(b[52027:52031], v.NewCallsignIcons[4]) + putInt(b[52031:52035], v.NewCallsignIcons[5]) + putInt(b[52035:52039], v.NewCallsignIcons[6]) + putInt(b[52039:52043], v.UnlockedCommsIcons[0]) + putInt(b[52043:52047], v.UnlockedCommsIcons[1]) + putInt(b[52047:52051], v.UnlockedCommsIcons[2]) + putInt(b[52051:52055], v.UnlockedCommsIcons[3]) + putInt(b[52055:52059], v.UnlockedCommsIcons[4]) + putInt(b[52059:52063], v.NewCommsIcons[0]) + putInt(b[52063:52067], v.NewCommsIcons[1]) + putInt(b[52067:52071], v.NewCommsIcons[2]) + putInt(b[52071:52075], v.NewCommsIcons[3]) + putInt(b[52075:52079], v.NewCommsIcons[4]) + putInt(b[52079:52083], v.NewTitanExecutions) + putInt(b[52083:52087], v.UnlockedTitanExecutions) + if x, err := v.Challenges[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 0, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52087:52095], x) + } + if x, err := v.Challenges[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 1, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52095:52103], x) + } + if x, err := v.Challenges[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 2, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52103:52111], x) + } + if x, err := v.Challenges[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 3, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52111:52119], x) + } + if x, err := v.Challenges[4].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 4, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52119:52127], x) + } + if x, err := v.Challenges[5].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 5, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52127:52135], x) + } + if x, err := v.Challenges[6].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 6, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52135:52143], x) + } + if x, err := v.Challenges[7].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 7, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52143:52151], x) + } + if x, err := v.Challenges[8].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 8, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52151:52159], x) + } + if x, err := v.Challenges[9].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 9, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52159:52167], x) + } + if x, err := v.Challenges[10].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 10, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52167:52175], x) + } + if x, err := v.Challenges[11].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 11, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52175:52183], x) + } + if x, err := v.Challenges[12].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 12, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52183:52191], x) + } + if x, err := v.Challenges[13].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 13, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52191:52199], x) + } + if x, err := v.Challenges[14].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 14, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52199:52207], x) + } + if x, err := v.Challenges[15].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 15, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52207:52215], x) + } + if x, err := v.Challenges[16].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 16, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52215:52223], x) + } + if x, err := v.Challenges[17].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 17, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52223:52231], x) + } + if x, err := v.Challenges[18].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 18, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52231:52239], x) + } + if x, err := v.Challenges[19].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 19, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52239:52247], x) + } + if x, err := v.Challenges[20].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 20, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52247:52255], x) + } + if x, err := v.Challenges[21].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 21, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52255:52263], x) + } + if x, err := v.Challenges[22].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 22, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52263:52271], x) + } + if x, err := v.Challenges[23].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 23, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52271:52279], x) + } + if x, err := v.Challenges[24].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 24, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52279:52287], x) + } + if x, err := v.Challenges[25].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 25, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52287:52295], x) + } + if x, err := v.Challenges[26].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 26, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52295:52303], x) + } + if x, err := v.Challenges[27].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 27, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52303:52311], x) + } + if x, err := v.Challenges[28].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 28, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52311:52319], x) + } + if x, err := v.Challenges[29].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 29, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52319:52327], x) + } + if x, err := v.Challenges[30].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 30, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52327:52335], x) + } + if x, err := v.Challenges[31].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 31, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52335:52343], x) + } + if x, err := v.Challenges[32].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 32, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52343:52351], x) + } + if x, err := v.Challenges[33].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 33, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52351:52359], x) + } + if x, err := v.Challenges[34].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 34, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52359:52367], x) + } + if x, err := v.Challenges[35].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 35, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52367:52375], x) + } + if x, err := v.Challenges[36].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 36, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52375:52383], x) + } + if x, err := v.Challenges[37].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 37, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52383:52391], x) + } + if x, err := v.Challenges[38].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 38, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52391:52399], x) + } + if x, err := v.Challenges[39].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 39, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52399:52407], x) + } + if x, err := v.Challenges[40].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 40, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52407:52415], x) + } + if x, err := v.Challenges[41].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 41, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52415:52423], x) + } + if x, err := v.Challenges[42].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 42, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52423:52431], x) + } + if x, err := v.Challenges[43].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 43, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52431:52439], x) + } + if x, err := v.Challenges[44].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 44, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52439:52447], x) + } + if x, err := v.Challenges[45].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 45, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52447:52455], x) + } + if x, err := v.Challenges[46].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 46, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52455:52463], x) + } + if x, err := v.Challenges[47].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 47, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52463:52471], x) + } + if x, err := v.Challenges[48].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 48, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52471:52479], x) + } + if x, err := v.Challenges[49].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 49, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52479:52487], x) + } + if x, err := v.Challenges[50].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 50, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52487:52495], x) + } + if x, err := v.Challenges[51].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 51, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52495:52503], x) + } + if x, err := v.Challenges[52].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 52, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52503:52511], x) + } + if x, err := v.Challenges[53].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 53, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52511:52519], x) + } + if x, err := v.Challenges[54].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 54, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52519:52527], x) + } + if x, err := v.Challenges[55].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 55, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52527:52535], x) + } + if x, err := v.Challenges[56].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 56, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52535:52543], x) + } + if x, err := v.Challenges[57].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 57, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52543:52551], x) + } + if x, err := v.Challenges[58].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 58, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52551:52559], x) + } + if x, err := v.Challenges[59].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 59, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52559:52567], x) + } + if x, err := v.Challenges[60].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 60, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52567:52575], x) + } + if x, err := v.Challenges[61].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 61, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52575:52583], x) + } + if x, err := v.Challenges[62].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 62, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52583:52591], x) + } + if x, err := v.Challenges[63].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 63, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52591:52599], x) + } + if x, err := v.Challenges[64].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 64, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52599:52607], x) + } + if x, err := v.Challenges[65].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 65, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52607:52615], x) + } + if x, err := v.Challenges[66].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 66, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52615:52623], x) + } + if x, err := v.Challenges[67].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 67, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52623:52631], x) + } + if x, err := v.Challenges[68].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 68, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52631:52639], x) + } + if x, err := v.Challenges[69].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 69, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52639:52647], x) + } + if x, err := v.Challenges[70].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 70, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52647:52655], x) + } + if x, err := v.Challenges[71].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 71, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52655:52663], x) + } + if x, err := v.Challenges[72].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 72, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52663:52671], x) + } + if x, err := v.Challenges[73].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 73, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52671:52679], x) + } + if x, err := v.Challenges[74].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 74, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52679:52687], x) + } + if x, err := v.Challenges[75].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 75, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52687:52695], x) + } + if x, err := v.Challenges[76].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 76, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52695:52703], x) + } + if x, err := v.Challenges[77].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 77, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52703:52711], x) + } + if x, err := v.Challenges[78].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 78, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52711:52719], x) + } + if x, err := v.Challenges[79].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 79, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52719:52727], x) + } + if x, err := v.Challenges[80].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 80, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52727:52735], x) + } + if x, err := v.Challenges[81].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 81, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52735:52743], x) + } + if x, err := v.Challenges[82].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 82, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52743:52751], x) + } + if x, err := v.Challenges[83].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 83, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52751:52759], x) + } + if x, err := v.Challenges[84].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 84, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52759:52767], x) + } + if x, err := v.Challenges[85].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 85, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52767:52775], x) + } + if x, err := v.Challenges[86].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 86, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52775:52783], x) + } + if x, err := v.Challenges[87].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 87, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52783:52791], x) + } + if x, err := v.Challenges[88].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 88, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52791:52799], x) + } + if x, err := v.Challenges[89].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 89, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52799:52807], x) + } + if x, err := v.Challenges[90].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 90, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52807:52815], x) + } + if x, err := v.Challenges[91].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 91, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52815:52823], x) + } + if x, err := v.Challenges[92].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 92, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52823:52831], x) + } + if x, err := v.Challenges[93].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 93, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52831:52839], x) + } + if x, err := v.Challenges[94].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 94, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52839:52847], x) + } + if x, err := v.Challenges[95].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 95, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52847:52855], x) + } + if x, err := v.Challenges[96].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 96, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52855:52863], x) + } + if x, err := v.Challenges[97].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 97, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52863:52871], x) + } + if x, err := v.Challenges[98].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 98, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52871:52879], x) + } + if x, err := v.Challenges[99].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 99, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52879:52887], x) + } + if x, err := v.Challenges[100].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 100, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52887:52895], x) + } + if x, err := v.Challenges[101].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 101, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52895:52903], x) + } + if x, err := v.Challenges[102].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 102, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52903:52911], x) + } + if x, err := v.Challenges[103].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 103, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52911:52919], x) + } + if x, err := v.Challenges[104].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 104, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52919:52927], x) + } + if x, err := v.Challenges[105].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 105, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52927:52935], x) + } + if x, err := v.Challenges[106].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 106, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52935:52943], x) + } + if x, err := v.Challenges[107].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 107, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52943:52951], x) + } + if x, err := v.Challenges[108].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 108, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52951:52959], x) + } + if x, err := v.Challenges[109].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 109, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52959:52967], x) + } + if x, err := v.Challenges[110].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 110, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52967:52975], x) + } + if x, err := v.Challenges[111].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 111, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52975:52983], x) + } + if x, err := v.Challenges[112].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 112, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52983:52991], x) + } + if x, err := v.Challenges[113].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 113, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52991:52999], x) + } + if x, err := v.Challenges[114].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 114, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52999:53007], x) + } + if x, err := v.Challenges[115].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 115, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53007:53015], x) + } + if x, err := v.Challenges[116].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 116, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53015:53023], x) + } + if x, err := v.Challenges[117].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 117, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53023:53031], x) + } + if x, err := v.Challenges[118].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 118, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53031:53039], x) + } + if x, err := v.Challenges[119].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 119, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53039:53047], x) + } + if x, err := v.Challenges[120].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 120, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53047:53055], x) + } + if x, err := v.Challenges[121].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 121, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53055:53063], x) + } + if x, err := v.Challenges[122].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 122, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53063:53071], x) + } + if x, err := v.Challenges[123].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 123, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53071:53079], x) + } + if x, err := v.Challenges[124].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 124, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53079:53087], x) + } + if x, err := v.Challenges[125].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 125, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53087:53095], x) + } + if x, err := v.Challenges[126].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 126, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53095:53103], x) + } + if x, err := v.Challenges[127].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 127, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53103:53111], x) + } + if x, err := v.Challenges[128].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 128, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53111:53119], x) + } + if x, err := v.Challenges[129].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 129, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53119:53127], x) + } + if x, err := v.Challenges[130].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 130, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53127:53135], x) + } + if x, err := v.Challenges[131].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 131, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53135:53143], x) + } + if x, err := v.Challenges[132].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 132, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53143:53151], x) + } + if x, err := v.Challenges[133].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 133, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53151:53159], x) + } + if x, err := v.Challenges[134].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 134, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53159:53167], x) + } + if x, err := v.Challenges[135].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 135, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53167:53175], x) + } + if x, err := v.Challenges[136].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 136, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53175:53183], x) + } + if x, err := v.Challenges[137].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 137, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53183:53191], x) + } + if x, err := v.Challenges[138].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 138, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53191:53199], x) + } + if x, err := v.Challenges[139].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 139, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53199:53207], x) + } + if x, err := v.Challenges[140].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 140, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53207:53215], x) + } + if x, err := v.Challenges[141].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 141, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53215:53223], x) + } + if x, err := v.Challenges[142].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 142, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53223:53231], x) + } + if x, err := v.Challenges[143].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 143, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53231:53239], x) + } + if x, err := v.Challenges[144].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 144, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53239:53247], x) + } + if x, err := v.Challenges[145].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 145, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53247:53255], x) + } + if x, err := v.Challenges[146].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 146, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53255:53263], x) + } + if x, err := v.Challenges[147].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 147, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53263:53271], x) + } + if x, err := v.Challenges[148].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 148, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53271:53279], x) + } + if x, err := v.Challenges[149].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 149, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53279:53287], x) + } + if x, err := v.Challenges[150].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 150, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53287:53295], x) + } + if x, err := v.Challenges[151].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 151, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53295:53303], x) + } + if x, err := v.Challenges[152].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 152, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53303:53311], x) + } + if x, err := v.Challenges[153].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 153, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53311:53319], x) + } + if x, err := v.Challenges[154].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 154, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53319:53327], x) + } + if x, err := v.Challenges[155].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 155, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53327:53335], x) + } + if x, err := v.Challenges[156].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 156, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53335:53343], x) + } + if x, err := v.Challenges[157].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 157, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53343:53351], x) + } + if x, err := v.Challenges[158].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 158, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53351:53359], x) + } + if x, err := v.Challenges[159].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 159, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53359:53367], x) + } + if x, err := v.Challenges[160].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 160, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53367:53375], x) + } + if x, err := v.Challenges[161].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 161, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53375:53383], x) + } + if x, err := v.Challenges[162].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 162, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53383:53391], x) + } + if x, err := v.Challenges[163].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 163, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53391:53399], x) + } + if x, err := v.Challenges[164].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 164, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53399:53407], x) + } + if x, err := v.Challenges[165].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 165, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53407:53415], x) + } + if x, err := v.Challenges[166].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 166, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53415:53423], x) + } + if x, err := v.Challenges[167].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 167, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53423:53431], x) + } + if x, err := v.Challenges[168].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 168, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53431:53439], x) + } + if x, err := v.Challenges[169].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 169, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53439:53447], x) + } + if x, err := v.Challenges[170].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 170, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53447:53455], x) + } + if x, err := v.Challenges[171].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 171, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53455:53463], x) + } + if x, err := v.Challenges[172].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 172, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53463:53471], x) + } + if x, err := v.Challenges[173].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 173, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53471:53479], x) + } + if x, err := v.Challenges[174].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 174, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53479:53487], x) + } + if x, err := v.Challenges[175].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 175, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53487:53495], x) + } + if x, err := v.Challenges[176].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "challenges", 176, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53495:53503], x) + } + if x, err := v.Dailychallenges[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "dailychallenges", 0, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53503:53511], x) + } + if x, err := v.Dailychallenges[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "dailychallenges", 1, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53511:53519], x) + } + if x, err := v.Dailychallenges[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "dailychallenges", 2, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53519:53527], x) + } + if x, err := v.Dailychallenges[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "dailychallenges", 3, err) + } else if len(x) != 8 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53527:53535], x) + } + if x, err := v.ActiveDailyChallenges[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "activeDailyChallenges", 0, err) + } else if len(x) != 5 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53535:53540], x) + } + if x, err := v.ActiveDailyChallenges[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "activeDailyChallenges", 1, err) + } else if len(x) != 5 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53540:53545], x) + } + if x, err := v.ActiveDailyChallenges[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "activeDailyChallenges", 2, err) + } else if len(x) != 5 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53545:53550], x) + } + if x, err := v.ActiveDailyChallenges[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "activeDailyChallenges", 3, err) + } else if len(x) != 5 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53550:53555], x) + } + if x, err := v.ActiveDailyChallenges[4].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "activeDailyChallenges", 4, err) + } else if len(x) != 5 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53555:53560], x) + } + if x, err := v.ActiveDailyChallenges[5].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "activeDailyChallenges", 5, err) + } else if len(x) != 5 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53560:53565], x) + } + if x, err := v.ActiveDailyChallenges[6].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "activeDailyChallenges", 6, err) + } else if len(x) != 5 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53565:53570], x) + } + if x, err := v.ActiveDailyChallenges[7].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "activeDailyChallenges", 7, err) + } else if len(x) != 5 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53570:53575], x) + } + if x, err := v.ActiveDailyChallenges[8].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "pdata", Version, "activeDailyChallenges", 8, err) + } else if len(x) != 5 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53575:53580], x) + } + putInt(b[53580:53584], v.TrackedChallenges[0]) + putInt(b[53584:53588], v.TrackedChallenges[1]) + putInt(b[53588:53592], v.TrackedChallenges[2]) + putInt(b[53592:53596], v.EOGTrackedChallenges[0]) + putInt(b[53596:53600], v.EOGTrackedChallenges[1]) + putInt(b[53600:53604], v.EOGTrackedChallenges[2]) + if err := putString(b[53604:53668], v.TrackedChallengeRefs[0]); err != nil { + return nil, fmt.Errorf("encode %q (v%d): %w: field %q idx %d: %v", "pdata", Version, ErrInvalidSize, "trackedChallengeRefs", 0, err) + } + if err := putString(b[53668:53732], v.TrackedChallengeRefs[1]); err != nil { + return nil, fmt.Errorf("encode %q (v%d): %w: field %q idx %d: %v", "pdata", Version, ErrInvalidSize, "trackedChallengeRefs", 1, err) + } + if err := putString(b[53732:53796], v.TrackedChallengeRefs[2]); err != nil { + return nil, fmt.Errorf("encode %q (v%d): %w: field %q idx %d: %v", "pdata", Version, ErrInvalidSize, "trackedChallengeRefs", 2, err) + } + if err := putString(b[53796:53860], v.EOGTrackedChallengeRefs[0]); err != nil { + return nil, fmt.Errorf("encode %q (v%d): %w: field %q idx %d: %v", "pdata", Version, ErrInvalidSize, "EOGTrackedChallengeRefs", 0, err) + } + if err := putString(b[53860:53924], v.EOGTrackedChallengeRefs[1]); err != nil { + return nil, fmt.Errorf("encode %q (v%d): %w: field %q idx %d: %v", "pdata", Version, ErrInvalidSize, "EOGTrackedChallengeRefs", 1, err) + } + if err := putString(b[53924:53988], v.EOGTrackedChallengeRefs[2]); err != nil { + return nil, fmt.Errorf("encode %q (v%d): %w: field %q idx %d: %v", "pdata", Version, ErrInvalidSize, "EOGTrackedChallengeRefs", 2, err) + } + putInt(b[53988:53992], v.DailyChallengeDayIndex) + putBool(b[53992:53993], v.NewDailyChallenges) + putBool(b[53993:53994], v.IsPostGameScoreboardValid) + if x, err := v.PostGameData.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "pdata", Version, "postGameData", err) + } else if len(x) != 1644 { + panic("bug: invalid marshal struct size") + } else { + copy(b[53994:55638], x) + } + putBool(b[55638:55639], v.IsFDPostGameScoreboardValid) + if x, err := v.PostGameDataFD.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "pdata", Version, "postGameDataFD", err) + } else if len(x) != 280 { + panic("bug: invalid marshal struct size") + } else { + copy(b[55639:55919], x) + } + putInt(b[55919:55923], v.PreviousGooserProgress) + putInt(b[55923:55927], v.MapHistory[0]) + putInt(b[55927:55931], v.MapHistory[1]) + putInt(b[55931:55935], v.MapHistory[2]) + putInt(b[55935:55939], v.MapHistory[3]) + putInt(b[55939:55943], v.MapHistory[4]) + putInt(b[55943:55947], v.MapHistory[5]) + putInt(b[55947:55951], v.MapHistory[6]) + putInt(b[55951:55955], v.MapHistory[7]) + putInt(b[55955:55959], v.MapHistory[8]) + putInt(b[55959:55963], v.MapHistory[9]) + putInt(b[55963:55967], v.MapHistory[10]) + putInt(b[55967:55971], v.MapHistory[11]) + putInt(b[55971:55975], v.MapHistory[12]) + putInt(b[55975:55979], v.MapHistory[13]) + putInt(b[55979:55983], v.MapHistory[14]) + putInt(b[55983:55987], v.MapHistory[15]) + putInt(b[55987:55991], v.MapHistory[16]) + putInt(b[55991:55995], v.MapHistory[17]) + putInt(b[55995:55999], v.MapHistory[18]) + putInt(b[55999:56003], v.MapHistory[19]) + putInt(b[56003:56007], v.MapHistory[20]) + putInt(b[56007:56011], v.MapHistory[21]) + putInt(b[56011:56015], v.MapHistory[22]) + putInt(b[56015:56019], v.MapHistory[23]) + putInt(b[56019:56023], v.ModeHistory[0]) + putInt(b[56023:56027], v.ModeHistory[1]) + putInt(b[56027:56031], v.ModeHistory[2]) + putInt(b[56031:56035], v.ModeHistory[3]) + putInt(b[56035:56039], v.ModeHistory[4]) + putInt(b[56039:56043], v.ModeHistory[5]) + putInt(b[56043:56047], v.ModeHistory[6]) + putInt(b[56047:56051], v.ModeHistory[7]) + putInt(b[56051:56055], v.ModeHistory[8]) + putInt(b[56055:56059], v.ModeHistory[9]) + if err := putString(b[56059:56091], v.LastPlaylist); err != nil { + return nil, fmt.Errorf("encode %q (v%d): %w: field %q: %v", "pdata", Version, ErrInvalidSize, "lastPlaylist", err) + } + putInt(b[56091:56095], v.LastDailyMatchVictory) + putInt(b[56095:56099], v.LastTimePlayed) + putInt(b[56099:56103], v.LastTimeLoggedIn) + putInt(b[56103:56107], v.AbandonCountForMode[0]) + putInt(b[56107:56111], v.AbandonCountForMode[1]) + putInt(b[56111:56115], v.AbandonCountForMode[2]) + putInt(b[56115:56119], v.AbandonCountForMode[3]) + putInt(b[56119:56123], v.AbandonCountForMode[4]) + putInt(b[56123:56127], v.AbandonCountForMode[5]) + putInt(b[56127:56131], v.AbandonCountForMode[6]) + putInt(b[56131:56135], v.AbandonCountForMode[7]) + putInt(b[56135:56139], v.AbandonCountForMode[8]) + putInt(b[56139:56143], v.AbandonCountForMode[9]) + putInt(b[56143:56147], v.AbandonCountForMode[10]) + putInt(b[56147:56151], v.AbandonCountForMode[11]) + putInt(b[56151:56155], v.AbandonCountForMode[12]) + putInt(b[56155:56159], v.AbandonCountForMode[13]) + putEnum(b[56159:56160], uint8(v.LastAbandonedMode)) + putInt(b[56160:56164], v.LastAbandonTime) + if x, err := v.Ranked.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "pdata", Version, "ranked", err) + } else if len(x) != 5 { + panic("bug: invalid marshal struct size") + } else { + copy(b[56164:56169], x) + } + b = append(b, v.ExtraData...) + return b, nil +} + +type ActiveDailyChallenge struct { + Ref Dailychallenge `json:"ref"` + Day int32 `json:"day"` +} + +var _ encoding.BinaryUnmarshaler = (*ActiveDailyChallenge)(nil) +var _ encoding.BinaryMarshaler = ActiveDailyChallenge{} + +func (v *ActiveDailyChallenge) UnmarshalBinary(b []byte) error { + if len(b) != 5 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "activeDailyChallenge", Version, ErrInvalidSize, 5, len(b)) + } + v.Ref = Dailychallenge(getEnum(b[0:1])) + v.Day = getInt(b[1:5]) + return nil +} +func (v ActiveDailyChallenge) MarshalBinary() ([]byte, error) { + b := make([]byte, 5) + putEnum(b[0:1], uint8(v.Ref)) + putInt(b[1:5], v.Day) + return b, nil +} + +type EChallenge struct { + Progress float32 `json:"progress"` + PreviousProgress float32 `json:"previousProgress"` +} + +var _ encoding.BinaryUnmarshaler = (*EChallenge)(nil) +var _ encoding.BinaryMarshaler = EChallenge{} + +func (v *EChallenge) UnmarshalBinary(b []byte) error { + if len(b) != 8 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "eChallenge", Version, ErrInvalidSize, 8, len(b)) + } + v.Progress = getFloat(b[0:4]) + v.PreviousProgress = getFloat(b[4:8]) + return nil +} +func (v EChallenge) MarshalBinary() ([]byte, error) { + b := make([]byte, 8) + putFloat(b[0:4], v.Progress) + putFloat(b[4:8], v.PreviousProgress) + return b, nil +} + +type EFDPostGameData struct { + GameMode int32 `json:"gameMode"` + Map int32 `json:"map"` + MyIndex int32 `json:"myIndex"` + NumPlayers int32 `json:"numPlayers"` + Players [4]EFDPostGamePlayer `json:"players"` +} + +var _ encoding.BinaryUnmarshaler = (*EFDPostGameData)(nil) +var _ encoding.BinaryMarshaler = EFDPostGameData{} + +func (v *EFDPostGameData) UnmarshalBinary(b []byte) error { + if len(b) != 280 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "eFDPostGameData", Version, ErrInvalidSize, 280, len(b)) + } + v.GameMode = getInt(b[0:4]) + v.Map = getInt(b[4:8]) + v.MyIndex = getInt(b[8:12]) + v.NumPlayers = getInt(b[12:16]) + must(v.Players[0].UnmarshalBinary(b[16:82])) + must(v.Players[1].UnmarshalBinary(b[82:148])) + must(v.Players[2].UnmarshalBinary(b[148:214])) + must(v.Players[3].UnmarshalBinary(b[214:280])) + return nil +} +func (v EFDPostGameData) MarshalBinary() ([]byte, error) { + b := make([]byte, 280) + putInt(b[0:4], v.GameMode) + putInt(b[4:8], v.Map) + putInt(b[8:12], v.MyIndex) + putInt(b[12:16], v.NumPlayers) + if x, err := v.Players[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "eFDPostGameData", Version, "players", 0, err) + } else if len(x) != 66 { + panic("bug: invalid marshal struct size") + } else { + copy(b[16:82], x) + } + if x, err := v.Players[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "eFDPostGameData", Version, "players", 1, err) + } else if len(x) != 66 { + panic("bug: invalid marshal struct size") + } else { + copy(b[82:148], x) + } + if x, err := v.Players[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "eFDPostGameData", Version, "players", 2, err) + } else if len(x) != 66 { + panic("bug: invalid marshal struct size") + } else { + copy(b[148:214], x) + } + if x, err := v.Players[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "eFDPostGameData", Version, "players", 3, err) + } else if len(x) != 66 { + panic("bug: invalid marshal struct size") + } else { + copy(b[214:280], x) + } + return b, nil +} + +type EFDPostGamePlayer struct { + Name string `json:"name"` + Xuid string `json:"xuid"` + AwardId int32 `json:"awardId"` + AwardValue float32 `json:"awardValue"` + SuitIndex int32 `json:"suitIndex"` +} + +var _ encoding.BinaryUnmarshaler = (*EFDPostGamePlayer)(nil) +var _ encoding.BinaryMarshaler = EFDPostGamePlayer{} + +func (v *EFDPostGamePlayer) UnmarshalBinary(b []byte) error { + if len(b) != 66 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "eFDPostGamePlayer", Version, ErrInvalidSize, 66, len(b)) + } + v.Name = getString(b[0:32]) + v.Xuid = getString(b[32:54]) + v.AwardId = getInt(b[54:58]) + v.AwardValue = getFloat(b[58:62]) + v.SuitIndex = getInt(b[62:66]) + return nil +} +func (v EFDPostGamePlayer) MarshalBinary() ([]byte, error) { + b := make([]byte, 66) + if err := putString(b[0:32], v.Name); err != nil { + return nil, fmt.Errorf("encode %q (v%d): %w: field %q: %v", "eFDPostGamePlayer", Version, ErrInvalidSize, "name", err) + } + if err := putString(b[32:54], v.Xuid); err != nil { + return nil, fmt.Errorf("encode %q (v%d): %w: field %q: %v", "eFDPostGamePlayer", Version, ErrInvalidSize, "xuid", err) + } + putInt(b[54:58], v.AwardId) + putFloat(b[58:62], v.AwardValue) + putInt(b[62:66], v.SuitIndex) + return b, nil +} + +type EPostGameData struct { + GameMode int32 `json:"gameMode"` + Map int32 `json:"map"` + MyXuid string `json:"myXuid"` + MyTeam int32 `json:"myTeam"` + MaxTeamSize int32 `json:"maxTeamSize"` + FactionIMC Faction `json:"factionIMC"` + FactionMCOR Faction `json:"factionMCOR"` + ScoreIMC int32 `json:"scoreIMC"` + ScoreMCOR int32 `json:"scoreMCOR"` + Teams bool `json:"teams"` + PrivateMatch bool `json:"privateMatch"` + Ranked bool `json:"ranked"` + HadMatchLossProtection bool `json:"hadMatchLossProtection"` + ChallengeUnlocks [6]RecentUnlock `json:"challengeUnlocks"` + Players [16]EPostGamePlayer `json:"players"` +} + +var _ encoding.BinaryUnmarshaler = (*EPostGameData)(nil) +var _ encoding.BinaryMarshaler = EPostGameData{} + +func (v *EPostGameData) UnmarshalBinary(b []byte) error { + if len(b) != 1644 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "ePostGameData", Version, ErrInvalidSize, 1644, len(b)) + } + v.GameMode = getInt(b[0:4]) + v.Map = getInt(b[4:8]) + v.MyXuid = getString(b[8:30]) + v.MyTeam = getInt(b[30:34]) + v.MaxTeamSize = getInt(b[34:38]) + v.FactionIMC = Faction(getEnum(b[38:39])) + v.FactionMCOR = Faction(getEnum(b[39:40])) + v.ScoreIMC = getInt(b[40:44]) + v.ScoreMCOR = getInt(b[44:48]) + v.Teams = getBool(b[48:49]) + v.PrivateMatch = getBool(b[49:50]) + v.Ranked = getBool(b[50:51]) + v.HadMatchLossProtection = getBool(b[51:52]) + must(v.ChallengeUnlocks[0].UnmarshalBinary(b[52:64])) + must(v.ChallengeUnlocks[1].UnmarshalBinary(b[64:76])) + must(v.ChallengeUnlocks[2].UnmarshalBinary(b[76:88])) + must(v.ChallengeUnlocks[3].UnmarshalBinary(b[88:100])) + must(v.ChallengeUnlocks[4].UnmarshalBinary(b[100:112])) + must(v.ChallengeUnlocks[5].UnmarshalBinary(b[112:124])) + must(v.Players[0].UnmarshalBinary(b[124:219])) + must(v.Players[1].UnmarshalBinary(b[219:314])) + must(v.Players[2].UnmarshalBinary(b[314:409])) + must(v.Players[3].UnmarshalBinary(b[409:504])) + must(v.Players[4].UnmarshalBinary(b[504:599])) + must(v.Players[5].UnmarshalBinary(b[599:694])) + must(v.Players[6].UnmarshalBinary(b[694:789])) + must(v.Players[7].UnmarshalBinary(b[789:884])) + must(v.Players[8].UnmarshalBinary(b[884:979])) + must(v.Players[9].UnmarshalBinary(b[979:1074])) + must(v.Players[10].UnmarshalBinary(b[1074:1169])) + must(v.Players[11].UnmarshalBinary(b[1169:1264])) + must(v.Players[12].UnmarshalBinary(b[1264:1359])) + must(v.Players[13].UnmarshalBinary(b[1359:1454])) + must(v.Players[14].UnmarshalBinary(b[1454:1549])) + must(v.Players[15].UnmarshalBinary(b[1549:1644])) + return nil +} +func (v EPostGameData) MarshalBinary() ([]byte, error) { + b := make([]byte, 1644) + putInt(b[0:4], v.GameMode) + putInt(b[4:8], v.Map) + if err := putString(b[8:30], v.MyXuid); err != nil { + return nil, fmt.Errorf("encode %q (v%d): %w: field %q: %v", "ePostGameData", Version, ErrInvalidSize, "myXuid", err) + } + putInt(b[30:34], v.MyTeam) + putInt(b[34:38], v.MaxTeamSize) + putEnum(b[38:39], uint8(v.FactionIMC)) + putEnum(b[39:40], uint8(v.FactionMCOR)) + putInt(b[40:44], v.ScoreIMC) + putInt(b[44:48], v.ScoreMCOR) + putBool(b[48:49], v.Teams) + putBool(b[49:50], v.PrivateMatch) + putBool(b[50:51], v.Ranked) + putBool(b[51:52], v.HadMatchLossProtection) + if x, err := v.ChallengeUnlocks[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "challengeUnlocks", 0, err) + } else if len(x) != 12 { + panic("bug: invalid marshal struct size") + } else { + copy(b[52:64], x) + } + if x, err := v.ChallengeUnlocks[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "challengeUnlocks", 1, err) + } else if len(x) != 12 { + panic("bug: invalid marshal struct size") + } else { + copy(b[64:76], x) + } + if x, err := v.ChallengeUnlocks[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "challengeUnlocks", 2, err) + } else if len(x) != 12 { + panic("bug: invalid marshal struct size") + } else { + copy(b[76:88], x) + } + if x, err := v.ChallengeUnlocks[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "challengeUnlocks", 3, err) + } else if len(x) != 12 { + panic("bug: invalid marshal struct size") + } else { + copy(b[88:100], x) + } + if x, err := v.ChallengeUnlocks[4].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "challengeUnlocks", 4, err) + } else if len(x) != 12 { + panic("bug: invalid marshal struct size") + } else { + copy(b[100:112], x) + } + if x, err := v.ChallengeUnlocks[5].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "challengeUnlocks", 5, err) + } else if len(x) != 12 { + panic("bug: invalid marshal struct size") + } else { + copy(b[112:124], x) + } + if x, err := v.Players[0].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "players", 0, err) + } else if len(x) != 95 { + panic("bug: invalid marshal struct size") + } else { + copy(b[124:219], x) + } + if x, err := v.Players[1].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "players", 1, err) + } else if len(x) != 95 { + panic("bug: invalid marshal struct size") + } else { + copy(b[219:314], x) + } + if x, err := v.Players[2].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "players", 2, err) + } else if len(x) != 95 { + panic("bug: invalid marshal struct size") + } else { + copy(b[314:409], x) + } + if x, err := v.Players[3].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "players", 3, err) + } else if len(x) != 95 { + panic("bug: invalid marshal struct size") + } else { + copy(b[409:504], x) + } + if x, err := v.Players[4].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "players", 4, err) + } else if len(x) != 95 { + panic("bug: invalid marshal struct size") + } else { + copy(b[504:599], x) + } + if x, err := v.Players[5].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "players", 5, err) + } else if len(x) != 95 { + panic("bug: invalid marshal struct size") + } else { + copy(b[599:694], x) + } + if x, err := v.Players[6].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "players", 6, err) + } else if len(x) != 95 { + panic("bug: invalid marshal struct size") + } else { + copy(b[694:789], x) + } + if x, err := v.Players[7].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "players", 7, err) + } else if len(x) != 95 { + panic("bug: invalid marshal struct size") + } else { + copy(b[789:884], x) + } + if x, err := v.Players[8].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "players", 8, err) + } else if len(x) != 95 { + panic("bug: invalid marshal struct size") + } else { + copy(b[884:979], x) + } + if x, err := v.Players[9].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "players", 9, err) + } else if len(x) != 95 { + panic("bug: invalid marshal struct size") + } else { + copy(b[979:1074], x) + } + if x, err := v.Players[10].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "players", 10, err) + } else if len(x) != 95 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1074:1169], x) + } + if x, err := v.Players[11].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "players", 11, err) + } else if len(x) != 95 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1169:1264], x) + } + if x, err := v.Players[12].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "players", 12, err) + } else if len(x) != 95 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1264:1359], x) + } + if x, err := v.Players[13].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "players", 13, err) + } else if len(x) != 95 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1359:1454], x) + } + if x, err := v.Players[14].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "players", 14, err) + } else if len(x) != 95 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1454:1549], x) + } + if x, err := v.Players[15].MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q idx %d: %w", "ePostGameData", Version, "players", 15, err) + } else if len(x) != 95 { + panic("bug: invalid marshal struct size") + } else { + copy(b[1549:1644], x) + } + return b, nil +} + +type EPostGamePlayer struct { + Name string `json:"name"` + Xuid string `json:"xuid"` + Level int32 `json:"level"` + Gen int32 `json:"gen"` + Team int32 `json:"team"` + Scores [4]int32 `json:"scores"` + PlayingRanked bool `json:"playingRanked"` + Rank int32 `json:"rank"` + CallsignIconIndex int32 `json:"callsignIconIndex"` + MatchPerformance float32 `json:"matchPerformance"` +} + +var _ encoding.BinaryUnmarshaler = (*EPostGamePlayer)(nil) +var _ encoding.BinaryMarshaler = EPostGamePlayer{} + +func (v *EPostGamePlayer) UnmarshalBinary(b []byte) error { + if len(b) != 95 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "ePostGamePlayer", Version, ErrInvalidSize, 95, len(b)) + } + v.Name = getString(b[0:32]) + v.Xuid = getString(b[32:54]) + v.Level = getInt(b[54:58]) + v.Gen = getInt(b[58:62]) + v.Team = getInt(b[62:66]) + v.Scores[0] = getInt(b[66:70]) + v.Scores[1] = getInt(b[70:74]) + v.Scores[2] = getInt(b[74:78]) + v.Scores[3] = getInt(b[78:82]) + v.PlayingRanked = getBool(b[82:83]) + v.Rank = getInt(b[83:87]) + v.CallsignIconIndex = getInt(b[87:91]) + v.MatchPerformance = getFloat(b[91:95]) + return nil +} +func (v EPostGamePlayer) MarshalBinary() ([]byte, error) { + b := make([]byte, 95) + if err := putString(b[0:32], v.Name); err != nil { + return nil, fmt.Errorf("encode %q (v%d): %w: field %q: %v", "ePostGamePlayer", Version, ErrInvalidSize, "name", err) + } + if err := putString(b[32:54], v.Xuid); err != nil { + return nil, fmt.Errorf("encode %q (v%d): %w: field %q: %v", "ePostGamePlayer", Version, ErrInvalidSize, "xuid", err) + } + putInt(b[54:58], v.Level) + putInt(b[58:62], v.Gen) + putInt(b[62:66], v.Team) + putInt(b[66:70], v.Scores[0]) + putInt(b[70:74], v.Scores[1]) + putInt(b[74:78], v.Scores[2]) + putInt(b[78:82], v.Scores[3]) + putBool(b[82:83], v.PlayingRanked) + putInt(b[83:87], v.Rank) + putInt(b[87:91], v.CallsignIconIndex) + putFloat(b[91:95], v.MatchPerformance) + return b, nil +} + +type PilotLoadout struct { + Name string `json:"name"` + Suit PilotSuit `json:"suit"` + Race PilotRace `json:"race"` + Execution PilotExecution `json:"execution"` + Primary LoadoutWeaponsAndAbilities `json:"primary"` + PrimaryAttachment PilotMod `json:"primaryAttachment"` + PrimaryMod1 PilotMod `json:"primaryMod1"` + PrimaryMod2 PilotMod `json:"primaryMod2"` + PrimaryMod3 PilotMod `json:"primaryMod3"` + Secondary LoadoutWeaponsAndAbilities `json:"secondary"` + SecondaryMod1 PilotMod `json:"secondaryMod1"` + SecondaryMod2 PilotMod `json:"secondaryMod2"` + SecondaryMod3 PilotMod `json:"secondaryMod3"` + Weapon3 LoadoutWeaponsAndAbilities `json:"weapon3"` + Weapon3Mod1 PilotMod `json:"weapon3Mod1"` + Weapon3Mod2 PilotMod `json:"weapon3Mod2"` + Weapon3Mod3 PilotMod `json:"weapon3Mod3"` + Ordnance LoadoutWeaponsAndAbilities `json:"ordnance"` + Passive1 PilotPassive `json:"passive1"` + Passive2 PilotPassive `json:"passive2"` + SkinIndex int32 `json:"skinIndex"` + CamoIndex int32 `json:"camoIndex"` + PrimarySkinIndex int32 `json:"primarySkinIndex"` + PrimaryCamoIndex int32 `json:"primaryCamoIndex"` + SecondarySkinIndex int32 `json:"secondarySkinIndex"` + SecondaryCamoIndex int32 `json:"secondaryCamoIndex"` + Weapon3SkinIndex int32 `json:"weapon3SkinIndex"` + Weapon3CamoIndex int32 `json:"weapon3CamoIndex"` +} + +var _ encoding.BinaryUnmarshaler = (*PilotLoadout)(nil) +var _ encoding.BinaryMarshaler = PilotLoadout{} + +func (v *PilotLoadout) UnmarshalBinary(b []byte) error { + if len(b) != 93 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "pilotLoadout", Version, ErrInvalidSize, 93, len(b)) + } + v.Name = getString(b[0:42]) + v.Suit = PilotSuit(getEnum(b[42:43])) + v.Race = PilotRace(getEnum(b[43:44])) + v.Execution = PilotExecution(getEnum(b[44:45])) + v.Primary = LoadoutWeaponsAndAbilities(getEnum(b[45:46])) + v.PrimaryAttachment = PilotMod(getEnum(b[46:47])) + v.PrimaryMod1 = PilotMod(getEnum(b[47:48])) + v.PrimaryMod2 = PilotMod(getEnum(b[48:49])) + v.PrimaryMod3 = PilotMod(getEnum(b[49:50])) + v.Secondary = LoadoutWeaponsAndAbilities(getEnum(b[50:51])) + v.SecondaryMod1 = PilotMod(getEnum(b[51:52])) + v.SecondaryMod2 = PilotMod(getEnum(b[52:53])) + v.SecondaryMod3 = PilotMod(getEnum(b[53:54])) + v.Weapon3 = LoadoutWeaponsAndAbilities(getEnum(b[54:55])) + v.Weapon3Mod1 = PilotMod(getEnum(b[55:56])) + v.Weapon3Mod2 = PilotMod(getEnum(b[56:57])) + v.Weapon3Mod3 = PilotMod(getEnum(b[57:58])) + v.Ordnance = LoadoutWeaponsAndAbilities(getEnum(b[58:59])) + v.Passive1 = PilotPassive(getEnum(b[59:60])) + v.Passive2 = PilotPassive(getEnum(b[60:61])) + v.SkinIndex = getInt(b[61:65]) + v.CamoIndex = getInt(b[65:69]) + v.PrimarySkinIndex = getInt(b[69:73]) + v.PrimaryCamoIndex = getInt(b[73:77]) + v.SecondarySkinIndex = getInt(b[77:81]) + v.SecondaryCamoIndex = getInt(b[81:85]) + v.Weapon3SkinIndex = getInt(b[85:89]) + v.Weapon3CamoIndex = getInt(b[89:93]) + return nil +} +func (v PilotLoadout) MarshalBinary() ([]byte, error) { + b := make([]byte, 93) + if err := putString(b[0:42], v.Name); err != nil { + return nil, fmt.Errorf("encode %q (v%d): %w: field %q: %v", "pilotLoadout", Version, ErrInvalidSize, "name", err) + } + putEnum(b[42:43], uint8(v.Suit)) + putEnum(b[43:44], uint8(v.Race)) + putEnum(b[44:45], uint8(v.Execution)) + putEnum(b[45:46], uint8(v.Primary)) + putEnum(b[46:47], uint8(v.PrimaryAttachment)) + putEnum(b[47:48], uint8(v.PrimaryMod1)) + putEnum(b[48:49], uint8(v.PrimaryMod2)) + putEnum(b[49:50], uint8(v.PrimaryMod3)) + putEnum(b[50:51], uint8(v.Secondary)) + putEnum(b[51:52], uint8(v.SecondaryMod1)) + putEnum(b[52:53], uint8(v.SecondaryMod2)) + putEnum(b[53:54], uint8(v.SecondaryMod3)) + putEnum(b[54:55], uint8(v.Weapon3)) + putEnum(b[55:56], uint8(v.Weapon3Mod1)) + putEnum(b[56:57], uint8(v.Weapon3Mod2)) + putEnum(b[57:58], uint8(v.Weapon3Mod3)) + putEnum(b[58:59], uint8(v.Ordnance)) + putEnum(b[59:60], uint8(v.Passive1)) + putEnum(b[60:61], uint8(v.Passive2)) + putInt(b[61:65], v.SkinIndex) + putInt(b[65:69], v.CamoIndex) + putInt(b[69:73], v.PrimarySkinIndex) + putInt(b[73:77], v.PrimaryCamoIndex) + putInt(b[77:81], v.SecondarySkinIndex) + putInt(b[81:85], v.SecondaryCamoIndex) + putInt(b[85:89], v.Weapon3SkinIndex) + putInt(b[89:93], v.Weapon3CamoIndex) + return b, nil +} + +type PveData struct { + Version int32 `json:"version"` + Currency int32 `json:"currency"` + CurrencyInLatestMatch int32 `json:"currencyInLatestMatch"` + TacticalUnlocks [6]int32 `json:"tacticalUnlocks"` + FeathersForMap [MapsCount]int32 `json:"feathersForMap"` +} + +var _ encoding.BinaryUnmarshaler = (*PveData)(nil) +var _ encoding.BinaryMarshaler = PveData{} + +func (v *PveData) UnmarshalBinary(b []byte) error { + if len(b) != 136 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "pveData", Version, ErrInvalidSize, 136, len(b)) + } + v.Version = getInt(b[0:4]) + v.Currency = getInt(b[4:8]) + v.CurrencyInLatestMatch = getInt(b[8:12]) + v.TacticalUnlocks[0] = getInt(b[12:16]) + v.TacticalUnlocks[1] = getInt(b[16:20]) + v.TacticalUnlocks[2] = getInt(b[20:24]) + v.TacticalUnlocks[3] = getInt(b[24:28]) + v.TacticalUnlocks[4] = getInt(b[28:32]) + v.TacticalUnlocks[5] = getInt(b[32:36]) + v.FeathersForMap[0] = getInt(b[36:40]) + v.FeathersForMap[1] = getInt(b[40:44]) + v.FeathersForMap[2] = getInt(b[44:48]) + v.FeathersForMap[3] = getInt(b[48:52]) + v.FeathersForMap[4] = getInt(b[52:56]) + v.FeathersForMap[5] = getInt(b[56:60]) + v.FeathersForMap[6] = getInt(b[60:64]) + v.FeathersForMap[7] = getInt(b[64:68]) + v.FeathersForMap[8] = getInt(b[68:72]) + v.FeathersForMap[9] = getInt(b[72:76]) + v.FeathersForMap[10] = getInt(b[76:80]) + v.FeathersForMap[11] = getInt(b[80:84]) + v.FeathersForMap[12] = getInt(b[84:88]) + v.FeathersForMap[13] = getInt(b[88:92]) + v.FeathersForMap[14] = getInt(b[92:96]) + v.FeathersForMap[15] = getInt(b[96:100]) + v.FeathersForMap[16] = getInt(b[100:104]) + v.FeathersForMap[17] = getInt(b[104:108]) + v.FeathersForMap[18] = getInt(b[108:112]) + v.FeathersForMap[19] = getInt(b[112:116]) + v.FeathersForMap[20] = getInt(b[116:120]) + v.FeathersForMap[21] = getInt(b[120:124]) + v.FeathersForMap[22] = getInt(b[124:128]) + v.FeathersForMap[23] = getInt(b[128:132]) + v.FeathersForMap[24] = getInt(b[132:136]) + return nil +} +func (v PveData) MarshalBinary() ([]byte, error) { + b := make([]byte, 136) + putInt(b[0:4], v.Version) + putInt(b[4:8], v.Currency) + putInt(b[8:12], v.CurrencyInLatestMatch) + putInt(b[12:16], v.TacticalUnlocks[0]) + putInt(b[16:20], v.TacticalUnlocks[1]) + putInt(b[20:24], v.TacticalUnlocks[2]) + putInt(b[24:28], v.TacticalUnlocks[3]) + putInt(b[28:32], v.TacticalUnlocks[4]) + putInt(b[32:36], v.TacticalUnlocks[5]) + putInt(b[36:40], v.FeathersForMap[0]) + putInt(b[40:44], v.FeathersForMap[1]) + putInt(b[44:48], v.FeathersForMap[2]) + putInt(b[48:52], v.FeathersForMap[3]) + putInt(b[52:56], v.FeathersForMap[4]) + putInt(b[56:60], v.FeathersForMap[5]) + putInt(b[60:64], v.FeathersForMap[6]) + putInt(b[64:68], v.FeathersForMap[7]) + putInt(b[68:72], v.FeathersForMap[8]) + putInt(b[72:76], v.FeathersForMap[9]) + putInt(b[76:80], v.FeathersForMap[10]) + putInt(b[80:84], v.FeathersForMap[11]) + putInt(b[84:88], v.FeathersForMap[12]) + putInt(b[88:92], v.FeathersForMap[13]) + putInt(b[92:96], v.FeathersForMap[14]) + putInt(b[96:100], v.FeathersForMap[15]) + putInt(b[100:104], v.FeathersForMap[16]) + putInt(b[104:108], v.FeathersForMap[17]) + putInt(b[108:112], v.FeathersForMap[18]) + putInt(b[112:116], v.FeathersForMap[19]) + putInt(b[116:120], v.FeathersForMap[20]) + putInt(b[120:124], v.FeathersForMap[21]) + putInt(b[124:128], v.FeathersForMap[22]) + putInt(b[128:132], v.FeathersForMap[23]) + putInt(b[132:136], v.FeathersForMap[24]) + return b, nil +} + +type RecentUnlock struct { + RefGuid int32 `json:"refGuid"` + ParentRefGuid int32 `json:"parentRefGuid"` + Count int32 `json:"count"` +} + +var _ encoding.BinaryUnmarshaler = (*RecentUnlock)(nil) +var _ encoding.BinaryMarshaler = RecentUnlock{} + +func (v *RecentUnlock) UnmarshalBinary(b []byte) error { + if len(b) != 12 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "recentUnlock", Version, ErrInvalidSize, 12, len(b)) + } + v.RefGuid = getInt(b[0:4]) + v.ParentRefGuid = getInt(b[4:8]) + v.Count = getInt(b[8:12]) + return nil +} +func (v RecentUnlock) MarshalBinary() ([]byte, error) { + b := make([]byte, 12) + putInt(b[0:4], v.RefGuid) + putInt(b[4:8], v.ParentRefGuid) + putInt(b[8:12], v.Count) + return b, nil +} + +type SDeathStats struct { + Total int32 `json:"total"` + TotalPVP int32 `json:"totalPVP"` + AsPilot int32 `json:"asPilot"` + AsTitan [TitanClassesCount]int32 `json:"asTitan"` + ByPilots int32 `json:"byPilots"` + BySpectres int32 `json:"bySpectres"` + ByGrunts int32 `json:"byGrunts"` + ByTitans [TitanClassesCount]int32 `json:"byTitans"` + ByNPCTitans [TitanClassesCount]int32 `json:"byNPCTitans"` + Suicides int32 `json:"suicides"` + WhileEjecting int32 `json:"whileEjecting"` +} + +var _ encoding.BinaryUnmarshaler = (*SDeathStats)(nil) +var _ encoding.BinaryMarshaler = SDeathStats{} + +func (v *SDeathStats) UnmarshalBinary(b []byte) error { + if len(b) != 116 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "sDeathStats", Version, ErrInvalidSize, 116, len(b)) + } + v.Total = getInt(b[0:4]) + v.TotalPVP = getInt(b[4:8]) + v.AsPilot = getInt(b[8:12]) + v.AsTitan[0] = getInt(b[12:16]) + v.AsTitan[1] = getInt(b[16:20]) + v.AsTitan[2] = getInt(b[20:24]) + v.AsTitan[3] = getInt(b[24:28]) + v.AsTitan[4] = getInt(b[28:32]) + v.AsTitan[5] = getInt(b[32:36]) + v.AsTitan[6] = getInt(b[36:40]) + v.ByPilots = getInt(b[40:44]) + v.BySpectres = getInt(b[44:48]) + v.ByGrunts = getInt(b[48:52]) + v.ByTitans[0] = getInt(b[52:56]) + v.ByTitans[1] = getInt(b[56:60]) + v.ByTitans[2] = getInt(b[60:64]) + v.ByTitans[3] = getInt(b[64:68]) + v.ByTitans[4] = getInt(b[68:72]) + v.ByTitans[5] = getInt(b[72:76]) + v.ByTitans[6] = getInt(b[76:80]) + v.ByNPCTitans[0] = getInt(b[80:84]) + v.ByNPCTitans[1] = getInt(b[84:88]) + v.ByNPCTitans[2] = getInt(b[88:92]) + v.ByNPCTitans[3] = getInt(b[92:96]) + v.ByNPCTitans[4] = getInt(b[96:100]) + v.ByNPCTitans[5] = getInt(b[100:104]) + v.ByNPCTitans[6] = getInt(b[104:108]) + v.Suicides = getInt(b[108:112]) + v.WhileEjecting = getInt(b[112:116]) + return nil +} +func (v SDeathStats) MarshalBinary() ([]byte, error) { + b := make([]byte, 116) + putInt(b[0:4], v.Total) + putInt(b[4:8], v.TotalPVP) + putInt(b[8:12], v.AsPilot) + putInt(b[12:16], v.AsTitan[0]) + putInt(b[16:20], v.AsTitan[1]) + putInt(b[20:24], v.AsTitan[2]) + putInt(b[24:28], v.AsTitan[3]) + putInt(b[28:32], v.AsTitan[4]) + putInt(b[32:36], v.AsTitan[5]) + putInt(b[36:40], v.AsTitan[6]) + putInt(b[40:44], v.ByPilots) + putInt(b[44:48], v.BySpectres) + putInt(b[48:52], v.ByGrunts) + putInt(b[52:56], v.ByTitans[0]) + putInt(b[56:60], v.ByTitans[1]) + putInt(b[60:64], v.ByTitans[2]) + putInt(b[64:68], v.ByTitans[3]) + putInt(b[68:72], v.ByTitans[4]) + putInt(b[72:76], v.ByTitans[5]) + putInt(b[76:80], v.ByTitans[6]) + putInt(b[80:84], v.ByNPCTitans[0]) + putInt(b[84:88], v.ByNPCTitans[1]) + putInt(b[88:92], v.ByNPCTitans[2]) + putInt(b[92:96], v.ByNPCTitans[3]) + putInt(b[96:100], v.ByNPCTitans[4]) + putInt(b[100:104], v.ByNPCTitans[5]) + putInt(b[104:108], v.ByNPCTitans[6]) + putInt(b[108:112], v.Suicides) + putInt(b[112:116], v.WhileEjecting) + return b, nil +} + +type SFDStats struct { + ArcMinesPlaced int32 `json:"arcMinesPlaced"` + TurretsPlaced int32 `json:"turretsPlaced"` + Rodeos int32 `json:"rodeos"` + RodeoNukes int32 `json:"rodeoNukes"` + ArcMineZaps int32 `json:"arcMineZaps"` + TurretKills int32 `json:"turretKills"` + HarvesterBoosts int32 `json:"harvesterBoosts"` + WavesComplete int32 `json:"wavesComplete"` + EasyWins int32 `json:"easyWins"` + NormalWins int32 `json:"normalWins"` + HardWins int32 `json:"hardWins"` + MasterWins int32 `json:"masterWins"` + InsaneWins int32 `json:"insaneWins"` + HighestTitanFDLevel int32 `json:"highestTitanFDLevel"` +} + +var _ encoding.BinaryUnmarshaler = (*SFDStats)(nil) +var _ encoding.BinaryMarshaler = SFDStats{} + +func (v *SFDStats) UnmarshalBinary(b []byte) error { + if len(b) != 56 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "sFDStats", Version, ErrInvalidSize, 56, len(b)) + } + v.ArcMinesPlaced = getInt(b[0:4]) + v.TurretsPlaced = getInt(b[4:8]) + v.Rodeos = getInt(b[8:12]) + v.RodeoNukes = getInt(b[12:16]) + v.ArcMineZaps = getInt(b[16:20]) + v.TurretKills = getInt(b[20:24]) + v.HarvesterBoosts = getInt(b[24:28]) + v.WavesComplete = getInt(b[28:32]) + v.EasyWins = getInt(b[32:36]) + v.NormalWins = getInt(b[36:40]) + v.HardWins = getInt(b[40:44]) + v.MasterWins = getInt(b[44:48]) + v.InsaneWins = getInt(b[48:52]) + v.HighestTitanFDLevel = getInt(b[52:56]) + return nil +} +func (v SFDStats) MarshalBinary() ([]byte, error) { + b := make([]byte, 56) + putInt(b[0:4], v.ArcMinesPlaced) + putInt(b[4:8], v.TurretsPlaced) + putInt(b[8:12], v.Rodeos) + putInt(b[12:16], v.RodeoNukes) + putInt(b[16:20], v.ArcMineZaps) + putInt(b[20:24], v.TurretKills) + putInt(b[24:28], v.HarvesterBoosts) + putInt(b[28:32], v.WavesComplete) + putInt(b[32:36], v.EasyWins) + putInt(b[36:40], v.NormalWins) + putInt(b[40:44], v.HardWins) + putInt(b[44:48], v.MasterWins) + putInt(b[48:52], v.InsaneWins) + putInt(b[52:56], v.HighestTitanFDLevel) + return b, nil +} + +type SGameStats struct { + ModesPlayed [GameModesCount]int32 `json:"modesPlayed"` + PreviousModesPlayed [GameModesCount]int32 `json:"previousModesPlayed"` + ModesWon [GameModesCount]int32 `json:"modesWon"` + Mvp_total int32 `json:"mvp_total"` + GamesCompletedTotal int32 `json:"gamesCompletedTotal"` + GamesWonTotal int32 `json:"gamesWonTotal"` + GamesWonAsIMC int32 `json:"gamesWonAsIMC"` + GamesWonAsMilitia int32 `json:"gamesWonAsMilitia"` + GamesCompletedAsIMC int32 `json:"gamesCompletedAsIMC"` + GamesCompletedAsMilitia int32 `json:"gamesCompletedAsMilitia"` + PvpKills [GameModesCount]int32 `json:"pvpKills"` + TimesKillDeathRatio2to1 [GameModesCount]int32 `json:"timesKillDeathRatio2to1"` + TimesKillDeathRatio2to1_pvp [GameModesCount]int32 `json:"timesKillDeathRatio2to1_pvp"` + TimesScored100AttritionPoints_total int32 `json:"timesScored100AttritionPoints_total"` +} + +var _ encoding.BinaryUnmarshaler = (*SGameStats)(nil) +var _ encoding.BinaryMarshaler = SGameStats{} + +func (v *SGameStats) UnmarshalBinary(b []byte) error { + if len(b) != 368 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "sGameStats", Version, ErrInvalidSize, 368, len(b)) + } + v.ModesPlayed[0] = getInt(b[0:4]) + v.ModesPlayed[1] = getInt(b[4:8]) + v.ModesPlayed[2] = getInt(b[8:12]) + v.ModesPlayed[3] = getInt(b[12:16]) + v.ModesPlayed[4] = getInt(b[16:20]) + v.ModesPlayed[5] = getInt(b[20:24]) + v.ModesPlayed[6] = getInt(b[24:28]) + v.ModesPlayed[7] = getInt(b[28:32]) + v.ModesPlayed[8] = getInt(b[32:36]) + v.ModesPlayed[9] = getInt(b[36:40]) + v.ModesPlayed[10] = getInt(b[40:44]) + v.ModesPlayed[11] = getInt(b[44:48]) + v.ModesPlayed[12] = getInt(b[48:52]) + v.ModesPlayed[13] = getInt(b[52:56]) + v.PreviousModesPlayed[0] = getInt(b[56:60]) + v.PreviousModesPlayed[1] = getInt(b[60:64]) + v.PreviousModesPlayed[2] = getInt(b[64:68]) + v.PreviousModesPlayed[3] = getInt(b[68:72]) + v.PreviousModesPlayed[4] = getInt(b[72:76]) + v.PreviousModesPlayed[5] = getInt(b[76:80]) + v.PreviousModesPlayed[6] = getInt(b[80:84]) + v.PreviousModesPlayed[7] = getInt(b[84:88]) + v.PreviousModesPlayed[8] = getInt(b[88:92]) + v.PreviousModesPlayed[9] = getInt(b[92:96]) + v.PreviousModesPlayed[10] = getInt(b[96:100]) + v.PreviousModesPlayed[11] = getInt(b[100:104]) + v.PreviousModesPlayed[12] = getInt(b[104:108]) + v.PreviousModesPlayed[13] = getInt(b[108:112]) + v.ModesWon[0] = getInt(b[112:116]) + v.ModesWon[1] = getInt(b[116:120]) + v.ModesWon[2] = getInt(b[120:124]) + v.ModesWon[3] = getInt(b[124:128]) + v.ModesWon[4] = getInt(b[128:132]) + v.ModesWon[5] = getInt(b[132:136]) + v.ModesWon[6] = getInt(b[136:140]) + v.ModesWon[7] = getInt(b[140:144]) + v.ModesWon[8] = getInt(b[144:148]) + v.ModesWon[9] = getInt(b[148:152]) + v.ModesWon[10] = getInt(b[152:156]) + v.ModesWon[11] = getInt(b[156:160]) + v.ModesWon[12] = getInt(b[160:164]) + v.ModesWon[13] = getInt(b[164:168]) + v.Mvp_total = getInt(b[168:172]) + v.GamesCompletedTotal = getInt(b[172:176]) + v.GamesWonTotal = getInt(b[176:180]) + v.GamesWonAsIMC = getInt(b[180:184]) + v.GamesWonAsMilitia = getInt(b[184:188]) + v.GamesCompletedAsIMC = getInt(b[188:192]) + v.GamesCompletedAsMilitia = getInt(b[192:196]) + v.PvpKills[0] = getInt(b[196:200]) + v.PvpKills[1] = getInt(b[200:204]) + v.PvpKills[2] = getInt(b[204:208]) + v.PvpKills[3] = getInt(b[208:212]) + v.PvpKills[4] = getInt(b[212:216]) + v.PvpKills[5] = getInt(b[216:220]) + v.PvpKills[6] = getInt(b[220:224]) + v.PvpKills[7] = getInt(b[224:228]) + v.PvpKills[8] = getInt(b[228:232]) + v.PvpKills[9] = getInt(b[232:236]) + v.PvpKills[10] = getInt(b[236:240]) + v.PvpKills[11] = getInt(b[240:244]) + v.PvpKills[12] = getInt(b[244:248]) + v.PvpKills[13] = getInt(b[248:252]) + v.TimesKillDeathRatio2to1[0] = getInt(b[252:256]) + v.TimesKillDeathRatio2to1[1] = getInt(b[256:260]) + v.TimesKillDeathRatio2to1[2] = getInt(b[260:264]) + v.TimesKillDeathRatio2to1[3] = getInt(b[264:268]) + v.TimesKillDeathRatio2to1[4] = getInt(b[268:272]) + v.TimesKillDeathRatio2to1[5] = getInt(b[272:276]) + v.TimesKillDeathRatio2to1[6] = getInt(b[276:280]) + v.TimesKillDeathRatio2to1[7] = getInt(b[280:284]) + v.TimesKillDeathRatio2to1[8] = getInt(b[284:288]) + v.TimesKillDeathRatio2to1[9] = getInt(b[288:292]) + v.TimesKillDeathRatio2to1[10] = getInt(b[292:296]) + v.TimesKillDeathRatio2to1[11] = getInt(b[296:300]) + v.TimesKillDeathRatio2to1[12] = getInt(b[300:304]) + v.TimesKillDeathRatio2to1[13] = getInt(b[304:308]) + v.TimesKillDeathRatio2to1_pvp[0] = getInt(b[308:312]) + v.TimesKillDeathRatio2to1_pvp[1] = getInt(b[312:316]) + v.TimesKillDeathRatio2to1_pvp[2] = getInt(b[316:320]) + v.TimesKillDeathRatio2to1_pvp[3] = getInt(b[320:324]) + v.TimesKillDeathRatio2to1_pvp[4] = getInt(b[324:328]) + v.TimesKillDeathRatio2to1_pvp[5] = getInt(b[328:332]) + v.TimesKillDeathRatio2to1_pvp[6] = getInt(b[332:336]) + v.TimesKillDeathRatio2to1_pvp[7] = getInt(b[336:340]) + v.TimesKillDeathRatio2to1_pvp[8] = getInt(b[340:344]) + v.TimesKillDeathRatio2to1_pvp[9] = getInt(b[344:348]) + v.TimesKillDeathRatio2to1_pvp[10] = getInt(b[348:352]) + v.TimesKillDeathRatio2to1_pvp[11] = getInt(b[352:356]) + v.TimesKillDeathRatio2to1_pvp[12] = getInt(b[356:360]) + v.TimesKillDeathRatio2to1_pvp[13] = getInt(b[360:364]) + v.TimesScored100AttritionPoints_total = getInt(b[364:368]) + return nil +} +func (v SGameStats) MarshalBinary() ([]byte, error) { + b := make([]byte, 368) + putInt(b[0:4], v.ModesPlayed[0]) + putInt(b[4:8], v.ModesPlayed[1]) + putInt(b[8:12], v.ModesPlayed[2]) + putInt(b[12:16], v.ModesPlayed[3]) + putInt(b[16:20], v.ModesPlayed[4]) + putInt(b[20:24], v.ModesPlayed[5]) + putInt(b[24:28], v.ModesPlayed[6]) + putInt(b[28:32], v.ModesPlayed[7]) + putInt(b[32:36], v.ModesPlayed[8]) + putInt(b[36:40], v.ModesPlayed[9]) + putInt(b[40:44], v.ModesPlayed[10]) + putInt(b[44:48], v.ModesPlayed[11]) + putInt(b[48:52], v.ModesPlayed[12]) + putInt(b[52:56], v.ModesPlayed[13]) + putInt(b[56:60], v.PreviousModesPlayed[0]) + putInt(b[60:64], v.PreviousModesPlayed[1]) + putInt(b[64:68], v.PreviousModesPlayed[2]) + putInt(b[68:72], v.PreviousModesPlayed[3]) + putInt(b[72:76], v.PreviousModesPlayed[4]) + putInt(b[76:80], v.PreviousModesPlayed[5]) + putInt(b[80:84], v.PreviousModesPlayed[6]) + putInt(b[84:88], v.PreviousModesPlayed[7]) + putInt(b[88:92], v.PreviousModesPlayed[8]) + putInt(b[92:96], v.PreviousModesPlayed[9]) + putInt(b[96:100], v.PreviousModesPlayed[10]) + putInt(b[100:104], v.PreviousModesPlayed[11]) + putInt(b[104:108], v.PreviousModesPlayed[12]) + putInt(b[108:112], v.PreviousModesPlayed[13]) + putInt(b[112:116], v.ModesWon[0]) + putInt(b[116:120], v.ModesWon[1]) + putInt(b[120:124], v.ModesWon[2]) + putInt(b[124:128], v.ModesWon[3]) + putInt(b[128:132], v.ModesWon[4]) + putInt(b[132:136], v.ModesWon[5]) + putInt(b[136:140], v.ModesWon[6]) + putInt(b[140:144], v.ModesWon[7]) + putInt(b[144:148], v.ModesWon[8]) + putInt(b[148:152], v.ModesWon[9]) + putInt(b[152:156], v.ModesWon[10]) + putInt(b[156:160], v.ModesWon[11]) + putInt(b[160:164], v.ModesWon[12]) + putInt(b[164:168], v.ModesWon[13]) + putInt(b[168:172], v.Mvp_total) + putInt(b[172:176], v.GamesCompletedTotal) + putInt(b[176:180], v.GamesWonTotal) + putInt(b[180:184], v.GamesWonAsIMC) + putInt(b[184:188], v.GamesWonAsMilitia) + putInt(b[188:192], v.GamesCompletedAsIMC) + putInt(b[192:196], v.GamesCompletedAsMilitia) + putInt(b[196:200], v.PvpKills[0]) + putInt(b[200:204], v.PvpKills[1]) + putInt(b[204:208], v.PvpKills[2]) + putInt(b[208:212], v.PvpKills[3]) + putInt(b[212:216], v.PvpKills[4]) + putInt(b[216:220], v.PvpKills[5]) + putInt(b[220:224], v.PvpKills[6]) + putInt(b[224:228], v.PvpKills[7]) + putInt(b[228:232], v.PvpKills[8]) + putInt(b[232:236], v.PvpKills[9]) + putInt(b[236:240], v.PvpKills[10]) + putInt(b[240:244], v.PvpKills[11]) + putInt(b[244:248], v.PvpKills[12]) + putInt(b[248:252], v.PvpKills[13]) + putInt(b[252:256], v.TimesKillDeathRatio2to1[0]) + putInt(b[256:260], v.TimesKillDeathRatio2to1[1]) + putInt(b[260:264], v.TimesKillDeathRatio2to1[2]) + putInt(b[264:268], v.TimesKillDeathRatio2to1[3]) + putInt(b[268:272], v.TimesKillDeathRatio2to1[4]) + putInt(b[272:276], v.TimesKillDeathRatio2to1[5]) + putInt(b[276:280], v.TimesKillDeathRatio2to1[6]) + putInt(b[280:284], v.TimesKillDeathRatio2to1[7]) + putInt(b[284:288], v.TimesKillDeathRatio2to1[8]) + putInt(b[288:292], v.TimesKillDeathRatio2to1[9]) + putInt(b[292:296], v.TimesKillDeathRatio2to1[10]) + putInt(b[296:300], v.TimesKillDeathRatio2to1[11]) + putInt(b[300:304], v.TimesKillDeathRatio2to1[12]) + putInt(b[304:308], v.TimesKillDeathRatio2to1[13]) + putInt(b[308:312], v.TimesKillDeathRatio2to1_pvp[0]) + putInt(b[312:316], v.TimesKillDeathRatio2to1_pvp[1]) + putInt(b[316:320], v.TimesKillDeathRatio2to1_pvp[2]) + putInt(b[320:324], v.TimesKillDeathRatio2to1_pvp[3]) + putInt(b[324:328], v.TimesKillDeathRatio2to1_pvp[4]) + putInt(b[328:332], v.TimesKillDeathRatio2to1_pvp[5]) + putInt(b[332:336], v.TimesKillDeathRatio2to1_pvp[6]) + putInt(b[336:340], v.TimesKillDeathRatio2to1_pvp[7]) + putInt(b[340:344], v.TimesKillDeathRatio2to1_pvp[8]) + putInt(b[344:348], v.TimesKillDeathRatio2to1_pvp[9]) + putInt(b[348:352], v.TimesKillDeathRatio2to1_pvp[10]) + putInt(b[352:356], v.TimesKillDeathRatio2to1_pvp[11]) + putInt(b[356:360], v.TimesKillDeathRatio2to1_pvp[12]) + putInt(b[360:364], v.TimesKillDeathRatio2to1_pvp[13]) + putInt(b[364:368], v.TimesScored100AttritionPoints_total) + return b, nil +} + +type SHoursPlayed struct { + Total float32 `json:"total"` + AsTitan [TitanClassesCount]float32 `json:"asTitan"` + AsPilot float32 `json:"asPilot"` + AsTitanTotal float32 `json:"asTitanTotal"` + Dead float32 `json:"dead"` + Wallhanging float32 `json:"wallhanging"` + Wallrunning float32 `json:"wallrunning"` + InAir float32 `json:"inAir"` +} + +var _ encoding.BinaryUnmarshaler = (*SHoursPlayed)(nil) +var _ encoding.BinaryMarshaler = SHoursPlayed{} + +func (v *SHoursPlayed) UnmarshalBinary(b []byte) error { + if len(b) != 56 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "sHoursPlayed", Version, ErrInvalidSize, 56, len(b)) + } + v.Total = getFloat(b[0:4]) + v.AsTitan[0] = getFloat(b[4:8]) + v.AsTitan[1] = getFloat(b[8:12]) + v.AsTitan[2] = getFloat(b[12:16]) + v.AsTitan[3] = getFloat(b[16:20]) + v.AsTitan[4] = getFloat(b[20:24]) + v.AsTitan[5] = getFloat(b[24:28]) + v.AsTitan[6] = getFloat(b[28:32]) + v.AsPilot = getFloat(b[32:36]) + v.AsTitanTotal = getFloat(b[36:40]) + v.Dead = getFloat(b[40:44]) + v.Wallhanging = getFloat(b[44:48]) + v.Wallrunning = getFloat(b[48:52]) + v.InAir = getFloat(b[52:56]) + return nil +} +func (v SHoursPlayed) MarshalBinary() ([]byte, error) { + b := make([]byte, 56) + putFloat(b[0:4], v.Total) + putFloat(b[4:8], v.AsTitan[0]) + putFloat(b[8:12], v.AsTitan[1]) + putFloat(b[12:16], v.AsTitan[2]) + putFloat(b[16:20], v.AsTitan[3]) + putFloat(b[20:24], v.AsTitan[4]) + putFloat(b[24:28], v.AsTitan[5]) + putFloat(b[28:32], v.AsTitan[6]) + putFloat(b[32:36], v.AsPilot) + putFloat(b[36:40], v.AsTitanTotal) + putFloat(b[40:44], v.Dead) + putFloat(b[44:48], v.Wallhanging) + putFloat(b[48:52], v.Wallrunning) + putFloat(b[52:56], v.InAir) + return b, nil +} + +type SKillStats struct { + Total int32 `json:"total"` + TotalWhileUsingBurnCard int32 `json:"totalWhileUsingBurnCard"` + TitansWhileTitanBCActive int32 `json:"titansWhileTitanBCActive"` + TotalPVP int32 `json:"totalPVP"` + Pilots int32 `json:"pilots"` + Spectres int32 `json:"spectres"` + Marvins int32 `json:"marvins"` + Grunts int32 `json:"grunts"` + TotalTitans int32 `json:"totalTitans"` + TotalTitansWhileDoomed int32 `json:"totalTitansWhileDoomed"` + TotalPilots int32 `json:"totalPilots"` + TotalNPC int32 `json:"totalNPC"` + AsPilot int32 `json:"asPilot"` + AsTitan [TitanClassesCount]int32 `json:"asTitan"` + FirstStrikes int32 `json:"firstStrikes"` + EjectingPilots int32 `json:"ejectingPilots"` + WhileEjecting int32 `json:"whileEjecting"` + CloakedPilots int32 `json:"cloakedPilots"` + WhileCloaked int32 `json:"whileCloaked"` + WallrunningPilots int32 `json:"wallrunningPilots"` + WhileWallrunning int32 `json:"whileWallrunning"` + WallhangingPilots int32 `json:"wallhangingPilots"` + WhileWallhanging int32 `json:"whileWallhanging"` + PilotExecution int32 `json:"pilotExecution"` + PilotExecutePilot int32 `json:"pilotExecutePilot"` + PilotExecutePilotByType [PilotExecutionCount]int32 `json:"pilotExecutePilotByType"` + PilotKickMelee int32 `json:"pilotKickMelee"` + PilotKickMeleePilot int32 `json:"pilotKickMeleePilot"` + TitanMelee int32 `json:"titanMelee"` + TitanMeleePilot int32 `json:"titanMeleePilot"` + TitanStepCrush int32 `json:"titanStepCrush"` + TitanStepCrushPilot int32 `json:"titanStepCrushPilot"` + TitanExocutionIon int32 `json:"titanExocutionIon"` + TitanExocutionScorch int32 `json:"titanExocutionScorch"` + TitanExocutionNorthstar int32 `json:"titanExocutionNorthstar"` + TitanExocutionRonin int32 `json:"titanExocutionRonin"` + TitanExocutionTone int32 `json:"titanExocutionTone"` + TitanExocutionLegion int32 `json:"titanExocutionLegion"` + TitanExocutionVanguard int32 `json:"titanExocutionVanguard"` + TitanFallKill int32 `json:"titanFallKill"` + PetTitanKillsFollowMode int32 `json:"petTitanKillsFollowMode"` + PetTitanKillsGuardMode int32 `json:"petTitanKillsGuardMode"` + Rodeo_total int32 `json:"rodeo_total"` + Rodeo_stryder int32 `json:"rodeo_stryder"` + Rodeo_buddy int32 `json:"rodeo_buddy"` + Rodeo_atlas int32 `json:"rodeo_atlas"` + Rodeo_ogre int32 `json:"rodeo_ogre"` + Pilot_headshots_total int32 `json:"pilot_headshots_total"` + EvacShips int32 `json:"evacShips"` + Flyers int32 `json:"flyers"` + NuclearCore int32 `json:"nuclearCore"` + EvacuatingEnemies int32 `json:"evacuatingEnemies"` + ExportTrapKills int32 `json:"exportTrapKills"` + CoopChallenge_NukeTitan_Kills int32 `json:"coopChallenge_NukeTitan_Kills"` + CoopChallenge_MortarTitan_Kills int32 `json:"coopChallenge_MortarTitan_Kills"` + CoopChallenge_EmpTitan_Kills int32 `json:"coopChallenge_EmpTitan_Kills"` + CoopChallenge_BubbleShieldGrunt_Kills int32 `json:"coopChallenge_BubbleShieldGrunt_Kills"` + CoopChallenge_CloakDrone_Kills int32 `json:"coopChallenge_CloakDrone_Kills"` + CoopChallenge_Dropship_Kills int32 `json:"coopChallenge_Dropship_Kills"` + CoopChallenge_SuicideSpectre_Kills int32 `json:"coopChallenge_SuicideSpectre_Kills"` + CoopChallenge_Turret_Kills int32 `json:"coopChallenge_Turret_Kills"` + CoopChallenge_Sniper_Kills int32 `json:"coopChallenge_Sniper_Kills"` + AmpedVortexKills int32 `json:"ampedVortexKills"` + MeleeWhileCloaked int32 `json:"meleeWhileCloaked"` + PilotKillsWhileUsingActiveRadarPulse int32 `json:"pilotKillsWhileUsingActiveRadarPulse"` + TitanKillsAsPilot int32 `json:"titanKillsAsPilot"` + PilotKillsWhileStimActive int32 `json:"pilotKillsWhileStimActive"` + PilotKillsAsTitan int32 `json:"pilotKillsAsTitan"` + TotalAssists int32 `json:"totalAssists"` + KillingSprees [TitanClassesCount]int32 `json:"killingSprees"` + PilotKillsAsPilot int32 `json:"pilotKillsAsPilot"` + TitanKillsAsTitan int32 `json:"titanKillsAsTitan"` + TelefragKils int32 `json:"telefragKils"` + GrappleKills int32 `json:"grappleKills"` + ThroughAWallKills int32 `json:"throughAWallKills"` + DistractedKills int32 `json:"distractedKills"` + PilotExecutePilotWhileCloaked int32 `json:"pilotExecutePilotWhileCloaked"` + PilotKillsWithHoloPilotActive int32 `json:"pilotKillsWithHoloPilotActive"` + PilotKillsWithAmpedWallActive int32 `json:"pilotKillsWithAmpedWallActive"` +} + +var _ encoding.BinaryUnmarshaler = (*SKillStats)(nil) +var _ encoding.BinaryMarshaler = SKillStats{} + +func (v *SKillStats) UnmarshalBinary(b []byte) error { + if len(b) != 412 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "sKillStats", Version, ErrInvalidSize, 412, len(b)) + } + v.Total = getInt(b[0:4]) + v.TotalWhileUsingBurnCard = getInt(b[4:8]) + v.TitansWhileTitanBCActive = getInt(b[8:12]) + v.TotalPVP = getInt(b[12:16]) + v.Pilots = getInt(b[16:20]) + v.Spectres = getInt(b[20:24]) + v.Marvins = getInt(b[24:28]) + v.Grunts = getInt(b[28:32]) + v.TotalTitans = getInt(b[32:36]) + v.TotalTitansWhileDoomed = getInt(b[36:40]) + v.TotalPilots = getInt(b[40:44]) + v.TotalNPC = getInt(b[44:48]) + v.AsPilot = getInt(b[48:52]) + v.AsTitan[0] = getInt(b[52:56]) + v.AsTitan[1] = getInt(b[56:60]) + v.AsTitan[2] = getInt(b[60:64]) + v.AsTitan[3] = getInt(b[64:68]) + v.AsTitan[4] = getInt(b[68:72]) + v.AsTitan[5] = getInt(b[72:76]) + v.AsTitan[6] = getInt(b[76:80]) + v.FirstStrikes = getInt(b[80:84]) + v.EjectingPilots = getInt(b[84:88]) + v.WhileEjecting = getInt(b[88:92]) + v.CloakedPilots = getInt(b[92:96]) + v.WhileCloaked = getInt(b[96:100]) + v.WallrunningPilots = getInt(b[100:104]) + v.WhileWallrunning = getInt(b[104:108]) + v.WallhangingPilots = getInt(b[108:112]) + v.WhileWallhanging = getInt(b[112:116]) + v.PilotExecution = getInt(b[116:120]) + v.PilotExecutePilot = getInt(b[120:124]) + v.PilotExecutePilotByType[0] = getInt(b[124:128]) + v.PilotExecutePilotByType[1] = getInt(b[128:132]) + v.PilotExecutePilotByType[2] = getInt(b[132:136]) + v.PilotExecutePilotByType[3] = getInt(b[136:140]) + v.PilotExecutePilotByType[4] = getInt(b[140:144]) + v.PilotExecutePilotByType[5] = getInt(b[144:148]) + v.PilotExecutePilotByType[6] = getInt(b[148:152]) + v.PilotExecutePilotByType[7] = getInt(b[152:156]) + v.PilotExecutePilotByType[8] = getInt(b[156:160]) + v.PilotExecutePilotByType[9] = getInt(b[160:164]) + v.PilotExecutePilotByType[10] = getInt(b[164:168]) + v.PilotExecutePilotByType[11] = getInt(b[168:172]) + v.PilotExecutePilotByType[12] = getInt(b[172:176]) + v.PilotKickMelee = getInt(b[176:180]) + v.PilotKickMeleePilot = getInt(b[180:184]) + v.TitanMelee = getInt(b[184:188]) + v.TitanMeleePilot = getInt(b[188:192]) + v.TitanStepCrush = getInt(b[192:196]) + v.TitanStepCrushPilot = getInt(b[196:200]) + v.TitanExocutionIon = getInt(b[200:204]) + v.TitanExocutionScorch = getInt(b[204:208]) + v.TitanExocutionNorthstar = getInt(b[208:212]) + v.TitanExocutionRonin = getInt(b[212:216]) + v.TitanExocutionTone = getInt(b[216:220]) + v.TitanExocutionLegion = getInt(b[220:224]) + v.TitanExocutionVanguard = getInt(b[224:228]) + v.TitanFallKill = getInt(b[228:232]) + v.PetTitanKillsFollowMode = getInt(b[232:236]) + v.PetTitanKillsGuardMode = getInt(b[236:240]) + v.Rodeo_total = getInt(b[240:244]) + v.Rodeo_stryder = getInt(b[244:248]) + v.Rodeo_buddy = getInt(b[248:252]) + v.Rodeo_atlas = getInt(b[252:256]) + v.Rodeo_ogre = getInt(b[256:260]) + v.Pilot_headshots_total = getInt(b[260:264]) + v.EvacShips = getInt(b[264:268]) + v.Flyers = getInt(b[268:272]) + v.NuclearCore = getInt(b[272:276]) + v.EvacuatingEnemies = getInt(b[276:280]) + v.ExportTrapKills = getInt(b[280:284]) + v.CoopChallenge_NukeTitan_Kills = getInt(b[284:288]) + v.CoopChallenge_MortarTitan_Kills = getInt(b[288:292]) + v.CoopChallenge_EmpTitan_Kills = getInt(b[292:296]) + v.CoopChallenge_BubbleShieldGrunt_Kills = getInt(b[296:300]) + v.CoopChallenge_CloakDrone_Kills = getInt(b[300:304]) + v.CoopChallenge_Dropship_Kills = getInt(b[304:308]) + v.CoopChallenge_SuicideSpectre_Kills = getInt(b[308:312]) + v.CoopChallenge_Turret_Kills = getInt(b[312:316]) + v.CoopChallenge_Sniper_Kills = getInt(b[316:320]) + v.AmpedVortexKills = getInt(b[320:324]) + v.MeleeWhileCloaked = getInt(b[324:328]) + v.PilotKillsWhileUsingActiveRadarPulse = getInt(b[328:332]) + v.TitanKillsAsPilot = getInt(b[332:336]) + v.PilotKillsWhileStimActive = getInt(b[336:340]) + v.PilotKillsAsTitan = getInt(b[340:344]) + v.TotalAssists = getInt(b[344:348]) + v.KillingSprees[0] = getInt(b[348:352]) + v.KillingSprees[1] = getInt(b[352:356]) + v.KillingSprees[2] = getInt(b[356:360]) + v.KillingSprees[3] = getInt(b[360:364]) + v.KillingSprees[4] = getInt(b[364:368]) + v.KillingSprees[5] = getInt(b[368:372]) + v.KillingSprees[6] = getInt(b[372:376]) + v.PilotKillsAsPilot = getInt(b[376:380]) + v.TitanKillsAsTitan = getInt(b[380:384]) + v.TelefragKils = getInt(b[384:388]) + v.GrappleKills = getInt(b[388:392]) + v.ThroughAWallKills = getInt(b[392:396]) + v.DistractedKills = getInt(b[396:400]) + v.PilotExecutePilotWhileCloaked = getInt(b[400:404]) + v.PilotKillsWithHoloPilotActive = getInt(b[404:408]) + v.PilotKillsWithAmpedWallActive = getInt(b[408:412]) + return nil +} +func (v SKillStats) MarshalBinary() ([]byte, error) { + b := make([]byte, 412) + putInt(b[0:4], v.Total) + putInt(b[4:8], v.TotalWhileUsingBurnCard) + putInt(b[8:12], v.TitansWhileTitanBCActive) + putInt(b[12:16], v.TotalPVP) + putInt(b[16:20], v.Pilots) + putInt(b[20:24], v.Spectres) + putInt(b[24:28], v.Marvins) + putInt(b[28:32], v.Grunts) + putInt(b[32:36], v.TotalTitans) + putInt(b[36:40], v.TotalTitansWhileDoomed) + putInt(b[40:44], v.TotalPilots) + putInt(b[44:48], v.TotalNPC) + putInt(b[48:52], v.AsPilot) + putInt(b[52:56], v.AsTitan[0]) + putInt(b[56:60], v.AsTitan[1]) + putInt(b[60:64], v.AsTitan[2]) + putInt(b[64:68], v.AsTitan[3]) + putInt(b[68:72], v.AsTitan[4]) + putInt(b[72:76], v.AsTitan[5]) + putInt(b[76:80], v.AsTitan[6]) + putInt(b[80:84], v.FirstStrikes) + putInt(b[84:88], v.EjectingPilots) + putInt(b[88:92], v.WhileEjecting) + putInt(b[92:96], v.CloakedPilots) + putInt(b[96:100], v.WhileCloaked) + putInt(b[100:104], v.WallrunningPilots) + putInt(b[104:108], v.WhileWallrunning) + putInt(b[108:112], v.WallhangingPilots) + putInt(b[112:116], v.WhileWallhanging) + putInt(b[116:120], v.PilotExecution) + putInt(b[120:124], v.PilotExecutePilot) + putInt(b[124:128], v.PilotExecutePilotByType[0]) + putInt(b[128:132], v.PilotExecutePilotByType[1]) + putInt(b[132:136], v.PilotExecutePilotByType[2]) + putInt(b[136:140], v.PilotExecutePilotByType[3]) + putInt(b[140:144], v.PilotExecutePilotByType[4]) + putInt(b[144:148], v.PilotExecutePilotByType[5]) + putInt(b[148:152], v.PilotExecutePilotByType[6]) + putInt(b[152:156], v.PilotExecutePilotByType[7]) + putInt(b[156:160], v.PilotExecutePilotByType[8]) + putInt(b[160:164], v.PilotExecutePilotByType[9]) + putInt(b[164:168], v.PilotExecutePilotByType[10]) + putInt(b[168:172], v.PilotExecutePilotByType[11]) + putInt(b[172:176], v.PilotExecutePilotByType[12]) + putInt(b[176:180], v.PilotKickMelee) + putInt(b[180:184], v.PilotKickMeleePilot) + putInt(b[184:188], v.TitanMelee) + putInt(b[188:192], v.TitanMeleePilot) + putInt(b[192:196], v.TitanStepCrush) + putInt(b[196:200], v.TitanStepCrushPilot) + putInt(b[200:204], v.TitanExocutionIon) + putInt(b[204:208], v.TitanExocutionScorch) + putInt(b[208:212], v.TitanExocutionNorthstar) + putInt(b[212:216], v.TitanExocutionRonin) + putInt(b[216:220], v.TitanExocutionTone) + putInt(b[220:224], v.TitanExocutionLegion) + putInt(b[224:228], v.TitanExocutionVanguard) + putInt(b[228:232], v.TitanFallKill) + putInt(b[232:236], v.PetTitanKillsFollowMode) + putInt(b[236:240], v.PetTitanKillsGuardMode) + putInt(b[240:244], v.Rodeo_total) + putInt(b[244:248], v.Rodeo_stryder) + putInt(b[248:252], v.Rodeo_buddy) + putInt(b[252:256], v.Rodeo_atlas) + putInt(b[256:260], v.Rodeo_ogre) + putInt(b[260:264], v.Pilot_headshots_total) + putInt(b[264:268], v.EvacShips) + putInt(b[268:272], v.Flyers) + putInt(b[272:276], v.NuclearCore) + putInt(b[276:280], v.EvacuatingEnemies) + putInt(b[280:284], v.ExportTrapKills) + putInt(b[284:288], v.CoopChallenge_NukeTitan_Kills) + putInt(b[288:292], v.CoopChallenge_MortarTitan_Kills) + putInt(b[292:296], v.CoopChallenge_EmpTitan_Kills) + putInt(b[296:300], v.CoopChallenge_BubbleShieldGrunt_Kills) + putInt(b[300:304], v.CoopChallenge_CloakDrone_Kills) + putInt(b[304:308], v.CoopChallenge_Dropship_Kills) + putInt(b[308:312], v.CoopChallenge_SuicideSpectre_Kills) + putInt(b[312:316], v.CoopChallenge_Turret_Kills) + putInt(b[316:320], v.CoopChallenge_Sniper_Kills) + putInt(b[320:324], v.AmpedVortexKills) + putInt(b[324:328], v.MeleeWhileCloaked) + putInt(b[328:332], v.PilotKillsWhileUsingActiveRadarPulse) + putInt(b[332:336], v.TitanKillsAsPilot) + putInt(b[336:340], v.PilotKillsWhileStimActive) + putInt(b[340:344], v.PilotKillsAsTitan) + putInt(b[344:348], v.TotalAssists) + putInt(b[348:352], v.KillingSprees[0]) + putInt(b[352:356], v.KillingSprees[1]) + putInt(b[356:360], v.KillingSprees[2]) + putInt(b[360:364], v.KillingSprees[3]) + putInt(b[364:368], v.KillingSprees[4]) + putInt(b[368:372], v.KillingSprees[5]) + putInt(b[372:376], v.KillingSprees[6]) + putInt(b[376:380], v.PilotKillsAsPilot) + putInt(b[380:384], v.TitanKillsAsTitan) + putInt(b[384:388], v.TelefragKils) + putInt(b[388:392], v.GrappleKills) + putInt(b[392:396], v.ThroughAWallKills) + putInt(b[396:400], v.DistractedKills) + putInt(b[400:404], v.PilotExecutePilotWhileCloaked) + putInt(b[404:408], v.PilotKillsWithHoloPilotActive) + putInt(b[408:412], v.PilotKillsWithAmpedWallActive) + return b, nil +} + +type SMapStats struct { + GamesJoined [GameModesCount]int32 `json:"gamesJoined"` + GamesCompleted [GameModesCount]int32 `json:"gamesCompleted"` + GamesWon [GameModesCount]int32 `json:"gamesWon"` + GamesLost [GameModesCount]int32 `json:"gamesLost"` + TopPlayerOnTeam [GameModesCount]int32 `json:"topPlayerOnTeam"` + Top3OnTeam [GameModesCount]int32 `json:"top3OnTeam"` + HoursPlayed [GameModesCount]float32 `json:"hoursPlayed"` + TimesScored100AttritionPoints_byMap int32 `json:"timesScored100AttritionPoints_byMap"` + WinsByDifficulty [5]int32 `json:"winsByDifficulty"` + MatchesByDifficulty [5]int32 `json:"matchesByDifficulty"` + PerfectMatchesByDifficulty [5]int32 `json:"perfectMatchesByDifficulty"` +} + +var _ encoding.BinaryUnmarshaler = (*SMapStats)(nil) +var _ encoding.BinaryMarshaler = SMapStats{} + +func (v *SMapStats) UnmarshalBinary(b []byte) error { + if len(b) != 456 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "sMapStats", Version, ErrInvalidSize, 456, len(b)) + } + v.GamesJoined[0] = getInt(b[0:4]) + v.GamesJoined[1] = getInt(b[4:8]) + v.GamesJoined[2] = getInt(b[8:12]) + v.GamesJoined[3] = getInt(b[12:16]) + v.GamesJoined[4] = getInt(b[16:20]) + v.GamesJoined[5] = getInt(b[20:24]) + v.GamesJoined[6] = getInt(b[24:28]) + v.GamesJoined[7] = getInt(b[28:32]) + v.GamesJoined[8] = getInt(b[32:36]) + v.GamesJoined[9] = getInt(b[36:40]) + v.GamesJoined[10] = getInt(b[40:44]) + v.GamesJoined[11] = getInt(b[44:48]) + v.GamesJoined[12] = getInt(b[48:52]) + v.GamesJoined[13] = getInt(b[52:56]) + v.GamesCompleted[0] = getInt(b[56:60]) + v.GamesCompleted[1] = getInt(b[60:64]) + v.GamesCompleted[2] = getInt(b[64:68]) + v.GamesCompleted[3] = getInt(b[68:72]) + v.GamesCompleted[4] = getInt(b[72:76]) + v.GamesCompleted[5] = getInt(b[76:80]) + v.GamesCompleted[6] = getInt(b[80:84]) + v.GamesCompleted[7] = getInt(b[84:88]) + v.GamesCompleted[8] = getInt(b[88:92]) + v.GamesCompleted[9] = getInt(b[92:96]) + v.GamesCompleted[10] = getInt(b[96:100]) + v.GamesCompleted[11] = getInt(b[100:104]) + v.GamesCompleted[12] = getInt(b[104:108]) + v.GamesCompleted[13] = getInt(b[108:112]) + v.GamesWon[0] = getInt(b[112:116]) + v.GamesWon[1] = getInt(b[116:120]) + v.GamesWon[2] = getInt(b[120:124]) + v.GamesWon[3] = getInt(b[124:128]) + v.GamesWon[4] = getInt(b[128:132]) + v.GamesWon[5] = getInt(b[132:136]) + v.GamesWon[6] = getInt(b[136:140]) + v.GamesWon[7] = getInt(b[140:144]) + v.GamesWon[8] = getInt(b[144:148]) + v.GamesWon[9] = getInt(b[148:152]) + v.GamesWon[10] = getInt(b[152:156]) + v.GamesWon[11] = getInt(b[156:160]) + v.GamesWon[12] = getInt(b[160:164]) + v.GamesWon[13] = getInt(b[164:168]) + v.GamesLost[0] = getInt(b[168:172]) + v.GamesLost[1] = getInt(b[172:176]) + v.GamesLost[2] = getInt(b[176:180]) + v.GamesLost[3] = getInt(b[180:184]) + v.GamesLost[4] = getInt(b[184:188]) + v.GamesLost[5] = getInt(b[188:192]) + v.GamesLost[6] = getInt(b[192:196]) + v.GamesLost[7] = getInt(b[196:200]) + v.GamesLost[8] = getInt(b[200:204]) + v.GamesLost[9] = getInt(b[204:208]) + v.GamesLost[10] = getInt(b[208:212]) + v.GamesLost[11] = getInt(b[212:216]) + v.GamesLost[12] = getInt(b[216:220]) + v.GamesLost[13] = getInt(b[220:224]) + v.TopPlayerOnTeam[0] = getInt(b[224:228]) + v.TopPlayerOnTeam[1] = getInt(b[228:232]) + v.TopPlayerOnTeam[2] = getInt(b[232:236]) + v.TopPlayerOnTeam[3] = getInt(b[236:240]) + v.TopPlayerOnTeam[4] = getInt(b[240:244]) + v.TopPlayerOnTeam[5] = getInt(b[244:248]) + v.TopPlayerOnTeam[6] = getInt(b[248:252]) + v.TopPlayerOnTeam[7] = getInt(b[252:256]) + v.TopPlayerOnTeam[8] = getInt(b[256:260]) + v.TopPlayerOnTeam[9] = getInt(b[260:264]) + v.TopPlayerOnTeam[10] = getInt(b[264:268]) + v.TopPlayerOnTeam[11] = getInt(b[268:272]) + v.TopPlayerOnTeam[12] = getInt(b[272:276]) + v.TopPlayerOnTeam[13] = getInt(b[276:280]) + v.Top3OnTeam[0] = getInt(b[280:284]) + v.Top3OnTeam[1] = getInt(b[284:288]) + v.Top3OnTeam[2] = getInt(b[288:292]) + v.Top3OnTeam[3] = getInt(b[292:296]) + v.Top3OnTeam[4] = getInt(b[296:300]) + v.Top3OnTeam[5] = getInt(b[300:304]) + v.Top3OnTeam[6] = getInt(b[304:308]) + v.Top3OnTeam[7] = getInt(b[308:312]) + v.Top3OnTeam[8] = getInt(b[312:316]) + v.Top3OnTeam[9] = getInt(b[316:320]) + v.Top3OnTeam[10] = getInt(b[320:324]) + v.Top3OnTeam[11] = getInt(b[324:328]) + v.Top3OnTeam[12] = getInt(b[328:332]) + v.Top3OnTeam[13] = getInt(b[332:336]) + v.HoursPlayed[0] = getFloat(b[336:340]) + v.HoursPlayed[1] = getFloat(b[340:344]) + v.HoursPlayed[2] = getFloat(b[344:348]) + v.HoursPlayed[3] = getFloat(b[348:352]) + v.HoursPlayed[4] = getFloat(b[352:356]) + v.HoursPlayed[5] = getFloat(b[356:360]) + v.HoursPlayed[6] = getFloat(b[360:364]) + v.HoursPlayed[7] = getFloat(b[364:368]) + v.HoursPlayed[8] = getFloat(b[368:372]) + v.HoursPlayed[9] = getFloat(b[372:376]) + v.HoursPlayed[10] = getFloat(b[376:380]) + v.HoursPlayed[11] = getFloat(b[380:384]) + v.HoursPlayed[12] = getFloat(b[384:388]) + v.HoursPlayed[13] = getFloat(b[388:392]) + v.TimesScored100AttritionPoints_byMap = getInt(b[392:396]) + v.WinsByDifficulty[0] = getInt(b[396:400]) + v.WinsByDifficulty[1] = getInt(b[400:404]) + v.WinsByDifficulty[2] = getInt(b[404:408]) + v.WinsByDifficulty[3] = getInt(b[408:412]) + v.WinsByDifficulty[4] = getInt(b[412:416]) + v.MatchesByDifficulty[0] = getInt(b[416:420]) + v.MatchesByDifficulty[1] = getInt(b[420:424]) + v.MatchesByDifficulty[2] = getInt(b[424:428]) + v.MatchesByDifficulty[3] = getInt(b[428:432]) + v.MatchesByDifficulty[4] = getInt(b[432:436]) + v.PerfectMatchesByDifficulty[0] = getInt(b[436:440]) + v.PerfectMatchesByDifficulty[1] = getInt(b[440:444]) + v.PerfectMatchesByDifficulty[2] = getInt(b[444:448]) + v.PerfectMatchesByDifficulty[3] = getInt(b[448:452]) + v.PerfectMatchesByDifficulty[4] = getInt(b[452:456]) + return nil +} +func (v SMapStats) MarshalBinary() ([]byte, error) { + b := make([]byte, 456) + putInt(b[0:4], v.GamesJoined[0]) + putInt(b[4:8], v.GamesJoined[1]) + putInt(b[8:12], v.GamesJoined[2]) + putInt(b[12:16], v.GamesJoined[3]) + putInt(b[16:20], v.GamesJoined[4]) + putInt(b[20:24], v.GamesJoined[5]) + putInt(b[24:28], v.GamesJoined[6]) + putInt(b[28:32], v.GamesJoined[7]) + putInt(b[32:36], v.GamesJoined[8]) + putInt(b[36:40], v.GamesJoined[9]) + putInt(b[40:44], v.GamesJoined[10]) + putInt(b[44:48], v.GamesJoined[11]) + putInt(b[48:52], v.GamesJoined[12]) + putInt(b[52:56], v.GamesJoined[13]) + putInt(b[56:60], v.GamesCompleted[0]) + putInt(b[60:64], v.GamesCompleted[1]) + putInt(b[64:68], v.GamesCompleted[2]) + putInt(b[68:72], v.GamesCompleted[3]) + putInt(b[72:76], v.GamesCompleted[4]) + putInt(b[76:80], v.GamesCompleted[5]) + putInt(b[80:84], v.GamesCompleted[6]) + putInt(b[84:88], v.GamesCompleted[7]) + putInt(b[88:92], v.GamesCompleted[8]) + putInt(b[92:96], v.GamesCompleted[9]) + putInt(b[96:100], v.GamesCompleted[10]) + putInt(b[100:104], v.GamesCompleted[11]) + putInt(b[104:108], v.GamesCompleted[12]) + putInt(b[108:112], v.GamesCompleted[13]) + putInt(b[112:116], v.GamesWon[0]) + putInt(b[116:120], v.GamesWon[1]) + putInt(b[120:124], v.GamesWon[2]) + putInt(b[124:128], v.GamesWon[3]) + putInt(b[128:132], v.GamesWon[4]) + putInt(b[132:136], v.GamesWon[5]) + putInt(b[136:140], v.GamesWon[6]) + putInt(b[140:144], v.GamesWon[7]) + putInt(b[144:148], v.GamesWon[8]) + putInt(b[148:152], v.GamesWon[9]) + putInt(b[152:156], v.GamesWon[10]) + putInt(b[156:160], v.GamesWon[11]) + putInt(b[160:164], v.GamesWon[12]) + putInt(b[164:168], v.GamesWon[13]) + putInt(b[168:172], v.GamesLost[0]) + putInt(b[172:176], v.GamesLost[1]) + putInt(b[176:180], v.GamesLost[2]) + putInt(b[180:184], v.GamesLost[3]) + putInt(b[184:188], v.GamesLost[4]) + putInt(b[188:192], v.GamesLost[5]) + putInt(b[192:196], v.GamesLost[6]) + putInt(b[196:200], v.GamesLost[7]) + putInt(b[200:204], v.GamesLost[8]) + putInt(b[204:208], v.GamesLost[9]) + putInt(b[208:212], v.GamesLost[10]) + putInt(b[212:216], v.GamesLost[11]) + putInt(b[216:220], v.GamesLost[12]) + putInt(b[220:224], v.GamesLost[13]) + putInt(b[224:228], v.TopPlayerOnTeam[0]) + putInt(b[228:232], v.TopPlayerOnTeam[1]) + putInt(b[232:236], v.TopPlayerOnTeam[2]) + putInt(b[236:240], v.TopPlayerOnTeam[3]) + putInt(b[240:244], v.TopPlayerOnTeam[4]) + putInt(b[244:248], v.TopPlayerOnTeam[5]) + putInt(b[248:252], v.TopPlayerOnTeam[6]) + putInt(b[252:256], v.TopPlayerOnTeam[7]) + putInt(b[256:260], v.TopPlayerOnTeam[8]) + putInt(b[260:264], v.TopPlayerOnTeam[9]) + putInt(b[264:268], v.TopPlayerOnTeam[10]) + putInt(b[268:272], v.TopPlayerOnTeam[11]) + putInt(b[272:276], v.TopPlayerOnTeam[12]) + putInt(b[276:280], v.TopPlayerOnTeam[13]) + putInt(b[280:284], v.Top3OnTeam[0]) + putInt(b[284:288], v.Top3OnTeam[1]) + putInt(b[288:292], v.Top3OnTeam[2]) + putInt(b[292:296], v.Top3OnTeam[3]) + putInt(b[296:300], v.Top3OnTeam[4]) + putInt(b[300:304], v.Top3OnTeam[5]) + putInt(b[304:308], v.Top3OnTeam[6]) + putInt(b[308:312], v.Top3OnTeam[7]) + putInt(b[312:316], v.Top3OnTeam[8]) + putInt(b[316:320], v.Top3OnTeam[9]) + putInt(b[320:324], v.Top3OnTeam[10]) + putInt(b[324:328], v.Top3OnTeam[11]) + putInt(b[328:332], v.Top3OnTeam[12]) + putInt(b[332:336], v.Top3OnTeam[13]) + putFloat(b[336:340], v.HoursPlayed[0]) + putFloat(b[340:344], v.HoursPlayed[1]) + putFloat(b[344:348], v.HoursPlayed[2]) + putFloat(b[348:352], v.HoursPlayed[3]) + putFloat(b[352:356], v.HoursPlayed[4]) + putFloat(b[356:360], v.HoursPlayed[5]) + putFloat(b[360:364], v.HoursPlayed[6]) + putFloat(b[364:368], v.HoursPlayed[7]) + putFloat(b[368:372], v.HoursPlayed[8]) + putFloat(b[372:376], v.HoursPlayed[9]) + putFloat(b[376:380], v.HoursPlayed[10]) + putFloat(b[380:384], v.HoursPlayed[11]) + putFloat(b[384:388], v.HoursPlayed[12]) + putFloat(b[388:392], v.HoursPlayed[13]) + putInt(b[392:396], v.TimesScored100AttritionPoints_byMap) + putInt(b[396:400], v.WinsByDifficulty[0]) + putInt(b[400:404], v.WinsByDifficulty[1]) + putInt(b[404:408], v.WinsByDifficulty[2]) + putInt(b[408:412], v.WinsByDifficulty[3]) + putInt(b[412:416], v.WinsByDifficulty[4]) + putInt(b[416:420], v.MatchesByDifficulty[0]) + putInt(b[420:424], v.MatchesByDifficulty[1]) + putInt(b[424:428], v.MatchesByDifficulty[2]) + putInt(b[428:432], v.MatchesByDifficulty[3]) + putInt(b[432:436], v.MatchesByDifficulty[4]) + putInt(b[436:440], v.PerfectMatchesByDifficulty[0]) + putInt(b[440:444], v.PerfectMatchesByDifficulty[1]) + putInt(b[444:448], v.PerfectMatchesByDifficulty[2]) + putInt(b[448:452], v.PerfectMatchesByDifficulty[3]) + putInt(b[452:456], v.PerfectMatchesByDifficulty[4]) + return b, nil +} + +type SMilesTraveled struct { + Total float32 `json:"total"` + AsTitan [TitanClassesCount]float32 `json:"asTitan"` + AsPilot float32 `json:"asPilot"` + AsTitanTotal float32 `json:"asTitanTotal"` + Wallrunning float32 `json:"wallrunning"` + InAir float32 `json:"inAir"` + Ziplining float32 `json:"ziplining"` + OnFriendlyTitan float32 `json:"onFriendlyTitan"` + OnEnemyTitan float32 `json:"onEnemyTitan"` +} + +var _ encoding.BinaryUnmarshaler = (*SMilesTraveled)(nil) +var _ encoding.BinaryMarshaler = SMilesTraveled{} + +func (v *SMilesTraveled) UnmarshalBinary(b []byte) error { + if len(b) != 60 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "sMilesTraveled", Version, ErrInvalidSize, 60, len(b)) + } + v.Total = getFloat(b[0:4]) + v.AsTitan[0] = getFloat(b[4:8]) + v.AsTitan[1] = getFloat(b[8:12]) + v.AsTitan[2] = getFloat(b[12:16]) + v.AsTitan[3] = getFloat(b[16:20]) + v.AsTitan[4] = getFloat(b[20:24]) + v.AsTitan[5] = getFloat(b[24:28]) + v.AsTitan[6] = getFloat(b[28:32]) + v.AsPilot = getFloat(b[32:36]) + v.AsTitanTotal = getFloat(b[36:40]) + v.Wallrunning = getFloat(b[40:44]) + v.InAir = getFloat(b[44:48]) + v.Ziplining = getFloat(b[48:52]) + v.OnFriendlyTitan = getFloat(b[52:56]) + v.OnEnemyTitan = getFloat(b[56:60]) + return nil +} +func (v SMilesTraveled) MarshalBinary() ([]byte, error) { + b := make([]byte, 60) + putFloat(b[0:4], v.Total) + putFloat(b[4:8], v.AsTitan[0]) + putFloat(b[8:12], v.AsTitan[1]) + putFloat(b[12:16], v.AsTitan[2]) + putFloat(b[16:20], v.AsTitan[3]) + putFloat(b[20:24], v.AsTitan[4]) + putFloat(b[24:28], v.AsTitan[5]) + putFloat(b[28:32], v.AsTitan[6]) + putFloat(b[32:36], v.AsPilot) + putFloat(b[36:40], v.AsTitanTotal) + putFloat(b[40:44], v.Wallrunning) + putFloat(b[44:48], v.InAir) + putFloat(b[48:52], v.Ziplining) + putFloat(b[52:56], v.OnFriendlyTitan) + putFloat(b[56:60], v.OnEnemyTitan) + return b, nil +} + +type SMiscStats struct { + TitanFalls int32 `json:"titanFalls"` + TitanFallsFirst int32 `json:"titanFallsFirst"` + TitanEmbarks int32 `json:"titanEmbarks"` + Rodeos int32 `json:"rodeos"` + RodeosFromEject int32 `json:"rodeosFromEject"` + TimesEjected int32 `json:"timesEjected"` + TimesEjectedNuclear int32 `json:"timesEjectedNuclear"` + BurnCardsEarned int32 `json:"burnCardsEarned"` + BurnCardsSpent int32 `json:"burnCardsSpent"` + BoostsActivated int32 `json:"boostsActivated"` + SpectreLeeches int32 `json:"spectreLeeches"` + SpectreLeechesByMap [MapsCount]int32 `json:"spectreLeechesByMap"` + EvacsAttempted int32 `json:"evacsAttempted"` + EvacsSurvived int32 `json:"evacsSurvived"` + FlagsCaptured int32 `json:"flagsCaptured"` + FlagsReturned int32 `json:"flagsReturned"` + ArcCannonMultiKills int32 `json:"arcCannonMultiKills"` + GruntsConscripted int32 `json:"gruntsConscripted"` + HardpointsCaptured int32 `json:"hardpointsCaptured"` + ChallengeTiersCompleted int32 `json:"challengeTiersCompleted"` + ChallengesCompleted int32 `json:"challengesCompleted"` + DailyChallengesCompleted int32 `json:"dailyChallengesCompleted"` + TimesLastTitanRemaining int32 `json:"timesLastTitanRemaining"` + KillingSprees int32 `json:"killingSprees"` + CoopChallengesCompleted int32 `json:"coopChallengesCompleted"` + ForgedCertificationsUsed int32 `json:"forgedCertificationsUsed"` + RegenForgedCertificationsUsed int32 `json:"regenForgedCertificationsUsed"` +} + +var _ encoding.BinaryUnmarshaler = (*SMiscStats)(nil) +var _ encoding.BinaryMarshaler = SMiscStats{} + +func (v *SMiscStats) UnmarshalBinary(b []byte) error { + if len(b) != 204 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "sMiscStats", Version, ErrInvalidSize, 204, len(b)) + } + v.TitanFalls = getInt(b[0:4]) + v.TitanFallsFirst = getInt(b[4:8]) + v.TitanEmbarks = getInt(b[8:12]) + v.Rodeos = getInt(b[12:16]) + v.RodeosFromEject = getInt(b[16:20]) + v.TimesEjected = getInt(b[20:24]) + v.TimesEjectedNuclear = getInt(b[24:28]) + v.BurnCardsEarned = getInt(b[28:32]) + v.BurnCardsSpent = getInt(b[32:36]) + v.BoostsActivated = getInt(b[36:40]) + v.SpectreLeeches = getInt(b[40:44]) + v.SpectreLeechesByMap[0] = getInt(b[44:48]) + v.SpectreLeechesByMap[1] = getInt(b[48:52]) + v.SpectreLeechesByMap[2] = getInt(b[52:56]) + v.SpectreLeechesByMap[3] = getInt(b[56:60]) + v.SpectreLeechesByMap[4] = getInt(b[60:64]) + v.SpectreLeechesByMap[5] = getInt(b[64:68]) + v.SpectreLeechesByMap[6] = getInt(b[68:72]) + v.SpectreLeechesByMap[7] = getInt(b[72:76]) + v.SpectreLeechesByMap[8] = getInt(b[76:80]) + v.SpectreLeechesByMap[9] = getInt(b[80:84]) + v.SpectreLeechesByMap[10] = getInt(b[84:88]) + v.SpectreLeechesByMap[11] = getInt(b[88:92]) + v.SpectreLeechesByMap[12] = getInt(b[92:96]) + v.SpectreLeechesByMap[13] = getInt(b[96:100]) + v.SpectreLeechesByMap[14] = getInt(b[100:104]) + v.SpectreLeechesByMap[15] = getInt(b[104:108]) + v.SpectreLeechesByMap[16] = getInt(b[108:112]) + v.SpectreLeechesByMap[17] = getInt(b[112:116]) + v.SpectreLeechesByMap[18] = getInt(b[116:120]) + v.SpectreLeechesByMap[19] = getInt(b[120:124]) + v.SpectreLeechesByMap[20] = getInt(b[124:128]) + v.SpectreLeechesByMap[21] = getInt(b[128:132]) + v.SpectreLeechesByMap[22] = getInt(b[132:136]) + v.SpectreLeechesByMap[23] = getInt(b[136:140]) + v.SpectreLeechesByMap[24] = getInt(b[140:144]) + v.EvacsAttempted = getInt(b[144:148]) + v.EvacsSurvived = getInt(b[148:152]) + v.FlagsCaptured = getInt(b[152:156]) + v.FlagsReturned = getInt(b[156:160]) + v.ArcCannonMultiKills = getInt(b[160:164]) + v.GruntsConscripted = getInt(b[164:168]) + v.HardpointsCaptured = getInt(b[168:172]) + v.ChallengeTiersCompleted = getInt(b[172:176]) + v.ChallengesCompleted = getInt(b[176:180]) + v.DailyChallengesCompleted = getInt(b[180:184]) + v.TimesLastTitanRemaining = getInt(b[184:188]) + v.KillingSprees = getInt(b[188:192]) + v.CoopChallengesCompleted = getInt(b[192:196]) + v.ForgedCertificationsUsed = getInt(b[196:200]) + v.RegenForgedCertificationsUsed = getInt(b[200:204]) + return nil +} +func (v SMiscStats) MarshalBinary() ([]byte, error) { + b := make([]byte, 204) + putInt(b[0:4], v.TitanFalls) + putInt(b[4:8], v.TitanFallsFirst) + putInt(b[8:12], v.TitanEmbarks) + putInt(b[12:16], v.Rodeos) + putInt(b[16:20], v.RodeosFromEject) + putInt(b[20:24], v.TimesEjected) + putInt(b[24:28], v.TimesEjectedNuclear) + putInt(b[28:32], v.BurnCardsEarned) + putInt(b[32:36], v.BurnCardsSpent) + putInt(b[36:40], v.BoostsActivated) + putInt(b[40:44], v.SpectreLeeches) + putInt(b[44:48], v.SpectreLeechesByMap[0]) + putInt(b[48:52], v.SpectreLeechesByMap[1]) + putInt(b[52:56], v.SpectreLeechesByMap[2]) + putInt(b[56:60], v.SpectreLeechesByMap[3]) + putInt(b[60:64], v.SpectreLeechesByMap[4]) + putInt(b[64:68], v.SpectreLeechesByMap[5]) + putInt(b[68:72], v.SpectreLeechesByMap[6]) + putInt(b[72:76], v.SpectreLeechesByMap[7]) + putInt(b[76:80], v.SpectreLeechesByMap[8]) + putInt(b[80:84], v.SpectreLeechesByMap[9]) + putInt(b[84:88], v.SpectreLeechesByMap[10]) + putInt(b[88:92], v.SpectreLeechesByMap[11]) + putInt(b[92:96], v.SpectreLeechesByMap[12]) + putInt(b[96:100], v.SpectreLeechesByMap[13]) + putInt(b[100:104], v.SpectreLeechesByMap[14]) + putInt(b[104:108], v.SpectreLeechesByMap[15]) + putInt(b[108:112], v.SpectreLeechesByMap[16]) + putInt(b[112:116], v.SpectreLeechesByMap[17]) + putInt(b[116:120], v.SpectreLeechesByMap[18]) + putInt(b[120:124], v.SpectreLeechesByMap[19]) + putInt(b[124:128], v.SpectreLeechesByMap[20]) + putInt(b[128:132], v.SpectreLeechesByMap[21]) + putInt(b[132:136], v.SpectreLeechesByMap[22]) + putInt(b[136:140], v.SpectreLeechesByMap[23]) + putInt(b[140:144], v.SpectreLeechesByMap[24]) + putInt(b[144:148], v.EvacsAttempted) + putInt(b[148:152], v.EvacsSurvived) + putInt(b[152:156], v.FlagsCaptured) + putInt(b[156:160], v.FlagsReturned) + putInt(b[160:164], v.ArcCannonMultiKills) + putInt(b[164:168], v.GruntsConscripted) + putInt(b[168:172], v.HardpointsCaptured) + putInt(b[172:176], v.ChallengeTiersCompleted) + putInt(b[176:180], v.ChallengesCompleted) + putInt(b[180:184], v.DailyChallengesCompleted) + putInt(b[184:188], v.TimesLastTitanRemaining) + putInt(b[188:192], v.KillingSprees) + putInt(b[192:196], v.CoopChallengesCompleted) + putInt(b[196:200], v.ForgedCertificationsUsed) + putInt(b[200:204], v.RegenForgedCertificationsUsed) + return b, nil +} + +type STitanStats struct { + Pilots int32 `json:"pilots"` + TitansTotal int32 `json:"titansTotal"` + Ejections int32 `json:"ejections"` + TitansWhileDoomed int32 `json:"titansWhileDoomed"` + TitanDamage int32 `json:"titanDamage"` + TitansAsPrime int32 `json:"titansAsPrime"` + PilotsAsPrime int32 `json:"pilotsAsPrime"` + ExecutionsAsPrime int32 `json:"executionsAsPrime"` + CoresEarned int32 `json:"coresEarned"` + MatchesByDifficulty [5]int32 `json:"matchesByDifficulty"` + PerfectMatchesByDifficulty [5]int32 `json:"perfectMatchesByDifficulty"` +} + +var _ encoding.BinaryUnmarshaler = (*STitanStats)(nil) +var _ encoding.BinaryMarshaler = STitanStats{} + +func (v *STitanStats) UnmarshalBinary(b []byte) error { + if len(b) != 76 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "sTitanStats", Version, ErrInvalidSize, 76, len(b)) + } + v.Pilots = getInt(b[0:4]) + v.TitansTotal = getInt(b[4:8]) + v.Ejections = getInt(b[8:12]) + v.TitansWhileDoomed = getInt(b[12:16]) + v.TitanDamage = getInt(b[16:20]) + v.TitansAsPrime = getInt(b[20:24]) + v.PilotsAsPrime = getInt(b[24:28]) + v.ExecutionsAsPrime = getInt(b[28:32]) + v.CoresEarned = getInt(b[32:36]) + v.MatchesByDifficulty[0] = getInt(b[36:40]) + v.MatchesByDifficulty[1] = getInt(b[40:44]) + v.MatchesByDifficulty[2] = getInt(b[44:48]) + v.MatchesByDifficulty[3] = getInt(b[48:52]) + v.MatchesByDifficulty[4] = getInt(b[52:56]) + v.PerfectMatchesByDifficulty[0] = getInt(b[56:60]) + v.PerfectMatchesByDifficulty[1] = getInt(b[60:64]) + v.PerfectMatchesByDifficulty[2] = getInt(b[64:68]) + v.PerfectMatchesByDifficulty[3] = getInt(b[68:72]) + v.PerfectMatchesByDifficulty[4] = getInt(b[72:76]) + return nil +} +func (v STitanStats) MarshalBinary() ([]byte, error) { + b := make([]byte, 76) + putInt(b[0:4], v.Pilots) + putInt(b[4:8], v.TitansTotal) + putInt(b[8:12], v.Ejections) + putInt(b[12:16], v.TitansWhileDoomed) + putInt(b[16:20], v.TitanDamage) + putInt(b[20:24], v.TitansAsPrime) + putInt(b[24:28], v.PilotsAsPrime) + putInt(b[28:32], v.ExecutionsAsPrime) + putInt(b[32:36], v.CoresEarned) + putInt(b[36:40], v.MatchesByDifficulty[0]) + putInt(b[40:44], v.MatchesByDifficulty[1]) + putInt(b[44:48], v.MatchesByDifficulty[2]) + putInt(b[48:52], v.MatchesByDifficulty[3]) + putInt(b[52:56], v.MatchesByDifficulty[4]) + putInt(b[56:60], v.PerfectMatchesByDifficulty[0]) + putInt(b[60:64], v.PerfectMatchesByDifficulty[1]) + putInt(b[64:68], v.PerfectMatchesByDifficulty[2]) + putInt(b[68:72], v.PerfectMatchesByDifficulty[3]) + putInt(b[72:76], v.PerfectMatchesByDifficulty[4]) + return b, nil +} + +type SWeaponKillStats struct { + Total int32 `json:"total"` + Pilots int32 `json:"pilots"` + Ejecting_pilots int32 `json:"ejecting_pilots"` + Spectres int32 `json:"spectres"` + Marvins int32 `json:"marvins"` + Grunts int32 `json:"grunts"` + Ai int32 `json:"ai"` + TitansTotal int32 `json:"titansTotal"` + Titans [TitanClassesCount]int32 `json:"titans"` + NpcTitans [TitanClassesCount]int32 `json:"npcTitans"` + AssistsTotal int32 `json:"assistsTotal"` + KillingSprees int32 `json:"killingSprees"` +} + +var _ encoding.BinaryUnmarshaler = (*SWeaponKillStats)(nil) +var _ encoding.BinaryMarshaler = SWeaponKillStats{} + +func (v *SWeaponKillStats) UnmarshalBinary(b []byte) error { + if len(b) != 96 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "sWeaponKillStats", Version, ErrInvalidSize, 96, len(b)) + } + v.Total = getInt(b[0:4]) + v.Pilots = getInt(b[4:8]) + v.Ejecting_pilots = getInt(b[8:12]) + v.Spectres = getInt(b[12:16]) + v.Marvins = getInt(b[16:20]) + v.Grunts = getInt(b[20:24]) + v.Ai = getInt(b[24:28]) + v.TitansTotal = getInt(b[28:32]) + v.Titans[0] = getInt(b[32:36]) + v.Titans[1] = getInt(b[36:40]) + v.Titans[2] = getInt(b[40:44]) + v.Titans[3] = getInt(b[44:48]) + v.Titans[4] = getInt(b[48:52]) + v.Titans[5] = getInt(b[52:56]) + v.Titans[6] = getInt(b[56:60]) + v.NpcTitans[0] = getInt(b[60:64]) + v.NpcTitans[1] = getInt(b[64:68]) + v.NpcTitans[2] = getInt(b[68:72]) + v.NpcTitans[3] = getInt(b[72:76]) + v.NpcTitans[4] = getInt(b[76:80]) + v.NpcTitans[5] = getInt(b[80:84]) + v.NpcTitans[6] = getInt(b[84:88]) + v.AssistsTotal = getInt(b[88:92]) + v.KillingSprees = getInt(b[92:96]) + return nil +} +func (v SWeaponKillStats) MarshalBinary() ([]byte, error) { + b := make([]byte, 96) + putInt(b[0:4], v.Total) + putInt(b[4:8], v.Pilots) + putInt(b[8:12], v.Ejecting_pilots) + putInt(b[12:16], v.Spectres) + putInt(b[16:20], v.Marvins) + putInt(b[20:24], v.Grunts) + putInt(b[24:28], v.Ai) + putInt(b[28:32], v.TitansTotal) + putInt(b[32:36], v.Titans[0]) + putInt(b[36:40], v.Titans[1]) + putInt(b[40:44], v.Titans[2]) + putInt(b[44:48], v.Titans[3]) + putInt(b[48:52], v.Titans[4]) + putInt(b[52:56], v.Titans[5]) + putInt(b[56:60], v.Titans[6]) + putInt(b[60:64], v.NpcTitans[0]) + putInt(b[64:68], v.NpcTitans[1]) + putInt(b[68:72], v.NpcTitans[2]) + putInt(b[72:76], v.NpcTitans[3]) + putInt(b[76:80], v.NpcTitans[4]) + putInt(b[80:84], v.NpcTitans[5]) + putInt(b[84:88], v.NpcTitans[6]) + putInt(b[88:92], v.AssistsTotal) + putInt(b[92:96], v.KillingSprees) + return b, nil +} + +type SWeaponStats struct { + HoursUsed float32 `json:"hoursUsed"` + HoursEquipped float32 `json:"hoursEquipped"` + ShotsFired int32 `json:"shotsFired"` + ShotsHit int32 `json:"shotsHit"` + Headshots int32 `json:"headshots"` + CritHits int32 `json:"critHits"` + TitanDamage int32 `json:"titanDamage"` +} + +var _ encoding.BinaryUnmarshaler = (*SWeaponStats)(nil) +var _ encoding.BinaryMarshaler = SWeaponStats{} + +func (v *SWeaponStats) UnmarshalBinary(b []byte) error { + if len(b) != 28 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "sWeaponStats", Version, ErrInvalidSize, 28, len(b)) + } + v.HoursUsed = getFloat(b[0:4]) + v.HoursEquipped = getFloat(b[4:8]) + v.ShotsFired = getInt(b[8:12]) + v.ShotsHit = getInt(b[12:16]) + v.Headshots = getInt(b[16:20]) + v.CritHits = getInt(b[20:24]) + v.TitanDamage = getInt(b[24:28]) + return nil +} +func (v SWeaponStats) MarshalBinary() ([]byte, error) { + b := make([]byte, 28) + putFloat(b[0:4], v.HoursUsed) + putFloat(b[4:8], v.HoursEquipped) + putInt(b[8:12], v.ShotsFired) + putInt(b[12:16], v.ShotsHit) + putInt(b[16:20], v.Headshots) + putInt(b[20:24], v.CritHits) + putInt(b[24:28], v.TitanDamage) + return b, nil +} + +type SpawnLoadout struct { + Index int32 `json:"index"` +} + +var _ encoding.BinaryUnmarshaler = (*SpawnLoadout)(nil) +var _ encoding.BinaryMarshaler = SpawnLoadout{} + +func (v *SpawnLoadout) UnmarshalBinary(b []byte) error { + if len(b) != 4 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "spawnLoadout", Version, ErrInvalidSize, 4, len(b)) + } + v.Index = getInt(b[0:4]) + return nil +} +func (v SpawnLoadout) MarshalBinary() ([]byte, error) { + b := make([]byte, 4) + putInt(b[0:4], v.Index) + return b, nil +} + +type Struct_activeBurnCardData struct { + CardRef BurnCard `json:"cardRef"` + LastCardRef BurnCard `json:"lastCardRef"` + ClearOnStart bool `json:"clearOnStart"` +} + +var _ encoding.BinaryUnmarshaler = (*Struct_activeBurnCardData)(nil) +var _ encoding.BinaryMarshaler = Struct_activeBurnCardData{} + +func (v *Struct_activeBurnCardData) UnmarshalBinary(b []byte) error { + if len(b) != 3 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "struct_activeBurnCardData", Version, ErrInvalidSize, 3, len(b)) + } + v.CardRef = BurnCard(getEnum(b[0:1])) + v.LastCardRef = BurnCard(getEnum(b[1:2])) + v.ClearOnStart = getBool(b[2:3]) + return nil +} +func (v Struct_activeBurnCardData) MarshalBinary() ([]byte, error) { + b := make([]byte, 3) + putEnum(b[0:1], uint8(v.CardRef)) + putEnum(b[1:2], uint8(v.LastCardRef)) + putBool(b[2:3], v.ClearOnStart) + return b, nil +} + +type Struct_blackMarketBurnCardUpgrades struct { + CardRef BurnCard `json:"cardRef"` +} + +var _ encoding.BinaryUnmarshaler = (*Struct_blackMarketBurnCardUpgrades)(nil) +var _ encoding.BinaryMarshaler = Struct_blackMarketBurnCardUpgrades{} + +func (v *Struct_blackMarketBurnCardUpgrades) UnmarshalBinary(b []byte) error { + if len(b) != 1 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "struct_blackMarketBurnCardUpgrades", Version, ErrInvalidSize, 1, len(b)) + } + v.CardRef = BurnCard(getEnum(b[0:1])) + return nil +} +func (v Struct_blackMarketBurnCardUpgrades) MarshalBinary() ([]byte, error) { + b := make([]byte, 1) + putEnum(b[0:1], uint8(v.CardRef)) + return b, nil +} + +type Struct_historyBurnCardData struct { + Collected int32 `json:"collected"` + Spent int32 `json:"spent"` +} + +var _ encoding.BinaryUnmarshaler = (*Struct_historyBurnCardData)(nil) +var _ encoding.BinaryMarshaler = Struct_historyBurnCardData{} + +func (v *Struct_historyBurnCardData) UnmarshalBinary(b []byte) error { + if len(b) != 8 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "struct_historyBurnCardData", Version, ErrInvalidSize, 8, len(b)) + } + v.Collected = getInt(b[0:4]) + v.Spent = getInt(b[4:8]) + return nil +} +func (v Struct_historyBurnCardData) MarshalBinary() ([]byte, error) { + b := make([]byte, 8) + putInt(b[0:4], v.Collected) + putInt(b[4:8], v.Spent) + return b, nil +} + +type Struct_ranked struct { + IsPlayingRanked bool `json:"isPlayingRanked"` + CurrentRank int32 `json:"currentRank"` +} + +var _ encoding.BinaryUnmarshaler = (*Struct_ranked)(nil) +var _ encoding.BinaryMarshaler = Struct_ranked{} + +func (v *Struct_ranked) UnmarshalBinary(b []byte) error { + if len(b) != 5 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "struct_ranked", Version, ErrInvalidSize, 5, len(b)) + } + v.IsPlayingRanked = getBool(b[0:1]) + v.CurrentRank = getInt(b[1:5]) + return nil +} +func (v Struct_ranked) MarshalBinary() ([]byte, error) { + b := make([]byte, 5) + putBool(b[0:1], v.IsPlayingRanked) + putInt(b[1:5], v.CurrentRank) + return b, nil +} + +type TitanLoadout struct { + Name string `json:"name"` + TitanClass TitanClasses `json:"titanClass"` + PrimaryMod TitanMod `json:"primaryMod"` + Special LoadoutWeaponsAndAbilities `json:"special"` + Antirodeo LoadoutWeaponsAndAbilities `json:"antirodeo"` + Passive1 TitanPassive `json:"passive1"` + Passive2 TitanPassive `json:"passive2"` + Passive3 TitanPassive `json:"passive3"` + Passive4 TitanPassive `json:"passive4"` + Passive5 TitanPassive `json:"passive5"` + Passive6 TitanPassive `json:"passive6"` + TitanExecution TitanExecution `json:"titanExecution"` + SkinIndex int32 `json:"skinIndex"` + CamoIndex int32 `json:"camoIndex"` + DecalIndex int32 `json:"decalIndex"` + PrimarySkinIndex int32 `json:"primarySkinIndex"` + PrimaryCamoIndex int32 `json:"primaryCamoIndex"` + IsPrime TitanIsPrimeTitan `json:"isPrime"` + PrimeSkinIndex int32 `json:"primeSkinIndex"` + PrimeCamoIndex int32 `json:"primeCamoIndex"` + PrimeDecalIndex int32 `json:"primeDecalIndex"` + ShowArmBadge int32 `json:"showArmBadge"` +} + +var _ encoding.BinaryUnmarshaler = (*TitanLoadout)(nil) +var _ encoding.BinaryMarshaler = TitanLoadout{} + +func (v *TitanLoadout) UnmarshalBinary(b []byte) error { + if len(b) != 90 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "titanLoadout", Version, ErrInvalidSize, 90, len(b)) + } + v.Name = getString(b[0:42]) + v.TitanClass = TitanClasses(getEnum(b[42:43])) + v.PrimaryMod = TitanMod(getEnum(b[43:44])) + v.Special = LoadoutWeaponsAndAbilities(getEnum(b[44:45])) + v.Antirodeo = LoadoutWeaponsAndAbilities(getEnum(b[45:46])) + v.Passive1 = TitanPassive(getEnum(b[46:47])) + v.Passive2 = TitanPassive(getEnum(b[47:48])) + v.Passive3 = TitanPassive(getEnum(b[48:49])) + v.Passive4 = TitanPassive(getEnum(b[49:50])) + v.Passive5 = TitanPassive(getEnum(b[50:51])) + v.Passive6 = TitanPassive(getEnum(b[51:52])) + v.TitanExecution = TitanExecution(getEnum(b[52:53])) + v.SkinIndex = getInt(b[53:57]) + v.CamoIndex = getInt(b[57:61]) + v.DecalIndex = getInt(b[61:65]) + v.PrimarySkinIndex = getInt(b[65:69]) + v.PrimaryCamoIndex = getInt(b[69:73]) + v.IsPrime = TitanIsPrimeTitan(getEnum(b[73:74])) + v.PrimeSkinIndex = getInt(b[74:78]) + v.PrimeCamoIndex = getInt(b[78:82]) + v.PrimeDecalIndex = getInt(b[82:86]) + v.ShowArmBadge = getInt(b[86:90]) + return nil +} +func (v TitanLoadout) MarshalBinary() ([]byte, error) { + b := make([]byte, 90) + if err := putString(b[0:42], v.Name); err != nil { + return nil, fmt.Errorf("encode %q (v%d): %w: field %q: %v", "titanLoadout", Version, ErrInvalidSize, "name", err) + } + putEnum(b[42:43], uint8(v.TitanClass)) + putEnum(b[43:44], uint8(v.PrimaryMod)) + putEnum(b[44:45], uint8(v.Special)) + putEnum(b[45:46], uint8(v.Antirodeo)) + putEnum(b[46:47], uint8(v.Passive1)) + putEnum(b[47:48], uint8(v.Passive2)) + putEnum(b[48:49], uint8(v.Passive3)) + putEnum(b[49:50], uint8(v.Passive4)) + putEnum(b[50:51], uint8(v.Passive5)) + putEnum(b[51:52], uint8(v.Passive6)) + putEnum(b[52:53], uint8(v.TitanExecution)) + putInt(b[53:57], v.SkinIndex) + putInt(b[57:61], v.CamoIndex) + putInt(b[61:65], v.DecalIndex) + putInt(b[65:69], v.PrimarySkinIndex) + putInt(b[69:73], v.PrimaryCamoIndex) + putEnum(b[73:74], uint8(v.IsPrime)) + putInt(b[74:78], v.PrimeSkinIndex) + putInt(b[78:82], v.PrimeCamoIndex) + putInt(b[82:86], v.PrimeDecalIndex) + putInt(b[86:90], v.ShowArmBadge) + return b, nil +} + +type TitanMain struct { + NewPassives [2]int32 `json:"newPassives"` + UnlockedPassives [2]int32 `json:"unlockedPassives"` + NewSkins [5]int32 `json:"newSkins"` + UnlockedSkins [5]int32 `json:"unlockedSkins"` + NewPrimeSkins [2]int32 `json:"newPrimeSkins"` + UnlockedPrimeSkins [2]int32 `json:"unlockedPrimeSkins"` + NewWeaponSkins [5]int32 `json:"newWeaponSkins"` + UnlockedWeaponSkins [5]int32 `json:"unlockedWeaponSkins"` + NewPrimeWeaponSkins int32 `json:"newPrimeWeaponSkins"` + UnlockedPrimeWeaponSkins int32 `json:"unlockedPrimeWeaponSkins"` + NewTitanDecals [3]int32 `json:"newTitanDecals"` + UnlockedTitanDecals [3]int32 `json:"unlockedTitanDecals"` + NewPrimeTitanDecals int32 `json:"newPrimeTitanDecals"` + UnlockedPrimeTitanDecals int32 `json:"unlockedPrimeTitanDecals"` + UnlockedFDUpgrades [2]int32 `json:"unlockedFDUpgrades"` + NewFDUpgrades [2]int32 `json:"newFDUpgrades"` +} + +var _ encoding.BinaryUnmarshaler = (*TitanMain)(nil) +var _ encoding.BinaryMarshaler = TitanMain{} + +func (v *TitanMain) UnmarshalBinary(b []byte) error { + if len(b) != 168 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "titanMain", Version, ErrInvalidSize, 168, len(b)) + } + v.NewPassives[0] = getInt(b[0:4]) + v.NewPassives[1] = getInt(b[4:8]) + v.UnlockedPassives[0] = getInt(b[8:12]) + v.UnlockedPassives[1] = getInt(b[12:16]) + v.NewSkins[0] = getInt(b[16:20]) + v.NewSkins[1] = getInt(b[20:24]) + v.NewSkins[2] = getInt(b[24:28]) + v.NewSkins[3] = getInt(b[28:32]) + v.NewSkins[4] = getInt(b[32:36]) + v.UnlockedSkins[0] = getInt(b[36:40]) + v.UnlockedSkins[1] = getInt(b[40:44]) + v.UnlockedSkins[2] = getInt(b[44:48]) + v.UnlockedSkins[3] = getInt(b[48:52]) + v.UnlockedSkins[4] = getInt(b[52:56]) + v.NewPrimeSkins[0] = getInt(b[56:60]) + v.NewPrimeSkins[1] = getInt(b[60:64]) + v.UnlockedPrimeSkins[0] = getInt(b[64:68]) + v.UnlockedPrimeSkins[1] = getInt(b[68:72]) + v.NewWeaponSkins[0] = getInt(b[72:76]) + v.NewWeaponSkins[1] = getInt(b[76:80]) + v.NewWeaponSkins[2] = getInt(b[80:84]) + v.NewWeaponSkins[3] = getInt(b[84:88]) + v.NewWeaponSkins[4] = getInt(b[88:92]) + v.UnlockedWeaponSkins[0] = getInt(b[92:96]) + v.UnlockedWeaponSkins[1] = getInt(b[96:100]) + v.UnlockedWeaponSkins[2] = getInt(b[100:104]) + v.UnlockedWeaponSkins[3] = getInt(b[104:108]) + v.UnlockedWeaponSkins[4] = getInt(b[108:112]) + v.NewPrimeWeaponSkins = getInt(b[112:116]) + v.UnlockedPrimeWeaponSkins = getInt(b[116:120]) + v.NewTitanDecals[0] = getInt(b[120:124]) + v.NewTitanDecals[1] = getInt(b[124:128]) + v.NewTitanDecals[2] = getInt(b[128:132]) + v.UnlockedTitanDecals[0] = getInt(b[132:136]) + v.UnlockedTitanDecals[1] = getInt(b[136:140]) + v.UnlockedTitanDecals[2] = getInt(b[140:144]) + v.NewPrimeTitanDecals = getInt(b[144:148]) + v.UnlockedPrimeTitanDecals = getInt(b[148:152]) + v.UnlockedFDUpgrades[0] = getInt(b[152:156]) + v.UnlockedFDUpgrades[1] = getInt(b[156:160]) + v.NewFDUpgrades[0] = getInt(b[160:164]) + v.NewFDUpgrades[1] = getInt(b[164:168]) + return nil +} +func (v TitanMain) MarshalBinary() ([]byte, error) { + b := make([]byte, 168) + putInt(b[0:4], v.NewPassives[0]) + putInt(b[4:8], v.NewPassives[1]) + putInt(b[8:12], v.UnlockedPassives[0]) + putInt(b[12:16], v.UnlockedPassives[1]) + putInt(b[16:20], v.NewSkins[0]) + putInt(b[20:24], v.NewSkins[1]) + putInt(b[24:28], v.NewSkins[2]) + putInt(b[28:32], v.NewSkins[3]) + putInt(b[32:36], v.NewSkins[4]) + putInt(b[36:40], v.UnlockedSkins[0]) + putInt(b[40:44], v.UnlockedSkins[1]) + putInt(b[44:48], v.UnlockedSkins[2]) + putInt(b[48:52], v.UnlockedSkins[3]) + putInt(b[52:56], v.UnlockedSkins[4]) + putInt(b[56:60], v.NewPrimeSkins[0]) + putInt(b[60:64], v.NewPrimeSkins[1]) + putInt(b[64:68], v.UnlockedPrimeSkins[0]) + putInt(b[68:72], v.UnlockedPrimeSkins[1]) + putInt(b[72:76], v.NewWeaponSkins[0]) + putInt(b[76:80], v.NewWeaponSkins[1]) + putInt(b[80:84], v.NewWeaponSkins[2]) + putInt(b[84:88], v.NewWeaponSkins[3]) + putInt(b[88:92], v.NewWeaponSkins[4]) + putInt(b[92:96], v.UnlockedWeaponSkins[0]) + putInt(b[96:100], v.UnlockedWeaponSkins[1]) + putInt(b[100:104], v.UnlockedWeaponSkins[2]) + putInt(b[104:108], v.UnlockedWeaponSkins[3]) + putInt(b[108:112], v.UnlockedWeaponSkins[4]) + putInt(b[112:116], v.NewPrimeWeaponSkins) + putInt(b[116:120], v.UnlockedPrimeWeaponSkins) + putInt(b[120:124], v.NewTitanDecals[0]) + putInt(b[124:128], v.NewTitanDecals[1]) + putInt(b[128:132], v.NewTitanDecals[2]) + putInt(b[132:136], v.UnlockedTitanDecals[0]) + putInt(b[136:140], v.UnlockedTitanDecals[1]) + putInt(b[140:144], v.UnlockedTitanDecals[2]) + putInt(b[144:148], v.NewPrimeTitanDecals) + putInt(b[148:152], v.UnlockedPrimeTitanDecals) + putInt(b[152:156], v.UnlockedFDUpgrades[0]) + putInt(b[156:160], v.UnlockedFDUpgrades[1]) + putInt(b[160:164], v.NewFDUpgrades[0]) + putInt(b[164:168], v.NewFDUpgrades[1]) + return b, nil +} + +type WeaponMain struct { + WeaponStats SWeaponStats `json:"weaponStats"` + WeaponKillStats SWeaponKillStats `json:"weaponKillStats"` + WeaponXP int32 `json:"weaponXP"` + PreviousWeaponXP int32 `json:"previousWeaponXP"` + ProScreenKills int32 `json:"proScreenKills"` + PreviousProScreenKills int32 `json:"previousProScreenKills"` + NewMods int32 `json:"newMods"` + UnlockedMods int32 `json:"unlockedMods"` + NewWeaponSkins [5]int32 `json:"newWeaponSkins"` + UnlockedWeaponSkins [5]int32 `json:"unlockedWeaponSkins"` + NewPrimeWeaponSkins [6]int32 `json:"newPrimeWeaponSkins"` + UnlockedPrimeWeaponSkins [6]int32 `json:"unlockedPrimeWeaponSkins"` + NewFeatures int32 `json:"newFeatures"` + UnlockedFeatures int32 `json:"unlockedFeatures"` +} + +var _ encoding.BinaryUnmarshaler = (*WeaponMain)(nil) +var _ encoding.BinaryMarshaler = WeaponMain{} + +func (v *WeaponMain) UnmarshalBinary(b []byte) error { + if len(b) != 244 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "weaponMain", Version, ErrInvalidSize, 244, len(b)) + } + must(v.WeaponStats.UnmarshalBinary(b[0:28])) + must(v.WeaponKillStats.UnmarshalBinary(b[28:124])) + v.WeaponXP = getInt(b[124:128]) + v.PreviousWeaponXP = getInt(b[128:132]) + v.ProScreenKills = getInt(b[132:136]) + v.PreviousProScreenKills = getInt(b[136:140]) + v.NewMods = getInt(b[140:144]) + v.UnlockedMods = getInt(b[144:148]) + v.NewWeaponSkins[0] = getInt(b[148:152]) + v.NewWeaponSkins[1] = getInt(b[152:156]) + v.NewWeaponSkins[2] = getInt(b[156:160]) + v.NewWeaponSkins[3] = getInt(b[160:164]) + v.NewWeaponSkins[4] = getInt(b[164:168]) + v.UnlockedWeaponSkins[0] = getInt(b[168:172]) + v.UnlockedWeaponSkins[1] = getInt(b[172:176]) + v.UnlockedWeaponSkins[2] = getInt(b[176:180]) + v.UnlockedWeaponSkins[3] = getInt(b[180:184]) + v.UnlockedWeaponSkins[4] = getInt(b[184:188]) + v.NewPrimeWeaponSkins[0] = getInt(b[188:192]) + v.NewPrimeWeaponSkins[1] = getInt(b[192:196]) + v.NewPrimeWeaponSkins[2] = getInt(b[196:200]) + v.NewPrimeWeaponSkins[3] = getInt(b[200:204]) + v.NewPrimeWeaponSkins[4] = getInt(b[204:208]) + v.NewPrimeWeaponSkins[5] = getInt(b[208:212]) + v.UnlockedPrimeWeaponSkins[0] = getInt(b[212:216]) + v.UnlockedPrimeWeaponSkins[1] = getInt(b[216:220]) + v.UnlockedPrimeWeaponSkins[2] = getInt(b[220:224]) + v.UnlockedPrimeWeaponSkins[3] = getInt(b[224:228]) + v.UnlockedPrimeWeaponSkins[4] = getInt(b[228:232]) + v.UnlockedPrimeWeaponSkins[5] = getInt(b[232:236]) + v.NewFeatures = getInt(b[236:240]) + v.UnlockedFeatures = getInt(b[240:244]) + return nil +} +func (v WeaponMain) MarshalBinary() ([]byte, error) { + b := make([]byte, 244) + if x, err := v.WeaponStats.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "weaponMain", Version, "weaponStats", err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[0:28], x) + } + if x, err := v.WeaponKillStats.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "weaponMain", Version, "weaponKillStats", err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[28:124], x) + } + putInt(b[124:128], v.WeaponXP) + putInt(b[128:132], v.PreviousWeaponXP) + putInt(b[132:136], v.ProScreenKills) + putInt(b[136:140], v.PreviousProScreenKills) + putInt(b[140:144], v.NewMods) + putInt(b[144:148], v.UnlockedMods) + putInt(b[148:152], v.NewWeaponSkins[0]) + putInt(b[152:156], v.NewWeaponSkins[1]) + putInt(b[156:160], v.NewWeaponSkins[2]) + putInt(b[160:164], v.NewWeaponSkins[3]) + putInt(b[164:168], v.NewWeaponSkins[4]) + putInt(b[168:172], v.UnlockedWeaponSkins[0]) + putInt(b[172:176], v.UnlockedWeaponSkins[1]) + putInt(b[176:180], v.UnlockedWeaponSkins[2]) + putInt(b[180:184], v.UnlockedWeaponSkins[3]) + putInt(b[184:188], v.UnlockedWeaponSkins[4]) + putInt(b[188:192], v.NewPrimeWeaponSkins[0]) + putInt(b[192:196], v.NewPrimeWeaponSkins[1]) + putInt(b[196:200], v.NewPrimeWeaponSkins[2]) + putInt(b[200:204], v.NewPrimeWeaponSkins[3]) + putInt(b[204:208], v.NewPrimeWeaponSkins[4]) + putInt(b[208:212], v.NewPrimeWeaponSkins[5]) + putInt(b[212:216], v.UnlockedPrimeWeaponSkins[0]) + putInt(b[216:220], v.UnlockedPrimeWeaponSkins[1]) + putInt(b[220:224], v.UnlockedPrimeWeaponSkins[2]) + putInt(b[224:228], v.UnlockedPrimeWeaponSkins[3]) + putInt(b[228:232], v.UnlockedPrimeWeaponSkins[4]) + putInt(b[232:236], v.UnlockedPrimeWeaponSkins[5]) + putInt(b[236:240], v.NewFeatures) + putInt(b[240:244], v.UnlockedFeatures) + return b, nil +} + +type WeaponOffhand struct { + WeaponStats SWeaponStats `json:"weaponStats"` + WeaponKillStats SWeaponKillStats `json:"weaponKillStats"` +} + +var _ encoding.BinaryUnmarshaler = (*WeaponOffhand)(nil) +var _ encoding.BinaryMarshaler = WeaponOffhand{} + +func (v *WeaponOffhand) UnmarshalBinary(b []byte) error { + if len(b) != 124 { + return fmt.Errorf("decode %q (v%d): %w: expected %d bytes, got %d", "weaponOffhand", Version, ErrInvalidSize, 124, len(b)) + } + must(v.WeaponStats.UnmarshalBinary(b[0:28])) + must(v.WeaponKillStats.UnmarshalBinary(b[28:124])) + return nil +} +func (v WeaponOffhand) MarshalBinary() ([]byte, error) { + b := make([]byte, 124) + if x, err := v.WeaponStats.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "weaponOffhand", Version, "weaponStats", err) + } else if len(x) != 28 { + panic("bug: invalid marshal struct size") + } else { + copy(b[0:28], x) + } + if x, err := v.WeaponKillStats.MarshalBinary(); err != nil { + return nil, fmt.Errorf("encode %q (v%d): field %q: %w", "weaponOffhand", Version, "weaponKillStats", err) + } else if len(x) != 96 { + panic("bug: invalid marshal struct size") + } else { + copy(b[28:124], x) + } + return b, nil +} + +type BurnCard uint8 + +const ( + BurnCard_NULL BurnCard = 0 + BurnCard_bc_conscription BurnCard = 1 + BurnCard_bc_double_xp BurnCard = 2 + BurnCard_bc_free_xp BurnCard = 3 + BurnCard_bc_fast_cooldown1 BurnCard = 4 + BurnCard_bc_fast_cooldown2 BurnCard = 5 + BurnCard_bc_super_stim BurnCard = 6 + BurnCard_bc_super_cloak BurnCard = 7 + BurnCard_bc_super_sonar BurnCard = 8 + BurnCard_bc_summon_ogre BurnCard = 9 + BurnCard_bc_cloak_forever BurnCard = 10 + BurnCard_bc_stim_forever BurnCard = 11 + BurnCard_bc_sonar_forever BurnCard = 12 + BurnCard_bc_summon_stryder BurnCard = 13 + BurnCard_bc_spectre_virus BurnCard = 14 + BurnCard_bc_play_spectre BurnCard = 15 + BurnCard_bc_double_agent BurnCard = 16 + BurnCard_bc_minimap BurnCard = 17 + BurnCard_bc_summon_atlas BurnCard = 18 + BurnCard_bc_megaturrets BurnCard = 19 + BurnCard_bc_summon_dogfighter BurnCard = 20 + BurnCard_bc_wifi_spectre_hack BurnCard = 21 + BurnCard_bc_nuclear_core BurnCard = 22 + BurnCard_bc_core_charged BurnCard = 23 + BurnCard_bc_smart_pistol_m2 BurnCard = 24 + BurnCard_bc_r97_m2 BurnCard = 25 + BurnCard_bc_rspn101_m2 BurnCard = 26 + BurnCard_bc_dmr_m2 BurnCard = 27 + BurnCard_bc_shotgun_m2 BurnCard = 28 + BurnCard_bc_lmg_m2 BurnCard = 29 + BurnCard_bc_g2_m2 BurnCard = 30 + BurnCard_bc_car_m2 BurnCard = 31 + BurnCard_bc_hemlok_m2 BurnCard = 32 + BurnCard_bc_sniper_m2 BurnCard = 33 + BurnCard_bc_smr_m2 BurnCard = 34 + BurnCard_bc_mgl_m2 BurnCard = 35 + BurnCard_bc_defender_m2 BurnCard = 36 + BurnCard_bc_rocket_launcher_m2 BurnCard = 37 + BurnCard_bc_semipistol_m2 BurnCard = 38 + BurnCard_bc_autopistol_m2 BurnCard = 39 + BurnCard_bc_wingman_m2 BurnCard = 40 + BurnCard_bc_satchel_m2 BurnCard = 41 + BurnCard_bc_frag_m2 BurnCard = 42 + BurnCard_bc_arc_m2 BurnCard = 43 + BurnCard_bc_prox_m2 BurnCard = 44 + BurnCard_bc_pilot_warning BurnCard = 45 + BurnCard_bc_rematch BurnCard = 46 + BurnCard_bc_minimap_scan BurnCard = 47 + BurnCard_bc_free_build_time_1 BurnCard = 48 + BurnCard_bc_free_build_time_2 BurnCard = 49 + BurnCard_bc_fast_build_1 BurnCard = 50 + BurnCard_bc_fast_build_2 BurnCard = 51 + BurnCard_bc_hunt_soldier BurnCard = 52 + BurnCard_bc_hunt_spectre BurnCard = 53 + BurnCard_bc_hunt_titan BurnCard = 54 + BurnCard_bc_hunt_pilot BurnCard = 55 + BurnCard_bc_auto_sonar BurnCard = 56 + BurnCard_bc_fast_movespeed BurnCard = 57 + BurnCard_bc_auto_refill BurnCard = 58 + BurnCard_bc_dice_ondeath BurnCard = 59 + BurnCard_bc_titan_40mm_m2 BurnCard = 60 + BurnCard_bc_titan_arc_cannon_m2 BurnCard = 61 + BurnCard_bc_titan_rocket_launcher_m2 BurnCard = 62 + BurnCard_bc_titan_sniper_m2 BurnCard = 63 + BurnCard_bc_titan_triple_threat_m2 BurnCard = 64 + BurnCard_bc_titan_xo16_m2 BurnCard = 65 + BurnCard_bc_titan_dumbfire_missile_m2 BurnCard = 66 + BurnCard_bc_titan_homing_rockets_m2 BurnCard = 67 + BurnCard_bc_titan_salvo_rockets_m2 BurnCard = 68 + BurnCard_bc_titan_shoulder_rockets_m2 BurnCard = 69 + BurnCard_bc_titan_vortex_shield_m2 BurnCard = 70 + BurnCard_bc_titan_electric_smoke_m2 BurnCard = 71 + BurnCard_bc_titan_shield_wall_m2 BurnCard = 72 + BurnCard_bc_titan_melee_m2 BurnCard = 73 + BurnCard_bc_extra_dash BurnCard = 74 + BurnCard_bc_lstar_m2 BurnCard = 75 + BurnCard_bc_mastiff_m2 BurnCard = 76 + BurnCard_bc_vinson_m2 BurnCard = 77 + BurnCardCount BurnCard = 78 +) + +var _ fmt.Stringer = BurnCard(0) +var _ fmt.GoStringer = BurnCard(0) + +//var _ encoding.TextMarshaler = BurnCard(0) +var _ encoding.TextUnmarshaler = (*BurnCard)(nil) + +func (v BurnCard) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v BurnCard) GoString() string { + switch v { + case BurnCard_NULL: + return "BurnCard_NULL" + case BurnCard_bc_conscription: + return "BurnCard_bc_conscription" + case BurnCard_bc_double_xp: + return "BurnCard_bc_double_xp" + case BurnCard_bc_free_xp: + return "BurnCard_bc_free_xp" + case BurnCard_bc_fast_cooldown1: + return "BurnCard_bc_fast_cooldown1" + case BurnCard_bc_fast_cooldown2: + return "BurnCard_bc_fast_cooldown2" + case BurnCard_bc_super_stim: + return "BurnCard_bc_super_stim" + case BurnCard_bc_super_cloak: + return "BurnCard_bc_super_cloak" + case BurnCard_bc_super_sonar: + return "BurnCard_bc_super_sonar" + case BurnCard_bc_summon_ogre: + return "BurnCard_bc_summon_ogre" + case BurnCard_bc_cloak_forever: + return "BurnCard_bc_cloak_forever" + case BurnCard_bc_stim_forever: + return "BurnCard_bc_stim_forever" + case BurnCard_bc_sonar_forever: + return "BurnCard_bc_sonar_forever" + case BurnCard_bc_summon_stryder: + return "BurnCard_bc_summon_stryder" + case BurnCard_bc_spectre_virus: + return "BurnCard_bc_spectre_virus" + case BurnCard_bc_play_spectre: + return "BurnCard_bc_play_spectre" + case BurnCard_bc_double_agent: + return "BurnCard_bc_double_agent" + case BurnCard_bc_minimap: + return "BurnCard_bc_minimap" + case BurnCard_bc_summon_atlas: + return "BurnCard_bc_summon_atlas" + case BurnCard_bc_megaturrets: + return "BurnCard_bc_megaturrets" + case BurnCard_bc_summon_dogfighter: + return "BurnCard_bc_summon_dogfighter" + case BurnCard_bc_wifi_spectre_hack: + return "BurnCard_bc_wifi_spectre_hack" + case BurnCard_bc_nuclear_core: + return "BurnCard_bc_nuclear_core" + case BurnCard_bc_core_charged: + return "BurnCard_bc_core_charged" + case BurnCard_bc_smart_pistol_m2: + return "BurnCard_bc_smart_pistol_m2" + case BurnCard_bc_r97_m2: + return "BurnCard_bc_r97_m2" + case BurnCard_bc_rspn101_m2: + return "BurnCard_bc_rspn101_m2" + case BurnCard_bc_dmr_m2: + return "BurnCard_bc_dmr_m2" + case BurnCard_bc_shotgun_m2: + return "BurnCard_bc_shotgun_m2" + case BurnCard_bc_lmg_m2: + return "BurnCard_bc_lmg_m2" + case BurnCard_bc_g2_m2: + return "BurnCard_bc_g2_m2" + case BurnCard_bc_car_m2: + return "BurnCard_bc_car_m2" + case BurnCard_bc_hemlok_m2: + return "BurnCard_bc_hemlok_m2" + case BurnCard_bc_sniper_m2: + return "BurnCard_bc_sniper_m2" + case BurnCard_bc_smr_m2: + return "BurnCard_bc_smr_m2" + case BurnCard_bc_mgl_m2: + return "BurnCard_bc_mgl_m2" + case BurnCard_bc_defender_m2: + return "BurnCard_bc_defender_m2" + case BurnCard_bc_rocket_launcher_m2: + return "BurnCard_bc_rocket_launcher_m2" + case BurnCard_bc_semipistol_m2: + return "BurnCard_bc_semipistol_m2" + case BurnCard_bc_autopistol_m2: + return "BurnCard_bc_autopistol_m2" + case BurnCard_bc_wingman_m2: + return "BurnCard_bc_wingman_m2" + case BurnCard_bc_satchel_m2: + return "BurnCard_bc_satchel_m2" + case BurnCard_bc_frag_m2: + return "BurnCard_bc_frag_m2" + case BurnCard_bc_arc_m2: + return "BurnCard_bc_arc_m2" + case BurnCard_bc_prox_m2: + return "BurnCard_bc_prox_m2" + case BurnCard_bc_pilot_warning: + return "BurnCard_bc_pilot_warning" + case BurnCard_bc_rematch: + return "BurnCard_bc_rematch" + case BurnCard_bc_minimap_scan: + return "BurnCard_bc_minimap_scan" + case BurnCard_bc_free_build_time_1: + return "BurnCard_bc_free_build_time_1" + case BurnCard_bc_free_build_time_2: + return "BurnCard_bc_free_build_time_2" + case BurnCard_bc_fast_build_1: + return "BurnCard_bc_fast_build_1" + case BurnCard_bc_fast_build_2: + return "BurnCard_bc_fast_build_2" + case BurnCard_bc_hunt_soldier: + return "BurnCard_bc_hunt_soldier" + case BurnCard_bc_hunt_spectre: + return "BurnCard_bc_hunt_spectre" + case BurnCard_bc_hunt_titan: + return "BurnCard_bc_hunt_titan" + case BurnCard_bc_hunt_pilot: + return "BurnCard_bc_hunt_pilot" + case BurnCard_bc_auto_sonar: + return "BurnCard_bc_auto_sonar" + case BurnCard_bc_fast_movespeed: + return "BurnCard_bc_fast_movespeed" + case BurnCard_bc_auto_refill: + return "BurnCard_bc_auto_refill" + case BurnCard_bc_dice_ondeath: + return "BurnCard_bc_dice_ondeath" + case BurnCard_bc_titan_40mm_m2: + return "BurnCard_bc_titan_40mm_m2" + case BurnCard_bc_titan_arc_cannon_m2: + return "BurnCard_bc_titan_arc_cannon_m2" + case BurnCard_bc_titan_rocket_launcher_m2: + return "BurnCard_bc_titan_rocket_launcher_m2" + case BurnCard_bc_titan_sniper_m2: + return "BurnCard_bc_titan_sniper_m2" + case BurnCard_bc_titan_triple_threat_m2: + return "BurnCard_bc_titan_triple_threat_m2" + case BurnCard_bc_titan_xo16_m2: + return "BurnCard_bc_titan_xo16_m2" + case BurnCard_bc_titan_dumbfire_missile_m2: + return "BurnCard_bc_titan_dumbfire_missile_m2" + case BurnCard_bc_titan_homing_rockets_m2: + return "BurnCard_bc_titan_homing_rockets_m2" + case BurnCard_bc_titan_salvo_rockets_m2: + return "BurnCard_bc_titan_salvo_rockets_m2" + case BurnCard_bc_titan_shoulder_rockets_m2: + return "BurnCard_bc_titan_shoulder_rockets_m2" + case BurnCard_bc_titan_vortex_shield_m2: + return "BurnCard_bc_titan_vortex_shield_m2" + case BurnCard_bc_titan_electric_smoke_m2: + return "BurnCard_bc_titan_electric_smoke_m2" + case BurnCard_bc_titan_shield_wall_m2: + return "BurnCard_bc_titan_shield_wall_m2" + case BurnCard_bc_titan_melee_m2: + return "BurnCard_bc_titan_melee_m2" + case BurnCard_bc_extra_dash: + return "BurnCard_bc_extra_dash" + case BurnCard_bc_lstar_m2: + return "BurnCard_bc_lstar_m2" + case BurnCard_bc_mastiff_m2: + return "BurnCard_bc_mastiff_m2" + case BurnCard_bc_vinson_m2: + return "BurnCard_bc_vinson_m2" + default: + return fmt.Sprintf("%s(%d)", "BurnCard", int(v)) + } +} +func (v BurnCard) MarshalText() ([]byte, error) { + switch v { + case BurnCard_NULL: + return []byte("NULL"), nil + case BurnCard_bc_conscription: + return []byte("bc_conscription"), nil + case BurnCard_bc_double_xp: + return []byte("bc_double_xp"), nil + case BurnCard_bc_free_xp: + return []byte("bc_free_xp"), nil + case BurnCard_bc_fast_cooldown1: + return []byte("bc_fast_cooldown1"), nil + case BurnCard_bc_fast_cooldown2: + return []byte("bc_fast_cooldown2"), nil + case BurnCard_bc_super_stim: + return []byte("bc_super_stim"), nil + case BurnCard_bc_super_cloak: + return []byte("bc_super_cloak"), nil + case BurnCard_bc_super_sonar: + return []byte("bc_super_sonar"), nil + case BurnCard_bc_summon_ogre: + return []byte("bc_summon_ogre"), nil + case BurnCard_bc_cloak_forever: + return []byte("bc_cloak_forever"), nil + case BurnCard_bc_stim_forever: + return []byte("bc_stim_forever"), nil + case BurnCard_bc_sonar_forever: + return []byte("bc_sonar_forever"), nil + case BurnCard_bc_summon_stryder: + return []byte("bc_summon_stryder"), nil + case BurnCard_bc_spectre_virus: + return []byte("bc_spectre_virus"), nil + case BurnCard_bc_play_spectre: + return []byte("bc_play_spectre"), nil + case BurnCard_bc_double_agent: + return []byte("bc_double_agent"), nil + case BurnCard_bc_minimap: + return []byte("bc_minimap"), nil + case BurnCard_bc_summon_atlas: + return []byte("bc_summon_atlas"), nil + case BurnCard_bc_megaturrets: + return []byte("bc_megaturrets"), nil + case BurnCard_bc_summon_dogfighter: + return []byte("bc_summon_dogfighter"), nil + case BurnCard_bc_wifi_spectre_hack: + return []byte("bc_wifi_spectre_hack"), nil + case BurnCard_bc_nuclear_core: + return []byte("bc_nuclear_core"), nil + case BurnCard_bc_core_charged: + return []byte("bc_core_charged"), nil + case BurnCard_bc_smart_pistol_m2: + return []byte("bc_smart_pistol_m2"), nil + case BurnCard_bc_r97_m2: + return []byte("bc_r97_m2"), nil + case BurnCard_bc_rspn101_m2: + return []byte("bc_rspn101_m2"), nil + case BurnCard_bc_dmr_m2: + return []byte("bc_dmr_m2"), nil + case BurnCard_bc_shotgun_m2: + return []byte("bc_shotgun_m2"), nil + case BurnCard_bc_lmg_m2: + return []byte("bc_lmg_m2"), nil + case BurnCard_bc_g2_m2: + return []byte("bc_g2_m2"), nil + case BurnCard_bc_car_m2: + return []byte("bc_car_m2"), nil + case BurnCard_bc_hemlok_m2: + return []byte("bc_hemlok_m2"), nil + case BurnCard_bc_sniper_m2: + return []byte("bc_sniper_m2"), nil + case BurnCard_bc_smr_m2: + return []byte("bc_smr_m2"), nil + case BurnCard_bc_mgl_m2: + return []byte("bc_mgl_m2"), nil + case BurnCard_bc_defender_m2: + return []byte("bc_defender_m2"), nil + case BurnCard_bc_rocket_launcher_m2: + return []byte("bc_rocket_launcher_m2"), nil + case BurnCard_bc_semipistol_m2: + return []byte("bc_semipistol_m2"), nil + case BurnCard_bc_autopistol_m2: + return []byte("bc_autopistol_m2"), nil + case BurnCard_bc_wingman_m2: + return []byte("bc_wingman_m2"), nil + case BurnCard_bc_satchel_m2: + return []byte("bc_satchel_m2"), nil + case BurnCard_bc_frag_m2: + return []byte("bc_frag_m2"), nil + case BurnCard_bc_arc_m2: + return []byte("bc_arc_m2"), nil + case BurnCard_bc_prox_m2: + return []byte("bc_prox_m2"), nil + case BurnCard_bc_pilot_warning: + return []byte("bc_pilot_warning"), nil + case BurnCard_bc_rematch: + return []byte("bc_rematch"), nil + case BurnCard_bc_minimap_scan: + return []byte("bc_minimap_scan"), nil + case BurnCard_bc_free_build_time_1: + return []byte("bc_free_build_time_1"), nil + case BurnCard_bc_free_build_time_2: + return []byte("bc_free_build_time_2"), nil + case BurnCard_bc_fast_build_1: + return []byte("bc_fast_build_1"), nil + case BurnCard_bc_fast_build_2: + return []byte("bc_fast_build_2"), nil + case BurnCard_bc_hunt_soldier: + return []byte("bc_hunt_soldier"), nil + case BurnCard_bc_hunt_spectre: + return []byte("bc_hunt_spectre"), nil + case BurnCard_bc_hunt_titan: + return []byte("bc_hunt_titan"), nil + case BurnCard_bc_hunt_pilot: + return []byte("bc_hunt_pilot"), nil + case BurnCard_bc_auto_sonar: + return []byte("bc_auto_sonar"), nil + case BurnCard_bc_fast_movespeed: + return []byte("bc_fast_movespeed"), nil + case BurnCard_bc_auto_refill: + return []byte("bc_auto_refill"), nil + case BurnCard_bc_dice_ondeath: + return []byte("bc_dice_ondeath"), nil + case BurnCard_bc_titan_40mm_m2: + return []byte("bc_titan_40mm_m2"), nil + case BurnCard_bc_titan_arc_cannon_m2: + return []byte("bc_titan_arc_cannon_m2"), nil + case BurnCard_bc_titan_rocket_launcher_m2: + return []byte("bc_titan_rocket_launcher_m2"), nil + case BurnCard_bc_titan_sniper_m2: + return []byte("bc_titan_sniper_m2"), nil + case BurnCard_bc_titan_triple_threat_m2: + return []byte("bc_titan_triple_threat_m2"), nil + case BurnCard_bc_titan_xo16_m2: + return []byte("bc_titan_xo16_m2"), nil + case BurnCard_bc_titan_dumbfire_missile_m2: + return []byte("bc_titan_dumbfire_missile_m2"), nil + case BurnCard_bc_titan_homing_rockets_m2: + return []byte("bc_titan_homing_rockets_m2"), nil + case BurnCard_bc_titan_salvo_rockets_m2: + return []byte("bc_titan_salvo_rockets_m2"), nil + case BurnCard_bc_titan_shoulder_rockets_m2: + return []byte("bc_titan_shoulder_rockets_m2"), nil + case BurnCard_bc_titan_vortex_shield_m2: + return []byte("bc_titan_vortex_shield_m2"), nil + case BurnCard_bc_titan_electric_smoke_m2: + return []byte("bc_titan_electric_smoke_m2"), nil + case BurnCard_bc_titan_shield_wall_m2: + return []byte("bc_titan_shield_wall_m2"), nil + case BurnCard_bc_titan_melee_m2: + return []byte("bc_titan_melee_m2"), nil + case BurnCard_bc_extra_dash: + return []byte("bc_extra_dash"), nil + case BurnCard_bc_lstar_m2: + return []byte("bc_lstar_m2"), nil + case BurnCard_bc_mastiff_m2: + return []byte("bc_mastiff_m2"), nil + case BurnCard_bc_vinson_m2: + return []byte("bc_vinson_m2"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "BurnCard") + } +} +func (v *BurnCard) UnmarshalText(b []byte) error { + switch string(b) { + case "NULL": + *v = BurnCard_NULL + case "bc_conscription": + *v = BurnCard_bc_conscription + case "bc_double_xp": + *v = BurnCard_bc_double_xp + case "bc_free_xp": + *v = BurnCard_bc_free_xp + case "bc_fast_cooldown1": + *v = BurnCard_bc_fast_cooldown1 + case "bc_fast_cooldown2": + *v = BurnCard_bc_fast_cooldown2 + case "bc_super_stim": + *v = BurnCard_bc_super_stim + case "bc_super_cloak": + *v = BurnCard_bc_super_cloak + case "bc_super_sonar": + *v = BurnCard_bc_super_sonar + case "bc_summon_ogre": + *v = BurnCard_bc_summon_ogre + case "bc_cloak_forever": + *v = BurnCard_bc_cloak_forever + case "bc_stim_forever": + *v = BurnCard_bc_stim_forever + case "bc_sonar_forever": + *v = BurnCard_bc_sonar_forever + case "bc_summon_stryder": + *v = BurnCard_bc_summon_stryder + case "bc_spectre_virus": + *v = BurnCard_bc_spectre_virus + case "bc_play_spectre": + *v = BurnCard_bc_play_spectre + case "bc_double_agent": + *v = BurnCard_bc_double_agent + case "bc_minimap": + *v = BurnCard_bc_minimap + case "bc_summon_atlas": + *v = BurnCard_bc_summon_atlas + case "bc_megaturrets": + *v = BurnCard_bc_megaturrets + case "bc_summon_dogfighter": + *v = BurnCard_bc_summon_dogfighter + case "bc_wifi_spectre_hack": + *v = BurnCard_bc_wifi_spectre_hack + case "bc_nuclear_core": + *v = BurnCard_bc_nuclear_core + case "bc_core_charged": + *v = BurnCard_bc_core_charged + case "bc_smart_pistol_m2": + *v = BurnCard_bc_smart_pistol_m2 + case "bc_r97_m2": + *v = BurnCard_bc_r97_m2 + case "bc_rspn101_m2": + *v = BurnCard_bc_rspn101_m2 + case "bc_dmr_m2": + *v = BurnCard_bc_dmr_m2 + case "bc_shotgun_m2": + *v = BurnCard_bc_shotgun_m2 + case "bc_lmg_m2": + *v = BurnCard_bc_lmg_m2 + case "bc_g2_m2": + *v = BurnCard_bc_g2_m2 + case "bc_car_m2": + *v = BurnCard_bc_car_m2 + case "bc_hemlok_m2": + *v = BurnCard_bc_hemlok_m2 + case "bc_sniper_m2": + *v = BurnCard_bc_sniper_m2 + case "bc_smr_m2": + *v = BurnCard_bc_smr_m2 + case "bc_mgl_m2": + *v = BurnCard_bc_mgl_m2 + case "bc_defender_m2": + *v = BurnCard_bc_defender_m2 + case "bc_rocket_launcher_m2": + *v = BurnCard_bc_rocket_launcher_m2 + case "bc_semipistol_m2": + *v = BurnCard_bc_semipistol_m2 + case "bc_autopistol_m2": + *v = BurnCard_bc_autopistol_m2 + case "bc_wingman_m2": + *v = BurnCard_bc_wingman_m2 + case "bc_satchel_m2": + *v = BurnCard_bc_satchel_m2 + case "bc_frag_m2": + *v = BurnCard_bc_frag_m2 + case "bc_arc_m2": + *v = BurnCard_bc_arc_m2 + case "bc_prox_m2": + *v = BurnCard_bc_prox_m2 + case "bc_pilot_warning": + *v = BurnCard_bc_pilot_warning + case "bc_rematch": + *v = BurnCard_bc_rematch + case "bc_minimap_scan": + *v = BurnCard_bc_minimap_scan + case "bc_free_build_time_1": + *v = BurnCard_bc_free_build_time_1 + case "bc_free_build_time_2": + *v = BurnCard_bc_free_build_time_2 + case "bc_fast_build_1": + *v = BurnCard_bc_fast_build_1 + case "bc_fast_build_2": + *v = BurnCard_bc_fast_build_2 + case "bc_hunt_soldier": + *v = BurnCard_bc_hunt_soldier + case "bc_hunt_spectre": + *v = BurnCard_bc_hunt_spectre + case "bc_hunt_titan": + *v = BurnCard_bc_hunt_titan + case "bc_hunt_pilot": + *v = BurnCard_bc_hunt_pilot + case "bc_auto_sonar": + *v = BurnCard_bc_auto_sonar + case "bc_fast_movespeed": + *v = BurnCard_bc_fast_movespeed + case "bc_auto_refill": + *v = BurnCard_bc_auto_refill + case "bc_dice_ondeath": + *v = BurnCard_bc_dice_ondeath + case "bc_titan_40mm_m2": + *v = BurnCard_bc_titan_40mm_m2 + case "bc_titan_arc_cannon_m2": + *v = BurnCard_bc_titan_arc_cannon_m2 + case "bc_titan_rocket_launcher_m2": + *v = BurnCard_bc_titan_rocket_launcher_m2 + case "bc_titan_sniper_m2": + *v = BurnCard_bc_titan_sniper_m2 + case "bc_titan_triple_threat_m2": + *v = BurnCard_bc_titan_triple_threat_m2 + case "bc_titan_xo16_m2": + *v = BurnCard_bc_titan_xo16_m2 + case "bc_titan_dumbfire_missile_m2": + *v = BurnCard_bc_titan_dumbfire_missile_m2 + case "bc_titan_homing_rockets_m2": + *v = BurnCard_bc_titan_homing_rockets_m2 + case "bc_titan_salvo_rockets_m2": + *v = BurnCard_bc_titan_salvo_rockets_m2 + case "bc_titan_shoulder_rockets_m2": + *v = BurnCard_bc_titan_shoulder_rockets_m2 + case "bc_titan_vortex_shield_m2": + *v = BurnCard_bc_titan_vortex_shield_m2 + case "bc_titan_electric_smoke_m2": + *v = BurnCard_bc_titan_electric_smoke_m2 + case "bc_titan_shield_wall_m2": + *v = BurnCard_bc_titan_shield_wall_m2 + case "bc_titan_melee_m2": + *v = BurnCard_bc_titan_melee_m2 + case "bc_extra_dash": + *v = BurnCard_bc_extra_dash + case "bc_lstar_m2": + *v = BurnCard_bc_lstar_m2 + case "bc_mastiff_m2": + *v = BurnCard_bc_mastiff_m2 + case "bc_vinson_m2": + *v = BurnCard_bc_vinson_m2 + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "BurnCard") + } + return nil +} + +type Challenge uint8 + +const ( + Challenge_NULL Challenge = 0 + Challenge_ch_games_played Challenge = 1 + Challenge_ch_games_won Challenge = 2 + Challenge_ch_games_mvp Challenge = 3 + Challenge_ch_titan_falls Challenge = 4 + Challenge_ch_rodeos Challenge = 5 + Challenge_ch_times_ejected Challenge = 6 + Challenge_ch_spectres_leeched Challenge = 7 + Challenge_ch_hours_played Challenge = 8 + Challenge_ch_hours_played_pilot Challenge = 9 + Challenge_ch_hours_played_titan Challenge = 10 + Challenge_ch_hours_wallhang Challenge = 11 + Challenge_ch_dist_total Challenge = 12 + Challenge_ch_dist_pilot Challenge = 13 + Challenge_ch_dist_titan Challenge = 14 + Challenge_ch_dist_wallrun Challenge = 15 + Challenge_ch_dist_inair Challenge = 16 + Challenge_ch_dist_zipline Challenge = 17 + Challenge_ch_dist_on_friendly_titan Challenge = 18 + Challenge_ch_dist_on_enemy_titan Challenge = 19 + Challenge_ch_grunt_kills Challenge = 20 + Challenge_ch_spectre_kills Challenge = 21 + Challenge_ch_marvin_kills Challenge = 22 + Challenge_ch_first_strikes Challenge = 23 + Challenge_ch_ejecting_pilot_kills Challenge = 24 + Challenge_ch_kills_while_ejecting Challenge = 25 + Challenge_ch_cloaked_pilot_kills Challenge = 26 + Challenge_ch_kills_while_cloaked Challenge = 27 + Challenge_ch_wallrunning_pilot_kills Challenge = 28 + Challenge_ch_wallhanging_pilot_kills Challenge = 29 + Challenge_ch_kills_while_wallrunning Challenge = 30 + Challenge_ch_kills_while_wallhanging Challenge = 31 + Challenge_ch_pilotExecutePilot Challenge = 32 + Challenge_ch_pilotKickMelee Challenge = 33 + Challenge_ch_pilotKickMeleePilot Challenge = 34 + Challenge_ch_titanMelee Challenge = 35 + Challenge_ch_titanMeleePilot Challenge = 36 + Challenge_ch_titanStepCrush Challenge = 37 + Challenge_ch_titanStepCrushPilot Challenge = 38 + Challenge_ch_titanExocutionStryder Challenge = 39 + Challenge_ch_titanExocutionBuddy Challenge = 40 + Challenge_ch_titanExocutionAtlas Challenge = 41 + Challenge_ch_titanExocutionOgre Challenge = 42 + Challenge_ch_titanFallKill Challenge = 43 + Challenge_ch_petTitanKillsFollowMode Challenge = 44 + Challenge_ch_petTitanKillsGuardMode Challenge = 45 + Challenge_ch_rodeo_kills Challenge = 46 + Challenge_ch_40mm_kills Challenge = 47 + Challenge_ch_40mm_pilot_kills Challenge = 48 + Challenge_ch_40mm_titan_kills Challenge = 49 + Challenge_ch_40mm_spectre_kills Challenge = 50 + Challenge_ch_40mm_grunt_kills Challenge = 51 + Challenge_ch_40mm_hours_used Challenge = 52 + Challenge_ch_40mm_crits Challenge = 53 + Challenge_ch_xo16_kills Challenge = 54 + Challenge_ch_xo16_pilot_kills Challenge = 55 + Challenge_ch_xo16_titan_kills Challenge = 56 + Challenge_ch_xo16_spectre_kills Challenge = 57 + Challenge_ch_xo16_grunt_kills Challenge = 58 + Challenge_ch_xo16_hours_used Challenge = 59 + Challenge_ch_xo16_headshots Challenge = 60 + Challenge_ch_xo16_crits Challenge = 61 + Challenge_ch_titan_sniper_kills Challenge = 62 + Challenge_ch_titan_sniper_pilot_kills Challenge = 63 + Challenge_ch_titan_sniper_titan_kills Challenge = 64 + Challenge_ch_titan_sniper_spectre_kills Challenge = 65 + Challenge_ch_titan_sniper_grunt_kills Challenge = 66 + Challenge_ch_titan_sniper_hours_used Challenge = 67 + Challenge_ch_titan_sniper_crits Challenge = 68 + Challenge_ch_rocket_launcher_kills Challenge = 69 + Challenge_ch_rocket_launcher_pilot_kills Challenge = 70 + Challenge_ch_rocket_launcher_titan_kills Challenge = 71 + Challenge_ch_rocket_launcher_spectre_kills Challenge = 72 + Challenge_ch_rocket_launcher_grunt_kills Challenge = 73 + Challenge_ch_rocket_launcher_hours_used Challenge = 74 + Challenge_ch_triple_threat_kills Challenge = 75 + Challenge_ch_triple_threat_pilot_kills Challenge = 76 + Challenge_ch_triple_threat_titan_kills Challenge = 77 + Challenge_ch_triple_threat_spectre_kills Challenge = 78 + Challenge_ch_triple_threat_grunt_kills Challenge = 79 + Challenge_ch_triple_threat_hours_used Challenge = 80 + Challenge_ch_salvo_rockets_kills Challenge = 81 + Challenge_ch_salvo_rockets_pilot_kills Challenge = 82 + Challenge_ch_salvo_rockets_titan_kills Challenge = 83 + Challenge_ch_salvo_rockets_spectre_kills Challenge = 84 + Challenge_ch_salvo_rockets_grunt_kills Challenge = 85 + Challenge_ch_salvo_rockets_hours_used Challenge = 86 + Challenge_ch_homing_rockets_titan_kills Challenge = 87 + Challenge_ch_homing_rockets_hours_used Challenge = 88 + Challenge_ch_dumbfire_rockets_kills Challenge = 89 + Challenge_ch_dumbfire_rockets_pilot_kills Challenge = 90 + Challenge_ch_dumbfire_rockets_titan_kills Challenge = 91 + Challenge_ch_dumbfire_rockets_spectre_kills Challenge = 92 + Challenge_ch_dumbfire_rockets_grunt_kills Challenge = 93 + Challenge_ch_dumbfire_rockets_hours_used Challenge = 94 + Challenge_ch_shoulder_rockets_titan_kills Challenge = 95 + Challenge_ch_shoulder_rockets_hours_used Challenge = 96 + Challenge_ch_smart_pistol_kills Challenge = 97 + Challenge_ch_smart_pistol_pilot_kills Challenge = 98 + Challenge_ch_smart_pistol_spectre_kills Challenge = 99 + Challenge_ch_smart_pistol_grunt_kills Challenge = 100 + Challenge_ch_smart_pistol_hours_used Challenge = 101 + Challenge_ch_shotgun_kills Challenge = 102 + Challenge_ch_shotgun_pilot_kills Challenge = 103 + Challenge_ch_shotgun_spectre_kills Challenge = 104 + Challenge_ch_shotgun_grunt_kills Challenge = 105 + Challenge_ch_shotgun_hours_used Challenge = 106 + Challenge_ch_r97_kills Challenge = 107 + Challenge_ch_r97_pilot_kills Challenge = 108 + Challenge_ch_r97_spectre_kills Challenge = 109 + Challenge_ch_r97_grunt_kills Challenge = 110 + Challenge_ch_r97_hours_used Challenge = 111 + Challenge_ch_r97_headshots Challenge = 112 + Challenge_ch_car_kills Challenge = 113 + Challenge_ch_car_pilot_kills Challenge = 114 + Challenge_ch_car_spectre_kills Challenge = 115 + Challenge_ch_car_grunt_kills Challenge = 116 + Challenge_ch_car_hours_used Challenge = 117 + Challenge_ch_car_headshots Challenge = 118 + Challenge_ch_lmg_kills Challenge = 119 + Challenge_ch_lmg_pilot_kills Challenge = 120 + Challenge_ch_lmg_spectre_kills Challenge = 121 + Challenge_ch_lmg_grunt_kills Challenge = 122 + Challenge_ch_lmg_hours_used Challenge = 123 + Challenge_ch_lmg_headshots Challenge = 124 + Challenge_ch_rspn101_kills Challenge = 125 + Challenge_ch_rspn101_pilot_kills Challenge = 126 + Challenge_ch_rspn101_spectre_kills Challenge = 127 + Challenge_ch_rspn101_grunt_kills Challenge = 128 + Challenge_ch_rspn101_hours_used Challenge = 129 + Challenge_ch_rspn101_headshots Challenge = 130 + Challenge_ch_hemlok_kills Challenge = 131 + Challenge_ch_hemlok_pilot_kills Challenge = 132 + Challenge_ch_hemlok_spectre_kills Challenge = 133 + Challenge_ch_hemlok_grunt_kills Challenge = 134 + Challenge_ch_hemlok_hours_used Challenge = 135 + Challenge_ch_hemlok_headshots Challenge = 136 + Challenge_ch_g2_kills Challenge = 137 + Challenge_ch_g2_pilot_kills Challenge = 138 + Challenge_ch_g2_spectre_kills Challenge = 139 + Challenge_ch_g2_grunt_kills Challenge = 140 + Challenge_ch_g2_hours_used Challenge = 141 + Challenge_ch_g2_headshots Challenge = 142 + Challenge_ch_dmr_kills Challenge = 143 + Challenge_ch_dmr_pilot_kills Challenge = 144 + Challenge_ch_dmr_spectre_kills Challenge = 145 + Challenge_ch_dmr_grunt_kills Challenge = 146 + Challenge_ch_dmr_hours_used Challenge = 147 + Challenge_ch_dmr_headshots Challenge = 148 + Challenge_ch_sniper_kills Challenge = 149 + Challenge_ch_sniper_pilot_kills Challenge = 150 + Challenge_ch_sniper_spectre_kills Challenge = 151 + Challenge_ch_sniper_grunt_kills Challenge = 152 + Challenge_ch_sniper_hours_used Challenge = 153 + Challenge_ch_smr_titan_kills Challenge = 154 + Challenge_ch_smr_crits Challenge = 155 + Challenge_ch_mgl_titan_kills Challenge = 156 + Challenge_ch_archer_titan_kills Challenge = 157 + Challenge_ch_defender_titan_kills Challenge = 158 + Challenge_ch_defender_crits Challenge = 159 + Challenge_ch_frag_grenade_throws Challenge = 160 + Challenge_ch_frag_grenade_kills Challenge = 161 + Challenge_ch_frag_grenade_pilot_kills Challenge = 162 + Challenge_ch_frag_grenade_grunt_kills Challenge = 163 + Challenge_ch_emp_grenade_throws Challenge = 164 + Challenge_ch_emp_grenade_kills Challenge = 165 + Challenge_ch_emp_grenade_pilot_kills Challenge = 166 + Challenge_ch_emp_grenade_grunt_kills Challenge = 167 + Challenge_ch_emp_grenade_spectre_kills Challenge = 168 + Challenge_ch_proximity_mine_throws Challenge = 169 + Challenge_ch_proximity_mine_kills Challenge = 170 + Challenge_ch_proximity_mine_pilot_kills Challenge = 171 + Challenge_ch_proximity_mine_grunt_kills Challenge = 172 + Challenge_ch_satchel_throws Challenge = 173 + Challenge_ch_satchel_kills Challenge = 174 + Challenge_ch_satchel_pilot_kills Challenge = 175 + Challenge_ch_satchel_grunt_kills Challenge = 176 + ChallengeCount Challenge = 177 +) + +var _ fmt.Stringer = Challenge(0) +var _ fmt.GoStringer = Challenge(0) + +//var _ encoding.TextMarshaler = Challenge(0) +var _ encoding.TextUnmarshaler = (*Challenge)(nil) + +func (v Challenge) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v Challenge) GoString() string { + switch v { + case Challenge_NULL: + return "Challenge_NULL" + case Challenge_ch_games_played: + return "Challenge_ch_games_played" + case Challenge_ch_games_won: + return "Challenge_ch_games_won" + case Challenge_ch_games_mvp: + return "Challenge_ch_games_mvp" + case Challenge_ch_titan_falls: + return "Challenge_ch_titan_falls" + case Challenge_ch_rodeos: + return "Challenge_ch_rodeos" + case Challenge_ch_times_ejected: + return "Challenge_ch_times_ejected" + case Challenge_ch_spectres_leeched: + return "Challenge_ch_spectres_leeched" + case Challenge_ch_hours_played: + return "Challenge_ch_hours_played" + case Challenge_ch_hours_played_pilot: + return "Challenge_ch_hours_played_pilot" + case Challenge_ch_hours_played_titan: + return "Challenge_ch_hours_played_titan" + case Challenge_ch_hours_wallhang: + return "Challenge_ch_hours_wallhang" + case Challenge_ch_dist_total: + return "Challenge_ch_dist_total" + case Challenge_ch_dist_pilot: + return "Challenge_ch_dist_pilot" + case Challenge_ch_dist_titan: + return "Challenge_ch_dist_titan" + case Challenge_ch_dist_wallrun: + return "Challenge_ch_dist_wallrun" + case Challenge_ch_dist_inair: + return "Challenge_ch_dist_inair" + case Challenge_ch_dist_zipline: + return "Challenge_ch_dist_zipline" + case Challenge_ch_dist_on_friendly_titan: + return "Challenge_ch_dist_on_friendly_titan" + case Challenge_ch_dist_on_enemy_titan: + return "Challenge_ch_dist_on_enemy_titan" + case Challenge_ch_grunt_kills: + return "Challenge_ch_grunt_kills" + case Challenge_ch_spectre_kills: + return "Challenge_ch_spectre_kills" + case Challenge_ch_marvin_kills: + return "Challenge_ch_marvin_kills" + case Challenge_ch_first_strikes: + return "Challenge_ch_first_strikes" + case Challenge_ch_ejecting_pilot_kills: + return "Challenge_ch_ejecting_pilot_kills" + case Challenge_ch_kills_while_ejecting: + return "Challenge_ch_kills_while_ejecting" + case Challenge_ch_cloaked_pilot_kills: + return "Challenge_ch_cloaked_pilot_kills" + case Challenge_ch_kills_while_cloaked: + return "Challenge_ch_kills_while_cloaked" + case Challenge_ch_wallrunning_pilot_kills: + return "Challenge_ch_wallrunning_pilot_kills" + case Challenge_ch_wallhanging_pilot_kills: + return "Challenge_ch_wallhanging_pilot_kills" + case Challenge_ch_kills_while_wallrunning: + return "Challenge_ch_kills_while_wallrunning" + case Challenge_ch_kills_while_wallhanging: + return "Challenge_ch_kills_while_wallhanging" + case Challenge_ch_pilotExecutePilot: + return "Challenge_ch_pilotExecutePilot" + case Challenge_ch_pilotKickMelee: + return "Challenge_ch_pilotKickMelee" + case Challenge_ch_pilotKickMeleePilot: + return "Challenge_ch_pilotKickMeleePilot" + case Challenge_ch_titanMelee: + return "Challenge_ch_titanMelee" + case Challenge_ch_titanMeleePilot: + return "Challenge_ch_titanMeleePilot" + case Challenge_ch_titanStepCrush: + return "Challenge_ch_titanStepCrush" + case Challenge_ch_titanStepCrushPilot: + return "Challenge_ch_titanStepCrushPilot" + case Challenge_ch_titanExocutionStryder: + return "Challenge_ch_titanExocutionStryder" + case Challenge_ch_titanExocutionBuddy: + return "Challenge_ch_titanExocutionBuddy" + case Challenge_ch_titanExocutionAtlas: + return "Challenge_ch_titanExocutionAtlas" + case Challenge_ch_titanExocutionOgre: + return "Challenge_ch_titanExocutionOgre" + case Challenge_ch_titanFallKill: + return "Challenge_ch_titanFallKill" + case Challenge_ch_petTitanKillsFollowMode: + return "Challenge_ch_petTitanKillsFollowMode" + case Challenge_ch_petTitanKillsGuardMode: + return "Challenge_ch_petTitanKillsGuardMode" + case Challenge_ch_rodeo_kills: + return "Challenge_ch_rodeo_kills" + case Challenge_ch_40mm_kills: + return "Challenge_ch_40mm_kills" + case Challenge_ch_40mm_pilot_kills: + return "Challenge_ch_40mm_pilot_kills" + case Challenge_ch_40mm_titan_kills: + return "Challenge_ch_40mm_titan_kills" + case Challenge_ch_40mm_spectre_kills: + return "Challenge_ch_40mm_spectre_kills" + case Challenge_ch_40mm_grunt_kills: + return "Challenge_ch_40mm_grunt_kills" + case Challenge_ch_40mm_hours_used: + return "Challenge_ch_40mm_hours_used" + case Challenge_ch_40mm_crits: + return "Challenge_ch_40mm_crits" + case Challenge_ch_xo16_kills: + return "Challenge_ch_xo16_kills" + case Challenge_ch_xo16_pilot_kills: + return "Challenge_ch_xo16_pilot_kills" + case Challenge_ch_xo16_titan_kills: + return "Challenge_ch_xo16_titan_kills" + case Challenge_ch_xo16_spectre_kills: + return "Challenge_ch_xo16_spectre_kills" + case Challenge_ch_xo16_grunt_kills: + return "Challenge_ch_xo16_grunt_kills" + case Challenge_ch_xo16_hours_used: + return "Challenge_ch_xo16_hours_used" + case Challenge_ch_xo16_headshots: + return "Challenge_ch_xo16_headshots" + case Challenge_ch_xo16_crits: + return "Challenge_ch_xo16_crits" + case Challenge_ch_titan_sniper_kills: + return "Challenge_ch_titan_sniper_kills" + case Challenge_ch_titan_sniper_pilot_kills: + return "Challenge_ch_titan_sniper_pilot_kills" + case Challenge_ch_titan_sniper_titan_kills: + return "Challenge_ch_titan_sniper_titan_kills" + case Challenge_ch_titan_sniper_spectre_kills: + return "Challenge_ch_titan_sniper_spectre_kills" + case Challenge_ch_titan_sniper_grunt_kills: + return "Challenge_ch_titan_sniper_grunt_kills" + case Challenge_ch_titan_sniper_hours_used: + return "Challenge_ch_titan_sniper_hours_used" + case Challenge_ch_titan_sniper_crits: + return "Challenge_ch_titan_sniper_crits" + case Challenge_ch_rocket_launcher_kills: + return "Challenge_ch_rocket_launcher_kills" + case Challenge_ch_rocket_launcher_pilot_kills: + return "Challenge_ch_rocket_launcher_pilot_kills" + case Challenge_ch_rocket_launcher_titan_kills: + return "Challenge_ch_rocket_launcher_titan_kills" + case Challenge_ch_rocket_launcher_spectre_kills: + return "Challenge_ch_rocket_launcher_spectre_kills" + case Challenge_ch_rocket_launcher_grunt_kills: + return "Challenge_ch_rocket_launcher_grunt_kills" + case Challenge_ch_rocket_launcher_hours_used: + return "Challenge_ch_rocket_launcher_hours_used" + case Challenge_ch_triple_threat_kills: + return "Challenge_ch_triple_threat_kills" + case Challenge_ch_triple_threat_pilot_kills: + return "Challenge_ch_triple_threat_pilot_kills" + case Challenge_ch_triple_threat_titan_kills: + return "Challenge_ch_triple_threat_titan_kills" + case Challenge_ch_triple_threat_spectre_kills: + return "Challenge_ch_triple_threat_spectre_kills" + case Challenge_ch_triple_threat_grunt_kills: + return "Challenge_ch_triple_threat_grunt_kills" + case Challenge_ch_triple_threat_hours_used: + return "Challenge_ch_triple_threat_hours_used" + case Challenge_ch_salvo_rockets_kills: + return "Challenge_ch_salvo_rockets_kills" + case Challenge_ch_salvo_rockets_pilot_kills: + return "Challenge_ch_salvo_rockets_pilot_kills" + case Challenge_ch_salvo_rockets_titan_kills: + return "Challenge_ch_salvo_rockets_titan_kills" + case Challenge_ch_salvo_rockets_spectre_kills: + return "Challenge_ch_salvo_rockets_spectre_kills" + case Challenge_ch_salvo_rockets_grunt_kills: + return "Challenge_ch_salvo_rockets_grunt_kills" + case Challenge_ch_salvo_rockets_hours_used: + return "Challenge_ch_salvo_rockets_hours_used" + case Challenge_ch_homing_rockets_titan_kills: + return "Challenge_ch_homing_rockets_titan_kills" + case Challenge_ch_homing_rockets_hours_used: + return "Challenge_ch_homing_rockets_hours_used" + case Challenge_ch_dumbfire_rockets_kills: + return "Challenge_ch_dumbfire_rockets_kills" + case Challenge_ch_dumbfire_rockets_pilot_kills: + return "Challenge_ch_dumbfire_rockets_pilot_kills" + case Challenge_ch_dumbfire_rockets_titan_kills: + return "Challenge_ch_dumbfire_rockets_titan_kills" + case Challenge_ch_dumbfire_rockets_spectre_kills: + return "Challenge_ch_dumbfire_rockets_spectre_kills" + case Challenge_ch_dumbfire_rockets_grunt_kills: + return "Challenge_ch_dumbfire_rockets_grunt_kills" + case Challenge_ch_dumbfire_rockets_hours_used: + return "Challenge_ch_dumbfire_rockets_hours_used" + case Challenge_ch_shoulder_rockets_titan_kills: + return "Challenge_ch_shoulder_rockets_titan_kills" + case Challenge_ch_shoulder_rockets_hours_used: + return "Challenge_ch_shoulder_rockets_hours_used" + case Challenge_ch_smart_pistol_kills: + return "Challenge_ch_smart_pistol_kills" + case Challenge_ch_smart_pistol_pilot_kills: + return "Challenge_ch_smart_pistol_pilot_kills" + case Challenge_ch_smart_pistol_spectre_kills: + return "Challenge_ch_smart_pistol_spectre_kills" + case Challenge_ch_smart_pistol_grunt_kills: + return "Challenge_ch_smart_pistol_grunt_kills" + case Challenge_ch_smart_pistol_hours_used: + return "Challenge_ch_smart_pistol_hours_used" + case Challenge_ch_shotgun_kills: + return "Challenge_ch_shotgun_kills" + case Challenge_ch_shotgun_pilot_kills: + return "Challenge_ch_shotgun_pilot_kills" + case Challenge_ch_shotgun_spectre_kills: + return "Challenge_ch_shotgun_spectre_kills" + case Challenge_ch_shotgun_grunt_kills: + return "Challenge_ch_shotgun_grunt_kills" + case Challenge_ch_shotgun_hours_used: + return "Challenge_ch_shotgun_hours_used" + case Challenge_ch_r97_kills: + return "Challenge_ch_r97_kills" + case Challenge_ch_r97_pilot_kills: + return "Challenge_ch_r97_pilot_kills" + case Challenge_ch_r97_spectre_kills: + return "Challenge_ch_r97_spectre_kills" + case Challenge_ch_r97_grunt_kills: + return "Challenge_ch_r97_grunt_kills" + case Challenge_ch_r97_hours_used: + return "Challenge_ch_r97_hours_used" + case Challenge_ch_r97_headshots: + return "Challenge_ch_r97_headshots" + case Challenge_ch_car_kills: + return "Challenge_ch_car_kills" + case Challenge_ch_car_pilot_kills: + return "Challenge_ch_car_pilot_kills" + case Challenge_ch_car_spectre_kills: + return "Challenge_ch_car_spectre_kills" + case Challenge_ch_car_grunt_kills: + return "Challenge_ch_car_grunt_kills" + case Challenge_ch_car_hours_used: + return "Challenge_ch_car_hours_used" + case Challenge_ch_car_headshots: + return "Challenge_ch_car_headshots" + case Challenge_ch_lmg_kills: + return "Challenge_ch_lmg_kills" + case Challenge_ch_lmg_pilot_kills: + return "Challenge_ch_lmg_pilot_kills" + case Challenge_ch_lmg_spectre_kills: + return "Challenge_ch_lmg_spectre_kills" + case Challenge_ch_lmg_grunt_kills: + return "Challenge_ch_lmg_grunt_kills" + case Challenge_ch_lmg_hours_used: + return "Challenge_ch_lmg_hours_used" + case Challenge_ch_lmg_headshots: + return "Challenge_ch_lmg_headshots" + case Challenge_ch_rspn101_kills: + return "Challenge_ch_rspn101_kills" + case Challenge_ch_rspn101_pilot_kills: + return "Challenge_ch_rspn101_pilot_kills" + case Challenge_ch_rspn101_spectre_kills: + return "Challenge_ch_rspn101_spectre_kills" + case Challenge_ch_rspn101_grunt_kills: + return "Challenge_ch_rspn101_grunt_kills" + case Challenge_ch_rspn101_hours_used: + return "Challenge_ch_rspn101_hours_used" + case Challenge_ch_rspn101_headshots: + return "Challenge_ch_rspn101_headshots" + case Challenge_ch_hemlok_kills: + return "Challenge_ch_hemlok_kills" + case Challenge_ch_hemlok_pilot_kills: + return "Challenge_ch_hemlok_pilot_kills" + case Challenge_ch_hemlok_spectre_kills: + return "Challenge_ch_hemlok_spectre_kills" + case Challenge_ch_hemlok_grunt_kills: + return "Challenge_ch_hemlok_grunt_kills" + case Challenge_ch_hemlok_hours_used: + return "Challenge_ch_hemlok_hours_used" + case Challenge_ch_hemlok_headshots: + return "Challenge_ch_hemlok_headshots" + case Challenge_ch_g2_kills: + return "Challenge_ch_g2_kills" + case Challenge_ch_g2_pilot_kills: + return "Challenge_ch_g2_pilot_kills" + case Challenge_ch_g2_spectre_kills: + return "Challenge_ch_g2_spectre_kills" + case Challenge_ch_g2_grunt_kills: + return "Challenge_ch_g2_grunt_kills" + case Challenge_ch_g2_hours_used: + return "Challenge_ch_g2_hours_used" + case Challenge_ch_g2_headshots: + return "Challenge_ch_g2_headshots" + case Challenge_ch_dmr_kills: + return "Challenge_ch_dmr_kills" + case Challenge_ch_dmr_pilot_kills: + return "Challenge_ch_dmr_pilot_kills" + case Challenge_ch_dmr_spectre_kills: + return "Challenge_ch_dmr_spectre_kills" + case Challenge_ch_dmr_grunt_kills: + return "Challenge_ch_dmr_grunt_kills" + case Challenge_ch_dmr_hours_used: + return "Challenge_ch_dmr_hours_used" + case Challenge_ch_dmr_headshots: + return "Challenge_ch_dmr_headshots" + case Challenge_ch_sniper_kills: + return "Challenge_ch_sniper_kills" + case Challenge_ch_sniper_pilot_kills: + return "Challenge_ch_sniper_pilot_kills" + case Challenge_ch_sniper_spectre_kills: + return "Challenge_ch_sniper_spectre_kills" + case Challenge_ch_sniper_grunt_kills: + return "Challenge_ch_sniper_grunt_kills" + case Challenge_ch_sniper_hours_used: + return "Challenge_ch_sniper_hours_used" + case Challenge_ch_smr_titan_kills: + return "Challenge_ch_smr_titan_kills" + case Challenge_ch_smr_crits: + return "Challenge_ch_smr_crits" + case Challenge_ch_mgl_titan_kills: + return "Challenge_ch_mgl_titan_kills" + case Challenge_ch_archer_titan_kills: + return "Challenge_ch_archer_titan_kills" + case Challenge_ch_defender_titan_kills: + return "Challenge_ch_defender_titan_kills" + case Challenge_ch_defender_crits: + return "Challenge_ch_defender_crits" + case Challenge_ch_frag_grenade_throws: + return "Challenge_ch_frag_grenade_throws" + case Challenge_ch_frag_grenade_kills: + return "Challenge_ch_frag_grenade_kills" + case Challenge_ch_frag_grenade_pilot_kills: + return "Challenge_ch_frag_grenade_pilot_kills" + case Challenge_ch_frag_grenade_grunt_kills: + return "Challenge_ch_frag_grenade_grunt_kills" + case Challenge_ch_emp_grenade_throws: + return "Challenge_ch_emp_grenade_throws" + case Challenge_ch_emp_grenade_kills: + return "Challenge_ch_emp_grenade_kills" + case Challenge_ch_emp_grenade_pilot_kills: + return "Challenge_ch_emp_grenade_pilot_kills" + case Challenge_ch_emp_grenade_grunt_kills: + return "Challenge_ch_emp_grenade_grunt_kills" + case Challenge_ch_emp_grenade_spectre_kills: + return "Challenge_ch_emp_grenade_spectre_kills" + case Challenge_ch_proximity_mine_throws: + return "Challenge_ch_proximity_mine_throws" + case Challenge_ch_proximity_mine_kills: + return "Challenge_ch_proximity_mine_kills" + case Challenge_ch_proximity_mine_pilot_kills: + return "Challenge_ch_proximity_mine_pilot_kills" + case Challenge_ch_proximity_mine_grunt_kills: + return "Challenge_ch_proximity_mine_grunt_kills" + case Challenge_ch_satchel_throws: + return "Challenge_ch_satchel_throws" + case Challenge_ch_satchel_kills: + return "Challenge_ch_satchel_kills" + case Challenge_ch_satchel_pilot_kills: + return "Challenge_ch_satchel_pilot_kills" + case Challenge_ch_satchel_grunt_kills: + return "Challenge_ch_satchel_grunt_kills" + default: + return fmt.Sprintf("%s(%d)", "Challenge", int(v)) + } +} +func (v Challenge) MarshalText() ([]byte, error) { + switch v { + case Challenge_NULL: + return []byte("NULL"), nil + case Challenge_ch_games_played: + return []byte("ch_games_played"), nil + case Challenge_ch_games_won: + return []byte("ch_games_won"), nil + case Challenge_ch_games_mvp: + return []byte("ch_games_mvp"), nil + case Challenge_ch_titan_falls: + return []byte("ch_titan_falls"), nil + case Challenge_ch_rodeos: + return []byte("ch_rodeos"), nil + case Challenge_ch_times_ejected: + return []byte("ch_times_ejected"), nil + case Challenge_ch_spectres_leeched: + return []byte("ch_spectres_leeched"), nil + case Challenge_ch_hours_played: + return []byte("ch_hours_played"), nil + case Challenge_ch_hours_played_pilot: + return []byte("ch_hours_played_pilot"), nil + case Challenge_ch_hours_played_titan: + return []byte("ch_hours_played_titan"), nil + case Challenge_ch_hours_wallhang: + return []byte("ch_hours_wallhang"), nil + case Challenge_ch_dist_total: + return []byte("ch_dist_total"), nil + case Challenge_ch_dist_pilot: + return []byte("ch_dist_pilot"), nil + case Challenge_ch_dist_titan: + return []byte("ch_dist_titan"), nil + case Challenge_ch_dist_wallrun: + return []byte("ch_dist_wallrun"), nil + case Challenge_ch_dist_inair: + return []byte("ch_dist_inair"), nil + case Challenge_ch_dist_zipline: + return []byte("ch_dist_zipline"), nil + case Challenge_ch_dist_on_friendly_titan: + return []byte("ch_dist_on_friendly_titan"), nil + case Challenge_ch_dist_on_enemy_titan: + return []byte("ch_dist_on_enemy_titan"), nil + case Challenge_ch_grunt_kills: + return []byte("ch_grunt_kills"), nil + case Challenge_ch_spectre_kills: + return []byte("ch_spectre_kills"), nil + case Challenge_ch_marvin_kills: + return []byte("ch_marvin_kills"), nil + case Challenge_ch_first_strikes: + return []byte("ch_first_strikes"), nil + case Challenge_ch_ejecting_pilot_kills: + return []byte("ch_ejecting_pilot_kills"), nil + case Challenge_ch_kills_while_ejecting: + return []byte("ch_kills_while_ejecting"), nil + case Challenge_ch_cloaked_pilot_kills: + return []byte("ch_cloaked_pilot_kills"), nil + case Challenge_ch_kills_while_cloaked: + return []byte("ch_kills_while_cloaked"), nil + case Challenge_ch_wallrunning_pilot_kills: + return []byte("ch_wallrunning_pilot_kills"), nil + case Challenge_ch_wallhanging_pilot_kills: + return []byte("ch_wallhanging_pilot_kills"), nil + case Challenge_ch_kills_while_wallrunning: + return []byte("ch_kills_while_wallrunning"), nil + case Challenge_ch_kills_while_wallhanging: + return []byte("ch_kills_while_wallhanging"), nil + case Challenge_ch_pilotExecutePilot: + return []byte("ch_pilotExecutePilot"), nil + case Challenge_ch_pilotKickMelee: + return []byte("ch_pilotKickMelee"), nil + case Challenge_ch_pilotKickMeleePilot: + return []byte("ch_pilotKickMeleePilot"), nil + case Challenge_ch_titanMelee: + return []byte("ch_titanMelee"), nil + case Challenge_ch_titanMeleePilot: + return []byte("ch_titanMeleePilot"), nil + case Challenge_ch_titanStepCrush: + return []byte("ch_titanStepCrush"), nil + case Challenge_ch_titanStepCrushPilot: + return []byte("ch_titanStepCrushPilot"), nil + case Challenge_ch_titanExocutionStryder: + return []byte("ch_titanExocutionStryder"), nil + case Challenge_ch_titanExocutionBuddy: + return []byte("ch_titanExocutionBuddy"), nil + case Challenge_ch_titanExocutionAtlas: + return []byte("ch_titanExocutionAtlas"), nil + case Challenge_ch_titanExocutionOgre: + return []byte("ch_titanExocutionOgre"), nil + case Challenge_ch_titanFallKill: + return []byte("ch_titanFallKill"), nil + case Challenge_ch_petTitanKillsFollowMode: + return []byte("ch_petTitanKillsFollowMode"), nil + case Challenge_ch_petTitanKillsGuardMode: + return []byte("ch_petTitanKillsGuardMode"), nil + case Challenge_ch_rodeo_kills: + return []byte("ch_rodeo_kills"), nil + case Challenge_ch_40mm_kills: + return []byte("ch_40mm_kills"), nil + case Challenge_ch_40mm_pilot_kills: + return []byte("ch_40mm_pilot_kills"), nil + case Challenge_ch_40mm_titan_kills: + return []byte("ch_40mm_titan_kills"), nil + case Challenge_ch_40mm_spectre_kills: + return []byte("ch_40mm_spectre_kills"), nil + case Challenge_ch_40mm_grunt_kills: + return []byte("ch_40mm_grunt_kills"), nil + case Challenge_ch_40mm_hours_used: + return []byte("ch_40mm_hours_used"), nil + case Challenge_ch_40mm_crits: + return []byte("ch_40mm_crits"), nil + case Challenge_ch_xo16_kills: + return []byte("ch_xo16_kills"), nil + case Challenge_ch_xo16_pilot_kills: + return []byte("ch_xo16_pilot_kills"), nil + case Challenge_ch_xo16_titan_kills: + return []byte("ch_xo16_titan_kills"), nil + case Challenge_ch_xo16_spectre_kills: + return []byte("ch_xo16_spectre_kills"), nil + case Challenge_ch_xo16_grunt_kills: + return []byte("ch_xo16_grunt_kills"), nil + case Challenge_ch_xo16_hours_used: + return []byte("ch_xo16_hours_used"), nil + case Challenge_ch_xo16_headshots: + return []byte("ch_xo16_headshots"), nil + case Challenge_ch_xo16_crits: + return []byte("ch_xo16_crits"), nil + case Challenge_ch_titan_sniper_kills: + return []byte("ch_titan_sniper_kills"), nil + case Challenge_ch_titan_sniper_pilot_kills: + return []byte("ch_titan_sniper_pilot_kills"), nil + case Challenge_ch_titan_sniper_titan_kills: + return []byte("ch_titan_sniper_titan_kills"), nil + case Challenge_ch_titan_sniper_spectre_kills: + return []byte("ch_titan_sniper_spectre_kills"), nil + case Challenge_ch_titan_sniper_grunt_kills: + return []byte("ch_titan_sniper_grunt_kills"), nil + case Challenge_ch_titan_sniper_hours_used: + return []byte("ch_titan_sniper_hours_used"), nil + case Challenge_ch_titan_sniper_crits: + return []byte("ch_titan_sniper_crits"), nil + case Challenge_ch_rocket_launcher_kills: + return []byte("ch_rocket_launcher_kills"), nil + case Challenge_ch_rocket_launcher_pilot_kills: + return []byte("ch_rocket_launcher_pilot_kills"), nil + case Challenge_ch_rocket_launcher_titan_kills: + return []byte("ch_rocket_launcher_titan_kills"), nil + case Challenge_ch_rocket_launcher_spectre_kills: + return []byte("ch_rocket_launcher_spectre_kills"), nil + case Challenge_ch_rocket_launcher_grunt_kills: + return []byte("ch_rocket_launcher_grunt_kills"), nil + case Challenge_ch_rocket_launcher_hours_used: + return []byte("ch_rocket_launcher_hours_used"), nil + case Challenge_ch_triple_threat_kills: + return []byte("ch_triple_threat_kills"), nil + case Challenge_ch_triple_threat_pilot_kills: + return []byte("ch_triple_threat_pilot_kills"), nil + case Challenge_ch_triple_threat_titan_kills: + return []byte("ch_triple_threat_titan_kills"), nil + case Challenge_ch_triple_threat_spectre_kills: + return []byte("ch_triple_threat_spectre_kills"), nil + case Challenge_ch_triple_threat_grunt_kills: + return []byte("ch_triple_threat_grunt_kills"), nil + case Challenge_ch_triple_threat_hours_used: + return []byte("ch_triple_threat_hours_used"), nil + case Challenge_ch_salvo_rockets_kills: + return []byte("ch_salvo_rockets_kills"), nil + case Challenge_ch_salvo_rockets_pilot_kills: + return []byte("ch_salvo_rockets_pilot_kills"), nil + case Challenge_ch_salvo_rockets_titan_kills: + return []byte("ch_salvo_rockets_titan_kills"), nil + case Challenge_ch_salvo_rockets_spectre_kills: + return []byte("ch_salvo_rockets_spectre_kills"), nil + case Challenge_ch_salvo_rockets_grunt_kills: + return []byte("ch_salvo_rockets_grunt_kills"), nil + case Challenge_ch_salvo_rockets_hours_used: + return []byte("ch_salvo_rockets_hours_used"), nil + case Challenge_ch_homing_rockets_titan_kills: + return []byte("ch_homing_rockets_titan_kills"), nil + case Challenge_ch_homing_rockets_hours_used: + return []byte("ch_homing_rockets_hours_used"), nil + case Challenge_ch_dumbfire_rockets_kills: + return []byte("ch_dumbfire_rockets_kills"), nil + case Challenge_ch_dumbfire_rockets_pilot_kills: + return []byte("ch_dumbfire_rockets_pilot_kills"), nil + case Challenge_ch_dumbfire_rockets_titan_kills: + return []byte("ch_dumbfire_rockets_titan_kills"), nil + case Challenge_ch_dumbfire_rockets_spectre_kills: + return []byte("ch_dumbfire_rockets_spectre_kills"), nil + case Challenge_ch_dumbfire_rockets_grunt_kills: + return []byte("ch_dumbfire_rockets_grunt_kills"), nil + case Challenge_ch_dumbfire_rockets_hours_used: + return []byte("ch_dumbfire_rockets_hours_used"), nil + case Challenge_ch_shoulder_rockets_titan_kills: + return []byte("ch_shoulder_rockets_titan_kills"), nil + case Challenge_ch_shoulder_rockets_hours_used: + return []byte("ch_shoulder_rockets_hours_used"), nil + case Challenge_ch_smart_pistol_kills: + return []byte("ch_smart_pistol_kills"), nil + case Challenge_ch_smart_pistol_pilot_kills: + return []byte("ch_smart_pistol_pilot_kills"), nil + case Challenge_ch_smart_pistol_spectre_kills: + return []byte("ch_smart_pistol_spectre_kills"), nil + case Challenge_ch_smart_pistol_grunt_kills: + return []byte("ch_smart_pistol_grunt_kills"), nil + case Challenge_ch_smart_pistol_hours_used: + return []byte("ch_smart_pistol_hours_used"), nil + case Challenge_ch_shotgun_kills: + return []byte("ch_shotgun_kills"), nil + case Challenge_ch_shotgun_pilot_kills: + return []byte("ch_shotgun_pilot_kills"), nil + case Challenge_ch_shotgun_spectre_kills: + return []byte("ch_shotgun_spectre_kills"), nil + case Challenge_ch_shotgun_grunt_kills: + return []byte("ch_shotgun_grunt_kills"), nil + case Challenge_ch_shotgun_hours_used: + return []byte("ch_shotgun_hours_used"), nil + case Challenge_ch_r97_kills: + return []byte("ch_r97_kills"), nil + case Challenge_ch_r97_pilot_kills: + return []byte("ch_r97_pilot_kills"), nil + case Challenge_ch_r97_spectre_kills: + return []byte("ch_r97_spectre_kills"), nil + case Challenge_ch_r97_grunt_kills: + return []byte("ch_r97_grunt_kills"), nil + case Challenge_ch_r97_hours_used: + return []byte("ch_r97_hours_used"), nil + case Challenge_ch_r97_headshots: + return []byte("ch_r97_headshots"), nil + case Challenge_ch_car_kills: + return []byte("ch_car_kills"), nil + case Challenge_ch_car_pilot_kills: + return []byte("ch_car_pilot_kills"), nil + case Challenge_ch_car_spectre_kills: + return []byte("ch_car_spectre_kills"), nil + case Challenge_ch_car_grunt_kills: + return []byte("ch_car_grunt_kills"), nil + case Challenge_ch_car_hours_used: + return []byte("ch_car_hours_used"), nil + case Challenge_ch_car_headshots: + return []byte("ch_car_headshots"), nil + case Challenge_ch_lmg_kills: + return []byte("ch_lmg_kills"), nil + case Challenge_ch_lmg_pilot_kills: + return []byte("ch_lmg_pilot_kills"), nil + case Challenge_ch_lmg_spectre_kills: + return []byte("ch_lmg_spectre_kills"), nil + case Challenge_ch_lmg_grunt_kills: + return []byte("ch_lmg_grunt_kills"), nil + case Challenge_ch_lmg_hours_used: + return []byte("ch_lmg_hours_used"), nil + case Challenge_ch_lmg_headshots: + return []byte("ch_lmg_headshots"), nil + case Challenge_ch_rspn101_kills: + return []byte("ch_rspn101_kills"), nil + case Challenge_ch_rspn101_pilot_kills: + return []byte("ch_rspn101_pilot_kills"), nil + case Challenge_ch_rspn101_spectre_kills: + return []byte("ch_rspn101_spectre_kills"), nil + case Challenge_ch_rspn101_grunt_kills: + return []byte("ch_rspn101_grunt_kills"), nil + case Challenge_ch_rspn101_hours_used: + return []byte("ch_rspn101_hours_used"), nil + case Challenge_ch_rspn101_headshots: + return []byte("ch_rspn101_headshots"), nil + case Challenge_ch_hemlok_kills: + return []byte("ch_hemlok_kills"), nil + case Challenge_ch_hemlok_pilot_kills: + return []byte("ch_hemlok_pilot_kills"), nil + case Challenge_ch_hemlok_spectre_kills: + return []byte("ch_hemlok_spectre_kills"), nil + case Challenge_ch_hemlok_grunt_kills: + return []byte("ch_hemlok_grunt_kills"), nil + case Challenge_ch_hemlok_hours_used: + return []byte("ch_hemlok_hours_used"), nil + case Challenge_ch_hemlok_headshots: + return []byte("ch_hemlok_headshots"), nil + case Challenge_ch_g2_kills: + return []byte("ch_g2_kills"), nil + case Challenge_ch_g2_pilot_kills: + return []byte("ch_g2_pilot_kills"), nil + case Challenge_ch_g2_spectre_kills: + return []byte("ch_g2_spectre_kills"), nil + case Challenge_ch_g2_grunt_kills: + return []byte("ch_g2_grunt_kills"), nil + case Challenge_ch_g2_hours_used: + return []byte("ch_g2_hours_used"), nil + case Challenge_ch_g2_headshots: + return []byte("ch_g2_headshots"), nil + case Challenge_ch_dmr_kills: + return []byte("ch_dmr_kills"), nil + case Challenge_ch_dmr_pilot_kills: + return []byte("ch_dmr_pilot_kills"), nil + case Challenge_ch_dmr_spectre_kills: + return []byte("ch_dmr_spectre_kills"), nil + case Challenge_ch_dmr_grunt_kills: + return []byte("ch_dmr_grunt_kills"), nil + case Challenge_ch_dmr_hours_used: + return []byte("ch_dmr_hours_used"), nil + case Challenge_ch_dmr_headshots: + return []byte("ch_dmr_headshots"), nil + case Challenge_ch_sniper_kills: + return []byte("ch_sniper_kills"), nil + case Challenge_ch_sniper_pilot_kills: + return []byte("ch_sniper_pilot_kills"), nil + case Challenge_ch_sniper_spectre_kills: + return []byte("ch_sniper_spectre_kills"), nil + case Challenge_ch_sniper_grunt_kills: + return []byte("ch_sniper_grunt_kills"), nil + case Challenge_ch_sniper_hours_used: + return []byte("ch_sniper_hours_used"), nil + case Challenge_ch_smr_titan_kills: + return []byte("ch_smr_titan_kills"), nil + case Challenge_ch_smr_crits: + return []byte("ch_smr_crits"), nil + case Challenge_ch_mgl_titan_kills: + return []byte("ch_mgl_titan_kills"), nil + case Challenge_ch_archer_titan_kills: + return []byte("ch_archer_titan_kills"), nil + case Challenge_ch_defender_titan_kills: + return []byte("ch_defender_titan_kills"), nil + case Challenge_ch_defender_crits: + return []byte("ch_defender_crits"), nil + case Challenge_ch_frag_grenade_throws: + return []byte("ch_frag_grenade_throws"), nil + case Challenge_ch_frag_grenade_kills: + return []byte("ch_frag_grenade_kills"), nil + case Challenge_ch_frag_grenade_pilot_kills: + return []byte("ch_frag_grenade_pilot_kills"), nil + case Challenge_ch_frag_grenade_grunt_kills: + return []byte("ch_frag_grenade_grunt_kills"), nil + case Challenge_ch_emp_grenade_throws: + return []byte("ch_emp_grenade_throws"), nil + case Challenge_ch_emp_grenade_kills: + return []byte("ch_emp_grenade_kills"), nil + case Challenge_ch_emp_grenade_pilot_kills: + return []byte("ch_emp_grenade_pilot_kills"), nil + case Challenge_ch_emp_grenade_grunt_kills: + return []byte("ch_emp_grenade_grunt_kills"), nil + case Challenge_ch_emp_grenade_spectre_kills: + return []byte("ch_emp_grenade_spectre_kills"), nil + case Challenge_ch_proximity_mine_throws: + return []byte("ch_proximity_mine_throws"), nil + case Challenge_ch_proximity_mine_kills: + return []byte("ch_proximity_mine_kills"), nil + case Challenge_ch_proximity_mine_pilot_kills: + return []byte("ch_proximity_mine_pilot_kills"), nil + case Challenge_ch_proximity_mine_grunt_kills: + return []byte("ch_proximity_mine_grunt_kills"), nil + case Challenge_ch_satchel_throws: + return []byte("ch_satchel_throws"), nil + case Challenge_ch_satchel_kills: + return []byte("ch_satchel_kills"), nil + case Challenge_ch_satchel_pilot_kills: + return []byte("ch_satchel_pilot_kills"), nil + case Challenge_ch_satchel_grunt_kills: + return []byte("ch_satchel_grunt_kills"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "Challenge") + } +} +func (v *Challenge) UnmarshalText(b []byte) error { + switch string(b) { + case "NULL": + *v = Challenge_NULL + case "ch_games_played": + *v = Challenge_ch_games_played + case "ch_games_won": + *v = Challenge_ch_games_won + case "ch_games_mvp": + *v = Challenge_ch_games_mvp + case "ch_titan_falls": + *v = Challenge_ch_titan_falls + case "ch_rodeos": + *v = Challenge_ch_rodeos + case "ch_times_ejected": + *v = Challenge_ch_times_ejected + case "ch_spectres_leeched": + *v = Challenge_ch_spectres_leeched + case "ch_hours_played": + *v = Challenge_ch_hours_played + case "ch_hours_played_pilot": + *v = Challenge_ch_hours_played_pilot + case "ch_hours_played_titan": + *v = Challenge_ch_hours_played_titan + case "ch_hours_wallhang": + *v = Challenge_ch_hours_wallhang + case "ch_dist_total": + *v = Challenge_ch_dist_total + case "ch_dist_pilot": + *v = Challenge_ch_dist_pilot + case "ch_dist_titan": + *v = Challenge_ch_dist_titan + case "ch_dist_wallrun": + *v = Challenge_ch_dist_wallrun + case "ch_dist_inair": + *v = Challenge_ch_dist_inair + case "ch_dist_zipline": + *v = Challenge_ch_dist_zipline + case "ch_dist_on_friendly_titan": + *v = Challenge_ch_dist_on_friendly_titan + case "ch_dist_on_enemy_titan": + *v = Challenge_ch_dist_on_enemy_titan + case "ch_grunt_kills": + *v = Challenge_ch_grunt_kills + case "ch_spectre_kills": + *v = Challenge_ch_spectre_kills + case "ch_marvin_kills": + *v = Challenge_ch_marvin_kills + case "ch_first_strikes": + *v = Challenge_ch_first_strikes + case "ch_ejecting_pilot_kills": + *v = Challenge_ch_ejecting_pilot_kills + case "ch_kills_while_ejecting": + *v = Challenge_ch_kills_while_ejecting + case "ch_cloaked_pilot_kills": + *v = Challenge_ch_cloaked_pilot_kills + case "ch_kills_while_cloaked": + *v = Challenge_ch_kills_while_cloaked + case "ch_wallrunning_pilot_kills": + *v = Challenge_ch_wallrunning_pilot_kills + case "ch_wallhanging_pilot_kills": + *v = Challenge_ch_wallhanging_pilot_kills + case "ch_kills_while_wallrunning": + *v = Challenge_ch_kills_while_wallrunning + case "ch_kills_while_wallhanging": + *v = Challenge_ch_kills_while_wallhanging + case "ch_pilotExecutePilot": + *v = Challenge_ch_pilotExecutePilot + case "ch_pilotKickMelee": + *v = Challenge_ch_pilotKickMelee + case "ch_pilotKickMeleePilot": + *v = Challenge_ch_pilotKickMeleePilot + case "ch_titanMelee": + *v = Challenge_ch_titanMelee + case "ch_titanMeleePilot": + *v = Challenge_ch_titanMeleePilot + case "ch_titanStepCrush": + *v = Challenge_ch_titanStepCrush + case "ch_titanStepCrushPilot": + *v = Challenge_ch_titanStepCrushPilot + case "ch_titanExocutionStryder": + *v = Challenge_ch_titanExocutionStryder + case "ch_titanExocutionBuddy": + *v = Challenge_ch_titanExocutionBuddy + case "ch_titanExocutionAtlas": + *v = Challenge_ch_titanExocutionAtlas + case "ch_titanExocutionOgre": + *v = Challenge_ch_titanExocutionOgre + case "ch_titanFallKill": + *v = Challenge_ch_titanFallKill + case "ch_petTitanKillsFollowMode": + *v = Challenge_ch_petTitanKillsFollowMode + case "ch_petTitanKillsGuardMode": + *v = Challenge_ch_petTitanKillsGuardMode + case "ch_rodeo_kills": + *v = Challenge_ch_rodeo_kills + case "ch_40mm_kills": + *v = Challenge_ch_40mm_kills + case "ch_40mm_pilot_kills": + *v = Challenge_ch_40mm_pilot_kills + case "ch_40mm_titan_kills": + *v = Challenge_ch_40mm_titan_kills + case "ch_40mm_spectre_kills": + *v = Challenge_ch_40mm_spectre_kills + case "ch_40mm_grunt_kills": + *v = Challenge_ch_40mm_grunt_kills + case "ch_40mm_hours_used": + *v = Challenge_ch_40mm_hours_used + case "ch_40mm_crits": + *v = Challenge_ch_40mm_crits + case "ch_xo16_kills": + *v = Challenge_ch_xo16_kills + case "ch_xo16_pilot_kills": + *v = Challenge_ch_xo16_pilot_kills + case "ch_xo16_titan_kills": + *v = Challenge_ch_xo16_titan_kills + case "ch_xo16_spectre_kills": + *v = Challenge_ch_xo16_spectre_kills + case "ch_xo16_grunt_kills": + *v = Challenge_ch_xo16_grunt_kills + case "ch_xo16_hours_used": + *v = Challenge_ch_xo16_hours_used + case "ch_xo16_headshots": + *v = Challenge_ch_xo16_headshots + case "ch_xo16_crits": + *v = Challenge_ch_xo16_crits + case "ch_titan_sniper_kills": + *v = Challenge_ch_titan_sniper_kills + case "ch_titan_sniper_pilot_kills": + *v = Challenge_ch_titan_sniper_pilot_kills + case "ch_titan_sniper_titan_kills": + *v = Challenge_ch_titan_sniper_titan_kills + case "ch_titan_sniper_spectre_kills": + *v = Challenge_ch_titan_sniper_spectre_kills + case "ch_titan_sniper_grunt_kills": + *v = Challenge_ch_titan_sniper_grunt_kills + case "ch_titan_sniper_hours_used": + *v = Challenge_ch_titan_sniper_hours_used + case "ch_titan_sniper_crits": + *v = Challenge_ch_titan_sniper_crits + case "ch_rocket_launcher_kills": + *v = Challenge_ch_rocket_launcher_kills + case "ch_rocket_launcher_pilot_kills": + *v = Challenge_ch_rocket_launcher_pilot_kills + case "ch_rocket_launcher_titan_kills": + *v = Challenge_ch_rocket_launcher_titan_kills + case "ch_rocket_launcher_spectre_kills": + *v = Challenge_ch_rocket_launcher_spectre_kills + case "ch_rocket_launcher_grunt_kills": + *v = Challenge_ch_rocket_launcher_grunt_kills + case "ch_rocket_launcher_hours_used": + *v = Challenge_ch_rocket_launcher_hours_used + case "ch_triple_threat_kills": + *v = Challenge_ch_triple_threat_kills + case "ch_triple_threat_pilot_kills": + *v = Challenge_ch_triple_threat_pilot_kills + case "ch_triple_threat_titan_kills": + *v = Challenge_ch_triple_threat_titan_kills + case "ch_triple_threat_spectre_kills": + *v = Challenge_ch_triple_threat_spectre_kills + case "ch_triple_threat_grunt_kills": + *v = Challenge_ch_triple_threat_grunt_kills + case "ch_triple_threat_hours_used": + *v = Challenge_ch_triple_threat_hours_used + case "ch_salvo_rockets_kills": + *v = Challenge_ch_salvo_rockets_kills + case "ch_salvo_rockets_pilot_kills": + *v = Challenge_ch_salvo_rockets_pilot_kills + case "ch_salvo_rockets_titan_kills": + *v = Challenge_ch_salvo_rockets_titan_kills + case "ch_salvo_rockets_spectre_kills": + *v = Challenge_ch_salvo_rockets_spectre_kills + case "ch_salvo_rockets_grunt_kills": + *v = Challenge_ch_salvo_rockets_grunt_kills + case "ch_salvo_rockets_hours_used": + *v = Challenge_ch_salvo_rockets_hours_used + case "ch_homing_rockets_titan_kills": + *v = Challenge_ch_homing_rockets_titan_kills + case "ch_homing_rockets_hours_used": + *v = Challenge_ch_homing_rockets_hours_used + case "ch_dumbfire_rockets_kills": + *v = Challenge_ch_dumbfire_rockets_kills + case "ch_dumbfire_rockets_pilot_kills": + *v = Challenge_ch_dumbfire_rockets_pilot_kills + case "ch_dumbfire_rockets_titan_kills": + *v = Challenge_ch_dumbfire_rockets_titan_kills + case "ch_dumbfire_rockets_spectre_kills": + *v = Challenge_ch_dumbfire_rockets_spectre_kills + case "ch_dumbfire_rockets_grunt_kills": + *v = Challenge_ch_dumbfire_rockets_grunt_kills + case "ch_dumbfire_rockets_hours_used": + *v = Challenge_ch_dumbfire_rockets_hours_used + case "ch_shoulder_rockets_titan_kills": + *v = Challenge_ch_shoulder_rockets_titan_kills + case "ch_shoulder_rockets_hours_used": + *v = Challenge_ch_shoulder_rockets_hours_used + case "ch_smart_pistol_kills": + *v = Challenge_ch_smart_pistol_kills + case "ch_smart_pistol_pilot_kills": + *v = Challenge_ch_smart_pistol_pilot_kills + case "ch_smart_pistol_spectre_kills": + *v = Challenge_ch_smart_pistol_spectre_kills + case "ch_smart_pistol_grunt_kills": + *v = Challenge_ch_smart_pistol_grunt_kills + case "ch_smart_pistol_hours_used": + *v = Challenge_ch_smart_pistol_hours_used + case "ch_shotgun_kills": + *v = Challenge_ch_shotgun_kills + case "ch_shotgun_pilot_kills": + *v = Challenge_ch_shotgun_pilot_kills + case "ch_shotgun_spectre_kills": + *v = Challenge_ch_shotgun_spectre_kills + case "ch_shotgun_grunt_kills": + *v = Challenge_ch_shotgun_grunt_kills + case "ch_shotgun_hours_used": + *v = Challenge_ch_shotgun_hours_used + case "ch_r97_kills": + *v = Challenge_ch_r97_kills + case "ch_r97_pilot_kills": + *v = Challenge_ch_r97_pilot_kills + case "ch_r97_spectre_kills": + *v = Challenge_ch_r97_spectre_kills + case "ch_r97_grunt_kills": + *v = Challenge_ch_r97_grunt_kills + case "ch_r97_hours_used": + *v = Challenge_ch_r97_hours_used + case "ch_r97_headshots": + *v = Challenge_ch_r97_headshots + case "ch_car_kills": + *v = Challenge_ch_car_kills + case "ch_car_pilot_kills": + *v = Challenge_ch_car_pilot_kills + case "ch_car_spectre_kills": + *v = Challenge_ch_car_spectre_kills + case "ch_car_grunt_kills": + *v = Challenge_ch_car_grunt_kills + case "ch_car_hours_used": + *v = Challenge_ch_car_hours_used + case "ch_car_headshots": + *v = Challenge_ch_car_headshots + case "ch_lmg_kills": + *v = Challenge_ch_lmg_kills + case "ch_lmg_pilot_kills": + *v = Challenge_ch_lmg_pilot_kills + case "ch_lmg_spectre_kills": + *v = Challenge_ch_lmg_spectre_kills + case "ch_lmg_grunt_kills": + *v = Challenge_ch_lmg_grunt_kills + case "ch_lmg_hours_used": + *v = Challenge_ch_lmg_hours_used + case "ch_lmg_headshots": + *v = Challenge_ch_lmg_headshots + case "ch_rspn101_kills": + *v = Challenge_ch_rspn101_kills + case "ch_rspn101_pilot_kills": + *v = Challenge_ch_rspn101_pilot_kills + case "ch_rspn101_spectre_kills": + *v = Challenge_ch_rspn101_spectre_kills + case "ch_rspn101_grunt_kills": + *v = Challenge_ch_rspn101_grunt_kills + case "ch_rspn101_hours_used": + *v = Challenge_ch_rspn101_hours_used + case "ch_rspn101_headshots": + *v = Challenge_ch_rspn101_headshots + case "ch_hemlok_kills": + *v = Challenge_ch_hemlok_kills + case "ch_hemlok_pilot_kills": + *v = Challenge_ch_hemlok_pilot_kills + case "ch_hemlok_spectre_kills": + *v = Challenge_ch_hemlok_spectre_kills + case "ch_hemlok_grunt_kills": + *v = Challenge_ch_hemlok_grunt_kills + case "ch_hemlok_hours_used": + *v = Challenge_ch_hemlok_hours_used + case "ch_hemlok_headshots": + *v = Challenge_ch_hemlok_headshots + case "ch_g2_kills": + *v = Challenge_ch_g2_kills + case "ch_g2_pilot_kills": + *v = Challenge_ch_g2_pilot_kills + case "ch_g2_spectre_kills": + *v = Challenge_ch_g2_spectre_kills + case "ch_g2_grunt_kills": + *v = Challenge_ch_g2_grunt_kills + case "ch_g2_hours_used": + *v = Challenge_ch_g2_hours_used + case "ch_g2_headshots": + *v = Challenge_ch_g2_headshots + case "ch_dmr_kills": + *v = Challenge_ch_dmr_kills + case "ch_dmr_pilot_kills": + *v = Challenge_ch_dmr_pilot_kills + case "ch_dmr_spectre_kills": + *v = Challenge_ch_dmr_spectre_kills + case "ch_dmr_grunt_kills": + *v = Challenge_ch_dmr_grunt_kills + case "ch_dmr_hours_used": + *v = Challenge_ch_dmr_hours_used + case "ch_dmr_headshots": + *v = Challenge_ch_dmr_headshots + case "ch_sniper_kills": + *v = Challenge_ch_sniper_kills + case "ch_sniper_pilot_kills": + *v = Challenge_ch_sniper_pilot_kills + case "ch_sniper_spectre_kills": + *v = Challenge_ch_sniper_spectre_kills + case "ch_sniper_grunt_kills": + *v = Challenge_ch_sniper_grunt_kills + case "ch_sniper_hours_used": + *v = Challenge_ch_sniper_hours_used + case "ch_smr_titan_kills": + *v = Challenge_ch_smr_titan_kills + case "ch_smr_crits": + *v = Challenge_ch_smr_crits + case "ch_mgl_titan_kills": + *v = Challenge_ch_mgl_titan_kills + case "ch_archer_titan_kills": + *v = Challenge_ch_archer_titan_kills + case "ch_defender_titan_kills": + *v = Challenge_ch_defender_titan_kills + case "ch_defender_crits": + *v = Challenge_ch_defender_crits + case "ch_frag_grenade_throws": + *v = Challenge_ch_frag_grenade_throws + case "ch_frag_grenade_kills": + *v = Challenge_ch_frag_grenade_kills + case "ch_frag_grenade_pilot_kills": + *v = Challenge_ch_frag_grenade_pilot_kills + case "ch_frag_grenade_grunt_kills": + *v = Challenge_ch_frag_grenade_grunt_kills + case "ch_emp_grenade_throws": + *v = Challenge_ch_emp_grenade_throws + case "ch_emp_grenade_kills": + *v = Challenge_ch_emp_grenade_kills + case "ch_emp_grenade_pilot_kills": + *v = Challenge_ch_emp_grenade_pilot_kills + case "ch_emp_grenade_grunt_kills": + *v = Challenge_ch_emp_grenade_grunt_kills + case "ch_emp_grenade_spectre_kills": + *v = Challenge_ch_emp_grenade_spectre_kills + case "ch_proximity_mine_throws": + *v = Challenge_ch_proximity_mine_throws + case "ch_proximity_mine_kills": + *v = Challenge_ch_proximity_mine_kills + case "ch_proximity_mine_pilot_kills": + *v = Challenge_ch_proximity_mine_pilot_kills + case "ch_proximity_mine_grunt_kills": + *v = Challenge_ch_proximity_mine_grunt_kills + case "ch_satchel_throws": + *v = Challenge_ch_satchel_throws + case "ch_satchel_kills": + *v = Challenge_ch_satchel_kills + case "ch_satchel_pilot_kills": + *v = Challenge_ch_satchel_pilot_kills + case "ch_satchel_grunt_kills": + *v = Challenge_ch_satchel_grunt_kills + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "Challenge") + } + return nil +} + +type Dailychallenge uint8 + +const ( + Dailychallenge_NULL Dailychallenge = 0 + Dailychallenge_ch_daily_xo16_pilot_kills Dailychallenge = 1 + Dailychallenge_ch_daily_emp_grenade_kills Dailychallenge = 2 + Dailychallenge_ch_daily_kills_nuclear_core Dailychallenge = 3 + DailychallengeCount Dailychallenge = 4 +) + +var _ fmt.Stringer = Dailychallenge(0) +var _ fmt.GoStringer = Dailychallenge(0) + +//var _ encoding.TextMarshaler = Dailychallenge(0) +var _ encoding.TextUnmarshaler = (*Dailychallenge)(nil) + +func (v Dailychallenge) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v Dailychallenge) GoString() string { + switch v { + case Dailychallenge_NULL: + return "Dailychallenge_NULL" + case Dailychallenge_ch_daily_xo16_pilot_kills: + return "Dailychallenge_ch_daily_xo16_pilot_kills" + case Dailychallenge_ch_daily_emp_grenade_kills: + return "Dailychallenge_ch_daily_emp_grenade_kills" + case Dailychallenge_ch_daily_kills_nuclear_core: + return "Dailychallenge_ch_daily_kills_nuclear_core" + default: + return fmt.Sprintf("%s(%d)", "Dailychallenge", int(v)) + } +} +func (v Dailychallenge) MarshalText() ([]byte, error) { + switch v { + case Dailychallenge_NULL: + return []byte("NULL"), nil + case Dailychallenge_ch_daily_xo16_pilot_kills: + return []byte("ch_daily_xo16_pilot_kills"), nil + case Dailychallenge_ch_daily_emp_grenade_kills: + return []byte("ch_daily_emp_grenade_kills"), nil + case Dailychallenge_ch_daily_kills_nuclear_core: + return []byte("ch_daily_kills_nuclear_core"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "Dailychallenge") + } +} +func (v *Dailychallenge) UnmarshalText(b []byte) error { + switch string(b) { + case "NULL": + *v = Dailychallenge_NULL + case "ch_daily_xo16_pilot_kills": + *v = Dailychallenge_ch_daily_xo16_pilot_kills + case "ch_daily_emp_grenade_kills": + *v = Dailychallenge_ch_daily_emp_grenade_kills + case "ch_daily_kills_nuclear_core": + *v = Dailychallenge_ch_daily_kills_nuclear_core + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "Dailychallenge") + } + return nil +} + +type Faction uint8 + +const ( + Faction_faction_apex Faction = 0 + Faction_faction_64 Faction = 1 + Faction_faction_vinson Faction = 2 + Faction_faction_marauder Faction = 3 + Faction_faction_aces Faction = 4 + Faction_faction_ares Faction = 5 + Faction_faction_marvin Faction = 6 + FactionCount Faction = 7 +) + +var _ fmt.Stringer = Faction(0) +var _ fmt.GoStringer = Faction(0) + +//var _ encoding.TextMarshaler = Faction(0) +var _ encoding.TextUnmarshaler = (*Faction)(nil) + +func (v Faction) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v Faction) GoString() string { + switch v { + case Faction_faction_apex: + return "Faction_faction_apex" + case Faction_faction_64: + return "Faction_faction_64" + case Faction_faction_vinson: + return "Faction_faction_vinson" + case Faction_faction_marauder: + return "Faction_faction_marauder" + case Faction_faction_aces: + return "Faction_faction_aces" + case Faction_faction_ares: + return "Faction_faction_ares" + case Faction_faction_marvin: + return "Faction_faction_marvin" + default: + return fmt.Sprintf("%s(%d)", "Faction", int(v)) + } +} +func (v Faction) MarshalText() ([]byte, error) { + switch v { + case Faction_faction_apex: + return []byte("faction_apex"), nil + case Faction_faction_64: + return []byte("faction_64"), nil + case Faction_faction_vinson: + return []byte("faction_vinson"), nil + case Faction_faction_marauder: + return []byte("faction_marauder"), nil + case Faction_faction_aces: + return []byte("faction_aces"), nil + case Faction_faction_ares: + return []byte("faction_ares"), nil + case Faction_faction_marvin: + return []byte("faction_marvin"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "Faction") + } +} +func (v *Faction) UnmarshalText(b []byte) error { + switch string(b) { + case "faction_apex": + *v = Faction_faction_apex + case "faction_64": + *v = Faction_faction_64 + case "faction_vinson": + *v = Faction_faction_vinson + case "faction_marauder": + *v = Faction_faction_marauder + case "faction_aces": + *v = Faction_faction_aces + case "faction_ares": + *v = Faction_faction_ares + case "faction_marvin": + *v = Faction_faction_marvin + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "Faction") + } + return nil +} + +type GameModes uint8 + +const ( + GameModes_tdm GameModes = 0 + GameModes_cp GameModes = 1 + GameModes_at GameModes = 2 + GameModes_ctf GameModes = 3 + GameModes_lts GameModes = 4 + GameModes_ps GameModes = 5 + GameModes_ffa GameModes = 6 + GameModes_coliseum GameModes = 7 + GameModes_aitdm GameModes = 8 + GameModes_speedball GameModes = 9 + GameModes_mfd GameModes = 10 + GameModes_ttdm GameModes = 11 + GameModes_fra GameModes = 12 + GameModes_fd GameModes = 13 + GameModesCount GameModes = 14 +) + +var _ fmt.Stringer = GameModes(0) +var _ fmt.GoStringer = GameModes(0) + +//var _ encoding.TextMarshaler = GameModes(0) +var _ encoding.TextUnmarshaler = (*GameModes)(nil) + +func (v GameModes) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v GameModes) GoString() string { + switch v { + case GameModes_tdm: + return "GameModes_tdm" + case GameModes_cp: + return "GameModes_cp" + case GameModes_at: + return "GameModes_at" + case GameModes_ctf: + return "GameModes_ctf" + case GameModes_lts: + return "GameModes_lts" + case GameModes_ps: + return "GameModes_ps" + case GameModes_ffa: + return "GameModes_ffa" + case GameModes_coliseum: + return "GameModes_coliseum" + case GameModes_aitdm: + return "GameModes_aitdm" + case GameModes_speedball: + return "GameModes_speedball" + case GameModes_mfd: + return "GameModes_mfd" + case GameModes_ttdm: + return "GameModes_ttdm" + case GameModes_fra: + return "GameModes_fra" + case GameModes_fd: + return "GameModes_fd" + default: + return fmt.Sprintf("%s(%d)", "GameModes", int(v)) + } +} +func (v GameModes) MarshalText() ([]byte, error) { + switch v { + case GameModes_tdm: + return []byte("tdm"), nil + case GameModes_cp: + return []byte("cp"), nil + case GameModes_at: + return []byte("at"), nil + case GameModes_ctf: + return []byte("ctf"), nil + case GameModes_lts: + return []byte("lts"), nil + case GameModes_ps: + return []byte("ps"), nil + case GameModes_ffa: + return []byte("ffa"), nil + case GameModes_coliseum: + return []byte("coliseum"), nil + case GameModes_aitdm: + return []byte("aitdm"), nil + case GameModes_speedball: + return []byte("speedball"), nil + case GameModes_mfd: + return []byte("mfd"), nil + case GameModes_ttdm: + return []byte("ttdm"), nil + case GameModes_fra: + return []byte("fra"), nil + case GameModes_fd: + return []byte("fd"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "GameModes") + } +} +func (v *GameModes) UnmarshalText(b []byte) error { + switch string(b) { + case "tdm": + *v = GameModes_tdm + case "cp": + *v = GameModes_cp + case "at": + *v = GameModes_at + case "ctf": + *v = GameModes_ctf + case "lts": + *v = GameModes_lts + case "ps": + *v = GameModes_ps + case "ffa": + *v = GameModes_ffa + case "coliseum": + *v = GameModes_coliseum + case "aitdm": + *v = GameModes_aitdm + case "speedball": + *v = GameModes_speedball + case "mfd": + *v = GameModes_mfd + case "ttdm": + *v = GameModes_ttdm + case "fra": + *v = GameModes_fra + case "fd": + *v = GameModes_fd + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "GameModes") + } + return nil +} + +type LoadoutWeaponsAndAbilities uint8 + +const ( + LoadoutWeaponsAndAbilities_NULL LoadoutWeaponsAndAbilities = 0 + LoadoutWeaponsAndAbilities_melee_pilot_emptyhanded LoadoutWeaponsAndAbilities = 1 + LoadoutWeaponsAndAbilities_melee_pilot_sword LoadoutWeaponsAndAbilities = 2 + LoadoutWeaponsAndAbilities_melee_titan_sword LoadoutWeaponsAndAbilities = 3 + LoadoutWeaponsAndAbilities_melee_titan_sword_aoe LoadoutWeaponsAndAbilities = 4 + LoadoutWeaponsAndAbilities_mp_ability_cloak LoadoutWeaponsAndAbilities = 5 + LoadoutWeaponsAndAbilities_mp_ability_grapple LoadoutWeaponsAndAbilities = 6 + LoadoutWeaponsAndAbilities_mp_ability_heal LoadoutWeaponsAndAbilities = 7 + LoadoutWeaponsAndAbilities_mp_ability_holopilot LoadoutWeaponsAndAbilities = 8 + LoadoutWeaponsAndAbilities_mp_ability_phase_rewind LoadoutWeaponsAndAbilities = 9 + LoadoutWeaponsAndAbilities_mp_ability_shifter LoadoutWeaponsAndAbilities = 10 + LoadoutWeaponsAndAbilities_mp_titanability_ammo_swap LoadoutWeaponsAndAbilities = 11 + LoadoutWeaponsAndAbilities_mp_titanability_basic_block LoadoutWeaponsAndAbilities = 12 + LoadoutWeaponsAndAbilities_mp_titanability_gun_shield LoadoutWeaponsAndAbilities = 13 + LoadoutWeaponsAndAbilities_mp_titanability_hover LoadoutWeaponsAndAbilities = 14 + LoadoutWeaponsAndAbilities_mp_titanability_laser_trip LoadoutWeaponsAndAbilities = 15 + LoadoutWeaponsAndAbilities_mp_titanability_particle_wall LoadoutWeaponsAndAbilities = 16 + LoadoutWeaponsAndAbilities_mp_titanability_phase_dash LoadoutWeaponsAndAbilities = 17 + LoadoutWeaponsAndAbilities_mp_titanability_power_shot LoadoutWeaponsAndAbilities = 18 + LoadoutWeaponsAndAbilities_mp_titanability_slow_trap LoadoutWeaponsAndAbilities = 19 + LoadoutWeaponsAndAbilities_mp_titanability_smoke LoadoutWeaponsAndAbilities = 20 + LoadoutWeaponsAndAbilities_mp_titanability_sonar_pulse LoadoutWeaponsAndAbilities = 21 + LoadoutWeaponsAndAbilities_mp_titanability_tether_trap LoadoutWeaponsAndAbilities = 22 + LoadoutWeaponsAndAbilities_mp_titanability_rearm LoadoutWeaponsAndAbilities = 23 + LoadoutWeaponsAndAbilities_mp_titancore_flame_wave LoadoutWeaponsAndAbilities = 24 + LoadoutWeaponsAndAbilities_mp_titancore_flight_core LoadoutWeaponsAndAbilities = 25 + LoadoutWeaponsAndAbilities_mp_titancore_laser_cannon LoadoutWeaponsAndAbilities = 26 + LoadoutWeaponsAndAbilities_mp_titancore_salvo_core LoadoutWeaponsAndAbilities = 27 + LoadoutWeaponsAndAbilities_mp_titancore_shift_core LoadoutWeaponsAndAbilities = 28 + LoadoutWeaponsAndAbilities_mp_titancore_siege_mode LoadoutWeaponsAndAbilities = 29 + LoadoutWeaponsAndAbilities_mp_titancore_upgrade LoadoutWeaponsAndAbilities = 30 + LoadoutWeaponsAndAbilities_mp_titanweapon_40mm LoadoutWeaponsAndAbilities = 31 + LoadoutWeaponsAndAbilities_mp_titanweapon_arc_wave LoadoutWeaponsAndAbilities = 32 + LoadoutWeaponsAndAbilities_mp_titanweapon_flame_wall LoadoutWeaponsAndAbilities = 33 + LoadoutWeaponsAndAbilities_mp_titanweapon_heat_shield LoadoutWeaponsAndAbilities = 34 + LoadoutWeaponsAndAbilities_mp_titanweapon_homing_rockets LoadoutWeaponsAndAbilities = 35 + LoadoutWeaponsAndAbilities_mp_titanweapon_dumbfire_rockets LoadoutWeaponsAndAbilities = 36 + LoadoutWeaponsAndAbilities_mp_titanweapon_laser_lite LoadoutWeaponsAndAbilities = 37 + LoadoutWeaponsAndAbilities_mp_titanweapon_leadwall LoadoutWeaponsAndAbilities = 38 + LoadoutWeaponsAndAbilities_mp_titanweapon_meteor LoadoutWeaponsAndAbilities = 39 + LoadoutWeaponsAndAbilities_mp_titanweapon_particle_accelerator LoadoutWeaponsAndAbilities = 40 + LoadoutWeaponsAndAbilities_mp_titanweapon_predator_cannon LoadoutWeaponsAndAbilities = 41 + LoadoutWeaponsAndAbilities_mp_titanweapon_rocket_launcher LoadoutWeaponsAndAbilities = 42 + LoadoutWeaponsAndAbilities_mp_titanweapon_rocketeer_rocketstream LoadoutWeaponsAndAbilities = 43 + LoadoutWeaponsAndAbilities_mp_titanweapon_salvo_rockets LoadoutWeaponsAndAbilities = 44 + LoadoutWeaponsAndAbilities_mp_titanweapon_sniper LoadoutWeaponsAndAbilities = 45 + LoadoutWeaponsAndAbilities_mp_titanweapon_sticky_40mm LoadoutWeaponsAndAbilities = 46 + LoadoutWeaponsAndAbilities_mp_titanweapon_stun_laser LoadoutWeaponsAndAbilities = 47 + LoadoutWeaponsAndAbilities_mp_titanweapon_tracker_rockets LoadoutWeaponsAndAbilities = 48 + LoadoutWeaponsAndAbilities_mp_titanweapon_vortex_shield LoadoutWeaponsAndAbilities = 49 + LoadoutWeaponsAndAbilities_mp_titanweapon_vortex_shield_ion LoadoutWeaponsAndAbilities = 50 + LoadoutWeaponsAndAbilities_mp_titanweapon_xo16 LoadoutWeaponsAndAbilities = 51 + LoadoutWeaponsAndAbilities_mp_titanweapon_xo16_shorty LoadoutWeaponsAndAbilities = 52 + LoadoutWeaponsAndAbilities_mp_titanweapon_xo16_vanguard LoadoutWeaponsAndAbilities = 53 + LoadoutWeaponsAndAbilities_mp_weapon_alternator_smg LoadoutWeaponsAndAbilities = 54 + LoadoutWeaponsAndAbilities_mp_weapon_arc_launcher LoadoutWeaponsAndAbilities = 55 + LoadoutWeaponsAndAbilities_mp_weapon_autopistol LoadoutWeaponsAndAbilities = 56 + LoadoutWeaponsAndAbilities_mp_weapon_car LoadoutWeaponsAndAbilities = 57 + LoadoutWeaponsAndAbilities_mp_weapon_defender LoadoutWeaponsAndAbilities = 58 + LoadoutWeaponsAndAbilities_mp_weapon_deployable_cover LoadoutWeaponsAndAbilities = 59 + LoadoutWeaponsAndAbilities_mp_weapon_dmr LoadoutWeaponsAndAbilities = 60 + LoadoutWeaponsAndAbilities_mp_weapon_doubletake LoadoutWeaponsAndAbilities = 61 + LoadoutWeaponsAndAbilities_mp_weapon_epg LoadoutWeaponsAndAbilities = 62 + LoadoutWeaponsAndAbilities_mp_weapon_esaw LoadoutWeaponsAndAbilities = 63 + LoadoutWeaponsAndAbilities_mp_weapon_frag_drone LoadoutWeaponsAndAbilities = 64 + LoadoutWeaponsAndAbilities_mp_weapon_frag_grenade LoadoutWeaponsAndAbilities = 65 + LoadoutWeaponsAndAbilities_mp_weapon_g2 LoadoutWeaponsAndAbilities = 66 + LoadoutWeaponsAndAbilities_mp_weapon_grenade_electric_smoke LoadoutWeaponsAndAbilities = 67 + LoadoutWeaponsAndAbilities_mp_weapon_grenade_emp LoadoutWeaponsAndAbilities = 68 + LoadoutWeaponsAndAbilities_mp_weapon_grenade_gravity LoadoutWeaponsAndAbilities = 69 + LoadoutWeaponsAndAbilities_mp_weapon_grenade_sonar LoadoutWeaponsAndAbilities = 70 + LoadoutWeaponsAndAbilities_mp_weapon_hemlok LoadoutWeaponsAndAbilities = 71 + LoadoutWeaponsAndAbilities_mp_weapon_hemlok_smg LoadoutWeaponsAndAbilities = 72 + LoadoutWeaponsAndAbilities_mp_weapon_lmg LoadoutWeaponsAndAbilities = 73 + LoadoutWeaponsAndAbilities_mp_weapon_lstar LoadoutWeaponsAndAbilities = 74 + LoadoutWeaponsAndAbilities_mp_weapon_mastiff LoadoutWeaponsAndAbilities = 75 + LoadoutWeaponsAndAbilities_mp_weapon_mgl LoadoutWeaponsAndAbilities = 76 + LoadoutWeaponsAndAbilities_mp_weapon_pulse_lmg LoadoutWeaponsAndAbilities = 77 + LoadoutWeaponsAndAbilities_mp_weapon_r97 LoadoutWeaponsAndAbilities = 78 + LoadoutWeaponsAndAbilities_mp_weapon_rocket_launcher LoadoutWeaponsAndAbilities = 79 + LoadoutWeaponsAndAbilities_mp_weapon_rspn101 LoadoutWeaponsAndAbilities = 80 + LoadoutWeaponsAndAbilities_mp_weapon_rspn101_og LoadoutWeaponsAndAbilities = 81 + LoadoutWeaponsAndAbilities_mp_weapon_satchel LoadoutWeaponsAndAbilities = 82 + LoadoutWeaponsAndAbilities_mp_weapon_semipistol LoadoutWeaponsAndAbilities = 83 + LoadoutWeaponsAndAbilities_mp_weapon_shotgun LoadoutWeaponsAndAbilities = 84 + LoadoutWeaponsAndAbilities_mp_weapon_shotgun_pistol LoadoutWeaponsAndAbilities = 85 + LoadoutWeaponsAndAbilities_mp_weapon_smart_pistol LoadoutWeaponsAndAbilities = 86 + LoadoutWeaponsAndAbilities_mp_weapon_smr LoadoutWeaponsAndAbilities = 87 + LoadoutWeaponsAndAbilities_mp_weapon_sniper LoadoutWeaponsAndAbilities = 88 + LoadoutWeaponsAndAbilities_mp_weapon_softball LoadoutWeaponsAndAbilities = 89 + LoadoutWeaponsAndAbilities_mp_weapon_thermite_grenade LoadoutWeaponsAndAbilities = 90 + LoadoutWeaponsAndAbilities_mp_weapon_vinson LoadoutWeaponsAndAbilities = 91 + LoadoutWeaponsAndAbilities_mp_weapon_wingman LoadoutWeaponsAndAbilities = 92 + LoadoutWeaponsAndAbilities_mp_weapon_wingman_n LoadoutWeaponsAndAbilities = 93 + LoadoutWeaponsAndAbilities_melee_titan_punch_ion LoadoutWeaponsAndAbilities = 94 + LoadoutWeaponsAndAbilities_melee_titan_punch_legion LoadoutWeaponsAndAbilities = 95 + LoadoutWeaponsAndAbilities_melee_titan_punch_northstar LoadoutWeaponsAndAbilities = 96 + LoadoutWeaponsAndAbilities_melee_titan_punch_scorch LoadoutWeaponsAndAbilities = 97 + LoadoutWeaponsAndAbilities_melee_titan_punch_tone LoadoutWeaponsAndAbilities = 98 + LoadoutWeaponsAndAbilities_melee_titan_punch_vanguard LoadoutWeaponsAndAbilities = 99 + LoadoutWeaponsAndAbilitiesCount LoadoutWeaponsAndAbilities = 100 +) + +var _ fmt.Stringer = LoadoutWeaponsAndAbilities(0) +var _ fmt.GoStringer = LoadoutWeaponsAndAbilities(0) + +//var _ encoding.TextMarshaler = LoadoutWeaponsAndAbilities(0) +var _ encoding.TextUnmarshaler = (*LoadoutWeaponsAndAbilities)(nil) + +func (v LoadoutWeaponsAndAbilities) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v LoadoutWeaponsAndAbilities) GoString() string { + switch v { + case LoadoutWeaponsAndAbilities_NULL: + return "LoadoutWeaponsAndAbilities_NULL" + case LoadoutWeaponsAndAbilities_melee_pilot_emptyhanded: + return "LoadoutWeaponsAndAbilities_melee_pilot_emptyhanded" + case LoadoutWeaponsAndAbilities_melee_pilot_sword: + return "LoadoutWeaponsAndAbilities_melee_pilot_sword" + case LoadoutWeaponsAndAbilities_melee_titan_sword: + return "LoadoutWeaponsAndAbilities_melee_titan_sword" + case LoadoutWeaponsAndAbilities_melee_titan_sword_aoe: + return "LoadoutWeaponsAndAbilities_melee_titan_sword_aoe" + case LoadoutWeaponsAndAbilities_mp_ability_cloak: + return "LoadoutWeaponsAndAbilities_mp_ability_cloak" + case LoadoutWeaponsAndAbilities_mp_ability_grapple: + return "LoadoutWeaponsAndAbilities_mp_ability_grapple" + case LoadoutWeaponsAndAbilities_mp_ability_heal: + return "LoadoutWeaponsAndAbilities_mp_ability_heal" + case LoadoutWeaponsAndAbilities_mp_ability_holopilot: + return "LoadoutWeaponsAndAbilities_mp_ability_holopilot" + case LoadoutWeaponsAndAbilities_mp_ability_phase_rewind: + return "LoadoutWeaponsAndAbilities_mp_ability_phase_rewind" + case LoadoutWeaponsAndAbilities_mp_ability_shifter: + return "LoadoutWeaponsAndAbilities_mp_ability_shifter" + case LoadoutWeaponsAndAbilities_mp_titanability_ammo_swap: + return "LoadoutWeaponsAndAbilities_mp_titanability_ammo_swap" + case LoadoutWeaponsAndAbilities_mp_titanability_basic_block: + return "LoadoutWeaponsAndAbilities_mp_titanability_basic_block" + case LoadoutWeaponsAndAbilities_mp_titanability_gun_shield: + return "LoadoutWeaponsAndAbilities_mp_titanability_gun_shield" + case LoadoutWeaponsAndAbilities_mp_titanability_hover: + return "LoadoutWeaponsAndAbilities_mp_titanability_hover" + case LoadoutWeaponsAndAbilities_mp_titanability_laser_trip: + return "LoadoutWeaponsAndAbilities_mp_titanability_laser_trip" + case LoadoutWeaponsAndAbilities_mp_titanability_particle_wall: + return "LoadoutWeaponsAndAbilities_mp_titanability_particle_wall" + case LoadoutWeaponsAndAbilities_mp_titanability_phase_dash: + return "LoadoutWeaponsAndAbilities_mp_titanability_phase_dash" + case LoadoutWeaponsAndAbilities_mp_titanability_power_shot: + return "LoadoutWeaponsAndAbilities_mp_titanability_power_shot" + case LoadoutWeaponsAndAbilities_mp_titanability_slow_trap: + return "LoadoutWeaponsAndAbilities_mp_titanability_slow_trap" + case LoadoutWeaponsAndAbilities_mp_titanability_smoke: + return "LoadoutWeaponsAndAbilities_mp_titanability_smoke" + case LoadoutWeaponsAndAbilities_mp_titanability_sonar_pulse: + return "LoadoutWeaponsAndAbilities_mp_titanability_sonar_pulse" + case LoadoutWeaponsAndAbilities_mp_titanability_tether_trap: + return "LoadoutWeaponsAndAbilities_mp_titanability_tether_trap" + case LoadoutWeaponsAndAbilities_mp_titanability_rearm: + return "LoadoutWeaponsAndAbilities_mp_titanability_rearm" + case LoadoutWeaponsAndAbilities_mp_titancore_flame_wave: + return "LoadoutWeaponsAndAbilities_mp_titancore_flame_wave" + case LoadoutWeaponsAndAbilities_mp_titancore_flight_core: + return "LoadoutWeaponsAndAbilities_mp_titancore_flight_core" + case LoadoutWeaponsAndAbilities_mp_titancore_laser_cannon: + return "LoadoutWeaponsAndAbilities_mp_titancore_laser_cannon" + case LoadoutWeaponsAndAbilities_mp_titancore_salvo_core: + return "LoadoutWeaponsAndAbilities_mp_titancore_salvo_core" + case LoadoutWeaponsAndAbilities_mp_titancore_shift_core: + return "LoadoutWeaponsAndAbilities_mp_titancore_shift_core" + case LoadoutWeaponsAndAbilities_mp_titancore_siege_mode: + return "LoadoutWeaponsAndAbilities_mp_titancore_siege_mode" + case LoadoutWeaponsAndAbilities_mp_titancore_upgrade: + return "LoadoutWeaponsAndAbilities_mp_titancore_upgrade" + case LoadoutWeaponsAndAbilities_mp_titanweapon_40mm: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_40mm" + case LoadoutWeaponsAndAbilities_mp_titanweapon_arc_wave: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_arc_wave" + case LoadoutWeaponsAndAbilities_mp_titanweapon_flame_wall: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_flame_wall" + case LoadoutWeaponsAndAbilities_mp_titanweapon_heat_shield: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_heat_shield" + case LoadoutWeaponsAndAbilities_mp_titanweapon_homing_rockets: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_homing_rockets" + case LoadoutWeaponsAndAbilities_mp_titanweapon_dumbfire_rockets: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_dumbfire_rockets" + case LoadoutWeaponsAndAbilities_mp_titanweapon_laser_lite: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_laser_lite" + case LoadoutWeaponsAndAbilities_mp_titanweapon_leadwall: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_leadwall" + case LoadoutWeaponsAndAbilities_mp_titanweapon_meteor: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_meteor" + case LoadoutWeaponsAndAbilities_mp_titanweapon_particle_accelerator: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_particle_accelerator" + case LoadoutWeaponsAndAbilities_mp_titanweapon_predator_cannon: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_predator_cannon" + case LoadoutWeaponsAndAbilities_mp_titanweapon_rocket_launcher: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_rocket_launcher" + case LoadoutWeaponsAndAbilities_mp_titanweapon_rocketeer_rocketstream: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_rocketeer_rocketstream" + case LoadoutWeaponsAndAbilities_mp_titanweapon_salvo_rockets: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_salvo_rockets" + case LoadoutWeaponsAndAbilities_mp_titanweapon_sniper: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_sniper" + case LoadoutWeaponsAndAbilities_mp_titanweapon_sticky_40mm: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_sticky_40mm" + case LoadoutWeaponsAndAbilities_mp_titanweapon_stun_laser: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_stun_laser" + case LoadoutWeaponsAndAbilities_mp_titanweapon_tracker_rockets: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_tracker_rockets" + case LoadoutWeaponsAndAbilities_mp_titanweapon_vortex_shield: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_vortex_shield" + case LoadoutWeaponsAndAbilities_mp_titanweapon_vortex_shield_ion: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_vortex_shield_ion" + case LoadoutWeaponsAndAbilities_mp_titanweapon_xo16: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_xo16" + case LoadoutWeaponsAndAbilities_mp_titanweapon_xo16_shorty: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_xo16_shorty" + case LoadoutWeaponsAndAbilities_mp_titanweapon_xo16_vanguard: + return "LoadoutWeaponsAndAbilities_mp_titanweapon_xo16_vanguard" + case LoadoutWeaponsAndAbilities_mp_weapon_alternator_smg: + return "LoadoutWeaponsAndAbilities_mp_weapon_alternator_smg" + case LoadoutWeaponsAndAbilities_mp_weapon_arc_launcher: + return "LoadoutWeaponsAndAbilities_mp_weapon_arc_launcher" + case LoadoutWeaponsAndAbilities_mp_weapon_autopistol: + return "LoadoutWeaponsAndAbilities_mp_weapon_autopistol" + case LoadoutWeaponsAndAbilities_mp_weapon_car: + return "LoadoutWeaponsAndAbilities_mp_weapon_car" + case LoadoutWeaponsAndAbilities_mp_weapon_defender: + return "LoadoutWeaponsAndAbilities_mp_weapon_defender" + case LoadoutWeaponsAndAbilities_mp_weapon_deployable_cover: + return "LoadoutWeaponsAndAbilities_mp_weapon_deployable_cover" + case LoadoutWeaponsAndAbilities_mp_weapon_dmr: + return "LoadoutWeaponsAndAbilities_mp_weapon_dmr" + case LoadoutWeaponsAndAbilities_mp_weapon_doubletake: + return "LoadoutWeaponsAndAbilities_mp_weapon_doubletake" + case LoadoutWeaponsAndAbilities_mp_weapon_epg: + return "LoadoutWeaponsAndAbilities_mp_weapon_epg" + case LoadoutWeaponsAndAbilities_mp_weapon_esaw: + return "LoadoutWeaponsAndAbilities_mp_weapon_esaw" + case LoadoutWeaponsAndAbilities_mp_weapon_frag_drone: + return "LoadoutWeaponsAndAbilities_mp_weapon_frag_drone" + case LoadoutWeaponsAndAbilities_mp_weapon_frag_grenade: + return "LoadoutWeaponsAndAbilities_mp_weapon_frag_grenade" + case LoadoutWeaponsAndAbilities_mp_weapon_g2: + return "LoadoutWeaponsAndAbilities_mp_weapon_g2" + case LoadoutWeaponsAndAbilities_mp_weapon_grenade_electric_smoke: + return "LoadoutWeaponsAndAbilities_mp_weapon_grenade_electric_smoke" + case LoadoutWeaponsAndAbilities_mp_weapon_grenade_emp: + return "LoadoutWeaponsAndAbilities_mp_weapon_grenade_emp" + case LoadoutWeaponsAndAbilities_mp_weapon_grenade_gravity: + return "LoadoutWeaponsAndAbilities_mp_weapon_grenade_gravity" + case LoadoutWeaponsAndAbilities_mp_weapon_grenade_sonar: + return "LoadoutWeaponsAndAbilities_mp_weapon_grenade_sonar" + case LoadoutWeaponsAndAbilities_mp_weapon_hemlok: + return "LoadoutWeaponsAndAbilities_mp_weapon_hemlok" + case LoadoutWeaponsAndAbilities_mp_weapon_hemlok_smg: + return "LoadoutWeaponsAndAbilities_mp_weapon_hemlok_smg" + case LoadoutWeaponsAndAbilities_mp_weapon_lmg: + return "LoadoutWeaponsAndAbilities_mp_weapon_lmg" + case LoadoutWeaponsAndAbilities_mp_weapon_lstar: + return "LoadoutWeaponsAndAbilities_mp_weapon_lstar" + case LoadoutWeaponsAndAbilities_mp_weapon_mastiff: + return "LoadoutWeaponsAndAbilities_mp_weapon_mastiff" + case LoadoutWeaponsAndAbilities_mp_weapon_mgl: + return "LoadoutWeaponsAndAbilities_mp_weapon_mgl" + case LoadoutWeaponsAndAbilities_mp_weapon_pulse_lmg: + return "LoadoutWeaponsAndAbilities_mp_weapon_pulse_lmg" + case LoadoutWeaponsAndAbilities_mp_weapon_r97: + return "LoadoutWeaponsAndAbilities_mp_weapon_r97" + case LoadoutWeaponsAndAbilities_mp_weapon_rocket_launcher: + return "LoadoutWeaponsAndAbilities_mp_weapon_rocket_launcher" + case LoadoutWeaponsAndAbilities_mp_weapon_rspn101: + return "LoadoutWeaponsAndAbilities_mp_weapon_rspn101" + case LoadoutWeaponsAndAbilities_mp_weapon_rspn101_og: + return "LoadoutWeaponsAndAbilities_mp_weapon_rspn101_og" + case LoadoutWeaponsAndAbilities_mp_weapon_satchel: + return "LoadoutWeaponsAndAbilities_mp_weapon_satchel" + case LoadoutWeaponsAndAbilities_mp_weapon_semipistol: + return "LoadoutWeaponsAndAbilities_mp_weapon_semipistol" + case LoadoutWeaponsAndAbilities_mp_weapon_shotgun: + return "LoadoutWeaponsAndAbilities_mp_weapon_shotgun" + case LoadoutWeaponsAndAbilities_mp_weapon_shotgun_pistol: + return "LoadoutWeaponsAndAbilities_mp_weapon_shotgun_pistol" + case LoadoutWeaponsAndAbilities_mp_weapon_smart_pistol: + return "LoadoutWeaponsAndAbilities_mp_weapon_smart_pistol" + case LoadoutWeaponsAndAbilities_mp_weapon_smr: + return "LoadoutWeaponsAndAbilities_mp_weapon_smr" + case LoadoutWeaponsAndAbilities_mp_weapon_sniper: + return "LoadoutWeaponsAndAbilities_mp_weapon_sniper" + case LoadoutWeaponsAndAbilities_mp_weapon_softball: + return "LoadoutWeaponsAndAbilities_mp_weapon_softball" + case LoadoutWeaponsAndAbilities_mp_weapon_thermite_grenade: + return "LoadoutWeaponsAndAbilities_mp_weapon_thermite_grenade" + case LoadoutWeaponsAndAbilities_mp_weapon_vinson: + return "LoadoutWeaponsAndAbilities_mp_weapon_vinson" + case LoadoutWeaponsAndAbilities_mp_weapon_wingman: + return "LoadoutWeaponsAndAbilities_mp_weapon_wingman" + case LoadoutWeaponsAndAbilities_mp_weapon_wingman_n: + return "LoadoutWeaponsAndAbilities_mp_weapon_wingman_n" + case LoadoutWeaponsAndAbilities_melee_titan_punch_ion: + return "LoadoutWeaponsAndAbilities_melee_titan_punch_ion" + case LoadoutWeaponsAndAbilities_melee_titan_punch_legion: + return "LoadoutWeaponsAndAbilities_melee_titan_punch_legion" + case LoadoutWeaponsAndAbilities_melee_titan_punch_northstar: + return "LoadoutWeaponsAndAbilities_melee_titan_punch_northstar" + case LoadoutWeaponsAndAbilities_melee_titan_punch_scorch: + return "LoadoutWeaponsAndAbilities_melee_titan_punch_scorch" + case LoadoutWeaponsAndAbilities_melee_titan_punch_tone: + return "LoadoutWeaponsAndAbilities_melee_titan_punch_tone" + case LoadoutWeaponsAndAbilities_melee_titan_punch_vanguard: + return "LoadoutWeaponsAndAbilities_melee_titan_punch_vanguard" + default: + return fmt.Sprintf("%s(%d)", "LoadoutWeaponsAndAbilities", int(v)) + } +} +func (v LoadoutWeaponsAndAbilities) MarshalText() ([]byte, error) { + switch v { + case LoadoutWeaponsAndAbilities_NULL: + return []byte("NULL"), nil + case LoadoutWeaponsAndAbilities_melee_pilot_emptyhanded: + return []byte("melee_pilot_emptyhanded"), nil + case LoadoutWeaponsAndAbilities_melee_pilot_sword: + return []byte("melee_pilot_sword"), nil + case LoadoutWeaponsAndAbilities_melee_titan_sword: + return []byte("melee_titan_sword"), nil + case LoadoutWeaponsAndAbilities_melee_titan_sword_aoe: + return []byte("melee_titan_sword_aoe"), nil + case LoadoutWeaponsAndAbilities_mp_ability_cloak: + return []byte("mp_ability_cloak"), nil + case LoadoutWeaponsAndAbilities_mp_ability_grapple: + return []byte("mp_ability_grapple"), nil + case LoadoutWeaponsAndAbilities_mp_ability_heal: + return []byte("mp_ability_heal"), nil + case LoadoutWeaponsAndAbilities_mp_ability_holopilot: + return []byte("mp_ability_holopilot"), nil + case LoadoutWeaponsAndAbilities_mp_ability_phase_rewind: + return []byte("mp_ability_phase_rewind"), nil + case LoadoutWeaponsAndAbilities_mp_ability_shifter: + return []byte("mp_ability_shifter"), nil + case LoadoutWeaponsAndAbilities_mp_titanability_ammo_swap: + return []byte("mp_titanability_ammo_swap"), nil + case LoadoutWeaponsAndAbilities_mp_titanability_basic_block: + return []byte("mp_titanability_basic_block"), nil + case LoadoutWeaponsAndAbilities_mp_titanability_gun_shield: + return []byte("mp_titanability_gun_shield"), nil + case LoadoutWeaponsAndAbilities_mp_titanability_hover: + return []byte("mp_titanability_hover"), nil + case LoadoutWeaponsAndAbilities_mp_titanability_laser_trip: + return []byte("mp_titanability_laser_trip"), nil + case LoadoutWeaponsAndAbilities_mp_titanability_particle_wall: + return []byte("mp_titanability_particle_wall"), nil + case LoadoutWeaponsAndAbilities_mp_titanability_phase_dash: + return []byte("mp_titanability_phase_dash"), nil + case LoadoutWeaponsAndAbilities_mp_titanability_power_shot: + return []byte("mp_titanability_power_shot"), nil + case LoadoutWeaponsAndAbilities_mp_titanability_slow_trap: + return []byte("mp_titanability_slow_trap"), nil + case LoadoutWeaponsAndAbilities_mp_titanability_smoke: + return []byte("mp_titanability_smoke"), nil + case LoadoutWeaponsAndAbilities_mp_titanability_sonar_pulse: + return []byte("mp_titanability_sonar_pulse"), nil + case LoadoutWeaponsAndAbilities_mp_titanability_tether_trap: + return []byte("mp_titanability_tether_trap"), nil + case LoadoutWeaponsAndAbilities_mp_titanability_rearm: + return []byte("mp_titanability_rearm"), nil + case LoadoutWeaponsAndAbilities_mp_titancore_flame_wave: + return []byte("mp_titancore_flame_wave"), nil + case LoadoutWeaponsAndAbilities_mp_titancore_flight_core: + return []byte("mp_titancore_flight_core"), nil + case LoadoutWeaponsAndAbilities_mp_titancore_laser_cannon: + return []byte("mp_titancore_laser_cannon"), nil + case LoadoutWeaponsAndAbilities_mp_titancore_salvo_core: + return []byte("mp_titancore_salvo_core"), nil + case LoadoutWeaponsAndAbilities_mp_titancore_shift_core: + return []byte("mp_titancore_shift_core"), nil + case LoadoutWeaponsAndAbilities_mp_titancore_siege_mode: + return []byte("mp_titancore_siege_mode"), nil + case LoadoutWeaponsAndAbilities_mp_titancore_upgrade: + return []byte("mp_titancore_upgrade"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_40mm: + return []byte("mp_titanweapon_40mm"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_arc_wave: + return []byte("mp_titanweapon_arc_wave"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_flame_wall: + return []byte("mp_titanweapon_flame_wall"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_heat_shield: + return []byte("mp_titanweapon_heat_shield"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_homing_rockets: + return []byte("mp_titanweapon_homing_rockets"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_dumbfire_rockets: + return []byte("mp_titanweapon_dumbfire_rockets"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_laser_lite: + return []byte("mp_titanweapon_laser_lite"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_leadwall: + return []byte("mp_titanweapon_leadwall"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_meteor: + return []byte("mp_titanweapon_meteor"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_particle_accelerator: + return []byte("mp_titanweapon_particle_accelerator"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_predator_cannon: + return []byte("mp_titanweapon_predator_cannon"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_rocket_launcher: + return []byte("mp_titanweapon_rocket_launcher"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_rocketeer_rocketstream: + return []byte("mp_titanweapon_rocketeer_rocketstream"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_salvo_rockets: + return []byte("mp_titanweapon_salvo_rockets"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_sniper: + return []byte("mp_titanweapon_sniper"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_sticky_40mm: + return []byte("mp_titanweapon_sticky_40mm"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_stun_laser: + return []byte("mp_titanweapon_stun_laser"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_tracker_rockets: + return []byte("mp_titanweapon_tracker_rockets"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_vortex_shield: + return []byte("mp_titanweapon_vortex_shield"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_vortex_shield_ion: + return []byte("mp_titanweapon_vortex_shield_ion"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_xo16: + return []byte("mp_titanweapon_xo16"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_xo16_shorty: + return []byte("mp_titanweapon_xo16_shorty"), nil + case LoadoutWeaponsAndAbilities_mp_titanweapon_xo16_vanguard: + return []byte("mp_titanweapon_xo16_vanguard"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_alternator_smg: + return []byte("mp_weapon_alternator_smg"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_arc_launcher: + return []byte("mp_weapon_arc_launcher"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_autopistol: + return []byte("mp_weapon_autopistol"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_car: + return []byte("mp_weapon_car"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_defender: + return []byte("mp_weapon_defender"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_deployable_cover: + return []byte("mp_weapon_deployable_cover"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_dmr: + return []byte("mp_weapon_dmr"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_doubletake: + return []byte("mp_weapon_doubletake"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_epg: + return []byte("mp_weapon_epg"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_esaw: + return []byte("mp_weapon_esaw"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_frag_drone: + return []byte("mp_weapon_frag_drone"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_frag_grenade: + return []byte("mp_weapon_frag_grenade"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_g2: + return []byte("mp_weapon_g2"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_grenade_electric_smoke: + return []byte("mp_weapon_grenade_electric_smoke"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_grenade_emp: + return []byte("mp_weapon_grenade_emp"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_grenade_gravity: + return []byte("mp_weapon_grenade_gravity"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_grenade_sonar: + return []byte("mp_weapon_grenade_sonar"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_hemlok: + return []byte("mp_weapon_hemlok"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_hemlok_smg: + return []byte("mp_weapon_hemlok_smg"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_lmg: + return []byte("mp_weapon_lmg"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_lstar: + return []byte("mp_weapon_lstar"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_mastiff: + return []byte("mp_weapon_mastiff"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_mgl: + return []byte("mp_weapon_mgl"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_pulse_lmg: + return []byte("mp_weapon_pulse_lmg"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_r97: + return []byte("mp_weapon_r97"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_rocket_launcher: + return []byte("mp_weapon_rocket_launcher"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_rspn101: + return []byte("mp_weapon_rspn101"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_rspn101_og: + return []byte("mp_weapon_rspn101_og"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_satchel: + return []byte("mp_weapon_satchel"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_semipistol: + return []byte("mp_weapon_semipistol"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_shotgun: + return []byte("mp_weapon_shotgun"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_shotgun_pistol: + return []byte("mp_weapon_shotgun_pistol"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_smart_pistol: + return []byte("mp_weapon_smart_pistol"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_smr: + return []byte("mp_weapon_smr"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_sniper: + return []byte("mp_weapon_sniper"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_softball: + return []byte("mp_weapon_softball"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_thermite_grenade: + return []byte("mp_weapon_thermite_grenade"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_vinson: + return []byte("mp_weapon_vinson"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_wingman: + return []byte("mp_weapon_wingman"), nil + case LoadoutWeaponsAndAbilities_mp_weapon_wingman_n: + return []byte("mp_weapon_wingman_n"), nil + case LoadoutWeaponsAndAbilities_melee_titan_punch_ion: + return []byte("melee_titan_punch_ion"), nil + case LoadoutWeaponsAndAbilities_melee_titan_punch_legion: + return []byte("melee_titan_punch_legion"), nil + case LoadoutWeaponsAndAbilities_melee_titan_punch_northstar: + return []byte("melee_titan_punch_northstar"), nil + case LoadoutWeaponsAndAbilities_melee_titan_punch_scorch: + return []byte("melee_titan_punch_scorch"), nil + case LoadoutWeaponsAndAbilities_melee_titan_punch_tone: + return []byte("melee_titan_punch_tone"), nil + case LoadoutWeaponsAndAbilities_melee_titan_punch_vanguard: + return []byte("melee_titan_punch_vanguard"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "LoadoutWeaponsAndAbilities") + } +} +func (v *LoadoutWeaponsAndAbilities) UnmarshalText(b []byte) error { + switch string(b) { + case "NULL": + *v = LoadoutWeaponsAndAbilities_NULL + case "melee_pilot_emptyhanded": + *v = LoadoutWeaponsAndAbilities_melee_pilot_emptyhanded + case "melee_pilot_sword": + *v = LoadoutWeaponsAndAbilities_melee_pilot_sword + case "melee_titan_sword": + *v = LoadoutWeaponsAndAbilities_melee_titan_sword + case "melee_titan_sword_aoe": + *v = LoadoutWeaponsAndAbilities_melee_titan_sword_aoe + case "mp_ability_cloak": + *v = LoadoutWeaponsAndAbilities_mp_ability_cloak + case "mp_ability_grapple": + *v = LoadoutWeaponsAndAbilities_mp_ability_grapple + case "mp_ability_heal": + *v = LoadoutWeaponsAndAbilities_mp_ability_heal + case "mp_ability_holopilot": + *v = LoadoutWeaponsAndAbilities_mp_ability_holopilot + case "mp_ability_phase_rewind": + *v = LoadoutWeaponsAndAbilities_mp_ability_phase_rewind + case "mp_ability_shifter": + *v = LoadoutWeaponsAndAbilities_mp_ability_shifter + case "mp_titanability_ammo_swap": + *v = LoadoutWeaponsAndAbilities_mp_titanability_ammo_swap + case "mp_titanability_basic_block": + *v = LoadoutWeaponsAndAbilities_mp_titanability_basic_block + case "mp_titanability_gun_shield": + *v = LoadoutWeaponsAndAbilities_mp_titanability_gun_shield + case "mp_titanability_hover": + *v = LoadoutWeaponsAndAbilities_mp_titanability_hover + case "mp_titanability_laser_trip": + *v = LoadoutWeaponsAndAbilities_mp_titanability_laser_trip + case "mp_titanability_particle_wall": + *v = LoadoutWeaponsAndAbilities_mp_titanability_particle_wall + case "mp_titanability_phase_dash": + *v = LoadoutWeaponsAndAbilities_mp_titanability_phase_dash + case "mp_titanability_power_shot": + *v = LoadoutWeaponsAndAbilities_mp_titanability_power_shot + case "mp_titanability_slow_trap": + *v = LoadoutWeaponsAndAbilities_mp_titanability_slow_trap + case "mp_titanability_smoke": + *v = LoadoutWeaponsAndAbilities_mp_titanability_smoke + case "mp_titanability_sonar_pulse": + *v = LoadoutWeaponsAndAbilities_mp_titanability_sonar_pulse + case "mp_titanability_tether_trap": + *v = LoadoutWeaponsAndAbilities_mp_titanability_tether_trap + case "mp_titanability_rearm": + *v = LoadoutWeaponsAndAbilities_mp_titanability_rearm + case "mp_titancore_flame_wave": + *v = LoadoutWeaponsAndAbilities_mp_titancore_flame_wave + case "mp_titancore_flight_core": + *v = LoadoutWeaponsAndAbilities_mp_titancore_flight_core + case "mp_titancore_laser_cannon": + *v = LoadoutWeaponsAndAbilities_mp_titancore_laser_cannon + case "mp_titancore_salvo_core": + *v = LoadoutWeaponsAndAbilities_mp_titancore_salvo_core + case "mp_titancore_shift_core": + *v = LoadoutWeaponsAndAbilities_mp_titancore_shift_core + case "mp_titancore_siege_mode": + *v = LoadoutWeaponsAndAbilities_mp_titancore_siege_mode + case "mp_titancore_upgrade": + *v = LoadoutWeaponsAndAbilities_mp_titancore_upgrade + case "mp_titanweapon_40mm": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_40mm + case "mp_titanweapon_arc_wave": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_arc_wave + case "mp_titanweapon_flame_wall": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_flame_wall + case "mp_titanweapon_heat_shield": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_heat_shield + case "mp_titanweapon_homing_rockets": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_homing_rockets + case "mp_titanweapon_dumbfire_rockets": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_dumbfire_rockets + case "mp_titanweapon_laser_lite": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_laser_lite + case "mp_titanweapon_leadwall": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_leadwall + case "mp_titanweapon_meteor": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_meteor + case "mp_titanweapon_particle_accelerator": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_particle_accelerator + case "mp_titanweapon_predator_cannon": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_predator_cannon + case "mp_titanweapon_rocket_launcher": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_rocket_launcher + case "mp_titanweapon_rocketeer_rocketstream": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_rocketeer_rocketstream + case "mp_titanweapon_salvo_rockets": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_salvo_rockets + case "mp_titanweapon_sniper": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_sniper + case "mp_titanweapon_sticky_40mm": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_sticky_40mm + case "mp_titanweapon_stun_laser": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_stun_laser + case "mp_titanweapon_tracker_rockets": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_tracker_rockets + case "mp_titanweapon_vortex_shield": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_vortex_shield + case "mp_titanweapon_vortex_shield_ion": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_vortex_shield_ion + case "mp_titanweapon_xo16": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_xo16 + case "mp_titanweapon_xo16_shorty": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_xo16_shorty + case "mp_titanweapon_xo16_vanguard": + *v = LoadoutWeaponsAndAbilities_mp_titanweapon_xo16_vanguard + case "mp_weapon_alternator_smg": + *v = LoadoutWeaponsAndAbilities_mp_weapon_alternator_smg + case "mp_weapon_arc_launcher": + *v = LoadoutWeaponsAndAbilities_mp_weapon_arc_launcher + case "mp_weapon_autopistol": + *v = LoadoutWeaponsAndAbilities_mp_weapon_autopistol + case "mp_weapon_car": + *v = LoadoutWeaponsAndAbilities_mp_weapon_car + case "mp_weapon_defender": + *v = LoadoutWeaponsAndAbilities_mp_weapon_defender + case "mp_weapon_deployable_cover": + *v = LoadoutWeaponsAndAbilities_mp_weapon_deployable_cover + case "mp_weapon_dmr": + *v = LoadoutWeaponsAndAbilities_mp_weapon_dmr + case "mp_weapon_doubletake": + *v = LoadoutWeaponsAndAbilities_mp_weapon_doubletake + case "mp_weapon_epg": + *v = LoadoutWeaponsAndAbilities_mp_weapon_epg + case "mp_weapon_esaw": + *v = LoadoutWeaponsAndAbilities_mp_weapon_esaw + case "mp_weapon_frag_drone": + *v = LoadoutWeaponsAndAbilities_mp_weapon_frag_drone + case "mp_weapon_frag_grenade": + *v = LoadoutWeaponsAndAbilities_mp_weapon_frag_grenade + case "mp_weapon_g2": + *v = LoadoutWeaponsAndAbilities_mp_weapon_g2 + case "mp_weapon_grenade_electric_smoke": + *v = LoadoutWeaponsAndAbilities_mp_weapon_grenade_electric_smoke + case "mp_weapon_grenade_emp": + *v = LoadoutWeaponsAndAbilities_mp_weapon_grenade_emp + case "mp_weapon_grenade_gravity": + *v = LoadoutWeaponsAndAbilities_mp_weapon_grenade_gravity + case "mp_weapon_grenade_sonar": + *v = LoadoutWeaponsAndAbilities_mp_weapon_grenade_sonar + case "mp_weapon_hemlok": + *v = LoadoutWeaponsAndAbilities_mp_weapon_hemlok + case "mp_weapon_hemlok_smg": + *v = LoadoutWeaponsAndAbilities_mp_weapon_hemlok_smg + case "mp_weapon_lmg": + *v = LoadoutWeaponsAndAbilities_mp_weapon_lmg + case "mp_weapon_lstar": + *v = LoadoutWeaponsAndAbilities_mp_weapon_lstar + case "mp_weapon_mastiff": + *v = LoadoutWeaponsAndAbilities_mp_weapon_mastiff + case "mp_weapon_mgl": + *v = LoadoutWeaponsAndAbilities_mp_weapon_mgl + case "mp_weapon_pulse_lmg": + *v = LoadoutWeaponsAndAbilities_mp_weapon_pulse_lmg + case "mp_weapon_r97": + *v = LoadoutWeaponsAndAbilities_mp_weapon_r97 + case "mp_weapon_rocket_launcher": + *v = LoadoutWeaponsAndAbilities_mp_weapon_rocket_launcher + case "mp_weapon_rspn101": + *v = LoadoutWeaponsAndAbilities_mp_weapon_rspn101 + case "mp_weapon_rspn101_og": + *v = LoadoutWeaponsAndAbilities_mp_weapon_rspn101_og + case "mp_weapon_satchel": + *v = LoadoutWeaponsAndAbilities_mp_weapon_satchel + case "mp_weapon_semipistol": + *v = LoadoutWeaponsAndAbilities_mp_weapon_semipistol + case "mp_weapon_shotgun": + *v = LoadoutWeaponsAndAbilities_mp_weapon_shotgun + case "mp_weapon_shotgun_pistol": + *v = LoadoutWeaponsAndAbilities_mp_weapon_shotgun_pistol + case "mp_weapon_smart_pistol": + *v = LoadoutWeaponsAndAbilities_mp_weapon_smart_pistol + case "mp_weapon_smr": + *v = LoadoutWeaponsAndAbilities_mp_weapon_smr + case "mp_weapon_sniper": + *v = LoadoutWeaponsAndAbilities_mp_weapon_sniper + case "mp_weapon_softball": + *v = LoadoutWeaponsAndAbilities_mp_weapon_softball + case "mp_weapon_thermite_grenade": + *v = LoadoutWeaponsAndAbilities_mp_weapon_thermite_grenade + case "mp_weapon_vinson": + *v = LoadoutWeaponsAndAbilities_mp_weapon_vinson + case "mp_weapon_wingman": + *v = LoadoutWeaponsAndAbilities_mp_weapon_wingman + case "mp_weapon_wingman_n": + *v = LoadoutWeaponsAndAbilities_mp_weapon_wingman_n + case "melee_titan_punch_ion": + *v = LoadoutWeaponsAndAbilities_melee_titan_punch_ion + case "melee_titan_punch_legion": + *v = LoadoutWeaponsAndAbilities_melee_titan_punch_legion + case "melee_titan_punch_northstar": + *v = LoadoutWeaponsAndAbilities_melee_titan_punch_northstar + case "melee_titan_punch_scorch": + *v = LoadoutWeaponsAndAbilities_melee_titan_punch_scorch + case "melee_titan_punch_tone": + *v = LoadoutWeaponsAndAbilities_melee_titan_punch_tone + case "melee_titan_punch_vanguard": + *v = LoadoutWeaponsAndAbilities_melee_titan_punch_vanguard + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "LoadoutWeaponsAndAbilities") + } + return nil +} + +type Maps uint8 + +const ( + Maps_mp_box Maps = 0 + Maps_mp_test_engagement_range Maps = 1 + Maps_mp_forwardbase_kodai Maps = 2 + Maps_mp_grave Maps = 3 + Maps_mp_homestead Maps = 4 + Maps_mp_thaw Maps = 5 + Maps_mp_black_water_canal Maps = 6 + Maps_mp_eden Maps = 7 + Maps_mp_drydock Maps = 8 + Maps_mp_crashsite3 Maps = 9 + Maps_mp_complex3 Maps = 10 + Maps_mp_coliseum Maps = 11 + Maps_mp_angel_city Maps = 12 + Maps_mp_colony02 Maps = 13 + Maps_mp_relic02 Maps = 14 + Maps_mp_glitch Maps = 15 + Maps_mp_lf_stacks Maps = 16 + Maps_mp_lf_meadow Maps = 17 + Maps_mp_lf_deck Maps = 18 + Maps_mp_lf_traffic Maps = 19 + Maps_mp_lf_township Maps = 20 + Maps_mp_lf_uma Maps = 21 + Maps_mp_coliseum_column Maps = 22 + Maps_mp_wargames Maps = 23 + Maps_mp_rise Maps = 24 + MapsCount Maps = 25 +) + +var _ fmt.Stringer = Maps(0) +var _ fmt.GoStringer = Maps(0) + +//var _ encoding.TextMarshaler = Maps(0) +var _ encoding.TextUnmarshaler = (*Maps)(nil) + +func (v Maps) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v Maps) GoString() string { + switch v { + case Maps_mp_box: + return "Maps_mp_box" + case Maps_mp_test_engagement_range: + return "Maps_mp_test_engagement_range" + case Maps_mp_forwardbase_kodai: + return "Maps_mp_forwardbase_kodai" + case Maps_mp_grave: + return "Maps_mp_grave" + case Maps_mp_homestead: + return "Maps_mp_homestead" + case Maps_mp_thaw: + return "Maps_mp_thaw" + case Maps_mp_black_water_canal: + return "Maps_mp_black_water_canal" + case Maps_mp_eden: + return "Maps_mp_eden" + case Maps_mp_drydock: + return "Maps_mp_drydock" + case Maps_mp_crashsite3: + return "Maps_mp_crashsite3" + case Maps_mp_complex3: + return "Maps_mp_complex3" + case Maps_mp_coliseum: + return "Maps_mp_coliseum" + case Maps_mp_angel_city: + return "Maps_mp_angel_city" + case Maps_mp_colony02: + return "Maps_mp_colony02" + case Maps_mp_relic02: + return "Maps_mp_relic02" + case Maps_mp_glitch: + return "Maps_mp_glitch" + case Maps_mp_lf_stacks: + return "Maps_mp_lf_stacks" + case Maps_mp_lf_meadow: + return "Maps_mp_lf_meadow" + case Maps_mp_lf_deck: + return "Maps_mp_lf_deck" + case Maps_mp_lf_traffic: + return "Maps_mp_lf_traffic" + case Maps_mp_lf_township: + return "Maps_mp_lf_township" + case Maps_mp_lf_uma: + return "Maps_mp_lf_uma" + case Maps_mp_coliseum_column: + return "Maps_mp_coliseum_column" + case Maps_mp_wargames: + return "Maps_mp_wargames" + case Maps_mp_rise: + return "Maps_mp_rise" + default: + return fmt.Sprintf("%s(%d)", "Maps", int(v)) + } +} +func (v Maps) MarshalText() ([]byte, error) { + switch v { + case Maps_mp_box: + return []byte("mp_box"), nil + case Maps_mp_test_engagement_range: + return []byte("mp_test_engagement_range"), nil + case Maps_mp_forwardbase_kodai: + return []byte("mp_forwardbase_kodai"), nil + case Maps_mp_grave: + return []byte("mp_grave"), nil + case Maps_mp_homestead: + return []byte("mp_homestead"), nil + case Maps_mp_thaw: + return []byte("mp_thaw"), nil + case Maps_mp_black_water_canal: + return []byte("mp_black_water_canal"), nil + case Maps_mp_eden: + return []byte("mp_eden"), nil + case Maps_mp_drydock: + return []byte("mp_drydock"), nil + case Maps_mp_crashsite3: + return []byte("mp_crashsite3"), nil + case Maps_mp_complex3: + return []byte("mp_complex3"), nil + case Maps_mp_coliseum: + return []byte("mp_coliseum"), nil + case Maps_mp_angel_city: + return []byte("mp_angel_city"), nil + case Maps_mp_colony02: + return []byte("mp_colony02"), nil + case Maps_mp_relic02: + return []byte("mp_relic02"), nil + case Maps_mp_glitch: + return []byte("mp_glitch"), nil + case Maps_mp_lf_stacks: + return []byte("mp_lf_stacks"), nil + case Maps_mp_lf_meadow: + return []byte("mp_lf_meadow"), nil + case Maps_mp_lf_deck: + return []byte("mp_lf_deck"), nil + case Maps_mp_lf_traffic: + return []byte("mp_lf_traffic"), nil + case Maps_mp_lf_township: + return []byte("mp_lf_township"), nil + case Maps_mp_lf_uma: + return []byte("mp_lf_uma"), nil + case Maps_mp_coliseum_column: + return []byte("mp_coliseum_column"), nil + case Maps_mp_wargames: + return []byte("mp_wargames"), nil + case Maps_mp_rise: + return []byte("mp_rise"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "Maps") + } +} +func (v *Maps) UnmarshalText(b []byte) error { + switch string(b) { + case "mp_box": + *v = Maps_mp_box + case "mp_test_engagement_range": + *v = Maps_mp_test_engagement_range + case "mp_forwardbase_kodai": + *v = Maps_mp_forwardbase_kodai + case "mp_grave": + *v = Maps_mp_grave + case "mp_homestead": + *v = Maps_mp_homestead + case "mp_thaw": + *v = Maps_mp_thaw + case "mp_black_water_canal": + *v = Maps_mp_black_water_canal + case "mp_eden": + *v = Maps_mp_eden + case "mp_drydock": + *v = Maps_mp_drydock + case "mp_crashsite3": + *v = Maps_mp_crashsite3 + case "mp_complex3": + *v = Maps_mp_complex3 + case "mp_coliseum": + *v = Maps_mp_coliseum + case "mp_angel_city": + *v = Maps_mp_angel_city + case "mp_colony02": + *v = Maps_mp_colony02 + case "mp_relic02": + *v = Maps_mp_relic02 + case "mp_glitch": + *v = Maps_mp_glitch + case "mp_lf_stacks": + *v = Maps_mp_lf_stacks + case "mp_lf_meadow": + *v = Maps_mp_lf_meadow + case "mp_lf_deck": + *v = Maps_mp_lf_deck + case "mp_lf_traffic": + *v = Maps_mp_lf_traffic + case "mp_lf_township": + *v = Maps_mp_lf_township + case "mp_lf_uma": + *v = Maps_mp_lf_uma + case "mp_coliseum_column": + *v = Maps_mp_coliseum_column + case "mp_wargames": + *v = Maps_mp_wargames + case "mp_rise": + *v = Maps_mp_rise + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "Maps") + } + return nil +} + +type OwnedEntitlements uint8 + +const ( + OwnedEntitlements_ET_DLC7_WEAPON_BUNDLE OwnedEntitlements = 0 + OwnedEntitlements_ET_DLC7_R201_WARPAINT OwnedEntitlements = 1 + OwnedEntitlements_ET_DLC7_G2A5_WARPAINT OwnedEntitlements = 2 + OwnedEntitlements_ET_DLC7_FLATLINE_WARPAINT OwnedEntitlements = 3 + OwnedEntitlements_ET_DLC7_CAR_WARPAINT OwnedEntitlements = 4 + OwnedEntitlements_ET_DLC7_ALTERNATOR_WARPAINT OwnedEntitlements = 5 + OwnedEntitlements_ET_DLC7_EVA8_WARPAINT OwnedEntitlements = 6 + OwnedEntitlements_ET_DLC7_WINGMAN_WARPAINT OwnedEntitlements = 7 + OwnedEntitlements_ET_DLC7_ARCHER_WARPAINT OwnedEntitlements = 8 + OwnedEntitlementsCount OwnedEntitlements = 9 +) + +var _ fmt.Stringer = OwnedEntitlements(0) +var _ fmt.GoStringer = OwnedEntitlements(0) + +//var _ encoding.TextMarshaler = OwnedEntitlements(0) +var _ encoding.TextUnmarshaler = (*OwnedEntitlements)(nil) + +func (v OwnedEntitlements) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v OwnedEntitlements) GoString() string { + switch v { + case OwnedEntitlements_ET_DLC7_WEAPON_BUNDLE: + return "OwnedEntitlements_ET_DLC7_WEAPON_BUNDLE" + case OwnedEntitlements_ET_DLC7_R201_WARPAINT: + return "OwnedEntitlements_ET_DLC7_R201_WARPAINT" + case OwnedEntitlements_ET_DLC7_G2A5_WARPAINT: + return "OwnedEntitlements_ET_DLC7_G2A5_WARPAINT" + case OwnedEntitlements_ET_DLC7_FLATLINE_WARPAINT: + return "OwnedEntitlements_ET_DLC7_FLATLINE_WARPAINT" + case OwnedEntitlements_ET_DLC7_CAR_WARPAINT: + return "OwnedEntitlements_ET_DLC7_CAR_WARPAINT" + case OwnedEntitlements_ET_DLC7_ALTERNATOR_WARPAINT: + return "OwnedEntitlements_ET_DLC7_ALTERNATOR_WARPAINT" + case OwnedEntitlements_ET_DLC7_EVA8_WARPAINT: + return "OwnedEntitlements_ET_DLC7_EVA8_WARPAINT" + case OwnedEntitlements_ET_DLC7_WINGMAN_WARPAINT: + return "OwnedEntitlements_ET_DLC7_WINGMAN_WARPAINT" + case OwnedEntitlements_ET_DLC7_ARCHER_WARPAINT: + return "OwnedEntitlements_ET_DLC7_ARCHER_WARPAINT" + default: + return fmt.Sprintf("%s(%d)", "OwnedEntitlements", int(v)) + } +} +func (v OwnedEntitlements) MarshalText() ([]byte, error) { + switch v { + case OwnedEntitlements_ET_DLC7_WEAPON_BUNDLE: + return []byte("ET_DLC7_WEAPON_BUNDLE"), nil + case OwnedEntitlements_ET_DLC7_R201_WARPAINT: + return []byte("ET_DLC7_R201_WARPAINT"), nil + case OwnedEntitlements_ET_DLC7_G2A5_WARPAINT: + return []byte("ET_DLC7_G2A5_WARPAINT"), nil + case OwnedEntitlements_ET_DLC7_FLATLINE_WARPAINT: + return []byte("ET_DLC7_FLATLINE_WARPAINT"), nil + case OwnedEntitlements_ET_DLC7_CAR_WARPAINT: + return []byte("ET_DLC7_CAR_WARPAINT"), nil + case OwnedEntitlements_ET_DLC7_ALTERNATOR_WARPAINT: + return []byte("ET_DLC7_ALTERNATOR_WARPAINT"), nil + case OwnedEntitlements_ET_DLC7_EVA8_WARPAINT: + return []byte("ET_DLC7_EVA8_WARPAINT"), nil + case OwnedEntitlements_ET_DLC7_WINGMAN_WARPAINT: + return []byte("ET_DLC7_WINGMAN_WARPAINT"), nil + case OwnedEntitlements_ET_DLC7_ARCHER_WARPAINT: + return []byte("ET_DLC7_ARCHER_WARPAINT"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "OwnedEntitlements") + } +} +func (v *OwnedEntitlements) UnmarshalText(b []byte) error { + switch string(b) { + case "ET_DLC7_WEAPON_BUNDLE": + *v = OwnedEntitlements_ET_DLC7_WEAPON_BUNDLE + case "ET_DLC7_R201_WARPAINT": + *v = OwnedEntitlements_ET_DLC7_R201_WARPAINT + case "ET_DLC7_G2A5_WARPAINT": + *v = OwnedEntitlements_ET_DLC7_G2A5_WARPAINT + case "ET_DLC7_FLATLINE_WARPAINT": + *v = OwnedEntitlements_ET_DLC7_FLATLINE_WARPAINT + case "ET_DLC7_CAR_WARPAINT": + *v = OwnedEntitlements_ET_DLC7_CAR_WARPAINT + case "ET_DLC7_ALTERNATOR_WARPAINT": + *v = OwnedEntitlements_ET_DLC7_ALTERNATOR_WARPAINT + case "ET_DLC7_EVA8_WARPAINT": + *v = OwnedEntitlements_ET_DLC7_EVA8_WARPAINT + case "ET_DLC7_WINGMAN_WARPAINT": + *v = OwnedEntitlements_ET_DLC7_WINGMAN_WARPAINT + case "ET_DLC7_ARCHER_WARPAINT": + *v = OwnedEntitlements_ET_DLC7_ARCHER_WARPAINT + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "OwnedEntitlements") + } + return nil +} + +type PilotExecution uint8 + +const ( + PilotExecution_execution_neck_snap PilotExecution = 0 + PilotExecution_execution_face_stab PilotExecution = 1 + PilotExecution_execution_backshot PilotExecution = 2 + PilotExecution_execution_combo PilotExecution = 3 + PilotExecution_execution_knockout PilotExecution = 4 + PilotExecution_execution_telefrag PilotExecution = 5 + PilotExecution_execution_stim PilotExecution = 6 + PilotExecution_execution_grapple PilotExecution = 7 + PilotExecution_execution_pulseblade PilotExecution = 8 + PilotExecution_execution_random PilotExecution = 9 + PilotExecution_execution_cloak PilotExecution = 10 + PilotExecution_execution_holopilot PilotExecution = 11 + PilotExecution_execution_ampedwall PilotExecution = 12 + PilotExecutionCount PilotExecution = 13 +) + +var _ fmt.Stringer = PilotExecution(0) +var _ fmt.GoStringer = PilotExecution(0) + +//var _ encoding.TextMarshaler = PilotExecution(0) +var _ encoding.TextUnmarshaler = (*PilotExecution)(nil) + +func (v PilotExecution) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v PilotExecution) GoString() string { + switch v { + case PilotExecution_execution_neck_snap: + return "PilotExecution_execution_neck_snap" + case PilotExecution_execution_face_stab: + return "PilotExecution_execution_face_stab" + case PilotExecution_execution_backshot: + return "PilotExecution_execution_backshot" + case PilotExecution_execution_combo: + return "PilotExecution_execution_combo" + case PilotExecution_execution_knockout: + return "PilotExecution_execution_knockout" + case PilotExecution_execution_telefrag: + return "PilotExecution_execution_telefrag" + case PilotExecution_execution_stim: + return "PilotExecution_execution_stim" + case PilotExecution_execution_grapple: + return "PilotExecution_execution_grapple" + case PilotExecution_execution_pulseblade: + return "PilotExecution_execution_pulseblade" + case PilotExecution_execution_random: + return "PilotExecution_execution_random" + case PilotExecution_execution_cloak: + return "PilotExecution_execution_cloak" + case PilotExecution_execution_holopilot: + return "PilotExecution_execution_holopilot" + case PilotExecution_execution_ampedwall: + return "PilotExecution_execution_ampedwall" + default: + return fmt.Sprintf("%s(%d)", "PilotExecution", int(v)) + } +} +func (v PilotExecution) MarshalText() ([]byte, error) { + switch v { + case PilotExecution_execution_neck_snap: + return []byte("execution_neck_snap"), nil + case PilotExecution_execution_face_stab: + return []byte("execution_face_stab"), nil + case PilotExecution_execution_backshot: + return []byte("execution_backshot"), nil + case PilotExecution_execution_combo: + return []byte("execution_combo"), nil + case PilotExecution_execution_knockout: + return []byte("execution_knockout"), nil + case PilotExecution_execution_telefrag: + return []byte("execution_telefrag"), nil + case PilotExecution_execution_stim: + return []byte("execution_stim"), nil + case PilotExecution_execution_grapple: + return []byte("execution_grapple"), nil + case PilotExecution_execution_pulseblade: + return []byte("execution_pulseblade"), nil + case PilotExecution_execution_random: + return []byte("execution_random"), nil + case PilotExecution_execution_cloak: + return []byte("execution_cloak"), nil + case PilotExecution_execution_holopilot: + return []byte("execution_holopilot"), nil + case PilotExecution_execution_ampedwall: + return []byte("execution_ampedwall"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "PilotExecution") + } +} +func (v *PilotExecution) UnmarshalText(b []byte) error { + switch string(b) { + case "execution_neck_snap": + *v = PilotExecution_execution_neck_snap + case "execution_face_stab": + *v = PilotExecution_execution_face_stab + case "execution_backshot": + *v = PilotExecution_execution_backshot + case "execution_combo": + *v = PilotExecution_execution_combo + case "execution_knockout": + *v = PilotExecution_execution_knockout + case "execution_telefrag": + *v = PilotExecution_execution_telefrag + case "execution_stim": + *v = PilotExecution_execution_stim + case "execution_grapple": + *v = PilotExecution_execution_grapple + case "execution_pulseblade": + *v = PilotExecution_execution_pulseblade + case "execution_random": + *v = PilotExecution_execution_random + case "execution_cloak": + *v = PilotExecution_execution_cloak + case "execution_holopilot": + *v = PilotExecution_execution_holopilot + case "execution_ampedwall": + *v = PilotExecution_execution_ampedwall + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "PilotExecution") + } + return nil +} + +type PilotMod uint8 + +const ( + PilotMod_NULL PilotMod = 0 + PilotMod_aog PilotMod = 1 + PilotMod_automatic_fire PilotMod = 2 + PilotMod_burn_mod_rspn101 PilotMod = 3 + PilotMod_burn_mod_g2 PilotMod = 4 + PilotMod_burn_mod_hemlok PilotMod = 5 + PilotMod_burn_mod_vinson PilotMod = 6 + PilotMod_burn_mod_lstar PilotMod = 7 + PilotMod_burn_mod_car PilotMod = 8 + PilotMod_burn_mod_r97 PilotMod = 9 + PilotMod_burn_mod_alternator_smg PilotMod = 10 + PilotMod_burn_mod_lmg PilotMod = 11 + PilotMod_burn_mod_esaw PilotMod = 12 + PilotMod_burn_mod_pulse_lmg PilotMod = 13 + PilotMod_burn_mod_sniper PilotMod = 14 + PilotMod_burn_mod_dmr PilotMod = 15 + PilotMod_burn_mod_doubletake PilotMod = 16 + PilotMod_burn_mod_mastiff PilotMod = 17 + PilotMod_burn_mod_shotgun PilotMod = 18 + PilotMod_burn_mod_softball PilotMod = 19 + PilotMod_burn_mod_shotgun_pistol PilotMod = 20 + PilotMod_burn_mod_autopistol PilotMod = 21 + PilotMod_burn_mod_wingman PilotMod = 22 + PilotMod_burn_mod_semipistol PilotMod = 23 + PilotMod_burn_mod_smart_pistol PilotMod = 24 + PilotMod_burn_mod_emp_grenade PilotMod = 25 + PilotMod_burn_mod_frag_grenade PilotMod = 26 + PilotMod_burn_mod_satchel PilotMod = 27 + PilotMod_burn_mod_proximity_mine PilotMod = 28 + PilotMod_burn_mod_grenade_electric_smoke PilotMod = 29 + PilotMod_burn_mod_grenade_gravity PilotMod = 30 + PilotMod_burn_mod_thermite_grenade PilotMod = 31 + PilotMod_burn_mod_defender PilotMod = 32 + PilotMod_burn_mod_rocket_launcher PilotMod = 33 + PilotMod_burn_mod_arc_launcher PilotMod = 34 + PilotMod_burn_mod_smr PilotMod = 35 + PilotMod_burn_mod_mgl PilotMod = 36 + PilotMod_burst PilotMod = 37 + PilotMod_enhanced_targeting PilotMod = 38 + PilotMod_extended_ammo PilotMod = 39 + PilotMod_fast_lock PilotMod = 40 + PilotMod_fast_reload PilotMod = 41 + PilotMod_guided_missile PilotMod = 42 + PilotMod_hcog PilotMod = 43 + PilotMod_high_density PilotMod = 44 + PilotMod_holosight PilotMod = 45 + PilotMod_iron_sights PilotMod = 46 + PilotMod_long_fuse PilotMod = 47 + PilotMod_powered_magnets PilotMod = 48 + PilotMod_scope_4x PilotMod = 49 + PilotMod_scope_6x PilotMod = 50 + PilotMod_scope_8x PilotMod = 51 + PilotMod_scope_10x PilotMod = 52 + PilotMod_scope_12x PilotMod = 53 + PilotMod_silencer PilotMod = 54 + PilotMod_sniper_assist PilotMod = 55 + PilotMod_stabilizer PilotMod = 56 + PilotMod_single_shot PilotMod = 57 + PilotMod_slammer PilotMod = 58 + PilotMod_stabilized_warhead PilotMod = 59 + PilotMod_tank_buster PilotMod = 60 + PilotMod_amped_wall PilotMod = 61 + PilotMod_short_shift PilotMod = 62 + PilotMod_burn_mod_epg PilotMod = 63 + PilotMod_ricochet PilotMod = 64 + PilotMod_ar_trajectory PilotMod = 65 + PilotMod_redline_sight PilotMod = 66 + PilotMod_threat_scope PilotMod = 67 + PilotMod_smart_lock PilotMod = 68 + PilotMod_pro_screen PilotMod = 69 + PilotMod_delayed_shot PilotMod = 70 + PilotMod_pas_run_and_gun PilotMod = 71 + PilotMod_tactical_cdr_on_kill PilotMod = 72 + PilotMod_pas_fast_ads PilotMod = 73 + PilotMod_pas_fast_swap PilotMod = 74 + PilotMod_pas_fast_reload PilotMod = 75 + PilotMod_jump_kit PilotMod = 76 + PilotMod_quick_charge PilotMod = 77 + PilotMod_rocket_arena PilotMod = 78 + PilotModCount PilotMod = 79 +) + +var _ fmt.Stringer = PilotMod(0) +var _ fmt.GoStringer = PilotMod(0) + +//var _ encoding.TextMarshaler = PilotMod(0) +var _ encoding.TextUnmarshaler = (*PilotMod)(nil) + +func (v PilotMod) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v PilotMod) GoString() string { + switch v { + case PilotMod_NULL: + return "PilotMod_NULL" + case PilotMod_aog: + return "PilotMod_aog" + case PilotMod_automatic_fire: + return "PilotMod_automatic_fire" + case PilotMod_burn_mod_rspn101: + return "PilotMod_burn_mod_rspn101" + case PilotMod_burn_mod_g2: + return "PilotMod_burn_mod_g2" + case PilotMod_burn_mod_hemlok: + return "PilotMod_burn_mod_hemlok" + case PilotMod_burn_mod_vinson: + return "PilotMod_burn_mod_vinson" + case PilotMod_burn_mod_lstar: + return "PilotMod_burn_mod_lstar" + case PilotMod_burn_mod_car: + return "PilotMod_burn_mod_car" + case PilotMod_burn_mod_r97: + return "PilotMod_burn_mod_r97" + case PilotMod_burn_mod_alternator_smg: + return "PilotMod_burn_mod_alternator_smg" + case PilotMod_burn_mod_lmg: + return "PilotMod_burn_mod_lmg" + case PilotMod_burn_mod_esaw: + return "PilotMod_burn_mod_esaw" + case PilotMod_burn_mod_pulse_lmg: + return "PilotMod_burn_mod_pulse_lmg" + case PilotMod_burn_mod_sniper: + return "PilotMod_burn_mod_sniper" + case PilotMod_burn_mod_dmr: + return "PilotMod_burn_mod_dmr" + case PilotMod_burn_mod_doubletake: + return "PilotMod_burn_mod_doubletake" + case PilotMod_burn_mod_mastiff: + return "PilotMod_burn_mod_mastiff" + case PilotMod_burn_mod_shotgun: + return "PilotMod_burn_mod_shotgun" + case PilotMod_burn_mod_softball: + return "PilotMod_burn_mod_softball" + case PilotMod_burn_mod_shotgun_pistol: + return "PilotMod_burn_mod_shotgun_pistol" + case PilotMod_burn_mod_autopistol: + return "PilotMod_burn_mod_autopistol" + case PilotMod_burn_mod_wingman: + return "PilotMod_burn_mod_wingman" + case PilotMod_burn_mod_semipistol: + return "PilotMod_burn_mod_semipistol" + case PilotMod_burn_mod_smart_pistol: + return "PilotMod_burn_mod_smart_pistol" + case PilotMod_burn_mod_emp_grenade: + return "PilotMod_burn_mod_emp_grenade" + case PilotMod_burn_mod_frag_grenade: + return "PilotMod_burn_mod_frag_grenade" + case PilotMod_burn_mod_satchel: + return "PilotMod_burn_mod_satchel" + case PilotMod_burn_mod_proximity_mine: + return "PilotMod_burn_mod_proximity_mine" + case PilotMod_burn_mod_grenade_electric_smoke: + return "PilotMod_burn_mod_grenade_electric_smoke" + case PilotMod_burn_mod_grenade_gravity: + return "PilotMod_burn_mod_grenade_gravity" + case PilotMod_burn_mod_thermite_grenade: + return "PilotMod_burn_mod_thermite_grenade" + case PilotMod_burn_mod_defender: + return "PilotMod_burn_mod_defender" + case PilotMod_burn_mod_rocket_launcher: + return "PilotMod_burn_mod_rocket_launcher" + case PilotMod_burn_mod_arc_launcher: + return "PilotMod_burn_mod_arc_launcher" + case PilotMod_burn_mod_smr: + return "PilotMod_burn_mod_smr" + case PilotMod_burn_mod_mgl: + return "PilotMod_burn_mod_mgl" + case PilotMod_burst: + return "PilotMod_burst" + case PilotMod_enhanced_targeting: + return "PilotMod_enhanced_targeting" + case PilotMod_extended_ammo: + return "PilotMod_extended_ammo" + case PilotMod_fast_lock: + return "PilotMod_fast_lock" + case PilotMod_fast_reload: + return "PilotMod_fast_reload" + case PilotMod_guided_missile: + return "PilotMod_guided_missile" + case PilotMod_hcog: + return "PilotMod_hcog" + case PilotMod_high_density: + return "PilotMod_high_density" + case PilotMod_holosight: + return "PilotMod_holosight" + case PilotMod_iron_sights: + return "PilotMod_iron_sights" + case PilotMod_long_fuse: + return "PilotMod_long_fuse" + case PilotMod_powered_magnets: + return "PilotMod_powered_magnets" + case PilotMod_scope_4x: + return "PilotMod_scope_4x" + case PilotMod_scope_6x: + return "PilotMod_scope_6x" + case PilotMod_scope_8x: + return "PilotMod_scope_8x" + case PilotMod_scope_10x: + return "PilotMod_scope_10x" + case PilotMod_scope_12x: + return "PilotMod_scope_12x" + case PilotMod_silencer: + return "PilotMod_silencer" + case PilotMod_sniper_assist: + return "PilotMod_sniper_assist" + case PilotMod_stabilizer: + return "PilotMod_stabilizer" + case PilotMod_single_shot: + return "PilotMod_single_shot" + case PilotMod_slammer: + return "PilotMod_slammer" + case PilotMod_stabilized_warhead: + return "PilotMod_stabilized_warhead" + case PilotMod_tank_buster: + return "PilotMod_tank_buster" + case PilotMod_amped_wall: + return "PilotMod_amped_wall" + case PilotMod_short_shift: + return "PilotMod_short_shift" + case PilotMod_burn_mod_epg: + return "PilotMod_burn_mod_epg" + case PilotMod_ricochet: + return "PilotMod_ricochet" + case PilotMod_ar_trajectory: + return "PilotMod_ar_trajectory" + case PilotMod_redline_sight: + return "PilotMod_redline_sight" + case PilotMod_threat_scope: + return "PilotMod_threat_scope" + case PilotMod_smart_lock: + return "PilotMod_smart_lock" + case PilotMod_pro_screen: + return "PilotMod_pro_screen" + case PilotMod_delayed_shot: + return "PilotMod_delayed_shot" + case PilotMod_pas_run_and_gun: + return "PilotMod_pas_run_and_gun" + case PilotMod_tactical_cdr_on_kill: + return "PilotMod_tactical_cdr_on_kill" + case PilotMod_pas_fast_ads: + return "PilotMod_pas_fast_ads" + case PilotMod_pas_fast_swap: + return "PilotMod_pas_fast_swap" + case PilotMod_pas_fast_reload: + return "PilotMod_pas_fast_reload" + case PilotMod_jump_kit: + return "PilotMod_jump_kit" + case PilotMod_quick_charge: + return "PilotMod_quick_charge" + case PilotMod_rocket_arena: + return "PilotMod_rocket_arena" + default: + return fmt.Sprintf("%s(%d)", "PilotMod", int(v)) + } +} +func (v PilotMod) MarshalText() ([]byte, error) { + switch v { + case PilotMod_NULL: + return []byte("NULL"), nil + case PilotMod_aog: + return []byte("aog"), nil + case PilotMod_automatic_fire: + return []byte("automatic_fire"), nil + case PilotMod_burn_mod_rspn101: + return []byte("burn_mod_rspn101"), nil + case PilotMod_burn_mod_g2: + return []byte("burn_mod_g2"), nil + case PilotMod_burn_mod_hemlok: + return []byte("burn_mod_hemlok"), nil + case PilotMod_burn_mod_vinson: + return []byte("burn_mod_vinson"), nil + case PilotMod_burn_mod_lstar: + return []byte("burn_mod_lstar"), nil + case PilotMod_burn_mod_car: + return []byte("burn_mod_car"), nil + case PilotMod_burn_mod_r97: + return []byte("burn_mod_r97"), nil + case PilotMod_burn_mod_alternator_smg: + return []byte("burn_mod_alternator_smg"), nil + case PilotMod_burn_mod_lmg: + return []byte("burn_mod_lmg"), nil + case PilotMod_burn_mod_esaw: + return []byte("burn_mod_esaw"), nil + case PilotMod_burn_mod_pulse_lmg: + return []byte("burn_mod_pulse_lmg"), nil + case PilotMod_burn_mod_sniper: + return []byte("burn_mod_sniper"), nil + case PilotMod_burn_mod_dmr: + return []byte("burn_mod_dmr"), nil + case PilotMod_burn_mod_doubletake: + return []byte("burn_mod_doubletake"), nil + case PilotMod_burn_mod_mastiff: + return []byte("burn_mod_mastiff"), nil + case PilotMod_burn_mod_shotgun: + return []byte("burn_mod_shotgun"), nil + case PilotMod_burn_mod_softball: + return []byte("burn_mod_softball"), nil + case PilotMod_burn_mod_shotgun_pistol: + return []byte("burn_mod_shotgun_pistol"), nil + case PilotMod_burn_mod_autopistol: + return []byte("burn_mod_autopistol"), nil + case PilotMod_burn_mod_wingman: + return []byte("burn_mod_wingman"), nil + case PilotMod_burn_mod_semipistol: + return []byte("burn_mod_semipistol"), nil + case PilotMod_burn_mod_smart_pistol: + return []byte("burn_mod_smart_pistol"), nil + case PilotMod_burn_mod_emp_grenade: + return []byte("burn_mod_emp_grenade"), nil + case PilotMod_burn_mod_frag_grenade: + return []byte("burn_mod_frag_grenade"), nil + case PilotMod_burn_mod_satchel: + return []byte("burn_mod_satchel"), nil + case PilotMod_burn_mod_proximity_mine: + return []byte("burn_mod_proximity_mine"), nil + case PilotMod_burn_mod_grenade_electric_smoke: + return []byte("burn_mod_grenade_electric_smoke"), nil + case PilotMod_burn_mod_grenade_gravity: + return []byte("burn_mod_grenade_gravity"), nil + case PilotMod_burn_mod_thermite_grenade: + return []byte("burn_mod_thermite_grenade"), nil + case PilotMod_burn_mod_defender: + return []byte("burn_mod_defender"), nil + case PilotMod_burn_mod_rocket_launcher: + return []byte("burn_mod_rocket_launcher"), nil + case PilotMod_burn_mod_arc_launcher: + return []byte("burn_mod_arc_launcher"), nil + case PilotMod_burn_mod_smr: + return []byte("burn_mod_smr"), nil + case PilotMod_burn_mod_mgl: + return []byte("burn_mod_mgl"), nil + case PilotMod_burst: + return []byte("burst"), nil + case PilotMod_enhanced_targeting: + return []byte("enhanced_targeting"), nil + case PilotMod_extended_ammo: + return []byte("extended_ammo"), nil + case PilotMod_fast_lock: + return []byte("fast_lock"), nil + case PilotMod_fast_reload: + return []byte("fast_reload"), nil + case PilotMod_guided_missile: + return []byte("guided_missile"), nil + case PilotMod_hcog: + return []byte("hcog"), nil + case PilotMod_high_density: + return []byte("high_density"), nil + case PilotMod_holosight: + return []byte("holosight"), nil + case PilotMod_iron_sights: + return []byte("iron_sights"), nil + case PilotMod_long_fuse: + return []byte("long_fuse"), nil + case PilotMod_powered_magnets: + return []byte("powered_magnets"), nil + case PilotMod_scope_4x: + return []byte("scope_4x"), nil + case PilotMod_scope_6x: + return []byte("scope_6x"), nil + case PilotMod_scope_8x: + return []byte("scope_8x"), nil + case PilotMod_scope_10x: + return []byte("scope_10x"), nil + case PilotMod_scope_12x: + return []byte("scope_12x"), nil + case PilotMod_silencer: + return []byte("silencer"), nil + case PilotMod_sniper_assist: + return []byte("sniper_assist"), nil + case PilotMod_stabilizer: + return []byte("stabilizer"), nil + case PilotMod_single_shot: + return []byte("single_shot"), nil + case PilotMod_slammer: + return []byte("slammer"), nil + case PilotMod_stabilized_warhead: + return []byte("stabilized_warhead"), nil + case PilotMod_tank_buster: + return []byte("tank_buster"), nil + case PilotMod_amped_wall: + return []byte("amped_wall"), nil + case PilotMod_short_shift: + return []byte("short_shift"), nil + case PilotMod_burn_mod_epg: + return []byte("burn_mod_epg"), nil + case PilotMod_ricochet: + return []byte("ricochet"), nil + case PilotMod_ar_trajectory: + return []byte("ar_trajectory"), nil + case PilotMod_redline_sight: + return []byte("redline_sight"), nil + case PilotMod_threat_scope: + return []byte("threat_scope"), nil + case PilotMod_smart_lock: + return []byte("smart_lock"), nil + case PilotMod_pro_screen: + return []byte("pro_screen"), nil + case PilotMod_delayed_shot: + return []byte("delayed_shot"), nil + case PilotMod_pas_run_and_gun: + return []byte("pas_run_and_gun"), nil + case PilotMod_tactical_cdr_on_kill: + return []byte("tactical_cdr_on_kill"), nil + case PilotMod_pas_fast_ads: + return []byte("pas_fast_ads"), nil + case PilotMod_pas_fast_swap: + return []byte("pas_fast_swap"), nil + case PilotMod_pas_fast_reload: + return []byte("pas_fast_reload"), nil + case PilotMod_jump_kit: + return []byte("jump_kit"), nil + case PilotMod_quick_charge: + return []byte("quick_charge"), nil + case PilotMod_rocket_arena: + return []byte("rocket_arena"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "PilotMod") + } +} +func (v *PilotMod) UnmarshalText(b []byte) error { + switch string(b) { + case "NULL": + *v = PilotMod_NULL + case "aog": + *v = PilotMod_aog + case "automatic_fire": + *v = PilotMod_automatic_fire + case "burn_mod_rspn101": + *v = PilotMod_burn_mod_rspn101 + case "burn_mod_g2": + *v = PilotMod_burn_mod_g2 + case "burn_mod_hemlok": + *v = PilotMod_burn_mod_hemlok + case "burn_mod_vinson": + *v = PilotMod_burn_mod_vinson + case "burn_mod_lstar": + *v = PilotMod_burn_mod_lstar + case "burn_mod_car": + *v = PilotMod_burn_mod_car + case "burn_mod_r97": + *v = PilotMod_burn_mod_r97 + case "burn_mod_alternator_smg": + *v = PilotMod_burn_mod_alternator_smg + case "burn_mod_lmg": + *v = PilotMod_burn_mod_lmg + case "burn_mod_esaw": + *v = PilotMod_burn_mod_esaw + case "burn_mod_pulse_lmg": + *v = PilotMod_burn_mod_pulse_lmg + case "burn_mod_sniper": + *v = PilotMod_burn_mod_sniper + case "burn_mod_dmr": + *v = PilotMod_burn_mod_dmr + case "burn_mod_doubletake": + *v = PilotMod_burn_mod_doubletake + case "burn_mod_mastiff": + *v = PilotMod_burn_mod_mastiff + case "burn_mod_shotgun": + *v = PilotMod_burn_mod_shotgun + case "burn_mod_softball": + *v = PilotMod_burn_mod_softball + case "burn_mod_shotgun_pistol": + *v = PilotMod_burn_mod_shotgun_pistol + case "burn_mod_autopistol": + *v = PilotMod_burn_mod_autopistol + case "burn_mod_wingman": + *v = PilotMod_burn_mod_wingman + case "burn_mod_semipistol": + *v = PilotMod_burn_mod_semipistol + case "burn_mod_smart_pistol": + *v = PilotMod_burn_mod_smart_pistol + case "burn_mod_emp_grenade": + *v = PilotMod_burn_mod_emp_grenade + case "burn_mod_frag_grenade": + *v = PilotMod_burn_mod_frag_grenade + case "burn_mod_satchel": + *v = PilotMod_burn_mod_satchel + case "burn_mod_proximity_mine": + *v = PilotMod_burn_mod_proximity_mine + case "burn_mod_grenade_electric_smoke": + *v = PilotMod_burn_mod_grenade_electric_smoke + case "burn_mod_grenade_gravity": + *v = PilotMod_burn_mod_grenade_gravity + case "burn_mod_thermite_grenade": + *v = PilotMod_burn_mod_thermite_grenade + case "burn_mod_defender": + *v = PilotMod_burn_mod_defender + case "burn_mod_rocket_launcher": + *v = PilotMod_burn_mod_rocket_launcher + case "burn_mod_arc_launcher": + *v = PilotMod_burn_mod_arc_launcher + case "burn_mod_smr": + *v = PilotMod_burn_mod_smr + case "burn_mod_mgl": + *v = PilotMod_burn_mod_mgl + case "burst": + *v = PilotMod_burst + case "enhanced_targeting": + *v = PilotMod_enhanced_targeting + case "extended_ammo": + *v = PilotMod_extended_ammo + case "fast_lock": + *v = PilotMod_fast_lock + case "fast_reload": + *v = PilotMod_fast_reload + case "guided_missile": + *v = PilotMod_guided_missile + case "hcog": + *v = PilotMod_hcog + case "high_density": + *v = PilotMod_high_density + case "holosight": + *v = PilotMod_holosight + case "iron_sights": + *v = PilotMod_iron_sights + case "long_fuse": + *v = PilotMod_long_fuse + case "powered_magnets": + *v = PilotMod_powered_magnets + case "scope_4x": + *v = PilotMod_scope_4x + case "scope_6x": + *v = PilotMod_scope_6x + case "scope_8x": + *v = PilotMod_scope_8x + case "scope_10x": + *v = PilotMod_scope_10x + case "scope_12x": + *v = PilotMod_scope_12x + case "silencer": + *v = PilotMod_silencer + case "sniper_assist": + *v = PilotMod_sniper_assist + case "stabilizer": + *v = PilotMod_stabilizer + case "single_shot": + *v = PilotMod_single_shot + case "slammer": + *v = PilotMod_slammer + case "stabilized_warhead": + *v = PilotMod_stabilized_warhead + case "tank_buster": + *v = PilotMod_tank_buster + case "amped_wall": + *v = PilotMod_amped_wall + case "short_shift": + *v = PilotMod_short_shift + case "burn_mod_epg": + *v = PilotMod_burn_mod_epg + case "ricochet": + *v = PilotMod_ricochet + case "ar_trajectory": + *v = PilotMod_ar_trajectory + case "redline_sight": + *v = PilotMod_redline_sight + case "threat_scope": + *v = PilotMod_threat_scope + case "smart_lock": + *v = PilotMod_smart_lock + case "pro_screen": + *v = PilotMod_pro_screen + case "delayed_shot": + *v = PilotMod_delayed_shot + case "pas_run_and_gun": + *v = PilotMod_pas_run_and_gun + case "tactical_cdr_on_kill": + *v = PilotMod_tactical_cdr_on_kill + case "pas_fast_ads": + *v = PilotMod_pas_fast_ads + case "pas_fast_swap": + *v = PilotMod_pas_fast_swap + case "pas_fast_reload": + *v = PilotMod_pas_fast_reload + case "jump_kit": + *v = PilotMod_jump_kit + case "quick_charge": + *v = PilotMod_quick_charge + case "rocket_arena": + *v = PilotMod_rocket_arena + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "PilotMod") + } + return nil +} + +type PilotPassive uint8 + +const ( + PilotPassive_NULL PilotPassive = 0 + PilotPassive_pas_stealth_movement PilotPassive = 1 + PilotPassive_pas_ordnance_pack PilotPassive = 2 + PilotPassive_pas_power_cell PilotPassive = 3 + PilotPassive_pas_wallhang PilotPassive = 4 + PilotPassive_pas_fast_health_regen PilotPassive = 5 + PilotPassive_pas_minimap_ai PilotPassive = 6 + PilotPassive_pas_longer_bubble PilotPassive = 7 + PilotPassive_pas_run_and_gun PilotPassive = 8 + PilotPassive_pas_dead_mans_trigger PilotPassive = 9 + PilotPassive_pas_wall_runner PilotPassive = 10 + PilotPassive_pas_fast_hack PilotPassive = 11 + PilotPassive_pas_cloaked_wallrun PilotPassive = 12 + PilotPassive_pas_cloaked_wallhang PilotPassive = 13 + PilotPassive_pas_smoke_sight PilotPassive = 14 + PilotPassive_pas_fast_embark PilotPassive = 15 + PilotPassive_pas_cdr_on_kill PilotPassive = 16 + PilotPassive_pas_at_hunter PilotPassive = 17 + PilotPassive_pas_ordnance_beam PilotPassive = 18 + PilotPassive_pas_fast_rodeo PilotPassive = 19 + PilotPassive_pas_phase_eject PilotPassive = 20 + PilotPassive_pas_ads_hover PilotPassive = 21 + PilotPassive_pas_enemy_death_icons PilotPassive = 22 + PilotPassive_pas_off_the_grid PilotPassive = 23 + PilotPassiveCount PilotPassive = 24 +) + +var _ fmt.Stringer = PilotPassive(0) +var _ fmt.GoStringer = PilotPassive(0) + +//var _ encoding.TextMarshaler = PilotPassive(0) +var _ encoding.TextUnmarshaler = (*PilotPassive)(nil) + +func (v PilotPassive) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v PilotPassive) GoString() string { + switch v { + case PilotPassive_NULL: + return "PilotPassive_NULL" + case PilotPassive_pas_stealth_movement: + return "PilotPassive_pas_stealth_movement" + case PilotPassive_pas_ordnance_pack: + return "PilotPassive_pas_ordnance_pack" + case PilotPassive_pas_power_cell: + return "PilotPassive_pas_power_cell" + case PilotPassive_pas_wallhang: + return "PilotPassive_pas_wallhang" + case PilotPassive_pas_fast_health_regen: + return "PilotPassive_pas_fast_health_regen" + case PilotPassive_pas_minimap_ai: + return "PilotPassive_pas_minimap_ai" + case PilotPassive_pas_longer_bubble: + return "PilotPassive_pas_longer_bubble" + case PilotPassive_pas_run_and_gun: + return "PilotPassive_pas_run_and_gun" + case PilotPassive_pas_dead_mans_trigger: + return "PilotPassive_pas_dead_mans_trigger" + case PilotPassive_pas_wall_runner: + return "PilotPassive_pas_wall_runner" + case PilotPassive_pas_fast_hack: + return "PilotPassive_pas_fast_hack" + case PilotPassive_pas_cloaked_wallrun: + return "PilotPassive_pas_cloaked_wallrun" + case PilotPassive_pas_cloaked_wallhang: + return "PilotPassive_pas_cloaked_wallhang" + case PilotPassive_pas_smoke_sight: + return "PilotPassive_pas_smoke_sight" + case PilotPassive_pas_fast_embark: + return "PilotPassive_pas_fast_embark" + case PilotPassive_pas_cdr_on_kill: + return "PilotPassive_pas_cdr_on_kill" + case PilotPassive_pas_at_hunter: + return "PilotPassive_pas_at_hunter" + case PilotPassive_pas_ordnance_beam: + return "PilotPassive_pas_ordnance_beam" + case PilotPassive_pas_fast_rodeo: + return "PilotPassive_pas_fast_rodeo" + case PilotPassive_pas_phase_eject: + return "PilotPassive_pas_phase_eject" + case PilotPassive_pas_ads_hover: + return "PilotPassive_pas_ads_hover" + case PilotPassive_pas_enemy_death_icons: + return "PilotPassive_pas_enemy_death_icons" + case PilotPassive_pas_off_the_grid: + return "PilotPassive_pas_off_the_grid" + default: + return fmt.Sprintf("%s(%d)", "PilotPassive", int(v)) + } +} +func (v PilotPassive) MarshalText() ([]byte, error) { + switch v { + case PilotPassive_NULL: + return []byte("NULL"), nil + case PilotPassive_pas_stealth_movement: + return []byte("pas_stealth_movement"), nil + case PilotPassive_pas_ordnance_pack: + return []byte("pas_ordnance_pack"), nil + case PilotPassive_pas_power_cell: + return []byte("pas_power_cell"), nil + case PilotPassive_pas_wallhang: + return []byte("pas_wallhang"), nil + case PilotPassive_pas_fast_health_regen: + return []byte("pas_fast_health_regen"), nil + case PilotPassive_pas_minimap_ai: + return []byte("pas_minimap_ai"), nil + case PilotPassive_pas_longer_bubble: + return []byte("pas_longer_bubble"), nil + case PilotPassive_pas_run_and_gun: + return []byte("pas_run_and_gun"), nil + case PilotPassive_pas_dead_mans_trigger: + return []byte("pas_dead_mans_trigger"), nil + case PilotPassive_pas_wall_runner: + return []byte("pas_wall_runner"), nil + case PilotPassive_pas_fast_hack: + return []byte("pas_fast_hack"), nil + case PilotPassive_pas_cloaked_wallrun: + return []byte("pas_cloaked_wallrun"), nil + case PilotPassive_pas_cloaked_wallhang: + return []byte("pas_cloaked_wallhang"), nil + case PilotPassive_pas_smoke_sight: + return []byte("pas_smoke_sight"), nil + case PilotPassive_pas_fast_embark: + return []byte("pas_fast_embark"), nil + case PilotPassive_pas_cdr_on_kill: + return []byte("pas_cdr_on_kill"), nil + case PilotPassive_pas_at_hunter: + return []byte("pas_at_hunter"), nil + case PilotPassive_pas_ordnance_beam: + return []byte("pas_ordnance_beam"), nil + case PilotPassive_pas_fast_rodeo: + return []byte("pas_fast_rodeo"), nil + case PilotPassive_pas_phase_eject: + return []byte("pas_phase_eject"), nil + case PilotPassive_pas_ads_hover: + return []byte("pas_ads_hover"), nil + case PilotPassive_pas_enemy_death_icons: + return []byte("pas_enemy_death_icons"), nil + case PilotPassive_pas_off_the_grid: + return []byte("pas_off_the_grid"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "PilotPassive") + } +} +func (v *PilotPassive) UnmarshalText(b []byte) error { + switch string(b) { + case "NULL": + *v = PilotPassive_NULL + case "pas_stealth_movement": + *v = PilotPassive_pas_stealth_movement + case "pas_ordnance_pack": + *v = PilotPassive_pas_ordnance_pack + case "pas_power_cell": + *v = PilotPassive_pas_power_cell + case "pas_wallhang": + *v = PilotPassive_pas_wallhang + case "pas_fast_health_regen": + *v = PilotPassive_pas_fast_health_regen + case "pas_minimap_ai": + *v = PilotPassive_pas_minimap_ai + case "pas_longer_bubble": + *v = PilotPassive_pas_longer_bubble + case "pas_run_and_gun": + *v = PilotPassive_pas_run_and_gun + case "pas_dead_mans_trigger": + *v = PilotPassive_pas_dead_mans_trigger + case "pas_wall_runner": + *v = PilotPassive_pas_wall_runner + case "pas_fast_hack": + *v = PilotPassive_pas_fast_hack + case "pas_cloaked_wallrun": + *v = PilotPassive_pas_cloaked_wallrun + case "pas_cloaked_wallhang": + *v = PilotPassive_pas_cloaked_wallhang + case "pas_smoke_sight": + *v = PilotPassive_pas_smoke_sight + case "pas_fast_embark": + *v = PilotPassive_pas_fast_embark + case "pas_cdr_on_kill": + *v = PilotPassive_pas_cdr_on_kill + case "pas_at_hunter": + *v = PilotPassive_pas_at_hunter + case "pas_ordnance_beam": + *v = PilotPassive_pas_ordnance_beam + case "pas_fast_rodeo": + *v = PilotPassive_pas_fast_rodeo + case "pas_phase_eject": + *v = PilotPassive_pas_phase_eject + case "pas_ads_hover": + *v = PilotPassive_pas_ads_hover + case "pas_enemy_death_icons": + *v = PilotPassive_pas_enemy_death_icons + case "pas_off_the_grid": + *v = PilotPassive_pas_off_the_grid + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "PilotPassive") + } + return nil +} + +type PilotRace uint8 + +const ( + PilotRace_race_human_male PilotRace = 0 + PilotRace_race_human_female PilotRace = 1 + PilotRaceCount PilotRace = 2 +) + +var _ fmt.Stringer = PilotRace(0) +var _ fmt.GoStringer = PilotRace(0) + +//var _ encoding.TextMarshaler = PilotRace(0) +var _ encoding.TextUnmarshaler = (*PilotRace)(nil) + +func (v PilotRace) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v PilotRace) GoString() string { + switch v { + case PilotRace_race_human_male: + return "PilotRace_race_human_male" + case PilotRace_race_human_female: + return "PilotRace_race_human_female" + default: + return fmt.Sprintf("%s(%d)", "PilotRace", int(v)) + } +} +func (v PilotRace) MarshalText() ([]byte, error) { + switch v { + case PilotRace_race_human_male: + return []byte("race_human_male"), nil + case PilotRace_race_human_female: + return []byte("race_human_female"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "PilotRace") + } +} +func (v *PilotRace) UnmarshalText(b []byte) error { + switch string(b) { + case "race_human_male": + *v = PilotRace_race_human_male + case "race_human_female": + *v = PilotRace_race_human_female + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "PilotRace") + } + return nil +} + +type PilotSuit uint8 + +const ( + PilotSuit_medium PilotSuit = 0 + PilotSuit_geist PilotSuit = 1 + PilotSuit_stalker PilotSuit = 2 + PilotSuit_light PilotSuit = 3 + PilotSuit_heavy PilotSuit = 4 + PilotSuit_grapple PilotSuit = 5 + PilotSuit_nomad PilotSuit = 6 + PilotSuitCount PilotSuit = 7 +) + +var _ fmt.Stringer = PilotSuit(0) +var _ fmt.GoStringer = PilotSuit(0) + +//var _ encoding.TextMarshaler = PilotSuit(0) +var _ encoding.TextUnmarshaler = (*PilotSuit)(nil) + +func (v PilotSuit) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v PilotSuit) GoString() string { + switch v { + case PilotSuit_medium: + return "PilotSuit_medium" + case PilotSuit_geist: + return "PilotSuit_geist" + case PilotSuit_stalker: + return "PilotSuit_stalker" + case PilotSuit_light: + return "PilotSuit_light" + case PilotSuit_heavy: + return "PilotSuit_heavy" + case PilotSuit_grapple: + return "PilotSuit_grapple" + case PilotSuit_nomad: + return "PilotSuit_nomad" + default: + return fmt.Sprintf("%s(%d)", "PilotSuit", int(v)) + } +} +func (v PilotSuit) MarshalText() ([]byte, error) { + switch v { + case PilotSuit_medium: + return []byte("medium"), nil + case PilotSuit_geist: + return []byte("geist"), nil + case PilotSuit_stalker: + return []byte("stalker"), nil + case PilotSuit_light: + return []byte("light"), nil + case PilotSuit_heavy: + return []byte("heavy"), nil + case PilotSuit_grapple: + return []byte("grapple"), nil + case PilotSuit_nomad: + return []byte("nomad"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "PilotSuit") + } +} +func (v *PilotSuit) UnmarshalText(b []byte) error { + switch string(b) { + case "medium": + *v = PilotSuit_medium + case "geist": + *v = PilotSuit_geist + case "stalker": + *v = PilotSuit_stalker + case "light": + *v = PilotSuit_light + case "heavy": + *v = PilotSuit_heavy + case "grapple": + *v = PilotSuit_grapple + case "nomad": + *v = PilotSuit_nomad + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "PilotSuit") + } + return nil +} + +type TitanClasses uint8 + +const ( + TitanClasses_ion TitanClasses = 0 + TitanClasses_scorch TitanClasses = 1 + TitanClasses_ronin TitanClasses = 2 + TitanClasses_tone TitanClasses = 3 + TitanClasses_northstar TitanClasses = 4 + TitanClasses_legion TitanClasses = 5 + TitanClasses_vanguard TitanClasses = 6 + TitanClassesCount TitanClasses = 7 +) + +var _ fmt.Stringer = TitanClasses(0) +var _ fmt.GoStringer = TitanClasses(0) + +//var _ encoding.TextMarshaler = TitanClasses(0) +var _ encoding.TextUnmarshaler = (*TitanClasses)(nil) + +func (v TitanClasses) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v TitanClasses) GoString() string { + switch v { + case TitanClasses_ion: + return "TitanClasses_ion" + case TitanClasses_scorch: + return "TitanClasses_scorch" + case TitanClasses_ronin: + return "TitanClasses_ronin" + case TitanClasses_tone: + return "TitanClasses_tone" + case TitanClasses_northstar: + return "TitanClasses_northstar" + case TitanClasses_legion: + return "TitanClasses_legion" + case TitanClasses_vanguard: + return "TitanClasses_vanguard" + default: + return fmt.Sprintf("%s(%d)", "TitanClasses", int(v)) + } +} +func (v TitanClasses) MarshalText() ([]byte, error) { + switch v { + case TitanClasses_ion: + return []byte("ion"), nil + case TitanClasses_scorch: + return []byte("scorch"), nil + case TitanClasses_ronin: + return []byte("ronin"), nil + case TitanClasses_tone: + return []byte("tone"), nil + case TitanClasses_northstar: + return []byte("northstar"), nil + case TitanClasses_legion: + return []byte("legion"), nil + case TitanClasses_vanguard: + return []byte("vanguard"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "TitanClasses") + } +} +func (v *TitanClasses) UnmarshalText(b []byte) error { + switch string(b) { + case "ion": + *v = TitanClasses_ion + case "scorch": + *v = TitanClasses_scorch + case "ronin": + *v = TitanClasses_ronin + case "tone": + *v = TitanClasses_tone + case "northstar": + *v = TitanClasses_northstar + case "legion": + *v = TitanClasses_legion + case "vanguard": + *v = TitanClasses_vanguard + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "TitanClasses") + } + return nil +} + +type TitanExecution uint8 + +const ( + TitanExecution_execution_ion TitanExecution = 0 + TitanExecution_execution_ion_prime TitanExecution = 1 + TitanExecution_execution_tone TitanExecution = 2 + TitanExecution_execution_tone_prime TitanExecution = 3 + TitanExecution_execution_ronin TitanExecution = 4 + TitanExecution_execution_ronin_prime TitanExecution = 5 + TitanExecution_execution_northstar TitanExecution = 6 + TitanExecution_execution_northstar_prime TitanExecution = 7 + TitanExecution_execution_legion TitanExecution = 8 + TitanExecution_execution_legion_prime TitanExecution = 9 + TitanExecution_execution_vanguard TitanExecution = 10 + TitanExecution_execution_scorch TitanExecution = 11 + TitanExecution_execution_scorch_prime TitanExecution = 12 + TitanExecution_execution_random_0 TitanExecution = 13 + TitanExecution_execution_random_1 TitanExecution = 14 + TitanExecution_execution_random_2 TitanExecution = 15 + TitanExecution_execution_random_3 TitanExecution = 16 + TitanExecution_execution_random_4 TitanExecution = 17 + TitanExecution_execution_random_5 TitanExecution = 18 + TitanExecution_execution_random_6 TitanExecution = 19 + TitanExecutionCount TitanExecution = 20 +) + +var _ fmt.Stringer = TitanExecution(0) +var _ fmt.GoStringer = TitanExecution(0) + +//var _ encoding.TextMarshaler = TitanExecution(0) +var _ encoding.TextUnmarshaler = (*TitanExecution)(nil) + +func (v TitanExecution) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v TitanExecution) GoString() string { + switch v { + case TitanExecution_execution_ion: + return "TitanExecution_execution_ion" + case TitanExecution_execution_ion_prime: + return "TitanExecution_execution_ion_prime" + case TitanExecution_execution_tone: + return "TitanExecution_execution_tone" + case TitanExecution_execution_tone_prime: + return "TitanExecution_execution_tone_prime" + case TitanExecution_execution_ronin: + return "TitanExecution_execution_ronin" + case TitanExecution_execution_ronin_prime: + return "TitanExecution_execution_ronin_prime" + case TitanExecution_execution_northstar: + return "TitanExecution_execution_northstar" + case TitanExecution_execution_northstar_prime: + return "TitanExecution_execution_northstar_prime" + case TitanExecution_execution_legion: + return "TitanExecution_execution_legion" + case TitanExecution_execution_legion_prime: + return "TitanExecution_execution_legion_prime" + case TitanExecution_execution_vanguard: + return "TitanExecution_execution_vanguard" + case TitanExecution_execution_scorch: + return "TitanExecution_execution_scorch" + case TitanExecution_execution_scorch_prime: + return "TitanExecution_execution_scorch_prime" + case TitanExecution_execution_random_0: + return "TitanExecution_execution_random_0" + case TitanExecution_execution_random_1: + return "TitanExecution_execution_random_1" + case TitanExecution_execution_random_2: + return "TitanExecution_execution_random_2" + case TitanExecution_execution_random_3: + return "TitanExecution_execution_random_3" + case TitanExecution_execution_random_4: + return "TitanExecution_execution_random_4" + case TitanExecution_execution_random_5: + return "TitanExecution_execution_random_5" + case TitanExecution_execution_random_6: + return "TitanExecution_execution_random_6" + default: + return fmt.Sprintf("%s(%d)", "TitanExecution", int(v)) + } +} +func (v TitanExecution) MarshalText() ([]byte, error) { + switch v { + case TitanExecution_execution_ion: + return []byte("execution_ion"), nil + case TitanExecution_execution_ion_prime: + return []byte("execution_ion_prime"), nil + case TitanExecution_execution_tone: + return []byte("execution_tone"), nil + case TitanExecution_execution_tone_prime: + return []byte("execution_tone_prime"), nil + case TitanExecution_execution_ronin: + return []byte("execution_ronin"), nil + case TitanExecution_execution_ronin_prime: + return []byte("execution_ronin_prime"), nil + case TitanExecution_execution_northstar: + return []byte("execution_northstar"), nil + case TitanExecution_execution_northstar_prime: + return []byte("execution_northstar_prime"), nil + case TitanExecution_execution_legion: + return []byte("execution_legion"), nil + case TitanExecution_execution_legion_prime: + return []byte("execution_legion_prime"), nil + case TitanExecution_execution_vanguard: + return []byte("execution_vanguard"), nil + case TitanExecution_execution_scorch: + return []byte("execution_scorch"), nil + case TitanExecution_execution_scorch_prime: + return []byte("execution_scorch_prime"), nil + case TitanExecution_execution_random_0: + return []byte("execution_random_0"), nil + case TitanExecution_execution_random_1: + return []byte("execution_random_1"), nil + case TitanExecution_execution_random_2: + return []byte("execution_random_2"), nil + case TitanExecution_execution_random_3: + return []byte("execution_random_3"), nil + case TitanExecution_execution_random_4: + return []byte("execution_random_4"), nil + case TitanExecution_execution_random_5: + return []byte("execution_random_5"), nil + case TitanExecution_execution_random_6: + return []byte("execution_random_6"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "TitanExecution") + } +} +func (v *TitanExecution) UnmarshalText(b []byte) error { + switch string(b) { + case "execution_ion": + *v = TitanExecution_execution_ion + case "execution_ion_prime": + *v = TitanExecution_execution_ion_prime + case "execution_tone": + *v = TitanExecution_execution_tone + case "execution_tone_prime": + *v = TitanExecution_execution_tone_prime + case "execution_ronin": + *v = TitanExecution_execution_ronin + case "execution_ronin_prime": + *v = TitanExecution_execution_ronin_prime + case "execution_northstar": + *v = TitanExecution_execution_northstar + case "execution_northstar_prime": + *v = TitanExecution_execution_northstar_prime + case "execution_legion": + *v = TitanExecution_execution_legion + case "execution_legion_prime": + *v = TitanExecution_execution_legion_prime + case "execution_vanguard": + *v = TitanExecution_execution_vanguard + case "execution_scorch": + *v = TitanExecution_execution_scorch + case "execution_scorch_prime": + *v = TitanExecution_execution_scorch_prime + case "execution_random_0": + *v = TitanExecution_execution_random_0 + case "execution_random_1": + *v = TitanExecution_execution_random_1 + case "execution_random_2": + *v = TitanExecution_execution_random_2 + case "execution_random_3": + *v = TitanExecution_execution_random_3 + case "execution_random_4": + *v = TitanExecution_execution_random_4 + case "execution_random_5": + *v = TitanExecution_execution_random_5 + case "execution_random_6": + *v = TitanExecution_execution_random_6 + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "TitanExecution") + } + return nil +} + +type TitanIsPrimeTitan uint8 + +const ( + TitanIsPrimeTitan_titan_is_not_prime TitanIsPrimeTitan = 0 + TitanIsPrimeTitan_titan_is_prime TitanIsPrimeTitan = 1 + TitanIsPrimeTitanCount TitanIsPrimeTitan = 2 +) + +var _ fmt.Stringer = TitanIsPrimeTitan(0) +var _ fmt.GoStringer = TitanIsPrimeTitan(0) + +//var _ encoding.TextMarshaler = TitanIsPrimeTitan(0) +var _ encoding.TextUnmarshaler = (*TitanIsPrimeTitan)(nil) + +func (v TitanIsPrimeTitan) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v TitanIsPrimeTitan) GoString() string { + switch v { + case TitanIsPrimeTitan_titan_is_not_prime: + return "TitanIsPrimeTitan_titan_is_not_prime" + case TitanIsPrimeTitan_titan_is_prime: + return "TitanIsPrimeTitan_titan_is_prime" + default: + return fmt.Sprintf("%s(%d)", "TitanIsPrimeTitan", int(v)) + } +} +func (v TitanIsPrimeTitan) MarshalText() ([]byte, error) { + switch v { + case TitanIsPrimeTitan_titan_is_not_prime: + return []byte("titan_is_not_prime"), nil + case TitanIsPrimeTitan_titan_is_prime: + return []byte("titan_is_prime"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "TitanIsPrimeTitan") + } +} +func (v *TitanIsPrimeTitan) UnmarshalText(b []byte) error { + switch string(b) { + case "titan_is_not_prime": + *v = TitanIsPrimeTitan_titan_is_not_prime + case "titan_is_prime": + *v = TitanIsPrimeTitan_titan_is_prime + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "TitanIsPrimeTitan") + } + return nil +} + +type TitanMod uint8 + +const ( + TitanMod_NULL TitanMod = 0 + TitanMod_accelerator TitanMod = 1 + TitanMod_afterburners TitanMod = 2 + TitanMod_arc_triple_threat TitanMod = 3 + TitanMod_burn_mod_titan_40mm TitanMod = 4 + TitanMod_burn_mod_titan_arc_cannon TitanMod = 5 + TitanMod_burn_mod_titan_sniper TitanMod = 6 + TitanMod_burn_mod_titan_triple_threat TitanMod = 7 + TitanMod_burn_mod_titan_xo16 TitanMod = 8 + TitanMod_burn_mod_titan_dumbfire_rockets TitanMod = 9 + TitanMod_burn_mod_titan_homing_rockets TitanMod = 10 + TitanMod_burn_mod_titan_salvo_rockets TitanMod = 11 + TitanMod_burn_mod_titan_shoulder_rockets TitanMod = 12 + TitanMod_burn_mod_titan_vortex_shield TitanMod = 13 + TitanMod_burn_mod_titan_smoke TitanMod = 14 + TitanMod_burn_mod_titan_particle_wall TitanMod = 15 + TitanMod_burst TitanMod = 16 + TitanMod_capacitor TitanMod = 17 + TitanMod_extended_ammo TitanMod = 18 + TitanMod_fast_lock TitanMod = 19 + TitanMod_fast_reload TitanMod = 20 + TitanMod_instant_shot TitanMod = 21 + TitanMod_overcharge TitanMod = 22 + TitanMod_quick_shot TitanMod = 23 + TitanMod_rapid_fire_missiles TitanMod = 24 + TitanMod_stryder_sniper TitanMod = 25 + TitanModCount TitanMod = 26 +) + +var _ fmt.Stringer = TitanMod(0) +var _ fmt.GoStringer = TitanMod(0) + +//var _ encoding.TextMarshaler = TitanMod(0) +var _ encoding.TextUnmarshaler = (*TitanMod)(nil) + +func (v TitanMod) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v TitanMod) GoString() string { + switch v { + case TitanMod_NULL: + return "TitanMod_NULL" + case TitanMod_accelerator: + return "TitanMod_accelerator" + case TitanMod_afterburners: + return "TitanMod_afterburners" + case TitanMod_arc_triple_threat: + return "TitanMod_arc_triple_threat" + case TitanMod_burn_mod_titan_40mm: + return "TitanMod_burn_mod_titan_40mm" + case TitanMod_burn_mod_titan_arc_cannon: + return "TitanMod_burn_mod_titan_arc_cannon" + case TitanMod_burn_mod_titan_sniper: + return "TitanMod_burn_mod_titan_sniper" + case TitanMod_burn_mod_titan_triple_threat: + return "TitanMod_burn_mod_titan_triple_threat" + case TitanMod_burn_mod_titan_xo16: + return "TitanMod_burn_mod_titan_xo16" + case TitanMod_burn_mod_titan_dumbfire_rockets: + return "TitanMod_burn_mod_titan_dumbfire_rockets" + case TitanMod_burn_mod_titan_homing_rockets: + return "TitanMod_burn_mod_titan_homing_rockets" + case TitanMod_burn_mod_titan_salvo_rockets: + return "TitanMod_burn_mod_titan_salvo_rockets" + case TitanMod_burn_mod_titan_shoulder_rockets: + return "TitanMod_burn_mod_titan_shoulder_rockets" + case TitanMod_burn_mod_titan_vortex_shield: + return "TitanMod_burn_mod_titan_vortex_shield" + case TitanMod_burn_mod_titan_smoke: + return "TitanMod_burn_mod_titan_smoke" + case TitanMod_burn_mod_titan_particle_wall: + return "TitanMod_burn_mod_titan_particle_wall" + case TitanMod_burst: + return "TitanMod_burst" + case TitanMod_capacitor: + return "TitanMod_capacitor" + case TitanMod_extended_ammo: + return "TitanMod_extended_ammo" + case TitanMod_fast_lock: + return "TitanMod_fast_lock" + case TitanMod_fast_reload: + return "TitanMod_fast_reload" + case TitanMod_instant_shot: + return "TitanMod_instant_shot" + case TitanMod_overcharge: + return "TitanMod_overcharge" + case TitanMod_quick_shot: + return "TitanMod_quick_shot" + case TitanMod_rapid_fire_missiles: + return "TitanMod_rapid_fire_missiles" + case TitanMod_stryder_sniper: + return "TitanMod_stryder_sniper" + default: + return fmt.Sprintf("%s(%d)", "TitanMod", int(v)) + } +} +func (v TitanMod) MarshalText() ([]byte, error) { + switch v { + case TitanMod_NULL: + return []byte("NULL"), nil + case TitanMod_accelerator: + return []byte("accelerator"), nil + case TitanMod_afterburners: + return []byte("afterburners"), nil + case TitanMod_arc_triple_threat: + return []byte("arc_triple_threat"), nil + case TitanMod_burn_mod_titan_40mm: + return []byte("burn_mod_titan_40mm"), nil + case TitanMod_burn_mod_titan_arc_cannon: + return []byte("burn_mod_titan_arc_cannon"), nil + case TitanMod_burn_mod_titan_sniper: + return []byte("burn_mod_titan_sniper"), nil + case TitanMod_burn_mod_titan_triple_threat: + return []byte("burn_mod_titan_triple_threat"), nil + case TitanMod_burn_mod_titan_xo16: + return []byte("burn_mod_titan_xo16"), nil + case TitanMod_burn_mod_titan_dumbfire_rockets: + return []byte("burn_mod_titan_dumbfire_rockets"), nil + case TitanMod_burn_mod_titan_homing_rockets: + return []byte("burn_mod_titan_homing_rockets"), nil + case TitanMod_burn_mod_titan_salvo_rockets: + return []byte("burn_mod_titan_salvo_rockets"), nil + case TitanMod_burn_mod_titan_shoulder_rockets: + return []byte("burn_mod_titan_shoulder_rockets"), nil + case TitanMod_burn_mod_titan_vortex_shield: + return []byte("burn_mod_titan_vortex_shield"), nil + case TitanMod_burn_mod_titan_smoke: + return []byte("burn_mod_titan_smoke"), nil + case TitanMod_burn_mod_titan_particle_wall: + return []byte("burn_mod_titan_particle_wall"), nil + case TitanMod_burst: + return []byte("burst"), nil + case TitanMod_capacitor: + return []byte("capacitor"), nil + case TitanMod_extended_ammo: + return []byte("extended_ammo"), nil + case TitanMod_fast_lock: + return []byte("fast_lock"), nil + case TitanMod_fast_reload: + return []byte("fast_reload"), nil + case TitanMod_instant_shot: + return []byte("instant_shot"), nil + case TitanMod_overcharge: + return []byte("overcharge"), nil + case TitanMod_quick_shot: + return []byte("quick_shot"), nil + case TitanMod_rapid_fire_missiles: + return []byte("rapid_fire_missiles"), nil + case TitanMod_stryder_sniper: + return []byte("stryder_sniper"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "TitanMod") + } +} +func (v *TitanMod) UnmarshalText(b []byte) error { + switch string(b) { + case "NULL": + *v = TitanMod_NULL + case "accelerator": + *v = TitanMod_accelerator + case "afterburners": + *v = TitanMod_afterburners + case "arc_triple_threat": + *v = TitanMod_arc_triple_threat + case "burn_mod_titan_40mm": + *v = TitanMod_burn_mod_titan_40mm + case "burn_mod_titan_arc_cannon": + *v = TitanMod_burn_mod_titan_arc_cannon + case "burn_mod_titan_sniper": + *v = TitanMod_burn_mod_titan_sniper + case "burn_mod_titan_triple_threat": + *v = TitanMod_burn_mod_titan_triple_threat + case "burn_mod_titan_xo16": + *v = TitanMod_burn_mod_titan_xo16 + case "burn_mod_titan_dumbfire_rockets": + *v = TitanMod_burn_mod_titan_dumbfire_rockets + case "burn_mod_titan_homing_rockets": + *v = TitanMod_burn_mod_titan_homing_rockets + case "burn_mod_titan_salvo_rockets": + *v = TitanMod_burn_mod_titan_salvo_rockets + case "burn_mod_titan_shoulder_rockets": + *v = TitanMod_burn_mod_titan_shoulder_rockets + case "burn_mod_titan_vortex_shield": + *v = TitanMod_burn_mod_titan_vortex_shield + case "burn_mod_titan_smoke": + *v = TitanMod_burn_mod_titan_smoke + case "burn_mod_titan_particle_wall": + *v = TitanMod_burn_mod_titan_particle_wall + case "burst": + *v = TitanMod_burst + case "capacitor": + *v = TitanMod_capacitor + case "extended_ammo": + *v = TitanMod_extended_ammo + case "fast_lock": + *v = TitanMod_fast_lock + case "fast_reload": + *v = TitanMod_fast_reload + case "instant_shot": + *v = TitanMod_instant_shot + case "overcharge": + *v = TitanMod_overcharge + case "quick_shot": + *v = TitanMod_quick_shot + case "rapid_fire_missiles": + *v = TitanMod_rapid_fire_missiles + case "stryder_sniper": + *v = TitanMod_stryder_sniper + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "TitanMod") + } + return nil +} + +type TitanPassive uint8 + +const ( + TitanPassive_NULL TitanPassive = 0 + TitanPassive_pas_enhanced_titan_ai TitanPassive = 1 + TitanPassive_pas_auto_eject TitanPassive = 2 + TitanPassive_pas_dash_recharge TitanPassive = 3 + TitanPassive_pas_defensive_core TitanPassive = 4 + TitanPassive_pas_shield_regen TitanPassive = 5 + TitanPassive_pas_assault_reactor TitanPassive = 6 + TitanPassive_pas_hyper_core TitanPassive = 7 + TitanPassive_pas_anti_rodeo TitanPassive = 8 + TitanPassive_pas_build_up_nuclear_core TitanPassive = 9 + TitanPassive_pas_offensive_autoload TitanPassive = 10 + TitanPassive_pas_offensive_hitnrun TitanPassive = 11 + TitanPassive_pas_offensive_regen TitanPassive = 12 + TitanPassive_pas_defensive_tacload TitanPassive = 13 + TitanPassive_pas_defensive_quickdash TitanPassive = 14 + TitanPassive_pas_defensive_domeshield TitanPassive = 15 + TitanPassive_pas_mobility_dash_capacity TitanPassive = 16 + TitanPassive_pas_warpfall TitanPassive = 17 + TitanPassive_pas_bubbleshield TitanPassive = 18 + TitanPassive_pas_ronin_weapon TitanPassive = 19 + TitanPassive_pas_northstar_weapon TitanPassive = 20 + TitanPassive_pas_ion_weapon TitanPassive = 21 + TitanPassive_pas_tone_weapon TitanPassive = 22 + TitanPassive_pas_scorch_weapon TitanPassive = 23 + TitanPassive_pas_legion_weapon TitanPassive = 24 + TitanPassive_pas_ion_tripwire TitanPassive = 25 + TitanPassive_pas_ion_vortex TitanPassive = 26 + TitanPassive_pas_ion_lasercannon TitanPassive = 27 + TitanPassive_pas_tone_rockets TitanPassive = 28 + TitanPassive_pas_tone_sonar TitanPassive = 29 + TitanPassive_pas_tone_wall TitanPassive = 30 + TitanPassive_pas_ronin_arcwave TitanPassive = 31 + TitanPassive_pas_ronin_phase TitanPassive = 32 + TitanPassive_pas_ronin_swordcore TitanPassive = 33 + TitanPassive_pas_northstar_cluster TitanPassive = 34 + TitanPassive_pas_northstar_trap TitanPassive = 35 + TitanPassive_pas_northstar_flightcore TitanPassive = 36 + TitanPassive_pas_scorch_firewall TitanPassive = 37 + TitanPassive_pas_scorch_shield TitanPassive = 38 + TitanPassive_pas_scorch_selfdmg TitanPassive = 39 + TitanPassive_pas_legion_spinup TitanPassive = 40 + TitanPassive_pas_legion_gunshield TitanPassive = 41 + TitanPassive_pas_legion_smartcore TitanPassive = 42 + TitanPassive_pas_ion_weapon_ads TitanPassive = 43 + TitanPassive_pas_tone_burst TitanPassive = 44 + TitanPassive_pas_legion_chargeshot TitanPassive = 45 + TitanPassive_pas_ronin_autoshift TitanPassive = 46 + TitanPassive_pas_northstar_optics TitanPassive = 47 + TitanPassive_pas_scorch_flamecore TitanPassive = 48 + TitanPassive_pas_vanguard_coremeter TitanPassive = 49 + TitanPassive_pas_vanguard_shield TitanPassive = 50 + TitanPassive_pas_vanguard_rearm TitanPassive = 51 + TitanPassive_pas_vanguard_doom TitanPassive = 52 + TitanPassive_pas_vanguard_core1 TitanPassive = 53 + TitanPassive_pas_vanguard_core2 TitanPassive = 54 + TitanPassive_pas_vanguard_core3 TitanPassive = 55 + TitanPassive_pas_vanguard_core4 TitanPassive = 56 + TitanPassive_pas_vanguard_core5 TitanPassive = 57 + TitanPassive_pas_vanguard_core6 TitanPassive = 58 + TitanPassive_pas_vanguard_core7 TitanPassive = 59 + TitanPassive_pas_vanguard_core8 TitanPassive = 60 + TitanPassive_pas_vanguard_core9 TitanPassive = 61 + TitanPassiveCount TitanPassive = 62 +) + +var _ fmt.Stringer = TitanPassive(0) +var _ fmt.GoStringer = TitanPassive(0) + +//var _ encoding.TextMarshaler = TitanPassive(0) +var _ encoding.TextUnmarshaler = (*TitanPassive)(nil) + +func (v TitanPassive) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v TitanPassive) GoString() string { + switch v { + case TitanPassive_NULL: + return "TitanPassive_NULL" + case TitanPassive_pas_enhanced_titan_ai: + return "TitanPassive_pas_enhanced_titan_ai" + case TitanPassive_pas_auto_eject: + return "TitanPassive_pas_auto_eject" + case TitanPassive_pas_dash_recharge: + return "TitanPassive_pas_dash_recharge" + case TitanPassive_pas_defensive_core: + return "TitanPassive_pas_defensive_core" + case TitanPassive_pas_shield_regen: + return "TitanPassive_pas_shield_regen" + case TitanPassive_pas_assault_reactor: + return "TitanPassive_pas_assault_reactor" + case TitanPassive_pas_hyper_core: + return "TitanPassive_pas_hyper_core" + case TitanPassive_pas_anti_rodeo: + return "TitanPassive_pas_anti_rodeo" + case TitanPassive_pas_build_up_nuclear_core: + return "TitanPassive_pas_build_up_nuclear_core" + case TitanPassive_pas_offensive_autoload: + return "TitanPassive_pas_offensive_autoload" + case TitanPassive_pas_offensive_hitnrun: + return "TitanPassive_pas_offensive_hitnrun" + case TitanPassive_pas_offensive_regen: + return "TitanPassive_pas_offensive_regen" + case TitanPassive_pas_defensive_tacload: + return "TitanPassive_pas_defensive_tacload" + case TitanPassive_pas_defensive_quickdash: + return "TitanPassive_pas_defensive_quickdash" + case TitanPassive_pas_defensive_domeshield: + return "TitanPassive_pas_defensive_domeshield" + case TitanPassive_pas_mobility_dash_capacity: + return "TitanPassive_pas_mobility_dash_capacity" + case TitanPassive_pas_warpfall: + return "TitanPassive_pas_warpfall" + case TitanPassive_pas_bubbleshield: + return "TitanPassive_pas_bubbleshield" + case TitanPassive_pas_ronin_weapon: + return "TitanPassive_pas_ronin_weapon" + case TitanPassive_pas_northstar_weapon: + return "TitanPassive_pas_northstar_weapon" + case TitanPassive_pas_ion_weapon: + return "TitanPassive_pas_ion_weapon" + case TitanPassive_pas_tone_weapon: + return "TitanPassive_pas_tone_weapon" + case TitanPassive_pas_scorch_weapon: + return "TitanPassive_pas_scorch_weapon" + case TitanPassive_pas_legion_weapon: + return "TitanPassive_pas_legion_weapon" + case TitanPassive_pas_ion_tripwire: + return "TitanPassive_pas_ion_tripwire" + case TitanPassive_pas_ion_vortex: + return "TitanPassive_pas_ion_vortex" + case TitanPassive_pas_ion_lasercannon: + return "TitanPassive_pas_ion_lasercannon" + case TitanPassive_pas_tone_rockets: + return "TitanPassive_pas_tone_rockets" + case TitanPassive_pas_tone_sonar: + return "TitanPassive_pas_tone_sonar" + case TitanPassive_pas_tone_wall: + return "TitanPassive_pas_tone_wall" + case TitanPassive_pas_ronin_arcwave: + return "TitanPassive_pas_ronin_arcwave" + case TitanPassive_pas_ronin_phase: + return "TitanPassive_pas_ronin_phase" + case TitanPassive_pas_ronin_swordcore: + return "TitanPassive_pas_ronin_swordcore" + case TitanPassive_pas_northstar_cluster: + return "TitanPassive_pas_northstar_cluster" + case TitanPassive_pas_northstar_trap: + return "TitanPassive_pas_northstar_trap" + case TitanPassive_pas_northstar_flightcore: + return "TitanPassive_pas_northstar_flightcore" + case TitanPassive_pas_scorch_firewall: + return "TitanPassive_pas_scorch_firewall" + case TitanPassive_pas_scorch_shield: + return "TitanPassive_pas_scorch_shield" + case TitanPassive_pas_scorch_selfdmg: + return "TitanPassive_pas_scorch_selfdmg" + case TitanPassive_pas_legion_spinup: + return "TitanPassive_pas_legion_spinup" + case TitanPassive_pas_legion_gunshield: + return "TitanPassive_pas_legion_gunshield" + case TitanPassive_pas_legion_smartcore: + return "TitanPassive_pas_legion_smartcore" + case TitanPassive_pas_ion_weapon_ads: + return "TitanPassive_pas_ion_weapon_ads" + case TitanPassive_pas_tone_burst: + return "TitanPassive_pas_tone_burst" + case TitanPassive_pas_legion_chargeshot: + return "TitanPassive_pas_legion_chargeshot" + case TitanPassive_pas_ronin_autoshift: + return "TitanPassive_pas_ronin_autoshift" + case TitanPassive_pas_northstar_optics: + return "TitanPassive_pas_northstar_optics" + case TitanPassive_pas_scorch_flamecore: + return "TitanPassive_pas_scorch_flamecore" + case TitanPassive_pas_vanguard_coremeter: + return "TitanPassive_pas_vanguard_coremeter" + case TitanPassive_pas_vanguard_shield: + return "TitanPassive_pas_vanguard_shield" + case TitanPassive_pas_vanguard_rearm: + return "TitanPassive_pas_vanguard_rearm" + case TitanPassive_pas_vanguard_doom: + return "TitanPassive_pas_vanguard_doom" + case TitanPassive_pas_vanguard_core1: + return "TitanPassive_pas_vanguard_core1" + case TitanPassive_pas_vanguard_core2: + return "TitanPassive_pas_vanguard_core2" + case TitanPassive_pas_vanguard_core3: + return "TitanPassive_pas_vanguard_core3" + case TitanPassive_pas_vanguard_core4: + return "TitanPassive_pas_vanguard_core4" + case TitanPassive_pas_vanguard_core5: + return "TitanPassive_pas_vanguard_core5" + case TitanPassive_pas_vanguard_core6: + return "TitanPassive_pas_vanguard_core6" + case TitanPassive_pas_vanguard_core7: + return "TitanPassive_pas_vanguard_core7" + case TitanPassive_pas_vanguard_core8: + return "TitanPassive_pas_vanguard_core8" + case TitanPassive_pas_vanguard_core9: + return "TitanPassive_pas_vanguard_core9" + default: + return fmt.Sprintf("%s(%d)", "TitanPassive", int(v)) + } +} +func (v TitanPassive) MarshalText() ([]byte, error) { + switch v { + case TitanPassive_NULL: + return []byte("NULL"), nil + case TitanPassive_pas_enhanced_titan_ai: + return []byte("pas_enhanced_titan_ai"), nil + case TitanPassive_pas_auto_eject: + return []byte("pas_auto_eject"), nil + case TitanPassive_pas_dash_recharge: + return []byte("pas_dash_recharge"), nil + case TitanPassive_pas_defensive_core: + return []byte("pas_defensive_core"), nil + case TitanPassive_pas_shield_regen: + return []byte("pas_shield_regen"), nil + case TitanPassive_pas_assault_reactor: + return []byte("pas_assault_reactor"), nil + case TitanPassive_pas_hyper_core: + return []byte("pas_hyper_core"), nil + case TitanPassive_pas_anti_rodeo: + return []byte("pas_anti_rodeo"), nil + case TitanPassive_pas_build_up_nuclear_core: + return []byte("pas_build_up_nuclear_core"), nil + case TitanPassive_pas_offensive_autoload: + return []byte("pas_offensive_autoload"), nil + case TitanPassive_pas_offensive_hitnrun: + return []byte("pas_offensive_hitnrun"), nil + case TitanPassive_pas_offensive_regen: + return []byte("pas_offensive_regen"), nil + case TitanPassive_pas_defensive_tacload: + return []byte("pas_defensive_tacload"), nil + case TitanPassive_pas_defensive_quickdash: + return []byte("pas_defensive_quickdash"), nil + case TitanPassive_pas_defensive_domeshield: + return []byte("pas_defensive_domeshield"), nil + case TitanPassive_pas_mobility_dash_capacity: + return []byte("pas_mobility_dash_capacity"), nil + case TitanPassive_pas_warpfall: + return []byte("pas_warpfall"), nil + case TitanPassive_pas_bubbleshield: + return []byte("pas_bubbleshield"), nil + case TitanPassive_pas_ronin_weapon: + return []byte("pas_ronin_weapon"), nil + case TitanPassive_pas_northstar_weapon: + return []byte("pas_northstar_weapon"), nil + case TitanPassive_pas_ion_weapon: + return []byte("pas_ion_weapon"), nil + case TitanPassive_pas_tone_weapon: + return []byte("pas_tone_weapon"), nil + case TitanPassive_pas_scorch_weapon: + return []byte("pas_scorch_weapon"), nil + case TitanPassive_pas_legion_weapon: + return []byte("pas_legion_weapon"), nil + case TitanPassive_pas_ion_tripwire: + return []byte("pas_ion_tripwire"), nil + case TitanPassive_pas_ion_vortex: + return []byte("pas_ion_vortex"), nil + case TitanPassive_pas_ion_lasercannon: + return []byte("pas_ion_lasercannon"), nil + case TitanPassive_pas_tone_rockets: + return []byte("pas_tone_rockets"), nil + case TitanPassive_pas_tone_sonar: + return []byte("pas_tone_sonar"), nil + case TitanPassive_pas_tone_wall: + return []byte("pas_tone_wall"), nil + case TitanPassive_pas_ronin_arcwave: + return []byte("pas_ronin_arcwave"), nil + case TitanPassive_pas_ronin_phase: + return []byte("pas_ronin_phase"), nil + case TitanPassive_pas_ronin_swordcore: + return []byte("pas_ronin_swordcore"), nil + case TitanPassive_pas_northstar_cluster: + return []byte("pas_northstar_cluster"), nil + case TitanPassive_pas_northstar_trap: + return []byte("pas_northstar_trap"), nil + case TitanPassive_pas_northstar_flightcore: + return []byte("pas_northstar_flightcore"), nil + case TitanPassive_pas_scorch_firewall: + return []byte("pas_scorch_firewall"), nil + case TitanPassive_pas_scorch_shield: + return []byte("pas_scorch_shield"), nil + case TitanPassive_pas_scorch_selfdmg: + return []byte("pas_scorch_selfdmg"), nil + case TitanPassive_pas_legion_spinup: + return []byte("pas_legion_spinup"), nil + case TitanPassive_pas_legion_gunshield: + return []byte("pas_legion_gunshield"), nil + case TitanPassive_pas_legion_smartcore: + return []byte("pas_legion_smartcore"), nil + case TitanPassive_pas_ion_weapon_ads: + return []byte("pas_ion_weapon_ads"), nil + case TitanPassive_pas_tone_burst: + return []byte("pas_tone_burst"), nil + case TitanPassive_pas_legion_chargeshot: + return []byte("pas_legion_chargeshot"), nil + case TitanPassive_pas_ronin_autoshift: + return []byte("pas_ronin_autoshift"), nil + case TitanPassive_pas_northstar_optics: + return []byte("pas_northstar_optics"), nil + case TitanPassive_pas_scorch_flamecore: + return []byte("pas_scorch_flamecore"), nil + case TitanPassive_pas_vanguard_coremeter: + return []byte("pas_vanguard_coremeter"), nil + case TitanPassive_pas_vanguard_shield: + return []byte("pas_vanguard_shield"), nil + case TitanPassive_pas_vanguard_rearm: + return []byte("pas_vanguard_rearm"), nil + case TitanPassive_pas_vanguard_doom: + return []byte("pas_vanguard_doom"), nil + case TitanPassive_pas_vanguard_core1: + return []byte("pas_vanguard_core1"), nil + case TitanPassive_pas_vanguard_core2: + return []byte("pas_vanguard_core2"), nil + case TitanPassive_pas_vanguard_core3: + return []byte("pas_vanguard_core3"), nil + case TitanPassive_pas_vanguard_core4: + return []byte("pas_vanguard_core4"), nil + case TitanPassive_pas_vanguard_core5: + return []byte("pas_vanguard_core5"), nil + case TitanPassive_pas_vanguard_core6: + return []byte("pas_vanguard_core6"), nil + case TitanPassive_pas_vanguard_core7: + return []byte("pas_vanguard_core7"), nil + case TitanPassive_pas_vanguard_core8: + return []byte("pas_vanguard_core8"), nil + case TitanPassive_pas_vanguard_core9: + return []byte("pas_vanguard_core9"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "TitanPassive") + } +} +func (v *TitanPassive) UnmarshalText(b []byte) error { + switch string(b) { + case "NULL": + *v = TitanPassive_NULL + case "pas_enhanced_titan_ai": + *v = TitanPassive_pas_enhanced_titan_ai + case "pas_auto_eject": + *v = TitanPassive_pas_auto_eject + case "pas_dash_recharge": + *v = TitanPassive_pas_dash_recharge + case "pas_defensive_core": + *v = TitanPassive_pas_defensive_core + case "pas_shield_regen": + *v = TitanPassive_pas_shield_regen + case "pas_assault_reactor": + *v = TitanPassive_pas_assault_reactor + case "pas_hyper_core": + *v = TitanPassive_pas_hyper_core + case "pas_anti_rodeo": + *v = TitanPassive_pas_anti_rodeo + case "pas_build_up_nuclear_core": + *v = TitanPassive_pas_build_up_nuclear_core + case "pas_offensive_autoload": + *v = TitanPassive_pas_offensive_autoload + case "pas_offensive_hitnrun": + *v = TitanPassive_pas_offensive_hitnrun + case "pas_offensive_regen": + *v = TitanPassive_pas_offensive_regen + case "pas_defensive_tacload": + *v = TitanPassive_pas_defensive_tacload + case "pas_defensive_quickdash": + *v = TitanPassive_pas_defensive_quickdash + case "pas_defensive_domeshield": + *v = TitanPassive_pas_defensive_domeshield + case "pas_mobility_dash_capacity": + *v = TitanPassive_pas_mobility_dash_capacity + case "pas_warpfall": + *v = TitanPassive_pas_warpfall + case "pas_bubbleshield": + *v = TitanPassive_pas_bubbleshield + case "pas_ronin_weapon": + *v = TitanPassive_pas_ronin_weapon + case "pas_northstar_weapon": + *v = TitanPassive_pas_northstar_weapon + case "pas_ion_weapon": + *v = TitanPassive_pas_ion_weapon + case "pas_tone_weapon": + *v = TitanPassive_pas_tone_weapon + case "pas_scorch_weapon": + *v = TitanPassive_pas_scorch_weapon + case "pas_legion_weapon": + *v = TitanPassive_pas_legion_weapon + case "pas_ion_tripwire": + *v = TitanPassive_pas_ion_tripwire + case "pas_ion_vortex": + *v = TitanPassive_pas_ion_vortex + case "pas_ion_lasercannon": + *v = TitanPassive_pas_ion_lasercannon + case "pas_tone_rockets": + *v = TitanPassive_pas_tone_rockets + case "pas_tone_sonar": + *v = TitanPassive_pas_tone_sonar + case "pas_tone_wall": + *v = TitanPassive_pas_tone_wall + case "pas_ronin_arcwave": + *v = TitanPassive_pas_ronin_arcwave + case "pas_ronin_phase": + *v = TitanPassive_pas_ronin_phase + case "pas_ronin_swordcore": + *v = TitanPassive_pas_ronin_swordcore + case "pas_northstar_cluster": + *v = TitanPassive_pas_northstar_cluster + case "pas_northstar_trap": + *v = TitanPassive_pas_northstar_trap + case "pas_northstar_flightcore": + *v = TitanPassive_pas_northstar_flightcore + case "pas_scorch_firewall": + *v = TitanPassive_pas_scorch_firewall + case "pas_scorch_shield": + *v = TitanPassive_pas_scorch_shield + case "pas_scorch_selfdmg": + *v = TitanPassive_pas_scorch_selfdmg + case "pas_legion_spinup": + *v = TitanPassive_pas_legion_spinup + case "pas_legion_gunshield": + *v = TitanPassive_pas_legion_gunshield + case "pas_legion_smartcore": + *v = TitanPassive_pas_legion_smartcore + case "pas_ion_weapon_ads": + *v = TitanPassive_pas_ion_weapon_ads + case "pas_tone_burst": + *v = TitanPassive_pas_tone_burst + case "pas_legion_chargeshot": + *v = TitanPassive_pas_legion_chargeshot + case "pas_ronin_autoshift": + *v = TitanPassive_pas_ronin_autoshift + case "pas_northstar_optics": + *v = TitanPassive_pas_northstar_optics + case "pas_scorch_flamecore": + *v = TitanPassive_pas_scorch_flamecore + case "pas_vanguard_coremeter": + *v = TitanPassive_pas_vanguard_coremeter + case "pas_vanguard_shield": + *v = TitanPassive_pas_vanguard_shield + case "pas_vanguard_rearm": + *v = TitanPassive_pas_vanguard_rearm + case "pas_vanguard_doom": + *v = TitanPassive_pas_vanguard_doom + case "pas_vanguard_core1": + *v = TitanPassive_pas_vanguard_core1 + case "pas_vanguard_core2": + *v = TitanPassive_pas_vanguard_core2 + case "pas_vanguard_core3": + *v = TitanPassive_pas_vanguard_core3 + case "pas_vanguard_core4": + *v = TitanPassive_pas_vanguard_core4 + case "pas_vanguard_core5": + *v = TitanPassive_pas_vanguard_core5 + case "pas_vanguard_core6": + *v = TitanPassive_pas_vanguard_core6 + case "pas_vanguard_core7": + *v = TitanPassive_pas_vanguard_core7 + case "pas_vanguard_core8": + *v = TitanPassive_pas_vanguard_core8 + case "pas_vanguard_core9": + *v = TitanPassive_pas_vanguard_core9 + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "TitanPassive") + } + return nil +} + +type UnlockRefs uint8 + +const ( + UnlockRefs_edit_pilots UnlockRefs = 0 + UnlockRefs_edit_titans UnlockRefs = 1 + UnlockRefs_pilot_custom_loadout_1 UnlockRefs = 2 + UnlockRefs_pilot_custom_loadout_2 UnlockRefs = 3 + UnlockRefs_pilot_custom_loadout_3 UnlockRefs = 4 + UnlockRefs_pilot_custom_loadout_4 UnlockRefs = 5 + UnlockRefs_pilot_custom_loadout_5 UnlockRefs = 6 + UnlockRefs_titan_custom_loadout_1 UnlockRefs = 7 + UnlockRefs_titan_custom_loadout_2 UnlockRefs = 8 + UnlockRefs_titan_custom_loadout_3 UnlockRefs = 9 + UnlockRefs_titan_custom_loadout_4 UnlockRefs = 10 + UnlockRefs_titan_custom_loadout_5 UnlockRefs = 11 + UnlockRefs_burn_card_slot_1 UnlockRefs = 12 + UnlockRefs_burn_card_slot_2 UnlockRefs = 13 + UnlockRefs_burn_card_slot_3 UnlockRefs = 14 + UnlockRefs_burn_card_pack_1 UnlockRefs = 15 + UnlockRefs_burn_card_pack_2 UnlockRefs = 16 + UnlockRefs_burn_card_pack_3 UnlockRefs = 17 + UnlockRefs_burn_card_pack_4 UnlockRefs = 18 + UnlockRefs_burn_card_pack_5 UnlockRefs = 19 + UnlockRefs_challenges UnlockRefs = 20 + UnlockRefsCount UnlockRefs = 21 +) + +var _ fmt.Stringer = UnlockRefs(0) +var _ fmt.GoStringer = UnlockRefs(0) + +//var _ encoding.TextMarshaler = UnlockRefs(0) +var _ encoding.TextUnmarshaler = (*UnlockRefs)(nil) + +func (v UnlockRefs) String() string { + if b, err := v.MarshalText(); err == nil { + return string(b) + } + return strconv.Itoa(int(v)) +} +func (v UnlockRefs) GoString() string { + switch v { + case UnlockRefs_edit_pilots: + return "UnlockRefs_edit_pilots" + case UnlockRefs_edit_titans: + return "UnlockRefs_edit_titans" + case UnlockRefs_pilot_custom_loadout_1: + return "UnlockRefs_pilot_custom_loadout_1" + case UnlockRefs_pilot_custom_loadout_2: + return "UnlockRefs_pilot_custom_loadout_2" + case UnlockRefs_pilot_custom_loadout_3: + return "UnlockRefs_pilot_custom_loadout_3" + case UnlockRefs_pilot_custom_loadout_4: + return "UnlockRefs_pilot_custom_loadout_4" + case UnlockRefs_pilot_custom_loadout_5: + return "UnlockRefs_pilot_custom_loadout_5" + case UnlockRefs_titan_custom_loadout_1: + return "UnlockRefs_titan_custom_loadout_1" + case UnlockRefs_titan_custom_loadout_2: + return "UnlockRefs_titan_custom_loadout_2" + case UnlockRefs_titan_custom_loadout_3: + return "UnlockRefs_titan_custom_loadout_3" + case UnlockRefs_titan_custom_loadout_4: + return "UnlockRefs_titan_custom_loadout_4" + case UnlockRefs_titan_custom_loadout_5: + return "UnlockRefs_titan_custom_loadout_5" + case UnlockRefs_burn_card_slot_1: + return "UnlockRefs_burn_card_slot_1" + case UnlockRefs_burn_card_slot_2: + return "UnlockRefs_burn_card_slot_2" + case UnlockRefs_burn_card_slot_3: + return "UnlockRefs_burn_card_slot_3" + case UnlockRefs_burn_card_pack_1: + return "UnlockRefs_burn_card_pack_1" + case UnlockRefs_burn_card_pack_2: + return "UnlockRefs_burn_card_pack_2" + case UnlockRefs_burn_card_pack_3: + return "UnlockRefs_burn_card_pack_3" + case UnlockRefs_burn_card_pack_4: + return "UnlockRefs_burn_card_pack_4" + case UnlockRefs_burn_card_pack_5: + return "UnlockRefs_burn_card_pack_5" + case UnlockRefs_challenges: + return "UnlockRefs_challenges" + default: + return fmt.Sprintf("%s(%d)", "UnlockRefs", int(v)) + } +} +func (v UnlockRefs) MarshalText() ([]byte, error) { + switch v { + case UnlockRefs_edit_pilots: + return []byte("edit_pilots"), nil + case UnlockRefs_edit_titans: + return []byte("edit_titans"), nil + case UnlockRefs_pilot_custom_loadout_1: + return []byte("pilot_custom_loadout_1"), nil + case UnlockRefs_pilot_custom_loadout_2: + return []byte("pilot_custom_loadout_2"), nil + case UnlockRefs_pilot_custom_loadout_3: + return []byte("pilot_custom_loadout_3"), nil + case UnlockRefs_pilot_custom_loadout_4: + return []byte("pilot_custom_loadout_4"), nil + case UnlockRefs_pilot_custom_loadout_5: + return []byte("pilot_custom_loadout_5"), nil + case UnlockRefs_titan_custom_loadout_1: + return []byte("titan_custom_loadout_1"), nil + case UnlockRefs_titan_custom_loadout_2: + return []byte("titan_custom_loadout_2"), nil + case UnlockRefs_titan_custom_loadout_3: + return []byte("titan_custom_loadout_3"), nil + case UnlockRefs_titan_custom_loadout_4: + return []byte("titan_custom_loadout_4"), nil + case UnlockRefs_titan_custom_loadout_5: + return []byte("titan_custom_loadout_5"), nil + case UnlockRefs_burn_card_slot_1: + return []byte("burn_card_slot_1"), nil + case UnlockRefs_burn_card_slot_2: + return []byte("burn_card_slot_2"), nil + case UnlockRefs_burn_card_slot_3: + return []byte("burn_card_slot_3"), nil + case UnlockRefs_burn_card_pack_1: + return []byte("burn_card_pack_1"), nil + case UnlockRefs_burn_card_pack_2: + return []byte("burn_card_pack_2"), nil + case UnlockRefs_burn_card_pack_3: + return []byte("burn_card_pack_3"), nil + case UnlockRefs_burn_card_pack_4: + return []byte("burn_card_pack_4"), nil + case UnlockRefs_burn_card_pack_5: + return []byte("burn_card_pack_5"), nil + case UnlockRefs_challenges: + return []byte("challenges"), nil + default: + return nil, fmt.Errorf("%w: invalid value %d for enum %q", ErrInvalidEnumValue, int(v), "UnlockRefs") + } +} +func (v *UnlockRefs) UnmarshalText(b []byte) error { + switch string(b) { + case "edit_pilots": + *v = UnlockRefs_edit_pilots + case "edit_titans": + *v = UnlockRefs_edit_titans + case "pilot_custom_loadout_1": + *v = UnlockRefs_pilot_custom_loadout_1 + case "pilot_custom_loadout_2": + *v = UnlockRefs_pilot_custom_loadout_2 + case "pilot_custom_loadout_3": + *v = UnlockRefs_pilot_custom_loadout_3 + case "pilot_custom_loadout_4": + *v = UnlockRefs_pilot_custom_loadout_4 + case "pilot_custom_loadout_5": + *v = UnlockRefs_pilot_custom_loadout_5 + case "titan_custom_loadout_1": + *v = UnlockRefs_titan_custom_loadout_1 + case "titan_custom_loadout_2": + *v = UnlockRefs_titan_custom_loadout_2 + case "titan_custom_loadout_3": + *v = UnlockRefs_titan_custom_loadout_3 + case "titan_custom_loadout_4": + *v = UnlockRefs_titan_custom_loadout_4 + case "titan_custom_loadout_5": + *v = UnlockRefs_titan_custom_loadout_5 + case "burn_card_slot_1": + *v = UnlockRefs_burn_card_slot_1 + case "burn_card_slot_2": + *v = UnlockRefs_burn_card_slot_2 + case "burn_card_slot_3": + *v = UnlockRefs_burn_card_slot_3 + case "burn_card_pack_1": + *v = UnlockRefs_burn_card_pack_1 + case "burn_card_pack_2": + *v = UnlockRefs_burn_card_pack_2 + case "burn_card_pack_3": + *v = UnlockRefs_burn_card_pack_3 + case "burn_card_pack_4": + *v = UnlockRefs_burn_card_pack_4 + case "burn_card_pack_5": + *v = UnlockRefs_burn_card_pack_5 + case "challenges": + *v = UnlockRefs_challenges + default: + return fmt.Errorf("%w: invalid value %q for enum %q", ErrInvalidEnumValue, string(b), "UnlockRefs") + } + return nil +} diff --git a/pkg/pdata/persistent_player_data_version_231.pdef b/pkg/pdata/persistent_player_data_version_231.pdef new file mode 100644 index 0000000..c4af215 --- /dev/null +++ b/pkg/pdata/persistent_player_data_version_231.pdef @@ -0,0 +1,1515 @@ +int initializedVersion +int announcementVersionSeen + +int xp +int previousXP +int credits +int xp_match[20] +int xp_count[20] + +int netWorth + +bool matchWin +bool matchScoreEvent +bool matchComplete +bool matchSquadBonus + +bool showGameSummary +bool regenShowNew +bool spawnAsTitan +bool haveSeenCustomCoop +bool factionGiftsFixed + +bool isACheater +bool spendDoubleColiseumTickets + +int privateMatchState + +int playlistShuffle_seed +bool playlistShuffle_seedFlip +int playlistShuffle_curIndex + +// we don't use titanClasses for this because it doesn't contain an entry that would equal null/none +string{16} lastFDTitanRef +int lastFDDifficulty + +bool ultimateEdition + +//############################# +// LISTS OF THINGS IN THE GAME +//############################# + +//All game modes in the game, including riffs. +$ENUM_START gameModes + tdm + cp + at + ctf + lts + ps + ffa + coliseum + aitdm + speedball + mfd + ttdm + fra + fd +$ENUM_END + +// enum used for stats. mp_box and mp_test_engagement_range are +// in this list so I can test stat tracking in those maps +// add new maps to the bottom of this list...DO NOT CHANGE ORDER!! +$ENUM_START maps + mp_box + mp_test_engagement_range + + // R2 + mp_forwardbase_kodai + mp_grave + mp_homestead + mp_thaw + mp_black_water_canal + mp_eden + mp_drydock + mp_crashsite3 + mp_complex3 + mp_coliseum + + // R2 DLC + mp_angel_city + mp_colony02 + mp_relic02 + mp_glitch + mp_lf_stacks + mp_lf_meadow + mp_lf_deck + mp_lf_traffic + mp_lf_township + mp_lf_uma + mp_coliseum_column + mp_wargames + mp_rise +$ENUM_END + +$ENUM_START loadoutWeaponsAndAbilities + NULL + melee_pilot_emptyhanded + melee_pilot_sword + melee_titan_sword + melee_titan_sword_aoe + mp_ability_cloak + mp_ability_grapple + mp_ability_heal + mp_ability_holopilot + mp_ability_phase_rewind + mp_ability_shifter + mp_titanability_ammo_swap + mp_titanability_basic_block + mp_titanability_gun_shield + mp_titanability_hover + mp_titanability_laser_trip + mp_titanability_particle_wall + mp_titanability_phase_dash + mp_titanability_power_shot + mp_titanability_slow_trap + mp_titanability_smoke + mp_titanability_sonar_pulse + mp_titanability_tether_trap + mp_titanability_rearm + mp_titancore_flame_wave + mp_titancore_flight_core + mp_titancore_laser_cannon + mp_titancore_salvo_core + mp_titancore_shift_core + mp_titancore_siege_mode + mp_titancore_upgrade + mp_titanweapon_40mm + mp_titanweapon_arc_wave + mp_titanweapon_flame_wall + mp_titanweapon_heat_shield + mp_titanweapon_homing_rockets + mp_titanweapon_dumbfire_rockets + mp_titanweapon_laser_lite + mp_titanweapon_leadwall + mp_titanweapon_meteor + mp_titanweapon_particle_accelerator + mp_titanweapon_predator_cannon + mp_titanweapon_rocket_launcher + mp_titanweapon_rocketeer_rocketstream + mp_titanweapon_salvo_rockets + mp_titanweapon_sniper + mp_titanweapon_sticky_40mm + mp_titanweapon_stun_laser + mp_titanweapon_tracker_rockets + mp_titanweapon_vortex_shield + mp_titanweapon_vortex_shield_ion + mp_titanweapon_xo16 + mp_titanweapon_xo16_shorty + mp_titanweapon_xo16_vanguard + mp_weapon_alternator_smg + mp_weapon_arc_launcher + mp_weapon_autopistol + mp_weapon_car + mp_weapon_defender + mp_weapon_deployable_cover + mp_weapon_dmr + mp_weapon_doubletake + mp_weapon_epg + mp_weapon_esaw + mp_weapon_frag_drone + mp_weapon_frag_grenade + mp_weapon_g2 + mp_weapon_grenade_electric_smoke + mp_weapon_grenade_emp + mp_weapon_grenade_gravity + mp_weapon_grenade_sonar + mp_weapon_hemlok + mp_weapon_hemlok_smg + mp_weapon_lmg + mp_weapon_lstar + mp_weapon_mastiff + mp_weapon_mgl + mp_weapon_pulse_lmg + mp_weapon_r97 + mp_weapon_rocket_launcher + mp_weapon_rspn101 + mp_weapon_rspn101_og + mp_weapon_satchel + mp_weapon_semipistol + mp_weapon_shotgun + mp_weapon_shotgun_pistol + mp_weapon_smart_pistol + mp_weapon_smr + mp_weapon_sniper + mp_weapon_softball + mp_weapon_thermite_grenade + mp_weapon_vinson + mp_weapon_wingman + mp_weapon_wingman_n + melee_titan_punch_ion + melee_titan_punch_legion + melee_titan_punch_northstar + melee_titan_punch_scorch + melee_titan_punch_tone + melee_titan_punch_vanguard +$ENUM_END + +$ENUM_START pilotMod + NULL + aog + automatic_fire + burn_mod_rspn101 + burn_mod_g2 + burn_mod_hemlok + burn_mod_vinson + burn_mod_lstar + burn_mod_car + burn_mod_r97 + burn_mod_alternator_smg + burn_mod_lmg + burn_mod_esaw + burn_mod_pulse_lmg + burn_mod_sniper + burn_mod_dmr + burn_mod_doubletake + burn_mod_mastiff + burn_mod_shotgun + burn_mod_softball + burn_mod_shotgun_pistol + burn_mod_autopistol + burn_mod_wingman + burn_mod_semipistol + burn_mod_smart_pistol + burn_mod_emp_grenade + burn_mod_frag_grenade + burn_mod_satchel + burn_mod_proximity_mine + burn_mod_grenade_electric_smoke + burn_mod_grenade_gravity + burn_mod_thermite_grenade + burn_mod_defender + burn_mod_rocket_launcher + burn_mod_arc_launcher + burn_mod_smr + burn_mod_mgl + burst + enhanced_targeting + extended_ammo + fast_lock + fast_reload + guided_missile + hcog + high_density + holosight + iron_sights + long_fuse + powered_magnets + scope_4x + scope_6x + scope_8x + scope_10x + scope_12x + silencer + sniper_assist + stabilizer + single_shot + slammer + stabilized_warhead + tank_buster + amped_wall + short_shift + burn_mod_epg + ricochet + ar_trajectory + redline_sight + threat_scope + smart_lock + pro_screen + delayed_shot + pas_run_and_gun + tactical_cdr_on_kill + pas_fast_ads + pas_fast_swap + pas_fast_reload + jump_kit + quick_charge + rocket_arena +$ENUM_END + +$ENUM_START titanClasses + ion + scorch + ronin + tone + northstar + legion + vanguard +$ENUM_END + +$ENUM_START titanMod + NULL + accelerator + afterburners + arc_triple_threat + burn_mod_titan_40mm + burn_mod_titan_arc_cannon + burn_mod_titan_sniper + burn_mod_titan_triple_threat + burn_mod_titan_xo16 + burn_mod_titan_dumbfire_rockets + burn_mod_titan_homing_rockets + burn_mod_titan_salvo_rockets + burn_mod_titan_shoulder_rockets + burn_mod_titan_vortex_shield + burn_mod_titan_smoke + burn_mod_titan_particle_wall + burst + capacitor + extended_ammo + fast_lock + fast_reload + instant_shot + overcharge + quick_shot + rapid_fire_missiles + stryder_sniper +$ENUM_END + +$ENUM_START pilotPassive + NULL + pas_stealth_movement + pas_ordnance_pack + pas_power_cell + pas_wallhang + pas_fast_health_regen + pas_minimap_ai + pas_longer_bubble + pas_run_and_gun + pas_dead_mans_trigger + pas_wall_runner + pas_fast_hack + pas_cloaked_wallrun + pas_cloaked_wallhang + pas_smoke_sight + pas_fast_embark + pas_cdr_on_kill + pas_at_hunter + pas_ordnance_beam + pas_fast_rodeo + pas_phase_eject + pas_ads_hover + pas_enemy_death_icons + pas_off_the_grid +$ENUM_END + +$ENUM_START pilotSuit + medium + geist + stalker + light + heavy + grapple + nomad +$ENUM_END + +$ENUM_START pilotRace + race_human_male + race_human_female +$ENUM_END + +$ENUM_START pilotExecution + execution_neck_snap + execution_face_stab + execution_backshot + execution_combo + execution_knockout + execution_telefrag + execution_stim + execution_grapple + execution_pulseblade + execution_random + execution_cloak + execution_holopilot + execution_ampedwall +$ENUM_END + + +$ENUM_START titanExecution + execution_ion + execution_ion_prime + execution_tone + execution_tone_prime + execution_ronin + execution_ronin_prime + execution_northstar + execution_northstar_prime + execution_legion + execution_legion_prime + execution_vanguard + execution_scorch + execution_scorch_prime + execution_random_0 + execution_random_1 + execution_random_2 + execution_random_3 + execution_random_4 + execution_random_5 + execution_random_6 +$ENUM_END + +$ENUM_START titanPassive + NULL + pas_enhanced_titan_ai + pas_auto_eject + pas_dash_recharge + pas_defensive_core + pas_shield_regen + pas_assault_reactor + pas_hyper_core + pas_anti_rodeo + pas_build_up_nuclear_core + pas_offensive_autoload + pas_offensive_hitnrun + pas_offensive_regen + pas_defensive_tacload + pas_defensive_quickdash + pas_defensive_domeshield + pas_mobility_dash_capacity + pas_warpfall + pas_bubbleshield + pas_ronin_weapon + pas_northstar_weapon + pas_ion_weapon + pas_tone_weapon + pas_scorch_weapon + pas_legion_weapon + pas_ion_tripwire + pas_ion_vortex + pas_ion_lasercannon + pas_tone_rockets + pas_tone_sonar + pas_tone_wall + pas_ronin_arcwave + pas_ronin_phase + pas_ronin_swordcore + pas_northstar_cluster + pas_northstar_trap + pas_northstar_flightcore + pas_scorch_firewall + pas_scorch_shield + pas_scorch_selfdmg + pas_legion_spinup + pas_legion_gunshield + pas_legion_smartcore + pas_ion_weapon_ads + pas_tone_burst + pas_legion_chargeshot + pas_ronin_autoshift + pas_northstar_optics + pas_scorch_flamecore + pas_vanguard_coremeter + pas_vanguard_shield + pas_vanguard_rearm + pas_vanguard_doom + pas_vanguard_core1 + pas_vanguard_core2 + pas_vanguard_core3 + pas_vanguard_core4 + pas_vanguard_core5 + pas_vanguard_core6 + pas_vanguard_core7 + pas_vanguard_core8 + pas_vanguard_core9 +$ENUM_END + +$ENUM_START titanIsPrimeTitan //Really should be bool, but script for loadouts is not easily set up to handle bools unfortunately... + titan_is_not_prime + titan_is_prime +$ENUM_END + +$ENUM_START faction + faction_apex + faction_64 + faction_vinson + faction_marauder + faction_aces + faction_ares + faction_marvin +$ENUM_END + +// This entire thing is legacy support for a DLC7 menu bug +$ENUM_START ownedEntitlements + ET_DLC7_WEAPON_BUNDLE // BUNDLE MUST BE FIRST!!!! + ET_DLC7_R201_WARPAINT + ET_DLC7_G2A5_WARPAINT + ET_DLC7_FLATLINE_WARPAINT + ET_DLC7_CAR_WARPAINT + ET_DLC7_ALTERNATOR_WARPAINT + ET_DLC7_EVA8_WARPAINT + ET_DLC7_WINGMAN_WARPAINT + ET_DLC7_ARCHER_WARPAINT +$ENUM_END + +//###################### +// LOADOUTS +//###################### + +$STRUCT_START spawnLoadout + int index +$STRUCT_END + +$STRUCT_START pilotLoadout + string{42} name + pilotSuit suit + pilotRace race + pilotExecution execution + loadoutWeaponsAndAbilities primary + pilotMod primaryAttachment + pilotMod primaryMod1 + pilotMod primaryMod2 + pilotMod primaryMod3 + loadoutWeaponsAndAbilities secondary + pilotMod secondaryMod1 + pilotMod secondaryMod2 + pilotMod secondaryMod3 + loadoutWeaponsAndAbilities weapon3 + pilotMod weapon3Mod1 + pilotMod weapon3Mod2 + pilotMod weapon3Mod3 + loadoutWeaponsAndAbilities ordnance + pilotPassive passive1 + pilotPassive passive2 + int skinIndex + int camoIndex + int primarySkinIndex + int primaryCamoIndex + int secondarySkinIndex + int secondaryCamoIndex + int weapon3SkinIndex + int weapon3CamoIndex +$STRUCT_END + +$STRUCT_START titanLoadout + string{42} name // TODO: No need for this in persistent data any more + titanClasses titanClass + titanMod primaryMod + loadoutWeaponsAndAbilities special + loadoutWeaponsAndAbilities antirodeo + titanPassive passive1 + titanPassive passive2 + titanPassive passive3 + titanPassive passive4 + titanPassive passive5 + titanPassive passive6 + titanExecution titanExecution + int skinIndex + int camoIndex + int decalIndex + int primarySkinIndex + int primaryCamoIndex + titanIsPrimeTitan isPrime //Really should be bool, but script for loadouts is not easily set up to handle bools unfortunately... + int primeSkinIndex + int primeCamoIndex + int primeDecalIndex + int showArmBadge +$STRUCT_END + +$STRUCT_START recentUnlock + int refGuid + int parentRefGuid + int count +$STRUCT_END + +int randomColiseumUnlocks +int randomPlayerLevelUnlocks +int randomTitanLevelUnlocks[titanClasses] +int randomWeaponLevelUnlocks[loadoutWeaponsAndAbilities] +int randomFactionLevelUnlocks[faction] + +int doubleXP +int coliseumTickets +int coliseumWinStreak +int coliseumBestStreak +int coliseumTotalWins +int coliseumTotalLosses + +recentUnlock recentUnlocks[10] + +bool hasBeenIntroducedToComms +int lastCommsUseDate +int numTimesUsedComms +bool custom_emoji_initialized +int custom_emoji[4] + +int burnmeterSlot + +$STRUCT_START pveData + int version + int currency + int currencyInLatestMatch + int tacticalUnlocks[6] + int feathersForMap[maps] +$STRUCT_END +pveData pve + +faction factionChoice +faction enemyFaction + +bool persistentRewards[32] +int consumableRewards[32] + +spawnLoadout pilotSpawnLoadout +spawnLoadout titanSpawnLoadout + +pilotLoadout activePilotLoadout +titanLoadout activeTitanLoadout +int activeTitanLoadoutIndex + +pilotLoadout pilotLoadouts[10] +titanLoadout titanLoadouts[10] + +bool pinTrackedEntitlements[ownedEntitlements] +bool newPinTrackedEntitlements[ownedEntitlements] + +$ENUM_START unlockRefs + edit_pilots // these two must come first + edit_titans + + pilot_custom_loadout_1 + pilot_custom_loadout_2 + pilot_custom_loadout_3 + pilot_custom_loadout_4 + pilot_custom_loadout_5 + + titan_custom_loadout_1 + titan_custom_loadout_2 + titan_custom_loadout_3 + titan_custom_loadout_4 + titan_custom_loadout_5 + + burn_card_slot_1 + burn_card_slot_2 + burn_card_slot_3 + + burn_card_pack_1 + burn_card_pack_2 + burn_card_pack_3 + burn_card_pack_4 + burn_card_pack_5 + + challenges +$ENUM_END + +//###################### +// BURN CARDS +//###################### + +$ENUM_START burnCard + NULL + bc_conscription + bc_double_xp + bc_free_xp + bc_fast_cooldown1 + bc_fast_cooldown2 + bc_super_stim + bc_super_cloak + bc_super_sonar + bc_summon_ogre + bc_cloak_forever + bc_stim_forever + bc_sonar_forever + bc_summon_stryder + bc_spectre_virus + bc_play_spectre + bc_double_agent + bc_minimap + bc_summon_atlas + bc_megaturrets + bc_summon_dogfighter + bc_wifi_spectre_hack + bc_nuclear_core + bc_core_charged + bc_smart_pistol_m2 + bc_r97_m2 + bc_rspn101_m2 + bc_dmr_m2 + bc_shotgun_m2 + bc_lmg_m2 + bc_g2_m2 + bc_car_m2 + bc_hemlok_m2 + bc_sniper_m2 + bc_smr_m2 + bc_mgl_m2 + bc_defender_m2 + bc_rocket_launcher_m2 + bc_semipistol_m2 + bc_autopistol_m2 + bc_wingman_m2 + bc_satchel_m2 + bc_frag_m2 + bc_arc_m2 + bc_prox_m2 + bc_pilot_warning + bc_rematch + bc_minimap_scan + bc_free_build_time_1 + bc_free_build_time_2 + bc_fast_build_1 + bc_fast_build_2 + bc_hunt_soldier + bc_hunt_spectre + bc_hunt_titan + bc_hunt_pilot + bc_auto_sonar + bc_fast_movespeed + bc_auto_refill + bc_dice_ondeath + bc_titan_40mm_m2 + bc_titan_arc_cannon_m2 + bc_titan_rocket_launcher_m2 + bc_titan_sniper_m2 + bc_titan_triple_threat_m2 + bc_titan_xo16_m2 + bc_titan_dumbfire_missile_m2 + bc_titan_homing_rockets_m2 + bc_titan_salvo_rockets_m2 + bc_titan_shoulder_rockets_m2 + bc_titan_vortex_shield_m2 + bc_titan_electric_smoke_m2 + bc_titan_shield_wall_m2 + bc_titan_melee_m2 + bc_extra_dash + bc_lstar_m2 + bc_mastiff_m2 + bc_vinson_m2 +$ENUM_END + + +$STRUCT_START struct_activeBurnCardData + burnCard cardRef + burnCard lastCardRef + bool clearOnStart // player has used this match long burn card +$STRUCT_END + +$STRUCT_START struct_historyBurnCardData + int collected + int spent +$STRUCT_END + +$STRUCT_START struct_blackMarketBurnCardUpgrades + burnCard cardRef +$STRUCT_END + +int activeBCID + +int activeCallingCardIndex +int activeCallsignIconIndex +int activeCallsignIconStyleIndex + +int gen // as in, what generation player? + + +//######################### +// Faction XP +//######################### + +int factionXP[faction] +int previousFactionXP[faction] + +//######################### +// Titan XP +//######################### + +int titanXP[titanClasses] +int previousTitanXP[titanClasses] + +int fdTitanXP[titanClasses] +int fdPreviousTitanXP[titanClasses] + +int titanFDUnlockPoints[titanClasses] +int previousFDUnlockPoints[titanClasses] + +int fd_match[20] +int fd_count[20] +int titanClassLockState[titanClasses] + +int fdTutorialBits +int fdPlaylistBits + +//################################################ +// CHAD'S STAT TRACKING STUFF - DON'T MESS WIT IT +//################################################ + + +$STRUCT_START sMapStats + int gamesJoined[gameModes] + int gamesCompleted[gameModes] + int gamesWon[gameModes] + int gamesLost[gameModes] + int topPlayerOnTeam[gameModes] + int top3OnTeam[gameModes] + float hoursPlayed[gameModes] + int timesScored100AttritionPoints_byMap + int winsByDifficulty[5] + int matchesByDifficulty[5] + int perfectMatchesByDifficulty[5] +$STRUCT_END + +$STRUCT_START sGameStats + int modesPlayed[gameModes] + int previousModesPlayed[gameModes] + int modesWon[gameModes] + int mvp_total + int gamesCompletedTotal + int gamesWonTotal + int gamesWonAsIMC + int gamesWonAsMilitia + int gamesCompletedAsIMC + int gamesCompletedAsMilitia + int pvpKills[gameModes] + int timesKillDeathRatio2to1[gameModes] + int timesKillDeathRatio2to1_pvp[gameModes] + int timesScored100AttritionPoints_total +$STRUCT_END + +$STRUCT_START sHoursPlayed + float total + float asTitan[titanClasses] + float asPilot + float asTitanTotal + float dead + float wallhanging + float wallrunning + float inAir +$STRUCT_END + +$STRUCT_START sMilesTraveled + float total + float asTitan[titanClasses] + float asPilot + float asTitanTotal + float wallrunning + float inAir + float ziplining + float onFriendlyTitan + float onEnemyTitan +$STRUCT_END + +$STRUCT_START sWeaponStats + float hoursUsed + float hoursEquipped + int shotsFired + int shotsHit + int headshots + int critHits + int titanDamage +$STRUCT_END + +$STRUCT_START sWeaponKillStats + int total + int pilots + int ejecting_pilots + int spectres + int marvins + int grunts + int ai + int titansTotal + int titans[titanClasses] + int npcTitans[titanClasses] + int assistsTotal + int killingSprees +$STRUCT_END + +$STRUCT_START sKillStats + int total + int totalWhileUsingBurnCard + int titansWhileTitanBCActive + int totalPVP + int pilots + int spectres + int marvins + int grunts + int totalTitans + int totalTitansWhileDoomed + int totalPilots + int totalNPC + int asPilot + int asTitan[titanClasses] + int firstStrikes + int ejectingPilots + int whileEjecting + int cloakedPilots + int whileCloaked + int wallrunningPilots + int whileWallrunning + int wallhangingPilots + int whileWallhanging + int pilotExecution + int pilotExecutePilot + int pilotExecutePilotByType[pilotExecution] + int pilotKickMelee + int pilotKickMeleePilot + int titanMelee + int titanMeleePilot + int titanStepCrush + int titanStepCrushPilot + int titanExocutionIon + int titanExocutionScorch + int titanExocutionNorthstar + int titanExocutionRonin + int titanExocutionTone + int titanExocutionLegion + int titanExocutionVanguard + int titanFallKill + int petTitanKillsFollowMode + int petTitanKillsGuardMode + int rodeo_total + int rodeo_stryder + int rodeo_buddy + int rodeo_atlas + int rodeo_ogre + int pilot_headshots_total + int evacShips + int flyers + int nuclearCore + int evacuatingEnemies + int exportTrapKills + int coopChallenge_NukeTitan_Kills + int coopChallenge_MortarTitan_Kills + int coopChallenge_EmpTitan_Kills + int coopChallenge_BubbleShieldGrunt_Kills + int coopChallenge_CloakDrone_Kills + int coopChallenge_Dropship_Kills + int coopChallenge_SuicideSpectre_Kills + int coopChallenge_Turret_Kills + int coopChallenge_Sniper_Kills + int ampedVortexKills + int meleeWhileCloaked + int pilotKillsWhileUsingActiveRadarPulse + int titanKillsAsPilot + int pilotKillsWhileStimActive + int pilotKillsAsTitan + int totalAssists + int killingSprees[titanClasses] + int pilotKillsAsPilot + int titanKillsAsTitan + int telefragKils + int grappleKills + int throughAWallKills + int distractedKills + int pilotExecutePilotWhileCloaked + int pilotKillsWithHoloPilotActive + int pilotKillsWithAmpedWallActive +$STRUCT_END + +$STRUCT_START sDeathStats + int total + int totalPVP + int asPilot + int asTitan[titanClasses] + int byPilots + int bySpectres + int byGrunts + int byTitans[titanClasses] + int byNPCTitans[titanClasses] + int suicides + int whileEjecting +$STRUCT_END + +$STRUCT_START sMiscStats + int titanFalls + int titanFallsFirst + int titanEmbarks + int rodeos + int rodeosFromEject + int timesEjected + int timesEjectedNuclear + int burnCardsEarned + int burnCardsSpent + int boostsActivated + int spectreLeeches + int spectreLeechesByMap[maps] + int evacsAttempted + int evacsSurvived + int flagsCaptured + int flagsReturned + int arcCannonMultiKills + int gruntsConscripted + int hardpointsCaptured + int challengeTiersCompleted + int challengesCompleted + int dailyChallengesCompleted + int timesLastTitanRemaining + int killingSprees + int coopChallengesCompleted + int forgedCertificationsUsed + int regenForgedCertificationsUsed +$STRUCT_END + + +$STRUCT_START sFDStats + int arcMinesPlaced + int turretsPlaced + int rodeos + int rodeoNukes + int arcMineZaps + int turretKills + int harvesterBoosts + int wavesComplete + int easyWins + int normalWins + int hardWins + int masterWins + int insaneWins + int highestTitanFDLevel +$STRUCT_END + + +$STRUCT_START sTitanStats + int pilots + int titansTotal + int ejections + int titansWhileDoomed + int titanDamage + int titansAsPrime + int pilotsAsPrime + int executionsAsPrime + int coresEarned + int matchesByDifficulty[5] + int perfectMatchesByDifficulty[5] +$STRUCT_END + +sGameStats gameStats +sMapStats mapStats[maps] +sHoursPlayed timeStats +sMilesTraveled distanceStats +sWeaponStats weaponStats[loadoutWeaponsAndAbilities] +sWeaponKillStats weaponKillStats[loadoutWeaponsAndAbilities] +sKillStats killStats +sDeathStats deathStats +sMiscStats miscStats +sFDStats fdStats +sTitanStats titanStats[titanClasses] + +float kdratio_lifetime +float kdratio_lifetime_pvp +float kdratio_match[10] +float kdratiopvp_match[10] + +int winStreak +int highestWinStreakEver +bool winStreakIsDraws +int winLossHistory[10] // int instead of bool so we can have win, loss, and draw +int winLossHistorySize + +int mostProjectilesCollectedInVortex +int blackMarketItemsBought + +bool respawnKillInfected + + +//######################### +// WEAPONS +//######################### + +$STRUCT_START weaponMain + sWeaponStats weaponStats + sWeaponKillStats weaponKillStats + + int weaponXP + int previousWeaponXP + + int proScreenKills + int previousProScreenKills + + // bitfields + int newMods + int unlockedMods + int newWeaponSkins[5] + int unlockedWeaponSkins[5] + int newPrimeWeaponSkins[6] + int unlockedPrimeWeaponSkins[6] + int newFeatures + int unlockedFeatures +$STRUCT_END + +$STRUCT_START weaponOffhand + sWeaponStats weaponStats + sWeaponKillStats weaponKillStats +$STRUCT_END + +$STRUCT_START titanMain + // bitfields + int newPassives[2] + int unlockedPassives[2] + int newSkins[5] + int unlockedSkins[5] + int newPrimeSkins[2] //TODO: These are warpaints, not prime titan related and should be renamed next game! Too late since we shipped with it + int unlockedPrimeSkins[2] //TODO: These are warpaints, not prime titan related and should be renamed next game! Too late since we shipped with it + int newWeaponSkins[5] + int unlockedWeaponSkins[5] + int newPrimeWeaponSkins + int unlockedPrimeWeaponSkins + int newTitanDecals[3] + int unlockedTitanDecals[3] + int newPrimeTitanDecals + int unlockedPrimeTitanDecals + int unlockedFDUpgrades[2] + int newFDUpgrades[2] +$STRUCT_END + +weaponMain pilotWeapons[35] +weaponOffhand pilotOffhands[35] +weaponMain titanWeapons[15] +weaponOffhand titanOffhands[30] + +titanMain titanChassis[12] + +bool hasSeenStore + +// bitfields +int newPilotSkins[5] +int unlockedPilotSkins[5] +int newPrimePilotSkins +int unlockedPrimePilotSkins + +int newPilotWeapons[2] +int unlockedPilotWeapons[2] +int newPilotOffhands[2] +int unlockedPilotOffhands[2] +int newPilotPassives +int unlockedPilotPassives + +int newTitanOffhands[2] +int unlockedTitanOffhands[2] +int newTitanPassives +int unlockedTitanPassives +int newTitanChassis +int unlockedTitanChassis +int newPrimeTitans +int unlockedPrimeTitans +int newPilotSuits +int unlockedPilotSuits +int newPilotExecutions +int unlockedPilotExecutions + +int unlockedFeatures[2] +int newFeatures[2] + +int unlockedBoosts +int newBoosts + +int unlockedFactions +int newFactions + +int unlockedCallingCards[16] +int newCallingCards[16] + +int unlockedCallsignIcons[7] +int newCallsignIcons[7] + +int unlockedCommsIcons[5] +int newCommsIcons[5] + +int newTitanExecutions +int unlockedTitanExecutions + +//######################### +// CHALLENGES +//######################### + +$ENUM_START challenge + NULL + // General + + ch_games_played + ch_games_won + ch_games_mvp + ch_titan_falls + ch_rodeos + ch_times_ejected + ch_spectres_leeched + + // Time + + ch_hours_played + ch_hours_played_pilot + ch_hours_played_titan + ch_hours_wallhang + + // Distance + + ch_dist_total + ch_dist_pilot + ch_dist_titan + ch_dist_wallrun + ch_dist_inair + ch_dist_zipline + ch_dist_on_friendly_titan + ch_dist_on_enemy_titan + + // Kills + + ch_grunt_kills + ch_spectre_kills + ch_marvin_kills + ch_first_strikes + ch_ejecting_pilot_kills + ch_kills_while_ejecting + ch_cloaked_pilot_kills + ch_kills_while_cloaked + ch_wallrunning_pilot_kills + ch_wallhanging_pilot_kills + ch_kills_while_wallrunning + ch_kills_while_wallhanging + ch_pilotExecutePilot + ch_pilotKickMelee + ch_pilotKickMeleePilot + ch_titanMelee + ch_titanMeleePilot + ch_titanStepCrush + ch_titanStepCrushPilot + ch_titanExocutionStryder + ch_titanExocutionBuddy + ch_titanExocutionAtlas + ch_titanExocutionOgre + ch_titanFallKill + ch_petTitanKillsFollowMode + ch_petTitanKillsGuardMode + ch_rodeo_kills + + // Titan Primary + + ch_40mm_kills + ch_40mm_pilot_kills + ch_40mm_titan_kills + ch_40mm_spectre_kills + ch_40mm_grunt_kills + ch_40mm_hours_used + ch_40mm_crits + + ch_xo16_kills + ch_xo16_pilot_kills + ch_xo16_titan_kills + ch_xo16_spectre_kills + ch_xo16_grunt_kills + ch_xo16_hours_used + ch_xo16_headshots + ch_xo16_crits + + ch_titan_sniper_kills + ch_titan_sniper_pilot_kills + ch_titan_sniper_titan_kills + ch_titan_sniper_spectre_kills + ch_titan_sniper_grunt_kills + ch_titan_sniper_hours_used + ch_titan_sniper_crits + + ch_rocket_launcher_kills + ch_rocket_launcher_pilot_kills + ch_rocket_launcher_titan_kills + ch_rocket_launcher_spectre_kills + ch_rocket_launcher_grunt_kills + ch_rocket_launcher_hours_used + + ch_triple_threat_kills + ch_triple_threat_pilot_kills + ch_triple_threat_titan_kills + ch_triple_threat_spectre_kills + ch_triple_threat_grunt_kills + ch_triple_threat_hours_used + + // Titan Ordnance + + ch_salvo_rockets_kills + ch_salvo_rockets_pilot_kills + ch_salvo_rockets_titan_kills + ch_salvo_rockets_spectre_kills + ch_salvo_rockets_grunt_kills + ch_salvo_rockets_hours_used + + ch_homing_rockets_titan_kills + ch_homing_rockets_hours_used + + ch_dumbfire_rockets_kills + ch_dumbfire_rockets_pilot_kills + ch_dumbfire_rockets_titan_kills + ch_dumbfire_rockets_spectre_kills + ch_dumbfire_rockets_grunt_kills + ch_dumbfire_rockets_hours_used + + ch_shoulder_rockets_titan_kills + ch_shoulder_rockets_hours_used + + // Pilot Primary + + ch_smart_pistol_kills + ch_smart_pistol_pilot_kills + ch_smart_pistol_spectre_kills + ch_smart_pistol_grunt_kills + ch_smart_pistol_hours_used + + ch_shotgun_kills + ch_shotgun_pilot_kills + ch_shotgun_spectre_kills + ch_shotgun_grunt_kills + ch_shotgun_hours_used + + ch_r97_kills + ch_r97_pilot_kills + ch_r97_spectre_kills + ch_r97_grunt_kills + ch_r97_hours_used + ch_r97_headshots + + ch_car_kills + ch_car_pilot_kills + ch_car_spectre_kills + ch_car_grunt_kills + ch_car_hours_used + ch_car_headshots + + ch_lmg_kills + ch_lmg_pilot_kills + ch_lmg_spectre_kills + ch_lmg_grunt_kills + ch_lmg_hours_used + ch_lmg_headshots + + ch_rspn101_kills + ch_rspn101_pilot_kills + ch_rspn101_spectre_kills + ch_rspn101_grunt_kills + ch_rspn101_hours_used + ch_rspn101_headshots + + ch_hemlok_kills + ch_hemlok_pilot_kills + ch_hemlok_spectre_kills + ch_hemlok_grunt_kills + ch_hemlok_hours_used + ch_hemlok_headshots + + ch_g2_kills + ch_g2_pilot_kills + ch_g2_spectre_kills + ch_g2_grunt_kills + ch_g2_hours_used + ch_g2_headshots + + ch_dmr_kills + ch_dmr_pilot_kills + ch_dmr_spectre_kills + ch_dmr_grunt_kills + ch_dmr_hours_used + ch_dmr_headshots + + ch_sniper_kills + ch_sniper_pilot_kills + ch_sniper_spectre_kills + ch_sniper_grunt_kills + ch_sniper_hours_used + + // Pilot Secondary + + ch_smr_titan_kills + ch_smr_crits + + ch_mgl_titan_kills + + ch_archer_titan_kills + + ch_defender_titan_kills + ch_defender_crits + + // Pilot Ordnance + + ch_frag_grenade_throws + ch_frag_grenade_kills + ch_frag_grenade_pilot_kills + ch_frag_grenade_grunt_kills + + ch_emp_grenade_throws + ch_emp_grenade_kills + ch_emp_grenade_pilot_kills + ch_emp_grenade_grunt_kills + ch_emp_grenade_spectre_kills + + ch_proximity_mine_throws + ch_proximity_mine_kills + ch_proximity_mine_pilot_kills + ch_proximity_mine_grunt_kills + + ch_satchel_throws + ch_satchel_kills + ch_satchel_pilot_kills + ch_satchel_grunt_kills +$ENUM_END + +$ENUM_START dailychallenge + NULL + // Dailies + + ch_daily_xo16_pilot_kills + ch_daily_emp_grenade_kills + ch_daily_kills_nuclear_core +$ENUM_END + +$STRUCT_START eChallenge + float progress + float previousProgress +$STRUCT_END + +eChallenge challenges[challenge] +eChallenge dailychallenges[dailychallenge] + +$STRUCT_START activeDailyChallenge + dailychallenge ref + int day +$STRUCT_END + +activeDailyChallenge activeDailyChallenges[9] // holds the players daily challenge refs + +int trackedChallenges[3] +int EOGTrackedChallenges[3] +string{64} trackedChallengeRefs[3] +string{64} EOGTrackedChallengeRefs[3] +int dailyChallengeDayIndex +bool newDailyChallenges + +//######################### +// Post Game +//######################### + +bool isPostGameScoreboardValid + +$STRUCT_START ePostGamePlayer + string{32} name + string{22} xuid + int level + int gen + int team + int scores[4] + bool playingRanked + int rank + int callsignIconIndex + float matchPerformance +$STRUCT_END + +$STRUCT_START ePostGameData + int gameMode + int map + string{22} myXuid + int myTeam + int maxTeamSize + faction factionIMC + faction factionMCOR + int scoreIMC + int scoreMCOR + bool teams + bool privateMatch + bool ranked + bool hadMatchLossProtection + recentUnlock challengeUnlocks[6] + ePostGamePlayer players[16] +$STRUCT_END + +ePostGameData postGameData + +//######################### +// FD Awards +//######################### + +bool isFDPostGameScoreboardValid + +$STRUCT_START eFDPostGamePlayer + string{32} name + string{22} xuid + int awardId + float awardValue + int suitIndex +$STRUCT_END + +$STRUCT_START eFDPostGameData + int gameMode + int map + int myIndex + int numPlayers + eFDPostGamePlayer players[4] +$STRUCT_END + +eFDPostGameData postGameDataFD + +// Track Gooser progress ( ejecting pilot kills ) before requirements changed so we can reward these players later if they did it the hard way +int previousGooserProgress + + +//######################### +// GAME HISTORY +//######################### + +// If these are size adjusted, re-initialize with InitPlayerMapHistory() and InitPlayerModeHistory() +int mapHistory[24] +int modeHistory[10] +string{32} lastPlaylist + +//######################### +// Dailies +//######################### + +int lastDailyMatchVictory +int lastTimePlayed +int lastTimeLoggedIn + +$STRUCT_START struct_ranked + bool isPlayingRanked + int currentRank // deprecated but still used by code - need to fix +$STRUCT_END + +int abandonCountForMode[gameModes] +gameModes lastAbandonedMode +int lastAbandonTime + +struct_ranked ranked diff --git a/pkg/pdata/persistent_player_data_version_231_test.go b/pkg/pdata/persistent_player_data_version_231_test.go new file mode 100644 index 0000000..e0793f5 --- /dev/null +++ b/pkg/pdata/persistent_player_data_version_231_test.go @@ -0,0 +1,43 @@ +package pdata + +import ( + "bytes" + "os" + "testing" +) + +func TestPdataRoundtrip(t *testing.T) { + for _, fn := range []string{"placeholder_playerdata.pdata"} { + fn := fn + t.Run(fn, func(t *testing.T) { + obuf, err := os.ReadFile(fn) + if err != nil { + panic(err) + } + + var d1 Pdata + if err := d1.UnmarshalBinary(obuf); err != nil { + t.Fatalf("failed to unmarshal %q: %v", fn, err) + } + rbuf, err := d1.MarshalBinary() + if err != nil { + t.Fatalf("failed to marshal %q: %v", fn, err) + } + if !bytes.Equal(obuf, rbuf) { + t.Errorf("round-trip failed: re-marshaled data does not match") + } + + var d2 Pdata + if err := d2.UnmarshalBinary(rbuf); err != nil { + t.Fatalf("failed to unmarshal marshaled %q: %v", fn, err) + } + ebuf, err := d2.MarshalBinary() + if err != nil { + t.Fatalf("failed to marshal unmarshaled marshaled %q: %v", fn, err) + } + if !bytes.Equal(rbuf, ebuf) { + t.Errorf("internal round-trip failed: re-marshaled unmarshaled data encoded by marshal does not match") + } + }) + } +} diff --git a/pkg/pdata/placeholder_playerdata.pdata b/pkg/pdata/placeholder_playerdata.pdata Binary files differnew file mode 100755 index 0000000..c4786b2 --- /dev/null +++ b/pkg/pdata/placeholder_playerdata.pdata |