├── .gitignore
├── LICENSE.md
├── MBINCompiler.sln
├── MBINCompiler
├── App.config
├── EXmlFile.cs
├── Half.cs
├── HalfHelper.cs
├── IO.cs
├── MBINCompiler.csproj
├── MBINFile.cs
├── Models
│ ├── EXmlBase.cs
│ ├── EXmlData.cs
│ ├── EXmlProperty.cs
│ ├── MBINHeader.cs
│ ├── NMSAttribute.cs
│ ├── NMSTemplate.cs
│ └── Structs
│ │ ├── Colour.cs
│ │ ├── GcAIShipSpawnData.cs
│ │ ├── GcAISpaceshipComponentData.cs
│ │ ├── GcAISpaceshipInstanceData.cs
│ │ ├── GcAISpaceshipManagerData.cs
│ │ ├── GcAISpaceshipMappingData.cs
│ │ ├── GcAISpaceshipPreloadCacheData.cs
│ │ ├── GcAISpaceshipPreloadCacheDataTable.cs
│ │ ├── GcAISpaceshipPreloadList.cs
│ │ ├── GcAISpaceshipRoles.cs
│ │ ├── GcAISpaceshipTypes.cs
│ │ ├── GcActionTrigger.cs
│ │ ├── GcActionTriggerState.cs
│ │ ├── GcAlienPuzzleEntry.cs
│ │ ├── GcAlienPuzzleOption.cs
│ │ ├── GcAlienPuzzleTable.cs
│ │ ├── GcAlienRace.cs
│ │ ├── GcAlienSpeechEntry.cs
│ │ ├── GcAlienSpeechTable.cs
│ │ ├── GcAnimFrameEvent.cs
│ │ ├── GcAsteroidGeneratorAssignment.cs
│ │ ├── GcAsteroidGeneratorRing.cs
│ │ ├── GcAsteroidGeneratorSlab.cs
│ │ ├── GcAsteroidGeneratorSurround.cs
│ │ ├── GcAtlasGlobals.cs
│ │ ├── GcAudioAreaTriggerComponentData.cs
│ │ ├── GcAudioPulseDemo.cs
│ │ ├── GcAudioWwiseEvents.cs
│ │ ├── GcBeenShotEvent.cs
│ │ ├── GcBiomeData.cs
│ │ ├── GcBiomeFileList.cs
│ │ ├── GcBiomeList.cs
│ │ ├── GcBiomeListPerStarType.cs
│ │ ├── GcBiomeType.cs
│ │ ├── GcBirdData.cs
│ │ ├── GcBootLogoData.cs
│ │ ├── GcBuildingClassification.cs
│ │ ├── GcBuildingClusterPlacement.cs
│ │ ├── GcBuildingDefinitionData.cs
│ │ ├── GcBuildingDefinitionTable.cs
│ │ ├── GcBuildingDensity.cs
│ │ ├── GcBuildingDensityLevels.cs
│ │ ├── GcBuildingFilename.cs
│ │ ├── GcBuildingFilenameList.cs
│ │ ├── GcBuildingSpawnData.cs
│ │ ├── GcCameraShakeAction.cs
│ │ ├── GcCameraShakeCaptureData.cs
│ │ ├── GcCameraShakeData.cs
│ │ ├── GcCameraShakeMechanicalData.cs
│ │ ├── GcColourModifier.cs
│ │ ├── GcColourPaletteData.cs
│ │ ├── GcCostHealth.cs
│ │ ├── GcCostJourneyMilestone.cs
│ │ ├── GcCostJourneyStatLevel.cs
│ │ ├── GcCostMoney.cs
│ │ ├── GcCostProduct.cs
│ │ ├── GcCostStanding.cs
│ │ ├── GcCostSubstance.cs
│ │ ├── GcCostTable.cs
│ │ ├── GcCostTableEntry.cs
│ │ ├── GcCreatureAudioTable.cs
│ │ ├── GcCreatureBaitComponentData.cs
│ │ ├── GcCreatureComponentData.cs
│ │ ├── GcCreatureData.cs
│ │ ├── GcCreatureDataTable.cs
│ │ ├── GcCreatureFilename.cs
│ │ ├── GcCreatureFilenameTable.cs
│ │ ├── GcCreatureFootParticleData.cs
│ │ ├── GcCreatureFootParticleSingleData.cs
│ │ ├── GcCreatureFullBodyIKComponentData.cs
│ │ ├── GcCreatureHealthData.cs
│ │ ├── GcCreatureIkData.cs
│ │ ├── GcCreatureIkType.cs
│ │ ├── GcCreatureInfo.cs
│ │ ├── GcCreatureMoveAnimData.cs
│ │ ├── GcCreatureMovementData.cs
│ │ ├── GcCreatureRoleData.cs
│ │ ├── GcCreatureRoleDataTable.cs
│ │ ├── GcCreatureRoleDescription.cs
│ │ ├── GcCreatureRoleDescriptionTable.cs
│ │ ├── GcCreatureRoleFilename.cs
│ │ ├── GcCreatureRoleFilenameList.cs
│ │ ├── GcCreatureRoleFilenameTable.cs
│ │ ├── GcCreatureRoles.cs
│ │ ├── GcCreatureSpawnComponentData.cs
│ │ ├── GcCreatureSpawnData.cs
│ │ ├── GcCreatureStupidName.cs
│ │ ├── GcCreatureStupidNameTable.cs
│ │ ├── GcCreatureSwarmData.cs
│ │ ├── GcCreatureTypes.cs
│ │ ├── GcCreatureVocalData.cs
│ │ ├── GcCreatureVocalSoundData.cs
│ │ ├── GcCustomInventoryComponentData.cs
│ │ ├── GcDebrisData.cs
│ │ ├── GcDebugOptions.cs
│ │ ├── GcDefaultSaveData.cs
│ │ ├── GcDestroyAction.cs
│ │ ├── GcDestructableComponentData.cs
│ │ ├── GcDiscoveryTypes.cs
│ │ ├── GcDiscoveryWorth.cs
│ │ ├── GcDisplayText.cs
│ │ ├── GcDistanceScaleComponentData.cs
│ │ ├── GcDoShipFlybyClose.cs
│ │ ├── GcDoShipFlybyIntercept.cs
│ │ ├── GcDoShipFlybyOverhead.cs
│ │ ├── GcDroneComponentData.cs
│ │ ├── GcDroneControlData.cs
│ │ ├── GcDroneData.cs
│ │ ├── GcEncounterComponentData.cs
│ │ ├── GcEncyclopediaComponentData.cs
│ │ ├── GcEngineComponentData.cs
│ │ ├── GcEntitlementRewardData.cs
│ │ ├── GcEntitlementRewardsTable.cs
│ │ ├── GcEnvironmentSpawnData.cs
│ │ ├── GcExactResource.cs
│ │ ├── GcExperienceSpawnTable.cs
│ │ ├── GcExplosionData.cs
│ │ ├── GcExplosionDataTable.cs
│ │ ├── GcExternalObjectFileList.cs
│ │ ├── GcExternalObjectList.cs
│ │ ├── GcExternalObjectListOptions.cs
│ │ ├── GcFogProperties.cs
│ │ ├── GcFontData.cs
│ │ ├── GcFontTable.cs
│ │ ├── GcFontTypesEnum.cs
│ │ ├── GcGalacticAddressData.cs
│ │ ├── GcGalaxyGenerationSetupData.cs
│ │ ├── GcGalaxyMarkerSettings.cs
│ │ ├── GcGalaxyRenderSetupData.cs
│ │ ├── GcGalaxyStarTypes.cs
│ │ ├── GcGenericIconTypes.cs
│ │ ├── GcGenericRewardTableEntry.cs
│ │ ├── GcGoToStateAction.cs
│ │ ├── GcHUDComponent.cs
│ │ ├── GcHUDImageData.cs
│ │ ├── GcHUDLayerData.cs
│ │ ├── GcHUDManagerData.cs
│ │ ├── GcHUDTextData.cs
│ │ ├── GcHazardValues.cs
│ │ ├── GcHeavyAirColourData.cs
│ │ ├── GcHeavyAirList.cs
│ │ ├── GcHeavyAirSetting.cs
│ │ ├── GcHeavyAirSettingValues.cs
│ │ ├── GcInputActionMapping.cs
│ │ ├── GcInteractionActivationCost.cs
│ │ ├── GcInteractionBuffer.cs
│ │ ├── GcInteractionComponentData.cs
│ │ ├── GcInteractionData.cs
│ │ ├── GcInteractionType.cs
│ │ ├── GcInventoryContainer.cs
│ │ ├── GcInventoryElement.cs
│ │ ├── GcInventoryIndex.cs
│ │ ├── GcInventoryLayout.cs
│ │ ├── GcInventoryTable.cs
│ │ ├── GcInventoryTableEntry.cs
│ │ ├── GcInventoryTechProbability.cs
│ │ ├── GcInventoryType.cs
│ │ ├── GcItemPriceModifiers.cs
│ │ ├── GcJourneyMilestoneData.cs
│ │ ├── GcJourneyMilestoneTable.cs
│ │ ├── GcLandingHelperComponentData.cs
│ │ ├── GcLaserBeamData.cs
│ │ ├── GcLegality.cs
│ │ ├── GcLeveledStatData.cs
│ │ ├── GcLeveledStatTable.cs
│ │ ├── GcLightProperties.cs
│ │ ├── GcLootComponentData.cs
│ │ ├── GcMarkerComponentData.cs
│ │ ├── GcMiningSubstanceData.cs
│ │ ├── GcModelViewCollection.cs
│ │ ├── GcNGuiElementData.cs
│ │ ├── GcNGuiFileBrowserRecents.cs
│ │ ├── GcNGuiGraphicData.cs
│ │ ├── GcNGuiLayerData.cs
│ │ ├── GcNGuiLayoutData.cs
│ │ ├── GcNGuiPreset.cs
│ │ ├── GcNGuiPresetGraphic.cs
│ │ ├── GcNGuiPresetText.cs
│ │ ├── GcNGuiSpacingData.cs
│ │ ├── GcNGuiSpecialTextImageData.cs
│ │ ├── GcNGuiSpecialTextImages.cs
│ │ ├── GcNGuiSpecialTextStyleData.cs
│ │ ├── GcNGuiSpecialTextStyles.cs
│ │ ├── GcNGuiStyleAnimationData.cs
│ │ ├── GcNGuiStyleAnimationKeyframeData.cs
│ │ ├── GcNGuiTextData.cs
│ │ ├── GcNPCComponentData.cs
│ │ ├── GcNodeActivationAction.cs
│ │ ├── GcObjectPlacementComponentData.cs
│ │ ├── GcObjectSpawnData.cs
│ │ ├── GcOutpostComponentData.cs
│ │ ├── GcOutpostLSystemPair.cs
│ │ ├── GcPainAction.cs
│ │ ├── GcPaletteData.cs
│ │ ├── GcPaletteList.cs
│ │ ├── GcParticleAction.cs
│ │ ├── GcPlanetBuildingData.cs
│ │ ├── GcPlanetClass.cs
│ │ ├── GcPlanetColourData.cs
│ │ ├── GcPlanetData.cs
│ │ ├── GcPlanetGenerationInputData.cs
│ │ ├── GcPlanetGenerationIntermediateData.cs
│ │ ├── GcPlanetHazardData.cs
│ │ ├── GcPlanetHeavyAirData.cs
│ │ ├── GcPlanetInfo.cs
│ │ ├── GcPlanetLife.cs
│ │ ├── GcPlanetSentinelData.cs
│ │ ├── GcPlanetSize.cs
│ │ ├── GcPlanetWaterData.cs
│ │ ├── GcPlanetWeatherColourData.cs
│ │ ├── GcPlanetWeatherData.cs
│ │ ├── GcPlayAnimAction.cs
│ │ ├── GcPlayAudioAction.cs
│ │ ├── GcPlayerDamageData.cs
│ │ ├── GcPlayerDamageTable.cs
│ │ ├── GcPlayerHazardData.cs
│ │ ├── GcPlayerHazardTable.cs
│ │ ├── GcPlayerMissionProgress.cs
│ │ ├── GcPlayerMissionProgressMapEntry.cs
│ │ ├── GcPlayerMissionProgressMapTable.cs
│ │ ├── GcPlayerNearbyEvent.cs
│ │ ├── GcPlayerSpaceshipControlData.cs
│ │ ├── GcPlayerSpaceshipEngineData.cs
│ │ ├── GcPlayerSpawnStateData.cs
│ │ ├── GcPlayerStat.cs
│ │ ├── GcPlayerStateData.cs
│ │ ├── GcPlayerStatsGroup.cs
│ │ ├── GcPrimaryAxis.cs
│ │ ├── GcProductCategory.cs
│ │ ├── GcProductData.cs
│ │ ├── GcProductTable.cs
│ │ ├── GcProjectileData.cs
│ │ ├── GcProjectileDataTable.cs
│ │ ├── GcProjectileImpactData.cs
│ │ ├── GcProjectileImpactType.cs
│ │ ├── GcRarity.cs
│ │ ├── GcRealityCommonFactions.cs
│ │ ├── GcRealityCraftingRecipeData.cs
│ │ ├── GcRealityIconTable.cs
│ │ ├── GcRealityManagerData.cs
│ │ ├── GcRealitySubstanceCategory.cs
│ │ ├── GcRealitySubstanceCraftingMix.cs
│ │ ├── GcRealitySubstanceData.cs
│ │ ├── GcResourceElement.cs
│ │ ├── GcRewardAction.cs
│ │ ├── GcRewardChangeGlobalMission.cs
│ │ ├── GcRewardDamage.cs
│ │ ├── GcRewardDamageTech.cs
│ │ ├── GcRewardDestructEntry.cs
│ │ ├── GcRewardDestructRarities.cs
│ │ ├── GcRewardDestructTable.cs
│ │ ├── GcRewardEnergy.cs
│ │ ├── GcRewardHazard.cs
│ │ ├── GcRewardHealth.cs
│ │ ├── GcRewardMoney.cs
│ │ ├── GcRewardMultiSpecificProducts.cs
│ │ ├── GcRewardProduct.cs
│ │ ├── GcRewardProductRecipe.cs
│ │ ├── GcRewardRepairTech.cs
│ │ ├── GcRewardScan.cs
│ │ ├── GcRewardShield.cs
│ │ ├── GcRewardShowBlackHoles.cs
│ │ ├── GcRewardSignalScan.cs
│ │ ├── GcRewardSpecificProduct.cs
│ │ ├── GcRewardSpecificProductRecipe.cs
│ │ ├── GcRewardSpecificShip.cs
│ │ ├── GcRewardSpecificTech.cs
│ │ ├── GcRewardSpecificTechFromList.cs
│ │ ├── GcRewardSpecificWeapon.cs
│ │ ├── GcRewardStanding.cs
│ │ ├── GcRewardSubstance.cs
│ │ ├── GcRewardTable.cs
│ │ ├── GcRewardTableCategory.cs
│ │ ├── GcRewardTableEntry.cs
│ │ ├── GcRewardTableItem.cs
│ │ ├── GcRewardTableItemList.cs
│ │ ├── GcRewardTeachWord.cs
│ │ ├── GcRewardTechRecipe.cs
│ │ ├── GcRewardTimeWarp.cs
│ │ ├── GcRewardWeapon.cs
│ │ ├── GcSavedEntitlement.cs
│ │ ├── GcSavedInteractionRaceData.cs
│ │ ├── GcScanData.cs
│ │ ├── GcScanEventData.cs
│ │ ├── GcScanEventSave.cs
│ │ ├── GcScanEventTable.cs
│ │ ├── GcScannableComponentData.cs
│ │ ├── GcScannerIconTypes.cs
│ │ ├── GcScannerIcons.cs
│ │ ├── GcScareCreaturesAction.cs
│ │ ├── GcSceneSettings.cs
│ │ ├── GcSeed.cs
│ │ ├── GcSelectableObjectData.cs
│ │ ├── GcSelectableObjectList.cs
│ │ ├── GcSelectableObjectSpawnData.cs
│ │ ├── GcSelectableObjectSpawnList.cs
│ │ ├── GcSelectableObjectTable.cs
│ │ ├── GcShieldComponentData.cs
│ │ ├── GcShipAIAttackData.cs
│ │ ├── GcShipAIPerformanceArray.cs
│ │ ├── GcShipAIPlanetPatrolData.cs
│ │ ├── GcShipHUDTargetData.cs
│ │ ├── GcShipHUDTargetIconData.cs
│ │ ├── GcShootableComponentData.cs
│ │ ├── GcSimpleInteractionComponentData.cs
│ │ ├── GcSimulationGlobals.cs
│ │ ├── GcSizeIndicator.cs
│ │ ├── GcSolarSystemClass.cs
│ │ ├── GcSolarSystemData.cs
│ │ ├── GcSolarSystemLocator.cs
│ │ ├── GcSolarSystemLocatorChoice.cs
│ │ ├── GcSolarSystemLocatorTypes.cs
│ │ ├── GcSolarSystemTraderSpawnData.cs
│ │ ├── GcSpaceSkyProperties.cs
│ │ ├── GcSpaceStationSpawnData.cs
│ │ ├── GcSpaceshipClasses.cs
│ │ ├── GcSpaceshipComponentData.cs
│ │ ├── GcSpawnAction.cs
│ │ ├── GcSpawnComponentOption.cs
│ │ ├── GcSpawnDensity.cs
│ │ ├── GcSpawnDensityList.cs
│ │ ├── GcStatDefinition.cs
│ │ ├── GcStatDefinitionTable.cs
│ │ ├── GcStatDisplayType.cs
│ │ ├── GcStatGroupData.cs
│ │ ├── GcStatGroupTable.cs
│ │ ├── GcStatLevelData.cs
│ │ ├── GcStatTrackType.cs
│ │ ├── GcStatType.cs
│ │ ├── GcStatValueData.cs
│ │ ├── GcStateTimeEvent.cs
│ │ ├── GcStats.cs
│ │ ├── GcStatsBonus.cs
│ │ ├── GcStatsEntry.cs
│ │ ├── GcStatsGroup.cs
│ │ ├── GcStatsTypes.cs
│ │ ├── GcStyleProp_Colour.cs
│ │ ├── GcStyleProp_Font.cs
│ │ ├── GcStyleProp_Size.cs
│ │ ├── GcSubstanceAmount.cs
│ │ ├── GcSubstanceTable.cs
│ │ ├── GcTechnology.cs
│ │ ├── GcTechnologyCategory.cs
│ │ ├── GcTechnologyRarity.cs
│ │ ├── GcTechnologyRequirement.cs
│ │ ├── GcTechnologyTable.cs
│ │ ├── GcTerrainControls.cs
│ │ ├── GcTerrainTileType.cs
│ │ ├── GcTestMetadata.cs
│ │ ├── GcTextPreset.cs
│ │ ├── GcTextPresetTable.cs
│ │ ├── GcTextStyleOutline.cs
│ │ ├── GcTextStylePlain.cs
│ │ ├── GcTextStyleShadow.cs
│ │ ├── GcTexturePrefetchData.cs
│ │ ├── GcTileTypeOptions.cs
│ │ ├── GcTradeData.cs
│ │ ├── GcTradeSettings.cs
│ │ ├── GcTriggerActionComponentData.cs
│ │ ├── GcTurretComponentData.cs
│ │ ├── GcUniverseAddressData.cs
│ │ ├── GcUserSettingsData.cs
│ │ ├── GcWarpAction.cs
│ │ ├── GcWaterGlobals.cs
│ │ ├── GcWaypointComponentData.cs
│ │ ├── GcWeatherColourModifiers.cs
│ │ ├── GcWeatherColourSettingList.cs
│ │ ├── GcWeatherOptions.cs
│ │ ├── GcWeatherProperties.cs
│ │ ├── GcWeatherTable.cs
│ │ ├── GcWordKnowledge.cs
│ │ ├── MBINCompilerTestTemplate.cs
│ │ ├── NMSString0x10.cs
│ │ ├── NMSString0x100.cs
│ │ ├── NMSString0x20.cs
│ │ ├── NMSString0x80.cs
│ │ ├── TkActionButtonLookup.cs
│ │ ├── TkActionButtonMap.cs
│ │ ├── TkAnimMetadata.cs
│ │ ├── TkAnimNodeData.cs
│ │ ├── TkAnimNodeFrameData.cs
│ │ ├── TkAnimPoseComponentData.cs
│ │ ├── TkAnimPoseCorrelationData.cs
│ │ ├── TkAnimPoseData.cs
│ │ ├── TkAnimPoseExampleData.cs
│ │ ├── TkAnimPoseExampleElement.cs
│ │ ├── TkAnimationComponentData.cs
│ │ ├── TkAnimationData.cs
│ │ ├── TkAnimationDataTable.cs
│ │ ├── TkAttachmentData.cs
│ │ ├── TkAudioAnimTrigger.cs
│ │ ├── TkAudioComponentData.cs
│ │ ├── TkButtonImageLookup.cs
│ │ ├── TkButtonPathMapping.cs
│ │ ├── TkCameraWanderData.cs
│ │ ├── TkControllerButtonLookup.cs
│ │ ├── TkControllerList.cs
│ │ ├── TkControllerSpecification.cs
│ │ ├── TkCurveType.cs
│ │ ├── TkDynamicChainComponentData.cs
│ │ ├── TkEngineSettings.cs
│ │ ├── TkEngineSettingsMapping.cs
│ │ ├── TkEntitlementList.cs
│ │ ├── TkGameSettings.cs
│ │ ├── TkGeometryData.cs
│ │ ├── TkGraphicsSettings.cs
│ │ ├── TkHeavyAirData.cs
│ │ ├── TkImGuiData.cs
│ │ ├── TkImGuiSettings.cs
│ │ ├── TkImGuiWindowData.cs
│ │ ├── TkInputEnum.cs
│ │ ├── TkInputFrame.cs
│ │ ├── TkInputFrameArray.cs
│ │ ├── TkJointBindingData.cs
│ │ ├── TkJointExtentData.cs
│ │ ├── TkJointMirrorAxis.cs
│ │ ├── TkLSystemGlobalRestriction.cs
│ │ ├── TkLSystemGlobalVariation.cs
│ │ ├── TkLSystemInnerRule.cs
│ │ ├── TkLSystemLocatorEntry.cs
│ │ ├── TkLSystemRestrictionData.cs
│ │ ├── TkLSystemRule.cs
│ │ ├── TkLSystemRuleTemplate.cs
│ │ ├── TkLSystemRulesData.cs
│ │ ├── TkLanguageFontTable.cs
│ │ ├── TkLanguageFontTableEntry.cs
│ │ ├── TkLanguages.cs
│ │ ├── TkLanguagesAllowedData.cs
│ │ ├── TkLocalisationEntry.cs
│ │ ├── TkLocalisationTable.cs
│ │ ├── TkMaterialData.cs
│ │ ├── TkMaterialFlags.cs
│ │ ├── TkMaterialSampler.cs
│ │ ├── TkMaterialUniform.cs
│ │ ├── TkModelDescriptorList.cs
│ │ ├── TkModelRendererCameraData.cs
│ │ ├── TkModelRendererData.cs
│ │ ├── TkModelResource.cs
│ │ ├── TkNGuiAlignment.cs
│ │ ├── TkNGuiEditorLayout.cs
│ │ ├── TkNGuiEditorStyleData.cs
│ │ ├── TkNGuiGraphicStyle.cs
│ │ ├── TkNGuiGraphicStyleData.cs
│ │ ├── TkNGuiLayoutList.cs
│ │ ├── TkNGuiLayoutListData.cs
│ │ ├── TkNGuiTextStyle.cs
│ │ ├── TkNGuiTextStyleData.cs
│ │ ├── TkNGuiWindowLayoutData.cs
│ │ ├── TkNoiseCaveData.cs
│ │ ├── TkNoiseFeatureData.cs
│ │ ├── TkNoiseFlattenOptions.cs
│ │ ├── TkNoiseFlattenPoint.cs
│ │ ├── TkNoiseGridData.cs
│ │ ├── TkNoiseOffsetEnum.cs
│ │ ├── TkNoiseSuperFormulaData.cs
│ │ ├── TkNoiseUberData.cs
│ │ ├── TkNoiseUberLayerData.cs
│ │ ├── TkNoiseVoxelTypeEnum.cs
│ │ ├── TkPaletteTexture.cs
│ │ ├── TkParticleData.cs
│ │ ├── TkPhysicsComponentData.cs
│ │ ├── TkPhysicsData.cs
│ │ ├── TkPlatformButtonPair.cs
│ │ ├── TkProceduralModelComponentData.cs
│ │ ├── TkProceduralTexture.cs
│ │ ├── TkProceduralTextureChosenOption.cs
│ │ ├── TkProceduralTextureChosenOptionList.cs
│ │ ├── TkProceduralTextureChosenOptionSampler.cs
│ │ ├── TkProceduralTextureLayer.cs
│ │ ├── TkProceduralTextureList.cs
│ │ ├── TkRagdollData.cs
│ │ ├── TkReferenceComponentData.cs
│ │ ├── TkResourceDescriptorData.cs
│ │ ├── TkResourceDescriptorList.cs
│ │ ├── TkRotationComponentData.cs
│ │ ├── TkSceneNodeAttributeData.cs
│ │ ├── TkSceneNodeData.cs
│ │ ├── TkShearWindData.cs
│ │ ├── TkShearWindOctaveData.cs
│ │ ├── TkSpeedLineData.cs
│ │ ├── TkTextureResource.cs
│ │ ├── TkTrailData.cs
│ │ ├── TkTransformData.cs
│ │ ├── TkTrophyData.cs
│ │ ├── TkTrophyEntry.cs
│ │ ├── TkVertexElement.cs
│ │ ├── TkVertexLayout.cs
│ │ ├── TkVoxelGeneratorData.cs
│ │ ├── TkVoxelGeneratorRegionData.cs
│ │ ├── TkVoxelGeneratorSettingsArray.cs
│ │ ├── TkVoxelGeneratorSettingsElement.cs
│ │ ├── Unfinished
│ │ ├── GcAISpaceshipGlobals.cs
│ │ ├── GcAudioGlobals.cs
│ │ ├── GcBuildingGlobals.cs
│ │ ├── GcCameraGlobals.cs
│ │ ├── GcCreatureGlobals.cs
│ │ ├── GcEnvironmentGlobals.cs
│ │ ├── GcGalaxyGlobals.cs
│ │ ├── GcGameplayGlobals.cs
│ │ ├── GcGraphicsGlobals.cs
│ │ ├── GcPlacementGlobals.cs
│ │ ├── GcPlayerGlobals.cs
│ │ ├── GcRobotGlobals.cs
│ │ ├── GcSceneOptions.cs
│ │ ├── GcSkyGlobals.cs
│ │ ├── GcSmokeTestOptions.cs
│ │ ├── GcSolarGenerationGlobals.cs
│ │ ├── GcSpaceshipGlobals.cs
│ │ ├── GcTerrainGlobals.cs
│ │ └── GcUIGlobals.cs
│ │ ├── VariableSizeString.cs
│ │ ├── Vector2f.cs
│ │ ├── Vector3i.cs
│ │ └── Vector4f.cs
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
└── Shared.cs
├── MBINCompilerTests
├── MBINCompilerTestTemplate.MBIN
├── MBINCompilerTests.csproj
├── Properties
│ ├── AssemblyInfo.cs
│ ├── Settings.Designer.cs
│ └── Settings.settings
├── SerializationTests.cs
├── SharedTest.cs
├── TemplateSizeTest.cs
└── app.config
├── OtherTools
└── BlenderAddon
│ └── io_import_exml.py
└── README.md
/MBINCompiler/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/EXmlBase.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 | using System.Xml.Serialization;
3 |
4 | namespace MBINCompiler.Models
5 | {
6 | [XmlInclude(typeof(EXmlData))]
7 | [XmlInclude(typeof(EXmlProperty))]
8 | public abstract class EXmlBase
9 | {
10 | protected EXmlBase()
11 | {
12 | Elements = new List();
13 | }
14 |
15 | [XmlAttribute("name")]
16 | public string Name { get; set; }
17 |
18 | [XmlElement(typeof(EXmlData), ElementName = "Data")]
19 | [XmlElement(typeof(EXmlProperty), ElementName = "Property")]
20 | public List Elements { get; set; }
21 | }
22 | }
--------------------------------------------------------------------------------
/MBINCompiler/Models/EXmlData.cs:
--------------------------------------------------------------------------------
1 | using System.Xml.Serialization;
2 |
3 | namespace MBINCompiler.Models
4 | {
5 | [XmlType("Data")]
6 | public class EXmlData : EXmlBase
7 | {
8 | [XmlAttribute("template")]
9 | public string Template { get; set; }
10 | }
11 | }
--------------------------------------------------------------------------------
/MBINCompiler/Models/EXmlProperty.cs:
--------------------------------------------------------------------------------
1 | using System.Xml.Serialization;
2 |
3 | namespace MBINCompiler.Models
4 | {
5 |
6 | [XmlType("Property")]
7 | public class EXmlProperty : EXmlBase
8 | {
9 | [XmlAttribute("value")]
10 | public string Value { get; set; }
11 | }
12 | }
--------------------------------------------------------------------------------
/MBINCompiler/Models/NMSAttribute.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace MBINCompiler.Models
4 | {
5 | [AttributeUsage(AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.GenericParameter)]
6 | public class NMSAttribute : Attribute
7 | {
8 | public int Size { get; set; }
9 | public bool Ignore { get; set; }
10 | public object DefaultValue { get; set; }
11 | public string[] EnumValue { get; set; }
12 | }
13 | }
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/Colour.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class Colour : NMSTemplate
4 | {
5 | public float R;
6 | public float G;
7 | public float B;
8 | public float A;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAISpaceshipComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAISpaceshipComponentData : NMSTemplate
4 | {
5 | public GcAISpaceshipTypes Type;
6 | public GcSpaceshipClasses Class;
7 | public GcPrimaryAxis Axis;
8 | [NMS(Size = 0x10)]
9 | public string Weapon;
10 |
11 | [NMS(Size = 4, Ignore = true)]
12 | public byte[] Padding1C;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAISpaceshipInstanceData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAISpaceshipInstanceData : NMSTemplate
4 | {
5 | [NMS(Size = 0x80)]
6 | public string File;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAISpaceshipManagerData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAISpaceshipManagerData : NMSTemplate
4 | {
5 | [NMS(Size = 6)]
6 | public GcAISpaceshipMappingData[] FactionMapping;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAISpaceshipMappingData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAISpaceshipMappingData : NMSTemplate
4 | {
5 | [NMS(Size = 3)]
6 | public GcAISpaceshipInstanceData[] ClassMap;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAISpaceshipPreloadCacheData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAISpaceshipPreloadCacheData : NMSTemplate
4 | {
5 | public GcAISpaceshipRoles ShipRole;
6 | [NMS(Size = 4, Ignore = true)]
7 | public byte[] Padding4;
8 |
9 | public GcSeed Seed;
10 | [NMS(Size = 0x100)]
11 | public string AltId;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAISpaceshipPreloadCacheDataTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcAISpaceshipPreloadCacheDataTable : NMSTemplate
6 | {
7 | public List Ships;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAISpaceshipPreloadList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcAISpaceshipPreloadList : NMSTemplate
6 | {
7 | public GcRealityCommonFactions Faction;
8 | [NMS(Size = 4, Ignore = true)]
9 | public byte[] Padding4;
10 |
11 | public List Cache;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAISpaceshipRoles.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAISpaceshipRoles : NMSTemplate
4 | {
5 | public int AIShipRole;
6 | public string[] AIShipRoleValues()
7 | {
8 | return new[] { "Standard", "Freighter", "CapitalFreighter" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAISpaceshipTypes.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAISpaceshipTypes : NMSTemplate
4 | {
5 | public int ShipType;
6 | public string[] ShipTypeValues()
7 | {
8 | return new[] { "None", "Pirate", "Police", "Trader", "Freighter" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcActionTrigger.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcActionTrigger : NMSTemplate
6 | {
7 | public NMSTemplate Trigger;
8 | public List Action;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcActionTriggerState.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcActionTriggerState : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string StateID;
9 | public List Triggers;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAlienPuzzleEntry.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcAlienPuzzleEntry : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string Id;
9 |
10 | public GcAlienRace AlienRace;
11 | public GcInteractionType InteractionType;
12 |
13 | [NMS(Size = 0x200)]
14 | public string Text;
15 |
16 | [NMS(Size = 0x200)]
17 | public string TextAlien;
18 |
19 | public bool TranslateAlienText;
20 | public List Options;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAlienPuzzleTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcAlienPuzzleTable : NMSTemplate
6 | {
7 | public List Table;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAlienRace.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAlienRace : NMSTemplate
4 | {
5 | public int AlienRace;
6 |
7 | public string[] AlienRaceValues()
8 | {
9 | return new[] { "Traders", "Warriors", "Explorers", "Robots", "Atlas", "None" };
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAlienSpeechEntry.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAlienSpeechEntry : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 |
8 | [NMS(Size = 0x20)]
9 | public string Text;
10 |
11 | public int WordInteractEffect;
12 |
13 | public string[] WordInteractEffectValues()
14 | {
15 | return new[] { "Pain", "Heal" };
16 | }
17 |
18 | public GcAlienRace AlienRace;
19 | public int Level;
20 | [NMS(Ignore = true)]
21 | public int Padding;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAlienSpeechTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcAlienSpeechTable : NMSTemplate
6 | {
7 | public List Table;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAnimFrameEvent.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAnimFrameEvent : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Anim;
7 | public int FrameStart;
8 | public bool StartFromEnd;
9 |
10 | [NMS(Size = 3, Ignore = true)]
11 | public byte[] Padding15;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAsteroidGeneratorAssignment.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAsteroidGeneratorAssignment : NMSTemplate // 0x48 bytes
4 | {
5 | public int PlanetIndex;
6 | public GcSolarSystemLocatorChoice Locator;
7 | public GcSeed Seed;
8 | public int AsteroidCount;
9 |
10 | [NMS(Size = 4, Ignore = true)]
11 | public byte[] Padding44;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAsteroidGeneratorRing.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAsteroidGeneratorRing : NMSTemplate
4 | {
5 | public GcAsteroidGeneratorAssignment Assignment;
6 | public float LowerRadius;
7 | public float UpperRadius;
8 | public float PushRadius;
9 | public int OffBalance;
10 | [NMS(Size = 0x8, Ignore = true)]
11 | public byte[] Padding58;
12 |
13 | public Vector4f Rotation;
14 | public float USpread;
15 | public float PushAmount;
16 | public bool FlipPush;
17 |
18 | [NMS(Size = 7, Ignore = true)]
19 | public byte[] Padding79;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAsteroidGeneratorSlab.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAsteroidGeneratorSlab : NMSTemplate
4 | {
5 | public GcAsteroidGeneratorAssignment Assignment;
6 | [NMS(Size = 0x8, Ignore = true)]
7 | public byte[] Padding48;
8 |
9 | public Vector4f Rotation;
10 | public Vector4f Scale;
11 | public float NoiseOffset;
12 | public float NoiseScale;
13 | public float NoiseApply;
14 |
15 | [NMS(Size = 4, Ignore = true)]
16 | public byte[] Padding7C;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAsteroidGeneratorSurround.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAsteroidGeneratorSurround : NMSTemplate
4 | {
5 | public GcAsteroidGeneratorAssignment Assignment;
6 | public float LowerRadius;
7 | public float UpperRadius;
8 | public float NoiseOffset;
9 | public float NoiseScale;
10 | public float NoiseApply;
11 |
12 | [NMS(Size = 4, Ignore = true)]
13 | public byte[] Padding5C;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAtlasGlobals.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAtlasGlobals : NMSTemplate
4 | {
5 | public int Unknown0;
6 | public int ResolveTimeout;
7 | public int ConnectTimeout;
8 | public int SendRecvTimeout;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAudioAreaTriggerComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAudioAreaTriggerComponentData : NMSTemplate
4 | {
5 | public GcAudioWwiseEvents AkEvent1; // EnterAreaEvent perhaps?
6 | public GcAudioWwiseEvents AkEvent2; // ExitAreaEvent ?
7 | public float EnterDistance;
8 | public float ExitDistance;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAudioPulseDemo.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAudioPulseDemo : NMSTemplate
4 | {
5 | public float MixRateSeconds;
6 | public Vector2f Planet;
7 | public Vector2f Space;
8 | public Vector2f SpaceStation;
9 | public Vector2f InWarp;
10 | public Vector2f Wanted;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcAudioWwiseEvents.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcAudioWwiseEvents : NMSTemplate
4 | {
5 | public uint AkEvent; // something inside the wem files?
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcBeenShotEvent.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcBeenShotEvent : NMSTemplate
4 | {
5 | public int ShotBy;
6 | public string[] ShotByValues()
7 | {
8 | return new[] { "Player", "Anything" };
9 | }
10 |
11 | public int DamageThreshold;
12 | public float HealthThreshold;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcBiomeFileList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcBiomeFileList : NMSTemplate
6 | {
7 | [NMS(Size = 9)]
8 | public NMSString0x80[] BiomeFiles;
9 |
10 | public List CommonExternalObjectLists;
11 | public List OptionalExternalObjectLists;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcBiomeList.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcBiomeList : NMSTemplate
4 | {
5 | [NMS(Size = 9)]
6 | public float[] BiomeProbability;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcBiomeListPerStarType.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcBiomeListPerStarType : NMSTemplate
4 | {
5 | [NMS(Size = 4)]
6 | public GcBiomeList[] StarType;
7 |
8 | [NMS(Size = 4)]
9 | public float[] LifeChance;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcBiomeType.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcBiomeType : NMSTemplate
4 | {
5 | public int Biome;
6 | public string[] BiomeValues()
7 | {
8 | return new[] { "Lush", "Toxic", "Scorched", "Radioactive", "Frozen", "Barren", "Dead", "Test", "All" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcBirdData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcBirdData : NMSTemplate
4 | {
5 | public float FlapSpeedMax;
6 | public float FlapSpeedMin;
7 | public float FlapSpeed;
8 | public float FlapAccel;
9 |
10 | [NMS(Size = 0x80)]
11 | public string CircleAttractor;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcBootLogoData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcBootLogoData : NMSTemplate
4 | {
5 | [NMS(Size = 0x100)]
6 | public string Texture1;
7 | [NMS(Size = 0x100)]
8 | public string Texture2;
9 | [NMS(Size = 0x100)]
10 | public string Texture3;
11 | [NMS(Size = 0x100)]
12 | public string Texture4;
13 |
14 | public float DisplayTime1;
15 | public float DisplayTime2;
16 | public float DisplayTime3;
17 | public float DisplayTime4;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcBuildingClassification.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcBuildingClassification : NMSTemplate
4 | {
5 | public int BuildingClass;
6 | public string[] BuildingClassValues()
7 | {
8 | return new[]
9 | {
10 | "None", "TerrainResource", "Shelter", "Abandoned", "Terminal", "Shop", "Outpost", "Waypoint",
11 | "Beacon", "RadioTower", "Observatory", "Depot", "Factory", "Harvester", "Plaque", "Monolith",
12 | "Portal", "Ruin", "Debris", "DamagedMachine", "DistressSignal", "LandingPad"
13 | };
14 | }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcBuildingClusterPlacement.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcBuildingClusterPlacement : NMSTemplate
4 | {
5 | public int BuildingClusterPlacement;
6 | public string[] BuildingClusterPlacementValues()
7 | {
8 | return new[] { "Cluster", "Large", "Small", "None" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcBuildingDefinitionTable.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcBuildingDefinitionTable : NMSTemplate
4 | {
5 | [NMS(Size = 6)]
6 | public GcBuildingDensity[] BuildingProbabilities;
7 | [NMS(Size = 6)]
8 | public GcBuildingFilenameList[] BuildingFiles;
9 | [NMS(Size = 0x16)]
10 | public GcBuildingDefinitionData[] BuildingPlacement;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcBuildingDensity.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcBuildingDensity : NMSTemplate // 0x14 bytes
4 | {
5 | public float BuildingSpacing;
6 | public float BuildingClusterChance1; // todo: change this to float[]
7 | public float BuildingClusterChance2;
8 | public float BuildingClusterChance3;
9 | public float BuildingClusterChance4;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcBuildingDensityLevels.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcBuildingDensityLevels : NMSTemplate
4 | {
5 | public int BuildingDensity;
6 | public string[] BuildingDensityValues()
7 | {
8 | return new[] { "Dead", "Low", "Mid", "Full", "RelicOnly", "IndustrialOnly" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcBuildingFilename.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcBuildingFilename : NMSTemplate // 0x200 bytes
4 | {
5 | [NMS(Size = 0x80)]
6 | public string LSystem;
7 | [NMS(Size = 0x80)]
8 | public string Scene;
9 | [NMS(Size = 0x80)]
10 | public string UnderwaterLSystem;
11 | [NMS(Size = 0x80)]
12 | public string UnderwaterScene;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcBuildingFilenameList.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcBuildingFilenameList : NMSTemplate // 0x2C00 bytes
4 | {
5 | [NMS(Size = 0x16)]
6 | public GcBuildingFilename[] BuildingFiles;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCameraShakeAction.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCameraShakeAction : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Shake;
7 | public float FalloffMin;
8 | public float FalloffMax;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCameraShakeCaptureData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCameraShakeCaptureData : NMSTemplate // 0x14
4 | {
5 | public bool Active;
6 |
7 | [NMS(Size = 0x3, Ignore = true)]
8 | public byte[] Padding1;
9 |
10 | public float ShakeStrength;
11 | public float ShakeFrequency;
12 | public float VibrateStrength;
13 | public float VibrateFrequency;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCameraShakeMechanicalData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCameraShakeMechanicalData : NMSTemplate // 0x70
4 | {
5 | public bool Active;
6 |
7 | [NMS(Size = 0xF, Ignore = true)]
8 | public byte[] Padding1;
9 |
10 | public Vector4f ShakeStrength;
11 | public Vector4f ShakeFrequency;
12 | public Vector4f ExtraShakeFrequency;
13 | public Vector4f VibrateStrength;
14 | public Vector4f VibrateFrequency;
15 | public Vector4f ExtraVibrateFrequency;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcColourModifier.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcColourModifier : NMSTemplate
4 | {
5 | public bool ForceColour;
6 | public Colour ForceColourTo;
7 | public float OffsetSaturation;
8 | public float OffsetValue;
9 | public float MultiplySaturation;
10 | public float MultiplyValue;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcColourPaletteData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcColourPaletteData : NMSTemplate
4 | {
5 | [NMS(Size = 5)]
6 | public Colour[] Colours;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCostHealth.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCostHealth : NMSTemplate
4 | {
5 | public int HealthUnits;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCostJourneyMilestone.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCostJourneyMilestone : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string RequiredMilestone;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCostJourneyStatLevel.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCostJourneyStatLevel : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string StatName;
7 | public int RequiredLevel;
8 |
9 | [NMS(Size = 4, Ignore = true)]
10 | public byte[] Padding14;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCostMoney.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCostMoney : NMSTemplate
4 | {
5 | public int Cost;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCostProduct.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCostProduct : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 | public int Amount;
8 |
9 | [NMS(Size = 4, Ignore = true)]
10 | public byte[] Padding14;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCostStanding.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCostStanding : NMSTemplate
4 | {
5 | public GcAlienRace AlienRace;
6 | public int RequiredStanding;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCostSubstance.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCostSubstance : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 | public int Amount;
8 |
9 | [NMS(Size = 4, Ignore = true)]
10 | public byte[] Padding14;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCostTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcCostTable : NMSTemplate
6 | {
7 | public List SimpleInteractionTable;
8 | public List InteractionTable;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCostTableEntry.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCostTableEntry : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 | public NMSTemplate Entry;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureAudioTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcCreatureAudioTable : NMSTemplate
6 | {
7 | public List Table;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureBaitComponentData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcCreatureBaitComponentData : NMSTemplate
6 | {
7 | public List AttractList;
8 | public float BaitStrength;
9 | public float BaitRadius;
10 |
11 | public bool Debug;
12 | public bool InducesRage;
13 |
14 | [NMS(Size = 6, Ignore = true)]
15 | public byte[] Padding1A;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCreatureComponentData : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 | public GcPrimaryAxis PrimaryAxis;
8 | public float Scaler;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcCreatureData : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string Id;
9 |
10 | [NMS(Size = 0x20)]
11 | public string Genus;
12 |
13 | public GcCreatureTypes CreatureType;
14 |
15 | public int MoveArea;
16 | public string[] MoveAreaValues()
17 | {
18 | return new[] { "Ground", "Water", "Air", "Space" };
19 | }
20 |
21 | public float MinScale;
22 | public float MaxScale;
23 | public GcRarity Rarity;
24 |
25 | public List Data;
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureDataTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcCreatureDataTable : NMSTemplate
6 | {
7 | public List Table;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureFilename.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCreatureFilename : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string ID;
7 | [NMS(Size = 0x80)]
8 | public string Filename;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureFilenameTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcCreatureFilenameTable : NMSTemplate
6 | {
7 | public List Table;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureFootParticleData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcCreatureFootParticleData : NMSTemplate
6 | {
7 | public List ParticleData;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureFootParticleSingleData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCreatureFootParticleSingleData : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string EffectName;
7 |
8 | public float Scale;
9 | public float MinCreatureSize;
10 | public float MaxCreatureSize;
11 | public int MoveSpeed;
12 | public string[] MoveSpeedValues()
13 | {
14 | return new[] { "Always", "Walk", "Run" };
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureFullBodyIKComponentData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcCreatureFullBodyIKComponentData : NMSTemplate
6 | {
7 | public List JointData;
8 | public int HeadUpAxis;
9 | public string[] HeadUpAxisValues()
10 | {
11 | return new[] { "X", "XNeg", "Y", "YNeg", "Z", "ZNeg" };
12 | }
13 |
14 | public bool UseFootGlue;
15 |
16 | [NMS(Size = 3, Ignore = true)]
17 | public byte[] Padding15;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureHealthData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCreatureHealthData : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string HurtAnim;
7 | [NMS(Size = 0x10)]
8 | public string DeathAnim;
9 | [NMS(Size = 0x10)]
10 | public string DeathEffect;
11 | [NMS(Size = 0x10)]
12 | public string HurtAudio;
13 | [NMS(Size = 0x10)]
14 | public string DeathAudio;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureIkData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCreatureIkData : NMSTemplate
4 | {
5 | public GcCreatureIkType CreatureIkType;
6 | [NMS(Size = 0x100)]
7 | public string JointName;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureIkType.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCreatureIkType : NMSTemplate
4 | {
5 | public int CreatureIkType;
6 | public string[] CreatureIkTypeValues()
7 | {
8 | return new[] { "Foot", "Hinge_X", "Hinge_Y", "Hinge_Z", "Locked", "Head", "Toe", "SpaceshipFoot", "SpaceshipToe" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureMoveAnimData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCreatureMoveAnimData : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Anim;
7 | [NMS(Size = 0x10)]
8 | public string AnimLeft;
9 | [NMS(Size = 0x10)]
10 | public string AnimRight;
11 |
12 | public float AnimSpeed;
13 | public float MinSpeedScale;
14 | public float MaxSpeedScale;
15 | public float MaxPredatorSpeedScale;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureMovementData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcCreatureMovementData : NMSTemplate
6 | {
7 | public List Anims;
8 |
9 | public float MoveRange;
10 | public float MoveSpeedScale;
11 | public float HeightMin;
12 | public float HeightMax;
13 | public float HeightTime;
14 |
15 | [NMS(Size = 4, Ignore = true)]
16 | public byte[] Padding24;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureRoleData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCreatureRoleData : NMSTemplate
4 | {
5 | public GcSeed Seed;
6 | public GcCreatureTypes CreatureType;
7 | [NMS(Size = 4, Ignore = true)]
8 | public byte[] Padding14;
9 |
10 | [NMS(Size = 0x10)]
11 | public string CreatureId;
12 | public GcCreatureRoleDescription Description;
13 | public GcCreatureInfo Info;
14 | public GcTerrainTileType TileType;
15 | public int Diet;
16 | public string[] DietValues()
17 | {
18 | return new[] { "Carnivore", "Omnivore", "Herbivore" };
19 | }
20 | public float BaseScale;
21 |
22 | [NMS(Size = 4, Ignore = true)]
23 | public byte[] Padding48C;
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureRoleDataTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcCreatureRoleDataTable : NMSTemplate
6 | {
7 | public List AvailableRoles;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureRoleDescription.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCreatureRoleDescription : NMSTemplate
4 | {
5 | public GcCreatureRoles CreatureRole;
6 | public GcCreatureTypes CreatureType;
7 |
8 | [NMS(Size = 0x10)]
9 | public string ForceID;
10 |
11 | public float MinGroupScale;
12 | public float MaxGroupScale;
13 | public int MinGroupSize;
14 | public int MaxGroupSize;
15 | public float GroupsPerSquareKm;
16 | public float FractionActiveInDay;
17 | public float FractionActiveInNight;
18 | public float ProbabilityOfBeingEnabled;
19 | public float IncreasedSpawnDistance;
20 |
21 | [NMS(Ignore = true)]
22 | public int Padding;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureRoleDescriptionTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcCreatureRoleDescriptionTable : NMSTemplate
6 | {
7 | public List RoleDescription;
8 |
9 | public float MinScaleVariance;
10 | public float MaxScaleVariance;
11 | public GcTerrainTileType TileType;
12 |
13 | [NMS(Size = 4, Ignore = true)]
14 | public byte[] Padding1C;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureRoleFilename.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCreatureRoleFilename : NMSTemplate // 0x90 bytes
4 | {
5 | [NMS(Size = 0x80)]
6 | public string File;
7 |
8 | [NMS(Size = 4, EnumValue = new[] { "Dead", "Low", "Mid", "Full" })]
9 | public float[] BiomeProbability;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureRoleFilenameList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcCreatureRoleFilenameList : NMSTemplate // 0x10 bytes
6 | {
7 | public List Options;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureRoleFilenameTable.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCreatureRoleFilenameTable : NMSTemplate
4 | {
5 | [NMS(Size = 9, EnumValue = new[] { "Lush", "Toxic", "Scorched", "Radioactive", "Frozen", "Barren", "Dead", "Test", "All" })]
6 | public GcCreatureRoleFilenameList[] BiomeFiles;
7 |
8 | public GcCreatureRoleFilenameList UnderwaterBiomeFiles; // todo: find what these are actually named, these are just guesses atm
9 | public GcCreatureRoleFilenameList CaveBiomeFiles;
10 | public GcCreatureRoleFilenameList AirBiomeFiles;
11 | public GcCreatureRoleFilenameList GroundBiomeFiles;
12 |
13 | [NMS(Size = 4, EnumValue = new[] { "Dead", "Low", "Mid", "Full" })]
14 | public float[] LifeChance;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureRoles.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCreatureRoles : NMSTemplate
4 | {
5 | public int CreatureRole;
6 | public string[] CreatureRoleValues()
7 | {
8 | return new[]
9 | {
10 | "None", "Predator", "PlayerPredator", "Prey", "Passive", "Bird", "FishPrey", "FishPredator", "Butterfly", "Robot"
11 | };
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureStupidName.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcCreatureStupidName : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string Id;
9 |
10 | public int Count;
11 | public List Names;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureStupidNameTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcCreatureStupidNameTable : NMSTemplate
6 | {
7 | [NMS(Size = 0x80)]
8 | public string StupidUserName;
9 |
10 | public List Table;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureTypes.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCreatureTypes : NMSTemplate
4 | {
5 | public int CreatureType;
6 | public string[] CreatureTypeValues()
7 | {
8 | return new[]
9 | {
10 | "None", "Bird", "FlyingLizard", "FlyingSnake", "Butterfly", "Beetle", "Fish", "Shark",
11 | "Crab", "Snake", "Dino", "Antelope", "Rodent", "Cat", "Drone", "Quad",
12 | "Walker", "Predator", "PlayerPredator", "Prey", "Passive", "Brainless"
13 | };
14 | }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureVocalData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCreatureVocalData : NMSTemplate
4 | {
5 | public float ScaleBias;
6 |
7 | [NMS(Size = 4, Ignore = true)]
8 | public byte[] Padding4;
9 |
10 | public GcCreatureVocalSoundData IdleVocal;
11 | public GcCreatureVocalSoundData FleeVocal;
12 | public GcCreatureVocalSoundData DeathVocal;
13 | public GcCreatureVocalSoundData AttackVocal;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCreatureVocalSoundData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcCreatureVocalSoundData : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 |
8 | public int VocalEmote;
9 | public string[] VocalEmoteValues()
10 | {
11 | return new[] { "EmoteIdle", "EmoteFlee", "EmoteAggression", "EmoteRoar", "EmotePain", "EmoteAttack", "EmoteDie", "EmoteMiniRoarNeutral", "EmoteMiniRoarHappy", "EmoteMiniRoarAngry" };
12 | }
13 |
14 | public float PlayFrequency;
15 | public float MinCooldown;
16 | public float MaxCooldown;
17 | public bool PlayImmediately;
18 | public bool PlayOnlyOnce;
19 |
20 | [NMS(Size = 6, Ignore = true)]
21 | public byte[] Padding22;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcCustomInventoryComponentData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcCustomInventoryComponentData : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string Size;
9 | public List DesiredTechs;
10 |
11 | public bool Cool;
12 |
13 | [NMS(Size = 7, Ignore = true)]
14 | public byte[] Padding21;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcDebrisData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcDebrisData : NMSTemplate
4 | {
5 | public TkModelResource Filename;
6 | public int Number;
7 | public float Radius;
8 | public float Scale;
9 | public float Speed;
10 | public float AnglularSpeed; // sic
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcDefaultSaveData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcDefaultSaveData : NMSTemplate
4 | {
5 | public GcPlayerStateData State;
6 |
7 | public GcPlayerSpawnStateData Spawn;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcDestroyAction.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcDestroyAction : NMSTemplate
4 | {
5 | public bool DestroyAll;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcDiscoveryTypes.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcDiscoveryTypes : NMSTemplate
4 | {
5 | public int DiscoveryType;
6 | public string[] DiscoveryTypeValues()
7 | {
8 | return new[] { "Unknown", "SolarSystem", "Planet", "Animal", "Flora", "Mineral", "Sector" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcDiscoveryWorth.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcDiscoveryWorth : NMSTemplate
4 | {
5 | public int Common;
6 | public int Uncommon;
7 | public int Rare;
8 | public int OnScan;
9 | public int Mission;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcDisplayText.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcDisplayText : NMSTemplate
4 | {
5 | public int HUDTextDisplayType;
6 | public string[] HUDTextDisplayTypeValues()
7 | {
8 | return new[] { "Full", "Compact", "EyeLevel", "Prompt", "Tooltip" };
9 | }
10 |
11 | [NMS(Size = 0x100)]
12 | public string Title;
13 | [NMS(Size = 0x100)]
14 | public string Subtitle1;
15 | [NMS(Size = 0x100)]
16 | public string Subtitle2;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcDistanceScaleComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcDistanceScaleComponentData : NMSTemplate
4 | {
5 | public bool UseGlobals;
6 | public float Scale;
7 | public float MinDistance;
8 | public float MaxDistance;
9 | public float MinHeight;
10 | public float MaxHeight;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcDoShipFlybyClose.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcDoShipFlybyClose : NMSTemplate
4 | {
5 | public float LockOffset;
6 | public float LockTime;
7 | public float LockSpread;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcDoShipFlybyIntercept.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcDoShipFlybyIntercept : NMSTemplate
4 | {
5 | public float Speed;
6 | public float Time;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcDoShipFlybyOverhead.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcDoShipFlybyOverhead : NMSTemplate
4 | {
5 | public float Length;
6 | public float Offset;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcDroneComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcDroneComponentData : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 | public GcPrimaryAxis PrimaryAxis;
8 | public float Scaler;
9 | public GcCreatureHealthData Health;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcDroneControlData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcDroneControlData : NMSTemplate
4 | {
5 | public float MaxSpeed;
6 | public float Strength;
7 | public float DirectionBrake;
8 | public float MinHeight;
9 | public float MaxHeight;
10 | public float HeightAdjustStrength;
11 | public float HeightAdjustDownStrength;
12 | public float LookStrength;
13 | public float StopTime;
14 | public float RepelForce;
15 | public float RepelRange;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcEncounterComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcEncounterComponentData : NMSTemplate
4 | {
5 | public int EncounterType;
6 | public string[] EncounterTypeValues()
7 | {
8 | return new[] { "Guards", "Patrol", "Ambush" };
9 | }
10 | public int EncounterRobot;
11 | public string[] EncounterRobotValues()
12 | {
13 | return new[] { "Drones", "Quads", "Walker" };
14 | }
15 | public int CountMin;
16 | public int CountMax;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcEncyclopediaComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcEncyclopediaComponentData : NMSTemplate
4 | {
5 | public GcDiscoveryTypes DiscoveryType;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcEngineComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcEngineComponentData : NMSTemplate
4 | {
5 | public int Type;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcEntitlementRewardData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcEntitlementRewardData : NMSTemplate
4 | {
5 | [NMS(Size = 0x20)]
6 | public string EntitlementId;
7 |
8 | [NMS(Size = 0x10)]
9 | public string RewardId;
10 |
11 | [NMS(Size = 0x20)]
12 | public string Name;
13 |
14 | [NMS(Size = 0x20)]
15 | public string Error;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcEntitlementRewardsTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcEntitlementRewardsTable : NMSTemplate
6 | {
7 | public List Table;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcEnvironmentSpawnData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcEnvironmentSpawnData : NMSTemplate
6 | {
7 | public List Creatures;
8 | public List Landmarks;
9 | public List Objects;
10 | public List DetailObjects;
11 | public List SelectableObjects;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcExactResource.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcExactResource : NMSTemplate
4 | {
5 | [NMS(Size = 0x80)]
6 | public string Filename;
7 | public GcSeed GenerationSeed;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcExplosionData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcExplosionData : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string Id;
9 | public TkModelResource Model;
10 | public GcAudioWwiseEvents AkEvent;
11 | public List 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;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcExplosionDataTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcExplosionDataTable : NMSTemplate
6 | {
7 | public List Table;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcExternalObjectFileList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcExternalObjectFileList : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string Id;
9 |
10 | public bool OnlyOnExtremeWeather;
11 | public bool OnlyOnExtremeSentinels;
12 | public bool OnlyOnDeepWater;
13 | public bool NotOnExtremePlanets;
14 | public bool NotOnStartPlanets;
15 |
16 | public GcBiomeType Biome;
17 |
18 | public float ProbabilityOfBeingActive;
19 | public int MinFilesToChoose;
20 | public int MaxFilesToChoose;
21 |
22 | public List ExternalObjectFiles;
23 |
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcExternalObjectList.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcExternalObjectList : NMSTemplate
4 | {
5 | public GcEnvironmentSpawnData Objects;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcExternalObjectListOptions.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcExternalObjectListOptions : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Name;
7 | public float Probability;
8 | public GcTerrainTileType TileType;
9 | [NMS(Size = 4, EnumValue = new[] { "Dead", "Low", "Mid", "Full" })]
10 | public NMSString0x80[] Options;
11 | public bool AllowLimiting;
12 | [NMS(Size = 7, Ignore = true)]
13 | public byte[] Padding;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcFontData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcFontData : NMSTemplate
4 | {
5 | [NMS(Size = 0x80)]
6 | public string File;
7 | public int MinCharWidth;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcFontTable.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcFontTable : NMSTemplate
4 | {
5 | public GcFontData Table1;
6 | public GcFontData Table2;
7 | public GcFontData Table3;
8 | public GcFontData Table4;
9 | public GcFontData Table5;
10 | public GcFontData Table6;
11 | public GcFontData Table7;
12 | public GcFontData Table8;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcFontTypesEnum.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcFontTypesEnum : NMSTemplate
4 | {
5 | public int Font;
6 | public string[] FontValues()
7 | {
8 | return new[] { "Impact", "Bebas", "GeosansLightWide", "GeosansLight", "GeosansLightMedium", "GeosansLightSmall", "Segoeuib", "Segoeui32" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcGalacticAddressData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcGalacticAddressData : NMSTemplate // 0x14 bytes
4 | {
5 | public int VoxelX;
6 |
7 | public int VoxelY;
8 |
9 | public int VoxelZ;
10 |
11 | public int SolarSystemIndex;
12 |
13 | public int PlanetIndex;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcGalaxyStarTypes.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcGalaxyStarTypes : NMSTemplate
4 | {
5 | public int GalaxyStarType;
6 | public string[] GalaxyStarTypeValues()
7 | {
8 | return new[] { "Yellow", "Green", "Blue", "Red" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcGenericIconTypes.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcGenericIconTypes : NMSTemplate
4 | {
5 | public int GenericIconType;
6 | public string[] GenericIconTypeValues()
7 | {
8 | return new[] { "None", "Interaction", "SpaceStation", "SpaceAnomaly", "SpaceAtlas" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcGenericRewardTableEntry.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcGenericRewardTableEntry : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 | public GcRewardTableItemList Common;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcGoToStateAction.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcGoToStateAction : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string State;
7 |
8 | public bool Broadcast;
9 | public int BroadcastLevel;
10 | public string[] BroadcastLevelValues()
11 | {
12 | return new[] { "Scene", "LocalModel" };
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcHUDComponent.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcHUDComponent : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 |
8 | public int PosX;
9 | public int PosY;
10 | public int Width;
11 | public int Height;
12 | public int Align;
13 |
14 | public string[] AlignValues()
15 | {
16 | return new string[] { "Center", "TopLeft", "TopRight", "BottomLeft", "BottomRight" };
17 | }
18 |
19 | public int Unknown24;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcHUDImageData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcHUDImageData : NMSTemplate
4 | {
5 | public GcHUDComponent Data;
6 |
7 | [NMS(Size = 0x80)]
8 | public string Image;
9 |
10 | public Colour Colour;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcHUDLayerData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcHUDLayerData : NMSTemplate
6 | {
7 | public GcHUDComponent Data;
8 | public List Children;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcHUDTextData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcHUDTextData : NMSTemplate
4 | {
5 | public GcHUDComponent Data;
6 |
7 | [NMS(Size = 0x80)]
8 | public string Text;
9 |
10 | [NMS(Size = 8, Ignore = true)]
11 | public byte[] PaddingA8;
12 |
13 | public GcTextPreset Preset;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcHazardValues.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcHazardValues : NMSTemplate
4 | {
5 | public float Min;
6 | public float Max;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcHeavyAirColourData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcHeavyAirColourData : NMSTemplate
4 | {
5 | public Colour Colour1;
6 | public Colour Colour2;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcHeavyAirList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcHeavyAirList : NMSTemplate
6 | {
7 | public List Options;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcHeavyAirSetting.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcHeavyAirSetting : NMSTemplate
4 | {
5 | [NMS(Size = 5)]
6 | public GcHeavyAirSettingValues[] Settings;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcHeavyAirSettingValues.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcHeavyAirSettingValues : NMSTemplate
4 | {
5 | public float Thickness;
6 | public float Speed;
7 | public float Alpha1;
8 | public float Alpha2;
9 | public TkPaletteTexture Colour1;
10 | public TkPaletteTexture Colout2;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcInputActionMapping.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcInputActionMapping : NMSTemplate
4 | {
5 | public int RemappedKey = -1;
6 | public int RemappedPad = -1;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcInteractionActivationCost.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcInteractionActivationCost : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string SubstanceId;
9 | public List AltIds;
10 |
11 | public int Cost; // might be float
12 | public bool Repeat;
13 |
14 | [NMS(Size = 3, Ignore = true)]
15 | public byte[] Padding25;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcInteractionBuffer.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcInteractionBuffer : NMSTemplate // 0x7D10 bytes
4 | {
5 | [NMS(Size = 0x3E8)]
6 | public GcInteractionData[] Interactions;
7 |
8 | public float CurrentPos;
9 |
10 | [NMS(Size = 0xC, Ignore = true)]
11 | public byte[] Padding7D04;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcInteractionData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcInteractionData : NMSTemplate // 0x20 bytes
4 | {
5 | public ulong GalacticAddress;
6 | public float Value;
7 | public bool Flag;
8 | [NMS(Size = 0x3, Ignore = true)]
9 | public byte[] PaddingD;
10 |
11 | public Vector4f Position;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcInteractionType.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcInteractionType : NMSTemplate
4 | {
5 | public int InteractionType;
6 | public string[] InteractionTypeValues()
7 | {
8 | return new[]
9 | {
10 | "None", "Shop", "NPC", "NPC_Secondary", "NPC_Anomaly", "NPC_Anomaly_Secondary", "Ship", "Outpost",
11 | "SpaceStation", "RadioTower", "Monolith", "Factory", "AbandonedShip", "Harvester", "Observatory", "TradingPost",
12 | "DistressBeacon", "Portal", "Plaque", "AtlasStation", "AbandonedBuildings", "WeaponTerminal", "SuitTerminal", "SignalScanner"
13 | };
14 | }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcInventoryContainer.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcInventoryContainer : NMSTemplate // 0x20 bytes
6 | {
7 | public List Slots;
8 | public List ValidSlotIndices;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcInventoryElement.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcInventoryElement : NMSTemplate
4 | {
5 | public GcInventoryType Type;
6 | [NMS(Ignore = true)]
7 | public int EmptyNode1;
8 | [NMS(Size = 0x10)]
9 | public string Id;
10 | public int Amount;
11 | public int MaxAmount;
12 | public float DamageFactor;
13 | public GcInventoryIndex Index;
14 | [NMS(Ignore = true)]
15 | public int EmptyNode2;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcInventoryIndex.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcInventoryIndex : NMSTemplate
4 | {
5 | public int X;
6 | public int Y;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcInventoryLayout.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcInventoryLayout : NMSTemplate
4 | {
5 | public int Slots;
6 | [NMS(Ignore = true)]
7 | public int EmptyNode1;
8 | public GcSeed Seed;
9 | public int Level;
10 | [NMS(Ignore = true)]
11 | public int EmptyNode2;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcInventoryTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcInventoryTable : NMSTemplate
6 | {
7 | public List Table;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcInventoryTableEntry.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcInventoryTableEntry : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 | public int MinSize;
8 | public int MaxSize;
9 | public int SizeType;
10 | public string[] SizeTypeValues()
11 | {
12 | return new[] { "SciSmall", "SciMedium", "SciLarge", "FgtSmall", "FgtMedium", "FgtLarge", "ShuSmall", "ShtMedium", "ShtLarge", "DrpSmall", "DrpMedium", "DrpLarge", "WeaponSmall", "WeaponMedium", "WeaponLarge" }; // Shu/Sht spelling mistake(?) is from the exe
13 | }
14 |
15 | [NMS(Size = 4, Ignore = true)]
16 | public byte[] Padding1C;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcInventoryTechProbability.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcInventoryTechProbability : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Tech;
7 | public int DesiredTechProbability;
8 | public string[] DesiredTechProbabilityValues()
9 | {
10 | return new[] { "Never", "Rare", "Common", "Always" };
11 | }
12 | [NMS(Size = 4, Ignore = true)]
13 | public byte[] Padding14;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcInventoryType.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcInventoryType : NMSTemplate
4 | {
5 | public int InventoryType; // Substance / Technology / Product
6 |
7 | public string[] InventoryTypeValues()
8 | {
9 | return new[] { "Substance", "Technology", "Product" };
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcItemPriceModifiers.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcItemPriceModifiers : NMSTemplate
4 | {
5 | public float SpaceStationMarkup;
6 | public float LowPriceMod;
7 | public float HighPriceMod;
8 | public float BuyBaseMarkup;
9 | public float BuyMarkupMod;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcJourneyMilestoneData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcJourneyMilestoneData : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string JourneyMilestoneId;
7 | public int PointsToUnlock;
8 | [NMS(Size = 4, Ignore = true)]
9 | public byte[] Padding14;
10 | [NMS(Size = 0x20)]
11 | public string JourneyMilestoneTitle;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcJourneyMilestoneTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcJourneyMilestoneTable : NMSTemplate
6 | {
7 | public List Table; // called GcJourneyMilestoneTable in the exe
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcLandingHelperComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcLandingHelperComponentData : NMSTemplate
4 | {
5 | public float ActiveDistanceMin;
6 | public float ActiveDistanceMax;
7 | public bool LandPoint;
8 |
9 | [NMS(Size = 3, Ignore = true)]
10 | public byte[] Padding9;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcLegality.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcLegality : NMSTemplate
4 | {
5 | public int Legality;
6 |
7 | public string[] LegalityValues()
8 | {
9 | return new[] { "Legal", "Illegal", "None" };
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcLeveledStatData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcLeveledStatData : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string StatId;
7 | [NMS(Size = 0x20)]
8 | public string StatTitle;
9 | [NMS(Size = 0x20)]
10 | public string NotifyMessage;
11 | [NMS(Size = 0x20)]
12 | public string NotifyMessageSingular;
13 |
14 | public bool ShowInTerminal;
15 | public bool ShowStatLevel;
16 | [NMS(Size = 0x2, Ignore = true)]
17 | public byte[] Padding72;
18 | public TkTextureResource Icon;
19 | [NMS(Size = 0xB)]
20 | public GcStatLevelData[] StatLevels;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcLeveledStatTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcLeveledStatTable : NMSTemplate
6 | {
7 | public List Table; // called GcLeveledStatTable in the exe
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcLightProperties.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcLightProperties : NMSTemplate
4 | {
5 | public Colour SunColour;
6 | public Colour LightColour;
7 | public Colour BounceColour;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcLootComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcLootComponentData : NMSTemplate
4 | {
5 | public Vector2f Timed;
6 | [NMS(Size = 0x10)]
7 | public string TimeOutEffect;
8 | public bool DeathPoint;
9 |
10 | [NMS(Size = 7, Ignore = true)]
11 | public byte[] Padding19;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcMarkerComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcMarkerComponentData : NMSTemplate
4 | {
5 | public GcGenericIconTypes GenericIconType;
6 | public float Radius;
7 | public int DisplayMode;
8 | public string[] DisplayModeValues()
9 | {
10 | return new[] { "Always", "SpaceOnly", "PlanetOnly" };
11 | }
12 |
13 | public bool ShipScannable;
14 |
15 | [NMS(Size = 3, Ignore = true)]
16 | public byte[] PaddingD;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcMiningSubstanceData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcMiningSubstanceData : NMSTemplate
4 | {
5 | public GcRealitySubstanceCategory Category;
6 | public bool UseRarity;
7 | public GcRarity Rarity;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcModelViewCollection.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcModelViewCollection : NMSTemplate // 0x5B0
4 | {
5 | [NMS(Size = 13)] // 13 * 0x70 = 0x5B0
6 | public TkModelRendererData[] ModelViews; // List or Array?
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNGuiElementData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcNGuiElementData : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string ID;
7 | [NMS(Size = 0x10)]
8 | public string PresetID;
9 |
10 | public long CreationTime;
11 |
12 | public bool IsHidden;
13 |
14 | [NMS(Size = 0x3, Ignore = true)]
15 | public byte[] Padding29;
16 |
17 | public GcNGuiLayoutData Layout;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNGuiFileBrowserRecents.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcNGuiFileBrowserRecents : NMSTemplate
4 | {
5 | [NMS(Size = 0xA)]
6 | public NMSString0x100[] Recents;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNGuiGraphicData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcNGuiGraphicData : NMSTemplate
4 | {
5 | public GcNGuiElementData ElementData;
6 | public TkNGuiGraphicStyle Style;
7 |
8 | [NMS(Size = 0x80)]
9 | public string Image;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNGuiLayerData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcNGuiLayerData : NMSTemplate
6 | {
7 | public GcNGuiElementData Data;
8 | public TkNGuiGraphicStyle Style;
9 | [NMS(Size = 0x80)]
10 | public string Image;
11 | public List Children;
12 | [NMS(Size = 0x80)]
13 | public string DataFilename;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNGuiPreset.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcNGuiPreset : NMSTemplate
4 | {
5 | [NMS(Size = 0x80)]
6 | public string Font;
7 |
8 | [NMS(Size = 0xA)]
9 | public GcNGuiPresetGraphic[] Layer;
10 |
11 | [NMS(Size = 0xA)]
12 | public GcNGuiPresetGraphic[] Graphic;
13 |
14 | [NMS(Size = 0xA)]
15 | public GcNGuiPresetText[] Text;
16 |
17 | public GcNGuiLayoutData SpacingLayout;
18 |
19 | [NMS(Size = 4, Ignore = true)]
20 | public byte[] Padding514C;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNGuiPresetGraphic.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcNGuiPresetGraphic : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string PresetID;
7 | public GcNGuiLayoutData Layout;
8 | [NMS(Size = 0x4)]
9 | public byte[] Padding3C;
10 |
11 | public TkNGuiGraphicStyle Style;
12 | [NMS(Size = 0x80)]
13 | public string Image;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNGuiPresetText.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcNGuiPresetText : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string PresetID;
7 | public GcNGuiLayoutData Layout;
8 | [NMS(Size = 0x4)]
9 | public byte[] Padding3C;
10 |
11 | public TkNGuiTextStyle Style;
12 | public TkNGuiGraphicStyle GraphicStyle;
13 | [NMS(Size = 0x80)]
14 | public string Image;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNGuiSpacingData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcNGuiSpacingData : NMSTemplate
4 | {
5 | public GcNGuiElementData Data;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNGuiSpecialTextImageData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcNGuiSpecialTextImageData : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Name;
7 | public bool ScaleToFitFont;
8 | public Vector2f Size;
9 |
10 | [NMS(Size = 0x80)]
11 | public string Path;
12 |
13 | [NMS(Size = 4, Ignore = true)]
14 | public byte[] Padding9C;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNGuiSpecialTextImages.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcNGuiSpecialTextImages : NMSTemplate
6 | {
7 | public List SpecialImages;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNGuiSpecialTextStyleData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcNGuiSpecialTextStyleData : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string Name;
9 |
10 | public List StyleProperties;
11 | public GcNGuiStyleAnimationData Animation;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNGuiSpecialTextStyles.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcNGuiSpecialTextStyles : NMSTemplate
6 | {
7 | public List SpecialStyles;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNGuiStyleAnimationData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcNGuiStyleAnimationData : NMSTemplate
6 | {
7 | public float Length;
8 | public List KeyFrames;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNGuiStyleAnimationKeyframeData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcNGuiStyleAnimationKeyframeData : NMSTemplate
6 | {
7 | public float Position;
8 | public List StyleProperties;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNGuiTextData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcNGuiTextData : NMSTemplate
4 | {
5 | public GcNGuiElementData Data;
6 | public TkNGuiTextStyle Style;
7 | public TkNGuiGraphicStyle GraphicStyle;
8 |
9 | [NMS(Size = 0x80)]
10 | public string Image;
11 |
12 | [NMS(Size = 0x200)]
13 | public string Text;
14 |
15 | public bool Special;
16 | [NMS(Size = 0xF, Ignore = true)]
17 | public byte[] Padding1;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNPCComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcNPCComponentData : NMSTemplate
4 | {
5 | public GcAlienRace AlienRace;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcNodeActivationAction.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcNodeActivationAction : NMSTemplate
4 | {
5 | public int NodeActiveState;
6 | public string[] NodeActiveStateValues()
7 | {
8 | return new[] { "Activate", "Deactivate", "Toggle" };
9 | }
10 |
11 | [NMS(Size = 0x80)]
12 | public string Name;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcObjectPlacementComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcObjectPlacementComponentData : NMSTemplate
4 | {
5 | [NMS(Size = 0x20)]
6 | public string GroupNodeName;
7 |
8 | public int ActivationType;
9 | public float FractionOfNodesActive;
10 | public int MaxNodesActivated;
11 | public int MaxGroupsActivated;
12 | public bool UseRaycast;
13 |
14 | [NMS(Size = 3, Ignore = true)]
15 | public byte[] Padding31;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcOutpostLSystemPair.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcOutpostLSystemPair : NMSTemplate // 0x320 bytes
4 | {
5 | [NMS(Size = 0x20)]
6 | public string Locator;
7 | [NMS(Size = 6)]
8 | public NMSString0x80[] LSystems;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPainAction.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPainAction : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Damage;
7 | public float Radius;
8 | public bool AffectsPlayer;
9 |
10 | [NMS(Size = 3, Ignore = true)]
11 | public byte[] Padding15;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPaletteData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPaletteData : NMSTemplate
4 | {
5 | public int NumColours;
6 | public string[] NumColoursValues()
7 | {
8 | return new[] { "Inactive", "1", "4", "16", "All" };
9 | }
10 |
11 | [NMS(Size = 0xC, Ignore = true)]
12 | public byte[] Padding4;
13 |
14 | [NMS(Size = 0x40)]
15 | public Colour[] Colours;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPaletteList.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPaletteList : NMSTemplate
4 | {
5 | [NMS(Size = 0x26)]
6 | public GcPaletteData[] Palettes;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcParticleAction.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcParticleAction : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Effect;
7 | [NMS(Size = 0x20)]
8 | public string Joint;
9 | public bool Exact;
10 |
11 | [NMS(Size = 7, Ignore = true)]
12 | public byte[] Padding31;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlanetBuildingData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcPlanetBuildingData : NMSTemplate // size = 0x18
6 | {
7 | public List Buildings;
8 | public float Spacing;
9 |
10 | [NMS(Size = 0x4, Ignore = true)]
11 | public byte[] Padding14;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlanetClass.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlanetClass : NMSTemplate
4 | {
5 | public int PlanetClass;
6 | public string[] PlanetClassValues()
7 | {
8 | return new[] { "Default", "Initial", "InInitialSystem" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlanetColourData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlanetColourData : NMSTemplate
4 | {
5 | [NMS(Size = 0x26)]
6 | public GcColourPaletteData[] Palettes;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlanetGenerationInputData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlanetGenerationInputData : NMSTemplate
4 | {
5 | public GcSeed Seed;
6 | public GcGalaxyStarTypes StarType;
7 | public GcPlanetClass PlanetClass;
8 | [NMS(Size = 0x10)]
9 | public string CommonSubstance;
10 | [NMS(Size = 0x10)]
11 | public string RareSubstance;
12 | public GcPlanetSize PlanetSize;
13 | public GcBiomeType BiomeType;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlanetHazardData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlanetHazardData : NMSTemplate
4 | {
5 | [NMS(Size = 5)]
6 | public float[] Temperature;
7 |
8 | [NMS(Size = 5)]
9 | public float[] Toxicity;
10 |
11 | [NMS(Size = 5)]
12 | public float[] Radiation;
13 |
14 | [NMS(Size = 5)]
15 | public float[] OutputTemperature;
16 |
17 | [NMS(Size = 5)]
18 | public float[] OutputToxicity;
19 |
20 | [NMS(Size = 5)]
21 | public float[] OutputRadiation;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlanetHeavyAirData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlanetHeavyAirData : NMSTemplate
4 | {
5 | [NMS(Size = 0x80)]
6 | public string Filename;
7 | [NMS(Size = 5)]
8 | public GcHeavyAirColourData[] Colours;
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlanetInfo.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlanetInfo : NMSTemplate
4 | {
5 | [NMS(Size = 0x80)]
6 | public string PlanetDescription;
7 | [NMS(Size = 0x80)]
8 | public string PlanetType;
9 | [NMS(Size = 0x80)]
10 | public string Weather;
11 | [NMS(Size = 0x80)]
12 | public string Resources;
13 | [NMS(Size = 0x80)]
14 | public string Flora;
15 | [NMS(Size = 0x80)]
16 | public string Fauna;
17 | [NMS(Size = 0x80)]
18 | public string Sentinels;
19 |
20 | public bool IsWeatherExtreme;
21 | public bool AreSentinelsExtreme;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlanetLife.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlanetLife : NMSTemplate
4 | {
5 | public int LifeSetting;
6 | public string[] LifeSettingValues()
7 | {
8 | return new[] { "Dead", "Low", "Mid", "Full" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlanetSentinelData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlanetSentinelData : NMSTemplate
4 | {
5 | public int SentinelLevel;
6 | public string[] SentinelLevelValues()
7 | {
8 | return new[] { "Default", "Aggressive" };
9 | }
10 |
11 | public int MaxActiveDrones;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlanetSize.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlanetSize : NMSTemplate
4 | {
5 | public int PlanetSize;
6 | public string[] PlanetSizeValues()
7 | {
8 | return new[] { "Large", "Medium", "Small", "Moon" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlanetWeatherColourData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlanetWeatherColourData : NMSTemplate
4 | {
5 | public Colour SkyColour;
6 | public Colour SkyUpperColour;
7 | public Colour SkySolarColour;
8 | public Colour HorizonColour;
9 | public Colour SunColour;
10 | public Colour FogColour;
11 | public Colour HeightFogColour;
12 |
13 | [NMS(Size = 0x10)]
14 | public byte[] SkyGradientSpeed; // not sure what type this is?
15 |
16 | public Colour LightColour;
17 | public Colour CloudColour1;
18 | public Colour CloudColour2;
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlayAnimAction.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlayAnimAction : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Anim;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlayAudioAction.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlayAudioAction : NMSTemplate
4 | {
5 | [NMS(Size = 0x80)]
6 | public string Sound;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlayerDamageTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcPlayerDamageTable : NMSTemplate
6 | {
7 | public List DamageTable;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlayerHazardTable.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlayerHazardTable : NMSTemplate
4 | {
5 | [NMS(Size = 6)]
6 | public GcPlayerHazardData[] Table;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlayerMissionProgress.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlayerMissionProgress : NMSTemplate // 0x18 bytes
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Mission;
7 | public int Progress;
8 |
9 | [NMS(Size = 4, Ignore = true)]
10 | public byte[] Padding14;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlayerMissionProgressMapEntry.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlayerMissionProgressMapEntry : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Mission;
7 | public int MinProgress;
8 | public int MaxProgress;
9 | public int NewProgress;
10 |
11 | [NMS(Size = 4, Ignore = true)]
12 | public byte[] Padding1C;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlayerMissionProgressMapTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcPlayerMissionProgressMapTable : NMSTemplate
6 | {
7 | public List GcMissionProgressTable;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlayerSpawnStateData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlayerSpawnStateData : NMSTemplate
4 | {
5 | public Vector4f PlayerPositionInSystem;
6 | public Vector4f PlayerTransformAt;
7 | public Vector4f ShipPositionInSystem;
8 | public Vector4f ShipTransformAt;
9 | public int LastKnownPlayerState;
10 | public string[] LastKnownPlayerStateValues()
11 | {
12 | return new[] { "OnFoot", "InShip", "OnStation" };
13 | }
14 |
15 | [NMS(Size = 0xC, Ignore = true)]
16 | public byte[] Padding44;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlayerStat.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPlayerStat : NMSTemplate // 0x20 bytes
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 |
8 | public GcStatValueData Value;
9 |
10 | [NMS(Size = 4, Ignore = true)]
11 | public byte[] Padding1C;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPlayerStatsGroup.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcPlayerStatsGroup : NMSTemplate // 0x28 bytes
6 | {
7 | [NMS(Size = 0x10)]
8 | public string GroupId;
9 |
10 | public ulong Address;
11 |
12 | public List Stats;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcPrimaryAxis.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcPrimaryAxis : NMSTemplate
4 | {
5 | public int PrimaryAxis;
6 | public string[] PrimaryAxisValues()
7 | {
8 | return new[] { "Z", "ZNeg" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcProductCategory.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcProductCategory : NMSTemplate
4 | {
5 | public int ProductCategory;
6 |
7 | public string[] ProductCategoryValues()
8 | {
9 | return new[] { "Component", "Device", "Consumable", "Curiousity", "Generic", "None" };
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcProductTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcProductTable : NMSTemplate
6 | {
7 | public List Table;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcProjectileDataTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcProjectileDataTable : NMSTemplate
6 | {
7 | public List Table;
8 | public List Lasers;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcProjectileImpactData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcProjectileImpactData : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Effect;
7 | public GcProjectileImpactType ImpactType;
8 | [NMS(Size = 4, Ignore = true)]
9 | public byte[] Padding14;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcProjectileImpactType.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcProjectileImpactType : NMSTemplate
4 | {
5 | public int Impact;
6 | public string[] ImpactValues()
7 | {
8 | return new[] { "Default", "Terrain", "Substance", "Rock", "Asteroid", "Shield", "Creature", "Robot", "Freighter", "Cargo", "Ship", "Plant" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRarity.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRarity : NMSTemplate
4 | {
5 | public int Rarity;
6 |
7 | public string[] RarityValues()
8 | {
9 | return new[] { "Common", "Uncommon", "Rare", "Extraordinary", "None" };
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRealityCommonFactions.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRealityCommonFactions : NMSTemplate
4 | {
5 | public int AIFaction;
6 | public string[] AIFactionValues()
7 | {
8 | return new[] { "FactionA", "FactionB", "FactionC", "FactionD", "Pirate", "Police" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRealityCraftingRecipeData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRealityCraftingRecipeData : NMSTemplate // 0x58 bytes
4 | {
5 | [NMS(Size = 3)]
6 | public GcRealitySubstanceCraftingMix[] Inputs;
7 |
8 | [NMS(Size = 0x10)]
9 | public string OutputID;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRealitySubstanceCategory.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRealitySubstanceCategory : NMSTemplate
4 | {
5 | public int SubstanceCategory;
6 |
7 | public string[] SubstanceCategoryValues()
8 | {
9 | return new[] { "Commodity", "Technology", "Fuel", "Tradeable", "Special", "None" };
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRealitySubstanceCraftingMix.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRealitySubstanceCraftingMix : NMSTemplate // 0x18 bytes
4 | {
5 | [NMS(Size = 0x10)]
6 | public string ID;
7 |
8 | public int Ratio;
9 |
10 | [NMS(Size = 4, Ignore = true)]
11 | public byte[] Padding14;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcResourceElement.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcResourceElement : NMSTemplate // size = 0x2A8
4 | {
5 | [NMS(Size = 0x80)]
6 | public string Filename;
7 | [NMS(Ignore = true)]
8 | public long EmptyNode1;
9 | public GcSeed GenerationSeed;
10 | [NMS(Size = 0x200)]
11 | public string AltId;
12 | public TkProceduralTextureChosenOptionList Texture;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardAction.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardAction : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Reward;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardChangeGlobalMission.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardChangeGlobalMission : NMSTemplate
4 | {
5 | public int GlobalMission;
6 |
7 | public string[] GlobalMissionValues()
8 | {
9 | return new[] { "Atlas", "BlackHole", "Anomaly", "Explore" };
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardDamage.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardDamage : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string PlayerDamage;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardDamageTech.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardDamageTech : NMSTemplate
4 | {
5 | public GcTechnologyCategory Category;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardDestructEntry.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs {
2 | public class GcRewardDestructEntry : NMSTemplate
3 | {
4 | public float HealthFactor;
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardDestructRarities.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardDestructRarities : NMSTemplate
4 | {
5 | public GcRewardDestructEntry Common;
6 | public GcRewardDestructEntry Uncommon;
7 | public GcRewardDestructEntry Rare;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardDestructTable.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardDestructTable : NMSTemplate
4 | {
5 | [NMS(Size = 5)]
6 | public GcRewardDestructRarities[] Categories;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardEnergy.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardEnergy : NMSTemplate
4 | {
5 | public float Amount; // might be int
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardHazard.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardHazard : NMSTemplate
4 | {
5 | public int AmountMin;
6 | public int AmountMax;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardHealth.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardHealth : NMSTemplate
4 | {
5 | public int AmountMin;
6 | public int AmountMax;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardMoney.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardMoney : NMSTemplate
4 | {
5 | public int AmountMin;
6 | public int AmountMax;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardMultiSpecificProducts.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcRewardMultiSpecificProducts : NMSTemplate
6 | {
7 | public List ProductIds;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardProduct.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardProduct : NMSTemplate
4 | {
5 | public GcRealitySubstanceCategory Category;
6 | public GcRarity Rarity;
7 | public int ItemLevel;
8 | [NMS(Size = 4, EnumValue = new[] { "Component", "Device", "Consumable", "Curiosity" })]
9 | public bool[] AllowedProductTypes;
10 | public int AmountMin;
11 | public int AmountMax;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardProductRecipe.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardProductRecipe : NMSTemplate
4 | {
5 | public GcRealitySubstanceCategory Category;
6 | public GcRarity Rarity;
7 | public bool IgnoreRarity;
8 | public int ItemLevel;
9 | [NMS(Size = 4, EnumValue = new[] { "Component", "Device", "Consumable", "Curiosity" })]
10 | public bool[] AllowedProductTypes;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardRepairTech.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardRepairTech : NMSTemplate
4 | {
5 | public GcTechnologyCategory Category;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardScan.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardScan : NMSTemplate
4 | {
5 | public GcScanData ScanData;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardShield.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardShield : NMSTemplate
4 | {
5 | public int AmountMin;
6 | public int AmountMax;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardShowBlackHoles.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardShowBlackHoles : NMSTemplate
4 | {
5 | public bool Dummy;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardSignalScan.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardSignalScan : NMSTemplate
4 | {
5 | public int SignalScanType;
6 | public string[] SignalScanTypeValues()
7 | {
8 | return new[] { "None", "DropPod", "Shelter", "Search", "Relic", "Industrial" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardSpecificProduct.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardSpecificProduct : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 | public int AmountMin;
8 | public int AmountMax;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardSpecificProductRecipe.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardSpecificProductRecipe : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardSpecificShip.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardSpecificShip : NMSTemplate
4 | {
5 | public GcResourceElement ShipResource;
6 | public GcInventoryLayout ShipLayout;
7 | public GcInventoryContainer ShipInventory;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardSpecificTech.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardSpecificTech : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string TechId;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardSpecificTechFromList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcRewardSpecificTechFromList : NMSTemplate
6 | {
7 | public List TechList;
8 |
9 | public int TechListRewardOrder;
10 | public string[] TechListRewardOrderValues()
11 | {
12 | return new[] { "OneRandom", "InOrder" };
13 | }
14 |
15 | [NMS(Size = 4, Ignore = true)]
16 | public byte[] Padding14;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardSpecificWeapon.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardSpecificWeapon : NMSTemplate
4 | {
5 | public GcInventoryContainer WeaponInventory;
6 | public GcInventoryLayout WeaponLayout;
7 | public GcExactResource WeaponResource;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardStanding.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardStanding : NMSTemplate
4 | {
5 | public GcAlienRace Race;
6 | public int AmountMin;
7 | public int AmountMax;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardSubstance.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardSubstance : NMSTemplate
4 | {
5 | public GcRealitySubstanceCategory Category;
6 | public GcRarity Rarity;
7 | public int ItemLevel;
8 | public int AmountMin;
9 | public int AmountMax;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcRewardTable : NMSTemplate
6 | {
7 | public List Table;
8 | public List GenericTable;
9 | public List InteractionTable;
10 | public List EntitlementTable;
11 | public List TechRewardOrder;
12 | public List ProductRewardOrder;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardTableCategory.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardTableCategory : NMSTemplate
4 | {
5 | public GcRewardTableItemList Small; // This actually is a GcRewardTableItemList[3], values are GcSizes
6 | public GcRewardTableItemList Medium;
7 | public GcRewardTableItemList Large;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardTableEntry.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardTableEntry : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 | public GcRewardTableCategory Common; // This actually is a GcRewardTableCategory[3], values are GcRarity
8 | public GcRewardTableCategory Uncommon;
9 | public GcRewardTableCategory Rare;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardTableItem.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardTableItem : NMSTemplate
4 | {
5 | public float PercentageChance;
6 | public NMSTemplate Reward; // Generic
7 | [NMS(Size = 0x40)]
8 | public string LabelID;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardTableItemList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcRewardTableItemList : NMSTemplate
6 | {
7 | public bool EntitlementLinked;
8 | [NMS(Size = 0x20)]
9 | public string EntitlementId;
10 | public int RewardChoice;
11 | public string[] RewardChoiceValues()
12 | {
13 | return new[] { "GiveAll", "Select", "TryEach" };
14 | }
15 |
16 | public List List;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardTeachWord.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardTeachWord : NMSTemplate
4 | {
5 | public GcAlienRace Race;
6 | public int AmountMin;
7 | public int AmountMax;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardTechRecipe.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardTechRecipe : NMSTemplate
4 | {
5 | public GcTechnologyCategory Category;
6 | [NMS(Size = 0x10)]
7 | public string RewardGroup;
8 |
9 | [NMS(Size = 4, Ignore = true)]
10 | public byte[] Padding14;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardTimeWarp.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardTimeWarp : NMSTemplate
4 | {
5 | public bool Dummy; // unused?
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcRewardWeapon.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcRewardWeapon : NMSTemplate
4 | {
5 | public GcRarity Rarity;
6 | public int ItemLevel;
7 | public int AmountMin;
8 | public int AmountMax;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSavedEntitlement.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSavedEntitlement : NMSTemplate // 0x100 bytes
4 | {
5 | [NMS(Size = 0x100)]
6 | public string EntitlementId;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSavedInteractionRaceData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSavedInteractionRaceData : NMSTemplate // 0x18 bytes
4 | {
5 | [NMS(Size = 6)]
6 | public float[] SavedRaceIndicies; // unsure if this is float[] or not, code for this template is very strange
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcScanData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcScanData : NMSTemplate
4 | {
5 | public int ScanType;
6 | public string[] ScanTypeValues()
7 | {
8 | return new[] { "Tool", "Beacon", "RadioTower", "Observatory", "DistressSignal", "Waypoint", "Ship", "DebugPlanet", "DebugSpace" };
9 | }
10 |
11 | public float PulseRange;
12 | public float PulseTime;
13 | public bool PlayAudioMarkers;
14 | public float ChargeTime;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcScanEventSave.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcScanEventSave : NMSTemplate // 0x50 bytes
4 | {
5 | public int Table;
6 | [NMS(Size = 4, Ignore = true)]
7 | public byte[] Padding4;
8 |
9 | [NMS(Size = 0x10)]
10 | public string Event;
11 |
12 | public ulong GalacticAddress;
13 |
14 | public GcSeed BuildingSeed;
15 |
16 | public Vector4f BuildingLocation;
17 |
18 | public GcBuildingClassification BuildingClass;
19 |
20 | [NMS(Size = 0xC, Ignore = true)]
21 | public byte[] Padding44;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcScanEventTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcScanEventTable : NMSTemplate
6 | {
7 | public List Events;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcScannableComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcScannableComponentData : NMSTemplate
4 | {
5 | public float ScanRange;
6 | [NMS(Size = 0x20)]
7 | public string ScanName;
8 | public float ScanTime;
9 |
10 | public GcScannerIconTypes IconType;
11 | public bool PermanentIcon;
12 | public float PermanentIconRadius;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcScannerIconTypes.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcScannerIconTypes : NMSTemplate
4 | {
5 | public int ScanIconType;
6 | public string[] ScanIconTypeValues()
7 | {
8 | return new[]
9 | {
10 | "None", "Health", "Shield", "Hazard", "Tech", "Signal", "Fuel", "Mineral", "Multi", "Artifact", "TechRecipe", "RareProp"
11 | };
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcScareCreaturesAction.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcScareCreaturesAction : NMSTemplate
4 | {
5 | public float HearRadius;
6 | public float FleeRadius;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSeed.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSeed : NMSTemplate
4 | {
5 | /* 0x00 */ public long Seed;
6 | /* 0x08 */ public bool UseSeedValue;
7 |
8 | [NMS(Size = 7, Ignore = true)]
9 | /* 0x09 */ public byte[] Padding9; // todo: is this always here? might be padding inside the parent template instead
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSelectableObjectData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSelectableObjectData : NMSTemplate
4 | {
5 | [NMS(Size = 0x80)]
6 | public string Filename;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSelectableObjectList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcSelectableObjectList : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string Name;
9 | public GcAlienRace Race;
10 | public List Options;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSelectableObjectSpawnData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSelectableObjectSpawnData : NMSTemplate
4 | {
5 | public GcResourceElement Resource;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSelectableObjectSpawnList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcSelectableObjectSpawnList : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string Name;
9 | public List Objects;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSelectableObjectTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcSelectableObjectTable : NMSTemplate
6 | {
7 | public List Lists;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcShieldComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcShieldComponentData : NMSTemplate
4 | {
5 | public int Type;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcShipAIPerformanceArray.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcShipAIPerformanceArray : NMSTemplate
6 | {
7 | public List Array;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcShipAIPlanetPatrolData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcShipAIPlanetPatrolData : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Squad;
7 |
8 | public float PlayerOffset;
9 | public float PlayerFalloff;
10 | public float PathOffset;
11 | public float WaypointDistance;
12 | public float PathSpeed;
13 | public float AlongPathForce;
14 | public float ToPathForce;
15 | public float BrakeForce;
16 | public float AlignForce;
17 |
18 | [NMS(Size = 4, Ignore = true)]
19 | public byte[] Padding34;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcShipHUDTargetIconData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcShipHUDTargetIconData : NMSTemplate
4 | {
5 | [NMS(Size = 0x80)]
6 | public string Corner;
7 | [NMS(Size = 0x80)]
8 | public string LineHorizontal;
9 | [NMS(Size = 0x80)]
10 | public string LineVertical;
11 |
12 | [NMS(Size = 0x80)]
13 | public string GlowCorner;
14 | [NMS(Size = 0x80)]
15 | public string GlowLineHorizontal;
16 | [NMS(Size = 0x80)]
17 | public string GlowLineVertical;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcShootableComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcShootableComponentData : NMSTemplate
4 | {
5 | public int Health;
6 | public bool AutoAimTarget;
7 | public bool PlayerOnly;
8 | public bool ImpactShake;
9 | [NMS(Size = 1, Ignore = true)]
10 | public byte[] Padding7;
11 | [NMS(Size = 0x10)]
12 | public string ImpactShakeEffect;
13 |
14 | public GcProjectileImpactType ImpactType;
15 | public int IncreaseWanted;
16 | public float IncreaseWantedThresholdTime;
17 | public bool UseMiningDamage;
18 | public int MinDamage;
19 | public bool StaticUntilShot;
20 |
21 | [NMS(Size = 3, Ignore = true)]
22 | public byte[] Padding2D;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSizeIndicator.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSizeIndicator : NMSTemplate
4 | {
5 | public int SizeIndicator;
6 | public string[] SizeIndicatorValues()
7 | {
8 | return new[] { "Small", "Medium", "Large" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSolarSystemClass.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSolarSystemClass : NMSTemplate
4 | {
5 | public int SolarSystemClass;
6 | public string[] SolarSystemClassValues()
7 | {
8 | return new[] { "Default", "Initial", "Anomaly", "GameStart" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSolarSystemLocator.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSolarSystemLocator : NMSTemplate // 0x60 bytes
4 | {
5 | [NMS(Size = 0x20)]
6 | public string Name;
7 | public GcSolarSystemLocatorTypes LocatorType;
8 | [NMS(Size = 0xC, Ignore = true)]
9 | public byte[] Padding24;
10 |
11 | public Vector4f Position;
12 | public Vector4f Direction;
13 | public float Radius;
14 |
15 | [NMS(Size = 0xC, Ignore = true)]
16 | public byte[] Padding54;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSolarSystemLocatorChoice.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSolarSystemLocatorChoice : NMSTemplate
4 | {
5 | public int Choice;
6 | public string[] ChoiceValues()
7 | {
8 | return new[] { "LookupName", "AnyOfType", "SpecificIndex", "InFrontOfPlayer" };
9 | }
10 |
11 | [NMS(Size = 0x20)]
12 | public string Name; // 0x20
13 | public GcSolarSystemLocatorTypes LocatorType;
14 | public int Index;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSolarSystemLocatorTypes.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSolarSystemLocatorTypes : NMSTemplate
4 | {
5 | public int LocatorType;
6 | public string[] LocatorTypeValues()
7 | {
8 | return new[] { "Generic1", "Generic2", "Generic3", "Generic4" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSolarSystemTraderSpawnData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSolarSystemTraderSpawnData : NMSTemplate
4 | {
5 | public int MaxToSpawn;
6 | public float InitialTakeoffDelay;
7 | public Vector2f SequenceTakeoffDelay;
8 | public int ChanceToDelayLaunch;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSpaceStationSpawnData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSpaceStationSpawnData : NMSTemplate
4 | {
5 | public int SpawnMode;
6 | public string[] SpawnModeValues()
7 | {
8 | return new[] { "None", "UseSeed", "UseAltID" };
9 | }
10 |
11 | [NMS(Size = 4, Ignore = true)]
12 | public byte[] Padding4;
13 | public GcSeed Seed;
14 | [NMS(Size = 0x100)]
15 | public string AltId;
16 | [NMS(Size = 8, Ignore = true)]
17 | public byte[] Padding118;
18 | public Vector4f SpawnPosition;
19 | public Vector4f SpawnFacing;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSpaceshipClasses.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSpaceshipClasses : NMSTemplate
4 | {
5 | public int ShipClass;
6 | public string[] ShipClassValues()
7 | {
8 | return new[] { "Freighter", "Dropship", "Fighter", "Scientific", "Shuttle" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSpaceshipComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSpaceshipComponentData : NMSTemplate
4 | {
5 | public GcSpaceshipClasses ShipClass;
6 | [NMS(Size = 0x80)]
7 | public string Cockpit;
8 | public float MaxHeadTurn;
9 | public float MaxHeadPitchUp;
10 | public float MaxHeadPitchDown;
11 | public int BaseHealth;
12 | public float FoVFixedDistance;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSpawnAction.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSpawnAction : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Event;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSpawnComponentOption.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSpawnComponentOption : NMSTemplate // 0x2C8 bytes
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Name;
7 | public GcSeed Seed;
8 | public GcResourceElement SpecificModel;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSpawnDensity.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSpawnDensity : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Name;
7 | public bool Active;
8 | public int CoverageType;
9 | public string[] CoverageTypeValues()
10 | {
11 | return new[] { "Total", "SmoothPatch" };
12 | }
13 |
14 | public float PatchSize;
15 | public float RegionScale;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSpawnDensityList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcSpawnDensityList : NMSTemplate
6 | {
7 | public List DensityList;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStatDefinition.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcStatDefinition : NMSTemplate
4 | {
5 | public GcStatType Type;
6 | public GcStatTrackType TrackType;
7 | public GcStatDisplayType DisplayType;
8 | public GcStatValueData DefaultValue;
9 |
10 | [NMS(Size = 0x10)]
11 | public string Id;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStatDefinitionTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcStatDefinitionTable : NMSTemplate
6 | {
7 | public List StatDefinitionTable;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStatDisplayType.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcStatDisplayType : NMSTemplate
4 | {
5 | public int StatDisplayType;
6 | public string[] StatDisplayTypeValues()
7 | {
8 | return new[] { "None", "Sols", "Distance" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStatGroupData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcStatGroupData : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string GroupName;
9 | public List TrackedStats;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStatGroupTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcStatGroupTable : NMSTemplate
6 | {
7 | public List Table; // called GcStatGroupTable in exe, C# won't let us use same name as class for members though
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStatLevelData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcStatLevelData : NMSTemplate
4 | {
5 | [NMS(Size = 0x20)]
6 | public string LevelName;
7 | public GcStatValueData Value;
8 | [NMS(Size = 0x4, Ignore = true)]
9 | public byte[] Padding2C;
10 | [NMS(Size = 0x10)]
11 | public string TrophyToUnlock;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStatTrackType.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcStatTrackType : NMSTemplate
4 | {
5 | public int StatTrackType;
6 | public string[] StatTrackTypeValues()
7 | {
8 | return new[] { "Set", "Add", "Max", "Min" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStatType.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcStatType : NMSTemplate // not the same as GcStatsTypes
4 | {
5 | public int StatType;
6 | public string[] StatTypeValues()
7 | {
8 | return new[] { "Int", "Float", "AvgRate" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStatValueData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcStatValueData : NMSTemplate
4 | {
5 | public int IntValue;
6 | public float FloatValue;
7 | public float Denominator;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStateTimeEvent.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcStateTimeEvent : NMSTemplate
4 | {
5 | public float Seconds;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStats.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcStats : NMSTemplate
4 | {
5 | [NMS(Size = 4)]
6 | public GcStatsGroup[] Stats;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStatsBonus.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcStatsBonus : NMSTemplate
4 | {
5 | public GcStatsTypes StatsTypes;
6 | public float Bonus;
7 | public int Level;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStatsEntry.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcStatsEntry : NMSTemplate
4 | {
5 | public GcStatsTypes StatsType;
6 | public Colour Colour;
7 | public float RangeMin;
8 | public float RangeMax;
9 | public bool LessIsBetter;
10 |
11 | [NMS(Ignore = true)]
12 | public int EmptyNode1;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStatsGroup.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcStatsGroup : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string Id;
9 |
10 | public TkTextureResource Icon;
11 |
12 | public List StatIds;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStyleProp_Colour.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcStyleProp_Colour : NMSTemplate
4 | {
5 | public Colour Colour;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStyleProp_Font.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcStyleProp_Font : NMSTemplate
4 | {
5 | public int FontIndex;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcStyleProp_Size.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcStyleProp_Size : NMSTemplate
4 | {
5 | public float FontSize;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSubstanceAmount.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSubstanceAmount : NMSTemplate // 0x20 bytes
4 | {
5 | public int AmountMin;
6 | public int AmountMax;
7 | [NMS(Size = 0x10)]
8 | public string Specific;
9 |
10 | public GcRealitySubstanceCategory SubstanceCategory;
11 | public GcRarity Rarity;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcSubstanceTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcSubstanceTable : NMSTemplate
6 | {
7 | public List Table;
8 | public List Crafting;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcTechnologyCategory.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcTechnologyCategory : NMSTemplate
4 | {
5 | public int TechnologyCategory;
6 |
7 | public string[] TechnologyCategoryValues()
8 | {
9 | return new[] { "Ship", "Weapon", "Suit", "Personal", "All", "None" };
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcTechnologyRarity.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcTechnologyRarity : NMSTemplate
4 | {
5 | public int TechnologyRarity;
6 |
7 | public string[] TechnologyRarityValues()
8 | {
9 | return new[] { "Normal", "VeryCommon", "Common", "Rare", "VeryRare", "Impossible", "Always" };
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcTechnologyRequirement.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcTechnologyRequirement : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string ID;
7 |
8 | public GcInventoryType InventoryType;
9 | public int Amount;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcTechnologyTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcTechnologyTable : NMSTemplate
6 | {
7 | public List Table;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcTerrainTileType.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcTerrainTileType : NMSTemplate
4 | {
5 | public int TileType;
6 |
7 | public string[] TileTypeValues()
8 | {
9 | return new[]
10 | {
11 | "Air", "Base", "Rock", "Mountain", "Underwater", "Cave", "Dirt", "Liquid", "Substance"
12 | };
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcTextPreset.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcTextPreset : NMSTemplate
4 | {
5 | public GcFontTypesEnum FontType;
6 | public NMSTemplate TextStyle;
7 |
8 | public float Height;
9 | public Colour Colour;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcTextPresetTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcTextPresetTable : NMSTemplate
6 | {
7 | public List Table;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcTextStyleOutline.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcTextStyleOutline : NMSTemplate
4 | {
5 | public Colour OutlineColour;
6 | public Vector2f OutlineOffset;
7 |
8 | [NMS(Size = 8, Ignore = true)]
9 | public byte[] Padding18;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcTextStylePlain.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcTextStylePlain : NMSTemplate
4 | {
5 | public bool Dummy; // unused?
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcTextStyleShadow.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcTextStyleShadow : NMSTemplate
4 | {
5 | public Colour ShadowColour;
6 | public Vector2f ShadowOffset;
7 |
8 | [NMS(Size = 8, Ignore = true)]
9 | public byte[] Padding18;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcTexturePrefetchData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcTexturePrefetchData : NMSTemplate
6 | {
7 | public List Textures;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcTileTypeOptions.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcTileTypeOptions : NMSTemplate
6 | {
7 | public List Options;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcTradeSettings.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcTradeSettings : NMSTemplate
4 | {
5 | public GcTradeData SpaceStation;
6 | public GcTradeData Shop;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcTriggerActionComponentData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcTriggerActionComponentData : NMSTemplate
6 | {
7 | public bool HideModel;
8 | public bool StartInactive;
9 | public List States;
10 | public bool Persistent;
11 | [NMS(Size = 7, Ignore = true)]
12 | public byte[] Padding19;
13 | [NMS(Size = 0x10)]
14 | public string PersistentState;
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcTurretComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcTurretComponentData : NMSTemplate
4 | {
5 | public int GunType;
6 | public string[] GunTypeValues()
7 | {
8 | return new[] { "Laser", "Projectile" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcUniverseAddressData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcUniverseAddressData : NMSTemplate // 0x18 bytes
4 | {
5 | public int RealityIndex;
6 |
7 | public GcGalacticAddressData GalacticAddress;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcUserSettingsData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcUserSettingsData : NMSTemplate
4 | {
5 | /* 0x00 */ public bool InvertLookControls;
6 | /* 0x01 */ public bool InvertFlightControls;
7 | /* 0x02 */ public bool Vibration;
8 |
9 | /* 0x04 */ public int ScreenBrightness;
10 | /* 0x08 */ public int MusicVolume;
11 | /* 0x0C */ public int SfxVolume;
12 | /* 0x10 */ public int LookSensitivity;
13 | /* 0x14 */ public int FlightSensitivity;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcWarpAction.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcWarpAction : NMSTemplate
4 | {
5 | public int WarpType;
6 | public string[] WarpTypeValues()
7 | {
8 | return new[] { "BlackHole" }; // one value? :D:D
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcWaterGlobals.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcWaterGlobals : NMSTemplate
4 | {
5 | public bool WaterRippleEffects;
6 | }
7 | }
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcWaypointComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcWaypointComponentData : NMSTemplate
4 | {
5 | public TkTextureResource Icon;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcWeatherColourModifiers.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcWeatherColourModifiers : NMSTemplate
4 | {
5 | public GcColourModifier SkyColour;
6 | public GcColourModifier HorizonColour;
7 | public GcColourModifier SunColour;
8 | public GcColourModifier FogColour;
9 | public GcColourModifier HeightFogColour;
10 | public GcColourModifier LightColour;
11 | public GcColourModifier CloudColour1;
12 | public GcColourModifier CloudColour2;
13 |
14 | [NMS(Size = 5)]
15 | public GcColourModifier[] HeavyAirColour;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcWeatherColourSettingList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class GcWeatherColourSettingList : NMSTemplate
6 | {
7 | public List Settings;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcWeatherOptions.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcWeatherOptions : NMSTemplate
4 | {
5 | public int Weather;
6 | public string[] WeatherValues()
7 | {
8 | return new[] { "Clear", "Dust", "Humid", "Snow", "Toxic", "Scorched", "Radioactive" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcWeatherTable.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcWeatherTable : NMSTemplate
4 | {
5 | [NMS(Size = 7)]
6 | public NMSString0x80[] Table;
7 |
8 | [NMS(Size = 5)]
9 | public GcHazardValues[] DefaultTemperature;
10 |
11 | [NMS(Size = 5)]
12 | public GcHazardValues[] DefaultToxicity;
13 |
14 | [NMS(Size = 5)]
15 | public GcHazardValues[] DefaultRadiation;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/GcWordKnowledge.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcWordKnowledge : NMSTemplate // 0x18
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Word;
7 |
8 | [NMS(Size = 6)]
9 | public bool[] Races;
10 |
11 | [NMS(Size = 2, Ignore = true)]
12 | public byte[] Padding16;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/MBINCompilerTestTemplate.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class MBINCompilerTestTemplate : NMSTemplate
6 | {
7 | public bool TestBoolTrue;
8 | public bool TestBoolFalse;
9 | public bool TestBool3;
10 | public short TestInt16;
11 | public int TestInt32;
12 | public long TestInt64;
13 | public float TestFloat;
14 | public int TestEnumYes;
15 | public int TestEnumNo;
16 | [NMS(Size = 0x10)]
17 | public string TestString;
18 | public VariableSizeString TestDynamicString;
19 | public List Test0x80ByteStringList;
20 | public List TestListInt;
21 | // todo: public List TestGenericList
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/NMSString0x10.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class NMSString0x10 : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Value;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/NMSString0x100.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | // todo: maybe get rid of this and just read strings directly into the list, if all strings are the same size?
4 | public class NMSString0x100 : NMSTemplate
5 | {
6 | [NMS(Size = 0x100)]
7 | public string Value;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/NMSString0x20.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class NMSString0x20 : NMSTemplate
4 | {
5 | [NMS(Size = 0x20)]
6 | public string Value;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/NMSString0x80.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | // todo: maybe get rid of this and just read strings directly into the list, if all strings are the same size?
4 | public class NMSString0x80 : NMSTemplate
5 | {
6 | [NMS(Size = 0x80)]
7 | public string Value;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkActionButtonLookup.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkActionButtonLookup : NMSTemplate
6 | {
7 | public List Lookup;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkActionButtonMap.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkActionButtonMap : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string ActionId;
9 | public bool ScaleToFitFont;
10 | public TkInputEnum InputButton;
11 | public List Platforms;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkAnimMetadata.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkAnimMetadata : NMSTemplate
6 | {
7 | public int FrameCount;
8 | public int NodeCount;
9 |
10 | public List NodeData;
11 | public List AnimFrameData;
12 |
13 | public TkAnimNodeFrameData StillFrameData;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkAnimNodeData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkAnimNodeData : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Node;
7 |
8 | public bool CanCompress; // set to 0xFE, with following 3 padding bytes also set to 0xFE, might be padding indicating that this is 0? currently treated as 1...
9 | public int RotIndex;
10 | public int TransIndex;
11 | public int ScaleIndex;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkAnimNodeFrameData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkAnimNodeFrameData : NMSTemplate
6 | {
7 | public List Rotations;
8 | public List Translations; // actually Vector3f
9 | public List Scales; // actually Vector3f
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkAnimPoseComponentData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkAnimPoseComponentData : NMSTemplate
6 | {
7 | public List PoseAnims;
8 |
9 | [NMS(Size = 0x80)]
10 | public string Filename;
11 |
12 | public List Correlations;
13 | public List Examples;
14 | public List CorrelationMat;
15 |
16 | public float AdultCorrelationValue;
17 |
18 | [NMS(Size = 4, Ignore = true)]
19 | public byte[] PaddingC4;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkAnimPoseCorrelationData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkAnimPoseCorrelationData : NMSTemplate // 0x28 bytes
4 | {
5 | [NMS(Size = 0x10)]
6 | public string ItemA;
7 | [NMS(Size = 0x10)]
8 | public string ItemB;
9 | public float Correlation;
10 | [NMS(Size = 4, Ignore = true)]
11 | public byte[] Padding24;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkAnimPoseData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkAnimPoseData : NMSTemplate // 0x18 bytes
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Anim;
7 | public int FrameStart;
8 | public int FrameEnd;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkAnimPoseExampleData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkAnimPoseExampleData : NMSTemplate // 0x10 bytes
6 | {
7 | public List Elements;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkAnimPoseExampleElement.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkAnimPoseExampleElement : NMSTemplate // 0x18 bytes
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Anim;
7 | public float Value;
8 | [NMS(Size = 4, Ignore = true)]
9 | public byte[] Padding14;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkAnimationComponentData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkAnimationComponentData : NMSTemplate
6 | {
7 | public TkAnimationData Idle;
8 | public List Anims;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkAnimationDataTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkAnimationDataTable : NMSTemplate
6 | {
7 | public List Table;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkAttachmentData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkAttachmentData : NMSTemplate
6 | {
7 | public List Components;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkAudioAnimTrigger.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkAudioAnimTrigger : NMSTemplate // 0x98 bytes
4 | {
5 | [NMS(Size = 0x80)]
6 | public string Sound;
7 | [NMS(Size = 0x10)]
8 | public string Anim;
9 |
10 | public int FrameStart;
11 |
12 | [NMS(Size = 4, Ignore = true)]
13 | public byte[] Padding94;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkAudioComponentData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkAudioComponentData : NMSTemplate
6 | {
7 | [NMS(Size = 0x80)]
8 | public string Ambient;
9 |
10 | public int MaxDistance;
11 |
12 | public List AnimTriggers;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkButtonImageLookup.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkButtonImageLookup : NMSTemplate
6 | {
7 | public List Lookup;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkButtonPathMapping.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkButtonPathMapping : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 | [NMS(Size = 0x80)]
8 | public string Path;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkCameraWanderData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkCameraWanderData : NMSTemplate
4 | {
5 | public bool CamWander;
6 | public float CamWanderPhase;
7 | public float CamWanderAmplitude;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkControllerButtonLookup.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkControllerButtonLookup : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 | [NMS(Size = 0x80)]
8 | public string ButtonImageLookupFilename;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkControllerList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkControllerList : NMSTemplate
6 | {
7 | public List Controllers;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkControllerSpecification.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkControllerSpecification : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Id;
7 | public TkButtonImageLookup ImageLookup;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkEngineSettings.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | // doesn't seem to be used by the game, TkEngineSettings template isn't inside the exe
4 | // and the only file using this template (METADATA/ENGINE/TKENGINESETTINGS.MBIN) isn't referenced
5 | // file is probably a leftover from early development
6 |
7 | public class TkEngineSettings : NMSTemplate
8 | {
9 | public float ScreenWidth;
10 | public float ScreenHeight;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkEntitlementList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkEntitlementList : NMSTemplate
6 | {
7 | public List Entitlements;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkImGuiData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkImGuiData : NMSTemplate
4 | {
5 | public TkImGuiWindowData MainWindow;
6 | public bool Maximised;
7 | public int DimensionX;
8 | public int DimensionY;
9 | [NMS(Size = 0xA)]
10 | public NMSString0x80[] RecentToolbox;
11 | [NMS(Size = 0x80)]
12 | public TkImGuiWindowData[] WindowTable;
13 | public int WindowCount;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkImGuiWindowData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkImGuiWindowData : NMSTemplate
4 | {
5 | [NMS(Size = 0x80)]
6 | public string Type;
7 |
8 | public int WindowX;
9 | public int WindowY;
10 | public int WindowW;
11 | public int WindowH;
12 | public int WindowMinW;
13 | public int WindowMinH;
14 | public bool WindowResize;
15 | public int WindowScroll;
16 | public int WindowTab;
17 | public bool WindowOpen;
18 | public bool WindowMinimised;
19 | public bool WindowUsed;
20 |
21 | [NMS(Size = 1, Ignore = true)]
22 | public byte[] PaddingA7;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkInputFrame.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkInputFrame : NMSTemplate // 0x1C bytes
4 | {
5 | public Vector2f LeftStick;
6 | public Vector2f RightStick;
7 | public float LeftTrigger;
8 | public float RightTrigger;
9 | public short Buttons;
10 |
11 | [NMS(Size = 2, Ignore = true)]
12 | public byte[] Padding1A;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkInputFrameArray.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkInputFrameArray : NMSTemplate
4 | {
5 | [NMS(Size = 0x4E20)] // INPUTTEST.MBIN has a different count of these? uncertain because we can't tell the MBIN header size..
6 | public TkInputFrame[] Array;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkJointBindingData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkJointBindingData : NMSTemplate
4 | {
5 | [NMS(Size = 16)]
6 | public float[] InvBindMatrix; // 4x4 matrix
7 |
8 | [NMS(Size = 3)]
9 | public float[] BindTranslate; // Vector3f
10 |
11 | [NMS(Size = 4)]
12 | public float[] BindRotate; // Quaternion
13 |
14 | [NMS(Size = 3)]
15 | public float[] BindScale; // Vector3f
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkJointExtentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkJointExtentData : NMSTemplate
4 | {
5 | [NMS(Size = 3)]
6 | public float[] JointExtentMin; // Vector3f
7 |
8 | [NMS(Size = 3)]
9 | public float[] JointExtentMax; // Vector3f
10 |
11 | [NMS(Size = 3)]
12 | public float[] JointExtentCenter; // Vector3f
13 |
14 | [NMS(Size = 3)]
15 | public float[] JointExtentStdDev; // Vector3f
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkJointMirrorAxis.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkJointMirrorAxis : NMSTemplate
4 | {
5 | public float TransMirrorAxisX;
6 | public float TransMirrorAxisY;
7 | public float TransMirrorAxisZ;
8 |
9 | public float RotAdjustX;
10 | public float RotAdjustY;
11 | public float RotAdjustZ;
12 | public float RotAdjustW;
13 |
14 | public float RotMirrorAxisX;
15 | public float RotMirrorAxisY;
16 | public float RotMirrorAxisZ;
17 |
18 | public int MirrorAxisMode;
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkLSystemGlobalRestriction.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkLSystemGlobalRestriction : NMSTemplate
6 | {
7 | [NMS(Size = 0x20)]
8 | public string Name;
9 | [NMS(Size = 0x80)]
10 | public string Model;
11 |
12 | public List Restrictions;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkLSystemGlobalVariation.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkLSystemGlobalVariation : NMSTemplate
4 | {
5 | [NMS(Size = 0x20)]
6 | public string Name;
7 | [NMS(Size = 0x80)]
8 | public string Model;
9 |
10 | public int Variations;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkLSystemInnerRule.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkLSystemInnerRule : NMSTemplate // 0x38 bytes
6 | {
7 | [NMS(Size = 0x20)]
8 | public string LocatorType;
9 | public int MergeProbabilityOptions;
10 | public string[] MergeProbabilityOptionsValues()
11 | {
12 | return new[] { "Balance", "Prioritize", "Replace" };
13 | }
14 |
15 | public List Entries;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkLSystemLocatorEntry.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkLSystemLocatorEntry : NMSTemplate // 0x98 bytes
6 | {
7 | [NMS(Size = 0x80)]
8 | public string Model;
9 |
10 | public float Probability;
11 | public List Restrictions;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkLSystemRestrictionData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkLSystemRestrictionData : NMSTemplate
4 | {
5 | public int Amount;
6 | public int Restriction;
7 | public string[] RestrictionValues()
8 | {
9 | return new[] { "NoMoreThan", "AtLeast", "AtLeastIfICan" };
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkLSystemRule.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkLSystemRule : NMSTemplate // 0xB8 bytes
6 | {
7 | [NMS(Size = 0x20)]
8 | public string Name;
9 | [NMS(Size = 0x80)]
10 | public string Model;
11 |
12 | public List Rules;
13 |
14 | public int RuleType;
15 | public string[] RuleTypeValues()
16 | {
17 | return new[] { "Default", "BaseRule" };
18 | }
19 |
20 | [NMS(Size = 4, Ignore = true)]
21 | public byte[] PaddingB4;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkLSystemRuleTemplate.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkLSystemRuleTemplate : NMSTemplate
4 | {
5 | [NMS(Size = 0x20)]
6 | public string Name;
7 | [NMS(Size = 0x80)]
8 | public string LSystem;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkLSystemRulesData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkLSystemRulesData : NMSTemplate
6 | {
7 | public List GlobalRestriction;
8 |
9 | public List GlobalVariation;
10 |
11 | public List Rules;
12 |
13 | public List Templates;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkLanguageFontTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkLanguageFontTable : NMSTemplate
6 | {
7 | public List Table;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkLanguageFontTableEntry.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkLanguageFontTableEntry : NMSTemplate
4 | {
5 | public TkLanguages Language;
6 | [NMS(Size = 0x80)]
7 | public string GameFont;
8 | [NMS(Size = 0x80)]
9 | public string GameFont2;
10 | [NMS(Size = 0x80)]
11 | public string ConsoleFont;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkLanguages.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkLanguages : NMSTemplate
4 | {
5 | public int Language;
6 | public string[] LanguageValues()
7 | {
8 | return new[] { "Default", "English", "USEnglish", "French", "Italian", "German", "Spanish", "Russian", "Polish", "Dutch", "Portuguese", "LatinAmericanSpanish", "BrazilianPortuguese", "Japanese", "TraditionalChinese", "SimplifiedChinese", "Korean" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkLanguagesAllowedData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkLanguagesAllowedData : NMSTemplate
6 | {
7 | public List Allowed;
8 | public TkLanguages Language;
9 |
10 | [NMS(Size = 4, Ignore = true)]
11 | public byte[] Padding14;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkLocalisationTable.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkLocalisationTable : NMSTemplate
6 | {
7 | public List Table;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkMaterialData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkMaterialData : NMSTemplate
6 | {
7 | [NMS(Size = 0x80)]
8 | public string Name;
9 | [NMS(Size = 0x20)]
10 | public string Class;
11 | public int TransparencyLayerID;
12 | public bool CastShadow;
13 | public bool DisableZTest;
14 | [NMS(Size = 0x80)]
15 | public string Link;
16 | [NMS(Size = 0x80)]
17 | public string Shader;
18 | public List Flags;
19 | public List Uniforms;
20 | public List Samplers;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkMaterialUniform.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkMaterialUniform : NMSTemplate
6 | {
7 | [NMS(Size = 0x20)]
8 | public string Name;
9 | public Vector4f Values;
10 | public List ExtendedValues;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkModelDescriptorList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkModelDescriptorList : NMSTemplate
6 | {
7 | public List List;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkModelRendererCameraData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkModelRendererCameraData : NMSTemplate // 0x40 bytes
4 | {
5 | public float Distance;
6 | [NMS(Size = 0xC, Ignore = true)]
7 | public byte[] Padding4;
8 |
9 | public Vector4f Offset;
10 | public float Pitch;
11 | public float Rotate;
12 | public float LightPitch;
13 | public float LightRotate;
14 | public TkCameraWanderData Wander;
15 |
16 | [NMS(Size = 4, Ignore = true)]
17 | public byte[] Padding3C;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkModelResource.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkModelResource : NMSTemplate
4 | {
5 | [NMS(Size = 0x80)]
6 | public string Filename;
7 | [NMS(Ignore = true)]
8 | public int EmptyNode1;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkNGuiAlignment.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkNGuiAlignment : NMSTemplate
4 | {
5 | public int Vertical;
6 | public int Horizontal;
7 |
8 | public string[] VerticalValues()
9 | {
10 | return new[] { "Top", "Middle", "Bottom" };
11 | }
12 |
13 |
14 | public string[] HorizontalValues()
15 | {
16 | return new[] { "Left", "Center", "Right" };
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkNGuiEditorLayout.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkNGuiEditorLayout : NMSTemplate
4 | {
5 | [NMS(Size = 0x100)]
6 | public TkNGuiWindowLayoutData[] Windows;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkNGuiEditorStyleData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkNGuiEditorStyleData : NMSTemplate
6 | {
7 | public List Sizes;
8 |
9 | [NMS(Size = 5)]
10 | public Colour[] SkinColours;
11 |
12 | public float SkinFontHeight;
13 |
14 | [NMS(Size = 0x80)]
15 | public string Font;
16 |
17 | public List GraphicStyles;
18 | public List TextStyles;
19 |
20 | [NMS(Size = 8, Ignore = true)]
21 | public byte[] Padding108;
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkNGuiLayoutList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkNGuiLayoutList : NMSTemplate
6 | {
7 | public List Layouts;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkNGuiLayoutListData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkNGuiLayoutListData : NMSTemplate
4 | {
5 | [NMS(Size = 0x80)]
6 | public string Name;
7 | [NMS(Size = 0x80)]
8 | public string Filename;
9 | [NMS(Size = 0x80)]
10 | public string Default;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkNGuiTextStyle.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkNGuiTextStyle : NMSTemplate
4 | {
5 | public TkNGuiTextStyleData Default;
6 | public TkNGuiTextStyleData Highlight;
7 | public TkNGuiTextStyleData Active;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkNGuiWindowLayoutData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkNGuiWindowLayoutData : NMSTemplate
4 | {
5 | [NMS(Size = 0x80)]
6 | public string Name;
7 |
8 | public float PositionX;
9 | public float PositionY;
10 | public float SizeX;
11 | public float SizeY;
12 | public float Separator;
13 | public int WindowState;
14 | public string[] WindowStateValues()
15 | {
16 | return new[] { "Open", "Minimised", "Closed" };
17 | }
18 |
19 | [NMS(Size = 8)]
20 | public NMSString0x20[] Tabs;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkNoiseCaveData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkNoiseCaveData : NMSTemplate
4 | {
5 | public int MaximumLOD;
6 | public TkNoiseFeatureData Mouth;
7 | public TkNoiseFeatureData Tunnel;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkNoiseFlattenOptions.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkNoiseFlattenOptions : NMSTemplate
4 | {
5 | public int Flattening;
6 | public string[] FlatteningValues()
7 | {
8 | return new[] { "None", "Natural", "Artificial", "AddResource" };
9 | }
10 |
11 | public int WaterPlacement;
12 | public string[] WaterPlacementValues()
13 | {
14 | return new[] { "None", "Underwater" };
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkNoiseFlattenPoint.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkNoiseFlattenPoint : NMSTemplate // 0x28 bytes
4 | {
5 | public float Density;
6 | public float FlattenRadius;
7 | public float TurbulenceFrequency;
8 | public float TurbulenceAmplitude;
9 | public int TurbulenceOctaves;
10 | public TkNoiseFlattenOptions FlattenType;
11 | public int Classification;
12 | public int Placement;
13 | public bool AddWaypoint;
14 | public bool AddShelter;
15 | public bool AddLandingPad;
16 |
17 | [NMS(Size = 1, Ignore = true)]
18 | public byte[] Padding27;
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkNoiseOffsetEnum.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkNoiseOffsetEnum : NMSTemplate
4 | {
5 | public int OffsetType;
6 | public string[] OffsetTypeValues()
7 | {
8 | return new[] { "Zero", "Base", "All", "SeaLevel" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkNoiseSuperFormulaData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkNoiseSuperFormulaData : NMSTemplate
4 | {
5 | public float Form_m;
6 | public float Form_n1;
7 | public float Form_n2;
8 | public float Form_n3;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkNoiseUberData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkNoiseUberData : NMSTemplate // 0x28 bytes
4 | {
5 | public int Octaves;
6 | public float SharpToRoundFeatures;
7 | public float AmplifyFeatures;
8 | public float PerturbFeatures;
9 | public float AltitudeErosion;
10 | public float RidgeErosion;
11 | public float SlopeErosion;
12 | public float Lacunarity;
13 | public float Gain;
14 | public int DebugNoiseType;
15 | public string[] DebugNoiseTypeValues()
16 | {
17 | return new[] { "Plane", "Check", "Sine", "Uber" };
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkNoiseVoxelTypeEnum.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkNoiseVoxelTypeEnum : NMSTemplate
4 | {
5 | public int NoiseVoxelType;
6 | public string[] NoiseVoxelTypeValues()
7 | {
8 | return new[] { "Base", "Rock", "Mountain", "Sand", "Cave", "Substance_1", "Substance_2", "Substance_3", "RandomRock", "RandomRockOrSubstance" };
9 | }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkPhysicsComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkPhysicsComponentData : NMSTemplate
4 | {
5 | public TkPhysicsData Data;
6 | public NMSTemplate Unknown20;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkPhysicsData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkPhysicsData : NMSTemplate
4 | {
5 | public float Mass;
6 | public float Friction;
7 | public float RollingFriction;
8 | public float AngularDamping;
9 | public float LinearDamping;
10 | public float Gravity;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkPlatformButtonPair.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkPlatformButtonPair : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string PlatformId;
7 | [NMS(Size = 0x10)]
8 | public string ButtonId;
9 | public Vector2f Size;
10 | }
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkProceduralModelComponentData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkProceduralModelComponentData : NMSTemplate
6 | {
7 | public List List;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkProceduralTextureChosenOption.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkProceduralTextureChosenOption : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Layer;
7 | [NMS(Size = 0x10)]
8 | public string Group;
9 | public TkPaletteTexture Palette;
10 | public bool OverrideColour;
11 | public Colour Colour;
12 | [NMS(Size = 0x10)]
13 | public string OptionName;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkProceduralTextureChosenOptionList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkProceduralTextureChosenOptionList : NMSTemplate
6 | {
7 | // list entries are aligned 0x10, not the default 0x8 todo: attribute for this!
8 | // this can be seen at 1402BF509 (1.0 gog), where the alignment argument is being set to 0x10
9 | public List Samplers;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkProceduralTextureChosenOptionSampler.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkProceduralTextureChosenOptionSampler : NMSTemplate
6 | {
7 | public List Options;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkProceduralTextureLayer.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkProceduralTextureLayer : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string Name;
9 |
10 | public float Probability;
11 | public int Unknown14;
12 |
13 | [NMS(Size = 0x10)]
14 | public string Group;
15 |
16 | public bool SelectToMatchBase;
17 | public List Textures;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkProceduralTextureList.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkProceduralTextureList : NMSTemplate
4 | {
5 | public TkProceduralTextureLayer Layer1;
6 | public TkProceduralTextureLayer Layer2;
7 | public TkProceduralTextureLayer Layer3;
8 | public TkProceduralTextureLayer Layer4;
9 | public TkProceduralTextureLayer Layer5;
10 | public TkProceduralTextureLayer Layer6;
11 | public TkProceduralTextureLayer Layer7;
12 | public TkProceduralTextureLayer Layer8;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkRagdollData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkRagdollData : NMSTemplate
6 | {
7 | public float Density;
8 | public float Gravity;
9 | public List ChainEnds;
10 | public List ExcludeJoints;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkReferenceComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkReferenceComponentData : NMSTemplate
4 | {
5 | [NMS(Size = 0x80)]
6 | public string Reference;
7 | [NMS(Size = 0x80)]
8 | public string LSystem;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkResourceDescriptorData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkResourceDescriptorData : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string Id;
9 | [NMS(Size = 0x80)]
10 | public string Name;
11 | public List ReferencePaths;
12 | public float Chance;
13 | public List Children;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkResourceDescriptorList.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkResourceDescriptorList : NMSTemplate
6 | {
7 | [NMS(Size = 0x10)]
8 | public string TypeId;
9 | public List Descriptors;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkRotationComponentData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkRotationComponentData : NMSTemplate
4 | {
5 | public float Speed;
6 |
7 | [NMS(Size = 0xC, Ignore = true)]
8 | public byte[] Padding4;
9 |
10 | public Vector4f Axis;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkSceneNodeAttributeData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkSceneNodeAttributeData : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Name;
7 | [NMS(Size = 0x10)]
8 | public string AltID;
9 | [NMS(Size = 0x100)]
10 | public string Value;
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkSceneNodeData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkSceneNodeData : NMSTemplate
6 | {
7 | [NMS(Size = 0x80)]
8 | public string Name;
9 | [NMS(Size = 0x10)]
10 | public string Type;
11 | public TkTransformData Transform;
12 | [NMS(Ignore = true)]
13 | public int EmptyNode1;
14 | public List Attributes;
15 | public List Children;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkShearWindData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkShearWindData : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string Name;
7 | public float OverallWindStrength;
8 | public float LdsWindStrength;
9 | public float LdsWindSpeed;
10 | public float ShearWindSpeed;
11 | public float WindShearVertpushStrength;
12 | public float WindShearGradientStrength;
13 | public float WindShearToDotLdsFactor;
14 | public TkShearWindOctaveData Octave0;
15 | public TkShearWindOctaveData Octave1;
16 | public TkShearWindOctaveData Octave2;
17 | public TkShearWindOctaveData Octave3;
18 |
19 | [NMS(Size = 4, Ignore = true)]
20 | public byte[] Padding7C;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkShearWindOctaveData.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace MBINCompiler.Models.Structs
8 | {
9 | public class TkShearWindOctaveData : NMSTemplate
10 | {
11 | public float MinStrength;
12 | public float MaxStrength;
13 | public float StrengthVariationFreq;
14 | public float WaveSize;
15 | public float WaveFrequency;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkTextureResource.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkTextureResource : NMSTemplate
4 | {
5 | [NMS(Size = 0x80)]
6 | public string Filename;
7 | [NMS(Ignore = true)]
8 | public int EmptyNode1;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkTrailData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkTrailData : NMSTemplate
4 | {
5 | public float Density;
6 | public float Width;
7 | public int Points;
8 | public float Threshold;
9 | public int FrontPoints;
10 | public float FrontUvEnd;
11 | public Colour ColourStart;
12 | public Colour ColourEnd;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkTransformData.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkTransformData : NMSTemplate
4 | {
5 | public float TransX;
6 | public float TransY;
7 | public float TransZ;
8 | public float RotX;
9 | public float RotY;
10 | public float RotZ;
11 | public float ScaleX;
12 | public float ScaleY;
13 | public float ScaleZ;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkTrophyData.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkTrophyData : NMSTemplate
6 | {
7 | public List Trophies;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkTrophyEntry.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkTrophyEntry : NMSTemplate
4 | {
5 | [NMS(Size = 0x10)]
6 | public string TrophyId;
7 | public int Ps4Id;
8 | [NMS(Size = 0x40)]
9 | public string PCId;
10 |
11 | [NMS(Size = 4, Ignore = true)]
12 | public byte[] Padding54;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkVertexElement.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkVertexElement : NMSTemplate
4 | {
5 | public int SemanticID;
6 | public int Size;
7 | public int Type; // 0x140b(Vec4) or 0x1401(Vec2)
8 | public int Offset;
9 | public int Normalise;
10 |
11 | public int Instancing;
12 | public string[] InstancingValues()
13 | {
14 | return new[] { "PerVertex", "PerModel" };
15 | }
16 |
17 | [NMS(Size = 8)]
18 | public string PlatformData;
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkVertexLayout.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace MBINCompiler.Models.Structs
4 | {
5 | public class TkVertexLayout : NMSTemplate
6 | {
7 | public int ElementCount;
8 | public int Stride;
9 |
10 | [NMS(Size = 8)]
11 | public string PlatformData;
12 |
13 | public List VertexElements;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkVoxelGeneratorSettingsArray.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkVoxelGeneratorSettingsArray : NMSTemplate
4 | {
5 | [NMS(Size = 0xA)]
6 | public TkVoxelGeneratorSettingsElement[] TerrainSettings;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/TkVoxelGeneratorSettingsElement.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class TkVoxelGeneratorSettingsElement : NMSTemplate
4 | {
5 | public TkVoxelGeneratorData Min;
6 | public TkVoxelGeneratorData Max;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/Unfinished/GcPlacementGlobals.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | // doesn't seem like the game uses any of the values here?
4 | public class GcPlacementGlobals : NMSTemplate
5 | {
6 | public float Unknown0;
7 | public float Unknown4;
8 | public float Unknown8;
9 | public int UnknownC;
10 |
11 | public float Unknown10;
12 | public float Unknown14;
13 | public float Unknown18;
14 | public int Unknown1C;
15 |
16 | public float Unknown20;
17 | public float Unknown24;
18 | public float Unknown28;
19 | public float Unknown2C;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/Unfinished/GcSmokeTestOptions.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class GcSmokeTestOptions : NMSTemplate
4 | {
5 | public float Unknown0; // 20.0
6 | public float Unknown4; // 0.1
7 | public float Unknown8; // 4.5
8 | public float UnknownC; // 5
9 |
10 | public int Unknown10; // 0 (unused?)
11 | public int Unknown14; // 0
12 | public int Unknown18; // 0 (unused?)
13 | public int Unknown1C; // 25 (unused?)
14 |
15 | public float Unknown20; // 0.3
16 | public float Unknown24; // 60.0
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/VariableSizeString.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class VariableSizeString : NMSTemplate
4 | {
5 | public string Value;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/Vector2f.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class Vector2f : NMSTemplate
4 | {
5 | public float x;
6 | public float y;
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/Vector3i.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class Vector3i : NMSTemplate
4 | {
5 | public int x;
6 | public int y;
7 | public int z;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/MBINCompiler/Models/Structs/Vector4f.cs:
--------------------------------------------------------------------------------
1 | namespace MBINCompiler.Models.Structs
2 | {
3 | public class Vector4f : NMSTemplate
4 | {
5 | public float x;
6 | public float y;
7 | public float z;
8 | public float t;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/MBINCompilerTests/MBINCompilerTestTemplate.MBIN:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/emoose/MBINCompiler/378645f59a2ad95c2508859f7b09b67617f8b212/MBINCompilerTests/MBINCompilerTestTemplate.MBIN
--------------------------------------------------------------------------------
/MBINCompilerTests/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | C:\NMS
7 |
8 |
9 |
--------------------------------------------------------------------------------