# Spyro Reignited Trilogy 1.01
# BID: D2775FAFCF4835CB

unsafeCheck: false

ALL_FPS:
  # Disable bSmoothFrameRate and bUseFixedFrameRate to untie game speed from framerate
  -
    type: write
    address: [MAIN, 0x69DA1A8, 0x778]
    value_type: uint32
    # Default is 0x67, bSmoothFrameRate |= 0x20, bUseFixedFrameRate |= 0x40 
    # By writing 7 we are making sure that other flags are maintained: 
    # bAllowMultiThreadedAnimationUpdate |= 4
    # bOptimizeAnimBlueprintMemberVariableAccess |= 2
    # bCanBlueprintsTickByDefault |= 1
    value: 7
  # r.DynamicRes.FrameTimeBudget (1000/FPS) cutted to 1 decimal
  -
    type: evaluate_write
    address: [MAIN, 0x69B6780, 0]
    value_type: float
    value: ["TruncDec(FRAMETIME_TARGET, 1)", "TruncDec(FRAMETIME_TARGET, 1)"]
  # t.MaxFPS
  -
    type: evaluate_write
    address: [MAIN, 0x69DAC78, 0]
    value_type: float
    value: [FPS_LOCK_TARGET, FPS_LOCK_TARGET]
  -
    type: block
    what: timing
