diff --git a/mod_info.lua b/mod_info.lua index 1261a02..5ef838b 100644 --- a/mod_info.lua +++ b/mod_info.lua @@ -1,11 +1,11 @@ name = "SCU Rebalance" -version = 5 +version = 6 copyright = "Rowey" description = "Rowey's Idea for what to do with the balance of the all the faction SCUs" author = "Rowey" url = "" icon = "" -uid = "SCU-v05" +uid = "SCU-v06" exclusive = false ui_only = false conflicts = {} diff --git a/units/UAL0301/UAL0301_AWalk01.sca b/units/UAL0301/UAL0301_AWalk01.sca new file mode 100644 index 0000000..2aa982d Binary files /dev/null and b/units/UAL0301/UAL0301_AWalk01.sca differ diff --git a/units/UAL0301/UAL0301_Afold.sca b/units/UAL0301/UAL0301_Afold.sca new file mode 100644 index 0000000..3938125 Binary files /dev/null and b/units/UAL0301/UAL0301_Afold.sca differ diff --git a/units/UAL0301/UAL0301_Albedo.dds b/units/UAL0301/UAL0301_Albedo.dds new file mode 100644 index 0000000..76cf04b Binary files /dev/null and b/units/UAL0301/UAL0301_Albedo.dds differ diff --git a/units/UAL0301/UAL0301_Aunfold.sca b/units/UAL0301/UAL0301_Aunfold.sca new file mode 100644 index 0000000..e0f891c Binary files /dev/null and b/units/UAL0301/UAL0301_Aunfold.sca differ diff --git a/units/UAL0301/UAL0301_SpecTeam.dds b/units/UAL0301/UAL0301_SpecTeam.dds new file mode 100644 index 0000000..23f2e06 Binary files /dev/null and b/units/UAL0301/UAL0301_SpecTeam.dds differ diff --git a/units/UAL0301/UAL0301_lod0.scm b/units/UAL0301/UAL0301_lod0.scm new file mode 100644 index 0000000..dae6bb1 Binary files /dev/null and b/units/UAL0301/UAL0301_lod0.scm differ diff --git a/units/UAL0301/UAL0301_lod1.scm b/units/UAL0301/UAL0301_lod1.scm new file mode 100644 index 0000000..ecc427d Binary files /dev/null and b/units/UAL0301/UAL0301_lod1.scm differ diff --git a/units/UAL0301/UAL0301_lod1_Albedo.dds b/units/UAL0301/UAL0301_lod1_Albedo.dds new file mode 100644 index 0000000..9b735b0 Binary files /dev/null and b/units/UAL0301/UAL0301_lod1_Albedo.dds differ diff --git a/units/UAL0301/UAL0301_lod1_SpecTeam.dds b/units/UAL0301/UAL0301_lod1_SpecTeam.dds new file mode 100644 index 0000000..3a07221 Binary files /dev/null and b/units/UAL0301/UAL0301_lod1_SpecTeam.dds differ diff --git a/units/UAL0301/UAL0301_lod1_normalsTS.dds b/units/UAL0301/UAL0301_lod1_normalsTS.dds new file mode 100644 index 0000000..b7c86d4 Binary files /dev/null and b/units/UAL0301/UAL0301_lod1_normalsTS.dds differ diff --git a/units/UAL0301/UAL0301_normalsTS.dds b/units/UAL0301/UAL0301_normalsTS.dds new file mode 100644 index 0000000..1471b2d Binary files /dev/null and b/units/UAL0301/UAL0301_normalsTS.dds differ diff --git a/units/UAL0301/UAL0301_personalshield_mesh.bp b/units/UAL0301/UAL0301_personalshield_mesh.bp new file mode 100644 index 0000000..0984982 --- /dev/null +++ b/units/UAL0301/UAL0301_personalshield_mesh.bp @@ -0,0 +1,17 @@ +MeshBlueprint { + IconFadeInZoom = 130, + LODs = { + { + MeshName = 'ual0301_lod0.scm', + AlbedoName = 'ual0301_albedo.dds', + NormalsName = 'ual0301_normalsTS.dds', + SpecularName = 'ual0301_specteam.dds', + LookupName = '/effects/entities/PhaseShield/PhaseShieldLookup.dds', + + LODCutoff = 195, + + Scrolling = true, + ShaderName = 'AeonPhaseShield', + }, + }, +} diff --git a/units/UAL0301/UAL0301_unit.bp b/units/UAL0301/UAL0301_unit.bp index 2ddec25..99ed39b 100644 --- a/units/UAL0301/UAL0301_unit.bp +++ b/units/UAL0301/UAL0301_unit.bp @@ -1,17 +1,208 @@ UnitBlueprint { - Merge = true, + Description = "Support Armored Command Unit", + AI = { + GuardScanRadius = 26, + }, + Audio = { + CaptureLoop = Sound { Bank = 'UAL', Cue = 'UAL0301_Capture_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + CommanderArrival = Sound { Bank = 'UAL', Cue = 'UAL0001_Gate_In', LodCutoff = 'UnitMove_LodCutoff' }, + Construct = Sound { Bank = 'UAL', Cue = 'UAL0301_Construct_Start', LodCutoff = 'UnitMove_LodCutoff' }, + ConstructLoop = Sound { Bank = 'UAL', Cue = 'UAL0301_Construct_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + Destroyed = Sound { Bank = 'UALDestroy', Cue = 'UAL_Destroy_Land', LodCutoff = 'UnitMove_LodCutoff' }, + EnhanceEnd = Sound { Bank = 'UnitsGlobal', Cue = 'GLB_Enhance_Stop', LodCutoff = 'UnitMove_LodCutoff' }, + EnhanceFail = Sound { Bank = 'UnitsGlobal', Cue = 'GLB_Enhance_Fail', LodCutoff = 'UnitMove_LodCutoff' }, + EnhanceLoop = Sound { Bank = 'UnitsGlobal', Cue = 'GLB_Enhance_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + EnhanceStart = Sound { Bank = 'UnitsGlobal', Cue = 'GLB_Enhance_Start', LodCutoff = 'UnitMove_LodCutoff' }, + FootFallGeneric = Sound { Bank = 'UAL', Cue = 'UAL0301_Move_Step', LodCutoff = 'UnitMove_LodCutoff' }, + FootFallGenericSeabed = Sound { Bank = 'UAL', Cue = 'UAL0001_Move_UW_Step', LodCutoff = 'UnitMove_LodCutoff' }, + Killed = Sound { Bank = 'Explosions', Cue = 'Aeon_Nuke_Impact', LodCutoff = 'UnitMove_LodCutoff' }, + ReclaimLoop = Sound { Bank = 'UAL', Cue = 'UAL0301_Reclaim_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + StartCapture = Sound { Bank = 'UAL', Cue = 'UAL0301_Capture_Start', LodCutoff = 'UnitMove_LodCutoff' }, + StartMove = Sound { Bank = 'UAL', Cue = 'UAL0301_Move_Start', LodCutoff = 'UnitMove_LodCutoff' }, + StartReclaim = Sound { Bank = 'UAL', Cue = 'UAL0301_Reclaim_Start', LodCutoff = 'UnitMove_LodCutoff' }, + StopMove = Sound { Bank = 'UAL', Cue = 'UAL0301_Move_Stop', LodCutoff = 'UnitMove_LodCutoff' }, + TeleportChargingAtDestination = Sound { Bank = 'UAL', Cue = 'UAL0001_Reclaim_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + TeleportChargingAtUnit = Sound { Bank = 'UAL', Cue = 'UAL0201_Move_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + TeleportIn = Sound { Bank = 'Impacts', Cue = 'AEON_Expl_Lrg_Naval', LodCutoff = 'UnitMove_LodCutoff' }, + UISelection = Sound { Bank = 'Interface', Cue = 'Aeon_Select_Commander', LodCutoff = 'UnitMove_LodCutoff' }, + }, + BuildIconSortPriority = 10, + Categories = { + "AEON", + "AMPHIBIOUS", + "BUILTBYQUANTUMGATE", + "CAPTURE", + "CONSTRUCTION", + "ENERGYPRODUCTION", + "ENGINEER", + "LAND", + "MASSFABRICATION", + "MASSPRODUCTION", + "MOBILE", + "OVERLAYDIRECTFIRE", + "OVERLAYOMNI", + "PATROLHELPER", + "PRODUCTSC1", + "RECLAIM", + "REPAIR", + "SELECTABLE", + "SHOWQUEUE", + "SUBCOMMANDER", + "TECH3", + "USEBUILDPRESETS", + "VISIBLETORECON", + }, Defense = { + AirThreatLevel = 0, + ArmorType = "Normal", + EconomyThreatLevel = 968, Health = 12000, MaxHealth = 12000, RegenRate = 8, + SubThreatLevel = 0, + SurfaceThreatLevel = 30, + }, + Display = { + Abilities = { + "Amphibious", + "Customizable", + "Engineering Suite", + "Not Capturable", + "Omni Sensor", + "Volatile", + }, + AnimationWalk = "/units/UAL0301/UAL0301_AWalk01.sca", + AnimationWalkRate = 3.5, + IdleEffects = { + Seabed = { + Effects = { + { + Bones = { + "Arm_Right_B02", + "Arm_Left_B02", + "Arm_Right_Build", + "AttachPoint", + }, + Type = "UnderWater01", + }, + }, + }, + }, + Mesh = { + IconFadeInZoom = 130, + LODs = { + { + LODCutoff = 100, + Scrolling = true, + ShaderName = "Aeon", + }, + { + LODCutoff = 215, + ShaderName = "Aeon", + AlbedoName = "ual0301_lod1_albedo.dds", + SpecularName = "ual0301_lod1_specteam.dds", + }, + }, + }, + MovementEffects = { + Land = { + Effects = { + { + Bones = { + "Leg_Left_B03", + "Leg_Right_B03", + }, + Scale = 0.5, + Type = "GroundKickup01", + }, + }, + Footfall = { + Bones = { + { + FootBone = "Leg_Left_B03", + Tread = { + TreadMarks = "CommanderPrint_albedo", + TreadMarksSizeX = 0.45, + TreadMarksSizeZ = 0.45, + TreadOffset = { -0.18, 0, 0.35 }, + }, + }, + { + FootBone = "Leg_Right_B03", + Tread = { + TreadMarks = "CommanderPrint_albedo", + TreadMarksSizeX = 0.45, + TreadMarksSizeZ = 0.45, + TreadOffset = { 0.18, 0, 0.35 }, + }, + }, + }, + }, + }, + Seabed = { + Effects = { + { + Bones = { + "UAL0301", + "Arm_Right_B02", + "Arm_Left_B02", + "Arm_Right_Build", + "AttachPoint", + "Leg_Right_B03", + "Leg_Left_B03", + }, + Type = "UnderWater01", + }, + }, + }, + }, + TeleportEffects = { + ChargeFxAtUnitBones = { + { + Bone = "Turbine", + Offset = { 0, 0.2, -0.1 }, + }, + }, + PlayChargeFxAtDestination = true, + PlayChargeFxAtUnit = true, + PlayTeleportInFx = true, + PlayTeleportOutFx = true, + }, + TransportAnimation = { + { + Animation = "/units/UAL0301/UAL0301_afold.sca", + Weight = 100, + }, + }, + TransportDropAnimation = { + { + Animation = "/units/UAL0301/UAL0301_aunfold.sca", + Weight = 100, + }, + }, + UniformScale = 0.13, + WarpInEffect = { + HideBones = { "Turbine" }, + PhaseShieldMesh = "/units/ual0301/UAL0301_personalshield_mesh", + }, }, Economy = { BuildCostEnergy = 24600, BuildCostMass = 2050, BuildRate = 45, BuildTime = 14350, + BuildableCategory = { "BUILTBYTIER3ENGINEER AEON" }, + MaxBuildDistance = 10, + NaturalProducer = true, + ProductionPerSecondEnergy = 20, + ProductionPerSecondMass = 1, + SacrificeEnergyMult = 0.9, + SacrificeMassMult = 0.9, StorageEnergy = 750, StorageMass = 450, + TeleportEnergyMod = 5.16, + TeleportMassMod = 0, + TeleportTimeMod = 0.0001, }, EnhancementPresets = { RAS = { @@ -70,42 +261,6 @@ UnitBlueprint { SortCategory = "SORTOTHER", UnitName = "SACU (Experimental Combat preset)", }, - - -- Not Using - --NanoCombat = { - -- Description = "SACU (Nano Combatant preset)", - -- BuildIconSortPriority = 25, - -- Enhancements = { - -- "StabilitySuppressant", - -- "SystemIntegrityCompensator", - -- }, - -- HelpText = "Support Armored Command Unit. Enhanced during construction with the reacton refractor and nano-repair system enhancements.", - -- SortCategory = "SORTOTHER", - -- UnitName = "SACU (Nano Combatant preset)", - --}, - --Rambo = { - -- Description = "SACU (Rambo preset)", - -- BuildIconSortPriority = 35, - -- Enhancements = { - -- "StabilitySuppressant", - -- "Shield", - -- "ShieldHeavy", - -- }, - -- HelpText = "Support Armored Command Unit. Enhanced during construction with a personal shield and the reacton refractor enhancements.", - -- SortCategory = "SORTOTHER", - -- UnitName = "SACU (Rambo preset)", - --}, - --ShieldCombat = { - -- Description = "SACU (Shield Combatant preset)", - -- BuildIconSortPriority = 30, - -- Enhancements = { - -- "StabilitySuppressant", - -- "Shield", - -- }, - -- HelpText = "Support Armored Command Unit. Enhanced during construction with a personal shield and the reacton refractor enhancements.", - -- SortCategory = "SORTOTHER", - -- UnitName = "SACU (Shield Combatant preset)", - --}, }, Enhancements = { -- Left Arm @@ -254,6 +409,7 @@ UnitBlueprint { }, Slot = "Back", }, + -- Right Arm EngineeringFocusingModule = { BuildCostEnergy = 53500, @@ -304,6 +460,7 @@ UnitBlueprint { }, Slot = "RCH", }, + -- Slots Slots = { Back = { @@ -323,13 +480,216 @@ UnitBlueprint { }, } }, + General = { + BuildBones = { + AimBone = "Arm_Right_Build", + BuildEffectBones = { "Arm_Right_Build" }, + PitchBone = "Arm_Right_B03", + YawBone = "Torso", + }, + CommandCaps = { + RULEUCC_Attack = true, + RULEUCC_CallTransport = true, + RULEUCC_Capture = true, + RULEUCC_Guard = true, + RULEUCC_Move = true, + RULEUCC_Nuke = false, + RULEUCC_Patrol = true, + RULEUCC_Pause = true, + RULEUCC_Reclaim = true, + RULEUCC_Repair = true, + RULEUCC_RetaliateToggle = true, + RULEUCC_Sacrifice = false, + RULEUCC_Stop = true, + RULEUCC_Transport = false, + }, + ConstructionBar = true, + FactionName = "Aeon", + Icon = "amph", + OrderOverrides = { + RULEUTC_ShieldToggle = { + bitmapId = "shield-personal", + helpText = "toggle_shield_personal", + }, + }, + SelectionPriority = 3, + TeleportDelay = 10, + }, + Intel = { + FreeIntel = true, + OmniRadius = 16, + VisionRadius = 26, + WaterVisionRadius = 26, + }, + LifeBarHeight = 0.075, + LifeBarOffset = 0.4, + LifeBarSize = 0.9, + Physics = { + BankingSlope = 0, + BuildOnLayerCaps = { + LAYER_Air = false, + LAYER_Land = true, + LAYER_Orbit = false, + LAYER_Seabed = false, + LAYER_Sub = false, + LAYER_Water = false, + }, + DragCoefficient = 0.2, + LayerChangeOffsetHeight = -0.85, + MaxAcceleration = 2.2, + MaxBrake = 2.2, + MaxSpeed = 2.2, + MaxSpeedReverse = 0, + MaxSteerForce = 12, + MeshExtentsX = 1.25, + MeshExtentsY = 1.9, + MeshExtentsZ = 1.75, + MinSpeedPercent = 0, + MotionType = "RULEUMT_Amphibious", + StandUpright = true, + TurnRadius = 10, + TurnRate = 150, + }, + SelectionCenterOffsetX = 0, + SelectionCenterOffsetZ = -0.1, + SelectionSizeX = 0.55, + SelectionSizeZ = 0.5, + SelectionThickness = 0.7, + SelectionYOffset = 0, + SizeX = 1.1, + SizeY = 1.85, + SizeZ = 1.1, + StrategicIconName = "icon_subcommander", + StrategicIconSortPriority = 1, + Transport = { + CanFireFromTransport = false, + TransportClass = 3, + }, + Veteran = { + Level1 = 25, + Level2 = 50, + Level3 = 75, + Level4 = 100, + Level5 = 125, + }, Weapon = { { + AboveWaterFireOnly = true, + AboveWaterTargetsOnly = true, + Audio = { Fire = Sound { Bank = 'UALWeapon', Cue = 'UAL0301_BG_Gun', LodCutoff = 'Weapon_LodCutoff' },}, + BallisticArc = "RULEUBA_LowArc", + CollideFriendly = false, Damage = 150, + DamageType = "Normal", + DisplayName = "Reacton Cannon", + FireTargetLayerCapsTable = { + Land = "Land|Water|Seabed", + Water = "Land|Water|Seabed", + }, + FiringTolerance = 2, + Label = "RightReactonCannon", MaxRadius = 25, + MinRadius = 1, + MuzzleChargeDelay = 0.1, + MuzzleSalvoDelay = 0, + MuzzleSalvoSize = 1, + MuzzleVelocity = 25, + MuzzleVelocityReduceDistance = 5, + ProjectileId = "/projectiles/ADFReactonCannon01/ADFReactonCannon01_proj.bp", + ProjectileLifetimeUsesMultiplier = 1.15, + ProjectilesPerOnFire = 1, + RackBones = { + { + MuzzleBones = { "Arm_Left_Muzzle" }, + RackBone = "Arm_Left_B03", + }, + }, + RackFireTogether = false, + RackRecoilDistance = 0, + RackReloadTimeout = 10, + RackSalvoChargeTime = 0, + RackSalvoReloadTime = 0, + RackSalvoSize = 1, + RackSlavedToTurret = false, + RangeCategory = "UWRC_DirectFire", + RateOfFire = 1, + TargetPriorities = { + "MOBILE EXPERIMENTAL", + "MOBILE TECH3", + "MOBILE TECH2", + "(STRUCTURE * DEFENSE - ANTIMISSILE)", + "MOBILE TECH1", + "ALLUNITS", + }, + TargetRestrictDisallow = "UNTARGETABLE", + TurretBoneMuzzle = "Arm_Left_Muzzle", + TurretBonePitch = "Arm_Left_B03", + TurretBoneYaw = "Torso", + TurretDualManipulators = false, + TurretPitch = 0, + TurretPitchRange = 160, + TurretPitchSpeed = 90, + TurretYaw = 0, + TurretYawRange = 360, + TurretYawSpeed = 180, + Turreted = true, + UseFiringSolutionInsteadOfAimBone = true, + WeaponCategory = "Direct Fire", }, { + AboveWaterTargetsOnly = true, + CollideFriendly = false, Damage = 1250, + DamageFriendly = true, + DamageRadius = 10, + DamageType = "DeathExplosion", + DisplayName = "Death Nuke", + FireOnDeath = true, + FiringTolerance = 2, + Label = "DeathWeapon", + MaxRadius = 1, + MuzzleSalvoDelay = 0, + MuzzleSalvoSize = 1, + MuzzleVelocity = 0, + ProjectileId = "/effects/Entities/SCUDeath01/SCUDeath01_proj.bp", + RackBones = { + { + MuzzleBones = { 0 }, + RackBone = 0, + }, + }, + RackRecoilDistance = 0, + RateOfFire = 1, + TargetRestrictDisallow = "UNTARGETABLE", + Turreted = false, + WeaponCategory = "Death", + }, + { + Damage = 150, + DamageFriendly = true, + DamageRadius = 5, + DamageType = "Normal", + DisplayName = "Teleport in", + DummyWeapon = true, + Label = "TeleportWeapon", + ManualFire = true, + MaxRadius = 1, + RateOfFire = 1, + WeaponCategory = "Teleport", + }, + }, + Wreckage = { + Blueprint = "/props/DefaultWreckage/DefaultWreckage_prop.bp", + EnergyMult = 0, + HealthMult = 0.9, + MassMult = 0.9, + ReclaimTimeMultiplier = 1, + WreckageLayers = { + Air = false, + Land = true, + Seabed = false, + Sub = false, + Water = false, }, }, } \ No newline at end of file diff --git a/units/UEL0301/UEL0301_Afold.sca b/units/UEL0301/UEL0301_Afold.sca new file mode 100644 index 0000000..6d3881c Binary files /dev/null and b/units/UEL0301/UEL0301_Afold.sca differ diff --git a/units/UEL0301/UEL0301_Albedo.dds b/units/UEL0301/UEL0301_Albedo.dds new file mode 100644 index 0000000..b1f31c7 Binary files /dev/null and b/units/UEL0301/UEL0301_Albedo.dds differ diff --git a/units/UEL0301/UEL0301_Awalk01.sca b/units/UEL0301/UEL0301_Awalk01.sca new file mode 100644 index 0000000..1a29f07 Binary files /dev/null and b/units/UEL0301/UEL0301_Awalk01.sca differ diff --git a/units/UEL0301/UEL0301_PersonalShield_mesh.bp b/units/UEL0301/UEL0301_PersonalShield_mesh.bp new file mode 100644 index 0000000..c39665b --- /dev/null +++ b/units/UEL0301/UEL0301_PersonalShield_mesh.bp @@ -0,0 +1,14 @@ +MeshBlueprint { + IconFadeInZoom = 130, + LODs = { + { + MeshName = 'uel0301_lod0.scm', + AlbedoName = 'uel0301_albedo.dds', + NormalsName = 'uel0301_normalsTS.dds', + SpecularName = 'uel0301_specteam.dds', + LookupName = '/effects/entities/PhaseShield/PhaseShieldLookup.dds', + ShaderName = 'PhaseShield', + LODCutoff = 195, + }, + }, +} diff --git a/units/UEL0301/UEL0301_SpecTeam.dds b/units/UEL0301/UEL0301_SpecTeam.dds new file mode 100644 index 0000000..bf37ab5 Binary files /dev/null and b/units/UEL0301/UEL0301_SpecTeam.dds differ diff --git a/units/UEL0301/UEL0301_lod0.scm b/units/UEL0301/UEL0301_lod0.scm new file mode 100644 index 0000000..dda49d8 Binary files /dev/null and b/units/UEL0301/UEL0301_lod0.scm differ diff --git a/units/UEL0301/UEL0301_lod1.scm b/units/UEL0301/UEL0301_lod1.scm new file mode 100644 index 0000000..dc14fc1 Binary files /dev/null and b/units/UEL0301/UEL0301_lod1.scm differ diff --git a/units/UEL0301/UEL0301_lod1_Albedo.dds b/units/UEL0301/UEL0301_lod1_Albedo.dds new file mode 100644 index 0000000..e0cdba2 Binary files /dev/null and b/units/UEL0301/UEL0301_lod1_Albedo.dds differ diff --git a/units/UEL0301/UEL0301_lod1_SpecTeam.dds b/units/UEL0301/UEL0301_lod1_SpecTeam.dds new file mode 100644 index 0000000..0a91b8a Binary files /dev/null and b/units/UEL0301/UEL0301_lod1_SpecTeam.dds differ diff --git a/units/UEL0301/UEL0301_lod1_normalsTS.dds b/units/UEL0301/UEL0301_lod1_normalsTS.dds new file mode 100644 index 0000000..346af00 Binary files /dev/null and b/units/UEL0301/UEL0301_lod1_normalsTS.dds differ diff --git a/units/UEL0301/UEL0301_normalsTS.dds b/units/UEL0301/UEL0301_normalsTS.dds new file mode 100644 index 0000000..9b3224e Binary files /dev/null and b/units/UEL0301/UEL0301_normalsTS.dds differ diff --git a/units/UEL0301/UEL0301_unit.bp b/units/UEL0301/UEL0301_unit.bp index eea48fc..198f6c3 100644 --- a/units/UEL0301/UEL0301_unit.bp +++ b/units/UEL0301/UEL0301_unit.bp @@ -1,15 +1,189 @@ UnitBlueprint { - Merge = true, + Description = "Support Armored Command Unit", + AI = { + GuardScanRadius = 26, + TargetBones = { + "UEL0301", + "Head", + }, + }, + Audio = { + CaptureLoop = Sound { Bank = 'UEL', Cue = 'UEL0301_Capture_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + CommanderArrival = Sound { Bank = 'UEL', Cue = 'UEL0001_Gate_In', LodCutoff = 'UnitMove_LodCutoff' }, + Construct = Sound { Bank = 'UEL', Cue = 'UEL0301_Construct_Start', LodCutoff = 'UnitMove_LodCutoff' }, + ConstructLoop = Sound { Bank = 'UEL', Cue = 'UEL0301_Construct_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + Destroyed = Sound { Bank = 'UELDestroy', Cue = 'UEL_Destroy_Med_Land', LodCutoff = 'UnitMove_LodCutoff' }, + EnhanceEnd = Sound { Bank = 'UnitsGlobal', Cue = 'GLB_Enhance_Stop', LodCutoff = 'UnitMove_LodCutoff' }, + EnhanceFail = Sound { Bank = 'UnitsGlobal', Cue = 'GLB_Enhance_Fail', LodCutoff = 'UnitMove_LodCutoff' }, + EnhanceLoop = Sound { Bank = 'UnitsGlobal', Cue = 'GLB_Enhance_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + EnhanceStart = Sound { Bank = 'UnitsGlobal', Cue = 'GLB_Enhance_Start', LodCutoff = 'UnitMove_LodCutoff' }, + FootFallGeneric = Sound { Bank = 'UEL', Cue = 'UEL0301_Move_Step', LodCutoff = 'UnitMove_LodCutoff' }, + FootFallGenericSeabed = Sound { Bank = 'UEL', Cue = 'UEL0001_Move_UW_Step', LodCutoff = 'UnitMove_LodCutoff' }, + Killed = Sound { Bank = 'Explosions', Cue = 'UEF_Nuke_Impact', LodCutoff = 'UnitMove_LodCutoff' }, + ReclaimLoop = Sound { Bank = 'UEL', Cue = 'UEL0301_Reclaim_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + StartCapture = Sound { Bank = 'UEL', Cue = 'UEL0301_Capture_Start', LodCutoff = 'UnitMove_LodCutoff' }, + StartMove = Sound { Bank = 'UEL', Cue = 'UEL0301_Move_Start', LodCutoff = 'UnitMove_LodCutoff' }, + StartReclaim = Sound { Bank = 'UEL', Cue = 'UEL0301_Reclaim_Start', LodCutoff = 'UnitMove_LodCutoff' }, + StopMove = Sound { Bank = 'UEL', Cue = 'UEL0301_Move_Stop', LodCutoff = 'UnitMove_LodCutoff' }, + UISelection = Sound { Bank = 'Interface', Cue = 'UEF_Select_Commander', LodCutoff = 'UnitMove_LodCutoff' }, + }, + BuildIconSortPriority = 10, + Categories = { + "AMPHIBIOUS", + "BUBBLESHIELDSPILLOVERCHECK", + "BUILTBYQUANTUMGATE", + "CAPTURE", + "CONSTRUCTION", + "ENERGYPRODUCTION", + "ENGINEER", + "LAND", + "MASSFABRICATION", + "MASSPRODUCTION", + "MOBILE", + "OVERLAYCOUNTERINTEL", + "OVERLAYDIRECTFIRE", + "OVERLAYOMNI", + "PATROLHELPER", + "PODSTAGINGPLATFORM", + "PRODUCTSC1", + "RECLAIM", + "REPAIR", + "SELECTABLE", + "SHOWQUEUE", + "SUBCOMMANDER", + "TECH3", + "UEF", + "USEBUILDPRESETS", + "VISIBLETORECON", + }, Defense = { Health = 14000, MaxHealth = 14000, RegenRate = 12, + SubThreatLevel = 0, + SurfaceThreatLevel = 30, + }, + Display = { + Abilities = { + "Amphibious", + "Customizable", + "Engineering Suite", + "Not Capturable", + "Omni Sensor", + "Volatile", + }, + AnimationWalk = "/units/uel0301/uel0301_awalk01.sca", + AnimationWalkRate = 3.2, + IdleEffects = { + Seabed = { + Effects = { + { + Bones = { + "Arm_Left_B01", + "Arm_Right_B01", + "Arm_Left_Barrel02", + "Arm_Right_Build", + }, + Type = "UnderWater01", + }, + }, + }, + }, + Mesh = { + IconFadeInZoom = 130, + LODs = { + { + LODCutoff = 100, + ShaderName = "Unit", + }, + { + LODCutoff = 215, + ShaderName = "Unit", + AlbedoName = "uel0301_lod1_albedo.dds", + SpecularName = "uel0301_lod1_specteam.dds", + }, + }, + }, + MovementEffects = { + Land = { + Effects = { + { + Bones = { + "Leg_Right_B03", + "Leg_Left_B03", + }, + Type = "GroundKickup01", + }, + }, + Footfall = { + Bones = { + { + FootBone = "Leg_Left_B03", + Tread = { + TreadMarks = "CommanderPrint_albedo", + TreadMarksSizeX = 0.55, + TreadMarksSizeZ = 0.55, + TreadOffset = { -0.15, 0, 0.25 }, + }, + }, + { + FootBone = "Leg_Right_B03", + Tread = { + TreadMarks = "CommanderPrint_albedo", + TreadMarksSizeX = 0.55, + TreadMarksSizeZ = 0.55, + TreadOffset = { 0.15, 0, 0.25 }, + }, + }, + }, + }, + }, + Seabed = { + Effects = { + { + Bones = { + "Torso", + "Arm_Left_B01", + "Arm_Right_B01", + "Arm_Left_Barrel02", + "Arm_Right_Build", + "Leg_Left_B03", + "Leg_Right_B03", + }, + Type = "UnderWater01", + }, + }, + }, + }, + TransportAnimation = { + { + Animation = "/units/UEL0301/UEL0301_afold.sca", + Weight = 100, + }, + }, + UniformScale = 0.17, + WarpInEffect = { + HideBones = { + "Jetpack", + "SAM", + }, + PhaseShieldMesh = "/units/uel0301/UEL0301_PersonalShield_mesh", + }, }, Economy = { + AirThreatLevel = 0, + ArmorType = "Normal", + EconomyThreatLevel = 1028, BuildCostEnergy = 26400, BuildCostMass = 2200, BuildRate = 45, BuildTime = 15400, + BuildableCategory = { "BUILTBYTIER3ENGINEER UEF" }, + MaintenanceConsumptionPerSecondEnergy = 0, + MaxBuildDistance = 10, + NaturalProducer = true, + ProductionPerSecondEnergy = 20, + ProductionPerSecondMass = 1, StorageEnergy = 750, StorageMass = 450, }, @@ -72,42 +246,6 @@ UnitBlueprint { SortCategory = "SORTOTHER", UnitName = "SACU (Advanced Combat preset)", }, - - -- Removed - --BubbleShield = { - -- Description = "SACU (Shield preset)", - -- BuildIconSortPriority = 30, - -- Enhancements = { - -- "Shield", - -- "ShieldGeneratorField", - -- }, - -- HelpText = "Support Armored Command Unit. Enhanced during construction with the bubble shield generator enhancement.", - -- SortCategory = "SORTOTHER", - -- UnitName = "SACU (Shield preset)", - --}, - --IntelJammer = { - -- Description = "SACU (Intel Jammer preset)", - -- BuildIconSortPriority = 35, - -- Enhancements = { - -- "RadarJammer", - -- "SensorRangeEnhancer", - -- }, - -- HelpText = "Support Armored Command Unit. Enhanced during construction with the radar jammer and enhanced sensor system enhancements.", - -- SortCategory = "SORTOTHER", - -- UnitName = "SACU (Intel Jammer preset)", - --}, - --Rambo = { - -- Description = "SACU (Rambo preset)", - -- BuildIconSortPriority = 25, - -- Enhancements = { - -- "AdvancedCoolingUpgrade", - -- "HighExplosiveOrdnance", - -- "Shield", - -- }, - -- HelpText = "Support Armored Command Unit. Enhanced during construction with a personal shield, energy accelerator and heavy plasma refractor enhancements.", - -- SortCategory = "SORTOTHER", - -- UnitName = "SACU (Rambo preset)", - --}, }, Enhancements = { -- Left @@ -377,15 +515,205 @@ UnitBlueprint { -- Slot = "Back", --}, }, + General = { + BuildBones = { + AimBone = "Arm_Right_Build", + BuildEffectBones = { "Arm_Right_Build" }, + PitchBone = "Arm_Right_B03", + YawBone = "Torso", + }, + CommandCaps = { + RULEUCC_Attack = true, + RULEUCC_CallTransport = true, + RULEUCC_Capture = true, + RULEUCC_Guard = true, + RULEUCC_Move = true, + RULEUCC_Nuke = false, + RULEUCC_Patrol = true, + RULEUCC_Pause = true, + RULEUCC_Reclaim = true, + RULEUCC_Repair = true, + RULEUCC_RetaliateToggle = true, + RULEUCC_Stop = true, + RULEUCC_Transport = false, + }, + ConstructionBar = true, + FactionName = "UEF", + Icon = "amph", + SelectionPriority = 3, + }, Intel = { + ActiveIntel = { Omni = true }, + FreeIntel = false, + JamRadius = { + Max = 28, + Min = 26, + }, JammerBlips = 15, + OmniRadius = 16, + VisionRadius = 26, + WaterVisionRadius = 26, + }, + LifeBarHeight = 0.075, + LifeBarOffset = 0.5, + LifeBarSize = 0.9, + Physics = { + BankingSlope = 0, + BuildOnLayerCaps = { + LAYER_Air = false, + LAYER_Land = true, + LAYER_Orbit = false, + LAYER_Seabed = false, + LAYER_Sub = false, + LAYER_Water = false, + }, + DragCoefficient = 0.2, + LayerChangeOffsetHeight = -0.85, + MaxAcceleration = 2.2, + MaxBrake = 2.2, + MaxSpeed = 2.2, + MaxSpeedReverse = 0, + MaxSteerForce = 12, + MeshExtentsX = 0.85, + MeshExtentsY = 2, + MeshExtentsZ = 2.4, + MinSpeedPercent = 0, + MotionType = "RULEUMT_Amphibious", + StandUpright = true, + TurnRadius = 10, + TurnRate = 150, + }, + SelectionCenterOffsetX = 0, + SelectionCenterOffsetZ = -0.1, + SelectionSizeX = 0.55, + SelectionSizeZ = 0.5, + SelectionThickness = 0.7, + SelectionYOffset = 0, + CollisionOffsetX = -0.035, + SizeX = 1.1, + SizeY = 2, + SizeZ = 1.1, + StrategicIconName = "icon_subcommander", + StrategicIconSortPriority = 1, + Transport = { + CanFireFromTransport = false, + ClassSAttachSize = 0, + TransportClass = 3, + }, + Veteran = { + Level1 = 25, + Level2 = 50, + Level3 = 75, + Level4 = 100, + Level5 = 125, }, Weapon = { { + AboveWaterFireOnly = true, + AboveWaterTargetsOnly = true, + Audio = { + Fire = Sound { Bank = 'UELWeapon', Cue = 'UEL0301_BG_Gun', LodCutoff = 'Weapon_LodCutoff' }, + }, + BallisticArc = "RULEUBA_LowArc", + CollideFriendly = false, Damage = 150, + DamageRadius = 0, + DamageType = "Normal", + DisplayName = "Heavy Plasma Cannon", + FireTargetLayerCapsTable = { + Land = "Land|Water|Seabed", + Water = "Land|Water|Seabed", + }, + FiringTolerance = 2, + Label = "RightHeavyPlasmaCannon", + MaxRadius = 25, + MinRadius = 1, + MuzzleSalvoDelay = 0, + MuzzleSalvoSize = 1, + MuzzleVelocity = 25, + ProjectileId = "/projectiles/TDFPlasmaHeavy03/TDFPlasmaHeavy03_proj.bp", + ProjectileLifetimeUsesMultiplier = 1.15, + ProjectilesPerOnFire = 1, + RackBones = { + { + MuzzleBones = { "Arm_Left_Muzzle" }, + RackBone = "Arm_Left_Barrel02", + }, + }, + RackFireTogether = true, + RackRecoilDistance = -0.7, + RackReloadTimeout = 0, + RackSalvoChargeTime = 0, + RackSalvoReloadTime = 0, + RackSalvoSize = 1, + RackSlavedToTurret = false, + RangeCategory = "UWRC_DirectFire", + RateOfFire = 1, + TargetPriorities = { + "MOBILE EXPERIMENTAL", + "MOBILE TECH3", + "MOBILE TECH2", + "(STRUCTURE * DEFENSE - ANTIMISSILE)", + "MOBILE TECH1", + "ALLUNITS", + }, + TargetRestrictDisallow = "UNTARGETABLE", + TurretBoneMuzzle = "Arm_Left_Muzzle", + TurretBonePitch = "Arm_Left_Barrel01", + TurretBoneYaw = "Torso", + TurretDualManipulators = false, + TurretPitch = 0, + TurretPitchRange = 90, + TurretPitchSpeed = 90, + TurretYaw = 0, + TurretYawRange = 180, + TurretYawSpeed = 180, + Turreted = true, + UseFiringSolutionInsteadOfAimBone = true, + WeaponCategory = "Direct Fire", + WeaponRepackTimeout = 0, + WeaponUnpacks = false, }, { + CollideFriendly = false, Damage = 1250, + DamageFriendly = true, + DamageRadius = 10, + DamageType = "DeathExplosion", + DisplayName = "Death Nuke", + FireOnDeath = true, + FiringTolerance = 2, + Label = "DeathWeapon", + MaxRadius = 1, + MuzzleSalvoDelay = 0, + MuzzleSalvoSize = 1, + MuzzleVelocity = 0, + ProjectileId = "/effects/Entities/SCUDeath01/SCUDeath01_proj.bp", + RackBones = { + { + MuzzleBones = { 0 }, + RackBone = 0, + }, + }, + RackRecoilDistance = 0, + RateOfFire = 1, + TargetRestrictDisallow = "UNTARGETABLE", + Turreted = false, + WeaponCategory = "Death", + }, + }, + Wreckage = { + Blueprint = "/props/DefaultWreckage/DefaultWreckage_prop.bp", + EnergyMult = 0, + HealthMult = 0.9, + MassMult = 0.9, + ReclaimTimeMultiplier = 1, + WreckageLayers = { + Air = false, + Land = true, + Seabed = false, + Sub = false, + Water = false, }, }, } \ No newline at end of file diff --git a/units/URL0301/URL0301_Albedo.dds b/units/URL0301/URL0301_Albedo.dds new file mode 100644 index 0000000..317fb5f Binary files /dev/null and b/units/URL0301/URL0301_Albedo.dds differ diff --git a/units/URL0301/URL0301_Awalk01.sca b/units/URL0301/URL0301_Awalk01.sca new file mode 100644 index 0000000..9cd7e64 Binary files /dev/null and b/units/URL0301/URL0301_Awalk01.sca differ diff --git a/units/URL0301/URL0301_PhaseShield_mesh.lua b/units/URL0301/URL0301_PhaseShield_mesh.lua new file mode 100644 index 0000000..4c59712 --- /dev/null +++ b/units/URL0301/URL0301_PhaseShield_mesh.lua @@ -0,0 +1,14 @@ +MeshBlueprint { + IconFadeInZoom = 130, + LODs = { + { + MeshName = 'url0301_lod0.scm', + AlbedoName = 'url0301_albedo.dds', + NormalsName = 'url0301_normalsTS.dds', + SpecularName = 'url0301_specteam.dds', + LookupName = '/effects/entities/PhaseShield/PhaseShieldLookup.dds', + ShaderName = 'PhaseShield', + LODCutoff = 195, + }, + }, +} \ No newline at end of file diff --git a/units/URL0301/URL0301_SpecTeam.dds b/units/URL0301/URL0301_SpecTeam.dds new file mode 100644 index 0000000..289500a Binary files /dev/null and b/units/URL0301/URL0301_SpecTeam.dds differ diff --git a/units/URL0301/URL0301_afold01.sca b/units/URL0301/URL0301_afold01.sca new file mode 100644 index 0000000..2ef9c74 Binary files /dev/null and b/units/URL0301/URL0301_afold01.sca differ diff --git a/units/URL0301/URL0301_lod0.scm b/units/URL0301/URL0301_lod0.scm new file mode 100644 index 0000000..9c3491c Binary files /dev/null and b/units/URL0301/URL0301_lod0.scm differ diff --git a/units/URL0301/URL0301_lod1.scm b/units/URL0301/URL0301_lod1.scm new file mode 100644 index 0000000..de3a17e Binary files /dev/null and b/units/URL0301/URL0301_lod1.scm differ diff --git a/units/URL0301/URL0301_lod1_Albedo.dds b/units/URL0301/URL0301_lod1_Albedo.dds new file mode 100644 index 0000000..37cc0e7 Binary files /dev/null and b/units/URL0301/URL0301_lod1_Albedo.dds differ diff --git a/units/URL0301/URL0301_lod1_SpecTeam.dds b/units/URL0301/URL0301_lod1_SpecTeam.dds new file mode 100644 index 0000000..ebc5338 Binary files /dev/null and b/units/URL0301/URL0301_lod1_SpecTeam.dds differ diff --git a/units/URL0301/URL0301_lod1_normalsTS.dds b/units/URL0301/URL0301_lod1_normalsTS.dds new file mode 100644 index 0000000..1094983 Binary files /dev/null and b/units/URL0301/URL0301_lod1_normalsTS.dds differ diff --git a/units/URL0301/URL0301_normalsTS.dds b/units/URL0301/URL0301_normalsTS.dds new file mode 100644 index 0000000..846bc78 Binary files /dev/null and b/units/URL0301/URL0301_normalsTS.dds differ diff --git a/units/URL0301/URL0301_unit.bp b/units/URL0301/URL0301_unit.bp index da1f07f..3291370 100644 --- a/units/URL0301/URL0301_unit.bp +++ b/units/URL0301/URL0301_unit.bp @@ -1,15 +1,190 @@ UnitBlueprint { - Merge = true, + Description = "Support Armored Command Unit", + AI = { + GuardScanRadius = 26, + TargetBones = { + "Torso", + "Head", + }, + }, + Audio = { + CaptureLoop = Sound { Bank = 'URL', Cue = 'URL0301_Capture_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + CommanderArrival = Sound { Bank = 'URL', Cue = 'URL0001_Gate_In', LodCutoff = 'UnitMove_LodCutoff' }, + Construct = Sound { Bank = 'URL', Cue = 'URL0301_Construct_Start', LodCutoff = 'UnitMove_LodCutoff' }, + ConstructLoop = Sound { Bank = 'URL', Cue = 'URL0301_Construct_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + Destroyed = Sound { Bank = 'URLDestroy', Cue = 'URL_Destroy_Land', LodCutoff = 'UnitMove_LodCutoff' }, + EnhanceEnd = Sound { Bank = 'UnitsGlobal', Cue = 'GLB_Enhance_Stop', LodCutoff = 'UnitMove_LodCutoff' }, + EnhanceFail = Sound { Bank = 'UnitsGlobal', Cue = 'GLB_Enhance_Fail', LodCutoff = 'UnitMove_LodCutoff' }, + EnhanceLoop = Sound { Bank = 'UnitsGlobal', Cue = 'GLB_Enhance_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + EnhanceStart = Sound { Bank = 'UnitsGlobal', Cue = 'GLB_Enhance_Start', LodCutoff = 'UnitMove_LodCutoff' }, + FootFallGeneric = Sound { Bank = 'URL', Cue = 'URL0301_Move_Step', LodCutoff = 'UnitMove_LodCutoff' }, + FootFallGenericSeabed = Sound { Bank = 'URL', Cue = 'URL0001_Move_UW_Step', LodCutoff = 'UnitMove_LodCutoff' }, + Killed = Sound { Bank = 'Explosions', Cue = 'Cybran_Nuke_Impact', LodCutoff = 'UnitMove_LodCutoff' }, + ReclaimLoop = Sound { Bank = 'URL', Cue = 'URL0301_Reclaim_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + StartCapture = Sound { Bank = 'URL', Cue = 'URL0301_Capture_Start', LodCutoff = 'UnitMove_LodCutoff' }, + StartMove = Sound { Bank = 'URL', Cue = 'URL0301_Move_Start', LodCutoff = 'UnitMove_LodCutoff' }, + StartReclaim = Sound { Bank = 'URL', Cue = 'URL0301_Reclaim_Start', LodCutoff = 'UnitMove_LodCutoff' }, + StopMove = Sound { Bank = 'URL', Cue = 'URL0301_Move_Stop', LodCutoff = 'UnitMove_LodCutoff' }, + UISelection = Sound { Bank = 'Interface', Cue = 'Cybran_Select_Commander', LodCutoff = 'UnitMove_LodCutoff' }, + }, + BuildBotTotal = 3, + BuildIconSortPriority = 10, + Categories = { + "AMPHIBIOUS", + "BUILTBYQUANTUMGATE", + "CAPTURE", + "CONSTRUCTION", + "CYBRAN", + "ENERGYPRODUCTION", + "ENGINEER", + "LAND", + "MASSFABRICATION", + "MASSPRODUCTION", + "MOBILE", + "OVERLAYDIRECTFIRE", + "OVERLAYOMNI", + "PATROLHELPER", + "PRODUCTSC1", + "RECLAIM", + "REPAIR", + "SELECTABLE", + "SHOWQUEUE", + "SUBCOMMANDER", + "TECH3", + "USEBUILDPRESETS", + "VISIBLETORECON", + }, Defense = { + AirThreatLevel = 0, + ArmorType = "Normal", + EconomyThreatLevel = 1208, Health = 15000, MaxHealth = 15000, RegenRate = 14, + SubThreatLevel = 0, + SurfaceThreatLevel = 30, + }, + Display = { + Abilities = { + "Amphibious", + "Customizable", + "Engineering Suite", + "Not Capturable", + "Omni Sensor", + "Volatile", + }, + AnimationWalk = "/units/url0301/url0301_Awalk01.sca", + AnimationWalkRate = 3.2, + IdleEffects = { + Seabed = { + Effects = { + { + Bones = { + "Left_Shoulder", + "Right_Shoulder", + "Build", + "Laser", + }, + Type = "UnderWater01", + }, + }, + }, + }, + Mesh = { + IconFadeInZoom = 130, + LODs = { + { + LODCutoff = 100, + ShaderName = "Insect", + }, + { + LODCutoff = 215, + ShaderName = "Insect", + AlbedoName = "url0301_lod1_albedo.dds", + SpecularName = "url0301_lod1_specteam.dds", + }, + }, + }, + MovementEffects = { + Land = { + Effects = { + { + Bones = { + "Right_Foot01", + "Left_Foot01", + }, + Type = "GroundKickup01", + }, + }, + Footfall = { + Bones = { + { + FootBone = "Left_Foot02", + Tread = { + TreadMarks = "CommanderPrint_albedo", + TreadMarksSizeX = 0.45, + TreadMarksSizeZ = 0.45, + TreadOffset = { 0.1, 0, 0.25 }, + }, + }, + { + FootBone = "Right_Foot02", + Tread = { + TreadMarks = "CommanderPrint_albedo", + TreadMarksSizeX = 0.45, + TreadMarksSizeZ = 0.45, + TreadOffset = { -0.12, 0, 0.25 }, + }, + }, + }, + }, + }, + Seabed = { + Effects = { + { + Bones = { + "URL0301", + "Left_Shoulder", + "Right_Shoulder", + "Build", + "Laser", + "Left_Foot01", + "Right_Foot01", + }, + Type = "UnderWater01", + }, + }, + }, + }, + TransportAnimation = { + { + Animation = "/units/URL0301/URL0301_afold01.sca", + Weight = 100, + }, + }, + UniformScale = 0.13, + WarpInEffect = { + HideBones = { + "AA_Gun", + "Power_Pack", + "Rez_Protocol", + "Torpedo", + "Turbine", + }, + PhaseShieldMesh = "/units/url0301/URL0301_PhaseShield_mesh", + }, }, Economy = { BuildCostEnergy = 24000, BuildCostMass = 2000, BuildRate = 45, BuildTime = 14000, + BuildableCategory = { "BUILTBYTIER3ENGINEER CYBRAN" }, + MaintenanceConsumptionPerSecondEnergy = 0, + MaxBuildDistance = 10, + NaturalProducer = true, + ProductionPerSecondEnergy = 20, + ProductionPerSecondMass = 1, StorageEnergy = 750, StorageMass = 450, }, @@ -92,49 +267,6 @@ UnitBlueprint { SortCategory = "SORTOTHER", UnitName = "SACU (Experimental Combat preset)", }, - - -- Not Used - --AntiAir = { - -- Description = "SACU (Anti-Air preset)", - -- BuildIconSortPriority = 45, - -- Enhancements = { "NaniteMissileSystem" }, - -- HelpText = "Support Armored Command Unit. Enhanced during construction with the nanite missile system enhancement.", - -- SortCategory = "SORTOTHER", - -- UnitName = "SACU (Anti-Air preset)", - --}, - --Cloak = { - -- Description = "SACU (Cloak preset)", - -- BuildIconSortPriority = 35, - -- Enhancements = { - -- "FocusConvertor", - -- "StealthGenerator", - -- "CloakingGenerator", - -- }, - -- HelpText = "Support Armored Command Unit. Enhanced during construction with the personal cloaking generator and disintegrator amplifier enhancements.", - -- SortCategory = "SORTOTHER", - -- UnitName = "SACU (Cloak preset)", - --}, - --Rambo = { - -- Description = "Support Armored Command Unit (Rambo preset)", - -- BuildIconSortPriority = 25, - -- Enhancements = { - -- "EMPCharge", - -- "FocusConvertor", - -- "SelfRepairSystem", - -- }, - -- HelpText = "Support Armored Command Unit. Enhanced during construction with the EMP burst, disintegrator amplifier and nano-repair system enhancements.", - -- SortCategory = "SORTOTHER", - -- UnitName = "SACU (Rambo preset)", - --}, - --Stealth = { - -- Description = "SACU (Stealth preset)", - -- BuildIconSortPriority = 30, - -- Enhancements = { "StealthGenerator" }, - -- HelpText = "Support Armored Command Unit. Enhanced during construction with the personal stealth generator enhancement.", - -- SortCategory = "SORTOTHER", - -- UnitName = "SACU (Stealth preset)", - --}, - }, Enhancements = { -- Left @@ -351,12 +483,306 @@ UnitBlueprint { }, }, }, + General = { + BuildBones = { + AimBone = 0, + BuildEffectBones = { "Build" }, + PitchBone = "Engineering_Arm", + YawBone = "Torso", + }, + CommandCaps = { + RULEUCC_Attack = true, + RULEUCC_CallTransport = true, + RULEUCC_Capture = true, + RULEUCC_Guard = true, + RULEUCC_Move = true, + RULEUCC_Nuke = false, + RULEUCC_Patrol = true, + RULEUCC_Pause = true, + RULEUCC_Reclaim = true, + RULEUCC_Repair = true, + RULEUCC_RetaliateToggle = true, + RULEUCC_Sacrifice = false, + RULEUCC_Stop = true, + RULEUCC_Transport = false, + }, + ConstructionBar = true, + FactionName = "Cybran", + Icon = "amph", + SelectionPriority = 3, + }, + Intel = { + ActiveIntel = { Omni = true }, + Cloak = true, + FreeIntel = false, + OmniRadius = 16, + RadarStealth = true, + ReactivateTime = 2, + SonarStealth = true, + VisionRadius = 26, + WaterVisionRadius = 26, + }, + LifeBarHeight = 0.075, + LifeBarOffset = 0.4, + LifeBarSize = 0.9, + Physics = { + BankingSlope = 0, + BuildOnLayerCaps = { + LAYER_Air = false, + LAYER_Land = true, + LAYER_Orbit = false, + LAYER_Seabed = false, + LAYER_Sub = false, + LAYER_Water = false, + }, + DragCoefficient = 0.2, + LayerChangeOffsetHeight = -0.9, + MaxAcceleration = 2.2, + MaxBrake = 2.2, + MaxSpeed = 2.2, + MaxSpeedReverse = 0, + MaxSteerForce = 12, + MinSpeedPercent = 0, + MotionType = "RULEUMT_Amphibious", + StandUpright = true, + TurnRadius = 10, + TurnRate = 150, + }, + SelectionCenterOffsetX = 0, + SelectionCenterOffsetZ = -0.1, + SelectionSizeX = 0.55, + SelectionSizeZ = 0.5, + SelectionThickness = 0.7, + SelectionYOffset = 0, + SizeX = 1.1, + SizeY = 1.9, + SizeZ = 1.1, + StrategicIconName = "icon_subcommander", + StrategicIconSortPriority = 1, + Transport = { + CanFireFromTransport = false, + TransportClass = 3, + }, + Veteran = { + Level1 = 25, + Level2 = 50, + Level3 = 75, + Level4 = 100, + Level5 = 125, + }, Weapon = { + -- Main Gun { + AboveWaterFireOnly = true, + AboveWaterTargetsOnly = true, + Audio = { + Fire = Sound { Bank = 'URLWeapon', Cue = 'URL0301_BG_Gun', LodCutoff = 'Weapon_LodCutoff' }, + }, + BallisticArc = "RULEUBA_LowArc", + Buffs = { + { + Add = { OnImpact = true }, + AppliedToTarget = true, + BuffType = "STUN", + Duration = 4, + Radius = 3, + TargetAllow = "TECH1", + TargetDisallow = "TECH2,TECH3,EXPERIMENTAL,COMMAND,SUBCOMMANDER,SHIELD,WALL", + }, + { + Add = { OnImpact = true }, + AppliedToTarget = true, + BuffType = "STUN", + Duration = 3.5, + Radius = 3, + TargetAllow = "TECH2,SHIELD", + TargetDisallow = "TECH1,TECH3,EXPERIMENTAL,COMMAND,SUBCOMMANDER,WALL", + }, + { + Add = { OnImpact = true }, + AppliedToTarget = true, + BuffType = "STUN", + Duration = 3, + Radius = 3, + TargetAllow = "TECH3", + TargetDisallow = "TECH1,TECH2,EXPERIMENTAL,COMMAND,SUBCOMMANDER,SHIELD,WALL", + }, + { + Add = { OnImpact = true }, + AppliedToTarget = true, + BuffType = "STUN", + Duration = 0.3, + Radius = 3, + TargetAllow = "SUBCOMMANDER", + TargetDisallow = "TECH1,TECH2,SHIELD,WALL", + }, + }, + CollideFriendly = false, Damage = 150, + DamageType = "Normal", + DisplayName = "Disintegrator Pulse Laser", + FireTargetLayerCapsTable = { + Land = "Land|Water|Seabed", + Water = "Land|Water|Seabed", + }, + FiringTolerance = 2, + Label = "RightDisintegrator", + MaxRadius = 25, + MinRadius = 1, + MuzzleSalvoDelay = 0, + MuzzleSalvoSize = 1, + MuzzleVelocity = 18, + ProjectileId = "/projectiles/CDFLaserDisintegrator03/CDFLaserDisintegrator03_proj.bp", + ProjectileLifetimeUsesMultiplier = 2.4, + ProjectilesPerOnFire = 1, + RackBones = { + { + MuzzleBones = { "Laser" }, + RackBone = "Pulse_Laser", + }, + }, + RackFireTogether = false, + RackRecoilDistance = -0.1, + RackReloadTimeout = 10, + RackSalvoChargeTime = 0, + RackSalvoReloadTime = 0, + RackSalvoSize = 1, + RackSlavedToTurret = false, + RangeCategory = "UWRC_DirectFire", + RateOfFire = 1, + TargetPriorities = { + "MOBILE EXPERIMENTAL", + "MOBILE TECH3", + "MOBILE TECH2", + "(STRUCTURE * DEFENSE - ANTIMISSILE)", + "MOBILE TECH1", + "ALLUNITS", + }, + TargetRestrictDisallow = "UNTARGETABLE", + TurretBoneMuzzle = "Laser", + TurretBonePitch = "Pulse_Laser", + TurretBoneYaw = "Torso", + TurretDualManipulators = false, + TurretPitch = 0, + TurretPitchRange = 90, + TurretPitchSpeed = 90, + TurretYaw = 0, + TurretYawRange = 180, + TurretYawSpeed = 180, + Turreted = true, + UseFiringSolutionInsteadOfAimBone = true, + WeaponCategory = "Direct Fire", + }, + -- AA Turret + { + AboveWaterFireOnly = true, + Audio = { + Fire = Sound { Bank = 'URLWeapon', Cue = 'URL0301_Missile_Nanite_BC', LodCutoff = 'Weapon_LodCutoff' }, + }, + BallisticArc = "RULEUBA_None", + CannotAttackGround = true, + CollideFriendly = false, + Damage = 400, + DamageRadius = 1.5, + DamageType = "Normal", + DisplayName = "Nanite Missile System", + EffectiveRadius = 0, + EnabledByEnhancement = "NaniteMissileSystem", + EnergyDrainPerSecond = 0, + EnergyRequired = 0, + FireTargetLayerCapsTable = { + Land = "Air", + Seabed = "Air", + Water = "Air", + }, + FiringTolerance = 50, + Label = "NMissile", + MaxRadius = 60, + MuzzleSalvoDelay = 0.4, + MuzzleSalvoSize = 3, + MuzzleVelocity = 30, + ProjectileId = "/projectiles/CAAMissileNanite02/CAAMissileNanite02_proj.bp", + ProjectileLifetime = 5, + ProjectilesPerOnFire = 3, + RackBones = { + { + MuzzleBones = { "Muzzle02" }, + RackBone = "Barrel01", + }, + }, + RackFireTogether = false, + RackRecoilDistance = 0, + RackReloadTimeout = 0, + RackSalvoChargeTime = 0, + RackSalvoReloadTime = 0, + RackSalvoSize = 1, + RackSlavedToTurret = false, + RangeCategory = "UWRC_AntiAir", + RateOfFire = 0.3, + TargetPriorities = { + "AIR MOBILE TECH3 BOMBER", + "AIR MOBILE BOMBER", + "AIR MOBILE GROUNDATTACK", + "AIR MOBILE TRANSPORTATION", + "AIR MOBILE", + "ALLUNITS", + }, + TargetRestrictDisallow = "UNTARGETABLE", + TurretBoneMuzzle = "Muzzle01", + TurretBonePitch = "Barrel01", + TurretBoneYaw = "Barrel01", + TurretDualManipulators = false, + TurretPitch = 25, + TurretPitchRange = 60, + TurretPitchSpeed = 180, + TurretYaw = 0, + TurretYawRange = 180, + TurretYawSpeed = 180, + Turreted = true, + WeaponCategory = "Anti Air", }, + -- Death { + AboveWaterTargetsOnly = true, + CollideFriendly = false, Damage = 1250, + DamageFriendly = true, + DamageRadius = 10, + DamageType = "DeathExplosion", + DisplayName = "Death Nuke", + FireOnDeath = true, + FiringTolerance = 2, + Label = "DeathWeapon", + MaxRadius = 1, + MuzzleSalvoDelay = 0, + MuzzleSalvoSize = 1, + MuzzleVelocity = 0, + ProjectileId = "/effects/Entities/SCUDeath01/SCUDeath01_proj.bp", + RackBones = { + { + MuzzleBones = { 0 }, + RackBone = 0, + }, + }, + RackRecoilDistance = 0, + RateOfFire = 1, + TargetRestrictDisallow = "UNTARGETABLE", + Turreted = false, + WeaponCategory = "Death", + }, + }, + Wreckage = { + Blueprint = "/props/DefaultWreckage/DefaultWreckage_prop.bp", + EnergyMult = 0, + HealthMult = 0.9, + MassMult = 0.9, + ReclaimTimeMultiplier = 1, + WreckageLayers = { + Air = false, + Land = true, + Seabed = false, + Sub = false, + Water = false, }, }, } \ No newline at end of file diff --git a/units/XSL0301/XSL0301_AWalk01.sca b/units/XSL0301/XSL0301_AWalk01.sca new file mode 100644 index 0000000..b132afb Binary files /dev/null and b/units/XSL0301/XSL0301_AWalk01.sca differ diff --git a/units/XSL0301/XSL0301_Albedo.dds b/units/XSL0301/XSL0301_Albedo.dds new file mode 100644 index 0000000..8d6479f Binary files /dev/null and b/units/XSL0301/XSL0301_Albedo.dds differ diff --git a/units/XSL0301/XSL0301_SpecTeam.dds b/units/XSL0301/XSL0301_SpecTeam.dds new file mode 100644 index 0000000..d059db3 Binary files /dev/null and b/units/XSL0301/XSL0301_SpecTeam.dds differ diff --git a/units/XSL0301/XSL0301_afold.sca b/units/XSL0301/XSL0301_afold.sca new file mode 100644 index 0000000..8219d5f Binary files /dev/null and b/units/XSL0301/XSL0301_afold.sca differ diff --git a/units/XSL0301/XSL0301_aunfold.sca b/units/XSL0301/XSL0301_aunfold.sca new file mode 100644 index 0000000..62ea0a1 Binary files /dev/null and b/units/XSL0301/XSL0301_aunfold.sca differ diff --git a/units/XSL0301/XSL0301_lod0.scm b/units/XSL0301/XSL0301_lod0.scm new file mode 100644 index 0000000..c379070 Binary files /dev/null and b/units/XSL0301/XSL0301_lod0.scm differ diff --git a/units/XSL0301/XSL0301_lod1.scm b/units/XSL0301/XSL0301_lod1.scm new file mode 100644 index 0000000..57ab5db Binary files /dev/null and b/units/XSL0301/XSL0301_lod1.scm differ diff --git a/units/XSL0301/XSL0301_lod1_Albedo.dds b/units/XSL0301/XSL0301_lod1_Albedo.dds new file mode 100644 index 0000000..34220e4 Binary files /dev/null and b/units/XSL0301/XSL0301_lod1_Albedo.dds differ diff --git a/units/XSL0301/XSL0301_lod1_SpecTeam.dds b/units/XSL0301/XSL0301_lod1_SpecTeam.dds new file mode 100644 index 0000000..8a0a975 Binary files /dev/null and b/units/XSL0301/XSL0301_lod1_SpecTeam.dds differ diff --git a/units/XSL0301/XSL0301_lod1_normalsTS.dds b/units/XSL0301/XSL0301_lod1_normalsTS.dds new file mode 100644 index 0000000..b412e22 Binary files /dev/null and b/units/XSL0301/XSL0301_lod1_normalsTS.dds differ diff --git a/units/XSL0301/XSL0301_normalsTS.dds b/units/XSL0301/XSL0301_normalsTS.dds new file mode 100644 index 0000000..bb6a0c7 Binary files /dev/null and b/units/XSL0301/XSL0301_normalsTS.dds differ diff --git a/units/XSL0301/XSL0301_personalshield_mesh.bp b/units/XSL0301/XSL0301_personalshield_mesh.bp new file mode 100644 index 0000000..7874b71 --- /dev/null +++ b/units/XSL0301/XSL0301_personalshield_mesh.bp @@ -0,0 +1,18 @@ +MeshBlueprint { + IconFadeInZoom = 130, + LODs = { + { + MeshName = 'xsl0301_lod0.scm', + AlbedoName = 'xsl0301_albedo.dds', + NormalsName = 'xsl0301_normalsTS.dds', + SpecularName = 'xsl0301_specteam.dds', + LookupName = '/textures/environment/Falloff_seraphim_lookup.dds', + SecondaryName = '/effects/entities/PhaseShield/PhaseShieldLookup.dds', + + LODCutoff = 195, + + Scrolling = true, + ShaderName = 'SeraphimPersonalShield', + }, + }, +} diff --git a/units/XSL0301/XSL0301_unit.bp b/units/XSL0301/XSL0301_unit.bp index e80e62b..8a1a774 100644 --- a/units/XSL0301/XSL0301_unit.bp +++ b/units/XSL0301/XSL0301_unit.bp @@ -1,17 +1,215 @@ -UnitBlueprint { - Merge = true, +UnitBlueprint{ + Description = "Support Armored Command Unit", + AI = { + GuardScanRadius = 26, + InitialAutoMode = true, + }, + Audio = { + CaptureLoop = Sound { Bank = 'XSL', Cue = 'XSL0001_Capture_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + CommanderArrival = Sound { Bank = 'UAL', Cue = 'UAL0001_Gate_In', LodCutoff = 'UnitMove_LodCutoff' }, + Construct = Sound { Bank = 'XSL', Cue = 'XSL0301_Construct_Start', LodCutoff = 'UnitMove_LodCutoff' }, + ConstructLoop = Sound { Bank = 'XSL', Cue = 'XSL0301_Construct_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + Destroyed = Sound { Bank = 'XSL_Destroy', Cue = 'XSL0301_Destroy', LodCutoff = 'UnitMove_LodCutoff' }, + EnhanceEnd = Sound { Bank = 'UnitsGlobal', Cue = 'GLB_Enhance_Stop', LodCutoff = 'UnitMove_LodCutoff' }, + EnhanceFail = Sound { Bank = 'UnitsGlobal', Cue = 'GLB_Enhance_Fail', LodCutoff = 'UnitMove_LodCutoff' }, + EnhanceLoop = Sound { Bank = 'UnitsGlobal', Cue = 'GLB_Enhance_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + EnhanceStart = Sound { Bank = 'UnitsGlobal', Cue = 'GLB_Enhance_Start', LodCutoff = 'UnitMove_LodCutoff' }, + FootFallGeneric = Sound { Bank = 'XSL', Cue = 'XSL0301_Move_Step', LodCutoff = 'UnitMove_LodCutoff' }, + FootFallGenericSeabed = Sound { Bank = 'XSL', Cue = 'XSL0001_Move_UW_Step', LodCutoff = 'UnitMove_LodCutoff' }, + Killed = Sound { Bank = 'Explosions', Cue = 'Aeon_Nuke_Impact', LodCutoff = 'UnitMove_LodCutoff' }, + ReclaimLoop = Sound { Bank = 'XSL', Cue = 'XSL0301_Reclaim_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + StartCapture = Sound { Bank = 'XSL', Cue = 'XSL0301_Capture_Start', LodCutoff = 'UnitMove_LodCutoff' }, + StartMove = Sound { Bank = 'XSL', Cue = 'XSL0301_Move_Start', LodCutoff = 'UnitMove_LodCutoff' }, + StartReclaim = Sound { Bank = 'XSL', Cue = 'XSL0301_Reclaim_Start', LodCutoff = 'UnitMove_LodCutoff' }, + StopMove = Sound { Bank = 'XSL', Cue = 'XSL0301_Move_Stop', LodCutoff = 'UnitMove_LodCutoff' }, + TeleportChargingAtDestination = Sound { Bank = 'XSA', Cue = 'XSA0402_Move_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + TeleportChargingAtUnit = Sound { Bank = 'XSB', Cue = 'XSB0101_Construct_Loop', LodCutoff = 'UnitMove_LodCutoff' }, + TeleportIn = Sound { Bank = 'XSB', Cue = 'XSB0101_Activate', LodCutoff = 'UnitMove_LodCutoff' }, + TeleportOut = Sound { Bank = 'XSB', Cue = 'XSB0101_Activate', LodCutoff = 'UnitMove_LodCutoff' }, + UISelection = Sound { Bank = 'SeraphimSelect', Cue = 'Seraphim_Select_Commander', LodCutoff = 'UnitMove_LodCutoff' }, + }, + BuildIconSortPriority = 10, + Categories = { + "AMPHIBIOUS", + "BUILTBYQUANTUMGATE", + "CAPTURE", + "CONSTRUCTION", + "ENERGYPRODUCTION", + "ENGINEER", + "LAND", + "MASSFABRICATION", + "MASSPRODUCTION", + "MOBILE", + "OVERLAYDIRECTFIRE", + "OVERLAYOMNI", + "PATROLHELPER", + "PRODUCTFA", + "RECLAIM", + "REPAIR", + "SELECTABLE", + "SERAPHIM", + "SHOWATTACKRETICLE", + "SHOWQUEUE", + "SILO", + "SUBCOMMANDER", + "TECH3", + "USEBUILDPRESETS", + "VERIFYMISSILEUI", + "VISIBLETORECON", + }, Defense = { + AirThreatLevel = 0, + ArmorType = "Normal", + EconomyThreatLevel = 6155, Health = 13500, MaxHealth = 13500, RegenRate = 10, + SubThreatLevel = 0, + SurfaceThreatLevel = 527, + }, + Display = { + Abilities = { + "Amphibious", + "Customizable", + "Engineering Suite", + "Not Capturable", + "Omni Sensor", + "Volatile", + }, + AnimationWalk = "/units/XSL0301/XSL0301_AWalk01.sca", + AnimationWalkRate = 1, + IdleEffects = { + Seabed = { + Effects = { + { + Bones = { + "Right_Arm_Muzzle", + "Left_Arm_Muzzle", + }, + Type = "UnderWater01", + }, + }, + }, + }, + Mesh = { + IconFadeInZoom = 130, + LODs = { + { + LODCutoff = 100, + LookupName = "/textures/environment/Falloff_seraphim_lookup.dds", + Scrolling = true, + ShaderName = "Seraphim", + }, + { + LODCutoff = 215, + LookupName = "/textures/environment/Falloff_seraphim_lookup.dds", + ShaderName = "Seraphim", + AlbedoName = "xsl0301_lod1_albedo.dds", + SpecularName = "xsl0301_lod1_specteam.dds", + }, + }, + }, + MovementEffects = { + Land = { + Effects = { + { + Bones = { + "Left_Exhaust", + "Right_Exhaust", + }, + Scale = 0.5, + Type = "GroundKickup01", + }, + }, + Footfall = { + Bones = { + { + FootBone = "Left_Foot", + HipBone = "Left_Leg_B01", + KneeBone = "Left_Leg_B02", + Tread = { + TreadMarks = "CommanderPrint_albedo", + TreadMarksSizeX = 0.45, + TreadMarksSizeZ = 0.45, + TreadOffset = { -0.18, 0, 0.35 }, + }, + Type = "FootFall02", + }, + { + FootBone = "Right_Foot", + HipBone = "Right_Leg_B01", + KneeBone = "Right_Leg_B02", + Tread = { + TreadMarks = "CommanderPrint_albedo", + TreadMarksSizeX = 0.45, + TreadMarksSizeZ = 0.45, + TreadOffset = { 0.18, 0, 0.35 }, + }, + Type = "FootFall02", + }, + }, + }, + }, + Seabed = { + Effects = { + { + Bones = { + "Torso", + "Right_Arm_Muzzle", + "Left_Arm_Muzzle", + "Left_Foot", + "Right_Foot", + }, + Type = "UnderWater01", + }, + }, + }, + }, + TeleportEffects = { + ChargeFxAtUnitBones = { + { + Bone = "Back_Upgrade", + Offset = { 0, 0, 0.1 }, + }, + }, + PlayChargeFxAtDestination = true, + PlayChargeFxAtUnit = true, + PlayTeleportInFx = true, + PlayTeleportOutFx = true, + }, + TransportAnimation = { + { + Animation = "/units/XSL0301/XSL0301_afold.sca", + Weight = 100, + }, + }, + TransportDropAnimation = { + { + Animation = "/units/XSL0301/XSL0301_aunfold.sca", + Weight = 100, + }, + }, + UniformScale = 0.05, + WarpInEffect = { + HideBones = { "Back_Upgrade" }, + PhaseShieldMesh = "/units/xsl0301/XSL0301_PersonalShield_mesh", + }, }, Economy = { BuildCostEnergy = 25200, BuildCostMass = 25200, BuildRate = 45, BuildTime = 14700, + BuildableCategory = { "BUILTBYTIER3ENGINEER SERAPHIM" }, + MaxBuildDistance = 10, + NaturalProducer = true, + ProductionPerSecondEnergy = 200, + ProductionPerSecondMass = 2, StorageEnergy = 750, StorageMass = 450, + TeleportEnergyMod = 5.42, + TeleportMassMod = 0, + TeleportTimeMod = 0.0001, }, EnhancementPresets = { Engineer = { @@ -76,19 +274,6 @@ UnitBlueprint { SortCategory = "SORTOTHER", UnitName = "SACU (Rambo preset)", }, - --Rambo = { - -- Description = "SACU (Rambo preset)", - -- BuildIconSortPriority = 35, - -- Enhancements = { - -- "Overcharge", - -- "Shield", - -- "DamageStabilization", - -- }, - -- HelpText = "Support Armored Command Unit. Enhanced during construction with the personal shield generator, nano-repair system and overcharge enhancements.", - -- SortCategory = "SORTOTHER", - -- UnitName = "SACU (Rambo preset)", - --}, - }, Enhancements = { -- Left @@ -346,14 +531,424 @@ UnitBlueprint { }, }, }, + General = { + BuildBones = { + AimBone = "Left_Arm_Muzzle", + BuildEffectBones = { "Left_Arm_Muzzle" }, + PitchBone = "Left_Arm", + YawBone = "Torso", + }, + CommandCaps = { + RULEUCC_Attack = true, + RULEUCC_CallTransport = true, + RULEUCC_Capture = true, + RULEUCC_Guard = true, + RULEUCC_Move = true, + RULEUCC_Nuke = false, + RULEUCC_Patrol = true, + RULEUCC_Pause = true, + RULEUCC_Reclaim = true, + RULEUCC_Repair = true, + RULEUCC_RetaliateToggle = true, + RULEUCC_Stop = true, + RULEUCC_Transport = false, + }, + ConstructionBar = true, + FactionName = "Seraphim", + Icon = "amph", + OrderOverrides = { + RULEUTC_ShieldToggle = { + bitmapId = "shield-personal", + helpText = "toggle_shield_personal", + }, + }, + SelectionPriority = 3, + TeleportDelay = 10, + }, + Intel = { + FreeIntel = true, + OmniRadius = 16, + VisionRadius = 26, + WaterVisionRadius = 26, + }, + LifeBarHeight = 0.075, + LifeBarOffset = 0.4, + LifeBarSize = 0.9, + Physics = { + BankingSlope = 0, + BuildOnLayerCaps = { + LAYER_Air = false, + LAYER_Land = true, + LAYER_Orbit = false, + LAYER_Seabed = false, + LAYER_Sub = false, + LAYER_Water = false, + }, + DragCoefficient = 0.2, + LayerChangeOffsetHeight = -0.85, + MaxAcceleration = 2.2, + MaxBrake = 2.2, + MaxSpeed = 2.2, + MaxSpeedReverse = 0, + MaxSteerForce = 12, + MeshExtentsX = 1.25, + MeshExtentsY = 1.9, + MeshExtentsZ = 1.75, + MinSpeedPercent = 0, + MotionType = "RULEUMT_Amphibious", + StandUpright = true, + TurnRadius = 10, + TurnRate = 90, + }, + SelectionSizeX = 0.55, + SelectionSizeZ = 0.5, + SelectionThickness = 0.7, + SelectionYOffset = 0, + SizeX = 1.2, + SizeY = 2.2, + SizeZ = 1.2, + StrategicIconName = "icon_subcommander", + StrategicIconSortPriority = 1, + Transport = { + CanFireFromTransport = false, + TransportClass = 3, + }, Weapon = { { + AboveWaterFireOnly = true, + AboveWaterTargetsOnly = true, + Audio = { + Fire = Sound { Bank = 'XSL_Weapon', Cue = 'XSL0301_ Chronatron_Cannon', LodCutoff = 'Weapon_LodCutoff' }, + }, + BallisticArc = "RULEUBA_LowArc", + CollideFriendly = false, Damage = 150, + DamageType = "Normal", + DisplayName = "Light Chronotron Cannon", + FireTargetLayerCapsTable = { + Land = "Land|Water|Seabed", + Water = "Land|Water|Seabed", + }, + FiringTolerance = 2, + Label = "LightChronatronCannon", + MaxRadius = 25, + MinRadius = 1, + MuzzleChargeDelay = 0.5, + MuzzleSalvoDelay = 0, + MuzzleSalvoSize = 1, + MuzzleVelocity = 25, + MuzzleVelocityReduceDistance = 5, + ProjectileId = "/projectiles/SDFLightChronatronCannon01/SDFLightChronatronCannon01_proj.bp", + ProjectileLifetimeUsesMultiplier = 1.15, + ProjectilesPerOnFire = 1, + RackBones = { + { + MuzzleBones = { "Right_Arm_Muzzle" }, + RackBone = "Right_Arm", + }, + }, + RackFireTogether = false, + RackRecoilDistance = 0, + RackReloadTimeout = 10, + RackSalvoChargeTime = 0, + RackSalvoReloadTime = 0, + RackSalvoSize = 1, + RackSlavedToTurret = false, + RangeCategory = "UWRC_DirectFire", + RateOfFire = 1, + TargetPriorities = { + "MOBILE EXPERIMENTAL", + "MOBILE TECH3", + "MOBILE TECH2", + "(STRUCTURE * DEFENSE - ANTIMISSILE)", + "MOBILE TECH1", + "ALLUNITS", + }, + TargetRestrictDisallow = "UNTARGETABLE", + TurretBoneMuzzle = "Right_Arm_Muzzle", + TurretBonePitch = "Right_Arm", + TurretBoneYaw = "Torso", + TurretDualManipulators = false, + TurretPitch = 0, + TurretPitchRange = 160, + TurretPitchSpeed = 90, + TurretYaw = 0, + TurretYawRange = 360, + TurretYawSpeed = 90, + Turreted = true, + UseFiringSolutionInsteadOfAimBone = true, + WeaponCategory = "Direct Fire", + }, + { + AboveWaterFireOnly = true, + AboveWaterTargetsOnly = true, + Audio = { + Fire = Sound { Bank = 'XSL_Weapon', Cue = 'XSL0301_ Chronatron_Cannon', LodCutoff = 'Weapon_LodCutoff' }, + }, + BallisticArc = "RULEUBA_None", + CollideFriendly = false, + Damage = 15000, + DamageFriendly = false, + DamageRadius = 2.5, + DamageType = "Overcharge", + DisplayName = "Light Overcharge Cannon", + EnergyChargeForFirstShot = false, + EnergyDrainPerSecond = 5000, + EnergyRequired = 5000, + FireTargetLayerCapsTable = { + Land = "Land|Water|Seabed", + Seabed = "Land|Water|Seabed", + Water = "Land|Water|Seabed", + }, + FiringTolerance = 2, + Label = "OverCharge", + ManualFire = true, + MaxRadius = 25, + MuzzleSalvoDelay = 0, + MuzzleSalvoSize = 1, + MuzzleVelocity = 22, + OverChargeWeapon = true, + Overcharge = { + commandDamage = 400, + energyMult = 0.9, + maxDamage = 15000, + minDamage = 1250, + structureDamage = 800, + }, + ProjectileId = "/projectiles/SDFLightChronatronCannon02/SDFLightChronatronCannon02_proj.bp", + ProjectileLifetimeUsesMultiplier = 2, + RackBones = { + { + MuzzleBones = { "Right_Arm_Muzzle" }, + RackBone = "Right_Arm", + }, + }, + RackFireTogether = false, + RackRecoilDistance = -0.5, + RackReloadTimeout = 10, + RackSalvoChargeTime = 0, + RackSalvoReloadTime = 0, + RackSalvoSize = 1, + RackSlavedToTurret = false, + RangeCategory = "UWRC_DirectFire", + RateOfFire = 0.133, + SlavedToBody = false, + TargetPriorities = { + "MOBILE EXPERIMENTAL", + "MOBILE TECH3", + "MOBILE TECH2", + "MOBILE TECH1", + "COMMAND", + "(STRUCTURE * DEFENSE - ANTIMISSILE)", + "ALLUNITS", + }, + TargetRestrictDisallow = "UNTARGETABLE", + TurretBoneMuzzle = "Right_Arm_Muzzle", + TurretBonePitch = "Right_Arm", + TurretBoneYaw = "Torso", + TurretDualManipulators = false, + TurretPitch = 0, + TurretPitchRange = 60, + TurretPitchSpeed = 30, + TurretYaw = 0, + TurretYawRange = 180, + TurretYawSpeed = 90, + Turreted = true, + UseFiringSolutionInsteadOfAimBone = true, + WeaponCategory = "Direct Fire", + WeaponRepackTimeout = 0, + WeaponUnpacks = false, + }, + { + AboveWaterFireOnly = true, + AboveWaterTargetsOnly = true, + Audio = { + Fire = Sound { Bank = 'XSL_Weapon', Cue = 'XSL0301_ Chronatron_Cannon', LodCutoff = 'Weapon_LodCutoff' }, + }, + BallisticArc = "RULEUBA_None", + CollideFriendly = false, + Damage = 15000, + DamageFriendly = false, + DamageRadius = 2.5, + DamageType = "Overcharge", + DisplayName = "Light AutoOvercharge Cannon", + EnergyChargeForFirstShot = false, + EnergyDrainPerSecond = 5000, + EnergyRequired = 5000, + FireTargetLayerCapsTable = { + Land = "Land|Water|Seabed", + Seabed = "Land|Water|Seabed", + Water = "Land|Water|Seabed", + }, + FiringTolerance = 2, + Label = "AutoOverCharge", + MaxRadius = 25, + MuzzleSalvoDelay = 0, + MuzzleSalvoSize = 1, + MuzzleVelocity = 22, + Overcharge = { + commandDamage = 400, + energyMult = 0.9, + maxDamage = 15000, + minDamage = 1250, + structureDamage = 800, + }, + ProjectileId = "/projectiles/SDFLightChronatronCannon02/SDFLightChronatronCannon02_proj.bp", + ProjectileLifetimeUsesMultiplier = 2, + RackBones = { + { + MuzzleBones = { "Right_Arm_Muzzle" }, + RackBone = "Right_Arm", + }, + }, + RackFireTogether = false, + RackRecoilDistance = -0.5, + RackReloadTimeout = 10, + RackSalvoChargeTime = 0, + RackSalvoReloadTime = 0, + RackSalvoSize = 1, + RackSlavedToTurret = false, + RangeCategory = "UWRC_DirectFire", + RateOfFire = 0.133, + SlavedToBody = false, + TargetPriorities = { + "MOBILE EXPERIMENTAL", + "MOBILE TECH3", + "MOBILE TECH2", + "MOBILE TECH1", + "COMMAND", + "(STRUCTURE * DEFENSE - ANTIMISSILE)", + "ALLUNITS", + }, + TargetRestrictDisallow = "UNTARGETABLE", + TurretBoneMuzzle = "Right_Arm_Muzzle", + TurretBonePitch = "Right_Arm", + TurretBoneYaw = "Torso", + TurretDualManipulators = false, + TurretPitch = 0, + TurretPitchRange = 60, + TurretPitchSpeed = 30, + TurretYaw = 0, + TurretYawRange = 180, + TurretYawSpeed = 90, + Turreted = true, + UseFiringSolutionInsteadOfAimBone = true, + WeaponCategory = "Direct Fire", + WeaponRepackTimeout = 0, + WeaponUnpacks = false, }, - {}, - {}, { + AboveWaterTargetsOnly = true, + CollideFriendly = false, Damage = 1250, + DamageFriendly = true, + DamageRadius = 10, + DamageType = "DeathExplosion", + DisplayName = "Death Nuke", + FireOnDeath = true, + FiringTolerance = 2, + Label = "DeathWeapon", + MaxRadius = 1, + MuzzleSalvoDelay = 0, + MuzzleSalvoSize = 1, + MuzzleVelocity = 0, + ProjectileId = "/effects/Entities/SCUDeath01/SCUDeath01_proj.bp", + RackBones = { + { + MuzzleBones = { 0 }, + RackBone = 0, + }, + }, + RackRecoilDistance = 0, + RateOfFire = 1, + TargetRestrictDisallow = "UNTARGETABLE", + Turreted = false, + WeaponCategory = "Death", + }, + { + AboveWaterTargetsOnly = true, + Audio = { + Fire = Sound { Bank = 'XSL_Weapon', Cue = 'XSL0301_LaanseMissile', LodCutoff = 'Weapon_LodCutoff' }, + }, + BallisticArc = "RULEUBA_None", + CollideFriendly = false, + CountedProjectile = true, + Damage = 6000, + DamageFriendly = false, + DamageRadius = 2, + DamageType = "Normal", + DisplayName = "Laanse Tactical Missile Launcher", + EffectiveRadius = 0, + FireTargetLayerCapsTable = { + Land = "Land|Water|Seabed", + Seabed = "Land|Water|Seabed", + Sub = "Land|Water|Seabed", + Water = "Land|Water|Seabed", + }, + FiringTolerance = 5, + Label = "Missile", + ManualFire = true, + MaxProjectileStorage = 1, + MaxRadius = 256, + MinRadius = 15, + MuzzleChargeDelay = 0.2, + MuzzleSalvoDelay = 0, + MuzzleSalvoSize = 1, + MuzzleVelocity = 7, + ProjectileId = "/projectiles/SIFLaanseTacticalMissileSCU/SIFLaanseTacticalMissileSCU_proj.bp", + ProjectileLifetime = 80, + ProjectilesPerOnFire = 1, + RackBones = { + { + MuzzleBones = { "back_missile" }, + RackBone = "back_missile", + }, + }, + RackFireTogether = false, + RackRecoilDistance = 0, + RackReloadTimeout = 10, + RackSalvoChargeTime = 0, + RackSalvoReloadTime = 0, + RackSalvoSize = 1, + RackSlavedToTurret = false, + RangeCategory = "UWRC_IndirectFire", + RateOfFire = 1, + TargetPriorities = { + "(STRUCTURE * DEFENSE - ANTIMISSILE)", + "ALLUNITS", + }, + TargetRestrictDisallow = "UNTARGETABLE", + Turreted = false, + WeaponCategory = "Missile", + WeaponRepackTimeout = 5, + WeaponUnpacks = true, + }, + { + Damage = 150, + DamageFriendly = true, + DamageRadius = 5, + DamageType = "Normal", + DisplayName = "Teleport in", + DummyWeapon = true, + Label = "TeleportWeapon", + ManualFire = true, + MaxRadius = 1, + RateOfFire = 1, + WeaponCategory = "Teleport", + }, + }, + Wreckage = { + Blueprint = "/props/DefaultWreckage/DefaultWreckage_prop.bp", + EnergyMult = 0, + HealthMult = 0.9, + MassMult = 0.9, + ReclaimTimeMultiplier = 1, + WreckageLayers = { + Air = false, + Land = true, + Seabed = false, + Sub = false, + Water = false, }, }, } \ No newline at end of file