diff --git a/src/ZoneCode/Game/T6/T6_Commands.txt b/src/ZoneCode/Game/T6/T6_Commands.txt index a9898540..312aaa8e 100644 --- a/src/ZoneCode/Game/T6/T6_Commands.txt +++ b/src/ZoneCode/Game/T6/T6_Commands.txt @@ -74,6 +74,7 @@ set count pieces numpieces; use PhysPreset; set string name; set name name; +set string sndAliasPrefix; // ========================================= // PhysConstraints @@ -85,7 +86,9 @@ set name name; use PhysConstraint; set scriptstring targetname; set scriptstring target_ent1; +set string target_bone1; set scriptstring target_ent2; +set string target_bone2; // ========================================= // DestructibleDef @@ -393,6 +396,11 @@ set string subtitle; set string secondaryname; set string assetFileName; +// SndDuck +use SndDuck; +set count attenuation 128; +set count filter 128; + // SndRuntimeAssetBank use SndRuntimeAssetBank; set string zone; @@ -467,6 +475,10 @@ set reusable cmodel_t::info; use ComWorld; set string name; set name name; +set count primaryLights primaryLightCount; + +// ComPrimaryLight +set string ComPrimaryLight::defName; // ========================================= // GameWorldSp @@ -536,6 +548,10 @@ set name name; use Font_s; set string fontName; set name fontName; +set reusable glyphs; +set count glyphs glyphCount; +set reusable kerningPairs; +set count kerningPairs kerningPairsCount; // ========================================= // FontIcon @@ -543,6 +559,13 @@ set name fontName; use FontIcon; set string name; set name name; +set reusable fontIconEntry; +set count fontIconEntry numEntries; +set reusable fontIconAlias; +set count fontIconAlias numAliasEntries; + +// FontIconName +set string FontIconName::string; // ========================================= // MenuList @@ -1072,6 +1095,37 @@ set string autoShatterShound; // ========================================= // EmblemSet // ========================================= +use EmblemSet; +set count layers layerCount; +set count categories categoryCount; +set count iconTypes iconTypeCount; +set count bgCategories iconTypeCount; +set count icons iconTypeCount; +set count backgrounds backgroundCount; +set count backgroundLookup backgroundLookupCount; + +// EmblemCategory +use EmblemCategory; +set string name; +set string description; + +// EmblemIconType +use EmblemIconType; +set string name; +set string description; + +// EmblemBGCategory +use EmblemBGCategory; +set string name; +set string description; + +// EmblemIcon +use EmblemIcon; +set string description; + +// EmblemBackground +use EmblemBackground; +set string description; // ========================================= // ScriptParseTree diff --git a/src/ZoneCommon/Game/T6/T6_Assets.h b/src/ZoneCommon/Game/T6/T6_Assets.h index b6c07ff8..c5cadbf6 100644 --- a/src/ZoneCommon/Game/T6/T6_Assets.h +++ b/src/ZoneCommon/Game/T6/T6_Assets.h @@ -591,6 +591,8 @@ struct __declspec(align(8)) MaterialInfo int contents; }; +typedef __declspec(align(8)) GfxStateBits GfxStateBitsTable; + struct Material { MaterialInfo info; @@ -604,7 +606,7 @@ struct Material MaterialTechniqueSet *techniqueSet; MaterialTextureDef *textureTable; MaterialConstantDef *constantTable; - GfxStateBits *stateBitsTable; + GfxStateBitsTable*stateBitsTable; Material *thermalMaterial; }; @@ -741,6 +743,8 @@ struct __declspec(align(2)) SndRuntimeAssetBank }; #pragma pack(pop) +typedef __declspec(align(2048)) char SndChar2048; + struct SndLoadedAssets { const char *zone; @@ -749,7 +753,7 @@ struct SndLoadedAssets unsigned int entryCount; SndAssetBankEntry *entries; unsigned int dataSize; - char *data; + SndChar2048 *data; }; enum SndBankState @@ -2584,7 +2588,7 @@ struct SndAliasList int sequence; }; -struct SndIndexEntry +struct __declspec(align(4)) SndIndexEntry { unsigned __int16 value; unsigned __int16 next; @@ -2612,6 +2616,8 @@ struct SndRadverb float returnHighpass; }; +typedef __declspec(align(16)) float SndFloatAlign16; + struct SndDuck { char name[32]; @@ -2623,8 +2629,8 @@ struct SndDuck float length; unsigned int fadeInCurve; unsigned int fadeOutCurve; - float *attenuation; - float *filter; + SndFloatAlign16 *attenuation; + SndFloatAlign16 *filter; int updateWhilePaused; }; diff --git a/src/ZoneLoading/Game/T6/ContentLoaderT6.cpp b/src/ZoneLoading/Game/T6/ContentLoaderT6.cpp index a2c622d7..4f7f2cde 100644 --- a/src/ZoneLoading/Game/T6/ContentLoaderT6.cpp +++ b/src/ZoneLoading/Game/T6/ContentLoaderT6.cpp @@ -105,55 +105,55 @@ void ContentLoaderT6::LoadXAsset(const bool atStreamStart) switch(varXAsset->type) { - // LOAD_ASSET(ASSET_TYPE_PHYSPRESET, PhysPreset, physPreset); - // LOAD_ASSET(ASSET_TYPE_PHYSCONSTRAINTS, PhysConstraints, physConstraints); + LOAD_ASSET(ASSET_TYPE_PHYSPRESET, PhysPreset, physPreset); + LOAD_ASSET(ASSET_TYPE_PHYSCONSTRAINTS, PhysConstraints, physConstraints); // LOAD_ASSET(ASSET_TYPE_DESTRUCTIBLEDEF, DestructibleDef, destructibleDef); // LOAD_ASSET(ASSET_TYPE_XANIMPARTS, XAnimParts, parts); // LOAD_ASSET(ASSET_TYPE_XMODEL, XModel, model); - // LOAD_ASSET(ASSET_TYPE_MATERIAL, Material, material); + LOAD_ASSET(ASSET_TYPE_MATERIAL, Material, material); // LOAD_ASSET(ASSET_TYPE_TECHNIQUE_SET, MaterialTechniqueSet, techniqueSet); // LOAD_ASSET(ASSET_TYPE_IMAGE, GfxImage, image); - // LOAD_ASSET(ASSET_TYPE_SOUND, SndBank, sound); - // LOAD_ASSET(ASSET_TYPE_SOUND_PATCH, SndPatch, soundPatch); + LOAD_ASSET(ASSET_TYPE_SOUND, SndBank, sound); + LOAD_ASSET(ASSET_TYPE_SOUND_PATCH, SndPatch, soundPatch); // LOAD_ASSET(ASSET_TYPE_CLIPMAP, clipMap_t, clipMap); // LOAD_ASSET(ASSET_TYPE_CLIPMAP_PVS, clipMap_t, clipMap); - // LOAD_ASSET(ASSET_TYPE_COMWORLD, ComWorld, comWorld); + LOAD_ASSET(ASSET_TYPE_COMWORLD, ComWorld, comWorld); // LOAD_ASSET(ASSET_TYPE_GAMEWORLD_SP, GameWorldSp, gameWorldSp); // LOAD_ASSET(ASSET_TYPE_GAMEWORLD_MP, GameWorldMp, gameWorldMp); LOAD_ASSET(ASSET_TYPE_MAP_ENTS, MapEnts, mapEnts); // LOAD_ASSET(ASSET_TYPE_GFXWORLD, GfxWorld, gfxWorld); - // LOAD_ASSET(ASSET_TYPE_LIGHT_DEF, GfxLightDef, lightDef); - // LOAD_ASSET(ASSET_TYPE_FONT, Font_s, font); - // LOAD_ASSET(ASSET_TYPE_FONTICON, FontIcon, fontIcon); + LOAD_ASSET(ASSET_TYPE_LIGHT_DEF, GfxLightDef, lightDef); + LOAD_ASSET(ASSET_TYPE_FONT, Font_s, font); + LOAD_ASSET(ASSET_TYPE_FONTICON, FontIcon, fontIcon); // LOAD_ASSET(ASSET_TYPE_MENULIST, MenuList, menuList); // LOAD_ASSET(ASSET_TYPE_MENU, menuDef_t, menu); LOAD_ASSET(ASSET_TYPE_LOCALIZE_ENTRY, LocalizeEntry, localize); // LOAD_ASSET(ASSET_TYPE_WEAPON, WeaponVariantDef, weapon); - // LOAD_ASSET(ASSET_TYPE_ATTACHMENT, WeaponAttachment, attachment); + LOAD_ASSET(ASSET_TYPE_ATTACHMENT, WeaponAttachment, attachment); // LOAD_ASSET(ASSET_TYPE_ATTACHMENT_UNIQUE, WeaponAttachmentUnique, attachmentUnique); // LOAD_ASSET(ASSET_TYPE_WEAPON_CAMO, WeaponCamo, weaponCamo); - // LOAD_ASSET(ASSET_TYPE_SNDDRIVER_GLOBALS, SndDriverGlobals, sndDriverGlobals); + LOAD_ASSET(ASSET_TYPE_SNDDRIVER_GLOBALS, SndDriverGlobals, sndDriverGlobals); // LOAD_ASSET(ASSET_TYPE_FX, FxEffectDef, fx); // LOAD_ASSET(ASSET_TYPE_IMPACT_FX, FxImpactTable, impactFx); LOAD_ASSET(ASSET_TYPE_RAWFILE, RawFile, rawfile); LOAD_ASSET(ASSET_TYPE_STRINGTABLE, StringTable, stringTable); - // LOAD_ASSET(ASSET_TYPE_LEADERBOARD, LeaderboardDef, leaderboardDef); + LOAD_ASSET(ASSET_TYPE_LEADERBOARD, LeaderboardDef, leaderboardDef); // LOAD_ASSET(ASSET_TYPE_XGLOBALS, XGlobals, xGlobals); LOAD_ASSET(ASSET_TYPE_DDL, ddlRoot_t, ddlRoot); - // LOAD_ASSET(ASSET_TYPE_GLASSES, Glasses, glasses); - // LOAD_ASSET(ASSET_TYPE_EMBLEMSET, EmblemSet, emblemSet); + LOAD_ASSET(ASSET_TYPE_GLASSES, Glasses, glasses); + LOAD_ASSET(ASSET_TYPE_EMBLEMSET, EmblemSet, emblemSet); LOAD_ASSET(ASSET_TYPE_SCRIPTPARSETREE, ScriptParseTree, scriptParseTree); LOAD_ASSET(ASSET_TYPE_KEYVALUEPAIRS, KeyValuePairs, keyValuePairs); // LOAD_ASSET(ASSET_TYPE_VEHICLEDEF, VehicleDef, vehicleDef); // LOAD_ASSET(ASSET_TYPE_MEMORYBLOCK, MemoryBlock, memoryBlock); LOAD_ASSET(ASSET_TYPE_ADDON_MAP_ENTS, AddonMapEnts, addonMapEnts); - // LOAD_ASSET(ASSET_TYPE_TRACER, TracerDef, tracerDef); - // LOAD_ASSET(ASSET_TYPE_SKINNEDVERTS, SkinnedVertsDef, skinnedVertsDef); + LOAD_ASSET(ASSET_TYPE_TRACER, TracerDef, tracerDef); + LOAD_ASSET(ASSET_TYPE_SKINNEDVERTS, SkinnedVertsDef, skinnedVertsDef); LOAD_ASSET(ASSET_TYPE_QDB, Qdb, qdb); LOAD_ASSET(ASSET_TYPE_SLUG, Slug, slug); - // LOAD_ASSET(ASSET_TYPE_FOOTSTEP_TABLE, FootstepTableDef, footstepTableDef); + LOAD_ASSET(ASSET_TYPE_FOOTSTEP_TABLE, FootstepTableDef, footstepTableDef); // LOAD_ASSET(ASSET_TYPE_FOOTSTEPFX_TABLE, FootstepFXTableDef, footstepFXTableDef); - // LOAD_ASSET(ASSET_TYPE_ZBARRIER, ZBarrierDef, zbarrierDef); + LOAD_ASSET(ASSET_TYPE_ZBARRIER, ZBarrierDef, zbarrierDef); default: {