# # Licensed under Attribution 4.0 International (CC BY 4.0) # Makes it so you automatically sprint while walking and not shooting. # Additionally now sprinting is multiplicative with other speed boosts. # Provides options for changing sprint speed, FOV, removing the accuracy penalty. # Additionally you can improve the accelrate and change base walk speed. # All settings are defaulted to vanilla values, my reccomendation is 25% FOV, 30% sprint speed, increased accelrate and 550 movespeed. load_package GD_Assassin_Streaming_SF load_package GD_Mercenary_Streaming_SF load_package GD_Lilac_Psycho_Streaming_SF clone -x Engine.Default__AttributeDefinition D_Attributes.Movement.RawJoyUp clone -x WillowGame.Default__PlayerControllerAttributeContextResolver D_Attributes.Movement.RawJoyUp:PlayerControllerAttributeContextResolver clone -x GearboxFramework.Default__ObjectPropertyContextResolver D_Attributes.Movement.RawJoyUp:ObjectPropertyContextResolver clone -x Engine.Default__ReadOnlyObjectPropertyAttributeValueResolver D_Attributes.Movement.RawJoyUp:ReadOnlyObjectPropertyAttributeValueResolver set D_Attributes.Movement.RawJoyUp bIsSimpleAttribute True set D_Attributes.Movement.RawJoyUp ContextResolverChain (D_Attributes.Movement.RawJoyUp:PlayerControllerAttributeContextResolver,D_Attributes.Movement.RawJoyUp:ObjectPropertyContextResolver) set D_Attributes.Movement.RawJoyUp ValueResolverChain (D_Attributes.Movement.RawJoyUp:ReadOnlyObjectPropertyAttributeValueResolver) set D_Attributes.Movement.RawJoyUp:ObjectPropertyContextResolver PropertyName PlayerInput set D_Attributes.Movement.RawJoyUp:ReadOnlyObjectPropertyAttributeValueResolver PropertyName RawJoyUp clone -x Engine.Default__AttributeInitializationDefinition GD_PlayerShared.Sprint.SprintCondition set GD_PlayerShared.Sprint.SprintCondition BaseValueMode BASEVALUE_InitializationDefScalesBaseValue set GD_PlayerShared.Sprint.SprintCondition ConditionalInitialization (bEnabled=True,ConditionalExpressionList=((BaseValueIfTrue=(BaseValueConstant=1.000000,BaseValueAttribute=None,InitializationDefinition=None,BaseValueScaleConstant=1.000000),Expressions=((AttributeOperand1=AttributeDefinition'D_Attributes.Movement.PawnSpeed',ComparisonOperator=OPERATOR_GreaterThan,Operand2Usage=OPERAND_Multiply,AttributeOperand2=AttributeDefinition'D_Attributes.GameplayAttributes.FootSpeed',ConstantOperand2=0.700000),(AttributeOperand1=AttributeDefinition'D_Attributes.Movement.OnGround',ComparisonOperator=OPERATOR_EqualTo,Operand2Usage=OPERAND_PreferAttribute,AttributeOperand2=None,ConstantOperand2=1.000000),(AttributeOperand1=AttributeDefinition'D_Attributes.Weapon.WeaponTotalAutomaticFiringTime',ComparisonOperator=OPERATOR_EqualTo,Operand2Usage=OPERAND_PreferAttribute,AttributeOperand2=None,ConstantOperand2=0.000000),(AttributeOperand1=D_Attributes.Movement.RawJoyUp,ComparisonOperator=OPERATOR_GreaterThan,Operand2Usage=OPERAND_PreferAttribute,AttributeOperand2=None,ConstantOperand2=0.000000)))),DefaultBaseValue=(BaseValueConstant=0.000000,BaseValueAttribute=None,InitializationDefinition=None,BaseValueScaleConstant=1.000000)) clone -x Engine.Default__AttributeDefinition GD_PlayerShared.Sprint.SprintFOV clone -x GearboxFramework.Default__NoContextNeededAttributeContextResolver GD_PlayerShared.Sprint.SprintFOV:NoContextNeededAttributeContextResolver clone -x GearboxFramework.Default__ConstantAttributeValueResolver GD_PlayerShared.Sprint.SprintFOV:ConstantAttributeValueResolver set GD_PlayerShared.Sprint.SprintFOV ContextResolverChain (GD_PlayerShared.Sprint.SprintFOV:NoContextNeededAttributeContextResolver) set GD_PlayerShared.Sprint.SprintFOV ValueResolverChain (GD_PlayerShared.Sprint.SprintFOV:ConstantAttributeValueResolver) clone -x WillowGame.Default__SkillDefinition GD_PlayerShared.Player_SprintSkill set GD_PlayerShared.Player_SprintSkill SkillEffectUpdateIterval 0.05 pyb skill = unrealsdk.FindObject("SkillDefinition", "GD_PlayerShared.Player_SprintSkill") pyb def activate_skill(this, function, params) -> bool: pyb PC = unrealsdk.GetEngine().GamePlayers[0].Actor pyb SM = PC.GetSkillManager() pyb SM.ActivateSkill(PC, skill) pyb return True pyb unrealsdk.RegisterHook("Engine.GameInfo.PostCommitMapChange", "AutoSprint_TriggerSkill", activate_skill) pyb -x set GD_Input.Actions.InputAction_Sprint OnBegin () set GD_Input.Actions.InputAction_Sprint OnEnd () set SprintDefinition'GD_PlayerShared.Sprint.SprintDefinition_Default' AttributeEffects () set SprintDefinition'GD_PlayerShared.Sprint.SprintDefinition_Default' FOVModifier 0 set SprintDefinition'GD_PlayerShared.Sprint.SprintDefinition_Default' EyeHeightModifier 0 set SprintDefinition'GD_PlayerShared.Sprint.SprintDefinition_Default' BobScalar 0 set PlayerClassDefinition SprintingPct 1.25 set PlayerClassDefinition SprintingPct 1.3 set PlayerClassDefinition SprintingPct 1.35 set PlayerClassDefinition SprintingPct 1.4 set PlayerClassDefinition SprintingPct 1.45 set GD_PlayerShared.Player_SprintSkill SkillEffectDefinitions ((AttributeToModify=ResourcePoolAttributeDefinition'D_Attributes.AccuracyResourcePool.AccuracyMinValue',bIncludeDuelingTargets=False,bIncludeSelfAsTarget=False,bOnlyEffectTargetsInRange=False,bExcludeNonPlayerCharacters=False,EffectTarget=TARGET_Self,TargetInstanceDataName=,TargetCriteria=CRITERIA_None,ModifierType=MT_PostAdd,BaseModifierValue=(BaseValueConstant=1.000000,BaseValueAttribute=None,InitializationDefinition=GD_PlayerShared.Sprint.SprintCondition,BaseValueScaleConstant=15.000000),GradeToStartApplyingEffect=1,PerGradeUpgradeInterval=1,PerGradeUpgrade=(BaseValueConstant=0.000000,BaseValueAttribute=None,InitializationDefinition=None,BaseValueScaleConstant=1.000000),BonusUpgradeList=),(AttributeToModify=ResourcePoolAttributeDefinition'D_Attributes.AccuracyResourcePool.AccuracyMaxValue',bIncludeDuelingTargets=False,bIncludeSelfAsTarget=False,bOnlyEffectTargetsInRange=False,bExcludeNonPlayerCharacters=False,EffectTarget=TARGET_Self,TargetInstanceDataName=,TargetCriteria=CRITERIA_None,ModifierType=MT_PostAdd,BaseModifierValue=(BaseValueConstant=1.000000,BaseValueAttribute=None,InitializationDefinition=GD_PlayerShared.Sprint.SprintCondition,BaseValueScaleConstant=15.000000),GradeToStartApplyingEffect=1,PerGradeUpgradeInterval=1,PerGradeUpgrade=(BaseValueConstant=0.000000,BaseValueAttribute=None,InitializationDefinition=None,BaseValueScaleConstant=1.000000),BonusUpgradeList=),(AttributeToModify=ResourcePoolAttributeDefinition'D_Attributes.AccuracyResourcePool.AccuracyOnIdleRegenerationRate',bIncludeDuelingTargets=False,bIncludeSelfAsTarget=False,bOnlyEffectTargetsInRange=False,bExcludeNonPlayerCharacters=False,EffectTarget=TARGET_Self,TargetInstanceDataName=,TargetCriteria=CRITERIA_None,ModifierType=MT_PostAdd,BaseModifierValue=(BaseValueConstant=1.000000,BaseValueAttribute=None,InitializationDefinition=GD_PlayerShared.Sprint.SprintCondition,BaseValueScaleConstant=3.000000),GradeToStartApplyingEffect=1,PerGradeUpgradeInterval=1,PerGradeUpgrade=(BaseValueConstant=0.000000,BaseValueAttribute=None,InitializationDefinition=None,BaseValueScaleConstant=1.000000),BonusUpgradeList=),(AttributeToModify=AttributeDefinition'D_Attributes.GameplayAttributes.Sprinting',bIncludeDuelingTargets=False,bIncludeSelfAsTarget=False,bOnlyEffectTargetsInRange=False,bExcludeNonPlayerCharacters=False,EffectTarget=TARGET_Self,TargetInstanceDataName=,TargetCriteria=CRITERIA_None,ModifierType=MT_PostAdd,BaseModifierValue=(BaseValueConstant=1.000000,BaseValueAttribute=None,InitializationDefinition=GD_PlayerShared.Sprint.SprintCondition,BaseValueScaleConstant=1.000000),GradeToStartApplyingEffect=1,PerGradeUpgradeInterval=1,PerGradeUpgrade=(BaseValueConstant=0.000000,BaseValueAttribute=None,InitializationDefinition=None,BaseValueScaleConstant=1.000000),BonusUpgradeList=),(AttributeToModify=AttributeDefinition'D_Attributes.GameplayAttributes.FOV',bIncludeDuelingTargets=False,bIncludeSelfAsTarget=False,bOnlyEffectTargetsInRange=False,bExcludeNonPlayerCharacters=False,EffectTarget=TARGET_Self,TargetInstanceDataName=,TargetCriteria=CRITERIA_None,ModifierType=MT_Scale,BaseModifierValue=(BaseValueConstant=0.000000,BaseValueAttribute=GD_PlayerShared.Sprint.SprintFOV,InitializationDefinition=GD_PlayerShared.Sprint.SprintCondition,BaseValueScaleConstant=1.000000),GradeToStartApplyingEffect=1,PerGradeUpgradeInterval=1,PerGradeUpgrade=(BaseValueConstant=0.000000,BaseValueAttribute=None,InitializationDefinition=None,BaseValueScaleConstant=1.000000),BonusUpgradeList=)) set GD_PlayerShared.Player_SprintSkill SkillEffectDefinitions ((AttributeToModify=AttributeDefinition'D_Attributes.GameplayAttributes.Sprinting',bIncludeDuelingTargets=False,bIncludeSelfAsTarget=False,bOnlyEffectTargetsInRange=False,bExcludeNonPlayerCharacters=False,EffectTarget=TARGET_Self,TargetInstanceDataName=,TargetCriteria=CRITERIA_None,ModifierType=MT_PostAdd,BaseModifierValue=(BaseValueConstant=0.000000,BaseValueAttribute=None,InitializationDefinition=GD_PlayerShared.Sprint.SprintCondition,BaseValueScaleConstant=1.000000),GradeToStartApplyingEffect=1,PerGradeUpgradeInterval=1,PerGradeUpgrade=(BaseValueConstant=0.000000,BaseValueAttribute=None,InitializationDefinition=None,BaseValueScaleConstant=1.000000),BonusUpgradeList=),(AttributeToModify=AttributeDefinition'D_Attributes.GameplayAttributes.FOV',bIncludeDuelingTargets=False,bIncludeSelfAsTarget=False,bOnlyEffectTargetsInRange=False,bExcludeNonPlayerCharacters=False,EffectTarget=TARGET_Self,TargetInstanceDataName=,TargetCriteria=CRITERIA_None,ModifierType=MT_Scale,BaseModifierValue=(BaseValueConstant=0.000000,BaseValueAttribute=GD_PlayerShared.Sprint.SprintFOV,InitializationDefinition=GD_PlayerShared.Sprint.SprintCondition,BaseValueScaleConstant=1.000000),GradeToStartApplyingEffect=1,PerGradeUpgradeInterval=1,PerGradeUpgrade=(BaseValueConstant=0.000000,BaseValueAttribute=None,InitializationDefinition=None,BaseValueScaleConstant=1.000000),BonusUpgradeList=)) set GD_PlayerShared.Sprint.SprintFOV:ConstantAttributeValueResolver ConstantValue 0.25 set GD_PlayerShared.Sprint.SprintFOV:ConstantAttributeValueResolver ConstantValue 0.35 set GD_PlayerShared.Sprint.SprintFOV:ConstantAttributeValueResolver ConstantValue 0.45 set WillowPlayerPawn AccelRate 7000.000000 set WillowPlayerPawn AccelRateBaseValue 7000.000000 set WillowPlayerPawn GroundSpeed 440 set PlayerClassDefinition GroundSpeed 440 set WillowPlayerPawn GroundSpeed 500 set PlayerClassDefinition GroundSpeed 500 set WillowPlayerPawn GroundSpeed 550 set PlayerClassDefinition GroundSpeed 550 set WillowPlayerPawn GroundSpeed 600 set PlayerClassDefinition GroundSpeed 600 #Commands: set D_Attributes.Movement.RawJoyUp bIsSimpleAttribute True set D_Attributes.Movement.RawJoyUp ContextResolverChain (D_Attributes.Movement.RawJoyUp:PlayerControllerAttributeContextResolver,D_Attributes.Movement.RawJoyUp:ObjectPropertyContextResolver) set D_Attributes.Movement.RawJoyUp ValueResolverChain (D_Attributes.Movement.RawJoyUp:ReadOnlyObjectPropertyAttributeValueResolver) set D_Attributes.Movement.RawJoyUp:ObjectPropertyContextResolver PropertyName PlayerInput set D_Attributes.Movement.RawJoyUp:ReadOnlyObjectPropertyAttributeValueResolver PropertyName RawJoyUp set GD_PlayerShared.Sprint.SprintCondition BaseValueMode BASEVALUE_InitializationDefScalesBaseValue set GD_PlayerShared.Sprint.SprintCondition ConditionalInitialization (bEnabled=True,ConditionalExpressionList=((BaseValueIfTrue=(BaseValueConstant=1.000000,BaseValueAttribute=None,InitializationDefinition=None,BaseValueScaleConstant=1.000000),Expressions=((AttributeOperand1=AttributeDefinition'D_Attributes.Movement.PawnSpeed',ComparisonOperator=OPERATOR_GreaterThan,Operand2Usage=OPERAND_Multiply,AttributeOperand2=AttributeDefinition'D_Attributes.GameplayAttributes.FootSpeed',ConstantOperand2=0.700000),(AttributeOperand1=AttributeDefinition'D_Attributes.Movement.OnGround',ComparisonOperator=OPERATOR_EqualTo,Operand2Usage=OPERAND_PreferAttribute,AttributeOperand2=None,ConstantOperand2=1.000000),(AttributeOperand1=AttributeDefinition'D_Attributes.Weapon.WeaponTotalAutomaticFiringTime',ComparisonOperator=OPERATOR_EqualTo,Operand2Usage=OPERAND_PreferAttribute,AttributeOperand2=None,ConstantOperand2=0.000000),(AttributeOperand1=D_Attributes.Movement.RawJoyUp,ComparisonOperator=OPERATOR_GreaterThan,Operand2Usage=OPERAND_PreferAttribute,AttributeOperand2=None,ConstantOperand2=0.000000)))),DefaultBaseValue=(BaseValueConstant=0.000000,BaseValueAttribute=None,InitializationDefinition=None,BaseValueScaleConstant=1.000000)) set GD_PlayerShared.Sprint.SprintFOV ContextResolverChain (GD_PlayerShared.Sprint.SprintFOV:NoContextNeededAttributeContextResolver) set GD_PlayerShared.Sprint.SprintFOV ValueResolverChain (GD_PlayerShared.Sprint.SprintFOV:ConstantAttributeValueResolver) set GD_PlayerShared.Player_SprintSkill SkillEffectUpdateIterval 0.05 set GD_Input.Actions.InputAction_Sprint OnBegin () set GD_Input.Actions.InputAction_Sprint OnEnd () set SprintDefinition'GD_PlayerShared.Sprint.SprintDefinition_Default' AttributeEffects () set SprintDefinition'GD_PlayerShared.Sprint.SprintDefinition_Default' FOVModifier 0 set SprintDefinition'GD_PlayerShared.Sprint.SprintDefinition_Default' EyeHeightModifier 0 set SprintDefinition'GD_PlayerShared.Sprint.SprintDefinition_Default' BobScalar 0 set PlayerClassDefinition SprintingPct 1.35 set GD_PlayerShared.Player_SprintSkill SkillEffectDefinitions ((AttributeToModify=ResourcePoolAttributeDefinition'D_Attributes.AccuracyResourcePool.AccuracyMinValue',bIncludeDuelingTargets=False,bIncludeSelfAsTarget=False,bOnlyEffectTargetsInRange=False,bExcludeNonPlayerCharacters=False,EffectTarget=TARGET_Self,TargetInstanceDataName=,TargetCriteria=CRITERIA_None,ModifierType=MT_PostAdd,BaseModifierValue=(BaseValueConstant=1.000000,BaseValueAttribute=None,InitializationDefinition=GD_PlayerShared.Sprint.SprintCondition,BaseValueScaleConstant=15.000000),GradeToStartApplyingEffect=1,PerGradeUpgradeInterval=1,PerGradeUpgrade=(BaseValueConstant=0.000000,BaseValueAttribute=None,InitializationDefinition=None,BaseValueScaleConstant=1.000000),BonusUpgradeList=),(AttributeToModify=ResourcePoolAttributeDefinition'D_Attributes.AccuracyResourcePool.AccuracyMaxValue',bIncludeDuelingTargets=False,bIncludeSelfAsTarget=False,bOnlyEffectTargetsInRange=False,bExcludeNonPlayerCharacters=False,EffectTarget=TARGET_Self,TargetInstanceDataName=,TargetCriteria=CRITERIA_None,ModifierType=MT_PostAdd,BaseModifierValue=(BaseValueConstant=1.000000,BaseValueAttribute=None,InitializationDefinition=GD_PlayerShared.Sprint.SprintCondition,BaseValueScaleConstant=15.000000),GradeToStartApplyingEffect=1,PerGradeUpgradeInterval=1,PerGradeUpgrade=(BaseValueConstant=0.000000,BaseValueAttribute=None,InitializationDefinition=None,BaseValueScaleConstant=1.000000),BonusUpgradeList=),(AttributeToModify=ResourcePoolAttributeDefinition'D_Attributes.AccuracyResourcePool.AccuracyOnIdleRegenerationRate',bIncludeDuelingTargets=False,bIncludeSelfAsTarget=False,bOnlyEffectTargetsInRange=False,bExcludeNonPlayerCharacters=False,EffectTarget=TARGET_Self,TargetInstanceDataName=,TargetCriteria=CRITERIA_None,ModifierType=MT_PostAdd,BaseModifierValue=(BaseValueConstant=1.000000,BaseValueAttribute=None,InitializationDefinition=GD_PlayerShared.Sprint.SprintCondition,BaseValueScaleConstant=3.000000),GradeToStartApplyingEffect=1,PerGradeUpgradeInterval=1,PerGradeUpgrade=(BaseValueConstant=0.000000,BaseValueAttribute=None,InitializationDefinition=None,BaseValueScaleConstant=1.000000),BonusUpgradeList=),(AttributeToModify=AttributeDefinition'D_Attributes.GameplayAttributes.Sprinting',bIncludeDuelingTargets=False,bIncludeSelfAsTarget=False,bOnlyEffectTargetsInRange=False,bExcludeNonPlayerCharacters=False,EffectTarget=TARGET_Self,TargetInstanceDataName=,TargetCriteria=CRITERIA_None,ModifierType=MT_PostAdd,BaseModifierValue=(BaseValueConstant=1.000000,BaseValueAttribute=None,InitializationDefinition=GD_PlayerShared.Sprint.SprintCondition,BaseValueScaleConstant=1.000000),GradeToStartApplyingEffect=1,PerGradeUpgradeInterval=1,PerGradeUpgrade=(BaseValueConstant=0.000000,BaseValueAttribute=None,InitializationDefinition=None,BaseValueScaleConstant=1.000000),BonusUpgradeList=),(AttributeToModify=AttributeDefinition'D_Attributes.GameplayAttributes.FOV',bIncludeDuelingTargets=False,bIncludeSelfAsTarget=False,bOnlyEffectTargetsInRange=False,bExcludeNonPlayerCharacters=False,EffectTarget=TARGET_Self,TargetInstanceDataName=,TargetCriteria=CRITERIA_None,ModifierType=MT_Scale,BaseModifierValue=(BaseValueConstant=0.000000,BaseValueAttribute=GD_PlayerShared.Sprint.SprintFOV,InitializationDefinition=GD_PlayerShared.Sprint.SprintCondition,BaseValueScaleConstant=1.000000),GradeToStartApplyingEffect=1,PerGradeUpgradeInterval=1,PerGradeUpgrade=(BaseValueConstant=0.000000,BaseValueAttribute=None,InitializationDefinition=None,BaseValueScaleConstant=1.000000),BonusUpgradeList=)) set GD_PlayerShared.Sprint.SprintFOV:ConstantAttributeValueResolver ConstantValue 0.35