@@ -55,14 +55,16 @@ public static async Task<XivModelInfo> GetModelInfo(DirectoryInfo gameDirectory,
55
55
56
56
// These are the offsets to relevant data
57
57
// These will need to be changed if data gets added or removed with a patch
58
- const int modelDataOffset = 4 ;
58
+ int startOffset = 8 ;
59
+ int modelDataOffset = 12 ;
59
60
60
61
var ex = new Ex ( gameDirectory ) ;
61
62
var modelCharaEx = await ex . ReadExData ( XivEx . modelchara ) ;
62
63
63
64
// Big Endian Byte Order
64
65
using ( var br = new BinaryReaderBE ( new MemoryStream ( modelCharaEx [ index ] ) ) )
65
66
{
67
+ br . BaseStream . Seek ( startOffset , SeekOrigin . Begin ) ;
66
68
xivModelInfo . PrimaryID = br . ReadInt16 ( ) ;
67
69
68
70
br . BaseStream . Seek ( modelDataOffset , SeekOrigin . Begin ) ;
@@ -99,8 +101,8 @@ public static XivModelInfo GetModelInfo(Dictionary<int, byte[]> modelCharaEx, in
99
101
100
102
// These are the offsets to relevant data
101
103
// These will need to be changed if data gets added or removed with a patch
102
- int startOffset = 4 ;
103
- int modelDataOffset = 8 ;
104
+ int startOffset = 8 ;
105
+ int modelDataOffset = 12 ;
104
106
if ( XivCache . GameInfo . GameLanguage == Enums . XivLanguage . Chinese )
105
107
{
106
108
startOffset = 0 ;
@@ -115,8 +117,6 @@ public static XivModelInfo GetModelInfo(Dictionary<int, byte[]> modelCharaEx, in
115
117
// Big Endian Byte Order
116
118
using ( var br = new BinaryReaderBE ( new MemoryStream ( modelCharaEx [ index ] ) ) )
117
119
{
118
-
119
-
120
120
br . BaseStream . Seek ( startOffset , SeekOrigin . Begin ) ;
121
121
xivModelInfo . PrimaryID = br . ReadInt16 ( ) ;
122
122
0 commit comments