Skip to content

Commit ddc08aa

Browse files
committed
Added some new structs
Somehow missed realising that the inventory table didn't decompile correctly at all, so that is now fixed. Plus lots of minor other little changes.
1 parent ea2922a commit ddc08aa

29 files changed

+381
-189
lines changed

MBINCompiler/MBINCompiler.csproj

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,13 +61,24 @@
6161
<Compile Include="Models\Structs\GcDiscoveryHelperTimings.cs" />
6262
<Compile Include="Models\Structs\GcHUDStartup.cs" />
6363
<Compile Include="Models\Structs\GcHUDStartupTable.cs" />
64+
<Compile Include="Models\Structs\GcInventoryBaseStat.cs" />
65+
<Compile Include="Models\Structs\GcInventoryCostData.cs" />
66+
<Compile Include="Models\Structs\GcInventoryGenerationBaseStatClassData.cs" />
67+
<Compile Include="Models\Structs\GcInventoryLayoutGenerationData.cs" />
68+
<Compile Include="Models\Structs\GcInventoryLayoutGenerationDataEntry.cs" />
69+
<Compile Include="Models\Structs\GcInventoryGenerationBaseStatDataEntry.cs" />
70+
<Compile Include="Models\Structs\GcInventoryGenerationBaseStatData.cs" />
71+
<Compile Include="Models\Structs\GcInventoryLayoutSizeType.cs" />
6472
<Compile Include="Models\Structs\GcInventorySlotActionData.cs" />
73+
<Compile Include="Models\Structs\GcInventoryCostDataEntry.cs" />
74+
<Compile Include="Models\Structs\GcMessageProjectileImpact.cs" />
6575
<Compile Include="Models\Structs\GcSpaceMapObjectData.cs" />
6676
<Compile Include="Models\Structs\GcBlockListPersistence.cs" />
6777
<Compile Include="Models\Structs\GcBlockedMessage.cs" />
6878
<Compile Include="Models\Structs\GcNGuiActionData.cs" />
6979
<Compile Include="Models\Structs\GcDeprecatedAssetsTable.cs" />
7080
<Compile Include="Models\Structs\GcCloudProperties.cs" />
81+
<Compile Include="Models\Structs\GcWeaponClasses.cs" />
7182
<Compile Include="Models\Structs\TkNGuiRectanglePulseEffect.cs" />
7283
<Compile Include="Models\Structs\GcPhotoModeSettings.cs" />
7384
<Compile Include="Models\Structs\GcPhotoModeAdjustData.cs" />

MBINCompiler/Models/NMSTemplate.cs

Lines changed: 65 additions & 45 deletions
Large diffs are not rendered by default.

MBINCompiler/Models/Structs/GcBirdData.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
namespace MBINCompiler.Models.Structs
22
{
3-
public class GcBirdData : NMSTemplate
3+
public class GcBirdData : NMSTemplate // size: 0x90
44
{
55
public float FlapSpeedMax;
66
public float FlapSpeedMin;

MBINCompiler/Models/Structs/GcExperienceTimers.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@
22
{
33
public class GcExperienceTimers : NMSTemplate // size: 0x20 // probably used in a global
44
{
5-
/* 0x00 */ public int HighChance;
6-
/* 0x04 */ public int LowChance;
7-
/* 0x08 */ public Vector2f High;
8-
/* 0x10 */ public Vector2f Normal;
9-
/* 0x18 */ public Vector2f Low;
5+
/* 0x00 */ public int HighChance; // 0Ah
6+
/* 0x04 */ public int LowChance; // 1Eh
7+
/* 0x08 */ public Vector2f High; // 41F00000h x2
8+
/* 0x10 */ public Vector2f Normal; // 42700000h x2
9+
/* 0x18 */ public Vector2f Low; // 42F00000h x2
1010
}
1111
}

MBINCompiler/Models/Structs/GcExplosionData.cs

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,19 @@
22

33
namespace MBINCompiler.Models.Structs
44
{
5-
public class GcExplosionData : NMSTemplate
5+
public class GcExplosionData : NMSTemplate // size: 0xC0 // maybe used in a global?
66
{
77
[NMS(Size = 0x10)]
8-
public string Id;
9-
public TkModelResource Model;
10-
public GcAudioWwiseEvents AkEvent;
11-
public List<GcDebrisData> Debris;
12-
public float Life;
13-
public float Scale;
14-
public float DistanceScale;
15-
public float DistanceScaleMax;
16-
public bool CamShake;
17-
public float MaxSpawnDistance;
8+
/* 0x00 */ public string Id;
9+
/* 0x10 */ public TkModelResource Model;
10+
/* 0x94 */ public GcAudioWwiseEvents AkEvent;
11+
/* 0x98 */ public List<GcDebrisData> Debris;
12+
/* 0xA8 */ public float Life; // 40400000
13+
/* 0xAC */ public float Scale; // 3F800000
14+
/* 0xB0 */ public float DistanceScale; // 42480000
15+
/* 0xB4 */ public float DistanceScaleMax;
16+
/* 0xB8 */ public bool CamShake; // di
17+
/* 0xB9 */ public bool CamShakeSpace;
18+
/* 0xBC */ public float MaxSpawnDistance; // edi
1819
}
1920
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
using System.Collections.Generic;
2+
3+
namespace MBINCompiler.Models.Structs
4+
{
5+
public class GcInventoryBaseStat : NMSTemplate // size: 0x30
6+
{
7+
[NMS(Size = 0x10)]
8+
public string BaseStatID;
9+
[NMS(Size = 0x10)]
10+
public string LocID;
11+
public List<GcInventoryBaseStatBonus> StatBonus;
12+
}
13+
}
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
namespace MBINCompiler.Models.Structs
22
{
3-
public class GcInventoryBaseStatBonus : NMSTemplate
3+
public class GcInventoryBaseStatBonus : NMSTemplate // size: 0x8
44
{
55
public GcStatsTypes StatType;
66
public bool LessIsBetter;
7+
[NMS(Size = 0x3, Ignore = true)]
8+
public byte[] EndPadding;
79
}
810
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
using System.Collections.Generic;
2+
3+
namespace MBINCompiler.Models.Structs
4+
{
5+
public class GcInventoryCostData : NMSTemplate // size: 0xF0
6+
{
7+
[NMS(Size = 0x6, EnumValue = new[] { "Freighter", "Dropship", "Fighter", "Scientific", "Shuttle", "PlayerFreighter" })]
8+
public GcInventoryCostDataEntry[] InventoryCostData;
9+
10+
}
11+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
using System.Collections.Generic;
2+
3+
namespace MBINCompiler.Models.Structs
4+
{
5+
public class GcInventoryCostDataEntry : NMSTemplate // size: 0x28 maybe in global??
6+
{
7+
/* 0x00 */ public int MinSlots; // 0Fh
8+
/* 0x04 */ public float MinValueInMillions; // 41200000h
9+
/* 0x08 */ public int MaxSlots; // 30h
10+
/* 0x0C */ public float MaxValueInMillions; // 42F00000h
11+
/* 0x10 */ public float CoolMultiplier; // 41A00000h
12+
/* 0x14 */ public float TradeInMultiplier; // 428C0000h
13+
[NMS(Size = 0x4, EnumValue = new[] { "C", "B", "A", "S" })]
14+
/* 0x18 */ public float[] ClassMultiplier;
15+
16+
}
17+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
using System.Collections.Generic;
2+
3+
namespace MBINCompiler.Models.Structs
4+
{
5+
public class GcInventoryGenerationBaseStatClassData : NMSTemplate // size: 0x10
6+
{
7+
public List<GcInventoryGenerationBaseStatDataEntry> BaseStats;
8+
}
9+
}

0 commit comments

Comments
 (0)