Pascal's Wager Wiki

An altar is the game's checkpoint and workshop. Standing at one lets you rest, spend bones to raise your level (Dedication, Leveling), spend attribute points (Attributes), add talents (Talents) and craft with the Alchemy menu (Alchemy). It also saves the game and sets where you wake up after dying.

Using an altar#

  • An altar icon appears when you are within 7 world units. The "Altar" action button appears when you are within 3 units and your character is facing toward the altar. It only works from the normal movement state, not in the middle of an attack or other action.
  • The first time you touch a given altar it is lit. The lit state is stored per area and per altar number in your save. Lighting has no gameplay effect beyond the animation and effects; the Dedication and crafting animations only play on a lit altar.
  • Opening the altar menu runs the save routine at once (see below). Closing it saves again.
  • In Arcade mode, an extra altar (number 99) appears after a stage is cleared and lets you move on to the next stage. In Arcade the Dedication, crafting, bag, trophy and task tabs are hidden; the rest text says to rest for health, Health Potions and new talents.

What the altar menu offers#

Tab / functionName in gameWorks outside altars?Notes
DedicateDedicateNoSpend bone items for experience. Disabled once Altar Level is 99. See Dedication and Leveling.
Elixirs and throwablesAlchemyNoCraft consumables from recipes. See Alchemy and Consumables.
TrophiesTrophyNoCraft trophies; stops at the trophy cap (600, see Trophies).
EnchantingCraftNoStrengthen and recast trophies. See Trophy enhancement and Trophy reforging.
RecoveryRecoveryNoRest. See below.
Attribute pointsStatsSpend only at altarsPoints can be added only while the menu was opened from an altar. See Attributes.
TalentsTalentAdding only at altarsOutside altars the talent screen shows a "needs altar" notice. See Talents.
BagBagYesAt an altar the "Use" button is hidden, so you cannot drink or throw things from the bag there.

The pause-menu version of the same screen greys out the whole Altar tab. Blessing is not an altar service: it is handled in the exchange screen (the "Benita" transaction type, see Merchants and Blessing). The altar UI contains no travel option either; travel is by Carriage or the whistles (see Leveling).

Recovery (resting)#

Choosing Recovery fades the screen, then does the following in order.

  1. Runs the same respawn routine your hero gets after dying: the hero is put back at the altar's spawn marker, Sanity is set to full and the Sanity lock states are cleared, and every property (Health included) is refilled to its maximum. Negative statuses are removed; buffs stay. Rage and the trophy and skill shields are only clamped to their maximum when you rest alive, but are set to 0 when you respawn after dying.
  2. Wipes the death list: every enemy that you killed since your last rest is created again. Bosses and other enemies whose appearance depends on a story quest do not come back once that quest is complete (inferred from the quest show/hide checks in the spawn code). In Arcade mode the death list is not wiped: only the monsters on a short fixed refresh list are removed from it.
  3. Restores every hero's Health Potions to their maximum (Terrence 3, the others 2, plus talent bonuses; see Leveling).
  4. Deletes loot that is lying on the ground (drops from killed enemies you did not pick up), except your map markers and any Heggie pile.
  5. Removes summoned Sanity monsters and called-in helper heroes.
  6. Refills shop stock that is flagged to refresh, for every merchant. Limited stock returns to its maximum on every rest or death, not on a timer (see Merchants).
  7. Resets the crow companion and the frog satisfaction list.
  8. Closes the altar menu, which saves the game (the position is stored as the respawn point again).
  9. Plays the rest effect, then removes and re-applies the trophy-granted protections No Death, Shield and Small Shield if you wear trophies with those effects (see Trophies). Whether these protections also renew on other occasions is not covered here.

Resting is the same routine as respawning after death (Death and respawn#What respawn resets), which is why dying also resets enemies and refills potions. The difference is the cost: dying costs Bone Fragments (Death and respawn#When the whole team falls), resting costs nothing.

Respawn points#

The respawn point is the position of the last altar whose menu you opened. Several other events also move it:

  • Opening the altar menu (and closing it) sets both the respawn and the "born" position to the altar's spawn marker.
  • Arriving at a new area by Carriage sets the respawn point where you arrive.
  • Changing scene (when it is not the first load) stores your current spot as the respawn point.
  • The 60-second autosave only writes your position for loading the game; it does not change the respawn point.

After death the game moves you to the area of your respawn point if it differs from the current one, and places you at the stored position.

Altars that complete quests#

The table StorySave has 24 altar entries. An entry fires when the altar menu is opened and saved as a save point (SavePoint type only): the game completes the entry's quest if all its "show" quests are done and none of its "hide" quests is (CheckShowQuestComplete, CheckHideQuestComplete, controllermodebase.lua:429-453). In every row the hide quest is the quest being completed, so each effect happens once.

StoryRegionAltarsQuest completedNeeds first
1Heggem3, 4, 51400115007 and 12013
2Adamina2, 3, 42400125028
3Exilium1, 2, 33400135009
4Edith (region)1 to 44400143004
7The Karst Cave1 to 57400175035
9Ichthyosauria1 to 59519195190
99(not identified)1none (all quest fields are 0)-

No other story has an entry; Katib, for example, has altars that only rest, dedicate and craft. Visiting altars in a new place can therefore trigger scenes, doors or new dialog.

Hidden mechanics#

  • Altars advance the story. Some altars complete quests when you open them (table above). The effect happens once, the first time the condition is met.
  • Opening is saving. The game saves when the altar menu opens, not just when you rest. Closing it without resting still counts as a rest-free visit.
  • Dropped loot vanishes. Recovery clears the ground, so pick up drops before resting (the same happens when you die, see Drops and loot). Ordinary ground loot does survive saving and quitting; only a rest or a death removes it.
  • Loading refills potions. When a story scene is loaded (not the very first load, and not inside the maze), every hero's Health Potions are set to maximum again, so reloading a save is another free potion refill (Death and respawn#Level-load refills).
  • Facing rule. The altar test combines squared distance with a dot product on your facing direction, so you can be standing right next to an altar and still get no button if you are facing away from it.

Trivia#

  • The altar's open state is a two-state animation (closed, open). A third "empty" state exists in the code but is never set.
  • Other altar-related animation triggers named in the code are "dedication" and "alchemy". They play when you spend bones or craft something.

Sources#

  • luascript/logic/scene/altar.lua:1-120 (statuses Open 2 / Close 1 / Empty 0, Dedicate and DoAlchemy animations, OpenAltar writes SetAltarStatus).
  • luascript/structdata/fs_savestory.lua:2661-2677 (altar status per story and altar id).
  • luascript/logic/scene/scenebase.lua:2068-2100 (CheckSave), :992-998 (altar 99 for Arcade); gamedata/scenedefine.lua:16, 35 (DistanceForSave 3, IconDistanceForSave 7).
  • luascript/controller/controllerstorymode.lua:8300-8320 (CheckSave and button), :8362-8440 (StartSave, OpenSaveMenu, CloseSaveMenu), :8459-8556 (Save, SavePoint stores reborn and born positions), :8557-8570 (StorySave quests), :8322-8344 and :39 (autosave every 60 s, SaveTimeInterval), :1944-2047 (OnMenuReborn, HostPlayerReborn), :2428-2446 (RecoveryProperty), :3695-3706 (RefreshMonster), :5132-5134 (RefreshSceneItem), :3799-3801, :1222-1226, 1798, 8719 (SaveReborn on area change and carriage arrival).
  • luascript/logic/player/animalbase.lua:13063-13105 (Worshiping and WorshipingRest actions; trophy protections cleared and re-added).
  • luascript/logic/playervalue/animalbase_value.lua:142-147, 699-710 (reborn restores Sanity and recalculates properties).
  • luascript/structdata/fs_savestory.lua:2178-2200, 2344-2370, 3445-3453 (monster death list, ClearDropItemAll, RefreshTransactionNum); structdata/ms_transactiondata.lua (IsRefresh).
  • luascript/ui/controller/playerinfoctrl.lua:75-83 (tab types), :2556-2710 (OpenPlayerInfo, Alchemy tab disabled), :2712-2845 (OpenPlayerInfoEditor, Arcade tab hiding at :2910-2920), :3178 (Use button hidden), :4568-4590 (talent editing only at an altar), :7406-7620 (confirm actions), :9174-9183 (Rest button), :9272 (attribute points only editable at an altar).
  • luascript/controller/controllerstorymode.lua:1484-1486 (potions refilled on load), :8300-8345 (altar check, 60 s autosave conditions), :8459-8570 (Save types, StorySave quests only run for the SavePoint type); logic/player/animalbase.lua:13849-13856 (reset flag: dead hero clears all statuses, living hero only debuffs), logic/playervalue/animalbase_value.lua:237-251 (Rage and shields reset only when reset); controllerstorymode.lua:3695-3706 (Arcade keeps the death list).
  • kit/tables/StorySave.jsonl rows 1-24 (all 24 re-read in this pass: ShowQuestId, HideQuestId, CompleteQuestId, StoryId, SaveId); controller/controllermodebase.lua:429-453 (show = all done, hide = any done); region names from the quest ids quoted in the Heggem, Adamina, Exilium, Edith, Karst Cave and Ichthyosauria articles; site names from kit/text/SiteInfo.jsonl.
  • GameText: UI_PLAYERINFO_REST_DES, UI_PLAYERINFO_REST_DES_ARCADE, UI_PLAYERINFO_ALCHEMY, UI_ALCHEMY_MAIN_TYPE_*, UI_PLAYERINFO_TROPHY_FULL.
  • Inferred: that quest-gated enemies stay dead after rest; that the unused "Empty" status is never set (no code sets it); that the altar menu in editor mode exposes the Stats and Talent tabs (the editing checks use the editor flag).