Modderecke > Coding
Melkors Modding Fragen
Melkor Bauglir:
Hallo.
Ich habe vor kurzem angefangen, auch ein wenig zu modden und bin entsprechend unerfahren. Ergo versage ich gerade an folgendem Problem:
Ich versuche eine Fähigkeit für eine Einheit zu erstellen, die bei Aktivierung diese Einheit tötet und eine OCL auslöst. Da ich eigentlich keine Ahnung habe, wie so etwas funktioniert, habe ich mir einfach eine bestehende Fähigkeit genommen (Glorfindels Sternenlicht) und diese versucht zu ändern.
--- Code: ---CommandSet MordorAufseherCommandSet_neu
1 = Command_ToggleStance
4 = Command_SpecialAbilityAufseherArmeeverwaltung ;hier ist das Problem
7 = Command_SpecialAbilityGlorfindelRingSwitch
12 = Command_CaptureBuilding
13 = Command_AttackMove
14 = Command_Stop
16 = Command_SetStanceBattle
17 = Command_SetStanceAggressive
18 = Command_SetStanceHoldGround
End
--- Ende Code ---
--- Code: ---CommandButton Command_SpecialAbilityAufseherArmeeverwaltung
Command = SPECIAL_POWER
SpecialPower = SpecialAbilityGlorfindelStarlight
TextLabel = CONTROLBAR:SpecialAbilityArmeeverwaltung
ButtonImage = HSErestorMilitärStudien
ButtonBorderType = ACTION
DescriptLabel = CONTROLBAR:ToolTipSpecialAbilityArmeeverwaltung
AutoAbility = Yes
InPalantir = Yes
End
--- Ende Code ---
--- Code: ---SpecialPower SpecialAbilityAufseherArmeeverwaltung
Enum = SPECIAL_GENERAL_TARGETLESS_THREE
ReloadTime = 120000
End
--- Ende Code ---
--- Code: --- Behavior = UnpauseSpecialPowerUpgrade ModuleTag_GlorfindelStarlightEnabler
SpecialPowerTemplate = SpecialAbilityGlorfindelStarlight
TriggeredBy = Upgrade_Level_1
ObeyRechageOnTrigger = Yes
End
Behavior = OCLSpecialPower ModuleTag_GlorfindelStarlight
StartsPaused = Yes
SpecialPowerTemplate = SpecialAbilityGlorfindelStarlight
OCL = OCL_AufseherArmeeverwaltungEgg
CreateLocation = CREATE_AT_LOCATION
SetModelCondition = ModelConditionState:USER_2
SetModelConditionTime = 2.333
End
; special AutoAbilityBehavior for starlight, as we need to target a bunch of allies.
Behavior = AutoAbilityBehavior ModuleTag_StarlightAutoAbilityBehavior
SpecialAbility = SpecialAbilityGlorfindelStarlight
MaxScanRange = GLORFINDEL_STARLIGHT_RADIUS
Query = 2 ANY ALLIES +HORDE ; 2 friendly hordes or an enemy
Query = 1 ALL ENEMIES
End
--- Ende Code ---
Das sind hintereinander die Einträge in der commandset.ini, commandbutton.ini, specialpower.ini und der .ini der Aufseher.
Problem ist, dass die Fähigkeit im Spiel zwar korrekt angezeigt wird (inkl. Bild und allem), sich allerdings überhaupt nichts tut, wenn man sie anklickt. (Die Objects, die erscheinen sollen, sind alle fertig, ebenso die Weapon die den Aufseher tötet -die wird durch die OCL ausgelöst.) Die Aufladezeit ist übrigens drin, weil ich testen wollte, wo der Fehler liegt. Und da sie nie ausgelöst wird, scheint sich die Fähigkeit wirklich nie zu aktivieren.
Sieht jemand den Fehler?
Vielen Dank im Voraus
Melkor Bauglir
Prinz von Dol Amroth:
Deine gezeigten Codes sehen alle richtig aus.
Zeige am besten mal den OCL, das Object und wenn du gerade dabei bist auch die Weapon.
Übrigens verstehe ich nicht ganz, wieso du eine neue SpecialPower gemacht hast, wenn du noch die von Glorfindel verwendest ;)
Melkor Bauglir:
--- Code: ---ObjectCreationList OCL_AufseherArmeeverwaltungEgg
CreateObject
ObjectNames = AufseherKawuschObject
Count = 1
Disposition = LIKE_EXISTING
End
End
ObjectCreationList OCL_ArmeeverwaltungKommandopunkteEgg
CreateObject
ObjectNames = AufseherKommandopunkteObject
Count = 1
Disposition = LIKE_EXISTING
End
End
--- Ende Code ---
--- Code: ---Object AufseherKawuschObject
Draw = W3DScriptedModelDraw ModuleTag_Draw
DefaultModelConditionState
Model = None
End
End
KindOf = INERT IMMOBILE UNATTACKABLE
Body = ActiveBody ModuleTag_MakesKillWork
MaxHealth = 1
End
Behavior = LifetimeUpdate ModuleTag_HatchTrigger
MinLifetime = 0.0
MaxLifetime = 0.0
End
Behavior = SlowDeathBehavior ModuleTag_HatchProcess
DestructionDelay = 10
Weapon = FINAL ArmeeverwaltungKawuschRadiusWeapon
End
End
--- Ende Code ---
--- Code: ---Weapon ArmeeverwaltungKawuschRadiusWeapon
IdleAfterFiringDelay = 0
AttackRange = 50
WeaponSpeed = 401
RadiusDamageAffects = ALLIES
PreAttackDelay = 2600
PreAttackType = PER_ATTACK
FiringDuration = 1400
DamageNugget ; A basic Nugget that just does damage
Damage = 99999999999999999
Radius = 20.0
DelayTime = 0
DamageType = HERO
DamageFXType = SWORD_SLASH
DeathType = FADED
DamageScalar = 0% ALL -MordorAufseher ALLIES
End
WeaponOCLNugget
WeaponOCLName = OCL_ArmeeverwaltungKommandopunkteEgg
End
End
--- Ende Code ---
Wobei es mich wundern würde, wenn der Fehler da liegt. Die Fähigkeit hat ja eine Aufladezeit und die wird nie ausgelöst.
Gruß
Melkor
PS:
--- Zitat ---Übrigens verstehe ich nicht ganz, wieso du eine neue SpecialPower gemacht hast, wenn du noch die von Glorfindel verwendest
--- Ende Zitat ---
Wie ich so drüber nachdenke, frage ich mich das auch gerade... xD
Prinz von Dol Amroth:
Der OCL, Object und die Weapon scheinen Inordnung.
Der Fehler müsste sein, dass der Mordoraufseher nie das Upgrade Upgrade_Level_1 bekommt. Stattdessen bekommt er auf Stufe 1 das Upgrade Upgrade_ObjectLevel1, falls du das nicht in der experience.ini/inc geändert hast.
Melkor Bauglir:
Da habe ich in der Tat nichts dran geändert.
Ich habe in dieser Zeile
--- Code: ---TriggeredBy = Upgrade_Level_1
--- Ende Code ---
jetzt anstelle von Upgrade_Level_1 Upgrade_ObjectLevel_1 eingetragen. Leider hat sich dadurch nichts geändert.
Gruß
Melkor Bauglir
Edit:
So, in einem Versuch, den Fehler etwas einzugrenzen, habe ich einfach mal sämtliche Einträge in der .ini der Aufseher zu dieser Fähigkeit gelöscht; die Fähigkeit wäre damit überhaupt nicht mehr definiert, wenn ich das richtig sehe.
Nun ja, es hat sich absolut nichts geändert. :P Der Eintrag im CommandSet scheint also niemals überhaupt die Fähigkeit angesteuert zu haben -so erkläre ich mir das zumindest.
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln