From c79d420f147a451591dccaf2e624777fa01e1fce Mon Sep 17 00:00:00 2001 From: RDW Date: Wed, 25 Sep 2024 12:11:04 +0200 Subject: [PATCH 1/2] Docs: List ACT mystery bytes as uint8 instead of int32 This should make it obvious how many garbage bytes there are. --- docs/file-formats/ACT.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/file-formats/ACT.md b/docs/file-formats/ACT.md index 626d901..b7902b1 100644 --- a/docs/file-formats/ACT.md +++ b/docs/file-formats/ACT.md @@ -58,7 +58,7 @@ struct SpriteLayer { }; struct AnimationFrame { - int32_t UnusedMysteryBytes[8]; + uint8_t UnusedMysteryBytes[32]; uint32_t SpriteLayerCount; struct SpriteLayer SpriteLayers[SpriteLayerCount]; }; @@ -97,7 +97,7 @@ struct SpriteLayer { }; struct AnimationFrame { - int32_t UnusedMysteryBytes[8]; + uint8_t UnusedMysteryBytes[32]; uint32_t SpriteLayerCount; struct SpriteLayer SpriteLayers[SpriteLayerCount]; }; @@ -147,7 +147,7 @@ struct SpriteLayer { // diff-add-start struct SpriteAnchor{ - int32_t UnusedMysteryBytes; + uint8_t UnusedMysteryBytes[4]; int32_t PositionU; int32_t PositionV; int32_t UnknownFlag; @@ -155,7 +155,7 @@ struct SpriteAnchor{ // diff-add-end struct AnimationFrame { - int32_t UnusedMysteryBytes[8]; + uint8_t UnusedMysteryBytes[32]; uint32_t SpriteLayerCount; struct SpriteLayer SpriteLayers[SpriteLayerCount]; // diff-add-start @@ -211,14 +211,14 @@ struct SpriteLayer { }; struct SpriteAnchor{ - int32_t UnusedMysteryBytes; + uint8_t UnusedMysteryBytes[4]; int32_t PositionU; int32_t PositionV; int32_t UnknownFlag; }; struct AnimationFrame { - int32_t UnusedMysteryBytes[8]; + uint8_t UnusedMysteryBytes[32]; uint32_t SpriteLayerCount; struct SpriteLayer SpriteLayers[SpriteLayerCount]; int32_t SpriteAnchorCount; @@ -272,14 +272,14 @@ struct SpriteLayer { }; struct SpriteAnchor{ - int32_t UnusedMysteryBytes; + uint8_t UnusedMysteryBytes[4]; int32_t PositionU; int32_t PositionV; int32_t UnknownFlag; }; struct AnimationFrame { - int32_t UnusedMysteryBytes[8]; + uint8_t UnusedMysteryBytes[32]; uint32_t SpriteLayerCount; struct SpriteLayer SpriteLayers[SpriteLayerCount]; int32_t SpriteAnchorCount; From 26aa5b836c4cd09b39d182e2856dac94a659fe41 Mon Sep 17 00:00:00 2001 From: RDW Date: Wed, 25 Sep 2024 12:21:05 +0200 Subject: [PATCH 2/2] Docs: Add the missing ACT AnimationEventID field Reported by Hukasu. --- docs/file-formats/ACT.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/file-formats/ACT.md b/docs/file-formats/ACT.md index b7902b1..be6c37c 100644 --- a/docs/file-formats/ACT.md +++ b/docs/file-formats/ACT.md @@ -61,6 +61,7 @@ struct AnimationFrame { uint8_t UnusedMysteryBytes[32]; uint32_t SpriteLayerCount; struct SpriteLayer SpriteLayers[SpriteLayerCount]; + int32_t AnimationEventID; }; struct AnimationClip { @@ -100,6 +101,7 @@ struct AnimationFrame { uint8_t UnusedMysteryBytes[32]; uint32_t SpriteLayerCount; struct SpriteLayer SpriteLayers[SpriteLayerCount]; + int32_t AnimationEventID; }; struct AnimationClip { @@ -158,6 +160,7 @@ struct AnimationFrame { uint8_t UnusedMysteryBytes[32]; uint32_t SpriteLayerCount; struct SpriteLayer SpriteLayers[SpriteLayerCount]; + int32_t AnimationEventID; // diff-add-start int32_t SpriteAnchorCount; struct SpriteAnchor AnchorPoints[SpriteAnchorCount]; @@ -221,6 +224,7 @@ struct AnimationFrame { uint8_t UnusedMysteryBytes[32]; uint32_t SpriteLayerCount; struct SpriteLayer SpriteLayers[SpriteLayerCount]; + int32_t AnimationEventID; int32_t SpriteAnchorCount; struct SpriteAnchor AnchorPoints[SpriteAnchorCount]; }; @@ -282,6 +286,7 @@ struct AnimationFrame { uint8_t UnusedMysteryBytes[32]; uint32_t SpriteLayerCount; struct SpriteLayer SpriteLayers[SpriteLayerCount]; + int32_t AnimationEventID; int32_t SpriteAnchorCount; struct SpriteAnchor AnchorPoints[SpriteAnchorCount]; };