Modderecke > Coding
Melkors Modding Fragen
Melkor Bauglir:
Ich habe vor kurzen dem Hexenkönig eine neue Fähigkeit verpasst, die allerdings bei Benutzung das Spiel zum Absturz bringt (üblicher Runtime-Error).
Die Fähigkeit soll bei Benutzung alle Einheiten und Helden um den Hexenkönig betäuben und die Gebäude im Zielgebiet schwächen.
--- Code: ---;---------------------------------------------------------
; Zermalmende Worte
;---------------------------------------------------------
Behavior = UnpauseSpecialPowerUpgrade ModuleTag_WitchkingWorteEnabler
SpecialPowerTemplate = SpecialAbilityWitchkingWorteMS
TriggeredBy = Upgrade_Held1RespawnLevel ;Upgrade_Held6RespawnLevel
ObeyRechageOnTrigger = Yes
End
Behavior = SpecialPowerModule ModuleTag_WitchkingWorteStarter
SpecialPowerTemplate = SpecialAbilityWitchkingWorteMS
StartsPaused = No
UpdateModuleStartsAttack = Yes
End
Behavior = ActivateModuleSpecialPower ModuleTag_WitchkingWorteMover
SpecialPowerTemplate = SpecialAbilityWitchkingWorteMS
StartAbilityRange = ANGMAR_NECRO_WELL_OF_SOULS_START_RANGE
EffectRange = 65
TriggerSpecialPower = ModuleTag_WitchkingWorteSchwächen TARGETPOS
TriggerSpecialPower = ModuleTag_WitchkingWorteVerharrenTrigger OBJECTPOS
End
Behavior = SpecialPowerModule ModuleTag_WitchkingWorteSchwächen
SpecialPowerTemplate = SpecialAbilityWitchkingWorteBlast
UpdateModuleStartsAttack = Yes
StartsPaused = No
End
Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_WitchkingWorteBlastWeaponFireUpdate
SpecialPowerTemplate = SpecialAbilityWitchkingWorteBlast
WhichSpecialWeapon = 2
SkipContinue = Yes
UnpackTime = 700
PreparationTime = 1
PackTime = 100
FreezeAfterTriggerDuration = 250 ; Hold AI for this long after we fire.
StartAbilityRange = ANGMAR_NECRO_WELL_OF_SOULS_START_RANGE
EffectRange = 65
SpecialWeapon = WitchKingWorteDebuffWeapon
End
Behavior = SpecialPowerModule ModuleTag_WitchkingWorteVerharrenTrigger
SpecialPowerTemplate = SpecialAbilityWitchkingWorteVerharren
UpdateModuleStartsAttack = Yes
StartsPaused = No
End
Behavior = WeaponFireSpecialAbilityUpdate ModuleTag_WitchkingWorteVerharrenWeaponFireUpdate
SpecialPowerTemplate = SpecialAbilityWitchkingWorteVerharren
SpecialWeapon = WitchkingWorteVerharrenStartWeapon
End
--- Ende Code ---
--- Code: ---SpecialPower SpecialAbilityWitchkingWorteMS
Enum = SPECIAL_ARROW_STORM
ReloadTime = 1 ; MOUTH_OF_SAURON_DOUBT_RECHARGE_MS
RadiusCursorRadius = 65
InitiateAtLocationSound = WitchKingScreechMS
Flags = NEEDS_OBJECT_FILTER
ObjectFilter = NONE +STRUCTURE NEUTRAL ENEMIES
End
SpecialPower SpecialAbilityWitchkingWorteBlast
Enum = SPECIAL_WORD_OF_POWER
ReloadTime = 1
End
SpecialPower SpecialAbilityWitchkingWorteVerharren
Enum = SPECIAL_WORD_OF_POWER
ReloadTime = 1
End
--- Ende Code ---
Ich habe eine solche Fähigkeit übrigens noch nie gecodet, in der man mehrere SpecialPower-Module aufruft, also kann mir da durchaus einfach ein recht simpler Fehler passiert sein.
Gruß
Melkor Bauglir
Prinz von Dol Amroth:
Also der Teil beim Hexenkönig sieht richtig aus. Beim ActivateModule hast du auch die richtigen TriggerSpecialPower angegeben.
Bei den SpecialPowers würde ich für das Enum generell SPECIAL_GENERAL_TARGETLE SS verwenden, wie es auch sonst bei den activatedummi specialpowers ist. Für den Spielabsturtz ist das aber nicht verantwortlich.
Zeig mal deine Weapon.
PS: Wenn die Fähigkeit auf Einheiten, Helden und Gebäude wirken soll, wieso hast du dann in der SpecialPower nur Gebäude als Voraussetzung?
Melkor Bauglir:
Er soll sie auf Gebäude wirken, aber als Begleiterscheinung der Fähigkeit sollen alle nahen Einheiten und Helden kurz innehalten.
--- Code: ---Weapon WitchKingWorteDebuffWeapon
IdleAfterFiringDelay = 0
AttackRange = ANGMAR_NECRO_WELL_OF_SOULS_START_RANGE
WeaponSpeed = 801 ; dist/sec
HitPercentage = 100 ; When this weapon is used it will hit exactly 100% of the time.
DelayBetweenShots = 500 ; time between shots, msec
PreAttackDelay = 200
PreAttackType = PER_ATTACK ; Do the delay each time we attack a new target
FiringDuration = 1000
AntiAirborneVehicle = Yes
AntiAirborneMonster = Yes
RadiusDamageAffects = ENEMIES NOT_SIMILAR
AttributeModifierNugget
AttributeModifier = WitchKingWorteDebuff
Radius = 65
SpecialObjectFilter = ANY +STRUCTURE ENEMIES
End
End
Weapon WitchkingWorteVerharrenStartWeapon
RadiusDamageAffects = ENEMIES ALLIES
DelayBetweenShots = 4000 ; time between shots, msec
PreAttackDelay = 0 ;PreAttackDelay+FiringDuration = UseWeaponTiming = Yes duration
PreAttackType = PER_SHOT
FiringDuration = 0
WeaponOCLNugget
WeaponOCLName = OCL_WitchkingVerharrenMS
End
End
Weapon WitchkingVerharrenFinalWeapon
RadiusDamageAffects = ENEMIES ALLIES
LeechRangeWeapon = Yes
CanFireWhileMoving = No
AttackRange = 30.0
MeleeWeapon = Yes
WeaponSpeed = 799999.2 ; dist/sec (huge value == effectively instant)
DelayBetweenShots = ANGMAR_SHADE_LAMENT_DELAYBETWEENSHOTS ; time between shots, msec
PreAttackDelay = ANGMAR_SHADE_LAMENT_PREATTACKDELAY ; 433 is natural time of the stabbing animation.
PreAttackType = PER_SHOT ; Do the delay each time we attack a new target
FiringDuration = ANGMAR_SHADE_LAMENT_FIRINGDURATION ; min 600 for anim
DamageDealtAtSelfPosition = Yes ; A melee based AoE. Arc radiates from me, not them
ParalyzeNugget
Radius = 350
Duration = 4000
SpecialObjectFilter = NONE +HERO
End
LuaEventNugget ; Sends a lua script event out
LuaEvent = BeUncontrollablyAfraid
Radius = 350
SendToEnemies = Yes
SendToAllies = Yes
SendToNeutral = Yes
End
End
--- Ende Code ---
--- Code: ---ObjectCreationList OCL_WitchkingVerharrenMS
CreateObject
ObjectNames = WitchkingVerharrenPing
Count = 1
End
CreateObject
ObjectNames = WitchkingVerharrenWeaponPing
Count = 1
End
End
--- Ende Code ---
--- Code: ---Object WitchkingVerharrenPing
Draw = W3DScriptedModelDraw ModuleTag_Draw
DefaultModelConditionState
Model = None
End
End
KindOf = INERT IMMOBILE UNATTACKABLE INERT_SHROUD_REVEALER
Behavior = AttributeModifierAuraUpdate ModuleTag_DreadVisageAddition
StartsActive = Yes
BonusName = SauronsAugeLeadership
RefreshDelay = 2000
Range = 350
TargetEnemy = Yes
AntiCategory = LEADERSHIP BUFF
ObjectFilter = ANY +INFANTRY +CAVALRY -STRUCTURE -BASE_FOUNDATION +HERO +HORDE +MONSTER +MACHINE
End
Behavior = AttributeModifierAuraUpdate ModuleTag_DreadVisageAddition2
StartsActive = Yes
BonusName = SauronsAugeLeadership
RefreshDelay = 2000
Range = 350
TargetEnemy = No
AntiCategory = LEADERSHIP BUFF
ObjectFilter = ANY +INFANTRY +CAVALRY -STRUCTURE -BASE_FOUNDATION +HERO +HORDE +MONSTER +MACHINE ALLIES
End
Body = ActiveBody ModuleTag_MakesKillWork
MaxHealth = 1
End
Behavior = LifetimeUpdate ModuleTag_HatchTrigger
MinLifetime = 5000
MaxLifetime = 5000
End
Behavior = SlowDeathBehavior ModuleTag_HatchProcess
DestructionDelay = 100
End
End
Object WitchkingVerharrenWeaponPing
Draw = W3DScriptedModelDraw ModuleTag_Draw
DefaultModelConditionState
Model = None
End
End
KindOf = INERT IMMOBILE UNATTACKABLE INERT_SHROUD_REVEALER
Body = ActiveBody ModuleTag_MakesKillWork
MaxHealth = 1
End
Behavior = LifetimeUpdate ModuleTag_HatchTrigger
MinLifetime = 100
MaxLifetime = 100
End
Behavior = SlowDeathBehavior ModuleTag_HatchProcess
DestructionDelay = 100
Weapon = FINAL WitchkingVerharrenFinalWeapon
End
End
--- Ende Code ---
Ist ein bisschen umfangreich, weil ich nicht wusste, wie ich sonst Furchtresistenzen von meinen eigenen Truppen entfernen kann.
Gruß
Melkor Bauglir
Prinz von Dol Amroth:
In dem Code habe ich auch keine Fehler gesehen. Dann zeig mal deinen CommandButton und die AttributeModifier.
Nach etwas nachdenken, habe ich auch dein Eggsystem verstanden.
Bist du dir sicher, dass das mit deinen AttributeModifierAuraUpd ates so richtig ist. Denn ich dachte, wenn man kein ALLIES/ENEMIES hinzufügt, dann würde ALLIES genommen. Inwieweit davon AntiCategory betroffen ist, weiß ich nicht genau, denn das wird ja im Originalspiel öftersverwendet gegen Feinde auch wenn die eigentliche Führerschaft auf Verbündete geht.
Wofür brauchst du eigentlich das KindOf INERT_SHROUD_REVEALER, bzw. was macht dies genau. Denn bei meinen Eggs verwende ich bis auf INERT_SHROUD_REVEALER die gleichen KindOfs.
Melkor Bauglir:
Also bei Saurons Auge (das ja auch schon seit Ewigkeiten Führerschaften aufhebt) stehen Führerschaft und AntiCategory in 2 unterschiedlichen Modulen, das sollte also klappen. INERT_SHROUD_REVEALER ist steht dort noch drin, weil ich faul wie ich bin andere Objekte kopiert und bearbeitet habe und das KindOf bei soetwas häufiger nicht so wichtig ist. Ich habe es jetzt mal entfernt. ;)
--- Code: ---CommandButton Command_SpecialAbilityWitchKingWorteMS
Command = SPECIAL_POWER
SpecialPower = SpecialAbilityWitchkingWorteMS
Options = NEED_TARGET_POS CONTEXTMODE_COMMAND
TextLabel = CONTROLBAR:WitchkingWorteMS
ButtonImage = UCGrond_Cloud
CursorName = Bombard
RadiusCursorType = EarthquakeRadiusCursor
InvalidCursorName = GenericInvalid
ButtonBorderType = ACTION
DescriptLabel = CONTROLBAR:ToolTipWitchkingWorteMS
InPalantir = Yes
AutoAbility = No
End
--- Ende Code ---
--- Code: ---ModifierList WitchKingWorteDebuff
Category = WEAPON
Modifier = ARMOR -50%
Duration = 20000
End
--- Ende Code ---
Gruß
Melkor Bauglir
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln