rattletrap 9.1.4 → 9.2.0
raw patch · 7 files changed
+19/−4 lines, 7 files
Files
- README.markdown +2/−2
- rattletrap.cabal +1/−1
- source/library/Rattletrap/Data.hs +7/−1
- source/library/Rattletrap/Decode/RemoteId.hs +2/−0
- source/library/Rattletrap/Encode/RemoteId.hs +2/−0
- source/library/Rattletrap/Type/RemoteId.hs +2/−0
- source/test-suite/Main.hs +3/−0
README.markdown view
@@ -11,7 +11,7 @@ can be used to modify replays in order to force everyone into the same car or change the map a game was played on. -Rattletrap supports every version of Rocket League up to [1.78][], which was+Rattletrap supports every version of Rocket League up to [1.84][], which was released on 2020-06-16. If a replay can be played by the Rocket League client, it can be parsed by Rattletrap. (If not, that's a bug. Please report it!) @@ -134,7 +134,7 @@ [Docker build badge]: https://img.shields.io/docker/build/taylorfausak/rattletrap.svg?label=docker&logo=docker&logoColor=white [docker build]: https://hub.docker.com/r/taylorfausak/rattletrap [Rocket League]: https://www.rocketleague.com-[1.78]: https://www.rocketleague.com/news/patch-notes-v1-78/+[1.84]: https://www.rocketleague.com/news/patch-notes-v1-84/ [Ball Chasing]: https://ballchasing.com [Haskell]: https://www.haskell.org [C# parser]: https://github.com/jjbott/RocketLeagueReplayParser
rattletrap.cabal view
@@ -1,7 +1,7 @@ cabal-version: 2.2 name: rattletrap-version: 9.1.4+version: 9.2.0 category: Game description: Rattletrap parses and generates Rocket League replays.
source/library/Rattletrap/Data.hs view
@@ -105,6 +105,7 @@ , "TAGame.GameEvent_SoccarPrivate_TA" , "TAGame.GameEvent_SoccarSplitscreen_TA" , "TAGame.GRI_TA"+ , "TAGame.MaxTimeWarningData_TA" , "TAGame.PRI_TA" , "TAGame.SpecialPickup_BallCarSpring_TA" , "TAGame.SpecialPickup_BallFreeze_TA"@@ -208,6 +209,7 @@ , ("Haunted_TrainStation_P.TheWorld:PersistentLevel.HauntedBallTrapTrigger_TA_1", "TAGame.HauntedBallTrapTrigger_TA") , ("ProjectX.Default__NetModeReplicator_X", "ProjectX.NetModeReplicator") , ("TAGame.Default__CameraSettingsActor_TA", "TAGame.CameraSettingsActor_TA")+ , ("TAGame.Default__MaxTimeWarningData_TA", "TAGame.MaxTimeWarningData_TA") , ("TAGame.Default__PRI_TA", "TAGame.PRI_TA") , ("TheWorld:PersistentLevel.BreakOutActor_Platform_TA", "TAGame.BreakOutActor_Platform_TA") , ("TheWorld:PersistentLevel.CrowdActor_TA", "TAGame.CrowdActor_TA")@@ -240,6 +242,7 @@ , ("Engine.PlayerReplicationInfo:Score", AttributeTypeInt) , ("Engine.PlayerReplicationInfo:Team", AttributeTypeFlaggedInt) , ("Engine.PlayerReplicationInfo:UniqueId", AttributeTypeUniqueId)+ , ("Engine.ReplicatedActor_ORS:ReplicatedOwner", AttributeTypeFlaggedInt) , ("Engine.TeamInfo:Score", AttributeTypeInt) , ("ProjectX.GRI_X:bGameStarted", AttributeTypeBoolean) , ("ProjectX.GRI_X:GameServerID", AttributeTypeQWord)@@ -278,8 +281,8 @@ , ("TAGame.Car_TA:AddedCarForceMultiplier", AttributeTypeFloat) , ("TAGame.Car_TA:AttachedPickup", AttributeTypeFlaggedInt) , ("TAGame.Car_TA:ClubColors", AttributeTypeClubColors)- , ("TAGame.Car_TA:ReplicatedDemolish", AttributeTypeDemolish) , ("TAGame.Car_TA:ReplicatedDemolish_CustomFX", AttributeTypeCustomDemolish)+ , ("TAGame.Car_TA:ReplicatedDemolish", AttributeTypeDemolish) , ("TAGame.Car_TA:TeamPaint", AttributeTypeTeamPaint) , ("TAGame.CarComponent_Boost_TA:bNoBoost", AttributeTypeBoolean) , ("TAGame.CarComponent_Boost_TA:BoostModifier", AttributeTypeFloat)@@ -328,6 +331,8 @@ , ("TAGame.GameEvent_Team_TA:bForfeit", AttributeTypeBoolean) , ("TAGame.GameEvent_Team_TA:MaxTeamSize", AttributeTypeInt) , ("TAGame.GRI_TA:NewDedicatedServerIP", AttributeTypeString)+ , ("TAGame.MaxTimeWarningData_TA:EndGameEpochTime", AttributeTypeInt64)+ , ("TAGame.MaxTimeWarningData_TA:EndGameWarningEpochTime", AttributeTypeInt64) , ("TAGame.PRI_TA:bIsDistracted", AttributeTypeBoolean) , ("TAGame.PRI_TA:bIsInSplitScreen", AttributeTypeBoolean) , ("TAGame.PRI_TA:bMatchMVP", AttributeTypeBoolean)@@ -384,6 +389,7 @@ , ("TAGame.Team_TA:ClubColors", AttributeTypeClubColors) , ("TAGame.Team_TA:ClubID", AttributeTypeInt64) , ("TAGame.Team_TA:CustomTeamName", AttributeTypeString)+ , ("TAGame.Team_TA:Difficulty", AttributeTypeInt) , ("TAGame.Team_TA:GameEvent", AttributeTypeFlaggedInt) , ("TAGame.Team_TA:LogoData", AttributeTypeFlaggedInt) , ("TAGame.Vehicle_TA:bDriving", AttributeTypeBoolean)
source/library/Rattletrap/Decode/RemoteId.hs view
@@ -4,6 +4,7 @@ where import Rattletrap.Decode.Common+import Rattletrap.Decode.Str import Rattletrap.Decode.Word64le import Rattletrap.Type.RemoteId import Rattletrap.Type.Word64le@@ -27,6 +28,7 @@ 7 -> if version >= (868, 24, 10) then RemoteIdPsyNet . Left <$> decodeWord64leBits else RemoteIdPsyNet . Right <$> getWord256+ 11 -> RemoteIdEpic <$> decodeStrBits _ -> fail ("[RT09] unknown system id " <> show systemId) decodePsName :: DecodeBits Text.Text
source/library/Rattletrap/Encode/RemoteId.hs view
@@ -4,6 +4,7 @@ where import Rattletrap.Encode.Common+import Rattletrap.Encode.Str import Rattletrap.Encode.Word64le import Rattletrap.Type.RemoteId import Rattletrap.Type.Word64le@@ -25,6 +26,7 @@ RemoteIdSteam word64 -> putWord64Bits word64 RemoteIdSwitch a b c d -> putWord256 a b c d RemoteIdXbox word64 -> putWord64Bits word64+ RemoteIdEpic str -> putTextBits str putWord256 :: Word64le -> Word64le -> Word64le -> Word64le -> BinaryBits.BitPut ()
source/library/Rattletrap/Type/RemoteId.hs view
@@ -6,6 +6,7 @@ where import Rattletrap.Type.Common+import Rattletrap.Type.Str import Rattletrap.Type.Word64le data RemoteId@@ -16,6 +17,7 @@ | RemoteIdSteam Word64le | RemoteIdSwitch Word64le Word64le Word64le Word64le | RemoteIdXbox Word64le+ | RemoteIdEpic Str deriving (Eq, Ord, Show) $(deriveJson ''RemoteId)
source/test-suite/Main.hs view
@@ -159,6 +159,7 @@ , ("a09e", "a tournament") , ("a128", "a round count down") , ("a184", "max score")+ , ("a1c0", "epic system id") , ("a52f", "some more mutators") , ("a558", "extended explosion data") , ("a671", "a waiting player")@@ -176,6 +177,7 @@ , ("d1d5", "v1.68") , ("d236", "rlcs s2") , ("d428", "a private hockey match")+ , ("d44c", "ranked tournament") , ("d52e", "psynet system id") , ("d7fb", "an explosion attribute") , ("d818", "heatseeker")@@ -192,4 +194,5 @@ , ("f7b9", "a hockey game event") , ("f811", "no frames") , ("fdc7", "an MVP")+ , ("ffb7", "with difficulty") ]