WitcherDB
Witcher 3 console commands & item ID database

The Battle of Kaer Morhen

Main StoryWhite Orchard
The friends conferred and established a defense strategy. There was no time to lose. As soon as they finished, the weather changed and snow began to fall. The Wild Hunt appeared above Kaer Morhen and its spectral warriors galloped out of the sky towards the fortress.

Fixing a softlock

Enable the debug console, then look for a fact under Gates the quest checks — one the quest is actively waiting on. If that flag never got written, addfact it to the value shown and the gate clears.

Setting a Set these to advance fact only marks a step done — it won't run the step or skip the quest forward, and it can't fix a softlock caused by a scene that never played or an NPC that didn't spawn (reload an earlier save for those). Save before forcing any fact.

Quest facts (139)

Set these to advance

98 facts

Completion flags this step writes — they record a step as done but won't run it or skip the quest forward on their own.

PLAYER eqp mount
PLAYER_eqp_mount

Also used by Blood on the Battlefield, To Bait a Forktail...

Ciri dd start
ciri_dd_start

Also used by Bald Mountain, Child of the Elder Blood

Ciri dd stop
ciri_dd_stop

Also used by Bald Mountain, Child of the Elder Blood, Something Ends, Something Begins

Ciri eqp mount
ciri_eqp_mount

Also used by Blood on the Battlefield, Child of the Elder Blood

Ciri eqp unmount
ciri_eqp_unmount

Also used by Blood on the Battlefield, Child of the Elder Blood, The Isle of Mists

Eskel dd start
eskel_dd_start

Also used by To Bait a Forktail...

Eskel dd stop
eskel_dd_stop

Also used by To Bait a Forktail...

Eskel dissecting ekima
eskel_dissecting_ekima

Also used by To Bait a Forktail...

Eskel eqp mount
eskel_eqp_mount

Also used by To Bait a Forktail...

Eskel eqp unmount
eskel_eqp_unmount

Also used by To Bait a Forktail...

Hjalmar dd start
hjalmar_dd_start

Also used by Coronation, King's Gambit, The Isle of Mists +1 more

Hjalmar dd stop
hjalmar_dd_stop

Also used by Coronation, King's Gambit, On Thin Ice +1 more

Keira part1 dd start
keira_part1_dd_start

Also used by A Favor for a Friend, An Invitation from Keira Metz, Wandering in the Dark

Keira part1 dd stop
keira_part1_dd_stop

Also used by A Favor for a Friend, An Invitation from Keira Metz, For the Advancement of Learning +1 more

Lambert dd start
lambert_dd_start

Also used by Following the Thread, To Bait a Forktail...

Lambert dd stop
lambert_dd_stop

Also used by Following the Thread, To Bait a Forktail...

Lambert eqp mount
lambert_eqp_mount

Also used by To Bait a Forktail...

Lambert eqp unmount
lambert_eqp_unmount

Also used by To Bait a Forktail...

Mousesack dd start
mousesack_dd_start

Also used by Child of the Elder Blood, Coronation, The Isle of Mists

Mousesack dd stop
mousesack_dd_stop

Also used by Child of the Elder Blood, Coronation, Echoes of the Past

Race voorhis won
q403_race_voorhis_won

Also used by Broken Flowers

Roche dd start
roche_dd_start

Also used by A Deadly Plot, An Eye for an Eye, Honor Among Thieves +2 more

Roche dd stop
roche_dd_stop

Also used by A Deadly Plot, An Eye for an Eye, Honor Among Thieves +2 more

Iss dd start
triss_dd_start

Also used by A Matter of Life and Death, Count Reuven's Treasure, Now or Never +3 more

Iss dd stop
triss_dd_stop

Also used by A Matter of Life and Death, Child of the Elder Blood, Count Reuven's Treasure +4 more

Tutorial messages enabled
tutorial_messages_enabled

Also used by The Incident at White Orchard

Vesemir dd stop
vesemir_dd_stop

Also used by Following the Thread, The Incident at White Orchard

Vesemir eqp mount
vesemir_eqp_mount

Also used by To Bait a Forktail...

Vesemir eqp unmount
vesemir_eqp_unmount

Also used by To Bait a Forktail...

Yennefer dd start
yennefer_dd_start

Also used by Child of the Elder Blood, Echoes of the Past, Tedd Deireadh, the Final Age +4 more

Yennefer dd stop
yennefer_dd_stop

Also used by Child of the Elder Blood, Echoes of the Past, Something Ends, Something Begins +5 more

Zoltan dd start
zoltan_dd_start

Also used by A Dangerous Game, Broken Flowers, Ciri's Story: Breakneck Speed

Zoltan dd stop
zoltan_dd_stop

Also used by A Dangerous Game, Broken Flowers, Ciri's Story: Breakneck Speed +1 more

Zoltan eqp mount
zoltan_eqp_mount

Also used by Broken Flowers

Zoltan eqp unmount
zoltan_eqp_unmount

Also used by Broken Flowers, Something Ends, Something Begins

Battle ends
q403_battle_ends
== 1, >= 1

Also used by Of Dairy and Darkness

Completed
q403_completed
== 1, >= 1

Also used by A Dangerous Game

Council
q403_council
== 1, >= 1

Also used by Berengar's Blade, Races: Crow's Perch

Hjalmar cs done
q403_hjalmar_cs_done
>= 1

Add q403_hjalmar_cs_done

Lambert dead
q403_lambert_dead
== 1, >= 1

Also used by Blood on the Battlefield, Of Dairy and Darkness

Lambert pitfall traps done
q403_lambert_pitfall_traps_done
>= 1

Add q403_lambert_pitfall_traps_done

Race geralt won
q403_race_geralt_won
>= 1

Also used by Broken Flowers

Race luiza won
q403_race_luiza_won
>= 1

Also used by Broken Flowers

Rift center hunt killed
q403_rift_center_hunt_killed
> 1, >= 1

Add q403_rift_center_hunt_killed

Rift left hunt killed
q403_rift_left_hunt_killed
> 1, >= 1

Add q403_rift_left_hunt_killed

Rift right hunt killed
q403_rift_right_hunt_killed
> 1, >= 1

Add q403_rift_right_hunt_killed

Avallach eqp mount
avallach_eqp_mount

Add avallach_eqp_mount

Avallach eqp unmount
avallach_eqp_unmount

Add avallach_eqp_unmount

Letho dd start
letho_dd_start

Add letho_dd_start

Letho dd stop
letho_dd_stop

Add letho_dd_stop

Letho eqp mount
letho_eqp_mount

In phase: Forest

Letho eqp unmount
letho_eqp_unmount

In phase: Forest

Mousesack eqp mount
mousesack_eqp_mount

Add mousesack_eqp_mount

Mousesack eqp unmount
mousesack_eqp_unmount

Add mousesack_eqp_unmount

Temporary immunity
q403_temporary_immunity

Add q403_temporary_immunity

Vesemir reached low yard
q403_vesemir_reached_low_yard

Add q403_vesemir_reached_low_yard

Ves dd start
ves_dd_start

Add ves_dd_start

Ves dd stop
ves_dd_stop

Add ves_dd_stop

Letho follow start
letho_follow_start
>= 1

Add letho_follow_start

Letho follow stop
letho_follow_stop
>= 1

In phase: First Square

Arachas attacked
q403_arachas_attacked
>= 1

Add q403_arachas_attacked

Arachas lured
q403_arachas_lured
>= 1

Add q403_arachas_lured

Canaris intro
q403_canaris_intro
>= 1

Add q403_canaris_intro

Close gate
q403_close_gate
>= 2, >= 4

Add q403_close_gate +1

Componions comment
q403_componions_comment
>= 1

Add q403_componions_comment

Eskel gate checked
q403_eskel_gate_checked
>= 1

Add q403_eskel_gate_checked

Final battle starts
q403_final_battle_starts
>= 1

Add q403_final_battle_starts

Finale stage 1
q403_finale_stage_1
>= 1

Add q403_finale_stage_1

Finale stage 2
q403_finale_stage_2
>= 1

Add q403_finale_stage_2

Finale stage 3
q403_finale_stage_3
>= 1

Add q403_finale_stage_3

Finale stage 3b
q403_finale_stage_3b
>= 1

Add q403_finale_stage_3b

Finale stage 4
q403_finale_stage_4
>= 1

Add q403_finale_stage_4

Folan died
q403_folan_died
>= 1

Add q403_folan_died

Geralt saved lambert
q403_geralt_saved_lambert
>= 1

Add q403_geralt_saved_lambert

Hjalmar cs
q403_hjalmar_cs
>= 1

Add q403_hjalmar_cs

Horse fixed
q403_horse_fixed
>= 1

Add q403_horse_fixed

Hunting stop
q403_hunting_stop
>= 1

Add q403_hunting_stop

Keira saved lambert
q403_keira_saved_lambert
== 1, >= 1

Add q403_keira_saved_lambert

Lamber done about triss
q403_lamber_done_about_triss
>= 1

Add q403_lamber_done_about_triss

Lambert pitfall traps
q403_lambert_pitfall_traps
>= 1

Add q403_lambert_pitfall_traps

Last rift forest closed
q403_last_rift_forest_closed
== 1, == 2, == 3

Set q403_last_rift_forest_closed = 1

Letho lam start moving
q403_letho_lam_start_moving
>= 1

In phase: First Square

Meteor tutorial
q403_meteor_tutorial
>= 1

Add q403_meteor_tutorial

Mordownia activated
q403_mordownia_activated
>= 1

Add q403_mordownia_activated

Mousesack opened circle
q403_mousesack_opened_circle
>= 1

Add q403_mousesack_opened_circle

Retreat
q403_retreat
>= 1

Add q403_retreat

Rift forest closed
q403_rift_forest_closed
<= 2, == 1, == 2, == 3, >= 3

Add q403_rift_forest_closed

Rift tutorial bomb
q403_rift_tutorial_bomb
<= 1, >= 1

Add q403_rift_tutorial_bomb

Rift tutorial bomb seen
q403_rift_tutorial_bomb_seen
>= 1

Add q403_rift_tutorial_bomb_seen

Rift tutorial sign
q403_rift_tutorial_sign
<= 1, >= 1

Add q403_rift_tutorial_sign

Talking arachas
q403_talking_arachas
<= 1, >= 1

Add q403_talking_arachas

Teleported to km
q403_teleported_to_km
>= 1

Add q403_teleported_to_km

Turn off first replacer security
q403_turn_off_first_replacer_security
>= 1

Add q403_turn_off_first_replacer_security

Turn off second replacer security
q403_turn_off_second_replacer_security
>= 1

Add q403_turn_off_second_replacer_security

Vesemir buried
q403_vesemir_buried
>= 1

Add q403_vesemir_buried

Vigi died
q403_vigi_died
>= 1

Add q403_vigi_died

Witchers follow start
witchers_follow_start
>= 1

Add witchers_follow_start

Witchers follow stop
witchers_follow_stop
>= 1

Add witchers_follow_stop

Gates the quest checks

41 facts
Keira to km
q109_keira_to_km
>= 1

Also used by Blood on the Battlefield, For the Advancement of Learning, The Isle of Mists +1 more

Folan lives
q202_folan_lives
>= 1

Also used by The Lord of Undvik

Folan saved
q202_folan_saved
>= 1

Gates: Burial

Vigi saved
q202_vigi_saved
>= 1

Also used by The Lord of Undvik

Hjalmar king
q206_hjalmar_king
>= 1

Also used by Coronation, King's Gambit, The Isle of Mists

Invited hjalmar to km
q402_invited_hjalmar_to_km
>= 1

Also used by Coronation, The Isle of Mists

Invited letho to km
q402_invited_letho_to_km
>= 1

Also used by The Fall of the House of Reardon, The Isle of Mists

Invited mousesack to km
q402_invited_mousesack_to_km
>= 1

Also used by Coronation, The Isle of Mists

Invited roche to km
q402_invited_roche_to_km
>= 1

Also used by The Isle of Mists

Invited zoltan to km
q402_invited_zoltan_to_km
>= 1

Also used by A Dangerous Game, The Isle of Mists

Blend out invisibility
q403_blend_out_invisibility
>= 1

Gates: Forest

Blend wt battle
q403_blend_wt_battle
>= 1

Gates: Council

Bubble final form
q403_bubble_final_form
>= 1

Gates: Final Battle

Burial later
q403_burial_later
>= 1

Gates: Burial

Burial weather
q403_burial_weather
>= 1

Gates: Burial

Cinematic ciri 1st replacer
q403_cinematic_ciri_1st_replacer
>= 1

Gates: 1St Replacer

Ciri last talk
q403_ciri_last_talk
>= 1

Gates: Council

Ciri meteor used
q403_ciri_meteor_used
>= 1

Gates: Anywhere

Council begins
q403_council_begins
>= 1

Gates: Council

Council decisions
q403_council_decisions
>= 1

Gates: Council

Council later
q403_council_later
>= 1

Gates: Council

Elixirs
q403_elixirs
>= 1

Gates: Council

Fix wall
q403_fix_wall
>= 1

Gates: Final Battle, Forest

Load pyre fires
q403_load_pyre_fires
>= 1

Gates: Burial

Made traps
q403_made_traps
>= 1

Gates: Forest

Move imlerith division
q403_move_imlerith_division
>= 1

Gates: First Square

Move suicide division
q403_move_suicide_division
>= 1

Gates: Forest

Move suicide division again
q403_move_suicide_division_again
>= 1

Gates: Forest

New gear
q403_new_gear
== 1, >= 1

Gates: Forest, Persistent Content

Rift 1a closed
q403_rift_1a_closed
>= 1

Gates: Final Battle

Rift 1b closed
q403_rift_1b_closed
>= 1

Gates: Final Battle

Rift 2a closed
q403_rift_2a_closed
>= 1

Gates: Final Battle

Rift 2b closed
q403_rift_2b_closed
>= 1

Gates: Final Battle

Rift 3a closed
q403_rift_3a_closed
>= 1

Gates: Final Battle

Rift 3b closed
q403_rift_3b_closed
>= 1

Gates: Final Battle

Rift 3c closed
q403_rift_3c_closed
>= 1

Gates: Final Battle

Rift forest 1 closed
q403_rift_forest_1_closed
>= 1

Gates: Forest

Rift forest 2 closed
q403_rift_forest_2_closed
>= 1

Gates: Forest

Rift forest 3 closed
q403_rift_forest_3_closed
>= 1

Gates: Forest

Stop suicide division
q403_stop_suicide_division
>= 1

Gates: Forest

Tried dispelling illusion
q403_tried_dispelling_illusion
>= 1

Gates: Supporters

Objectives

  1. 1.Enter Kaer Morhen keep and begin the council.
  2. 2.Exit the keep and join Lambert when you're ready to face the Wild Hunt.
  3. 3.Use dimeritium bombs or the Yrden Sign to close all the Hunt's portals in the woods around Kaer Morhen.
  4. 4.Kill the Wild Hunt warriors near the center portal in the forest.
  5. 5.Kill the Wild Hunt warriors near the left portal in the forest.
  6. 6.Kill the Wild Hunt warriors near the right portal in the forest.
  7. 7.Wait for Lambert to arm the traps.
  8. 8.(Optional) Lure the Wild Hunt warriors into the traps.
  9. 9.(Optional) Explore the arachas cave Lambert mentioned.
  10. 10.Wait for Lambert to lure the arachas out of the cave.
  11. 11.Lure the Wild Hunt warriors into the pitfall traps.
  12. 12.Use dimeritium bombs or the Yrden Sign to close the Hunt's portals and stop their attack on Kaer Morhen.
  13. 13.(Optional) Equip yourself with dimeritium bombs from Vesemir's supplies.
  14. 14.Help Eskel defend the inner courtyard.
  15. 15.Help Ciri defend the inner courtyard.
  16. 16.Help Triss fight the Wild Hunt by the gate to the inner courtyard.
  17. 17.Run to Triss's aid on the battlements.
  18. 18.Defeat the warriors threatening Triss.
  19. 19.Protect Triss as she casts the spell.
  20. 20.Return to the place where you left the horses.
  21. 21.Return to Kaer Morhen.
  22. 22.Close the main gate.
  23. 23.Help Lambert defeat the Hunt's warriors.
  24. 24.Kill the Wild Hunt warriors in the lower courtyard.
  25. 25.Retreat to the middle courtyard.
  26. 26.Defeat your opponents and retreat behind the main gate.
  27. 27.Get to Triss.
  28. 28.Help Triss fight the Hunt's warriors.
  29. 29.Defeat Caranthir's warriors.
  30. 30.Open the gate to Kaer Morhen's inner courtyard.

Objectives a quest can show, in roughly the order they appear; some are optional or mutually exclusive branches.