Jump to content
Sign in to follow this  
Madin

ClearanceTesting & CurseSpecialPower

Recommended Posts

ClearanceTestingSlowDeathBehavior

Is there anybody that can explain this module to me? I know that is was used in BFME for the siege weapons deaths, but I do not understand what it did.

	<xs:complexType name="ClearanceTestingSlowDeathBehaviorModuleData">
		<xs:complexContent>
			<xs:extension base="SlowDeathBehaviorModuleData">
			    <xs:sequence>
					<xs:element name="ClearanceGeometry" type="GeometryInfo" minOccurs="0" maxOccurs="1" />
					<xs:element name="ClearanceGeometryOffset" type="Coord3D" minOccurs="0" maxOccurs="1" />
			    </xs:sequence>
				<xs:attribute name="ClearanceMaxHeight" type="SageReal" default="0" />
				<xs:attribute name="ClearanceMaxHeightFraction" type="SageReal" default="0" />
				<xs:attribute name="ClearanceMinHeight" type="SageReal" default="0" />
				<xs:attribute name="ClearanceMinHeightFraction" type="SageReal" default="0" />
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>

 

CurseSpecialPower

Another module that was used in BFME. I am wondering what the 'curse' entails? (from the 'CurseAllPlayerPowers' attribute, I guess it might concern reducing the ability of the enemies player powers).

I am also wondering if this works in C&C3 (if I knew what it did I could test it).

  <xs:complexType name="CurseSpecialPowerModuleData">
		<xs:complexContent>
			<xs:extension base="SpecialAbilityUpdateModuleData">
				<xs:sequence>
					<xs:element name="AffectObjectFilter" type="ObjectFilter" minOccurs="1" maxOccurs="1" />
				</xs:sequence>
				<xs:attribute name="TriggerFX" type="FXListRef" />
				<xs:attribute name="CurseFX" type="FXListRef" />
				<xs:attribute name="CurseAllPlayerPowers" type="SageBool" default="false" />
				<xs:attribute name="CurseFactor" type="SageReal" default="1.0" />
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>

 

Share this post


Link to post

From BFME1:

 

  Behavior = ClearanceTestingSlowDeathBehavior ModuleTag_05a
    DeathTypes			= ALL
    SinkDelay			= 25000
    SinkRate			= 2.4     ; in Dist/Sec
    DestructionDelay	= 60000
    DecayBeginTime		= 6000
    ProbabilityModifier = 490  ; Very, very likely unless clearance test fails
    DeathFlags			= DEATH_2       ; Controls animation and weapon choice. Sets BOTH model condition and object status bits.
    FX					= INITIAL FX_OliphantDie
    ShadowWhenDead		= Yes      ; Volumetric shadows don't look so bad when sinking into ground

    ; This is the area which must be clear for this slow death to go off
    ; Use Control-Shift-Alt-E in game to display this area
    ; Use debug.add l + clearancetestingslowdeathbehavior to get feedback on why test fails
    ClearanceGeometry				= Box
    ClearanceGeometryMajorRadius	= 64.0
    ClearanceGeometryMinorRadius	= 32.0
    ClearanceGeometryHeight			= 32.0
    ClearanceGeometryIsSmall		= No
    ClearanceGeometryOffset			= X:0 Y:-52 Z:0

    ClearanceMaxHeight				= 32
    ClearanceMaxHeightFraction		= 0.04 ; If more than 5% of the cells in the clearance geometry are more than 40 units above the Oliphant's base, don't fall (don't fall into cliffs)
    ClearanceMinHeight				= -32
    ClearanceMinHeightFraction		= 0.40 ; If more than 40% of the cells in the clearance geometry are more than 40 units below the Oliphant's base, don't fall (don't get left hanging over a cliff)
  End

 

Basicly, it would test huch much empy space is around the unit (multiple modules for multiple directions) and then determine the death animation to use. Since the death animations for Mumakils were a quite long and elaborate, they wanted to make sure the dead body would not move over cliffs or through walls during the animation.

Makes you wonder why they didnt use that for the TW mechs :S

 

 

 	Behavior = CurseSpecialPower ModuleTag_HOFTWUPdate
        SpecialPowerTemplate			= SpecialAbilityCurseEnemy

	    	CursePercentage			= 100.0% //Curse the target's power by this amount (will not exceed maximum charge time)

		StartAbilityRange		= 200.0
		CursedFX			= FX_SarumanDominateTargets
		TriggerFX			= FX_CreateaHeroCurse
		TriggerModelCondition		= ModelConditionState:SPECIAL_POWER_1	;triggered during the unpack phase
		TriggerModelConditionDuration	= 35	;in frames
		UnpackTime			= 2000
		PreparationTime			= 1000
		FreezeAfterTriggerDuration	= 2500 ; Hold AI for this long after we fire.
    End	

 

Curse (aka "Hour of the Witch-king" ingame) was an an abillity that resets all special abillitys for the target unit.

Edited by Stygs
  • Upvote 1

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×