# DOOM Eternal 1.14
# BID: B059C2C77AD834B8

unsafeCheck: true

15FPS:
  # rs_force460 (default)
  -
    type: write
    address: [MAIN, 0x78DAC38, 8]
    value_type: int32
    value: 0
  # rs_raiseThreshold = 0.948 * (30/FPS)
  -
    type: write
    address: [MAIN, 0x78DA3C8, 0xC]
    value_type: float
    value: 1.896
  # rs_dropThreshold = 0.97 * (30/FPS)
  -
    type: write
    address: [MAIN, 0x78DA350, 0xC]
    value_type: float
    value: 1.94
  # rs_raiseMilliseconds = 0.96 * (1000/FPS)
  -
    type: write
    address: [MAIN, 0x78D9F78, 0xC]
    value_type: float
    value: 64
  # rs_dropMilliseconds = 0.99 * (1000/FPS)
  -
    type: write
    address: [MAIN, 0x78D9F00, 0xC]
    value_type: float
    value: 66
  # com_adaptiveTickMaxHz (default)
  -
    type: write
    address: [MAIN, 0x6A12F38, 8]
    value_type: int32
    value: 30
20FPS:
  # rs_force460 (default)
  -
    type: write
    address: [MAIN, 0x78DAC38, 8]
    value_type: int32
    value: 0
  # rs_raiseThreshold
  -
    type: write
    address: [MAIN, 0x78DA3C8, 0xC]
    value_type: float
    value: 1.455
  # rs_dropThreshold
  -
    type: write
    address: [MAIN, 0x78DA350, 0xC]
    value_type: float
    value: 1.428
  # rs_raiseMilliseconds
  -
    type: write
    address: [MAIN, 0x78D9F78, 0xC]
    value_type: float
    value: 48
  # rs_dropMilliseconds
  -
    type: write
    address: [MAIN, 0x78D9F00, 0xC]
    value_type: float
    value: 49.5
  # com_adaptiveTickMaxHz (default)
  -
    type: write
    address: [MAIN, 0x6A12F38, 8]
    value_type: int32
    value: 30
25FPS:
  # rs_force460
  -
    type: write
    address: [MAIN, 0x78DAC38, 8]
    value_type: int32
    value: 0
  # rs_raiseThreshold
  -
    type: write
    address: [MAIN, 0x78DA3C8, 0xC]
    value_type: float
    value: 1.1376
  # rs_dropThreshold
  -
    type: write
    address: [MAIN, 0x78DA350, 0xC]
    value_type: float
    value: 1.164
  # rs_raiseMilliseconds
  -
    type: write
    address: [MAIN, 0x78D9F78, 0xC]
    value_type: float
    value: 38.4
  # rs_dropMilliseconds
  -
    type: write
    address: [MAIN, 0x78D9F00, 0xC]
    value_type: float
    value: 39.6
  # com_adaptiveTickMaxHz (default)
  -
    type: write
    address: [MAIN, 0x6A12F38, 8]
    value_type: int32
    value: 30
30FPS:
  # rs_force460 (default)
  -
    type: write
    address: [MAIN, 0x78DAC38, 8]
    value_type: int32
    value: 0
  # rs_raiseThreshold (default)
  -
    type: write
    address: [MAIN, 0x78DA3C8, 0xC]
    value_type: float
    value: 0.948
  # rs_dropThreshold (default)
  -
    type: write
    address: [MAIN, 0x78DA350, 0xC]
    value_type: float
    value: 0.97
  # rs_raiseMilliseconds
  -
    type: write
    address: [MAIN, 0x78D9F78, 0xC]
    value_type: float
    value: 32
  # rs_dropMilliseconds
  -
    type: write
    address: [MAIN, 0x78D9F00, 0xC]
    value_type: float
    value: 33
  # com_adaptiveTickMaxHz (default)
  -
    type: write
    address: [MAIN, 0x6A12F38, 8]
    value_type: int32
    value: 30
35FPS:
  # rs_force460
  -
    type: write
    address: [MAIN, 0x78DAC38, 8]
    value_type: int32
    value: 1
  # rs_raiseThreshold
  -
    type: write
    address: [MAIN, 0x78DA3C8, 0xC]
    value_type: float
    value: 0.81
  # rs_dropThreshold
  -
    type: write
    address: [MAIN, 0x78DA350, 0xC]
    value_type: float
    value: 0.831
  # rs_raiseMilliseconds
  -
    type: write
    address: [MAIN, 0x78D9F78, 0xC]
    value_type: float
    value: 27.428
  # rs_dropMilliseconds
  -
    type: write
    address: [MAIN, 0x78D9F00, 0xC]
    value_type: float
    value: 28.285
  # com_adaptiveTickMaxHz
  -
    type: write
    address: [MAIN, 0x6A12F38, 8]
    value_type: int32
    value: 60
40FPS:
  # rs_force460
  -
    type: write
    address: [MAIN, 0x78DAC38, 8]
    value_type: int32
    value: 1
  # rs_raiseThreshold
  -
    type: write
    address: [MAIN, 0x78DA3C8, 0xC]
    value_type: float
    value: 0.7095
  # rs_dropThreshold
  -
    type: write
    address: [MAIN, 0x78DA350, 0xC]
    value_type: float
    value: 0.7275
  # rs_raiseMilliseconds
  -
    type: write
    address: [MAIN, 0x78D9F78, 0xC]
    value_type: float
    value: 24
  # rs_dropMilliseconds
  -
    type: write
    address: [MAIN, 0x78D9F00, 0xC]
    value_type: float
    value: 24.75
  # com_adaptiveTickMaxHz
  -
    type: write
    address: [MAIN, 0x6A12F38, 8]
    value_type: int32
    value: 60
45FPS:
  # rs_force460
  -
    type: write
    address: [MAIN, 0x78DAC38, 8]
    value_type: int32
    value: 1
  # rs_raiseThreshold
  -
    type: write
    address: [MAIN, 0x78DA3C8, 0xC]
    value_type: float
    value: 0.63
  # rs_dropThreshold
  -
    type: write
    address: [MAIN, 0x78DA350, 0xC]
    value_type: float
    value: 0.646
  # rs_raiseMilliseconds
  -
    type: write
    address: [MAIN, 0x78D9F78, 0xC]
    value_type: float
    value: 21.33
  # rs_dropMilliseconds
  -
    type: write
    address: [MAIN, 0x78D9F00, 0xC]
    value_type: float
    value: 22
  # com_adaptiveTickMaxHz
  -
    type: write
    address: [MAIN, 0x6A12F38, 8]
    value_type: int32
    value: 60
50FPS:
  # rs_force460
  -
    type: write
    address: [MAIN, 0x78DAC38, 8]
    value_type: int32
    value: 1
  # rs_raiseThreshold
  -
    type: write
    address: [MAIN, 0x78DA3C8, 0xC]
    value_type: float
    value: 0.576
  # rs_dropThreshold
  -
    type: write
    address: [MAIN, 0x78DA350, 0xC]
    value_type: float
    value: 0.582
  # rs_raiseMilliseconds
  -
    type: write
    address: [MAIN, 0x78D9F78, 0xC]
    value_type: float
    value: 0.5676
  # rs_dropMilliseconds
  -
    type: write
    address: [MAIN, 0x78D9F00, 0xC]
    value_type: float
    value: 19.8
  # com_adaptiveTickMaxHz
  -
    type: write
    address: [MAIN, 0x6A12F38, 8]
    value_type: int32
    value: 60
55FPS:
  # rs_force460
  -
    type: write
    address: [MAIN, 0x78DAC38, 8]
    value_type: int32
    value: 1
  # rs_raiseThreshold
  -
    type: write
    address: [MAIN, 0x78DA3C8, 0xC]
    value_type: float
    value: 0.516
  # rs_dropThreshold
  -
    type: write
    address: [MAIN, 0x78DA350, 0xC]
    value_type: float
    value: 0.529
  # rs_raiseMilliseconds
  -
    type: write
    address: [MAIN, 0x78D9F78, 0xC]
    value_type: float
    value: 17.45
  # rs_dropMilliseconds
  -
    type: write
    address: [MAIN, 0x78D9F00, 0xC]
    value_type: float
    value: 18
  # com_adaptiveTickMaxHz
  -
    type: write
    address: [MAIN, 0x6A12F38, 8]
    value_type: int32
    value: 60
60FPS:
  # rs_force460
  -
    type: write
    address: [MAIN, 0x78DAC38, 8]
    value_type: int32
    value: 1
  # rs_raiseThreshold
  -
    type: write
    address: [MAIN, 0x78DA3C8, 0xC]
    value_type: float
    value: 0.473
  # rs_dropThreshold
  -
    type: write
    address: [MAIN, 0x78DA350, 0xC]
    value_type: float
    value: 0.485
  # rs_raiseMilliseconds (exefs default)
  -
    type: write
    address: [MAIN, 0x78D9F78, 0xC]
    value_type: float
    value: 16
  # rs_dropMilliseconds (exefs default)
  -
    type: write
    address: [MAIN, 0x78D9F00, 0xC]
    value_type: float
    value: 16.5
  # com_adaptiveTickMaxHz
  -
    type: write
    address: [MAIN, 0x6A12F38, 8]
    value_type: int32
    value: 60
