Jump to content


Photo

Auto level up and auto spellbook points

mod

  • Please log in to reply
5 replies to this topic

#1 Slava Shadrinov

Slava Shadrinov
  • Members
  • 178 posts
  • Projects:The Word Of Tolkien Mod

Posted 21 April 2019 - 04:56 PM

Hi all!

Any way to get auto spellbook points and auto level up to units?

I know if you add this to you units:
 

Behavior = TerrainResourceBehavior ModuleTag_NewMoney
Radius = 0 ; How far we try to claim ground
MaxIncome = MORDOR_SLAUGHTERHOUSE_MONEY_AMOUNT ; If we were to get all we wanted, how much we would earn.  Linear slope to 0 at 0% claim
IncomeInterval = MORDOR_SLAUGHTERHOUSE_MONEY_TIME ; How often (in msec) we give that much money
End
 
they will up level automatically, but have another way to auto level up?


#2 Ridder Geel

Ridder Geel

    Master Yelloh

  • T3A Staff
  • 10,852 posts
  • Location:The Netherlands (AKA: Holland)
  • Projects:RC Mod + SEE + RTS Engine
  •  The Dangerous T3A Team Chamber Member
  • Division:BFME
  • Job:T3A Staff

Posted 24 April 2019 - 11:37 AM

Maybe this could work..

There are two modules, one which grants the experience, and one which seemingly (not sure) triggers abilities over a set time.

Combine the two and you might get what you want:

Behavior = SpecialAbilityUpdate ModuleTag_TheSpecialAbilityUpdate
;SUB_L010ED8C0->L01F224C8:
SpecialPowerTemplate = SpecialAbilityZephyrStrike ;L00E6C5F0:SpecialPower
StartAbilityRange = 7 ;SUB_L006D46C0:Float Point Value
AbilityAbortRange = 7 ;SUB_L006D46C0:Float Point Value
PreparationTime = 1000 ;SUB_L00E6CB10:Unsigned Integer Value
PersistentPrepTime = 1000 ;SUB_L00E6CB10:Unsigned Integer Value
PersistentCount = 10 ;SUB_L006D4430:Signed Integer Value
PackTime = 1000 ;SUB_L00E6CB10:Unsigned Integer Value
UnpackTime = 1000 ;SUB_L00E6CB10:Unsigned Integer Value
PreTriggerUnstealthTime = 1000 ;SUB_L00E6CB10:Unsigned Integer Value
SkipPackingWithNoTarget = Yes ;SUB_L006D3400:Boolean
PackUnpackVariationFactor = 7 ;SUB_L006D46C0:Float Point Value
ParalyzeDurationWhenCompleted = 1000 ;SUB_L00E6CB10:Unsigned Integer Value
ParalyzeDurationWhenAborted = 1000 ;SUB_L00E6CB10:Unsigned Integer Value
SpecialObject = AngmarWallSegmentSmall ;SUB_L006D4C30:String (Object)
SpecialObjectAttachToBone = WeaponA01 ;SUB_L006D4C30:String (Bone)
MaxSpecialObjects = 200 ;SUB_L006D4520:Unsigned Integer Value
SpecialObjectsPersistent = Yes ;SUB_L006D3400:Boolean
EffectDuration = 1000 ;SUB_L00E6CB10:Unsigned Integer Value
EffectValue = 100 ;SUB_L006D4430:Signed Integer Value
EffectRange = 7 ;SUB_L006D46C0:Float Point Value
UniqueSpecialObjectTargets = Yes ;SUB_L006D3400:Boolean
SpecialObjectsPersistWhenOwnerDies = Yes ;SUB_L006D3400:Boolean
AlwaysValidateSpecialObjects = Yes ;SUB_L006D3400:Boolean
FlipOwnerAfterPacking = Yes ;SUB_L006D3400:Boolean
FlipOwnerAfterUnpacking = Yes ;SUB_L006D3400:Boolean
FleeRangeAfterCompletion = 7 ;SUB_L006D46C0:Float Point Value
DisableFXParticleSystem = MissileExhaust ;SUB_L00E6C110:ParticleSystem
DoCaptureFX = Yes ;SUB_L006D3400:Boolean
PackSound = BuildingConstructionLoop ;L00E6B310:Sound (AudioEvent)
UnpackSound = BuildingConstructionLoop ;L00E6B310:Sound (AudioEvent)
PrepSoundLoop = BuildingConstructionLoop ;L00E6B310:Sound (AudioEvent)
TriggerSound = BuildingConstructionLoop ;L00E6B310:Sound (AudioEvent)
ActiveLoopSound = BuildingConstructionLoop ;L00E6B310:Sound (AudioEvent)
LoseStealthOnTrigger = Yes ;SUB_L006D3400:Boolean
AwardXPForTriggering = 100 ;SUB_L006D4430:Signed Integer Value
SkillPointsForTriggering = 10 ;SUB_L006D4430:Signed Integer Value
ApproachRequiresLOS = Yes ;SUB_L006D3400:Boolean
ChargeAttackSpeedBoost = Yes ;SUB_L006D3400:Boolean
CustomAnimAndDuration = AnimState:USER_3 AnimTime:0 TriggerTime:0 ;L010ED8E0: Animation State - Time - Delay // Animtime:0 = set flag forever
GrabPassengerAnimAndDuration = AnimState:USER_3 AnimTime:0 TriggerTime:0 ;L010ED8E0: Animation State - Time - Delay // Animtime:0 = set flag forever
GrabPassengerHealGainPercent = 0.50 ;L006D4890: float
UnpackingVariation = 1 ;SUB_L006D4430:Signed Integer Value
MustFinishAbility = Yes ;SUB_L006D3400:Boolean
FreezeAfterTriggerDuration = 1000 ;SUB_L00E6CB10:Unsigned Integer Value
DisableWhenWearingTheRing = Yes ;SUB_L006D3400:Boolean
RequiredConditions = MOUNTED ;SUB_L006D3960 L022377D0 //MOUNTED / WEAPON_TOGGLE / MOVING
RejectedConditions = MOVING ;SUB_L006D3960 L022377D0 //MOUNTED / WEAPON_TOGGLE / MOVING
ContactPointOverride = BoneA ;SUB_L006D4C30:String (Bone)
TriggerAttributeModifier = MyModifier ;SUB_L006D4C30:String (AttributeModifier)
AttributeModifierDuration = 1000 ;SUB_L00E6CB10:Unsigned Integer Value
KillAttributeModifierOnExit = Yes ;SUB_L006D3400:Boolean
KillAttributeModifierOnRejected = Yes ;SUB_L006D3400:Boolean
Instant = Yes ;SUB_L006D3400:Boolean
NeedCollisionBeforeTrigger = Yes ;SUB_L006D3400:Boolean
ChainedButton = ButtonA ;SUB_L006D4C30:String (CommandButton)
SuppressForHordes = Yes ;SUB_L006D3400:Boolean
ApproachUntilMembersInRange = Yes ;SUB_L006D3400:Boolean
IgnoreFacingCheck = Yes ;SUB_L006D3400:Boolean
TriggerModelCondition = ModelConditionState:SPECIAL_POWER_1 ;L010EDA80:ModelCondition //triggered during the unpack phase
TriggerModelConditionDuration = 700 ;SUB_L006D46C0:Float Point Value
End

Behavior = BoredUpdate ModuleTag_TheBoredUpdate
;L01202120->L01F43F40:
ScanDelayTime = 200 ;SUB_L00E6CB10:Unsigned Integer Value
ScanDistance = 10 ;SUB_L006D46C0:Float Point Value
BoredFilter = ANY +HORDE +HERO ;SUB_L00EDCA00:Object Filter
CanScanWhileAttackingOrMoving = Yes ;SUB_L006D3400:Boolean
SpecialPowerTemplate = SpecialAbilityZephyrStrike ;L00E6C5F0:SpecialPower
End

This would become something like this for what you want:

Behavior = SpecialAbilityUpdate ModuleTag_TheSpecialAbilityUpdate
 SpecialPowerTemplate = MySpecialAbility
 AwardXPForTriggering = 100
 SkillPointsForTriggering = 10
 Instant = Yes
End

Behavior = BoredUpdate ModuleTag_TheBoredUpdate
ScanDelayTime = 200
ScanDistance = 1
BoredFilter = NONE
CanScanWhileAttackingOrMoving = Yes
SpecialPowerTemplate = MySpecialAbility
End
 
I'm not entirely sure the AwardXPForTriggering and SkillPointsForTriggering actually work, so you would have to test it to find out :p
Also if nothing seems to be happening see what happens if you create a special ability button to manually trigger it.
 
You might need this to trigger the special ability:
Behavior = SpecialPowerModule ModuleTag_TriggerIt
        SpecialPowerTemplate     = MySpecialAbility
        UpdateModuleStartsAttack = Yes
        StartsPaused = Yes
    End 

Edited by Ridder Geel, 24 April 2019 - 11:54 AM.

Ridder Geel

#3 Slava Shadrinov

Slava Shadrinov
  • Members
  • 178 posts
  • Projects:The Word Of Tolkien Mod

Posted 24 April 2019 - 02:12 PM

Wow thats help me so much!
Thanks Ridder Geel!
Where do you get these codes?)



#4 Ridder Geel

Ridder Geel

    Master Yelloh

  • T3A Staff
  • 10,852 posts
  • Location:The Netherlands (AKA: Holland)
  • Projects:RC Mod + SEE + RTS Engine
  •  The Dangerous T3A Team Chamber Member
  • Division:BFME
  • Job:T3A Staff

Posted 25 April 2019 - 07:50 AM

There shall be a post soon on that grand project of mine... :p


Ridder Geel

#5 Ridder Geel

Ridder Geel

    Master Yelloh

  • T3A Staff
  • 10,852 posts
  • Location:The Netherlands (AKA: Holland)
  • Projects:RC Mod + SEE + RTS Engine
  •  The Dangerous T3A Team Chamber Member
  • Division:BFME
  • Job:T3A Staff

Posted 27 April 2019 - 10:57 AM

https://forums.revor...code-reference/

Since you asked, all the modules you can ever possibly want are there.
Ridder Geel

#6 Slava Shadrinov

Slava Shadrinov
  • Members
  • 178 posts
  • Projects:The Word Of Tolkien Mod

Posted 27 April 2019 - 12:30 PM

Thanks a lot)






0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users