Skip to content
Contractsv1.9.0

Player Comfort

⭐ Premium

Progress counts only when the comfort of the player performing the action is within the specified bounds at that instant. Bounds are the percent the vitals HUD shows, 0 to 100. Campfires and similar comfort sources raise it while the player stays nearby.

{
"type": "PlayerComfort",
"minComfort": 50
}
FieldTypeDescription
typestringExactly 'PlayerComfort'
minComfortnumber | nullMinimum comfort percent, 0 to 100. Null (or omitted) means no lower bound.
maxComfortnumber | nullMaximum comfort percent, 0 to 100. Null (or omitted) means no upper bound.
  • Bounds are the HUD percent, not the game’s internal 0 to 1 fraction. This decision is by design to make it easier for you to author contracts based on what you would actually see in-game.
  • The comfort icon shows at any value above 0. A campfire gives 50%, so “while comfortable” can be minComfort: 50, or minComfort: 1 to accept any comfort source.
  • Comfort chases its target at about 20% per second, so it takes a few seconds by the fire to qualify and a few seconds after leaving to drop.
  • The hot warning (temperature above 40) forces comfort to drain, so “comfortable” and “overheating” do not mix.
  • Either bound can be null (or omitted entirely) for “no limit on that side”, but at least one bound is required. A condition with neither bound would always be satisfied, so it is invalid and the contract will not load.
  • If minComfort is greater than maxComfort, the plugin swaps them and logs a warning.

Cook 20 bear meat while comfortable:

{
"type": "Cook",
"amountRequired": 20,
"items": ["bearmeat.cooked"],
"conditions": {
"comfy": {
"type": "PlayerComfort",
"minComfort": 50
}
}
}